【計測器】Pythonでコントロールしたりデータ取得するのは?pyVISA ? SCPI? 【もうGPIBじゃないのね】

測定機器のコントロール

この歳で、また公的研究費を頂いて、研究をしているのですが、連続で同じようなことを何回もしたいということがあり、測定機器のコントロールをしようかと。。 で。。そんなの昔は、GPIBというHPが作ったプロトコルで、マニュアル片手に、Visual Basicで一個づつ作っていたんですが。。 まぁ、潤沢に予算も昔はあったので、測定機器もHPに統一されてたり、自分で作った測定器だったりしたので、すぐに作れたのですが(笑) ちょっとお勉強しなおさないと、パパっと作れないことが(笑) 昔より頭の回転遅いし。。体力ないし。。 なので、自動で効率的にできるようにしておくこと。。大事だし(笑)

今回は、寄せ集めで。。KeySight(HP→Agilentとかいろいろな会社がここに集約されている?)や、Rohde &Shwarz、Anritsu、などなどいろんなメーカの測定機器があり。。それぞれ調べてみたら。。 なんとなく共通のプロトコルっぽいのがあってそれみないと。。って感じ

VISA? SCPI?

通信層は、VISA(Virtual Instrument Software Architecture)というものが。。そして、コマンド層にはSCPI(Standard Commands for Programmable Instruments)ってのがあるみたい。 NI(National Instruments)が作ってきたものが。。VISAで、KeySightやGPIBの流れをくむのがSCPIって感じなんでしょうかね?

VISAは、NIのHPに概要が載ってて

https://www.ni.com/ja-jp/support/documentation/supplemental/06/ni-visa-overview.html

KeySightも、奨めています。

https://www.keysight.com/jp/ja/ttps:/www.keysight.com/jp/ja/lib/resources/programming-guides/resource-2304677.html

GPIBやRS232C,USB,Ethernetなどの物理通信層を共通的に扱えるようにしているライブラリっぽいですね。

SCPIはKeysightに記述が載ってて、

https://www.keysight.com/jp/ja/lib/resources/training-materials/resource-2304680.html

やっぱり共通コマンドみたいですね。

Rohde & Schwarz も、VISA対応のアプリが出ていますね。

https://github.com/Rohde-Schwarz/RsInstrument/

このRohdeのやつみていると、

RsInstrumentやRsCommaderというPythonのライブラリを読み込むと、pyVISAがインストールされるので、これの上に構築されているっぽい。

pyVISA

Pythonで、VISAをコントロールするPyVISA: Control your instruments with Pythonの詳しい説明は、こちら

https://pyvisa.readthedocs.io/en/latest/introduction/communication.html

で、入れてみて、

pyvisa-info.exe

を動かしてみると、pyvisaの情報が出てきます。バックエンドは、どうやら。。最新版のWindows用のdllは、Rohde Schwarz製のようです

pyvisa-shell.exe

これで、Shellのようにしてとりあえず動かしてみることができるんですね。

 

とりあえず。。まずはここまで。。実際につなげて動かさないとわかんないですね。

Rohde Schwarz

RsCommander

https://www.rohde-schwarz.com/jp/applications/rscommander-application-note_56280-510720.html

ネットワークのない場所でのInstallや開発

https://www.rohde-schwarz.com/jp/faq/-rsinstrument-pycharm-faq_78704-1145222.html

 

KeySight

自動計測全般

https://www.keysight.com/jp/ja/lib/resources/programming-guides/resource-2302231.html

C#での例

【C#】【VISA】計測機器をPCから制御するVISA入門 | Extra-Lab (extralab.org)

pyVISA RSinstruments でやってみた。

PCと、機器のIPアドレスを同一セグメントのIPにセットしてあげると。。一応、やり取りはOK。

RSinstruments は R&S は応答。。 当たり前か?w

pyVISAもほとんど同じ。Keysightも反応してくれる。

ただ。。 ResourceManagerからは反応なさそう。。

あと、GPIB-USB変換(National Instruments製)のドライバがうまく動かなかったのか?ZadigでUSBドライバーをいろいろ入れ替えてみたけど。。うまくいかずUSBはまだ検討中  

各測定器のコマンド集みたいなのって、Githubに落ちてないかな?w

探そっと!

SCIP 共通コマンド IEEE488共通コマンド

探せば何か出てくる幸せな世の中。先人の方ありがとう。

SCPIコマンドと問合せのアルファベット順リスト (keysight.com)

なるほど。。 これが共通になってるのか。。

Python用には、easy SCIPなるものもある。

easy-scpi · PyPI

ソースを読むと、pyVISAで通信してます。。 これ使おう。

共通化されていないコマンドは当然あるので、それらはそれぞれのマニュアルで補強だな。。なるほど。。

 

Python lab automation landscape Catalog

Github探していたら。。 こんなの見つけた。これがPythonでラボ用機器の自動化をするカタログ。。ライブラリー類の一覧ですね。

https://pymeasure.github.io/python-lab-automation-landscape/catalog/

投稿者 tom2rd

コメントを残していただけるとありがたいです

Loading Facebook Comments ...

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください