LabVIEW から未サポートの USRP B200mini を使ってみる


こんにちは、ドルフィンシステムの笹生です。

現在弊社フェージングシミュレータ Riviera の使い方動画の作成も佳境に入りました。
まだ不慣れで他の業務もあるため時間がかかっておりますが、だいぶ形になってきたのでアップロードしましたらまたメールニュースでご紹介したいと思います。

さて今日は LabVIEW から未サポートの USRP B200mini を使ってみようというお話です。
今日気が付いたのですが、National Instruments 社は NI 社に社名が変わったのですね!
ロゴも一新したようですね!

以前こちらの弊社福島のメールニュース・ブログでもちらっと紹介があったのですが、以前、非公式ながら LabVIEW でUSRP B200mini を使える方法を発見しましたので方法をご紹介します。

USRP B200mini シリーズは NI 未サポート


まず、以下の対応表にあるように Ettus Research 社の USRP である B200mini は NI 社からは型番が割り当てられておりません。同じカテゴリの B200 に関しては NI-2900 と対応ししておりますが B200mini 関連は N/A です。




また NI 社の LabVIEW NI-USRP ドライバのサポートハードウェアを確認しても、 B200mini は記載がありません。

このように公式にはB200mini LabVIEW で使用できるとはされていません。
B200mini は USRPシリーズのデバイスの中でも E310 と同様にかなり小さい(最も小さい?)のですが、LabVIEW から使用できないのは非常にもったいない!ですよね。

FPGA イメージとUSBドライバのインストールをすれば動作可能




非公式であるものの、少しの手間で動作させることができることを偶然発見しました。

それは私が以前 USRPのドライバのインストールフォルダ("C:\Program Files (x86)\National Instruments\NI-USRP\images")を眺めていて、FPGA のイメージとして B200mini のイメージがあるのを見つたところから始まります。

NI-USRP ドライバが、Ettus Research の提供する UHD という USRP ドライバを利用しているのであれば、条件さえそろえばもしかしたら動作するかもしれないと考えました。
FPGA イメージがあるのであれば、B200mini の USB ドライバがあればきっと動作すると思い、USB ドライバを入れたところ無事に動作するようになりました。

手順としては以下の 5step です。
① LabVIEW に NI-USRP をインストールする(弊社で確認したバージョンは 18.1)
② Ettus のホームページから USBドライバをダウンロード・解凍する
③ デバイスマネージャで該当デバイスのドライバを更新し B200mini を認識させる
④ NI-USRP utility の uhd_find_device.exe でデバイス名を確認
⑤ 実際の LabVIEW プログラムでは確認したデバイス名で実行

①から④までがセットアップで⑤は実際の実行です。

USBドライバをインストールして認識させてみる


それでは実際に認識させて USRP サンプルプログラムを実行させてみましょう。
まだ USBドライバが未インストールの 手順① の段階で B200mini を PC と接続しても、Widows のデバイスマネージャでは正しく認識されまてせん。
以下のようにドライバが未インストールの「WestBridge」というデバイスが表示されます。


手順②として以下 URL の Ettus Research のウェブページから Windows版の USB ドライバをダウンロードして適当な場所に解凍しておきます。


ドライバ類をダウンロードして用意ができたら、手順 ③としてデバイスマネージャの「WestBridge」というデバイスを右クリックして「ドライバーを更新」を選択し、ダウンロード解凍したドライバフォルダを参照して更新します。


正しく更新されたらデバイスマネージャ上に B200mini の表示が正しくされます。


手順④で正しく認識するかどうか確認します。
コマンドプロンプトを開き、"C:\Program Files (x86)\National Instruments\NI-USRP\utilities" に移動し "uhd_find_devices.exe" を実行します。
無事に見つかれば以下のような表示になると思います。

ここで表示されている name にある B200mini が LabVIEW で使用するデバイス名になります。

さて手順⑤ にあたる LabVIEW の USRP サンプルの 「niUSRP EX Rx Continuous Asyc.vi」を実行してみましょう。
デフォルトでは Device Name に IP アドレスが設定されていますが、「B200mini」と設定して実行します。


無事に実行することが出来ました。

今回の記事を書くにあたり Web を調査したところ NI 社のフォーラムに同様の内容がありましたので紹介しておきます。スレッドの一番下です。ご参考まで。
(もしかしたら古い NI-USRP ドライバのバージョンでは上記フォーラムのように別途 B200mini の FPGA イメージを Ettus の FTP からダウンロードしてコピーする必要が生じるかもしれません。 NI-USRP 18.1 では含まれているようなので USB ドライバだけで大丈夫なようです。)

まとめ

NI-USRP では非公式の B200mini を LabVIEW から使用する方法について紹介させていただきました。
B200mini は割と小さい SDR デバイスですし少しの手間で LabVIEW からも使用できますのでアイディア次第でいろいろな用途に使用できるのではないでしょうか。


0 件のコメント :

コメントを投稿