マニュアル / 仕様一覧
仕様一覧
CommSim を使ううえで設定・把握しておく値や選択肢の一覧です。
通信
| 項目 | 選択肢 |
| プロトコル | TCP / UDP |
| 接続 | サーバ(待ち受け)/ クライアント(接続しに行く) |
| UDP 通信種別 | ユニキャスト / マルチキャスト / ブロードキャスト(UDP のみ) |
| マルチキャスト応答先 | 送信元へユニキャスト / グループへマルチキャスト(マルチキャスト時) |
| マルチキャスト TTL | 1〜255(既定 1=同一サブネット) |
| データ形式(エンコーディング) | UTF-8 / ASCII / RawHex(バイナリ HEX) |
フレーミング(TCP ストリームの区切り方)
| 方式 | 区切り方 | 設定する項目 |
| None | 区切らない(受信したまとまりを 1 メッセージ扱い) | — |
| LengthPrefixed | ヘッダ内の長さフィールドで判定 | 共通ヘッダ長/長さフィールドのオフセット・サイズ/長さ基準/長さ補正 |
| FixedLength | 毎回同じバイト数 | 固定メッセージ長 |
| Delimiter | 区切りバイト列まで | デリミタ HEX(例 0D 0A) |
フレーミング詳細パラメータ
| パラメータ | 説明 |
| エンディアン | Big(上位バイトが先)/ Little(下位バイトが先) |
| 長さ基準 | メッセージ全体長 / 長さフィールド以降の長さ / 共通ヘッダ以降のボディ長 |
| 長さ補正 | 長さフィールドの値と実際のバイト数の差を補正(正負の整数) |
プロジェクト設定では、選んだフレーミング方式に関係しない項目は自動的に無効(グレーアウト)になります。
構造体定義(フィールド)
| 項目 | 選べる値 |
| フィールド型 |
u8〜u64 / i8〜i64(符号付き)/ f32・f64(浮動小数点)/ ascii(文字列)/ hex(生バイト)/ bcd(パック BCD)/ array(配列)/ nested(入れ子) |
| 役割 |
None / Length(長さ)/ Checksum(チェックサム)/ Discriminator(判別) |
条件・応答
| 項目 | 内容 |
| フィールド条件の演算子 | = / ≠ / > / < / ≥ / ≤(すべて満たすとマッチ=AND) |
| オートメーションのトリガー | 手動 / パケット一致 / 接続時 / 周期 |
| パケット一致の方法 | Exact(完全一致)/ Contains(部分一致)/ StartsWith(前方一致)/ Regex(正規表現)/ HexPattern(HEX バイト列) |
| 送信ステップの種別 | Send(送信)/ WaitReceive(受信待機)/ Delay(待機)/ Forward(上流へ転送)/ Script(C# スクリプト応答) |
| 繰り返し | なし / 指定回数 / 無限(周期トリガーでは「無限」は選べません。ティック自体が繰り返しのため) |
送信テンプレート記法
オートメーションの送信ステップ(テンプレート使用時)
| 記法 | 意味 |
{len:N} | メッセージ全体の長さを N バイトで埋める |
{crc:種別} | チェックサムを計算して埋める |
{echo:オフセット:長さ} | 受信データの一部をそのまま返す |
{seq} | 繰り返しの回数カウンタ |
{time:書式} | 現在時刻 |
{rand:N} | N バイトの乱数 |
バイナリ構造応答(構造体ルール)の応答テンプレート
| 記法 | 意味 |
AA BB … | リテラル HEX(そのまま出力) |
{field:名前} | 受信メッセージの該当フィールド値をエコー |
{len:N} | メッセージ全体の長さを N バイトで埋める |
{crc:種別} | チェックサムを計算して埋める |
チェックサム種別
| 種別 | 説明 |
Crc16Ccitt | CRC-16/CCITT(初期値 0xFFFF、多項式 0x1021) |
Crc16Modbus | CRC-16/Modbus(初期値 0xFFFF、多項式 0xA001) |
Sum8 | 8 ビット加算チェックサム |
Sum16 | 16 ビット加算チェックサム |
Xor8 | 8 ビット XOR チェックサム |
ログ・ファイル
| 項目 | 仕様 |
| ログの画面表示 | セッションごとに最新 1000 件(超えると古い順に消える) |
| ログのファイル形式 | CSV / JSONL(両方同時出力も可) |
| ログファイルの最大サイズ | 1〜1024 MB(超えると新しいファイルに切り替え) |
| プロジェクトファイル | .commsim(任意の場所に保存・読込)。スクリプトステップを含む場合は formatVersion: 5、含まない場合は formatVersion: 4 |
| 構造体定義ファイル | .commsim-struct(インポート/エクスポートで共有) |
| スクリプトタイムアウト | プロジェクト既定: 1000 ms。ステップ単位で上書き可能 |
| スクリプト応答サイズ上限 | 1 MiB(超えた場合は送信せずログに通知) |