相手端末からの状態通知:ステータス 0x81

相手端末の状態通知を受けた時にUARTにもその情報が常に出力されます。

データは約1秒周期とポート入力値の変化時に送受信され、TWELITEの外部に接続したマイコン等でデータを解釈することができます。

:7881150175810000380026C9000C04220000FFFFFFFFFFA7 
:7881150175810000380026FF000C02220000FFFFFFFFFF73 <約1秒毎に受信される
:788115017581000038002743000C03220000FFFFFFFFFF2D
:788115017581000038002785000C05220000FFFFFFFFFFE9
:7881150178810000380027D3000C05230000FFFFFFFFFF97
:788115017881000038002813000C02230000FFFFFFFFFF59
:78811501758100003800284F000C02230000FFFFFFFFFF20
:788115017581000038002899000C04230000FFFFFFFFFFD4
 ^1^2^3^4^5^^^^^^^6^7^^^8^9^^^a^b^c^de1e2e3e4ef^g

データフォーマット

1: 1バイト:送信元の論理デバイスID (0x78 は子機からの通知)
2: 1バイト:コマンド(0x81: IO状態の通知)
3: 1バイト:パケット識別子 (アプリケーションIDより生成される)
4: 1バイト:プロトコルバージョン (0x01 固定)
5: 1バイト:LQI値、電波強度に応じた値で 0xFF が最大、0x00 が最小
6: 4バイト:送信元の個体識別番号
7: 1バイト:宛先の論理デバイスID
8: 2バイト:タイムスタンプ (秒64カウント)
9: 1バイト:中継フラグ(中継回数0~3)
a: 2バイト:電源電圧[mV]
b: 1バイト:未使用
c: 1バイト:DI の状態ビット。DI1(0x1) DI2(0x2) DI3(0x4) DI4(0x8)。1がOn(Lowレベル)。
d: 1バイト:DI の変更状態ビット。DI1(0x1) DI2(0x2) DI3(0x4) DI4(0x8)。1が変更対象。
e1~e4: AD1~AD4の変換値。0~2000[mV]のAD値を16で割った値を格納。
ef: AD1~AD4の補正値 (LSBから順に2ビットずつ補正値、LSB側が AD1, MSB側が AD4)
g: 1バイト:チェックサム

データの説明

以下にデータの中身を解説します。以下のデータ列を例にして解説します。

:7881150175810000380026C9000C04220000FFFFFFFFFFA7

相手端末の論理デバイスID(1バイト)

:7881150175810000380026C9000C04220000FFFFFFFFFFA7

相手端末の論理デバイスIDが78であることを表します。

データの種別(1バイト)

:7881150175810000380026C9000C04220000FFFFFFFFFFA7

81はデータが相手端末の状態であることを表します。

パケット識別子(1バイト)

:7881150175810000380026C9000C04220000FFFFFFFFFFA7

システムが使用する値です。

プロトコルバージョン(1バイト)

:7881150175810000380026C9000C04220000FFFFFFFFFFA7

プロトコルバージョンが01であることを表します。

受信電波品質(1バイト)

signal-icon

:7881150175810000380026C9000C04220000FFFFFFFFFFA7

受信電波品質が0x75であることを表します。(値は0~0xFF)

受信電波品質(LQI)は0から255までの数値で表されます。

あくまでも目安としてですが、以下の計算式でdBmに変換できます。

