Changes for page Water Quality Sensors
Last modified by Karry Zhuang on 2025/02/18 15:43
From version 24.1
edited by Karry Zhuang
on 2024/07/18 19:13
on 2024/07/18 19:13
Change comment:
Uploaded new attachment "image-20240718191336-5.png", version {1}
To version 15.2
edited by Karry Zhuang
on 2024/07/18 18:35
on 2024/07/18 18:35
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Attachments (0 modified, 0 added, 5 removed)
Details
- Page properties
-
- Content
-
... ... @@ -37,41 +37,31 @@ 37 37 == 1.5 Installation == 38 38 39 39 40 - **Electrode installation form**40 + Do not power on while connect the cables. Double check the wiring before power on. 41 41 42 - A:Side wall installation42 +Installation Photo as reference: 43 43 44 - B:Topflange installation44 +**~ Submerged installation:** 45 45 46 - C:Pipelinebend installation46 +The lead wire of the equipment passes through the waterproof pipe, and the 3/4 thread on the top of the equipment is connected to the 3/4 thread of the waterproof pipe with raw tape. Ensure that the top of the equipment and the equipment wire are not flooded. 47 47 48 - D:Pipelinebendinstallation48 +[[image:image-20240715181933-4.png||height="281" width="258"]] 49 49 50 - E:Flow-throughinstallation50 +**~ Pipeline installation:** 51 51 52 - F:Submergedinstallation52 +Connect the equipment to the pipeline through the 3/4 thread. 53 53 54 -[[image:image-2024071 8190121-1.png||height="350" width="520"]]54 +[[image:image-20240715182122-6.png||height="291" width="408"]] 55 55 56 -**S everal common installationmethods of electrodes**56 +**Sampling:** 57 57 58 - Wheninstallingthe sensoronsite, youshouldstrictlyfollowthecorrectinstallationmethodshownin thefollowingpicture.Incorrectinstallationmethodwillcausedatadeviation.58 +Take representative water samples according to sampling requirements. If it is inconvenient to take samples, you can also put the electrode into the solution to be tested and read the output data. After a period of time, take out the electrode and clean it. 59 59 60 - A. Several common incorrectinstallationmethods60 +**Measure the pH of the water sample:** 61 61 62 - [[image:image-20240718190204-2.png||height="262"width="487"]]62 +First rinse the electrode with distilled water, then rinse it with the water sample, then immerse the electrode in the sample, carefully shake the test cup or stir it to accelerate the electrode balance, let it stand, and record the pH value when the reading is stable. 63 63 64 -Error cause: The electrode joint is too long, the extension part is too short, the sensor is easy to form a dead cavity, resulting in measurement error. 65 65 66 -[[image:image-20240718190221-3.png||height="292" width="500"]] 67 - 68 -Error cause: Measurement error or instability may occur due to water flow not being able to fill the pipe or air accumulation at high altitudes. 69 - 70 -B. Correct installation method 71 - 72 -[[image:image-20240718190249-4.png||height="287" width="515"]] 73 - 74 - 75 75 == 1.6 Maintain == 76 76 77 77 ... ... @@ -87,6 +87,7 @@ 87 87 The equipment should be calibrated before each use. For long-term use, it is recommended to calibrate once every 3 months. The calibration frequency should be adjusted appropriately according to different application conditions (degree of dirt in the application, deposition of chemical substances, etc.). After aging, the electrodes should be replaced in time. 88 88 ))) 89 89 80 + 90 90 == 1.7 RS485 Commands == 91 91 92 92 ... ... @@ -94,60 +94,8 @@ 94 94 Standard Modbus-RTU protocol, baud rate: 9600; check bit: none; data bit: 8; stop bit: 1 95 95 96 96 97 -=== 1.7.1 Query address===88 +=== 1.7.1 Query data === 98 98 99 -send 100 - 101 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:676.25px" %) 102 -|=(% 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 103 -|(% style="width:99px" %)0XFE |(% style="width:112px" %)0X03|(% style="width:135px" %)0X00|(% style="width:126px" %)0X50|(% style="width:85px" %)0X00|(% style="width:1px" %)0X00|(% style="width:1px" %)0X51|(% style="width:1px" %)0XD4 104 - 105 -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. 106 - 107 - 108 -response 109 - 110 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:561.333px" %) 111 -|=(% 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 112 -|(% style="width:99px" %)0X1|(% style="width:112px" %)0X3|(% style="width:106px" %)0X00|(% style="width:93px" %)0X20|(% style="width:104px" %)0XF0 113 - 114 -=== 1.7.2 Change address === 115 - 116 -For example: Change the address of the sensor with address 1 to 2, master → slave 117 - 118 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:676.25px" %) 119 -|=(% 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 120 -|(% 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 121 - 122 -If the sensor receives correctly, the data is returned along the original path. 123 -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. 124 - 125 - 126 -=== 1.7.3 Modify intercept === 127 - 128 - 129 -send 130 - 131 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:676.25px" %) 132 -|=(% style="width: 50px;background-color:#4F81BD;color:white" %)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 133 -|(% style="width:99px" %)0X01|(% style="width:112px" %)0X06|(% style="width:135px" %)0X00|(% style="width:126px" %)0X23|(% style="width:85px" %)0X00|(% style="width:1px" %)0X01|(% style="width:1px" %)0XFA|(% style="width:1px" %)((( 134 -0X97 135 -))) 136 - 137 -Change the intercept of the sensor with address 1 to 10 (default 0), which is 0X000A in the command. 138 - 139 -response 140 - 141 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:676.25px" %) 142 -|=(% style="width: 50px;background-color:#4F81BD;color:white" %)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 143 -|(% style="width:99px" %)0X01|(% style="width:112px" %)0X06|(% style="width:135px" %)((( 144 -0X02 145 -)))|(% style="width:126px" %)0X00|(% style="width:85px" %)0X00|(% style="width:1px" %)0X0A|(% style="width:1px" %)0X0A|(% style="width:1px" %)((( 146 -0XE5 147 -))) 148 - 149 -=== 1.7.4 Query data === 150 - 151 151 The address of the EC K10 sensor is 11 152 152 153 153 The query data command is 11 03 00 00 00 02 C6 9B ... ... @@ -159,10 +159,10 @@ 159 159 160 160 The query data command is 12 03 00 00 00 02 C6 A8 161 161 162 -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 101 +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. 163 163 164 164 165 -=== 1.7. 5Calibration Method ===104 +=== 1.7.2 Calibration Method === 166 166 167 167 168 168 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. ... ... @@ -184,12 +184,13 @@ 184 184 185 185 1413*10 gives 0X00003732 186 186 187 - response126 +Return 188 188 189 189 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:676.25px" %) 190 190 |=(% style="width: 50px;background-color:#4F81BD;color:white" %)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 191 191 |(% style="width:99px" %)0X12|(% style="width:112px" %)0X10|(% style="width:135px" %)0X00|(% style="width:126px" %)0X26|(% style="width:85px" %)0X00|(% style="width:1px" %)0X02|(% style="width:1px" %)0XA2|(% style="width:1px" %)0XA0 192 192 132 + 193 193 (2) Place the electrode in distilled water to clean it. Use 12.88mS/cm standard solution for the range of 10~~20000. After the data is stable, enter the following calibration command 194 194 195 195 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:676.25px" %) ... ... @@ -206,12 +206,41 @@ 206 206 207 207 12880*10 gives 0X01F720 208 208 209 - response149 +Return 210 210 211 211 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:676.25px" %) 212 212 |=(% style="width: 50px;background-color:#4F81BD;color:white" %)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 213 213 |(% 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 214 214 155 + 156 +=== 1.7.3 Query address === 157 + 158 + 159 +send 160 + 161 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:676.25px" %) 162 +|=(% 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 163 +|(% style="width:99px" %)0XFE |(% style="width:112px" %)0X03|(% style="width:135px" %)0X00|(% style="width:126px" %)0X50|(% style="width:85px" %)0X00|(% style="width:1px" %)0X00|(% style="width:1px" %)0X51|(% style="width:1px" %)0XD4 164 + 165 +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. 166 + 167 + 168 +return 169 + 170 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:676.25px" %) 171 +|=(% 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 172 +|(% style="width:99px" %)0X0XFE |(% style="width:112px" %)0X03|(% style="width:135px" %)0X00|(% style="width:126px" %)0X50|(% style="width:85px" %)0X00|(% style="width:1px" %)0X00|(% style="width:1px" %)0X51|(% style="width:1px" %)0XD4 173 + 174 + 175 + 176 + 177 + 178 + 179 + 180 + 181 + 182 + 183 + 215 215 = 2. DR-PH01 Water PH Sensor = 216 216 217 217 == 2.7 RS485 Commands == ... ... @@ -267,3 +267,4 @@ 267 267 268 268 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 269 269 239 +
- image-20240718190121-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.karry - Size
-
... ... @@ -1,1 +1,0 @@ 1 -281.1 KB - Content
- image-20240718190204-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.karry - Size
-
... ... @@ -1,1 +1,0 @@ 1 -111.8 KB - Content
- image-20240718190221-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.karry - Size
-
... ... @@ -1,1 +1,0 @@ 1 -140.2 KB - Content
- image-20240718190249-4.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.karry - Size
-
... ... @@ -1,1 +1,0 @@ 1 -111.6 KB - Content
- image-20240718191336-5.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.karry - Size
-
... ... @@ -1,1 +1,0 @@ 1 -46.6 KB - Content