USRPの制御を時間確定的に制御する Timed Commandを動かしてみる (2)

こんにちはドルフィンシステム福島です。

12月に入ってから本格的な冬になってきたようです。時々電動キックボードのLUUPに乗っているのですが、寒くて仕方がありません。

前回、USRPの制御を時間確定的に制御する Timed Commandについて紹介しました。

今回は、NI-USRPでTimed Commandを実際に動かしてみたいと思います。

Timed Commandが使えれば、

  • 一定間隔で中心周波数を切り替える
  • 一定期間で受信アンテナを切り替える

という事が可能になります。


USRPの制御を時間確定的に制御する Timed Commandについて (1)
http://mikioblog.dolphinsystem.jp/2023/11/usrp-timed-command-1.html

USRPの制御を時間確定的に制御する Timed Commandを動かしてみる (2)
http://mikioblog.dolphinsystem.jp/2023/12/usrp-timed-command-2.html

USRPの制御を時間確定的に制御するTimed CommandはStreamを制御できるか? (3)
http://mikioblog.dolphinsystem.jp/2024/01/usrp-timed-command-3.html

NI USRP-2922での動作確認

NI-USRPのサンプル "niUSRP EX Command Delay.vi"をUSRP-2922で実行してみます。
PlutoSDRからCWを出力しUSRPのCH0(RX1)を接続し、受信させたのが下図です。

CWを受信し0.25~-0.25の範囲で振幅しています。


Reconfiguration Gainを"6"にしてReconfigureボタンを押下すると、3秒後に振幅が倍ほどに広がりました。
GainがTimed Commandで制御されているようです。


コードとしては、Reconfigureボタンが押下されたら、niUSRP Set Command Time.viが呼ばれTimed CommandがUSRPに送信されます。


変更可能なパラメータ

実際に動作確認してみたところ変更可能な値は以下でした。

主にRFモジュールのアナログ周りの制御が可能です。

  • Center Frequency
  • Gain
  • LO Frequency
  • Active Antenna

※アナログ部分の変更にかかる時間は計測しておりません。

IQ RateやBandwidth, Host Data Type等のデジタル部分は、一度受信ストリームを止めないと変更できないようです。


USRP2での動作確認

弊社保有の各種USRPでも動作確認してみます。

まずはUSRP2。2010年発売のモデルで、もう13年前になるのですね。

動かしてみるとエラーが発生しました、さすがに古い機体だけあって、サポートしていないと言うことです。



-1074118627
niUSRP Set Command Time.vi<ERR>A runtime or configuration error occurred.
Code: 3293
Details: RuntimeError: NotImplementedError: timed command feature not implemented on this hardware


USRP B200miniでの動作確認

次はUSB接続のUSRP B200miniで動作確認します。

エラーもなくGainの調整が利くものの、指定した時間ではなく即座に反映しているようです。

時間指定は出来なさそうなので、USRP B200miniでは周波数ホッピングを受信するアプリには使えなさそうです。


まとめ

  • Timed Commandを使用することでRFのアナログ周りの設定値、中心周波数、LO周波数、Gain、アクティブアンテナを、時間指定して切り替える事が出来る。
  • NI USRP-2922では正しく制御できたものの、USRP2やUSRP B200miniでは正しく動作しなかった。

以上、ドルフィンシステム福島でした。


コメント