プロトコルの仕様

アジキューブの通信プロトコル

ホストコントローラの通信プロトコルは、ASCII 文字のみを使用し、通信ネットワーク用に設計されています。ホストコンピュータは、常にクライアントです。サーバーは、クライアントからメッセージを受け取ってから送信します。

コマンド/ レスポンスフォーマット
Command: Begin, Command, End, CRLF
Response: Begin, Response, End, CRLF
開始

ASCII 文字 { は、パケットの最初の文字でなければならず、これによって新しいパケットを検出することができます。

コマンド

このフィールドには、メッセージの目的を特定する ASCII 文字が入ります。利用可能な コマンド は、さらにドキュメントに記載されています。

レスポンス

このフィールドには、インストラクションの検証を特定する固定フォーマットが含まれています。アジキューブは、対応する各インストラクションに対して応答メッセージを与えます。

終わり

ASCII 文字 } は、コマンド、またはレスポンスの直後に配置する必要があります。

CRLF

ASCII 文字のキャリッジリターン 0x0D (または \r )およびラインフィード 0x0A (または \n )は、送信および受信のパケットの最後の 2 バイトです。

表 16 ASCII 文字

0 から 9 まで

ケースセンシティブではありません

a から z まで、 A から Z まで

{

パケット開始

:

読み取り操作を特定する

=

書き込み操作を特定する

}

パケットの終わり

( または ) または ;

特殊区切り記号

CR

0x0D キャリッジリターン

LF

0x0A ラインフィード

注釈

利用可能なすべてのコマンドの詳細については、 コマンド の章を参照してください。

エラーコード

シリアルレスポンスでは、エラーコードが整数値で表示されます。この値をバイナリに変換して、影響を受けるエラービットを取得する必要があります。例えば、レスポンス {Er00004} は、システムがコマンドの最初の文字を認識しないことを意味します。

表 17 通信エラーコード

2進法

エラービット

メッセージ

[00001]

0

メッセージ文字列の構文エラーです!

[00002]

文字列から整数データへの変換エラーです!読み取り/書き込みに基づいて奇数/偶数を設定してください。

[00004]

コマンドの最初の文字が不明です!

[00008]

コマンドの 2 文字目が不明です!

[00016]

4

パラメータエラー!

[00032]

5

シーケンス振動持続時間値 0 エラー!

[00064]

6

振動セットへのアクセスまたはシーケンス ID26 のエラー!

[00128]

7

使用しませんでした

[00256]

8

受信バッファがいっぱいになりました!

[00512]

9

メッセージ終了 } を受信しましたがバッファがいっぱいを受信しました!

[01024]

10

メッセージ終了 } を受信したがメッセージ開始 { が欠けていました!

[02048]

11

[04096]

12

フレーミングエラーを検出しました!

[08192]

13

パリティエラーが検出されました!

[16384]

14

オーバーフローエラーを検出しました!

[32768]

15

受信完了メッセージのタイムアウト制御です!