SHT20 온습도 센서 -MODBUS RS485
(SHT20 Temperature and Humidity Sensor -Modbus RS485)
개요
- 본 제품은 SHT20 온습도 센서 -MODBUS RS485 입니다.
- SHT20 온습도 센서를 기반으로 디자인된 제품으로 MODBUS RS485인터페이스를 지원합니다.
- 동작전압은 4-30VDC 입니다.
특징
-
working voltage: DC4-30V(The maximum limit their statements to no more33V)
maximum power:0.2W
operating temperature: temperature-20+60 humidity0%RH-100%RH
control accuracy: temperature± 0.3(25) humidity±3%RH(25)
output interface: RS485 communication (standard MODBUS protocol and custom common protocol), see The Protocol Description
address: you can set1-247 the default value is1
baud rate: the default9600(Users can set it by themselves),8 bit Data,1 bit stop, no verification
size:60*30*18
- Black-GND, red-VCC, yellow-a, white-B
문서
-
MODBUS protocol
products used in the function code:
0 x03: read holding registers
0 x04: read input registers
0 x06: write a single holding register
0 x10: write multiple hold registers
register type
register Address
the data content
the number of bytes
the input register
0x0001
the temperature value
2
0x0002
humidity value
2
the holding register
0x0101
device address
(1~247 (in Chinese))
2
0x0102
the baud rate
0:9600
1:14400
2:19200
2
0x0103
temperature correction(/10)
-10.0-10.0
2
0x0104
humidity correction value(/10)
-10.0-10.0
2
Modbus communication Format:
the host sends a data frame:
the slave address
function Code
register Address
the high byte
register Address
the low byte
number of registers
the high byte
number of registers
the low byte
CRC
the high byte
CRC
the low byte
slave response data frame:
the slave address
in response to the function code
the number of bytes
register1 data
the high byte
register1 data
the low byte
register N data
the high byte
register N data
the low byte
CRC
the high byte
CRC
the low byte
MODBUS the command frame
host reads temperature command frames(0 x04) :
the slave address
function Code
register Address
the high byte
register Address
the low byte
number of registers
the high byte
number of registers
the low byte
CRC
the high byte
CRC
the low byte
0x01
0x04
0x00
0x01
0x00
0x01
0x60
0x0a
slave response data frame:
the slave address
function Code
the number of bytes
temperature
the high byte
temperature
the low byte
CRC
the high byte
CRC
the low byte
0x01
0x04
0x02
0x01
0x31
0x79
0x74
the temperature value= 0 x131, to decimal conversion305 actual temperature value = 305 / 10=30.5 ℃
note: temperature is marked16 decimal number, temperature value= 0 xFF33, to decimal conversion -205 the actual temperature= -20.5 ℃;
host reads humidity command frames(0 x04) :
the slave address
function Code
register Address
the high byte
register Address
the low byte
number of registers
the high byte
number of registers
the low byte
CRC
the high byte
CRC
the low byte
0x01
0x04
0x00
0x02
0x00
0x01
0xC1
0xCA
slave response data frame:
the slave address
function Code
the number of bytes
humidity
the high byte
humidity
the low byte
CRC
the high byte
CRC
the low byte
0x01
0x04
0x02
0x02
0x22
0xD1
0xBA
humidity value= 0 x222, to decimal conversion546 actual humidity value= 546 / 10 = 54.6% ;
continuously read temperature and humidity command frames(0 x04) :
the slave address
function Code
register Address
the high byte
register Address
the low byte
number of registers
the high byte
number of registers
the low byte
CRC
the high byte
CRC
the low byte
0x01
0x04
0x00
0x01
0x00
0x02
0x20
0x0B
slave response data frame:
the slave address
function Code
the number of bytes
temperature
the high byte
temperature
the low byte
humidity
the high byte
humidity
the low byte
CRC
the high byte
CRC
the low byte
0x01
0x04
0x04
0x01
0x31
0x02
0x22
0x2A
0xCE
read the content of the maintenance register(0 x03) :
take reading the slave address as an example:
the slave address
function Code
register Address
the high byte
register Address
the low byte
number of registers
the high byte
number of registers
the low byte
CRC
the high byte
CRC
the low byte
0x01
0x03
0x01
0x01
0x00
0x01
0xD4
0x0F
slave response frame:
the slave address
function Code
the number of bytes
the slave address
the high byte
the slave address
the low byte
CRC
the high byte
CRC
the low byte
0x01
0x03
0x02
0x00
0x01
0x30
0x18
modify the content of the maintenance register(0 x06) :
take modifying the slave address as an example:
the slave address
function Code
register Address
the high byte
register Address
the low byte
the register value
the high byte
the register value
the low byte
CRC
the high byte
CRC
the low byte
0x01
0x06
0x01
0x01
0x00
0x08
0xD4
0x0F
modify the slave address: 0x08=8
the slave response frame( and send the same):
the slave address
function Code
register Address
the high byte
register Address
the low byte
the register value
the high byte
the register value
the low byte
CRC
the high byte
CRC
the low byte
0x01
0x06
0x01
0x01
0x00
0x08
0xD4
0x0F
continuous modify holding register(0 x10) :
the slave address
function Code
the start address
the high byte
the start address
the low byte
number of registers
the high byte
number of registers
the low byte
the number of bytes
register1 the high byte
register1 the low byte
register2 the high byte
register2 the low byte
CRC
the high byte
CRC
the low byte
0x01
0x06
0x01
0x01
0x00
0x02
0x04
0x00
0x20
0x25
0x80
0x25
0x09
modify the slave address: 0x20=32
the baud rate: 0x2580=9600
slave response frame:
the slave address
function Code
register Address
the high byte
register Address
the low byte
number of registers
the high byte
number of registers
the low byte
CRC
the high byte
CRC
the low byte
0x01
0x06
0x00
0x11
0x00
0x04
0xD4
0x0F
the ordinary version protocol
the baud rate of the default 9600(Users can set it by themselves), 8bit Data, 1bit stop, no verification
RS485 communication
serial commands
description
READ
trigger a temperature and humidity report
(27.4℃67.7% temperature27.4℃ humidity67.7%)
AUTO
start the automatic report function of temperature and humidity
( ditto)
STOP
stop Automatic temperature and humidity reporting function
BR:XXXX
set the baud rate
from 9600 to 19200
(BR:9600 the baud rate9600)
TC:XX.X
set the temperature correction
(-10.0~10.0)
(TC:02.0 temperature correction2.0℃)
HC:XX.X
setting the humidity calibration
(-10.0~10.0)
(HC:-05.1 humidity correction value is-5.1%)
HZ:XXX
set the temperature and humidity report rate
(0.5,1,2,5,10)
(HZ:2 not only automatically reported rate 2)
PARAM
read the current system settings
PARAM instructions:
TC:0.0,HC:0.0,BR:9600,HZ:1-> temperature correction0.0 humidity correction value0.0 the baud rate9600 report rate 1Hz
SLAVE_ADD:1 -> MODBUS the slave address 0x01