Topページに戻る

SCPIとは

SCPI(Standard Commands for Programmable Instruments)とは、試験・計測装置向けに考案されたASCIIベースのコマンドです。
Wiki SCPI(日本語のwiki無いんですね・・・)

その測定器側となるSCPIコマンドI/FをArduinoに実装して、Arduinoの測定器を作ってしまおうというのが最終目標です。


SCPIスケッチのダウンロード

GiuHub内のOpen Instrument Controlから落とします。
←ダウンロードは、このようなアイコンをクリックです。

oic-master.zip というファイルがダウンロードされます。
中身は↓こんな感じです。



Arduinoにライブラリをインストールします

iOSだと、書類/Arduino/libraries/ 内にoic-master.zipにパッケージされている【ArduinoSCPIParser】のフォルダをコピーします。
Windowsは、ライブラリ/ドキュメント/Arduino/libraries 内に【ArduinoSCPIParser】のフォルダをコピーします。

Arduino IDEを再起動させると、スケッチ→Include Library→Contributed librariesに表示されます。


※上記キャプチャでは、その他のライブラリも取り込んでいます。


サンプルのMeterをコンパイルしてみる
oic-master.zip 内の src/Examples/Meter というフォルダがあるので、/Arduino フォルダにコピーします。

コンパイル時に以下のメッセージが表示される場合は、/Arduino/libraries/ArduinoSCPIParser 内の
scpiparser.cpp をエディタで開き、#include の行を //#include に変更します。


--------------------------------------------------------------------------------------------------------------------------------
Arduino: 1.6.5 (Mac OS X), ボード:"Arduino/Genuino Uno"

/Users/su/Documents/Arduino/libraries/ArduinoSCPIParser/scpiparser.cpp:29:22: fatal error: WProgram.h: No such file or directory
 #include 
                      ^
compilation terminated.
コンパイル時にエラーが発生しました。

  This report would have more information with
  "コンパイル中の詳細な出力を表示する"
  ファイル > 設定 で有効にする
--------------------------------------------------------------------------------------------------------------------------------

コンパイルしてスケッチを書き込みます。
書き込みが終わりましたら、Arduino IDEのツール→シリアルモニタを開き、
ボーレート9600bps、【LFのみ】に設定します。(【CRLF】にするとコマンドを受け付けません。)

コマンド【*IDN?】を送ると、あらかじめ設定されているメッセージが返送されます。
※IDNコマンドは機器情報等を読み出すクエリコマンドです。


[OIC,Embedded SCPI Example,1,10]


あとは、ArduinoSCPIParserのライブラリを使って、コマンドラインインタフェースの実装を流用
していきます。

2015/09/13 初版