DR-TS200, DR-TS4000 -- Water Turbidity Sensor

1. Introduction
1.1 Specification
- Measuring range: TS200: 0-200 NTU; TS4000: 0-4000NTU; TS01: 0-1000NTU
- Accuracy: ±5%FS(25°C); ±0.5°C (TS01 has no temperature related parameters)
- Resolution: Turbidity 0.1 NTU/1NTU;temperature 0.1°C
- Operating temperature: 0-40°C
- Power supply: DC 10-30V
- Power consumption: 0.2W
- Communication interface: RS485; standard MODBUS-RTU protocol; Baud rate: Default: 9600 (configurable to 1200, 2400, 4800, 9600, 19200, 38400, 57600, and 115200)
- Measurement principle: 90° light scattering
- Lifespan:1 years under normal use
- Waterproof rating: IP68
- Electrode cable length: 5m by default
- Casing material: corrosion-resistant plastic
1.2 wiring

1.3 Impedance requirements for current signals
| Supply Voltage | 9V | 12V | 20V | 24V |
|---|---|---|---|---|
| Max Impedance | <250Ω | <400Ω | <500Ω | <900Ω |
1.4 Mechinical Drawing
TS01:

TS200 / TS4000:

1.5 Instructions for use and maintenance
-
It can be directly put into water without adding a protective tube, ensuring the long-term stability, reliability and accuracy of the sensor.
-
If the water conditions are complex and you want accurate data, you need to wipe the sensor probe frequently.
1.6 RS485 Commands
RS485 signaldefault address TS01:0x15 TS200:0x19 TS4000:0x20
Standard Modbus-RTU protocol, baud rate: 9600; check bit: none; data bit: 8; stop bit: 1
1.6.1 Query address
send:
| Original address | Function code | Address high | Address low | Quantity high | Quantity low | CRC16 low | CRC16 high |
|---|---|---|---|---|---|---|---|
| 0XFE | 0X03 | 0X00 | 0X50 | 0X00 | 0X00 | 0X51 | 0XD4 |
If you forget the original address of the sensor, you can use the broadcast address 0XFE instead. When using 0XFE, the host can only connect to one slave, which can be used as a method of address query.
response:
| New address | Function code | Data length | CRC16 low | CRC16 high |
|---|---|---|---|---|
| 0X01 | 0X03 | 0X00 | 0X20 | 0XF0 |
1.6.2 Change address
For example: Change the address of the sensor with address 1 to 2, master → slave
| Original address | Function code | Address high | Address low | Quantity high | Quantity low | CRC16 low | CRC16 high |
|---|---|---|---|---|---|---|---|
| 0X01 | 0X06 | 0X00 | 0X50 | 0X00 | 0X02 | 0X08 | 0X1A |
If the sensor receives correctly, the data is returned along the original path.
Note: If you forget the original address of the sensor, you can use the broadcast address 0XFE instead. When using 0XFE, the host can only connect to one slave, and the return address is still the original address, which can be used as a method of address query.
1.6.3 Query data
Query the data (turbidity) of the sensor (address 15), host → slave
| Address | Function code | Starting register address high | Starting register address low | Register length high | Register length low | CRC16 low | CRC16 high |
|---|---|---|---|---|---|---|---|
| 0X15 | 0X03 | 0X00 | 0X00 | 0X00 | 0X01 | 0X87 | 0X1E |
If the sensor receives correctly, the following data will be returned, slave → host
| Address | Function code | Data length | Register 0 Data high | Register 0 Data low | CRC16 low | CRC16 high |
|---|---|---|---|---|---|---|
| 0X15 | 0X03 | 0X02 | 0X02 | 0X9A | 0X09 | 0X4C |
The query data command is 15 03 00 00 00 01 87 1E
For example, the returned data is 15 03 02 02 9A 09 4C
02 9A is the turbidity value, converted to decimal, it is 666, and then divided by 10, the actual value is 66.6, 02 9A means the current turbidity value is 66.6 NTU
1.6.4 Regarding TS200 and TS4000 instructions
| Register Address | Supported Function Codes | Description |
|---|---|---|
| 0x0000 | 0x03/0x04 | Turbidity value (NTU; 16-bit unsigned integer, actual value magnified 10 times; 50 NTU range is actual value magnified 100 times) |
| 0x0001 | 0x03/0x04 | Temperature (°C; 16-bit signed integer, actual value multiplied by 10) Turbidity deviation value (16-bit unsigned integer, actual value magnified 10 times; 50 NTU range, actual value magnified 100 times; 4000 NTU range, actual value) |
| 0x0050 | 0x03/0x04/0x06/0x10 | |
| 0x0051 | 0x03/0x04/0x06/0x10 | Temperature deviation value (16-bit signed integer, actual value multiplied by 10) |
| 0x1010/0x1011 | 0x10 | Turbidity Calibration (Use 2-point calibration: Write 0x0001 to 0x1010 and 0x0000 to 0x1011 to calibrate the zero point; write 0x0002 to 0x1010 and 0x0001 to 0x1011 to calibrate the full-scale point.) Modify addresses 1~254 (16-bit unsigned integers, factory default is 1). |
| 0x07D1 | 0x03/0x04/0x06/0x10 | |
| 0x07D1 | 0x03/0x04/0x06/0x10 | 0 represents 2400 1 represents 4800 2 represents 9600 3 represents 19200 4 represents 38400 5 represents 57600 6 represents 115200 7 represents 1200 |