Changes for page Water Quality Sensors
Last modified by Karry Zhuang on 2025/02/18 15:43
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -481,8 +481,6 @@ 481 481 482 482 * **Max Pressure**: 0.6MPa 483 483 484 - 485 - 486 486 == 3.2 Wiring == 487 487 488 488 ... ... @@ -494,6 +494,7 @@ 494 494 495 495 [[image:image-20240714174241-2.png]] 496 496 495 + 497 497 == 3.4 Installation Notice == 498 498 499 499 ... ... @@ -558,6 +558,7 @@ 558 558 |=(% 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 high 559 559 |(% style="width:99px" %)0X01|(% style="width:112px" %)0X03|(% style="width:106px" %)0X00|(% style="width:93px" %)0X20|(% style="width:104px" %)0XF0 560 560 560 + 561 561 === 3.6.2 Change address === 562 562 563 563 ... ... @@ -642,30 +642,43 @@ 642 642 0XC3 643 643 ))) 644 644 645 + 645 645 = 4. DR-DO1 Dissolved Oxygen Sensor = 646 646 647 647 == 4.1 Specification == 648 648 649 649 650 -* **Measuring range**: 0-20mg/L, 0-50℃ 651 -* **Accuracy**: 3%, ±0.5℃ 652 -* **Resolution**: 0.01 mg/L, 0.01℃ 651 +* **Measuring range**: 0-20mg/L, 0-50°C 652 + 653 +* **Accuracy**: 3%, ±0.5°C 654 + 655 +* **Resolution**: 0.01 mg/L, 0.01°C 656 + 653 653 * **Maximum operating pressure**: 6 bar 658 + 654 654 * **Output signal**: A: 4-20mA (current loop)B: RS485 (standard Modbus-RTU protocol, device default address: 01) 660 + 655 655 * **Power supply voltage**: 5-24V DC 656 -* **Working environment**: temperature 0-60℃; humidity <95%RH 662 + 663 +* **Working environment**: temperature 0-60°C; humidity <95%RH 664 + 657 657 * **Power consumption**: ≤0.5W 658 658 667 + 659 659 == 4.2 wiring == 660 660 670 + 661 661 [[image:image-20240720172632-4.png||height="390" width="640"]] 662 662 663 663 664 -== (% id="cke_bm_224234S" style="display:none" %) (%%)4.3 Impedance requirements for current signals ==674 +== 4.3 Impedance requirements for current signals == 665 665 666 -[[image:image-20240718195414-8.png||height="100" width="575"]] 667 667 677 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:400px" %) 678 +|(% style="width:132px" %)**Supply Voltage**|(% style="width:67px" %)**9V**|(% style="width:67px" %)**12V**|(% style="width:67px" %)**20V**|(% style="width:67px" %)**24V** 679 +|(% style="width:132px" %)**Max Impedance**|(% style="width:65px" %)**<250Ω**|(% style="width:67px" %)**<400Ω**|(% style="width:67px" %)**<500Ω**|(% style="width:65px" %)**<900Ω** 668 668 681 + 669 669 == 4.4 Mechinical Drawing == 670 670 671 671 ... ... @@ -674,46 +674,53 @@ 674 674 675 675 == 4.5 Instructions for use and maintenance == 676 676 690 + 677 677 * It can be directly put into water without adding a protective tube, ensuring the long-term stability, reliability and accuracy of the sensor. 692 + 678 678 * If the water conditions are complex and you want accurate data, you need to wipe the sensor probe frequently. 679 679 695 + 680 680 == 4.6 RS485 Commands == 681 681 698 + 682 682 RS485 signaldefault address 0x14 683 683 Standard Modbus-RTU protocol, baud rate: 9600; check bit: none; data bit: 8; stop bit: 1 684 684 702 + 685 685 === 4.6.1 Query address === 686 686 687 -send 688 688 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 706 +**send:** 707 + 708 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:518px" %) 709 +|=(% 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 691 691 |(% 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 692 692 693 693 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. 694 694 695 695 696 -response 715 +**response:** 697 697 698 698 Register 0 data high and register 0 data low indicate the actual address of the sensor: 1 699 699 Register 1 data high and register 1 data low indicate the sensor version 700 700 701 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:5 99.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 high720 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:518px" %) 721 +|=(% 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 high 703 703 |(% 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 704 704 705 705 === 4.6.2 Change address === 706 706 726 + 707 707 For example: Change the address of the sensor with address 1 to 2(address range: 1-119), master → slave 708 708 709 -(% 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 low729 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:518px" %) 730 +|=(% 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 low 711 711 |(% 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 712 712 713 -response 733 +**response:** 714 714 715 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:5 99.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 high735 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:518px" %) 736 +|=(% 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 717 717 |(% 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 718 718 719 719 === 4.6.3 Query data === ... ... @@ -721,14 +721,14 @@ 721 721 722 722 Query the data (dissolved oxygen) of the sensor (address 14), host → slave 723 723 724 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:5 99.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 high744 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:518px" %) 745 +|=(% 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 726 726 |(% 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 727 727 728 728 If the sensor receives correctly, the following data will be returned, slave → host 729 729 730 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:5 99.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 high750 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:518px" %) 751 +|=(% 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 high 732 732 |(% 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 733 733 734 734 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. ... ... @@ -738,56 +738,71 @@ 738 738 739 739 Query the data (temperature) of the sensor (address 14), host → slave 740 740 741 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:5 99.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 high761 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:518px" %) 762 +|=(% 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 743 743 |(% 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 744 744 745 745 If the sensor receives correctly, the following data will be returned, slave → host 746 746 747 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:5 99.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 high767 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:518px" %) 768 +|=(% 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 high 749 749 |(% 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 750 750 751 751 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. 752 752 753 -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 ℃773 +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°C 754 754 755 755 756 756 = 5. DR-TS1 Water Turbidity Sensor = 757 757 778 +== 5.1 Specification == 758 758 759 759 760 - ==(% id="cke_bm_81470S"style="display:none"%) (%%)5.1Specification ==781 +* **Measuring range**: 0.11000.0NTU 761 761 762 -* **Measuring range**: 0.1~1000.0NTU 763 763 * **Accuracy**: ±5% 784 + 764 764 * **Resolution**: 0.1NTU 786 + 765 765 * **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 770 770 789 +* **Output signal**: A: 420 mA (current loop)B: RS485 (standard Modbus-RTU protocol, device default address: 01) 790 + 791 +* **Power supply voltage**: 524V DC (when output signal is RS485)1224V DC (when output signal is 420mA) 792 + 793 +* **Working environment**: temperature 060°C; humidity ≤ 95%RH 794 + 795 +* **Power consumption**: ≤ 0.5W 796 + 797 + 771 771 == 5.2 wiring == 772 772 800 + 773 773 [[image:image-20240720172640-5.png||height="387" width="635"]] 774 774 775 775 776 776 == 5.3 Impedance requirements for current signals == 777 777 778 -[[image:image-20240718195414-8.png||height="100" width="575"]] 779 779 807 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:400px" %) 808 +|(% style="width:132px" %)**Supply Voltage**|(% style="width:67px" %)**9V**|(% style="width:67px" %)**12V**|(% style="width:67px" %)**20V**|(% style="width:67px" %)**24V** 809 +|(% style="width:132px" %)**Max Impedance**|(% style="width:65px" %)**<250Ω**|(% style="width:67px" %)**<400Ω**|(% style="width:67px" %)**<500Ω**|(% style="width:65px" %)**<900Ω** 780 780 811 + 781 781 == 5.4 Mechinical Drawing == 782 782 814 + 783 783 [[image:image-20240718195058-7.png||height="305" width="593"]] 784 784 785 785 786 786 == 5.5 Instructions for use and maintenance == 787 787 820 + 788 788 * It can be directly put into water without adding a protective tube, ensuring the long-term stability, reliability and accuracy of the sensor. 822 + 789 789 * If the water conditions are complex and you want accurate data, you need to wipe the sensor probe frequently. 790 790 825 + 791 791 == 5.6 RS485 Commands == 792 792 793 793 ... ... @@ -794,47 +794,52 @@ 794 794 RS485 signaldefault address 0x15 795 795 Standard Modbus-RTU protocol, baud rate: 9600; check bit: none; data bit: 8; stop bit: 1 796 796 832 + 797 797 === 5.6.1 Query address === 798 798 799 -send 800 800 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 836 +**send:** 804 804 838 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:518px" %) 839 +|=(% 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 840 +|(% 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 841 + 805 805 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. 806 806 807 807 808 -response 845 +**response:** 809 809 810 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:5 61.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 high847 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:518px" %) 848 +|=(% 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 high 812 812 |(% style="width:99px" %)0X01|(% style="width:112px" %)0X03|(% style="width:106px" %)0X00|(% style="width:93px" %)0X20|(% style="width:104px" %)0XF0 813 813 814 814 === 5.6.2 Change address === 815 815 853 + 816 816 For example: Change the address of the sensor with address 1 to 2, master → slave 817 817 818 -(% 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 high856 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:518px" %) 857 +|=(% 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 high 820 820 |(% 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 821 821 822 822 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. 824 824 862 +(% 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.** 863 + 864 + 825 825 === 5.6.3 Query data === 826 826 827 827 828 828 Query the data (turbidity) of the sensor (address 15), host → slave 829 829 830 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:5 99.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 high870 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:518px" %) 871 +|=(% 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 832 832 |(% 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 833 833 834 834 If the sensor receives correctly, the following data will be returned, slave → host 835 835 836 -(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:5 99.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 high876 +(% border="1" cellspacing="3" style="background-color:#f2f2f2; width:518px" %) 877 +|=(% 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 high 838 838 |(% 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 839 839 840 840 The query data command is 15 03 00 00 00 01 87 1E