サンプル集

同梱のサンプルプロジェクトを開くと、構造体定義・オートメーション・バイナリ構造応答が設定済みの状態で読み込まれます。付属のサンプルアプリを通信相手にすれば、実機なしで往復の動作を確認できます。各サンプルの目的・構成・使っている機能を解説します。

下のタブでサンプルを切り替えて、スクリーンショットと解説を確認できます(画像はクリックで拡大)。さらに詳しくは「このサンプルを詳しく見る」から、機器構成や通信フロー・設定内容まで解説した各サンプルのページへどうぞ。

CommSim:4 セッション同時稼働と構造体パース付きの往復ログ
CommSim(応答役)― 4 機器ぶんのセッションが同時に応答
テスト対象の制御アプリ:監視パネルと往復ログ
テスト対象アプリ役(同梱の実演用アプリ)― 実機なしで監視・制御を確認
TCP 7000–7003独自バイナリ LCP

設備ライン制御機 ― 4 機器を同時に

制御機と配下 3 機器を 1 プロジェクト・4 セッションで同時に再現。受信した要求は構造体としてフィールドに分解・パースされ、状態に応じた応答を自動で返します。複数機器を相手にする制御アプリを、実機なしで開発・デバッグできます。

このサンプルを詳しく見る

その他のサンプル

SMTP スタブの画面
クリックで拡大
TCP 2525テキスト行ベース

SMTP スタブ

メール送信クライアントのテスト相手として、SMTP サーバの応答(220 グリーティング → EHLO/MAIL/RCPT/DATA への 250・354・221)を再現します。

バイナリではなくテキスト行プロトコルを、構造体定義もスクリプトも使わずオートメーション(接続時グリーティング+パケット一致応答)だけで組み立てる最小の例です。「行が来たら行を返す」という最も基本的な流れを理解するのに適しています。

このサンプルを詳しく見る
多段応答の画面
クリックで拡大
TCP 96001要求→6応答

多段応答(起動シーケンス装置)

「電源投入で起動シーケンスを流す装置」を模擬します。クライアントが START を 1 通送ると、ACKBOOT 25%50%75%100%READY を一定間隔で順に返します。

1 つの受信トリガーに対して複数メッセージを時間差で送る「1 要求 → N 応答」を、オートメーションの繰り返し送信で表現する例です。

このサンプルを詳しく見る
自作センサプロトコルの画面
クリックで拡大
TCP 9500CRC-16/CCITT

自作センサプロトコル

STX+Type+Length+Payload+CRC-16/CCITT という独自バイナリフレームでやり取りするセンサ機器を再現します。

可変長 Payload のフレーミングと、応答時の CRC 自動計算・付与を構造体定義(メッセージ構造)で組む例。独自プロトコルのバイナリ機器をスタブ化する基本パターンを一通り押さえられます。

このサンプルを詳しく見る
Modbus/TCP スレーブの画面
クリックで拡大
TCP 502 / 503Modbus/TCP

Modbus/TCP スレーブ

産業系で広く使われる Modbus/TCP のスレーブ(サーバ)を再現します。FC03(保持レジスタ読出)/FC04(入力レジスタ読出)/FC06(単一レジスタ書込)の各ファンクションに、MBAP ヘッダ込みで正しく応答します。

標準プロトコルを構造体応答で再現する実例で、スクリプト版(503)では要求に応じた動的長レスポンスも扱います。

このサンプルを詳しく見る
設備ライン監視サンプルの構造体ルール({crc:Sum8} 自動付与)
クリックで拡大
TCP 7000 / 7001LineFrame+Sum8採取ログ同梱

設備ライン監視

独自バイナリ LineFrame(STX+Cmd+Len+可変 Payload+8bit 総和)の監視機器。構造体定義でのフレーミング/パース表示と {crc:Sum8} 自動付与を確認できます。

さらに複数日・複数コネクションの採取ログを同梱しているので、アプリを起動しなくてもログビュワー(機器フィルタ・複数日マージ・タイムライン)の機能をその場で試せます。

このサンプルを詳しく見る
UDP マルチキャスト・ディスカバリ応答の画面
クリックで拡大
UDP 50000マルチキャスト 239.255.0.1

UDP マルチキャスト

SSDP 型のディスカバリ機器を再現します。マルチキャストグループ宛の DISCOVER を受け取り、機器情報を送信元へユニキャストで返します。

グループ参加・TTL・応答先の扱いなど、UDP マルチキャスト特有の動作を実機なしで確かめられます。

このサンプルを詳しく見る
UDP ブロードキャスト・ディスカバリ応答の画面
クリックで拡大
UDP 50001ブロードキャスト

UDP ブロードキャスト

ブロードキャスト宛の WHO 探索に機器情報を返すディスカバリ応答。LAN 内をブロードキャストで探索するクライアントの相手役を実機なしで立てられます

マルチキャスト版と対になる UDP 探索の例です。

このサンプルを詳しく見る
計測器コマンド応答(シリアル)の接続タブ:Serial・9600・8-N-1
クリックで拡大(COM ポート名は環境ごとに異なる。既定は COM11・画面は検証環境の COM4)
Serial COM119600 8-N-1ASCII コマンド

計測器コマンド応答(シリアル)

シリアル(RS-232C / USB-シリアル)で通信する計測器・機器の相手役を実機なしで立てられます。SCPI 風の *IDN? / MEAS? / RST にオートメーションで応答します。

TCP/UDP と違い localhost が無いため、仮想 COM ペア(com0com 等)を用意し、その片側を CommSim で開きます。障害注入・録画リプレイ・構造体応答もシリアルで同じように使えます。

このサンプルを詳しく見る
多機器タイミング試験のタイムライン:0ms に機器2台を起動、1500ms にセンサ報告、1700ms にゲート準備完了
クリックで拡大
TCP 9710 / 9711機器 2 台掃引 6 ラン

多機器タイミング試験(入退室ゲートの競合)

「たまに動かない」を数字で言い切るための題材です。機器 2 台(在席センサ・ゲート制御装置)を CommSim が演じ、テスト対象アプリが 2 本の接続で相手をします。センサの応答遅延を 0〜400 ms で掃引すると、遅延の大きいランだけが FAIL になります(無人のフロアでゲートが開く)。

失敗したランは同じシードで何度でも再現でき、失敗条件・判定の根拠・再現手順を含むレポート(HTML/JSON)をそのまま不具合票に添付できます。

このサンプルを詳しく見る
サンプルは、メニューバーの「ファイル」→「ファイルから開く…」(Ctrl+O)から各 .commsim を開きます。構造体定義だけを再利用したい場合は .commsim-struct をインポートできます。スクリプト版は初回に有効化バナーから許可が必要です(→ 有効化)。

自分で組み立てたいなら、使いどころ別の例から始めるのが近道です。

使いどころの例を見る