計測器コマンド応答(シリアル)
serial-instrument/serial-instrument.commsim は、シリアル(RS-232C / USB-シリアル)で通信する計測器・機器の相手役(スタブ)を CommSim で再現するサンプルです。題材は SCPI 風の ASCII コマンド-レスポンス(*IDN? / MEAS? / RST)。応答はオートメーション(パケット一致トリガー)で返します。
COM11、画面は検証環境の仮想ペア COM4)。自分の環境のポート名をコンボから選び直してください。事前準備が要ります:TCP/UDP と違い、シリアルには localhost がありません。テスト対象アプリの接続先を CommSim にするため、仮想 COM ペア(com0com 等)を先に作ってください。詳しくは シリアル通信 を参照。
試し方
ターミナル/アプリCOM10 を開く
⇄
仮想COMペアcom0com
⇄
CommSimCOM11・計測器スタブ
- com0com 等で仮想ペア
COM10 ⇄ COM11を作成する。 - CommSim で
serial-instrument.commsimを開く(プロトコル=Serial・COM11・9600・8/None/1・フロー制御なしが設定済み)。自分のペアと COM 名が違う場合は「接続」タブで変更する。 - セッションを起動する(
COM11を開いて待受)。 - ターミナル等で
COM10を開き、下表のコマンドを送ると応答が返る。
| 要求(→ COM10) | 応答(COM11 →) |
|---|---|
*IDN?\r\n | CommSim,MODEL-100,SN12345,1.0\r\n(機種名・S/N・バージョン) |
MEAS?\r\n | MEAS 23.5 degC\r\n(測定値・50ms 遅延) |
RST\r\n | OK\r\n |
ポイント
- 既存資産がそのまま効く:応答はオートメーション(パケット一致
Contains)で返しています。障害注入・録画リプレイ・構造体応答も同じくシリアルで使えます。 - 失敗診断:COM が見つからない/使用中/設定不一致(文字化け)は、CommSim がログに原因を示します(受信バイトは HEX 表示)。
- 中継(プロキシ):接続設定で上流プロトコルを Serial にすると、
下流=仮想ペア ⇄ CommSim ⇄ 上流=実機 COMの記録もできます。
次に読む
- スクリーンショット付きの手順ガイド(仮想 COM ペアの導入から通しで) → チュートリアル:シリアル通信を試す
- シリアルの仕組み・接続設定・失敗診断 → シリアル通信
- 応答のしくみ → オートメーション