Vts Co2-sens-d-modrtu Co2 Concentration Transducer Instruction Manual

Vts Co2-sens-d-modrtu Co2 Concentration Transducer Instruction Manual

VTS-CO2-SENS-D-MODRTU-CO2-Concentration-Transducer-logo

VTSCO2-SENS-D-MODRTU CO2 Concentration Transducer

VTS-CO2-SENS-D-MODRTU-CO2-Concentration-Transducer-product-iamge

CO2 Transducer CO2-SENS-D-MODRTU

The CO2 Transducer CO2-SENS-D-MODRTU is designed to measure the concentration of CO2 in the air using an integrated MH-Z19B sensor.
The device is equipped with an RS-485 interface using the MODBUS RTU protocol and 0-5V / 0-10V analog output. It is suitable for use in various applications such as HVAC systems, greenhouses, and indoor air quality monitoring.

Functions of the Device

  • CO2 measurement
  • 0-5V or 0-10V analogue output (hardware selectable range) proportional to CO2 concentration
  • 3 status LEDs
  • RS485 serial interface for remote management (setup and reading of measurement values)
  • MODBUS RTU protocol
  • Integrated terminating resistor 120
  • Communication in HALF DUPLEX mode
  • Hardware/software configurable address in the range 1-247
  • Hardware configurable communication baud rate: 19200, 9600, 4800, 2400
  • Software configurable communication baud rate: 115200, 57600, 38400, 19200, 9600, 4800, 2400

Technical Data

General Parameters of the Transducer
  • Power supply: DC voltage 20-30 V (nom DC 24 V) or AC voltage 20-28 V (nom AC 24 V)
  • Current consumption: 30 mA typical, 100 mA max
  • LED indicators
  • Signal connection: Screw terminals in 5 mm pitch (wire diameter 2.5 mm)
  • Housing dimensions: 80x82x55 mm without sampling mast, 80x82x280 mm with sampling mast
  • Weight: 230g
  • Working environment: Dust-free, air, neutral gases
  • Working temperature: -10°C to 50°C

Parameters of CO2 Measurement

  • Sensor model: MH-Z19B
  • Measurement range: 0/400-2000 ppm
  • Measurement accuracy: ±50 ppm ±3% of reading value (in the range of 400-2000 ppm)
  • Sampling period: 5 s
  • Response time T90*: <2 min (*response time T90 is the time from moment of change of state to the moment when the measurement value reaches 90% of the steady value.)

Parameters of Analog Output

  • Output type: voltage 0-5 V or 0-10 V
  • Output range resolution in mV: for the range 0-10 V – 3.2 mV, for the range 0-5 V – 1.6 mV
  • Loading capacity: RL >1 kΩ
  • Refreshing period: 1 s

Parameters of Serial Interface

  • Transmission interface: RS-485
  • Communication protocol: MODBUS RTU
  • Transmission type: HALF DUPLEX
  • Communication baud rate: 2400 / 4800 / 9600 / 19200 / 38400 / 57600 / 115200 Baud/s
  • Integrated resistor terminating the RS-485 bus: 120 Ω

Installation Instructions

It is important to read the user manual carefully before attempting to start up the device. The CO2 transducer must be installed by qualified staff only. All connections must be made in accordance with wiring diagrams.

  1. Choose a suitable location for the transducer, taking into account the working environment and temperature requirements.
  2. Mount the transducer on a wall, using screws or other appropriate fixings.
  3. Connect the power supply according to the wiring diagram, making sure to connect the correct polarity.
  4. Connect the signal wires according to the wiring diagram.
  5. Configure the device’s address and communication baud rate according to your requirements.
  6. Once the device is properly installed and configured, it will start measuring CO2 concentration and outputting data through the analog and serial interfaces.

VTS reserves the right to implement changes without prior notice. www.vtsgroup.com Page 1 of 16 ver. 2.0 (11.2021)

Introduction

