Changes for page Water Quality Sensors

Last modified by Karry Zhuang on 2025/02/18 15:43

From version 45.2
edited by Xiaoling
on 2024/08/06 10:37
Change comment: There is no comment for this version
To version 32.3
edited by Karry Zhuang
on 2024/07/19 15:38
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.Xiaoling
1 +XWiki.karry
Content
... ... @@ -3,13 +3,10 @@
3 3  {{toc/}}
4 4  
5 5  
6 -
7 -
8 8  = 1. DR-ECK Water EC Probe =
9 9  
10 10  == 1.1 Specification: ==
11 11  
12 -
13 13  * **Power Input**: DC7~~30
14 14  * **Power Consumption** : < 0.5W
15 15  * **Interface**: RS485. 9600 Baud Rate
... ... @@ -24,11 +24,8 @@
24 24  * **IP Rated**: IP68
25 25  * **Max Pressure**: 0.6MPa
26 26  
27 -
28 -
29 29  == 1.2 Application for Different Range ==
30 30  
31 -
32 32  [[image:image-20240714173018-1.png]]
33 33  
34 34  
... ... @@ -35,12 +35,8 @@
35 35  == 1.3 Wiring ==
36 36  
37 37  
38 -[[image:image-20240720172533-1.png||height="347" width="569"]]
39 -
40 -
41 41  == 1.4 Mechinical Drawing ==
42 42  
43 -
44 44  [[image:image-20240714174241-2.png]]
45 45  
46 46  
... ... @@ -47,19 +47,19 @@
47 47  == 1.5 Installation ==
48 48  
49 49  
50 -**Electrode installation form:**
40 +**Electrode installation form**
51 51  
52 -A: Side wall installation
42 +A:Side wall installation
53 53  
54 -B: Top flange installation
44 +B:Top flange installation
55 55  
56 -C: Pipeline bend installation
46 +C:Pipeline bend installation
57 57  
58 -D: Pipeline bend installation
48 +D:Pipeline bend installation
59 59  
60 -E: Flow-through installation
50 +E:Flow-through installation
61 61  
62 -F: Submerged installation
52 +F:Submerged installation
63 63  
64 64  [[image:image-20240718190121-1.png||height="350" width="520"]]
65 65  
... ... @@ -71,11 +71,11 @@
71 71  
72 72  [[image:image-20240718190204-2.png||height="262" width="487"]]
73 73  
74 -**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.
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.
75 75  
76 76  [[image:image-20240718190221-3.png||height="292" width="500"]]
77 77  
78 -**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.
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.
79 79  
80 80  B. Correct installation method
81 81  
... ... @@ -82,7 +82,7 @@
82 82  [[image:image-20240718190249-4.png||height="287" width="515"]]
83 83  
84 84  
85 -== 1.6 Maintenance ==
75 +== 1.6 Maintain ==
86 86  
87 87  
88 88  * The equipment 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.
... ... @@ -90,8 +90,6 @@
90 90  * Cleaning of conductivity electrodes: Organic stains on the electrode can be cleaned with warm water containing detergent, or with alcohol. Calcium and magnesium precipitates are best cleaned with 10% citric acid. The electrode plate or pole can only be cleaned by chemical methods or by shaking in water. Wiping the electrode plate will damage the coating (platinum black) on the electrode surface.
91 91  * The equipment should be calibrated before each use. It is recommended to calibrate it every 3 months for long-term use. The calibration frequency should be adjusted appropriately according to different application conditions (degree of dirt in the application, deposition of chemical substances, etc.).
92 92  
93 -
94 -
95 95  == 1.7 RS485 Commands ==
96 96  
97 97  
... ... @@ -101,10 +101,9 @@
101 101  
102 102  === 1.7.1 Query address ===
103 103  
92 +send
104 104  
105 -**send**
106 -
107 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:518px" %)
94 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:599.333px" %)
108 108  |=(% 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
109 109  |(% 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
110 110  
... ... @@ -111,17 +111,14 @@
111 111  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.
112 112  
113 113  
114 -**response**
101 +response
115 115  
116 116  (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:561.333px" %)
117 117  |=(% 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
118 118  |(% style="width:99px" %)0X01|(% style="width:112px" %)0X03|(% style="width:106px" %)0X00|(% style="width:93px" %)0X20|(% style="width:104px" %)0XF0
119 119  
120 -
121 -
122 122  === 1.7.2 Change address ===
123 123  
124 -
125 125  For example: Change the address of the sensor with address 1 to 2, master → slave
126 126  
127 127  (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:575.333px" %)
... ... @@ -157,44 +157,18 @@
157 157  
158 158  === 1.7.4 Query data ===
159 159  
160 -
161 -
162 -Query the data (EC,temperature) of the sensor (address 11), host → slave
163 -
164 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:599.333px" %)
165 -|=(% 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
166 -|(% style="width:99px" %)0X11|(% style="width:72px" %)0X03|(% style="width:64px" %)0X00|(% style="width:68px" %)0X00|(% style="width:70px" %)0X00|(% style="width:72px" %)0X02|(% style="width:56px" %)0XC6|(% style="width:56px" %)0X9B
167 -
168 -If the sensor receives correctly, the following data will be returned, slave → host
169 -
170 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:599.333px" %)
171 -|=(% 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: 68px; background-color: rgb(79, 129, 189); color: white;" %)Register 1 Data high|=(% style="width: 70px; 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
172 -|(% style="width:99px" %)0X11|(% style="width:72px" %)0X03|(% style="width:68px" %)0X04|(% style="width:70px" %)0X02|(% style="width:72px" %)0XAE|(% style="width:56px" %)0X01|(% style="width:56px" %)0X64|(% style="width:56px" %)0X8B|(% style="width:56px" %)0XD0
173 -
174 174  The address of the EC K10 sensor is 11
175 175  
176 176  The query data command is 11 03 00 00 00 02 C6 9B
177 177  
178 -For example, the returned data is 11 03 04 (% style="color:red" %)**02 AE**(%%) 01 64 8B D0. 02 AE is converted to decimal 686,  K=10, EC: 6860uS/cm,temperature: 35.6℃ Convert the returned data to decimal and divide by 10.
148 +For example, the returned data is 11 03 04 (% style="color:red" %)**02 AE**(%%) 01 64 8B D0. 02 AE is converted to decimal 686,  K=10, EC: 6860uS/cm
179 179  
180 180  
181 -Query the data (EC,temperature) of the sensor (address 11), host → slave
182 -
183 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:599.333px" %)
184 -|=(% 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
185 -|(% style="width:99px" %)0X12|(% style="width:72px" %)0X03|(% style="width:64px" %)0X00|(% style="width:68px" %)0X00|(% style="width:70px" %)0X00|(% style="width:72px" %)0X02|(% style="width:56px" %)0XC6|(% style="width:56px" %)0XA8
186 -
187 -If the sensor receives correctly, the following data will be returned, slave → host
188 -
189 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:599.333px" %)
190 -|=(% 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: 68px; background-color: rgb(79, 129, 189); color: white;" %)Register 1 Data high|=(% style="width: 70px; 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
191 -|(% style="width:99px" %)0X12|(% style="width:72px" %)0X03|(% style="width:68px" %)0X04|(% style="width:70px" %)0X02|(% style="width:72px" %)0XAE|(% style="width:56px" %)0X01|(% style="width:56px" %)0X64|(% style="width:56px" %)0XB8|(% style="width:56px" %)0XD0
192 -
193 193  The address of the EC K1 sensor is 12
194 194  
195 195  The query data command is 12 03 00 00 00 02 C6 A8
196 196  
197 -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.
155 +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
198 198  
199 199  
200 200  === 1.7.5 Calibration Method ===
... ... @@ -267,9 +267,7 @@
267 267  
268 268  == 2.2 Wiring ==
269 269  
270 -[[image:image-20240720172548-2.png||height="348" width="571"]]
271 271  
272 -
273 273  == (% style="color:inherit; font-family:inherit" %)2.3 (% style="color:inherit; font-family:inherit; font-size:26px" %)Mechinical Drawing(%%) ==
274 274  
275 275  [[image:image-20240714174241-2.png]]
... ... @@ -302,7 +302,7 @@
302 302  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.
303 303  
304 304  
305 -== 2.5 Maintenance ==
261 +=== 2.5 Maintenance ===
306 306  
307 307  
308 308  * The equipment itself generally does not require daily maintenance. When an obvious fault occurs, please do not open it and repair it yourself. Contact us as soon as possible!
... ... @@ -322,7 +322,7 @@
322 322  RS485 signaldefault address 0x10
323 323  Standard Modbus-RTU protocol, baud rate: 9600; check bit: none; data bit: 8; stop bit: 1
324 324  
325 -=== 2.6.1 Query address ===
281 +=== 2.6.1 Query data ===
326 326  
327 327  send
328 328  
... ... @@ -353,13 +353,13 @@
353 353  
354 354  send
355 355  
356 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:570.333px" %)
357 -|=(% style="width: 71px; background-color: rgb(79, 129, 189); color: white;" %)Address|=(% style="width: 74px; background-color: rgb(79, 129, 189); color: white;" %)Function code|=(% style="width: 67px; 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: 69px; background-color: rgb(79, 129, 189); color: white;" %)Register Length high|=(% style="width: 66px; background-color: rgb(79, 129, 189); color: white;" %)Register Length low|=(% style="width: 57px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 low|=(% style="width: 57px; background-color: rgb(79, 129, 189); color: white;" %)CRC16 high
358 -|(% style="width:71px" %)0X10|(% style="width:74px" %)0X06|(% style="width:67px" %)0X00|(% style="width:68px" %)0X10|(% style="width:69px" %)0X00|(% style="width:66px" %)0X64|(% style="width:57px" %)0X8A|(% style="width:57px" %)(((
312 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:676.25px" %)
313 +|=(% 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
314 +|(% style="width:99px" %)0X10|(% style="width:112px" %)0X06|(% style="width:135px" %)0X00|(% style="width:126px" %)0X10|(% style="width:85px" %)0X00|(% style="width:1px" %)0X64|(% style="width:1px" %)0X8A|(% style="width:1px" %)(((
359 359  0XA5
360 360  )))
361 361  
362 -Change the intercept of the sensor at address 10 to 1 (default is 0). You need to pass the intercept 1*100 =100 into the command 0x006.
318 +Change the intercept of the sensor with address 1 to 10 (default 0), which is 0X000A in the command.
363 363  
364 364  response
365 365  
... ... @@ -374,18 +374,8 @@
374 374  === 2.6.4 Query data ===
375 375  
376 376  
377 -Query the data (PH) of the sensor (address 10), host → slave
333 +The address of the pH  sensor is 10
378 378  
379 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:599.333px" %)
380 -|=(% 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
381 -|(% 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
382 -
383 -If the sensor receives correctly, the following data will be returned, slave → host
384 -
385 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:599.333px" %)
386 -|=(% 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
387 -|(% style="width:99px" %)0X10|(% style="width:72px" %)0X03|(% style="width:68px" %)0X02|(% style="width:70px" %)0X02|(% style="width:72px" %)0XAE|(% style="width:56px" %)0XC4|(% style="width:56px" %)0X9B
388 -
389 389  The query data command is 10 03 00 00 00 01 87 4B. After the query, 7 bytes will be returned.
390 390  
391 391  For example, the returned data is 10 03 02 (% style="color:red" %)**02 AE**(%%) C4 9B.
... ... @@ -448,9 +448,7 @@
448 448  
449 449  == 3.2 Wiring ==
450 450  
451 -[[image:image-20240720172620-3.png||height="378" width="620"]]
452 452  
453 -
454 454  == 3.3 Mechinical Drawing ==
455 455  
456 456  [[image:image-20240714174241-2.png]]
... ... @@ -474,7 +474,7 @@
474 474  [[image:image-20240718191336-5.png||height="239" width="326"]]
475 475  
476 476  
477 -== 3.5 Maintenance ==
421 +=== 3.5 Maintenance ===
478 478  
479 479  
480 480  (1) The equipment 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.
... ... @@ -501,7 +501,7 @@
501 501  RS485 signaldefault address 0x13
502 502  Standard Modbus-RTU protocol, baud rate: 9600; check bit: none; data bit: 8; stop bit: 1
503 503  
504 -=== 3.6.1 Query address ===
448 +=== 3.6.1 Query data ===
505 505  
506 506  send
507 507  
... ... @@ -532,7 +532,7 @@
532 532  send
533 533  
534 534  (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:676.25px" %)
535 -|=(% style="width: 50px;background-color:#4F81BD;color:white" %)Address|=(% style="width: 50px;background-color:#4F81BD;color:white" %)Function code|=(% style="width: 67px; 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: 69px; background-color: rgb(79, 129, 189); color: white;" %)Register Length high|=(% style="width: 66px; background-color: rgb(79, 129, 189); color: white;" %)Register Length low|=(% style="width: 50px;background-color:#4F81BD;color:white" %)CRC16 low|=(% style="width: 50px;background-color:#4F81BD;color:white" %)CRC16 high
479 +|=(% 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
536 536  |(% style="width:99px" %)0X13|(% style="width:112px" %)0X06|(% style="width:135px" %)0X00|(% style="width:126px" %)0X10|(% style="width:85px" %)0X00|(% style="width:1px" %)0X64|(% style="width:1px" %)0X8A|(% style="width:1px" %)(((
537 537  0X96
538 538  )))
... ... @@ -551,19 +551,8 @@
551 551  
552 552  === 3.6.4 Query data ===
553 553  
498 +The address of the ORP sensor is 13
554 554  
555 -Query the data (ORP) of the sensor (address 13), host → slave
556 -
557 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:599.333px" %)
558 -|=(% 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
559 -|(% style="width:99px" %)0X13|(% 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" %)0X78
560 -
561 -If the sensor receives correctly, the following data will be returned, slave → host
562 -
563 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:599.333px" %)
564 -|=(% 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
565 -|(% style="width:99px" %)0X13|(% style="width:72px" %)0X03|(% style="width:68px" %)0X02|(% style="width:70px" %)0X02|(% style="width:72px" %)0XAE|(% style="width:56px" %)0X80|(% style="width:56px" %)0X9B
566 -
567 567  The query data command is 13 03 00 00 00 01 87 78
568 568  
569 569  For example, the returned data is 13 03 02 (% style="color:red" %)**02 AE**(%%) 80 9B.
... ... @@ -601,113 +601,64 @@
601 601  
602 602  == 4.1 Specification ==
603 603  
604 -
605 -* **Measuring range**: 0-20mg/L, 0-50℃
606 -* **Accuracy**: 3%, ±0.5℃
607 -* **Resolution**: 0.01 mg/L, 0.01℃
608 -* **Maximum operating pressure**: 6 bar
609 -* **Output signal**: A: 4-20mA (current loop)B: RS485 (standard Modbus-RTU protocol, device default address: 01)
610 -* **Power supply voltage**: 5-24V DC
611 -* **Working environment**: temperature 0-60℃; humidity <95%RH
537 +* **Measuring range**: 0.1~1000.0NTU
538 +* **Accuracy**: ±5%
539 +* **Resolution**: 0.1NTU
540 +* **Stability**: ≤3mV/24 hours
541 +* **Output signal**: A: 4~20 mA (current loop)B: RS485 (standard Modbus-RTU protocol, device default address: 01)
542 +* **Power supply voltage**: 5~24V DC (when output signal is RS485)12~24V DC (when output signal is 4~20mA)
543 +* **Working environment**: temperature 0~60℃; humidity ≤95%RH
612 612  * **Power consumption**: ≤0.5W
613 613  
614 -== 4.2 wiring ==
546 +== 4.2 Impedance requirements for current signals ==
615 615  
616 -[[image:image-20240720172632-4.png||height="390" width="640"]]
617 -
618 -
619 -== (% id="cke_bm_224234S" style="display:none" %) (%%)4.3 Impedance requirements for current signals ==
620 -
621 621  [[image:image-20240718195414-8.png||height="100" width="575"]]
622 622  
623 623  
551 +== 4.3 wiring ==
552 +
624 624  == 4.4 Mechinical Drawing ==
625 625  
555 +[[image:image-20240718195058-7.png||height="305" width="593"]]
626 626  
627 -[[image:image-20240719155308-1.png||height="226" width="527"]]
628 628  
558 +=== 4.5 Instructions for use and maintenance ===
629 629  
630 -== 4.5 Instructions for use and maintenance ==
631 -
632 632  * It can be directly put into water without adding a protective tube, ensuring the long-term stability, reliability and accuracy of the sensor.
633 633  * If the water conditions are complex and you want accurate data, you need to wipe the sensor probe frequently.
634 634  
635 635  == 4.6 RS485 Commands ==
636 636  
637 -RS485 signaldefault address 0x14
638 -Standard Modbus-RTU protocol, baud rate: 9600; check bit: none; data bit: 8; stop bit: 1
639 -
640 640  === 4.6.1 Query address ===
641 641  
642 642  send
643 643  
644 644  (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:599.333px" %)
645 -|=(% 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
646 -|(% 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
570 +|=(% 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
571 +|(% 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
647 647  
648 -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.
573 +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.
649 649  
650 650  
651 651  response
652 652  
653 -Register 0 data high and register 0 data low indicate the actual address of the sensor: 1
654 -Register 1 data high and register 1 data low indicate the sensor version
578 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:561.333px" %)
579 +|=(% 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
580 +|(% style="width:99px" %)0X01|(% style="width:112px" %)0X03|(% style="width:106px" %)0X00|(% style="width:93px" %)0X20|(% style="width:104px" %)0XF0
655 655  
656 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:599.333px" %)
657 -|=(% 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
658 -|(% 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
659 659  
660 -=== 4.6.2 Change address ===
583 +=== 4.6.2 Query data ===
661 661  
662 -For example: Change the address of the sensor with address 1 to 2(address range: 1-119), master → slave
663 663  
664 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:907.333px" %)
665 -|=(% 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
666 -|(% 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
586 +The address of the dissolved oxygen sensor is 14
667 667  
668 -response
588 +The query data command is 14 03 00 14 00 01 C6 CB
669 669  
670 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:599.333px" %)
671 -|=(% 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
672 -|(% 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
673 -
674 -=== 4.6.3 Query data ===
675 -
676 -
677 -Query the data (dissolved oxygen) of the sensor (address 14), host → slave
678 -
679 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:599.333px" %)
680 -|=(% 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
681 -|(% 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
682 -
683 -If the sensor receives correctly, the following data will be returned, slave → host
684 -
685 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:599.333px" %)
686 -|=(% 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
687 -|(% 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
688 -
689 689  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.
690 690  
691 691  Converted to decimal, it is 888. Add two decimal places to get the actual value. 03 78 means the current dissolved oxygen is 8.88mg/L
692 692  
693 693  
694 -Query the data (temperature) of the sensor (address 14), host → slave
695 -
696 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:599.333px" %)
697 -|=(% 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
698 -|(% 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
699 -
700 -If the sensor receives correctly, the following data will be returned, slave → host
701 -
702 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:599.333px" %)
703 -|=(% 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
704 -|(% 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
705 -
706 -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.
707 -
708 -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℃
709 -
710 -
711 711  = 5. DR-TS1 Water Turbidity Sensor =
712 712  
713 713  
... ... @@ -723,11 +723,10 @@
723 723  * **Working environment**: temperature 0~60℃; humidity ≤95%RH
724 724  * **Power consumption**: ≤0.5W
725 725  
610 +
726 726  == 5.2 wiring ==
727 727  
728 -[[image:image-20240720172640-5.png||height="387" width="635"]]
729 729  
730 -
731 731  == 5.3 Impedance requirements for current signals ==
732 732  
733 733  [[image:image-20240718195414-8.png||height="100" width="575"]]
... ... @@ -738,7 +738,7 @@
738 738  [[image:image-20240718195058-7.png||height="305" width="593"]]
739 739  
740 740  
741 -== 5.5 Instructions for use and maintenance ==
624 +=== 5.5 Instructions for use and maintenance ===
742 742  
743 743  * It can be directly put into water without adding a protective tube, ensuring the long-term stability, reliability and accuracy of the sensor.
744 744  * If the water conditions are complex and you want accurate data, you need to wipe the sensor probe frequently.
... ... @@ -745,12 +745,8 @@
745 745  
746 746  == 5.6 RS485 Commands ==
747 747  
631 +=== 4.6.1 Query address ===
748 748  
749 -RS485 signaldefault address 0x15
750 -Standard Modbus-RTU protocol, baud rate: 9600; check bit: none; data bit: 8; stop bit: 1
751 -
752 -=== 5.6.1 Query address ===
753 -
754 754  send
755 755  
756 756  (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:599.333px" %)
... ... @@ -766,32 +766,12 @@
766 766  |=(% 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
767 767  |(% style="width:99px" %)0X01|(% style="width:112px" %)0X03|(% style="width:106px" %)0X00|(% style="width:93px" %)0X20|(% style="width:104px" %)0XF0
768 768  
769 -=== 5.6.2 Change address ===
770 770  
771 -For example: Change the address of the sensor with address 1 to 2, master → slave
649 +=== 5.6.2 Query data ===
772 772  
773 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:676.25px" %)
774 -|=(% 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
775 -|(% 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
776 776  
777 -If the sensor receives correctly, the data is returned along the original path.
778 -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.
652 +The address of the dissolved oxygen sensor is 15
779 779  
780 -=== 5.6.3 Query data ===
781 -
782 -
783 -Query the data (turbidity) of the sensor (address 15), host → slave
784 -
785 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:599.333px" %)
786 -|=(% 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
787 -|(% 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
788 -
789 -If the sensor receives correctly, the following data will be returned, slave → host
790 -
791 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:599.333px" %)
792 -|=(% 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
793 -|(% 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
794 -
795 795  The query data command is 15 03 00 00 00 01 87 1E
796 796  
797 797  For example, the returned data is 15 03 02 (% style="color:red" %)**02 9A**(%%) 09 4C
image-20240719155308-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.karry
Size
... ... @@ -1,1 +1,0 @@
1 -57.4 KB
Content
image-20240720172533-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.karry
Size
... ... @@ -1,1 +1,0 @@
1 -1.5 MB
Content
image-20240720172548-2.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.karry
Size
... ... @@ -1,1 +1,0 @@
1 -1.5 MB
Content
image-20240720172620-3.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.karry
Size
... ... @@ -1,1 +1,0 @@
1 -1.5 MB
Content
image-20240720172632-4.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.karry
Size
... ... @@ -1,1 +1,0 @@
1 -1.5 MB
Content
image-20240720172640-5.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.karry
Size
... ... @@ -1,1 +1,0 @@
1 -1.5 MB
Content