10 in-1空気質センサの説明

無料無料技术资料

这篇内容可直接阅读,适合用于基础学习和検索引流。

10 in-1空気質センサの説明
10 in-1空気質センサの説明插图

I.通信プロトコルの概要

1.デフォルトの通信パラメータ

  • ボーレート:9600
  • データ·ビット:8
  • チェックビット:なし
  • ストップ·ビット:1(すなわち、9600/8/N/1)
  • デフォルトデバイスアドレス:0x01
  • 応答時間:< 100ms

2. CRCチェック

  • アルゴリズムのアルゴリズムCRC-16/Modbus(多項式)0x8005)
  • チェックコード形式2バイト前の上位(例えば)CRC_H CRC_L)。
  • 計算ツール::リファレンスCRCToolまたは仕様書第 IX 章コード。

2.契約機能の詳細

1.デバイスアドレスとファームウェアバージョンの読み取り

機能性は:現在のデバイスアドレスとファームウェアバージョン番号を取得します。

リクエスト形式(ホスト→センサー)
バイト位置データは説明書は
00xFEブロードキャストアドレスすべてのデバイスが応答
10x11機能コード(読み取りアドレス)
2-50x00固定充填は
6-7CRCCRCチェックコード

コマンドの例:

FE 11 00 00 00 01 28 06
応答形式(センサー →ホスト)
バイト位置データは説明書は
00x01デバイスアドレス
10x11関数コードの特徴
20x02データの長さ(2バイト)
30x12ファームウェアのバージョン(例えば)0x12=V1.2)
40x01現在の住所
5-6CRCCRCチェックコード

応答の例:

01 11 02 12 01 70 5C


解析する。:

  • ファームウェアのバージョン:V1.2
  • デバイスのアドレス:0x01

2.ユニットアドレスの変更

機能性は:デバイスのModbusアドレスの変更(範囲)1~247)。

リクエスト形式(ホスト→センサー)
バイト位置データは説明書は
0現在の住所住所(例えば)0x01)
10x06機能コード(住所の変更)
2-40x00固定充填は
5新しい住所。宛先アドレス(例えば)0x02)
6-7CRCCRCチェックコード

コマンドの例(住所の変更)0x02):

01 06 00 00 00 02 08 0B
応答形式(センサー →ホスト)

要求形式に一致し、修正されたアドレス確認を返します。

応答の例:

01 06 00 00 00 02 08 0B


説明書は:リクエストと同じデータに応答して変更が成功したことを示します。

3.センサーデータの読み取り

機能性は:指定したレジスタのセンサデータを読み込む(複数のセンサを一度に読み込むことに対応)。

リクエスト形式(ホスト→センサー)
バイト位置データは説明書は
0デバイスのアドレス例えば、0x01
10x03機能コード(データの読み取り)
2-3アドレスの開始レジスタの開始アドレス(上位の値が前)
4-5レジスタの数読み出すレジスタの数
6-7CRCCRCチェックコード

コマンドの例(全11センサーデータを読み取る):

01 03 00 00 00 0B C5 CD
応答形式(センサー →ホスト)
バイト位置データは説明書は
0デバイスのアドレス例えば、0x01
10x03関数コードの特徴
2データ長さバイト数(レジスタ数× 2)
3~Nセンサデータレジスタあたり2バイト(上位が前)
N+1~N+2CRCCRCチェックコード

応答の例(データの一部):

01 03 16 00 96 00 64 00 32 00 30 00 28 00 1E 01 2C 00 0A 00 14 70 5C


解析する。:

  • 00 96→ eCO₂ = 150 ppm
  • 00 64→ TVOC = 100 ppb
  • 00 32→ CH₂O = 50 μg/m³
  • 温度湿度データ:
  • 湿度:0x012C→ 300 → 300/100 = 30.0%RH
  • 気温:0x000A→ 10 → 10/100 = 0.10℃

4.システム·パラメータ構成高度な機能

4.1ボーレートの読み取り/設定

レジスター·アドレス:0x0103(ボーレートコードは付録表を参照)。