PdBm=(7*LQI-1970)/20
例:LQI((0-255)が125の時、約-54.75dBm

50未満(悪い -80dbm 未満)、50~100(やや悪い)、100~150(良好)、150以上(アンテナの近傍)といった区分けが品質の目安になります。あくまでも目安ですので、実地での検証をしてください。

相手端末の個体識別番号(4バイト)

:7881150175810000380026C9000C04220000FFFFFFFFFFA7

相手端末の個体識別番号が0x81000038であることを表します。

製造時に一意に割り当てられる値です。変更することは出来ません。

宛先端末の論理デバイスID(1バイト)

:7881150175810000380026C9000C04220000FFFFFFFFFFA7

宛先端末の論理デバイスIDが00であることを表します。

タイムスタンプ(2バイト)

:7881150175810000380026C9000C04220000FFFFFFFFFFA7

タイムスタンプです。1/64秒でカウントアップします。0xFFFFで0に戻ります。

中継フラグ(1バイト)

:7881150175810000380026C9000C04220000FFFFFFFFFFA7

中継フラグは中継された回数を示します。00は中継されていないことを表します。中継が一回入った場合は01になります。中継回数は最大で3回です。中継回数の初期値は1です。中継回数はインタラクティブモードのオプションビットで最大3まで変更できます。

電源電圧(2バイト)

:7881150175810000380026C9000C04220000FFFFFFFFFFA7

電源電圧が0x0C04(3.076V)であることを表します。

値はmVです。

未使用(1バイト)

:7881150175810000380026C9000C04220000FFFFFFFFFFA7

未使用です。

デジタル入力(DI)の値(1バイト)

:7881150175810000380026C9000C04220000FFFFFFFFFFA7

デジタル入力(DI)の値を表します。値はDI1(0x1) DI2(0x2) DI3(0x4) DI4(0x8)に対応しています。例えばDI1に接続されたスイッチが押されている場合、値は01となります。DI4のスイッチが押されている場合、値は08となります。全てのスイッチが押されている場合、値は0Fとなります。

デジタル入力(DI)の変更状態値(1バイト)

:7881150175810000380026C9000C04220000FFFFFFFFFFA7

デジタル入力(DI)の変更状態値を表します。

アナログ入力(AI)の値(4バイト)

:7881150175810000380026C9000C04220000FFFFFFFFFFA7

アナログ入力(AI)のAI4、AI3、AI2、AI1(各1バイト)の変換値を表します。

入力電圧0~2000[mV]のAI値を16で割った値です。(入力電圧が2000mV以上の場合は無効になります。)

アナログ入力(AI)の補正値(1バイト)

:7881150175810000380026C9000C04220000FFFFFFFFFFA7

アナログ入力(AI)の補正値を表します。

アナログ値の復元には以下のように計算してください。

AI[mV] = (アナログ入力の値 * 4 + 補正値) * 4

チェックサム(1バイト)

:7881150175810000380026C9000C04220000FFFFFFFFFFA7

チェックサムが0xA7であることを表します。

チェックサムの計算

チェックサムとは受け取ったデータが正しいかどうかを確認するための付加データです。

データ部の各バイトの和を8ビット幅で計算し2の補数をとります。つまりデータ部の各バイトの総和+チェックサムバイトを8ビット幅で計算すると0になります。
チェックサムバイトをアスキー文字列2文字で表現します。
例えば 00A01301FF123456 では 0x00 + 0xA0 + ... + 0x56 = 0x4F となり、この二の補数は0xB1 です。(つまり 0x4F + 0xB1 = 0)

受信データの表示

生データを表示

  1. TWELITE STAGEを起動してください。
  2. メニューから「ビューア」>[ターミナル]を選択してください。

グラフィカルに表示

  1. TWELITE STAGEを起動してください。
  2. メニューから「ビューア」>[標準アプリビューア]を選択してください。

利用例

チェックサムの計算方法

データ部の各バイトの和を8ビット幅で計算し、2の補数をとります。つまりデータ部の各バイトの総和+チェックサムバイトを8ビット幅で計算すると0になります。チェックサムバイトをアスキー文字列2文字で表現します。

例えば 00A01301FF123456 では 0x00 + 0xA0 + ... + 0x56 = 0x4F となり、この2の補数は0xB1 です。(つまり 0x4F + 0xB1 = 0)

TWELITE
TWELITE
DIP
DIP
UART
UART
CUE
CUE
ARIA
ARIA
PAL
PAL
STICK
STICK
spot
SPOT
R3
R3
STARTER KIT
STARTER KIT
アンテナ
アンテナ
製品一覧
製品一覧

モノをつなぐ無線

モノをつなぐ無線
モノの無線
導入事例
導入事例
選び方
選び方
小型
小型
省電力
省電力
多数接続
多数接続
コントロール
コントロール
モニタリング
モニタリング
ソフトウエア
ソフトウエア
親機
親機
中継機
中継機
子機
子機
始め方
始め方

評価開発環境

STAGE
STAGE
STAGE APP
STAGE APP
interactive
アプリ設定
アプリ書換
アプリ書換
プログラミング
プログラミング