| ホーム | 目次に戻る |
なお、プログラムは GitHub に置いてあります。
:<送信元デバイスID><86><デバイス種別><部屋番号><ステータス(8ビット)><温度(16ビット)><湿度(16ビット)><チェックサム>
| 記号 | 意味 | サンプル |
|---|---|---|
| : | データ送信を開始することを示す。 | : |
| <送信元デバイスID> | MONO-STICK への送信を行った送信元 TWELite-DIP のデバイスID。
通常部屋番号と同一の番号を付与する。 TWELite の番号体系の制限から 0x01 から 0x6f までが利用可能。 |
3c(10進数で60) |
| <86>(16進数) | MONO-STICK への独自の出力であることを示すタグ
タグの中には MONO-STICK 等で特殊な動作をするものがあるため、 新たに独自のタグ番号を付与した。 |
86 |
| <デバイス種別> | デバイスを区別する番号。SHT31 は 0x04 固定。 | 04 |
| <部屋番号> | 発信元の部屋を区別する番号。通常 0x01〜0x6fを設定し、
デバイス番号と合わせる。 |
3c(10進数で60) |
| <スタータス> | SHT31 のアラーム状態。ビット定義で以下のようになっている。
|
88(10進数で136)=リセット履歴あり |
| <温度> | 生の温度データ。ビッグエンディアンとなる。実際の温度は \[ T = -45 + 175\frac{Temperature Data}{2^{16} - 1} \] となる。 | 6c3f(温度29℃) |
| <湿度> | 生の湿度データ。ビッグエンディアンとなる。実際の湿度は \[ H = 100 \frac{Humidity Data}{2^{16} - 1} \] となる。 | 7fff(湿度50%Rh) |
| オプション名 | 説明 | デフォルト |
|---|---|---|
| アプリケーションID | 同じアプリケーション ID を持つ物同士のみが通信できる。 | 67720102 | デバイス論理ID | このデバイスの役割を示す ID を付与します。
|
--(なし) |
| 部屋番号 | この温湿度計が置かれる部屋の部屋番号です。SQLite3 DB に予め登録しておく必要があります。 | 3c(10進数で60) |
| デバイス種別 | SHT31 デバイスを識別する番号です。SQLite3 DB に予め登録しておく必要があります。
この番号はデバイスごとに固定です。 |
0x04 |
| モード7送信間隔(秒) | 親機への送信間隔です。必要がなければデフォルトのままとしてください。 | 60 |
| オプションビット | TWELite の詳細動作を制御するビットです。本アプリケーションでは 0x36 を設定してください。 | 0x00000000 |
| フィールド | 型 | 意味 |
|---|---|---|
| id | int (primary key) | ID番号 |
| type | int | センサータイプ(1: 温度のみ 2: 湿度のみ 3: 温湿度) |
| name | varchar(40) | センサー名: JSON のセンサータイプ名称がこのフィールドに等しいことを仮定している |
| description | varchar(255) | センサーの説明文章 |
| フィールド | 型 | 意味 |
|---|---|---|
| id | int (primary key) | 部屋番号: JSON で示される部屋番号に等しいことを仮定している |
| name | varchar(40) | 部屋名称: 表示画面で部屋選択肢に表示される |
| description | varchar(255) | 部屋の説明文章 |
| フィールド | 型 | 意味 |
|---|---|---|
| id | int (primary key) | ID 番号: クエリを構成するときに使用する |
| tablename | varchar(40) | 実際のデータが配置されるテーブルの名前 |
| name | varchar(40) | テーブル説明サマリー: グラフのタイトルに表示される文章 |
| description | varchar(255) | テーブル説明 |
| room | references ROOM(id) | 部屋番号 | sensor_type | references SENSOR_TYPE(id) | センサータイプ |
| フィールド | 型 | 意味 |
|---|---|---|
| elapsed | int(64) (primary key) | 測定日時: 1970-1-1日 00:00:00 UTC からの経過秒 |
| elapsed_hour | int (64) | elapsed を1時間で割った値 |
| elapsed_day | int (64) | elapsed を1日で割った値 |
| datetime | datetime | 測定日時 |
| status | int | センサーが報告してきた status バイトの値 |
| temperature | int | センサーが報告してきた温度 |
| humidity | int | センサーが報告してきた湿度 |
| フィールド | 型 | 意味 |
|---|---|---|
| id | int (primary key) | 定義 ID |
| room | int | 部屋番号 |
| current | int(1) | アラーム発生状態なら1、そうでないなら0 |
| threshold1 | real | 警告状態に入るスレッショルド値 |
| threshold2 | real | 警告状態を解くスレッショルド値 |
| mode | varchar(10) | up: 上昇方向、down: 下降方向 |
| フィールド | 型 | 意味 |
|---|---|---|
| name | varchar(255) (primary key) | 設定キー |
| value | text | 設定値 |
| 設定キー | 意味 | 設定値(例) |
|---|---|---|
| from | 警告メールの from アドレス | postmaster@example.com |
| to | 警告メールの to アドレス | user@example.com |
| mail-to | 警告メールの実際の送信先 | user@example.com |
| subject | 警告メールタイトル | Sensor threshold warning |
| mail-body | 警告メール本文 | Sensor detected threshold warning |
| キー | 意味 | サンプル |
|---|---|---|
| current | 1970-1-1 00:00:00 からの経過秒 | 1530827610 |
| datetime | 測定日時 | 2019-07-06 06:53:30 |
| from | 部屋番号 | 60 |
| presence | センサーが存在していれば128 | 128 |
| status | センサーの警告状態 | 136 |
| temperature | 温度(℃) | 27.889295796139464 |
| humidity | 湿度(%Rh) | 53.04951552605478 |
| 機能ID | パラメータ | 説明 |
|---|---|---|
| ROOM | (なし) | 定義済み部屋番号と部屋名称を返す。 |
| COUNT | room: 部屋番号 | 登録件数を返す。 |
| TRACK |
| 測定データ(日時、温度、湿度)を返す。
検索開始日時が指定されている場合、offset に優先する。 |
| STATUS |
| 指定のオフセット位置から60分間のステータス状態を返す。 |
| UPTIME | room: 部屋番号 | センサーの起動時間を、日:時:分:秒で返す。 |
| THRESHOLD | room: 部屋番号 | センサーの警告スレッショルド値を返す。 |