Changes for page Water Quality Sensors
Last modified by Karry Zhuang on 2025/07/25 09:38
From version 72.16
edited by Karry Zhuang
on 2025/07/16 09:57
on 2025/07/16 09:57
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Attachments (1 modified, 0 added, 4 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. karry1 +XWiki.Xiaoling - Content
-
... ... @@ -5,7 +5,7 @@ 5 5 6 6 7 7 8 -= 1. DR-EC Water EC Probe = 8 += 1. DR-ECK Water EC Probe = 9 9 10 10 == 1.1 Specification: == 11 11 ... ... @@ -17,25 +17,19 @@ 17 17 * **Interface**: RS485. 9600 Baud Rate 18 18 19 19 * **EC Range & Resolution:** 20 -** **ECK1.0 :** 0 ~~ 2,000 μS/cm Resolution: 1 μS/cm 21 -** **ECK10.0 : **10 ~~ 20,000 μS/cm Resolution: 10 μS/cm 22 -** **EC200 : **1 ~~ 200,000 μS/cm Resolution: 1 μS/cm 20 +** **ECK0.01** : 0.02 ~~ 20 μS/cm 21 +** **ECK0.1**: 0.2 ~~ 200.0 μS/cm 22 +** **ECK1.0** : 2 ~~ 2,000 μS/cm Resolution: 1 μS/cm 23 +** **ECK10.0** : 20 ~~ 20,000 μS/cm Resolution: 10 μS/cm 24 + 23 23 * **EC Accuracy**: ±1% FS 24 -* **Salinity measurement range** 25 -** **EC200 :**0~~70PSU Resolution: 0.1PSU 26 -* **Temperature measurement range** 27 -** **ECK1/ECK10:**-20~~+60℃; Resolution: 0.1℃ 28 -** **EC200 :**-5~~+80℃; Resolution: 0.1℃ 26 + 27 +* **Temperature Measure Range**: -20 ~~ 60 °C 28 + 29 29 * **Temperature Accuracy: **±0.5 °C 30 -* **Temperature compensation range** 31 -** **ECK1/ECK10:**0~~+60℃ (default compensation temperature 25℃) 32 -** **EC200:**-5~~+80℃ (default compensation temperature 25℃) 33 -* **Temperature compensation coefficient:**Default 0.2 34 -* **Working environment:** 35 -** Ambient Temperature: 0–60°C 36 -** Relative Humidity: <85% RH(Specifically refers to the cable male and female) 37 -** ECK200 Continuous monitoring of cross-section water quality, aquaculture, sewage treatment, environmental protection, pharmaceuticals, food, tap water, seawater and other high conductivity environments 30 + 38 38 * **IP Rated**: IP68 32 + 39 39 * **Max Pressure**: 0.6MPa 40 40 41 41 == 1.2 Application for Different Range == ... ... @@ -47,17 +47,15 @@ 47 47 == 1.3 Wiring == 48 48 49 49 50 -[[image:image-2024 1129142314-1.png||height="352" width="1108"]]44 +[[image:image-20240720172533-1.png||height="347" width="569"]] 51 51 52 52 53 53 == 1.4 Mechinical Drawing == 54 54 55 - ECK1 and ECK10 EC200 56 56 50 +[[image:image-20240714174241-2.png]] 57 57 58 -[[image:image-20240714174241-2.png]] [[image:1752564223905-283.png||height="399" width="160"]] 59 59 60 - 61 61 == 1.5 Installation == 62 62 63 63 ... ... @@ -116,7 +116,6 @@ 116 116 117 117 === 1.7.1 Query address === 118 118 119 -ECK1/ 120 120 121 121 **send:** 122 122 ... ... @@ -133,8 +133,6 @@ 133 133 |=(% style="width: 100px;background-color:#4F81BD;color:white" %)New address|=(% style="width: 110px;background-color:#4F81BD;color:white" %)Function code|=(% style="width: 106px; background-color: rgb(79, 129, 189); color: white;" %)Data length|=(% style="width: 93px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width: 104px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high 134 134 |(% style="width:99px" %)0X01|(% style="width:112px" %)0X03|(% style="width:106px" %)0X00|(% style="width:93px" %)0X20|(% style="width:104px" %)0XF0 135 135 136 - 137 - 138 138 === 1.7.2 Change address === 139 139 140 140 ... ... @@ -213,35 +213,8 @@ 213 213 **For example**, the returned data is 12 03 04 (% style="color:red" %)**02 AE**(%%) 01 64 B8 D0. 02 AE is converted to decimal 686, K=1, EC: 686uS/cm,temperature: 35.6℃ Convert the returned data to decimal and divide by 10. 214 214 215 215 216 -EC200 217 - 218 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:534.333px" %) 219 -|=(% style="width: 42px;background-color:#4F81BD;color:white" %)Address|=(% style="width: 53px;background-color:#4F81BD;color:white" %)Function code|=(% style="width: 74px; background-color: rgb(79, 129, 189); color: white;" %)Register Address|=(% style="width: 94px; background-color: rgb(79, 129, 189); color: white;" %)Register length|=(% style="width: 72px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width: 77px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high 220 -|(% style="width:99px" %)0X01|(% style="width:112px" %)0X03|(% style="width:74px" %)0X00 0X00|(% style="width:94px" %)0X00 0X04|(% style="width:72px" %)((( 221 -0XC5 222 -)))|(% style="width:77px" %)0XC8 223 - 224 -**response:** 225 - 226 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:534.333px" %) 227 -|=(% style="width: 42px;background-color:#4F81BD;color:white" %)Address|=(% style="width: 53px;background-color:#4F81BD;color:white" %)Function code|=(% style="width: 74px; background-color: rgb(79, 129, 189); color: white;" %)Number of valid bytes|=(% style="width: 94px; background-color: rgb(79, 129, 189); color: white;" %)Register contents|=(% style="width: 72px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width: 77px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high 228 -|(% style="width:99px" %)0X01|(% style="width:112px" %)0X03|(% style="width:74px" %)0X08|(% style="width:94px" %)((( 229 -0X00 0X00 0X1E 0XEF 0X01 0X14 0X00 0X2B 230 -)))|(% style="width:72px" %)((( 231 -0X42 232 -)))|(% style="width:77px" %)0X59 233 - 234 -Conductivity calculation: 0X1EEF=7919=>Conductivity=7919μS/cm 235 -Temperature calculation: 0X0114=276=>Temperature=27.6℃ 236 -Salinity calculation: 0X002b=43=>Salinity=4.3PSU 237 - 238 - 239 - 240 - 241 - 242 242 === 1.7.5 Calibration Method === 243 243 244 -ECK1 and ECK10.0 245 245 246 246 This device uses one-point calibration, and you need to prepare a known E standard solution. When mileage K=1, 1~~2000 uses 1413μS/cm standard solution, and when mileage K=10, 10~~20000 uses 12.88mS/cm standard solution. 247 247 ... ... @@ -285,62 +285,6 @@ 285 285 |=(% style="width: 42px;background-color:#4F81BD;color:white" %)Address|=(% style="width: 68px;background-color:#4F81BD;color:white" %)Function code|=(% style="width: 68px;background-color:#4F81BD;color:white" %)Address high|=(% style="width: 68px;background-color:#4F81BD;color:white" %)Address low|=(% style="width: 68px;background-color:#4F81BD;color:white" %)Quantity high|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)Quantity low|=(% style="width: 68px;background-color:#4F81BD;color:white" %)CRC16 low|=(% style="width: 68px;background-color:#4F81BD;color:white" %)CRC16 high 286 286 |(% style="width:99px" %)0X11|(% style="width:112px" %)0X06|(% style="width:135px" %)0X00|(% style="width:126px" %)0X26|(% style="width:85px" %)0X00|(% style="width:1px" %)0X02|(% style="width:1px" %)0XEB|(% style="width:1px" %)0X50 287 287 288 - 289 - 290 -EC200 291 - 292 -For the device with address 01, use 1413uS/cm standard solution to calibrate the first point. Send frame: 1413. Convert hexadecimal to 585. Write 0001, 00 00, 0585 to 0x0120, 0x0121, 0x0122 respectively. 293 - 294 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:518px" %) 295 -|=(% style="width: 42px;background-color:#4F81BD;color:white" %)Address|=(% style="width: 53px;background-color:#4F81BD;color:white" %)Function code|=(% style="width: 53px;background-color:#4F81BD;color:white" %)Register Address|=(% style="width: 53px;background-color:#4F81BD;color:white" %)Register length|=(% style="width: 53px;background-color:#4F81BD;color:white" %)Data length|=(% style="width: 53px; background-color: rgb(79, 129, 189); color: white;" %)Register contents|=(% style="width: 53px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width: 53px;background-color:#4F81BD;color:white" %)CRC16 high 296 -|(% style="width:99px" %)0X01|(% style="width:112px" %)0X10|(% style="width:135px" %)0X01 0X20|(% style="width:126px" %)0X00 0X03|(% style="width:85px" %)0X06|(% style="width:1px" %)((( 297 -0X00 298 -0X01 299 -0X00 300 -0X00 301 -0X05 302 -0X85 303 -)))|(% style="width:1px" %)0X1c|(% style="width:1px" %)((( 304 -((( 305 -0X25 306 -))) 307 -))) 308 - 309 -**response:** 310 - 311 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:534.333px" %) 312 -|=(% style="width: 42px;background-color:#4F81BD;color:white" %)Address|=(% style="width: 53px;background-color:#4F81BD;color:white" %)Function code|=(% style="width: 53px;background-color:#4F81BD;color:white" %)Register Address|=(% style="width: 53px;background-color:#4F81BD;color:white" %)Register length|=(% style="width: 53px;background-color:#4F81BD;color:white" %)Data length|=(% style="width: 53px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width: 60px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high 313 -|(% style="width:99px" %)0X01|(% style="width:112px" %)0X10|(% style="width:135px" %)0X01 0X02|(% style="width:126px" %)0X00 0X03|(% style="width:85px" %)0X06|(% style="width:1px" %)((( 314 -0X80 315 -)))|(% style="width:60px" %)0X3e((( 316 - 317 -))) 318 - 319 -Use 111310uS/cm standard solution to calibrate the second point and send the frame: 111310 is converted into hexadecimal 1b2ce, and 0002, 0001,b2 ce are written to 0x0120, 0x0121, and 0x0122 respectively. 320 - 321 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:518px" %) 322 -|=(% style="width: 42px;background-color:#4F81BD;color:white" %)Address|=(% style="width: 53px;background-color:#4F81BD;color:white" %)Function code|=(% style="width: 53px;background-color:#4F81BD;color:white" %)Register Address|=(% style="width: 53px;background-color:#4F81BD;color:white" %)Register length|=(% style="width: 53px;background-color:#4F81BD;color:white" %)Data length|=(% style="width: 53px; background-color: rgb(79, 129, 189); color: white;" %)Register contents|=(% style="width: 53px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width: 53px;background-color:#4F81BD;color:white" %)CRC16 high 323 -|(% style="width:99px" %)0X01|(% style="width:112px" %)0X10|(% style="width:135px" %)0X01 0X20|(% style="width:126px" %)0X00 0X03|(% style="width:85px" %)0X06|(% style="width:1px" %)((( 324 -0X00 325 -0X02 326 -0X00 327 -0X01 328 -0Xb2 329 -0Xce 330 -)))|(% style="width:1px" %)0X3e|(% style="width:1px" %)((( 331 -((( 332 -0X22 333 -))) 334 -))) 335 - 336 -**response:** 337 - 338 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:534.333px" %) 339 -|=(% style="width: 42px;background-color:#4F81BD;color:white" %)Address|=(% style="width: 53px;background-color:#4F81BD;color:white" %)Function code|=(% style="width: 53px;background-color:#4F81BD;color:white" %)Register Address|=(% style="width: 53px;background-color:#4F81BD;color:white" %)Register length|=(% style="width: 53px;background-color:#4F81BD;color:white" %)Data length|=(% style="width: 53px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width: 60px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high 340 -|(% style="width:99px" %)0X01|(% style="width:112px" %)0X10|(% style="width:135px" %)0X01 0X02|(% style="width:126px" %)0X00 0X03|(% style="width:85px" %)0X06|(% style="width:1px" %)((( 341 -0X80 342 -)))|(% style="width:60px" %)0X3e 343 - 344 344 = 2. DR-PH01 Water PH Sensor = 345 345 346 346 == 2.1 Specification == ... ... @@ -362,9 +362,7 @@ 362 362 363 363 * **Temperature measurement error**: ±0.5°C 364 364 365 -* **Working environment:** 366 -** Ambient Temperature: 0–60°C 367 -** Relative Humidity: <85% RH(Specifically refers to the cable male and female) 271 +* **Temperature Measure Range**: -20 ~~ 60 °C 368 368 369 369 * **Temperature Accuracy: **±0.5 °C 370 370 ... ... @@ -498,8 +498,8 @@ 498 498 Query the data (PH) of the sensor (address 10), host → slave 499 499 500 500 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:518px" %) 501 -|=(% style="width: 42px;background-color:#4F81BD;color:white" %)Address|=(% style="width: 74px; background-color: rgb(79, 129, 189); color: white;" %)Function code|=(% style="width:75px; background-color: rgb(79, 129, 189); color: white;" %)Starting register address high|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)Starting register address low|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)Register length high|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)Register length low|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high502 -|(% style="width:99px" %)0X10|(% style="width:7 4px" %)0X03|(% style="width:75px" %)0X00|(% style="width:68px" %)0X00|(% style="width:70px" %)0X00|(% style="width:72px" %)0X01|(% style="width:56px" %)0X87|(% style="width:56px" %)0X4B405 +|=(% style="width: 42px;background-color:#4F81BD;color:white" %)Address|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)Function code|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)Starting register address high|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)Starting register address low|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)Register length high|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)Register length low|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high 406 +|(% style="width:99px" %)0X10|(% style="width:72px" %)0X03|(% style="width:64px" %)0X00|(% style="width:68px" %)0X00|(% style="width:70px" %)0X00|(% style="width:72px" %)0X01|(% style="width:56px" %)0X87|(% style="width:56px" %)0X4B 503 503 504 504 If the sensor receives correctly, the following data will be returned, slave → host 505 505 ... ... @@ -571,14 +571,14 @@ 571 571 572 572 * **Stability**: ≤2mv/24 hours 573 573 574 -* **Working environment:** 575 -** Ambient Temperature: 0–60°C 576 -** Relative Humidity: <85% RH(Specifically refers to the cable male and female) 478 +* **Equipment working conditions**: Ambient temperature: 0-60°C Relative humidity: <85%RH 577 577 578 578 * **IP Rated**: IP68 579 579 580 580 * **Max Pressure**: 0.6MPa 581 581 484 + 485 + 582 582 == 3.2 Wiring == 583 583 584 584 ... ... @@ -590,7 +590,6 @@ 590 590 591 591 [[image:image-20240714174241-2.png]] 592 592 593 - 594 594 == 3.4 Installation Notice == 595 595 596 596 ... ... @@ -744,36 +744,24 @@ 744 744 == 4.1 Specification == 745 745 746 746 747 -* **Measuring range**: 0-20mg/L, 0–50℃ 748 - 749 -* **Accuracy**: 3%, ±0.5℃ 750 - 751 -* **Resolution**: 0.01 mg/L, 0.01℃ 752 - 650 +* **Measuring range**: 0-20mg/L, 0-50°C 651 +* **Accuracy**: 3%, ±0.5°C 652 +* **Resolution**: 0.01 mg/L, 0.01°C 753 753 * **Maximum operating pressure**: 6 bar 754 - 755 755 * **Output signal**: A: 4-20mA (current loop)B: RS485 (standard Modbus-RTU protocol, device default address: 01) 756 - 757 757 * **Power supply voltage**: 5-24V DC 758 - 759 -* **Working environment:** 760 -** Ambient Temperature: 0–60°C 761 -** Relative Humidity: <85% RH(Specifically refers to the cable male and female) 762 - 656 +* **Working environment**: temperature 0-60°C; humidity <95%RH 763 763 * **Power consumption**: ≤0.5W 764 764 765 765 == 4.2 wiring == 766 766 767 - 768 768 [[image:image-20240720172632-4.png||height="390" width="640"]] 769 769 770 770 771 -== 4.3 Impedance requirements for current signals == 664 +== (% id="cke_bm_224234S" style="display:none" %) (%%)4.3 Impedance requirements for current signals == 772 772 666 +[[image:image-20240718195414-8.png||height="100" width="575"]] 773 773 774 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:400px" %) 775 -|(% style="width:132px" %)**Supply Voltage**|(% style="width:67px" %)**9V**|(% style="width:67px" %)**12V**|(% style="width:67px" %)**20V**|(% style="width:67px" %)**24V** 776 -|(% style="width:132px" %)**Max Impedance**|(% style="width:65px" %)**<250Ω**|(% style="width:67px" %)**<400Ω**|(% style="width:67px" %)**<500Ω**|(% style="width:65px" %)**<900Ω** 777 777 778 778 == 4.4 Mechinical Drawing == 779 779 ... ... @@ -783,52 +783,46 @@ 783 783 784 784 == 4.5 Instructions for use and maintenance == 785 785 786 - 787 787 * It can be directly put into water without adding a protective tube, ensuring the long-term stability, reliability and accuracy of the sensor. 788 - 789 789 * If the water conditions are complex and you want accurate data, you need to wipe the sensor probe frequently. 790 790 791 791 == 4.6 RS485 Commands == 792 792 793 - 794 794 RS485 signaldefault address 0x14 795 795 Standard Modbus-RTU protocol, baud rate: 9600; check bit: none; data bit: 8; stop bit: 1 796 796 797 - 798 798 === 4.6.1 Query address === 799 799 687 +send 800 800 801 -**send:** 802 - 803 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:518px" %) 804 -|=(% style="width: 64.75px;background-color:#4F81BD;color:white" %)Original address|=(% style="width: 64.75px; background-color: rgb(79, 129, 189); color: white;" %)Function code|=(% style="width: 64.75px; background-color: rgb(79, 129, 189); color: white;" %)Register address high|=(% style="width: 64.75px; background-color: rgb(79, 129, 189); color: white;" %)Register address low|=(% style="width: 64.75px; background-color: rgb(79, 129, 189); color: white;" %)Register length high|=(% style="width: 64.75px; background-color: rgb(79, 129, 189); color: white;" %)Register length low|=(% style="width: 64.75px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width: 64.75px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high 689 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:599.333px" %) 690 +|=(% style="width: 50px;background-color:#4F81BD;color:white" %)Original address|=(% style="width: 72px; background-color: rgb(79, 129, 189); color: white;" %)Function code|=(% style="width: 64px; background-color: rgb(79, 129, 189); color: white;" %)Register address high|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)Register address low|=(% style="width: 70px; background-color: rgb(79, 129, 189); color: white;" %)Register length high|=(% style="width: 72px; background-color: rgb(79, 129, 189); color: white;" %)Register length low|=(% style="width: 56px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width: 56px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high 805 805 |(% style="width:99px" %)0XFF|(% style="width:72px" %)0X03|(% style="width:64px" %)0X00|(% style="width:68px" %)0X0A|(% style="width:70px" %)0X00|(% style="width:72px" %)0X02|(% style="width:56px" %)0XF1|(% style="width:56px" %)0XD7 806 806 807 807 If you forget the original address of the sensor, you can use the broadcast address 0XFF instead. When using 0XFE, the host can only connect to one slave, which can be used as a method of address query. 808 808 809 809 810 - **response:**696 +response 811 811 812 812 Register 0 data high and register 0 data low indicate the actual address of the sensor: 1 813 813 Register 1 data high and register 1 data low indicate the sensor version 814 814 815 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:5 18px" %)816 -|=(% style="width: 40px;background-color:#4F81BD;color:white" %)Address|=(% style="width:59.75px; background-color: rgb(79, 129, 189); color: white;" %)Function code|=(% style="width:59.75px; background-color: rgb(79, 129, 189); color: white;" %)Data length|=(% style="width:59.75px; background-color: rgb(79, 129, 189); color: white;" %)Register 0 Data high|=(% style="width:59.75px; background-color: rgb(79, 129, 189); color: white;" %)Register 0 Data low|=(% style="width:59.75px; background-color: rgb(79, 129, 189); color: white;" %)Register 1 Data high|=(% style="width:59.75px; background-color: rgb(79, 129, 189); color: white;" %)Register 1 Data low|=(% style="width: 59.75px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width: 59.75px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high701 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:599.333px" %) 702 +|=(% style="width: 50px;background-color:#4F81BD;color:white" %)Address|=(% style="width: 72px; background-color: rgb(79, 129, 189); color: white;" %)Function code|=(% style="width: 64px; background-color: rgb(79, 129, 189); color: white;" %)Data length|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)Register 0 Data high|=(% style="width: 70px; background-color: rgb(79, 129, 189); color: white;" %)Register 0 Data low|=(% style="width: 70px; background-color: rgb(79, 129, 189); color: white;" %)Register 1 Data high|=(% style="width: 72px; background-color: rgb(79, 129, 189); color: white;" %)Register 1 Data low|=(% style="width: 56px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width: 56px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high 817 817 |(% style="width:99px" %)0XFF|(% style="width:72px" %)0X03|(% style="width:64px" %)0X04|(% style="width:68px" %)0X00|(% style="width:70px" %)0X01|(% style="width:72px" %)0X00|(% style="width:56px" %)0X00|(% style="width:56px" %)0XB4|(% style="width:56px" %)0X3C 818 818 819 819 === 4.6.2 Change address === 820 820 821 - 822 822 For example: Change the address of the sensor with address 1 to 2(address range: 1-119), master → slave 823 823 824 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width: 518px" %)825 -|=(% style="width: 40px; background-color: rgb(79, 129, 189); color: white;" %)Original address|=(% style="width:40px; background-color: rgb(79, 129, 189); color: white;" %)Function code|=(% style="width:40px; background-color: rgb(79, 129, 189); color: white;" %)Starting register address high|=(% style="width:40px; background-color: rgb(79, 129, 189); color: white;" %)Starting register address low|=(% style="width:40px; background-color: rgb(79, 129, 189); color: white;" %)Register length high|=(% style="width:40px; background-color: rgb(79, 129, 189); color: white;" %)Register length low|=(% style="width:40px; background-color: rgb(79, 129, 189); color: white;" %)Data length|=(% style="width:40px; background-color: rgb(79, 129, 189); color: white;" %)Start address high|=(% style="width:40px; background-color: rgb(79, 129, 189); color: white;" %)Start address low|=(% style="width:40px; background-color: rgb(79, 129, 189); color: white;" %)Sensor version|=(% style="width:40px; background-color: rgb(79, 129, 189); color: white;" %)Sensor version|=(% style="width:39px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high|=(% style="width:39px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low709 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:907.333px" %) 710 +|=(% style="width: 67px; background-color: rgb(79, 129, 189); color: white;" %)Original address|=(% style="width: 71px; background-color: rgb(79, 129, 189); color: white;" %)Function code|=(% style="width: 65px; background-color: rgb(79, 129, 189); color: white;" %)Starting register address high|=(% style="width: 65px; background-color: rgb(79, 129, 189); color: white;" %)Starting register address low|=(% style="width: 70px; background-color: rgb(79, 129, 189); color: white;" %)Register length high|=(% style="width: 72px; background-color: rgb(79, 129, 189); color: white;" %)Register length low|=(% style="width: 53px; background-color: rgb(79, 129, 189); color: white;" %)Data length|=(% style="width: 53px; background-color: rgb(79, 129, 189); color: white;" %)Start address high|=(% style="width: 53px; background-color: rgb(79, 129, 189); color: white;" %)Start address low|=(% style="width: 53px; background-color: rgb(79, 129, 189); color: white;" %)Sensor version|=(% style="width: 53px; background-color: rgb(79, 129, 189); color: white;" %)Sensor version|=(% style="width: 56px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low 826 826 |(% style="width:67px" %)0X01|(% style="width:71px" %)0X10|(% style="width:65px" %)0X00|(% style="width:65px" %)0X0A|(% style="width:70px" %)0X00|(% style="width:72px" %)0X02|(% style="width:53px" %)0X04|(% style="width:53px" %)0X00|(% style="width:72px" %)0X02|(% style="width:53px" %)0X00|(% style="width:53px" %)0X00|(% style="width:56px" %)0XD2|(% style="width:53px" %)0X10 827 827 828 - **response:**713 +response 829 829 830 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:5 18px" %)831 -|=(% style="width: 42px;background-color:#4F81BD;color:white" %)Address|=(% style="width:68px; background-color: rgb(79, 129, 189); color: white;" %)Function code|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)Starting register address high|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)Starting register address low|=(% style="width:68px; background-color: rgb(79, 129, 189); color: white;" %)Register length high|=(% style="width:68px; background-color: rgb(79, 129, 189); color: white;" %)Register length low|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high715 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:599.333px" %) 716 +|=(% style="width: 50px;background-color:#4F81BD;color:white" %)Address|=(% style="width: 72px; background-color: rgb(79, 129, 189); color: white;" %)Function code|=(% style="width: 64px; background-color: rgb(79, 129, 189); color: white;" %)Starting register address high|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)Starting register address low|=(% style="width: 70px; background-color: rgb(79, 129, 189); color: white;" %)Register length high|=(% style="width: 72px; background-color: rgb(79, 129, 189); color: white;" %)Register length low|=(% style="width: 56px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width: 56px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high 832 832 |(% style="width:99px" %)0X01|(% style="width:72px" %)0X10|(% style="width:64px" %)0X00|(% style="width:68px" %)0X0A|(% style="width:70px" %)0X00|(% style="width:72px" %)0X02|(% style="width:56px" %)0X61|(% style="width:56px" %)0XCA 833 833 834 834 === 4.6.3 Query data === ... ... @@ -836,14 +836,14 @@ 836 836 837 837 Query the data (dissolved oxygen) of the sensor (address 14), host → slave 838 838 839 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:5 18px" %)840 -|=(% style="width: 42px;background-color:#4F81BD;color:white" %)Address|=(% style="width:68px; background-color: rgb(79, 129, 189); color: white;" %)Function code|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)Starting register address high|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)Starting register address low|=(% style="width:68px; background-color: rgb(79, 129, 189); color: white;" %)Register length high|=(% style="width:68px; background-color: rgb(79, 129, 189); color: white;" %)Register length low|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high724 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:599.333px" %) 725 +|=(% style="width: 50px;background-color:#4F81BD;color:white" %)Address|=(% style="width: 72px; background-color: rgb(79, 129, 189); color: white;" %)Function code|=(% style="width: 64px; background-color: rgb(79, 129, 189); color: white;" %)Starting register address high|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)Starting register address low|=(% style="width: 70px; background-color: rgb(79, 129, 189); color: white;" %)Register length high|=(% style="width: 72px; background-color: rgb(79, 129, 189); color: white;" %)Register length low|=(% style="width: 56px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width: 56px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high 841 841 |(% style="width:99px" %)0X14|(% style="width:72px" %)0X03|(% style="width:64px" %)0X00|(% style="width:68px" %)0X14|(% style="width:70px" %)0X00|(% style="width:72px" %)0X01|(% style="width:56px" %)0XC6|(% style="width:56px" %)0XCB 842 842 843 843 If the sensor receives correctly, the following data will be returned, slave → host 844 844 845 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:5 18px" %)846 -|=(% style="width: 44px;background-color:#4F81BD;color:white" %)Address|=(% style="width: 79px; background-color: rgb(79, 129, 189); color: white;" %)Function code|=(% style="width:79px; background-color: rgb(79, 129, 189); color: white;" %)Data length|=(% style="width:79px; background-color: rgb(79, 129, 189); color: white;" %)Register 0 Data high|=(% style="width: 79px; background-color: rgb(79, 129, 189); color: white;" %)Register 0 Data low|=(% style="width:79px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width:79px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high730 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:599.333px" %) 731 +|=(% style="width: 50px;background-color:#4F81BD;color:white" %)Address|=(% style="width: 72px; background-color: rgb(79, 129, 189); color: white;" %)Function code|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)Data length|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)Register 0 Data high|=(% style="width: 70px; background-color: rgb(79, 129, 189); color: white;" %)Register 0 Data low|=(% style="width: 56px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width: 56px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high 847 847 |(% style="width:99px" %)0X14|(% style="width:72px" %)0X03|(% style="width:68px" %)0X02|(% style="width:70px" %)0X03|(% style="width:72px" %)0X78|(% style="width:56px" %)0XB5|(% style="width:56px" %)0X55 848 848 849 849 After the query, 7 bytes will be returned. For example, the returned data is 14 03 02 (% style="color:red" %)**03 78**(%%) B5 55. 03 78 is the value of dissolved oxygen. ... ... @@ -853,68 +853,54 @@ 853 853 854 854 Query the data (temperature) of the sensor (address 14), host → slave 855 855 856 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:5 18px" %)857 -|=(% style="width: 42px;background-color:#4F81BD;color:white" %)Address|=(% style="width:68px; background-color: rgb(79, 129, 189); color: white;" %)Function code|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)Starting register address high|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)Starting register address low|=(% style="width:68px; background-color: rgb(79, 129, 189); color: white;" %)Register length high|=(% style="width:68px; background-color: rgb(79, 129, 189); color: white;" %)Register length low|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high741 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:599.333px" %) 742 +|=(% style="width: 50px;background-color:#4F81BD;color:white" %)Address|=(% style="width: 72px; background-color: rgb(79, 129, 189); color: white;" %)Function code|=(% style="width: 64px; background-color: rgb(79, 129, 189); color: white;" %)Starting register address high|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)Starting register address low|=(% style="width: 70px; background-color: rgb(79, 129, 189); color: white;" %)Register length high|=(% style="width: 72px; background-color: rgb(79, 129, 189); color: white;" %)Register length low|=(% style="width: 56px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width: 56px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high 858 858 |(% style="width:99px" %)0X14|(% style="width:72px" %)0X03|(% style="width:64px" %)0X00|(% style="width:68px" %)0X11|(% style="width:70px" %)0X00|(% style="width:72px" %)0X01|(% style="width:56px" %)0XD6|(% style="width:56px" %)0XCA 859 859 860 860 If the sensor receives correctly, the following data will be returned, slave → host 861 861 862 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:5 18px" %)863 -|=(% style="width: 44px;background-color:#4F81BD;color:white" %)Address|=(% style="width: 79px; background-color: rgb(79, 129, 189); color: white;" %)Function code|=(% style="width:79px; background-color: rgb(79, 129, 189); color: white;" %)Data length|=(% style="width:79px; background-color: rgb(79, 129, 189); color: white;" %)Register 0 Data high|=(% style="width: 79px; background-color: rgb(79, 129, 189); color: white;" %)Register 0 Data low|=(% style="width:79px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width:79px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high747 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:599.333px" %) 748 +|=(% style="width: 50px;background-color:#4F81BD;color:white" %)Address|=(% style="width: 72px; background-color: rgb(79, 129, 189); color: white;" %)Function code|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)Data length|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)Register 0 Data high|=(% style="width: 70px; background-color: rgb(79, 129, 189); color: white;" %)Register 0 Data low|=(% style="width: 56px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width: 56px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high 864 864 |(% style="width:99px" %)0X14|(% style="width:72px" %)0X03|(% style="width:68px" %)0X02|(% style="width:70px" %)0X09|(% style="width:72px" %)0XA4|(% style="width:56px" %)0XB2|(% style="width:56px" %)0X6C 865 865 866 866 After the query, 7 bytes will be returned. For example, the returned data is 14 03 02 (% style="color:red" %)**09 A4**(%%) B2 6C. 03 78 is the value of dissolved oxygen temperature. 867 867 868 -Converted to decimal, it is 2468. Add two decimal places to get the actual value. 09 A4 means the current dissolved oxygen temperature is 24.68 °C753 +Converted to decimal, it is 2468. Add two decimal places to get the actual value. 09 A4 means the current dissolved oxygen temperature is 24.68℃ 869 869 870 870 871 871 = 5. DR-TS1 Water Turbidity Sensor = 872 872 873 -== 5.1 Specification == 874 874 875 875 876 - ***Measuring range**:0.1~~1000.0NTU760 +== (% id="cke_bm_81470S" style="display:none" %) (%%)5.1 Specification == 877 877 762 +* **Measuring range**: 0.1~1000.0NTU 878 878 * **Accuracy**: ±5% 879 - 880 880 * **Resolution**: 0.1NTU 881 - 882 882 * **Stability**: ≤3mV/24 hours 766 +* **Output signal**: A: 4~20 mA (current loop)B: RS485 (standard Modbus-RTU protocol, device default address: 01) 767 +* **Power supply voltage**: 5~24V DC (when output signal is RS485)12~24V DC (when output signal is 4~20mA) 768 +* **Working environment**: temperature 0~60℃; humidity ≤95%RH 769 +* **Power consumption**: ≤0.5W 883 883 884 -* **Output signal**: RS485 (standard Modbus-RTU protocol, device default address: 01) 885 - 886 -* **Power supply voltage**: 5~~24V DC (when output signal is RS485), 12~~24V DC (when output signal is 4~~20mA) 887 - 888 -* **Working environment:** 889 -** Ambient Temperature: 0–60°C 890 -** Relative Humidity: <85% RH(Specifically refers to the cable male and female) 891 - 892 -* **Power consumption**: ≤ 0.5W 893 - 894 894 == 5.2 wiring == 895 895 896 - 897 897 [[image:image-20240720172640-5.png||height="387" width="635"]] 898 898 899 899 900 900 == 5.3 Impedance requirements for current signals == 901 901 778 +[[image:image-20240718195414-8.png||height="100" width="575"]] 902 902 903 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:400px" %) 904 -|(% style="width:132px" %)**Supply Voltage**|(% style="width:67px" %)**9V**|(% style="width:67px" %)**12V**|(% style="width:67px" %)**20V**|(% style="width:67px" %)**24V** 905 -|(% style="width:132px" %)**Max Impedance**|(% style="width:65px" %)**<250Ω**|(% style="width:67px" %)**<400Ω**|(% style="width:67px" %)**<500Ω**|(% style="width:65px" %)**<900Ω** 906 906 907 907 == 5.4 Mechinical Drawing == 908 908 909 - 910 910 [[image:image-20240718195058-7.png||height="305" width="593"]] 911 911 912 912 913 913 == 5.5 Instructions for use and maintenance == 914 914 915 - 916 916 * It can be directly put into water without adding a protective tube, ensuring the long-term stability, reliability and accuracy of the sensor. 917 - 918 918 * If the water conditions are complex and you want accurate data, you need to wipe the sensor probe frequently. 919 919 920 920 == 5.6 RS485 Commands == ... ... @@ -923,52 +923,47 @@ 923 923 RS485 signaldefault address 0x15 924 924 Standard Modbus-RTU protocol, baud rate: 9600; check bit: none; data bit: 8; stop bit: 1 925 925 926 - 927 927 === 5.6.1 Query address === 928 928 799 +send 929 929 930 -**send:** 801 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:599.333px" %) 802 +|=(% style="width: 50px;background-color:#4F81BD;color:white" %)Original address|=(% style="width: 72px; background-color: rgb(79, 129, 189); color: white;" %)Function code|=(% style="width: 64px; background-color: rgb(79, 129, 189); color: white;" %)Address high|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)Address low|=(% style="width: 70px; background-color: rgb(79, 129, 189); color: white;" %)Quantity high|=(% style="width: 72px; background-color: rgb(79, 129, 189); color: white;" %)Quantity low|=(% style="width: 56px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width: 56px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high 803 +|(% style="width:99px" %)0XFE |(% style="width:72px" %)0X03|(% style="width:64px" %)0X00|(% style="width:68px" %)0X50|(% style="width:70px" %)0X00|(% style="width:72px" %)0X00|(% style="width:56px" %)0X51|(% style="width:56px" %)0XD4 931 931 932 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:518px" %) 933 -|=(% style="width: 80.75px;background-color:#4F81BD;color:white" %)Original address|=(% style="width: 64.75px; background-color: rgb(79, 129, 189); color: white;" %)Function code|=(% style="width: 64.75px; background-color: rgb(79, 129, 189); color: white;" %)Address high|=(% style="width: 64.75px; background-color: rgb(79, 129, 189); color: white;" %)Address low|=(% style="width: 64.75px; background-color: rgb(79, 129, 189); color: white;" %)Quantity high|=(% style="width: 64.75px; background-color: rgb(79, 129, 189); color: white;" %)Quantity low|=(% style="width: 54.75px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width: 58.75px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high 934 -|(% style="width:99px" %)0XFE |(% style="width:64.75px" %)0X03|(% style="width:64px" %)0X00|(% style="width:64.75px" %)0X50|(% style="width:70px" %)0X00|(% style="width:72px" %)0X00|(% style="width:56px" %)0X51|(% style="width:56px" %)0XD4 935 - 936 936 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. 937 937 938 938 939 - **response:**808 +response 940 940 941 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:51 8px" %)942 -|=(% style="width: 103.6px;background-color:#4F81BD;color:white" %)New address|=(% style="width:103.6px;background-color:#4F81BD;color:white" %)Function code|=(% style="width: 103.6px; background-color: rgb(79, 129, 189); color: white;" %)Data length|=(% style="width:103.6px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width: 103.6px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high810 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:561.333px" %) 811 +|=(% style="width: 50px;background-color:#4F81BD;color:white" %)New address|=(% style="width: 50px;background-color:#4F81BD;color:white" %)Function code|=(% style="width: 106px; background-color: rgb(79, 129, 189); color: white;" %)Data length|=(% style="width: 93px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width: 104px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high 943 943 |(% style="width:99px" %)0X01|(% style="width:112px" %)0X03|(% style="width:106px" %)0X00|(% style="width:93px" %)0X20|(% style="width:104px" %)0XF0 944 944 945 945 === 5.6.2 Change address === 946 946 947 - 948 948 For example: Change the address of the sensor with address 1 to 2, master → slave 949 949 950 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:5 18px" %)951 -|=(% style="width: 80.75px;background-color:#4F81BD;color:white" %)Original address|=(% style="width:64.75px;background-color:#4F81BD;color:white" %)Function code|=(% style="width:64.75px;background-color:#4F81BD;color:white" %)Address high|=(% style="width:64.75px;background-color:#4F81BD;color:white" %)Address low|=(% style="width:64.75px;background-color:#4F81BD;color:white" %)Quantity high|=(% style="width:64.75px; background-color: rgb(79, 129, 189); color: white;" %)Quantity low|=(% style="width: 54.75px;background-color:#4F81BD;color:white" %)CRC16 low|=(% style="width: 58.75px;background-color:#4F81BD;color:white" %)CRC16 high818 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:676.25px" %) 819 +|=(% style="width: 50px;background-color:#4F81BD;color:white" %)Original address|=(% style="width: 50px;background-color:#4F81BD;color:white" %)Function code|=(% style="width: 50px;background-color:#4F81BD;color:white" %)Address high|=(% style="width: 50px;background-color:#4F81BD;color:white" %)Address low|=(% style="width: 50px;background-color:#4F81BD;color:white" %)Quantity high|=(% style="width: 1px; background-color: rgb(79, 129, 189); color: white;" %)Quantity low|=(% style="width: 50px;background-color:#4F81BD;color:white" %)CRC16 low|=(% style="width: 50px;background-color:#4F81BD;color:white" %)CRC16 high 952 952 |(% style="width:99px" %)0X01|(% style="width:112px" %)0X06|(% style="width:135px" %)0X00|(% style="width:126px" %)0X50|(% style="width:85px" %)0X00|(% style="width:1px" %)0X02|(% style="width:1px" %)0X08|(% style="width:1px" %)0X1A 953 953 954 954 If the sensor receives correctly, the data is returned along the original path. 823 +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. 955 955 956 -(% style="color:red" %)**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.** 957 - 958 - 959 959 === 5.6.3 Query data === 960 960 961 961 962 962 Query the data (turbidity) of the sensor (address 15), host → slave 963 963 964 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:5 18px" %)965 -|=(% style="width: 42px;background-color:#4F81BD;color:white" %)Address|=(% style="width:68px; background-color: rgb(79, 129, 189); color: white;" %)Function code|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)Starting register address high|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)Starting register address low|=(% style="width:68px; background-color: rgb(79, 129, 189); color: white;" %)Register length high|=(% style="width:68px; background-color: rgb(79, 129, 189); color: white;" %)Register length low|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high830 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:599.333px" %) 831 +|=(% style="width: 50px;background-color:#4F81BD;color:white" %)Address|=(% style="width: 72px; background-color: rgb(79, 129, 189); color: white;" %)Function code|=(% style="width: 64px; background-color: rgb(79, 129, 189); color: white;" %)Starting register address high|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)Starting register address low|=(% style="width: 70px; background-color: rgb(79, 129, 189); color: white;" %)Register length high|=(% style="width: 72px; background-color: rgb(79, 129, 189); color: white;" %)Register length low|=(% style="width: 56px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width: 56px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high 966 966 |(% style="width:99px" %)0X15|(% style="width:72px" %)0X03|(% style="width:64px" %)0X00|(% style="width:68px" %)0X00|(% style="width:70px" %)0X00|(% style="width:72px" %)0X01|(% style="width:56px" %)0X87|(% style="width:56px" %)0X1E 967 967 968 968 If the sensor receives correctly, the following data will be returned, slave → host 969 969 970 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:5 18px" %)971 -|=(% style="width: 44px;background-color:#4F81BD;color:white" %)Address|=(% style="width: 79px; background-color: rgb(79, 129, 189); color: white;" %)Function code|=(% style="width:79px; background-color: rgb(79, 129, 189); color: white;" %)Data length|=(% style="width:79px; background-color: rgb(79, 129, 189); color: white;" %)Register 0 Data high|=(% style="width: 79px; background-color: rgb(79, 129, 189); color: white;" %)Register 0 Data low|=(% style="width:79px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width:79px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high836 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:599.333px" %) 837 +|=(% style="width: 50px;background-color:#4F81BD;color:white" %)Address|=(% style="width: 72px; background-color: rgb(79, 129, 189); color: white;" %)Function code|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)Data length|=(% style="width: 68px; background-color: rgb(79, 129, 189); color: white;" %)Register 0 Data high|=(% style="width: 70px; background-color: rgb(79, 129, 189); color: white;" %)Register 0 Data low|=(% style="width: 56px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width: 56px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high 972 972 |(% style="width:99px" %)0X15|(% style="width:72px" %)0X03|(% style="width:68px" %)0X02|(% style="width:70px" %)0X02|(% style="width:72px" %)0X9A|(% style="width:56px" %)0X09|(% style="width:56px" %)0X4C 973 973 974 974 The query data command is 15 03 00 00 00 01 87 1E ... ... @@ -976,107 +976,3 @@ 976 976 For example, the returned data is 15 03 02 (% style="color:red" %)**02 9A**(%%) 09 4C 977 977 978 978 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 979 - 980 - 981 -= 6. DR-CL Water CL Probe = 982 - 983 -== 6.1 Specification: == 984 - 985 -* **Power Input**: DC7~~30 986 - 987 -* **Power Consumption** : 0.19W 988 - 989 -* **Interface**: RS485. 9600 Baud Rate 990 - 991 -* **CL Range & Resolution:** 992 -** **CL2ML:**0-2mg/L 993 -** **CL10ML:**0-10mg/L 994 -** **Resolution:**0.01mg/L 995 - 996 -* **CL Accuracy**: ±5% FS 997 -* **Temperature Accuracy: **±0.5 °C 998 -* **Working environment:** 999 -** Ambient Temperature: 0–50°C 1000 -** pH:4-9 1001 -** Flow rate: 30L/h~~60L/h (flow tank installation) 1002 -* **IP Rated**: IP68 1003 - 1004 -* **Max Pressure**: 0.6MPa 1005 - 1006 -== 6.2 Wiring == 1007 - 1008 -[[image:image-20240720172548-2.png||height="348" width="571"]] 1009 - 1010 -== 6.3 Mechinical Drawing == 1011 - 1012 -[[image:1752573238705-910.png||height="694" width="278"]] 1013 - 1014 -== 6.4 Installation == 1015 - 1016 -Flow-through installation: Use the matching flow slot for installation. The device and the flow slot are installed tightly. 1017 - 1018 -The measuring end is completely immersed in the measured liquid to ensure a steady flow rate without bubbles. 1019 - 1020 -It is recommended that the flow rate be controlled at 30-60Lh to ensure the accuracy of the test. 1021 - 1022 -[[image:1752573643879-991.png||height="360" width="343"]] 1023 - 1024 -== 6.5 Maintenance == 1025 - 1026 -* The device itself generally does not require daily maintenance. When an obvious fault occurs, please do not open it and repair it yourself, and contact us as soon as possible! 1027 -* After using the electrode, please clean the electrode head with clean water and cover it with a protective cover. 1028 -* When measuring the device, the measured liquid should flow and the flow rate should be uniform, and there should be no bubbles attached to the measuring end of the device. 1029 -* If the electrode diaphragm is attached with dirt and mineral components, the sensitivity will be reduced, and it may not be possible to perform sufficient measurement. Please ensure that the platinum ring is clean. 1030 -* The platinum induction ring of a good residual chlorine electrode should always be kept clean and bright. If the platinum ring of the electrode becomes rough or covered with pollutants after measurement, please clean it according to the following method: (For reference) Inorganic pollution: immerse the electrode in 0.1mol/L dilute hydrochloric acid for 15 minutes, gently wipe the platinum ring of the residual chlorine electrode with a cotton swab, and then wash it with tap water. 1031 -* Organic or oil pollution: immerse the electrode in tap water with a small amount of detergent, such as dishwashing liquid, and thoroughly clean the sensing surface of the electrode sensor. Gently wipe the platinum ring of the electrode with a cotton swab, then rinse with tap water, and the cleaning is complete. If the platinum ring of the electrode has formed an oxide film, please use toothpaste or 1000-grit fine sandpaper to properly polish the sensing surface, and then clean it with tap water. The platinum ring is connected to the glass, so please handle it carefully when polishing. 1032 -The electrode has a service life of about one year, and a new electrode should be replaced in time after aging. 1033 -* Before the cable plug and the device plug are locked, do not put the plug part into water. 1034 - 1035 - 1036 - 1037 -== 6.6 RS485 Commands == 1038 - 1039 -RS485 signal 1040 -Standard Modbus-RTU protocol, baud rate: 9600; check bit: none; data bit: 8; stop bit: 1 1041 - 1042 - 1043 -== 6.7 Query data == 1044 - 1045 -Example 1: Read the current residual chlorine concentration of the device with address 01 1046 - 1047 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:534.333px" %) 1048 -|=(% style="width: 42px;background-color:#4F81BD;color:white" %)Address|=(% style="width: 53px;background-color:#4F81BD;color:white" %)Function code|=(% style="width: 74px; background-color: rgb(79, 129, 189); color: white;" %)Register Address|=(% style="width: 94px; background-color: rgb(79, 129, 189); color: white;" %)Register length|=(% style="width: 72px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width: 77px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high 1049 -|(% style="width:99px" %)0X01|(% style="width:112px" %)0X03|(% style="width:74px" %)0X00 0X00|(% style="width:94px" %)0X00 0X01|(% style="width:72px" %)((( 1050 -0X84 1051 -)))|(% style="width:77px" %)0X0A 1052 - 1053 -**response:** 1054 - 1055 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:534.333px" %) 1056 -|=(% style="width: 42px;background-color:#4F81BD;color:white" %)Address|=(% style="width: 83px; background-color: rgb(79, 129, 189); color: white;" %)Function code|=(% style="width: 110px; background-color: rgb(79, 129, 189); color: white;" %)Valid Bytes|=(% style="width: 94px; background-color: rgb(79, 129, 189); color: white;" %)Register contents|=(% style="width: 72px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width: 77px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high 1057 -|(% style="width:99px" %)0X01|(% style="width:83px" %)0X03|(% style="width:110px" %)0X02|(% style="width:94px" %)0X03 0X16|(% style="width:72px" %)((( 1058 -0X39 1059 -)))|(% style="width:77px" %)0X7A 1060 - 1061 -Calculation of residual chlorine concentration: 316H (hexadecimal) = 790 => residual chlorine = 7.90 1062 - 1063 - 1064 -Example 2: Set the deviation value for the current residual chlorine value of the device with address 01 to correct the value and send the frame: (If the current residual gas value output by the device is 7.90, the value needs to be corrected to 8.00, the difference is 8.00-7.90-0.100.1*100=10=>41200000 (floating point number), write 41200000 to the contents of the two registers) 1065 - 1066 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:518px" %) 1067 -|=(% style="width: 80.75px;background-color:#4F81BD;color:white" %)Original address|=(% style="width: 64.75px;background-color:#4F81BD;color:white" %)Function code|=(% style="width: 64.75px;background-color:#4F81BD;color:white" %)Register address|=(% style="width: 64.75px;background-color:#4F81BD;color:white" %)Register number|=(% style="width: 64.75px;background-color:#4F81BD;color:white" %)Byte number|=(% style="width: 64.75px; background-color: rgb(79, 129, 189); color: white;" %)Register content|=(% style="width: 54.75px;background-color:#4F81BD;color:white" %)CRC16 low|=(% style="width: 58.75px;background-color:#4F81BD;color:white" %)CRC16 high 1068 -|(% style="width:99px" %)0X01|(% style="width:112px" %)0X10|(% style="width:135px" %)0X01 0X12|(% style="width:126px" %)0X00 0X02|(% style="width:85px" %)0X04|(% style="width:1px" %)0X4120 0X0000|(% style="width:1px" %)0X08|(% style="width:1px" %)0X1A 1069 - 1070 -**response:** 1071 - 1072 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:534.333px" %) 1073 -|=(% style="width: 42px;background-color:#4F81BD;color:white" %)Address|=(% style="width: 83px; background-color: rgb(79, 129, 189); color: white;" %)Function code|=(% style="width: 110px; background-color: rgb(79, 129, 189); color: white;" %)Register address|=(% style="width: 94px; background-color: rgb(79, 129, 189); color: white;" %)Register number|=(% style="width: 72px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width: 77px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high 1074 -|(% style="width:99px" %)0X01|(% style="width:83px" %)0X10|(% style="width:110px" %)0X01 0X12|(% style="width:94px" %)0X00 0X02|(% style="width:72px" %)((( 1075 -0XE5 1076 -)))|(% style="width:77px" %)0X0D 1077 - 1078 - 1079 - 1080 -= 7. Water Quality Sensor Datasheet = 1081 - 1082 -* **[[Water Quality Sensor Transmitter Datasheet>>https://www.dropbox.com/scl/fi/9tofocmgapkbddshznumn/Datasheet_WQS-xB-WQS-xS_Water-Quality-Sensor-Transmitter.pdf?rlkey=wxua12ur9swk30rkqnh2boo9z&st=axga6epf&dl=0]]**
- 1752564223905-283.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.karry - Size
-
... ... @@ -1,1 +1,0 @@ 1 -144.4 KB - Content
- 1752573238705-910.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.karry - Size
-
... ... @@ -1,1 +1,0 @@ 1 -111.3 KB - Content
- 1752573643879-991.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.karry - Size
-
... ... @@ -1,1 +1,0 @@ 1 -163.2 KB - Content
- image-20240720172548-2.png
-
- Size
-
... ... @@ -1,1 +1,1 @@ 1 - 262.2KB1 +1.5 MB - Content
- image-20241129142314-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.karry - Size
-
... ... @@ -1,1 +1,0 @@ 1 -1.2 MB - Content