遠隔監視(リモートモニタリング)

MONOSTICK(モノスティック)をパソコンやスマートフォン、タブレット端末のUSBポートに接続することで複数のTWE-LITE(トワイライト)端末を遠隔監視することができます。

TWE-LITE(トワイライト)に様々なセンサーを接続してパソコンやスマートフォン、タブレット端末で、 監視できます。

USBで接続されたデバイスからMONOSTICK(モノスティック)はシリアルポートに見えますので、データのやりとりが標準的な方法で行えるため、パソコン、タブレット、スマートフォン側のアプリの開発が容易です。

ここでは、センサデータをターミナルソフトウエアで表示していますが、パソコンやスマートフォン、タブレット端末で動作する自作アプリで表示することもできます。

MONOSTICK

設定方法

MONOSTICK(モノスティック)の設定

※TWE-LITE DIPの初期設定は子機になっています。

ターミナルソフトの設定

  1. パソコンまたはスマートフォン、タブレット端末を用意して下さい。
  2. 端末のUSBポートにMONOSTICK(モノスティック)を接続して下さい。
  3. 接続しているシリアルポート名(WindowsではCOMポート)を調べて設定して下さい。(Windows の場合はデバイスマネージャを用いるのが簡単です。)
  4. それぞれの端末上でターミナルソフトウエア( TeraTerm等)を起動して下さい。
  5. ターミナルソフトウエアの通信設定を「115200bps/8bit/パリティ無し/ストップビット1/フロー制御なし」にして下さい。
  6. 終端(改行コード)はCR+LFに設定して下さい。
  7. ローカルエコーはOFFに設定してください。

操作例(パソコンで相手端末の状態を知る。)

超簡単!TWEアプリの場合

ターミナルソフトウエア上に相手端末上の入力ポートの値が変化した場合と約1秒周期で定期的に受信されたデータが表示されます。

データフォーマットの詳細はTWE-LITE DIP使用方法(上級編)の「相手端末の状態通知:0x81」をご参照下さい。

以下に示すデーター列をパソコンやスマートフォン、タブレット端末で動作する自作アプリで使用することもできます。

データの読み方

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

:7881150175810000380026C9000C04220000FFFFFFFFFFA7

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

:7881150175810000380026C9000C04220000FFFFFFFFFFA7

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

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

:7881150175810000380026C9000C04220000FFFFFFFFFFA7

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

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

:7881150175810000380026C9000C04220000FFFFFFFFFFA7

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

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

:7881150175810000380026C9000C04220000FFFFFFFFFFA7

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

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

: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になります。

電源電圧(2バイト)

:7881150175810000380026C9000C04220000FFFFFFFFFFA7

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

値はmVです。

未使用(1バイト)

:7881150175810000380026C9000C04220000FFFFFFFFFFA7

未使用です。

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

:7881150175810000380026C9000C04220000FFFFFFFFFFA7

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

デジタル入力(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)