ボーレート要求の読み取り:

01 03 01 03 00 01 CRC


ボーレート要求の設定(115,200)。

01 06 01 03 00 07 CRC
4.2センサーデータの校正

レジスター·アドレス:

  • 温度の校正:0x011D
  • 湿度の校正:0x011C

コマンドの例(温度校正+2.5 ° C):

01 06 01 1D 00 FA 98 73


説明書は:

  • 00 FA250(250/100 = 2.5℃)
  • 負の値は補数に変換されます。0xFF9C→ -100 → -1.00℃)。

III.データ解析の方法

1.計算式

センサーの種類数式例:例
eCO₂CO₂ = (CO₂_H << 8) + CO₂_L0x0096→ 150 ppm
気温は温度 =符号付き値/ 1000xFF9C→ -100 → -1.00℃
光の明るさLux = (Lux_H << 8) + Lux_L0x01F4→ 500 Lux

2.符号付き数値処理

  • メソッド1。符号付き整数に直接変換(例えば)0xFF9C→ -100)。
  • メソッド2。値は327 6 7である。真の値=元の値-65536/ 100。

IV.留意事項

  1. ウォームアップ時間VOCモジュールは3分間以上予熱する必要があり、他のセンサはすぐに使用できます。
  2. インストール要件:
  • 設置高さ≥15cm、地面のほこり汚染を避ける。
  • 高い粉塵(300 μg/m3)、煙、または高湿度環境を避けてください。
  1. キャリブレーション警告:
  • 高度な機能は慎重に操作する必要があり、誤った変更はデータ異常を引き起こす可能性がある。
  • 校正値は実際の環境に合わせて調整する必要があり、工場出荷時のデフォルト値を記録することをお勧めします。
  1. CRCチェックすべてのコマンドに正しいCRCが含まれていない場合、デバイスは応答しません。

V.付録

1.センサレジスタアドレス表

レジスター·アドレスセンサーの種類データ形式
0x0000eCO₂2バイト符号なし整数ppm
0x0001TVOC2バイト符号なし整数ppb
0x0002CH₂O2バイトの符号なし整数(μg/m3)
0x0003PM2.52バイトの符号なし整数(μg/m3)
0x0004湿度は2バイト(真の値× 100)
0x0005気温は2バイト(真の値× 100)
0x0006PM102バイトの符号なし整数(μg/m3)
0x0007PM1.02バイトの符号なし整数(μg/m3)
0x0008光の明るさ2バイト符号なし整数Lux
0x0009MCUの温度2バイト(真の値× 100)
0x000Aノイズの種類2バイト符号なし整数dB

2.ボーレートコード表

コードコード。ボーレート
01200
12400
24800
39600
419200
538400
657600
7115200

3. CRC計算コードC言語の例

uint16_t CRC16_Check(const uint8_t *pushMsg, uint8_t usDataLen) {
    uint8_t uchCRCHi = 0xFF, uchCRCLo = 0xFF;
    uint8_t uIndex;
    while (usDataLen--) {
        uIndex = uchCRCLo ^ *pushMsg++;
        uchCRCLo = uchCRCHi ^ auchCRCHi[uIndex];
        uchCRCHi = auchCRCLo[uIndex];
    }
    return (uint16_t)(uchCRCHi << 8 | uchCRCLo);
}

製品の購入:https://item.taobao.com/item.htm?ft=t&id=675637355531

この資料を実際のプロジェクトに活用しませんか?

ツールセンターで電文解析、CRCチェック、デバイスデバッグを行うか、要件を送信して選定と接続のアドバイスを受けましょう。

エンジニア会員

この記事を実行可能なデバッグ資料に

登録すると、高度な電文解析、資料パックのダウンロード、コード例、エンジニアリングケース、優先技術サポートが利用可能に。実際のプロジェクト納品に最適です。

高度なツール無制限
資料パックとコードパック
完全なエンジニアリングケースライブラリ
優先技術サポート窓口

发表回复

あなたのメールアドレスアドレス不会被公开。 必須項目已用 * 标注