047 ファンクション・ジェネレータをコントロールする(その5)

2022/06/18

実機/ファンクションジェネレータ

t f B! P L

前回の投稿で,SCPIコマンドが間違っていることが判明しました.ファンクション・ジェネレータに任意波形データを設定するための,SCPIコマンドは,
 収納するメモリ番号,波形名(省略可能),波形データ
の3つのパラメータを伴うコマンドです.

本ケースのように,複数個のパラメータを伴うSCPIコマンドはあまり多くなく,また,使用するPyVISAパッケージwrite_binary_values関数では,波形データそのものは別の引数となるので,てっきり,収納するメモリ番号と省略可能な波形名の2つのパラメータを伴うSCPIコマンドだと思いこんでいました(しかも,2番目のパラメータ波形名は省略可能なので,省略すれば1個のパラメータで済むと誤認識していました).

認識が間違っているのは明白なので,改めて技術資料を見直し,パラメタ・セパレータ(パラメータ・セパレータの書き間違いではありません.なぜか,エヌエフ回路設計社の技術資料ではパラメータではなくパラメタとなっています.検索するとき不便なので,測定機器業界で用語を統一して欲しいです)を使ってSCPIコマンドを作り直すと,不具合が解消し,ファンクション・ジェネレータに任意波形データを設定することができるようになりました(任意波形データの設定項目では,SCPIコマンドの設定例が記述されておらず,勝手に誤認識してしまいました).

今回使用したエヌエフ回路設計社のファンクション・ジェネレータは,任意波形データの作成を行うプログラムが提供されており,測定者の多くは,そのプログラムを使うことが想定されているのかもしれません.
ファンクション・ジェネレータに設定する波形データへの変換も複雑なので,誰でもできるレベルではないことは確かですし,今回のように,SCPIコマンドを使って任意波形データを設定するケースは,あまり想定されておらず,SCPIコマンドの設定例が記述されていないことも,(ある程度は)納得できます.

自動測定システムを構築するためには,測定機器メーカから提供される便利なツール類を使わずに,代わりに,全て自ら処理を行うシステムを構築することになります.今回のように,事前調査をしっかり行ったつもりでも,上手くいかないことに出くわしますが,そのような時は,一旦冷静になって,不具合を特定できる方法は無いか,調べてみてはどうでしょうか.

幸いなことに,今回のケースでは,エヌエフ回路設計社のファンクション・ジェネレータで提供されている不具合検出用コマンドを使うことで原因を特定し,無事解決することができました.別の測定機器でも同じようにアプローチできるとは限りませんが,参考になれば幸いです.




QooQ