SCPI ドライバ層の概要
xdm1000_scpi.py は OWON XDM1000/XDM1241 系デジタルマルチメータに SCPI コマンドを送る低レベルドライバである。pyserial を内包し、ASCII テキストの SCPI コマンド送信、応答取得、基本的な型変換を行う。
主な責務
serial.Serialの生成と解放SCPI
write()/query()query_float()/query_int()による基本型変換IEEE 488.2 の
idn()/reset()System の
remote()/local()/ beeper 設定CONFigure:*系コマンドの薄いラッパFUNCtion/FUNCtion?RANGEAUTO/AUTO?RATE/RATE?MEAS?/MEAS1?/MEAS2?CALCulate:AVERage:ALL?の構造化
通信仕様
シリアル通信は 8-N-1、フロー制御なしで開く。
serial.Serial(
port=port,
baudrate=baudrate,
bytesize=serial.EIGHTBITS,
parity=serial.PARITY_NONE,
stopbits=serial.STOPBITS_ONE,
timeout=timeout,
write_timeout=timeout,
xonxoff=False,
rtscts=False,
dsrdtr=False,
)
ctrl 層との関係
SCPI 層は上位 API の状態管理を持たない。set_mode()、set_range()、meas_continue()、get_result() などの利用者向け API、worker process、設定キャッシュ、結果キャッシュは ctrl 層の責務である。
ctrl 層の標準測定値取得は meas_main()、すなわち MEAS1? を使う。