今回は「niUSRP EX Filter Devices on System.vi」です。
サンプルプログラムの開き方は第一回のブログを参照してください。
niUSRP EX Filter Devices on System.vi
サンプルのフォルダを開くと以下のようにずらずらっと並んでおります
名前順にソートされて2番目のサンプルが「niUSRP EX Filter Devices on System.vi」です。
このサンプルでは、システム (PC) に接続された全ての USRP を見つけて、その情報を表示します。また、予めわかっている情報でフィルタして、該当する USRP を表示します。(送受信などは行わないサンプルです)
フロントパネルはこのようになっています。
左側には
[Address]
[Serial Numbers]
[Models]
という文字列の配列を入力するところがあります。
これは実行したときにフィルタになる情報です。
何も記述しなければすべての USRP を表示します。
右側は
[Concatenated Addresses]
[niUSRP Devices]
[error out]
となっております。
実行したときに取得した情報を表示します。また、左側のフィルタがある場合には一致するデバイスの情報が表示されます。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーー
ブロックダイアグラムはこのような感じです。
ここで使用している USRP の関数は左下の [niUSRP Find Devices.vi] のみです。
実行するとこの関数によって PC に接続された USRP を全て見つけます。
その情報は
[address]
[serial number]
[model]
のクラスタの配列として取得します。
このブロックダイアグラムでは、[niUSRP Find Devices.vi]で取得した情報に対してフロントパネルで記述したフィルタに合致したものだけを出力、表示しています。
実行してみる
まずはフロントパネル左側のフィルタに関する文字列は何も入力せずに実行してみます。
実行時に接続した USRP は
・USRP-2943R
・USRP-2954R
・USRP2 (Ettus Nシリーズの古いもの)
の3つです。
[Concatenated Addresses] には
[RIO1;RIO2;192.168.1.52]
と表示されました。
またその下の [niUSRP Devices] には全部の情報が配列に格納されていました。
配列 #0 には RIO1, シリアル番号,NI USRP-2943R
配列 #1 には RIO2, シリアル番号,NI USRP-2954R
配列 #2 には 192.168.1.52, シリアル番号,USRP2 r4
基本的に Address には RIOデバイスではRIOリソース名、Nシリーズなどイーサネット接続は IP アドレス、USB接続の B200などは B200などが表示されるようです。
0 件のコメント :
コメントを投稿