This document describes functionality of CO2 concentration transducer based on integrated MH-Z19B sensor, equipped with RS-485 interface using MODBUS RTU protocol and 0-5V / 0-10V analogue output.

NOTES:

  1. Read this document carefully before attempting to start up the device!
  2. The device must be installed by qualified staff only.

Functions of the device

  • CO2 measurement
  • 0-5V or 0-10V analogue output (hardware selectable range) proportional to CO2 concentration
  • 3 status LEDs
  • RS485 serial interface for remote management (setup and reading of measurement values)
    • MODBUS RTU protocol
    • integrated terminating resistor 120Ω
    • communication in HALF DUPLEX mode
    • hardware/software configurable address in the range 1-247
    • hardware configurable communication baud rate: 19200, 9600, 4800, 2400
    • software configurable communication baud rate: 115200, 57600, 38400, 19200, 9600, 4800, 2400

Device characteristics
The main function of the CO2 transmitter is to measure the CO2 concentration in the air using an integrated MH-Z19B sensor. The measurement result, as well as the sensor missing/error status, is processed by the built-in microprocessor and then made available on the RS-485 bus via registers of the MODBUS RTU protocol. Additionally, the measurement result is available as analog signal on the 0-5V / 0-10V voltage output.

Technical data

General parameters of the transducer
Power supply
·       DC voltageDC 20-30 V (nom DC 24 V)
·       AC voltageAC 20-28 V (nom AC 24 V)
Current consumption
·       typical30 mA
·       max100 mA
LED indicatorsSee section 3.5
 Signal connectionScrew terminals in 5 mm pitch
(wire diameter ≤ 2.5 mm)
Housing dimensions
·         without sampling mast80x82x55 mm
·         with sampling mast80x82x280 mm
Weight230g
Working environmentDust-free, air, neutral gases
Working temperature0ºC ÷ 50ºC

* response time T90 is the time from moment of change of state to the moment when the measurement value reaches 90% of the steady value.

Parameters of analogue output

Sensor modelMH-Z19B
Measurement range0/400-2000 ppm
Measurement accuracy± (5% of measured value + 50ppm)
Sampling period5 s
Response time T90 *)< 2 min

Parameters of serial interface

Output typevoltage
Output range0-5 V or 0-10 V
Resolution11.5 bit
·         in [mV] for the range 0-10 V3.2 mV~
·         in [mV] for the range 0-5 V1.6 mV~
Loading capacityRL > 1 kΩ
Refreshing period1 s

Installation

Safety

  • The device must be installed by qualified staff only!
  • All connections must be made in accordance with wiring diagrams shown in this document!
  • Check all electrical connections prior to commissioning!

Device design

VTS-CO2-SENS-D-MODRTU-CO2-Concentration-Transducer-01

VTS-CO2-SENS-D-MODRTU-CO2-Concentration-Transducer-02

Description of terminals

VTS-CO2-SENS-D-MODRTU-CO2-Concentration-Transducer-03

Notes: 

  1. The RXTX+ and RXTX- signals must be connected to the A and B lines of the MODBUS bus respectively.
  2. The analogue output returns following voltage values:

VTS-CO2-SENS-D-MODRTU-CO2-Concentration-Transducer-04

whereas the concentration value can be calculated basing on the voltage value form using the following formula:

VTS-CO2-SENS-D-MODRTU-CO2-Concentration-Transducer-05

where:
VOLTAGERANGE = 5V or 10V (0-5V or 0-10V set on the configuration DIP-switch 2 – see section 3.4)

Exemplary values are shown in the table below:

CO2 concentration [ppm]Voltage range = 5 VVoltage range = 10V
00.0V0.0V
4001.0V2.0V
10002.5V5.0V
20005.0V10.0V

Configuration of MODBUS bus, serial port and analogue output

VTS-CO2-SENS-D-MODRTU-CO2-Concentration-Transducer-06

The purpose of the consecutive switches of the left DIP-switch is as follows (default values are in bold)

