テクシオ・テクノロジーによるおじさんのためのIOT講座 |
マルチメータと通信してみよう
PCなどから計測器を制御する例としてマルチメータをUSBで接続して制御してみましょう。 弊社のマルチメータのUSBはUSB-CDCプロトコルまたはUSB-TMCプロトコルで制御します、 どのプロトコルが使えるかは製品の取扱説明書を参照してください。制御側はWindowsPCだけ でなくラズベリーパイなどのLinuxPCも利用できます。 1.マルチメータで使用するインタフェース、プロトコルを選択します。 RS-232CやLANなども利用できる機種については、インタフェースの選択でUSBを指定し ます。USBのプロトコルが選択できる場合はUSB-TMCを選択してください。 GDM-9061では以下のような設定画面となっています。
USBの接続をPCが認識するとUSBドライバが適用されます。今回はUSB-TMCを使用して いますのでWindows10ではVISAライブラリが必要になります。利用する環境に対応した VISAライブラリをご用意してインストールしてください。VISAライブラリはナショナル インスツルメンツ社等から提供されています。Linuxを使う場合は標準で認識するように なっていますのでドライバは不要です。 WindowsではVISAライブラリに付属している機器の一覧を表示するツールやデバイス マネージャで確認ができます。Linuxでは管理者権限でdmesgコマンドを実行し、 デバイス一覧を表示して確認することができます。(" sudo dmsg | grep usb"を使用) ユーザーで実行する場合はアクセス権限のあるグループ(dialaoutなど)に参加してから おこないます。 3.通信テストをします。 Windows10/11であればVISAライブラリに通信テストツール(対話ツール)がありますので "*IDN?"を送信し、受信を行って正常に通信できているかを確認します。 Linuxの場合は本講座のVISAプログラミングにpythonを使った通信ツールがありますので 使ってみてください。(このプログラムはLinux系・Windows系両方で動作可能です) USB-TMC機器の指定はUSBのベンダID、プロダクトID、シリアルナンバーで行いますが VISAでは機器検索ができますので、機器一覧から選択することも可能です。 *IDN?の応答は、メーカー名、モデル名、シリアルナンバー、バージョンなどが文字列で 戻ります。 4.マルチメータから測定値を取込みます。 マルチメータで測定値を要求するコマンドは複数ありますが、今回は"READ?"を使います。 通信ツールでREAD?を送信すると、マルチメータの表示値が更新され測定値がPCに応答 されます。PC側で受信をして測定値を確認してください。オートレンジが設定されている 場合はレンジが確定してから測定を行いますので応答まで時間が必要です。 通信を行うとリモート状態となり、マルチメータの表示の更新が止まりますが、異常では なくリモートを解除すると元に戻ります。 また再度READ?を送信すると値が更新されます。
5.読み取りコマンドについて READコマンドは、マルチメータがコマンドを受信すると測定値の読み取りを行い測定値を 応答しますが、MEASコマンドは指定した測定モード、測定レンジ、分解能を設定した後に 測定値の読み取りを行います。MEASコマンドでは測定レンジのパラメータを省略する とオートレンジが選択され、分解能を省略すると初期値の分解能が選択されるため、応答 時間が信号によって異なりますのでパラメータを省略する場合は注意が必要です。 以後はREADコマンドで値を読み取る流れになります。測定回数を2回以上に設定すると、 指定回数分測定をおこなってからの応答となりますので、測定時間に注意してください。 以上でマルチメータから測定値を読み取ることができるようになりました。測定値を使って制御 をおこなう、グラフを表示する、データを転送する等の応用でIOTの一部として使い道を広げる ことができます。 今回はマルチメータが対象になっていますが、ほかの機器でも同様にPC等とつないでIOTに貢献することができます。 |
©Copyright 2021 TEXIO TECHNOLOGY All Rights Reserved. |