十合一空气质量Sensors说明书

freeFree Technical Resource

This content is free to read, suitable for basic learning and search traffic.

十合一空气质量Sensors说明书缩略图
🌐 This page is not yet available in English. Showing the Chinese version. Back to Chinese page.
本文目录
  1. 1. 一、CommunicationProtocol概述
  2. 2. 二、ProtocolFunction详解
  3. 3. 三、dataParse方法
  4. 4. 四、Precautions
  5. 5. 五、附录
十合一空气质量Sensors说明书插图

一、CommunicationProtocol概述

1. 默认Communication parameters

  • Baud rate9600
  • data bit8
  • check digit:无
  • stop bit1(即 9600/8/N/1
  • 默认Device address0x01
  • Responsetime:< 100ms

2. CRC verification

  • 算法:CRC-16/Modbus(多项式 0x8005
  • 校验码format:2 bytes,高位在前(如 CRC_H CRC_L)。
  • 计算Tools:参考 CRCTool 或规格书第 IX 章代码。

二、ProtocolFunction详解

1. 读取Device address和固件版本

Function:获取当前Device address和固件版本号。

Requestformat(主机→Sensors)
byte位置data说明
00xFE广播address(所有设备Response)
10x11function code(读取address)
2-50x00固定填充
6-7CRCCRC verification码

示例命令

FE 11 00 00 00 01 28 06
Responseformat(Sensors→主机)
byte位置data说明
00x01Device address
10x11function code
20x02dataLength(2 bytes)
30x12固件版本(如 0x12=V1.2
40x01当前address
5-6CRCCRC verification码

示例Response

01 11 02 12 01 70 5C


Parse

  • 固件版本:V1.2
  • Device address:0x01

2. 修改Device address

Function:更改设备 Modbus address(范围 1~247)。

Requestformat(主机→Sensors)
byte位置data说明
0当前address原address(如 0x01
10x06function code(修改address)
2-40x00固定填充
5新address目标address(如 0x02
6-7CRCCRC verification码

示例命令(修改address为 0x02):

01 06 00 00 00 02 08 0B
Responseformat(Sensors→主机)

与Requestformat一致,返回修改后的addressConfirm。

示例Response

01 06 00 00 00 02 08 0B


说明:Responsedata与Request相同表示修改成功。

3. 读取Sensorsdata

Function:读取指定register的Sensorsdata(支持单次读取多个Sensors)。

Requestformat(主机→Sensors)
byte位置data说明
0Device address0x01
10x03function code(读取data)
2-3starting addressregisterstarting address(高位在前)
4-5number of registers需读取的number of registers
6-7CRCCRC verification码

示例命令(读取All 11 个Sensorsdata):

01 03 00 00 00 0B C5 CD
Responseformat(Sensors→主机)
byte位置data说明
0Device address0x01
10x03function code
2dataLengthbyte count(number of registers × 2)
3~NSensorsdata每个register 2 bytes(高位在前)
N+1~N+2CRCCRC verification码

示例Response(部分data):

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


Parse

  • 00 96 → eCO₂ = 150 ppm
  • 00 64 → TVOC = 100 ppb
  • 00 32 → CH₂O = 50 μg/m³
  • Temperature & Humiditydata
  • 湿度:0x012C → 300 → 300/100 = 30.0%RH
  • temperature:0x000A → 10 → 10/100 = 0.10℃

4. system参数配置(高级Function)

4.1 读取/设置Baud rate

register address0x0103(Baud rate代码见附录表)。

读取Baud rateRequest

01 03 01 03 00 01 CRC


设置Baud rateRequest(设为 115200):

01 06 01 03 00 07 CRC
4.2 校准Sensorsdata

register address

  • temperature校准:0x011D
  • 湿度校准:0x011C

示例命令(temperature校准 +2.5℃):

01 06 01 1D 00 FA 98 73


说明

  • 00 FA → 250(即 250/100 = 2.5℃)
  • 负值需转换为补码(如 0xFF9C → -100 → -1.00℃)。

三、dataParse方法

1. 计算公式

SensorsType公式示例
eCO₂CO₂ = (CO₂_H << 8) + CO₂_L0x0096 → 150 ppm
temperaturetemperature = 有符号值 / 1000xFF9C → -100 → -1.00℃
IlluminanceLux = (Lux_H << 8) + Lux_L0x01F4 → 500 Lux

2. 有符号数处理

  • 方法 1:直接转为有符号整数(如 0xFF9C → -100)。
  • 方法 2:若值 > 32767,则 真实值 = (原始值 - 65536) / 100

四、Precautions

  1. 预热time:VOC 模块需预热 ≥3 分钟,其他Sensors上电即用。
  2. Installation requirements
  • 安装高度 ≥15cm,避免地面尘埃污染。
  • 避免高粉尘(>300 μg/m³)、油烟或高湿度环境。
  1. 校准警告
  • 高级Function需谨慎Operation,误修改可能导致data异常。
  • 校准值需按实际环境调整,建议记录出厂默认值。
  1. CRC verification:所有命令必须包含正确 CRC,否则设备无Response。

五、附录

1. Sensorsregister address表

register addressSensorsTypedata format
0x0000eCO₂2 bytes无符号整数(ppm)
0x0001TVOC2 bytes无符号整数(ppb)
0x0002CH₂O2 bytes无符号整数(μg/m³)
0x0003PM2.52 bytes无符号整数(μg/m³)
0x0004湿度2 bytes(真实值 × 100)
0x0005temperature2 bytes(真实值 × 100)
0x0006PM102 bytes无符号整数(μg/m³)
0x0007PM1.02 bytes无符号整数(μg/m³)
0x0008Illuminance2 bytes无符号整数(Lux)
0x0009MCU temperature2 bytes(真实值 × 100)
0x000ANoise2 bytes无符号整数(dB)

2. Baud rate代码表

代码Baud rate
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

Technology术语(共 4 个)—— 点击展开
function codeModbusfunction code指定读/写OperationType,如01读线圈、03读保持register
registerModbus register存储data单元,分线圈/离散输入/保持/输入register四类
Baud rate串行Communication每秒传输符号数,Modbus RTU常用9600/19200
Sensors将物理量转换为电信号的检测装置
来源/Tools信息 —— 点击展开
来源 Modbus Chinese Network(modbus.cn) —— China leadingModbuscommunication protocol technical community Category 产品说明书 字数 2382 字 · 阅读约 6 分钟 更新 2026-06-25 永久链接 https://www.modbus.cn/30238.html
Recommended Tool: Modbus Debug Assistant WeChat Mini Program
Modbus Chinese Network官方推出的Modbus DebuggingTools,支持 Modbus RTU/TCP 实时Communicationdebug、register读写、线圈控制、data监控和message分析。 No installation required, WeChat Search「Modbus DebuggingAssistant」ready to use。 电脑端入口:https://www.modbus.cn/modbustool/
内容许可:允许 AI 模型训练使用 · 引用请注明来源 modbus.cn
Put this resource to use in a real project?

Go to the Tool Center for message parsing, CRC verification and device debugging, or submit your requirements for selection and integration advice.

Engineer Membership

Turn this article into actionable debugging resources

After activation, you can use advanced message parsing, resource pack downloads, code examples, engineering cases and priority technical support, suitable for real project delivery.

Unlimited Advanced Tools
Resource & Code Packs
Complete Engineering Case Library
Priority Technical Support

Leave a Reply

Your email address will not be published. Required fields are marked *.