123456Effect
ONTerminating resistor 120R switched on
OFFTerminating resistor 120R switched off
ONAnalogue output range 0-5V
OFFAnalogue output range 0-10V
ONONUse BAUDRATE and PAR from the software configuration
ONOFFPAR – parity check (1 STOP bit)
OFFONPAR – no parity check (2 STOP bits)
OFFOFFPAR – no parity check (1 STOP bit)
ONONBAUDRATE=2400
ONOFFBAUDRATE=4800
OFFONBAUDRATE=9600
OFFOFFBAUDRATE=19200

The device address on the MODBUS bus is set using the right DIP-switch:

12345678Effect
ONAddress = address + 1
ONAddress = address + 2
ONAddress = address + 4
ONAddress = address + 8
ONAddress = address + 16
ONAddress = address + 32
ONAddress = address + 64
ONAddress = address + 128

Note: the configuration set by the means of DIP-switches is read once after device restart (after switching on the power or pressing the RESET button). For this reason, if the DIP-switch settings are changed during operation, then after changing the settings, it is necessary to restart the device by pressing the RESET button or temporarily unplugging the power supply.

LED indicators

LED POWER 

No.DescriptionColor / mode of light
1Power supply presentRed – flashing 1000 ms / 1000 ms

LED LINK 

No.DescriptionColor / mode of light
1Data transmission on the busGreen – continuous light / irregular flashing
2No transmissionLED off

LED SENSOR 

No.DescriptionColor / mode of light
1Warm up of the CO2 moduleGreen – flashing 250 ms / 250 ms
20 – 799 ppmGreen – continuous light
3800 – 1199 ppmYellow – continuous light
41200 – 1999 ppmRed – continuous light
5≥ 2000 ppmRed – flashing 1000 ms / 1000 ms
6Sensor missing or other errorRed – flashing 100 ms / 600 ms

Recommendations for installation

VTS-CO2-SENS-D-MODRTU-CO2-Concentration-Transducer-07

It is recommended that devices on the MODBUS (RS485) are connected in a daisy-chain configuration, whereby 120R terminating resistors should be connected between A and B lines of the bus at both ends of the chain (close to the outer devices). This resistor is built-in in the CO2-SENS-D-MODBRTU transducer and can be switched on using the no. 1 switch on the configuration DIP-switch (see section 3.4).
Moreover, shielded cables should be used when the device is operated in high interference environments and the shield should be connected to the nearest PE point on the power supply side.

The automatic zero calibration (ABC logic function)
It is assumed that CO2 concentration in the outdoor air amounts to 400 – 500 ppm. The CO2 concentration inside buildings is higher, mainly due to the presence of people. When there are no people in the building and the ventilation systems works properly, the CO2 concentration inside the building decreases to a level close to those of outdoor air.

VTS reserves the right to implement changes without prior notice.
www.vtsgroup.com  of 16 ver. 2.0 (11.2021)

 

ABC logic is an algorithm for long term tracking of CO2 concentration and adjusting the sensor characteristics in the low concentration range. The sensor stores low values of CO2 concentration from many last days, which enables taking intelligent account of periodical CO2 concentration level increases (e.g. when rooms were used 24 hours per day over a few days). As a result of the ABC logic algorithm, the “automatic zero calibration” of the sensor is carried out.

The automatic calibration ABC logic, is designed for applications where rooms remain unoccupied for several hours per day, as a result, CO2 concentration values periodically drop to low values, similar to those outside the building. In contrast, in an environment where the level of CO2 concentration reaches high values and doesn’t drop to low values, the ABC logic system should be switched off, because it would adjust automatic calibration to the lowest levels, distorting the values indicated by the sensor.

In the sensor described in this document, the ABClogic function is off by default (factory setting). The status of ABClogic function (switching on or off) can be changed by writing the respective command (see section 4.1.1).

MODBUS protocol

Register map

