km2net usb-io2.0がNI-visaで入力できないわけ
NIのサイトにUSB計測器制御チュートリアルというのがあって、「NI-VISAを使用したUSB機器制御入門ガイドとしてご利用いただけ」るようになっているらしい。
そこを読み進めると、
- USB RAW形式の計測器デスクリプタのフォーマットは、USB[ボード番号]:: ベンダID:: 製品ID:: シリアル番号[:: USB インタフェース番号]::RAWのようになります。
- USB RAWクラスとの通信は、デバイスにより使用する通信プロトコルが異なるため、より複雑になります
- NI-VISAでは、コントロール、バルク、インタラプトの3タイプのUSBパイプをサポートしています
- バルク入力エンドポイントとバルク出力エンドポイントは、それぞれVI_ATTR_USB_BULK_IN_PIPE属性とVI_ATTR_USB_BULK_OUT_PIPE属性に保存されています
で、Visa interactive controleを立ち上げ、Input/Outputを実行すると、
△書き込みは上のように正常にできる。十六進数は¥11が「17」である。先頭のスペース(¥s)は書き込みコマンドで、二文字目がポート番号(=2)、三文字目がポート2に送るデータで、このデータをいろいろ変えると、制御出来た。
△ConfigurationのView Attributesを見て腰が抜けた。Bulk In Pipe Statusがエラーになっているのだ。なるほど、visa側でサポートしていなかったというわけか、、、。
書き込み(外部出力)は正常に出来るのと、低価格(千円程度)なので、これからもビシビシ使って行きたい(うそ。もう疲れた)。