Product Manual
Product Specification Book
Product Name: | Ambient air quality detector |
Product model: | MAQ01020406070914-S-P4 |
Version: | V1.0 |
Formulator: | He Genwen |
Reviewer: | Yuan Chao |
Environmental air quality detection module MAQ01020406070914-S-P4 It is a multi-parameter sensor product for digital signal output, integrating temperature, humidity, CO2、PM2.5、PM10、TVOC、 Formaldehyde detection is integrated, and high-performance sensors and control chips are used, which have the characteristics of high accuracy and good stability.The equipment adopts wide voltage DC12 ~ 24V powered by, RS485 Signal output, standard Modbus-RTU Communication protocol, communication address can be set, and baud rate can be changed.Widely used in motorcycle air conditioning, building HVAC, building energy saving, smart home,
Schools, hospitals, airports and stations.
1、 Isolated RS485 Circuit, communication is stable.
2、 It adopts an aluminum alloy shell, which is suitable for a variety of installation methods.
3、 Can measure temperature, humidity, CO2、 PM2.5、 PM10、TVOC、 Formaldehyde has multiple parameters and can expand more air quality parameters.
Operating temperature range | 0 ~50℃ |
Working humidity range | 0 ~ 95%RH (Non-condensation ) |
Storage temperature range | -40 ~50℃ |
Power input | DC 12~24V |
Maximum operating current | ≤ 100mA ( DC24V) |
Signal output | Modbus-RTU , Start bit 1, data bit 8, stop bit 1, no verification /Even check, baud rate 9600 bps (default ) |
Warm-up time | 2 minute (Formaldehyde and TVOC It needs to be preheated and stable, and other parameters are displayed when powered on ) |
Installation method | Ceiling installation, wall-mounted installation |
Product weight | 465 gram |
Product size | 188.0mm×114.5mm×33.0mm |
IV. Detection parameters
Testing items |
Detection range |
Detection accuracy |
Detection principle |
temperature | -40~125℃ | ±0.5℃ (@25℃) ,± 1℃ (Full range ) |
MEMS Devices |
humidity | 0~ 100%RH | ± 3%RH(@25℃ , 30%~80%RH; other ±5%RH) |
MEMS Devices |
CO2 | 400~5000ppm | ± (75ppm + 5% of reading ) | NDIR Non-dispersible infrared sensor |
PM2.5 | 0 ~1000µg/m3 | ± 10%(@100~500μg/m3 ); ± 10μg/m3 (@ 0 ~100μg/m3 ) |
Laser scattering |
PM10 | 0 ~1000µg/m3 | ± 10%(@100~500μg/m3 ); ± 10μg/m3(@ 0 ~100μg/m3 ) |
Laser scattering |
TVOC | 0 ~2000ppb | ± 30%FS@25℃ |
Semiconductor gas sensor |
formaldehyde | 0 ~1000ppb | ± 15%FS@25℃ |
Fuel cell sensor |
Remark:
1、The above detection accuracy is measured under the following environmental conditions: Temperature 25 ℃、Relative humidity 50% RH、 1 Atmospheric pressure, the maximum range of the test items to be tested shall not exceed the detection range.
2、In order to continuously improve the product, our company reserves the right to change the design functions and specifications.
1、 +12~24V;
2、GND;
3、 RS485A;
4、 RS485B;
5、GND1;
When wiring the circuit, connect the wires to the terminals to ensure that the wiring is correct and firm.
1、 It takes more than 2 minutes to preheat when powered on.
2、 Install the module in a position that needs to be detected and should be kept away from the heat source.
3、 Do not place this module in high concentrations of organic and corrosive gases for a long time.
4、 Do not install the module in a strong convection gas environment.
5、 Avoid contamination of large dust particles such as ground dust, floating flocs and even flocs, causing the fan to be entangled and blocked.
6、 Never disassemble the sensor to prevent irreversible damage.
7、 RS485 Communication cables need to be shielded twisted pair cables, and if necessary, 2 250 Ω Terminal matching resistor.
8、 The use environment should be free of conductive dust, corrosion-free metals and gases that destroy insulation, and avoid direct light and rain.
9、 Avoid placing modules in salt spray, acidic or oxidized gases ( Sulfur dioxide, hydrochloric acid, etc. ) In the environment.
1、Overview
The communication protocol describes in detail the input and output commands, information and data of the ambient air quality detection module for use and development by third parties.
This product uses standard serial RS485 Communication interface, information transmission mode is asynchronous, start bit 1 bit, data bit 8 bit, stop bit 1 bit, no verification /Even test (Switch via command );Baud rate 9600 bps (default ) ,Can be modified through instructions;The device address value is the factory default to 01, and the address value range that can be set is from 01 to 255; (The terminal resistor can be configured as 120 ohms, and the terminal resistor can be switched as 120 ohms in the form of a dial switch. ) 。
2、Detailed description of communication agreement
2.1 Communication method
( 1) All loop communications should be in accordance with the main /Slave method, data is passed between the master and slaves.
( 2) If the master or any slave receives a package containing an unknown command, the package will be ignored and the receiving station will not respond.
2.2 Return the data frame structure description
address | Function code | Number of data | Data 1 |
...... | data n | CRCL CRCH |
3、Transfer format
3.1 The host sends a read address command (One-to-one ) :
address | Function code | Register address high bit | Register address low bit | High data number | The number of data is low | CRC 16 Position verification |
00 | 03 | 01 | 00 | 00 | 01 | 84 27 |
Slave return address:
address | Function code | Byte length | High address | Low address | CRC16 Position verification |
00 | 03 | 02 | 00 | xx | CRCL CRCH |
Example:
Host sending: 00 03 01 00 00 01 84 27
Slave response: 00 03 02 00 address CRCL CRCH; like address It is 2, then the read sensor address is 2
3.2 The host sends a read data command:
address | Function code | Data address high bit | Data address low bit | High data number | The number of data is low | CRC 16 Position verification |
xx | 03 | 00 | 02 | 00 | 07 | CRCL CRCH |
(Currently, it only supports reading all data at the same time, slave address 0 x0002 Start, read 7 data values ) ,7 The sensor data corresponds to 7 sensor addresses. The high bit of the data start address is always 0, and the high bit of the return data is always 0.
Slave return value:
Return format:
Slave address | Function code | Number of data | data N0~N13 | CRC 16 Position verification |
xx | 03 | 0E | xx | CRCL CRCH |
Return data content:
N0 | N1 | N2 | N3 | N4 | N5 | N6 | N7 | N8 | N9 | N10 | N11 | N12 | N13 |
CO2 High | CO2 Low | Formaldehyde high | Formaldehyde low | TVOC High | TVOC Low | PM2.5 High | PM2.5 Low | PM10 High | PM10 Low | Temperature High | Temperature Low | Humidity High | Humidity Low |
Example:
Host sending: 01 03 00 02 00 07 CRCL CRCH
Slave response: 01 03 0 E 02 26 00 26 00 34 00 0E 00 11 00 FF 03 11 CRCL CRCH
Note: Data returns calculation
1、 CO2 Data: 0 x0226 , The corresponding decimal system is 550, indicating that CO2 Concentration is 550 ppm;
2、 Formaldehyde data: 0 x0026 , The corresponding decimal system is 38, indicating that the formaldehyde concentration is 38 ppb;
3、 TVOC Data: 0 x0034 , The corresponding decimal system is 52, indicating that TVOC Concentration is 52 ppb;
4、 PM2.5 Data: 0 x000E , The corresponding decimal system is 14, indicating that PM2.5 Particle concentration is 14 ug/m³;
5、 PM10 Data: 0 x0011 , The corresponding decimal system is 17, indicating that PM10 Particle concentration is 17 ug/m³;
6、 Temperature data: 0 x00FF , Corresponding to decimal 255, indicating that the temperature is 25.5 ℃ (Negative temperature is reflected in complement ) ;
7、 Humidity data: 0 x0311 , Corresponding to decimal 785, indicating that the humidity is 78.5% RH;
3.3 Set address command (One-to-one ) :
This command can set the slave address, address values 01 to 255 (Factory default is 01 ) 。
Host sends command:
address | Function code | High register address | Register address low bit | Slave address high | Slave address low bit | CRC 16 Position verification |
00 | 06 | 01 | 00 | 00 | xx | CRCL CRCH |
Slave answer:
address | Function code | Number of data bytes | Slave address high | Slave address low bit | CRC 16 Position verification |
00 | 06 | 02 | 00 | xx | CRCL CRCH |
Example:
Host sending: 00 06 01 00 00 address CRCL CRCH
Slave answer: 00 06 02 00 address CRCL CRCH
like address If 2, the slave address is set to 2;After the host receives the slave's answer, the address is set successfully.
3.4 Set baud rate
The baud rate of this product is 9600 by default bps , Select the updated baud rate (unit: bps) There are: 4800, 9600, 11400, 19200, 38400, 57600, 115200;These baud rates correspond to 1, 2, 3, 4, 5, 6, and 7 in the instructions, respectively.
Set baud rate format:
address | Function code | Data address high bit | Data address low bit | High data number | The number of data is low | CRC 16 Position verification |
xx | 06 | 00 | FD | 00 | xx | CRCL CRCH |
Example:
Host send: 01 06 00 FD 00 04 CRCL CRCH
Slave Response: None
It means that the baud rate of the device with address 01 is changed to 04, that is, the baud rate is changed to 19200.
3.5 Switching formats without checksum even checks
address | Function code | Data address high bit | Data address low bit | High data number | The number of data is low | CRC 16 Position verification |
xx | 06 | 00 | FE | 00 | 00/01 | CRCL CRCH |
00:Indicates no verification, 01 Indicates even verification
Example:
Host send: 01 06 00 FE 00 01 CRCL CRCH
Slave Response: None
Indicates that the device verification method with address 01 is changed to even verification.
4、 Host data sampling frequency:
The interval between data reading by the upper computer is no less than 500 ms , Recommended value 1 s or above.
5、CRC Verification reference:
unsigned int GetCRC16(unsigned char *ptr, unsigned char len)
{
unsigned int index;
unsigned char crch = 0xFF; //high CRC byte
unsigned char crcl = 0xFF; //Low CRC byte
unsigned char code TabH[] = { //CRC High-bit byte value table
0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0,
0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41,
0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0,
0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40,
0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1,
0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41,
0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1,
0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41,
0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0,
0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40,
0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1,
0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40,
0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0,
0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40,
0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0,
0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40,
0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0,
0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41,
0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0,
0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41,
0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0,
0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40,
0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1,
0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41,
0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0,
0x80, 0x41, 0x00, 0xC1, 0x81, 0x40
} ;
unsigned char code TabL[] = { //CRC Low-bit byte value table
0x00, 0xC0, 0xC1, 0x01, 0xC3, 0x03, 0x02, 0xC2, 0xC6, 0x06,
0x07, 0xC7, 0x05, 0xC5, 0xC4, 0x04, 0xCC, 0x0C, 0x0D, 0xCD,
0x0F, 0xCF, 0xCE, 0x0E, 0x0A, 0xCA, 0xCB, 0x0B, 0xC9, 0x09,
0x08, 0xC8, 0xD8, 0x18, 0x19, 0xD9, 0x1B, 0xDB, 0xDA, 0x1A,
0x1E, 0xDE, 0xDF, 0x1F, 0xDD, 0x1D, 0x1C, 0xDC, 0x14, 0xD4,
0xD5, 0x15, 0xD7, 0x17, 0x16, 0xD6, 0xD2, 0x12, 0x13, 0xD3,
0x11, 0xD1, 0xD0, 0x10, 0xF0, 0x30, 0x31, 0xF1, 0x33, 0xF3,
0xF2, 0x32, 0x36, 0xF6, 0xF7, 0x37, 0xF5, 0x35, 0x34, 0xF4,
0x3C, 0xFC, 0xFD, 0x3D, 0xFF, 0x3F, 0x3E, 0xFE, 0xFA, 0x3A,
0x3B, 0xFB, 0x39, 0xF9, 0xF8, 0x38, 0x28, 0xE8, 0xE9, 0x29,
0xEB, 0x2B, 0x2A, 0xEA, 0xEE, 0x2E, 0x2F, 0xEF, 0x2D, 0xED,
0xEC, 0x2C, 0xE4, 0x24, 0x25, 0xE5, 0x27, 0xE7, 0xE6, 0x26,
0x22, 0xE2, 0xE3, 0x23, 0xE1, 0x21, 0x20, 0xE0, 0xA0, 0x60,
0x61, 0xA1, 0x63, 0xA3, 0xA2, 0x62, 0x66, 0xA6, 0xA7, 0x67,
0xA5, 0x65, 0x64, 0xA4, 0x6C, 0xAC, 0xAD, 0x6D, 0xAF, 0x6F,
0x6E, 0xAE, 0xAA, 0x6A, 0x6B, 0xAB, 0x69, 0xA9, 0xA8, 0x68,
0x78, 0xB8, 0xB9, 0x79, 0xBB, 0x7B, 0x7A, 0xBA, 0xBE, 0x7E,
0x7F, 0xBF, 0x7D, 0xBD, 0xBC, 0x7C, 0xB4, 0x74, 0x75, 0xB5,
0x77, 0xB7, 0xB6, 0x76, 0x72, 0xB2, 0xB3, 0x73, 0xB1, 0x71,
0x70, 0xB0, 0x50, 0x90, 0x91, 0x51, 0x93, 0x53, 0x52, 0x92,
0x96, 0x56, 0x57, 0x97, 0x55, 0x95, 0x94, 0x54, 0x9C, 0x5C,
0x5D, 0x9D, 0x5F, 0x9F, 0x9E, 0x5E, 0x5A, 0x9A, 0x9B, 0x5B,
0x99, 0x59, 0x58, 0x98, 0x88, 0x48, 0x49, 0x89, 0x4B, 0x8B,
0x8A, 0x4A, 0x4E, 0x8E, 0x8F, 0x4F, 0x8D, 0x4D, 0x4C, 0x8C,
0x44, 0x84, 0x85, 0x45, 0x87, 0x47, 0x46, 0x86, 0x82, 0x42,
0x43, 0x83, 0x41, 0x81, 0x80, 0x40
} ;
while (len--) //Calculate the specified length CRC
{
index = crch ^ *ptr++;
crch = crcl ^ TabH[ index];
crcl = TabL[ index];
}
return ((crch<<8) | crcl);
}
phone:0755-26588758 13714285279(倪先生) 13922884770(王先生) 13923716479(倪先生)
fax:0755-26747274
email:info@source-sensor.com
address:East 3rd Floor, Building 15, Majialong Industrial Zone, Nantou Street, Nanshan District, Shenzhen
Copyright©2002-2023 Yuanjian Sensing Technology. All Rights Reserved Copyright 粤ICP备17008245号-5 技术支持:图页网 网站地图xml 网站地图html