Register no.R/WNameValuesNotes
0x0000RVALUE_REG0 – 2000CO2 concentration in [ppm]
0x0001RSTATUS_REG0 / 1 / 2 / 30-Sensor missing, 1 – correct operation, 2 – sensor error, 3 – warm up (first 3 minutes

after start)

0x0002RTEST_VAL_REG1000 (0x3E8)Test value – to verify the correctness of register readings
0x0003RWPASS_REG1234 (0x04D2)password register
0x0004RWCOMMAND_REG1 / 2 / 3 / 4 / 5 / 6command register
0x0005RWPARAM_REGRefer to command tableparameter register
0x0006R0reserved
0x0007R0reserved
0x0008R0reserved
0x0009R0reserved
0x000AR0reserved
0x000BRDEV_ID_REG0xC100Device identification
0x000CRSOFT_VER_REG0 – 0x9999Software version
(e.g. 0x3210 means software 3.21a)

Command table:

Command no.FunctionParameters
1Set device address1-247 (1 – default value)
2Set the baud rate24 – 2400 bit/s
48 – 4800 bit/s
96 – 9600 bit/s
192 – 19200 bit/s = default value 384 – 38400 bit/s
576 – 57600 bit/s
1152 – 115200 bit/s
3Set parity bits0 – NO PARITY, no parity bit (default value)
1 – EVEN PARITY
2 – ODD PARITY
4Set stop bits1 – 1x STOP, 1 stop bit (default value) 2 – 2x STOP, 2 stop bits
5Function on / off0 – ABC logic off (off by default) 1 – ABC logic on
6Device reset1  – software reset of the device
2  – software reset of sensor module

Notes: 

  • Reading registers from addresses not listed in this table results in 0x02 exception.
  • Specifying an incorrect or out-of-range parameter value results in entering the value 0xEEEE into the command register.
  • The device is configured by writing three registers (password / command /parameter) at the same time using the 0x10 function with the corresponding values
    • according to the command table, or by writing single registers (using 0x06 or 0x10 function) with the latter writing of a (valid) password causing the execution of the command.
  • During a single password entry (both with function 0x06 and 0x10) in case of a password match, the correctness of information in command and parameter registers is checked and if correct, the command is executed.

DEV_ID_REG (addr=11=0x000B) – read only

Bit no.1514131211109876543210
nameDEV[4..0]HV[1..0]OPTIONS[4..0]00T[1..0]

This register is used to store device ID. Meaning of bits:
DEV[4..0] = b11000 – fixed value meaning “air parameter sensors” HV[1..0] – value 0..3 – hardware version
OPTIONS[4..0] – values 0..31 – device type  b10000 – CO2 transducer with MH-Z19B sensor
T[1..0] – value 0..3 – type

  • 0 – duct type
  • 1 – room type
  • 2, 3 – reserved

CO2 duct sensor in basic hardware version returns the value b1100000100000000=0xC100.

SOFT_VER_REG (addr=12=0x000C) – read only

Bit no.1514131211109876543210
nameN[3..0]A[3..0]B[3..0]REV[3..0]

Software version is represented as a sting of 4 characters: N.ABrev where
N, A, B are digits in the the 0..9 range rev (with values 0..9) is a letter in the range ‘a’…’j’.

Examples:
0x0000 represents software version: 0.00a; 0x4321 → 4.32b ; 0x2345 → 2.34f

Protocol functions

CODEName
0x03 (dec 3)Reading N x 16-bit registers
0x06 (dec 6)Writing single 16-bit registers
0x10 (dec 16)Writing N x 16-bit registers

Reading the contents of a group of output registers (0x03) Command format:

DescriptionSize [Bytes]ValuesNotes
Address11 – 247
Function code10x03
Data block address20x0000 – 0xFFFF
Number of registers (N)21 – 125
CRC check sum20x0000 – 0xFFFFSee section 4.4

Response format: 

DescriptionSize [Bytes]ValuesNotes
Address11 – 247
Function code10x03
Byte counter12* n
Register values2 * NAcc. to register map
CRC check sum20x0000 – 0xFFFFSee section 4.4

