Changes for page Water Quality Sensors
Last modified by Karry Zhuang on 2025/02/18 15:43
From version 18.1
edited by Karry Zhuang
on 2024/07/18 19:00
on 2024/07/18 19:00
Change comment:
There is no comment for this version
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)
Details
- Page properties
-
- Content
-
... ... @@ -37,42 +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 6104537-2.png||height="475" width="706"]]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-20240717103452-1.png||height="320"width="610"]]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 - 66 66 67 -[[image:image-20240716105124-4.png||height="326" width="569"]] 68 - 69 -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. 70 - 71 -B. Correct installation method 72 - 73 -[[image:image-20240716105318-5.png||height="330" width="594"]] 74 - 75 - 76 76 == 1.6 Maintain == 77 77 78 78 ... ... @@ -88,6 +88,7 @@ 88 88 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. 89 89 ))) 90 90 80 + 91 91 == 1.7 RS485 Commands == 92 92 93 93 ... ... @@ -95,60 +95,8 @@ 95 95 Standard Modbus-RTU protocol, baud rate: 9600; check bit: none; data bit: 8; stop bit: 1 96 96 97 97 98 -=== 1.7.1 Query address===88 +=== 1.7.1 Query data === 99 99 100 -send 101 - 102 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:676.25px" %) 103 -|=(% 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 104 -|(% 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 105 - 106 -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. 107 - 108 - 109 -response 110 - 111 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:561.333px" %) 112 -|=(% 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 113 -|(% style="width:99px" %)0X1|(% style="width:112px" %)0X3|(% style="width:106px" %)0X00|(% style="width:93px" %)0X20|(% style="width:104px" %)0XF0 114 - 115 -=== 1.7.2 Change address === 116 - 117 -For example: Change the address of the sensor with address 1 to 2, master → slave 118 - 119 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:676.25px" %) 120 -|=(% 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 121 -|(% 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 122 - 123 -If the sensor receives correctly, the data is returned along the original path. 124 -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. 125 - 126 - 127 -=== 1.7.3 Modify intercept === 128 - 129 - 130 -send 131 - 132 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:676.25px" %) 133 -|=(% 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 134 -|(% 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" %)((( 135 -0X97 136 -))) 137 - 138 -Change the intercept of the sensor with address 1 to 10 (default 0), which is 0X000A in the command. 139 - 140 -response 141 - 142 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:676.25px" %) 143 -|=(% 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 144 -|(% style="width:99px" %)0X01|(% style="width:112px" %)0X06|(% style="width:135px" %)((( 145 -0X02 146 -)))|(% style="width:126px" %)0X00|(% style="width:85px" %)0X00|(% style="width:1px" %)0X0A|(% style="width:1px" %)0X0A|(% style="width:1px" %)((( 147 -0XE5 148 -))) 149 - 150 -=== 1.7.4 Query data === 151 - 152 152 The address of the EC K10 sensor is 11 153 153 154 154 The query data command is 11 03 00 00 00 02 C6 9B ... ... @@ -160,10 +160,10 @@ 160 160 161 161 The query data command is 12 03 00 00 00 02 C6 A8 162 162 163 -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. 164 164 165 165 166 -=== 1.7. 5Calibration Method ===104 +=== 1.7.2 Calibration Method === 167 167 168 168 169 169 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. ... ... @@ -185,12 +185,13 @@ 185 185 186 186 1413*10 gives 0X00003732 187 187 188 - response126 +Return 189 189 190 190 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:676.25px" %) 191 191 |=(% 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 192 192 |(% 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 193 193 132 + 194 194 (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 195 195 196 196 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:676.25px" %) ... ... @@ -207,7 +207,7 @@ 207 207 208 208 12880*10 gives 0X01F720 209 209 210 - response149 +Return 211 211 212 212 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:676.25px" %) 213 213 |=(% 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 ... ... @@ -214,6 +214,34 @@ 214 214 |(% 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 215 215 216 216 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 + 217 217 = 2. DR-PH01 Water PH Sensor = 218 218 219 219 == 2.7 RS485 Commands ==