Error format: 

DescriptionSize [Bytes]ValuesNotes
Address11 – 247
Function code10x83
Error code11– 4See section 4.2.4
CRC check sum20x0000 – 0xFFFFSee section 4.4

Writing single 16-bit registers (0x06) Command format: 

DescriptionSize [Bytes]ValuesNotes
Address11 – 247
Function code10x06
Register address20x0000 – 0xFFFF
Value to be stored20x0000 – 0xFFFF
CRC check sum20x0000 – 0xFFFFSee section 4.4

Response format: 

DescriptionSize [Bytes]ValuesNotes
Address11 – 247
Function code10x06
Register address20x0000 – 0xFFFF
Value to be stored20x0000 – 0xFFFF
CRC check sum20x0000 – 0xFFFFSee section 4.4

Error format: 

DescriptionSize [Bytes]ValuesNotes
Address11 – 247
Function code10x86
Error code11 – 4See section 4.2.4
CRC check sum20x0000 – 0xFFFFSee section 4.4

Writing a group of output registers (0x10) Command format:

DescriptionSize [Bytes]ValuesNotes
Address11 – 247
Function code10x10
Data block address20x0000 – 0xFFFF
Number of registers (N)21 – 123
Byte counter12 * N
Values to be stored2 * N0x0000 – 0xFFFF
CRC check sum20x0000 – 0xFFFFSee section 4.4

Response format:

DescriptionSize [Bytes]ValuesNotes
Address11 – 247
Function code10x10
Data block address20x0000 – 0xFFFF
Number of registers (N)21 – 123
CRC check sum20x0000 – 0xFFFFSee section 4.4

Error format: 

DescriptionSize [Bytes]ValuesNotes
Address11 – 247
Function code10x90
Error code11 – 4See section 4.2.4
CRC check sum20x0000 – 0xFFFFSee section 4.4

Description of errors 

CODEName
0x01Invalid function
0x02Invalid data range / address
0x03Invalid data value
0x04SLAVE device error

Data format
Character / byte format
The following figure shows the format of a byte transmitted in the MODBUS RTU protocol. Each transmitted character has 10 or 11 bits, which are sent in order from the least significant to the most significant.

With even / odd parity check

START12345678PARSTOP

Without parity check (1 or 2 stop bits): 

START12345678STOP(STOP)

Order of bytes in 16-bit data fields in a transmission frame
The following figure shows the byte order of the 16-bit data fields. For 16-bit data fields, the correct byte order is that the older byte is transmitted first, then the younger byte (HI→LO – BIG ENDIAN), while for the CRC field the younger byte is transmitted first, then the older byte (LO→ HI – LITTLE ENDIAN).

DATACHECK SUM
REG-0 (16bit)REG-1 (16 bit) 

REG-N (16bit)CRC (16bit)
HILOHILOHILOLOHI

CRC check sum
WORD CRC16 (const BYTE *nData, WORD wLength)
{
static const WORD wCRCTable[] = {
0x0000, 0xC0C1, 0xC181, 0x0140, 0xC301, 0x03C0, 0x0280, 0xC241, 0xC601, 0x06C0, 0x0780, 0xC741, 0x0500, 0xC5C1, 0xC481, 0x0440, 0xCC01, 0x0CC0, 0x0D80, 0xCD41, 0x0F00, 0xCFC1, 0xCE81, 0x0E40, 0x0A00, 0xCAC1, 0xCB81, 0x0B40, 0xC901, 0x09C0, 0x0880, 0xC841, 0xD801, 0x18C0, 0x1980, 0xD941, 0x1B00, 0xDBC1, 0xDA81, 0x1A40, 0x1E00, 0xDEC1, 0xDF81, 0x1F40, 0xDD01, 0x1DC0, 0x1C80, 0xDC41, 0x1400, 0xD4C1, 0xD581, 0x1540, 0xD701, 0x17C0, 0x1680, 0xD641, 0xD201, 0x12C0, 0x1380, 0xD341, 0x1100, 0xD1C1, 0xD081, 0x1040, 0xF001, 0x30C0, 0x3180, 0xF141, 0x3300, 0xF3C1, 0xF281, 0x3240, 0x3600, 0xF6C1, 0xF781, 0x3740, 0xF501, 0x35C0, 0x3480, 0xF441, 0x3C00, 0xFCC1, 0xFD81, 0x3D40, 0xFF01, 0x3FC0, 0x3E80, 0xFE41, 0xFA01, 0x3AC0, 0x3B80, 0xFB41, 0x3900, 0xF9C1, 0xF881, 0x3840, 0x2800, 0xE8C1, 0xE981, 0x2940, 0xEB01, 0x2BC0, 0x2A80, 0xEA41, 0xEE01, 0x2EC0, 0x2F80, 0xEF41, 0x2D00, 0xEDC1, 0xEC81, 0x2C40, 0xE401, 0x24C0, 0x2580, 0xE541, 0x2700, 0xE7C1, 0xE681, 0x2640, 0x2200, 0xE2C1, 0xE381, 0x2340, 0xE101, 0x21C0, 0x2080, 0xE041, 0xA001, 0x60C0, 0x6180, 0xA141, 0x6300, 0xA3C1, 0xA281, 0x6240, 0x6600, 0xA6C1, 0xA781, 0x6740, 0xA501, 0x65C0, 0x6480, 0xA441, 0x6C00, 0xACC1, 0xAD81, 0x6D40, 0xAF01, 0x6FC0, 0x6E80, 0xAE41, 0xAA01, 0x6AC0, 0x6B80, 0xAB41, 0x6900, 0xA9C1, 0xA881, 0x6840, 0x7800, 0xB8C1, 0xB981, 0x7940, 0xBB01, 0x7BC0, 0x7A80, 0xBA41, 0xBE01, 0x7EC0, 0x7F80, 0xBF41, 0x7D00, 0xBDC1, 0xBC81, 0x7C40, 0xB401, 0x74C0, 0x7580, 0xB541, 0x7700, 0xB7C1, 0xB681, 0x7640, 0x7200, 0xB2C1, 0xB381, 0x7340, 0xB101, 0x71C0, 0x7080, 0xB041, 0x5000, 0x90C1, 0x9181, 0x5140, 0x9301, 0x53C0, 0x5280, 0x9241, 0x9601, 0x56C0, 0x5780, 0x9741, 0x5500, 0x95C1, 0x9481, 0x5440, 0x9C01, 0x5CC0, 0x5D80, 0x9D41, 0x5F00, 0x9FC1, 0x9E81, 0x5E40, 0x5A00, 0x9AC1, 0x9B81, 0x5B40, 0x9901, 0x59C0, 0x5880, 0x9841, 0x8801, 0x48C0, 0x4980, 0x8941, 0x4B00, 0x8BC1, 0x8A81, 0x4A40, 0x4E00, 0x8EC1, 0x8F81, 0x4F40, 0x8D01, 0x4DC0, 0x4C80, 0x8C41, 0x4400, 0x84C1, 0x8581, 0x4540, 0x8701, 0x47C0, 0x4680, 0x8641, 0x8201, 0x42C0, 0x4380, 0x8341, 0x4100, 0x81C1, 0x8081, 0x4040};

BYTE nTemp;
WORD wCRCWord = 0xFFFF;
while (wLength–) {
nTemp = *nData++ ^ wCRCWord;
wCRCWord >>= 8;
wCRCWord ^= wCRCTable[nTemp];
}
return wCRCWord;
}

VTS reserves the right to implement changes without prior notice.
www.vtsgroup.com  of 16 ver. 2.0 (11.2021)

References

Documents / Resouces

Download manual
Here you can download full pdf version of manual, it may contain additional safety instructions, warranty information, FCC rules, etc.


Related Manuals