Last modified by Karry Zhuang on 2024/07/11 11:58
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -7,67 +7,69 @@ 7 7 8 8 9 9 10 -= **1. Introduction**=10 += 1. Introduction = 11 11 12 12 13 13 This article provide the examples for RS485-LN to connect to different type of RS485 sensors. 14 14 15 15 16 -== **1.1 Example 1: Connect to Leak relay and VFD**==16 +== 1.1 Example 1: Connect to Leak relay and VFD == 17 17 18 18 19 19 This instruction is provided by Xavier Florensa Berenguer from [[NORIA GRUPO DE COMPRAS>>url:http://www.gruponovelec.com/]]. It is to show how to use RS485-LN to connect to Relay and VFD and communicate with Mobile. The structure is like below: 20 20 21 -[[image:image-20220527091852-1.png]] 22 22 23 - Connection22 +[[image:image-20220527091852-1.png||height="547" width="994"]] 24 24 24 +**Connection** 25 25 26 26 27 27 [[image:image-20220527091942-2.png]](% style="display:none" %) 28 28 29 -Connection 29 +**Connection** 30 30 31 31 32 32 (% style="color:blue" %)**Related documents:** 33 33 34 -* System Structure: [[Solar Pump with Dragino>>url:http://www.dragino.com/downloads/index.php?dir=RS485-LN/Application_Note/Relay_VFD/||style="background-color: rgb(255, 255, 255);"]] 35 -* Explanation on how to integrate to Node-red and to the Mobile Phone, and with link to the Github code: [[Configure Manual>>url:http://www.dragino.com/downloads/index.php?dir=RS485-LN/Application_Note/Relay_VFD/||style="background-color: rgb(255, 255, 255);"]] 34 +* System Structure: [[Solar Pump with Dragino>>url:http://www.dragino.com/downloads/index.php?dir=RS485-LN/Application_Note/Relay_VFD/||_mstmutation="1" style="background-color: rgb(255, 255, 255);"]] 35 + 36 +* Explanation on how to integrate to Node-red and to the Mobile Phone, and with link to the Github code: [[Configure Manual>>url:http://www.dragino.com/downloads/index.php?dir=RS485-LN/Application_Note/Relay_VFD/||_mstmutation="1" style="background-color: rgb(255, 255, 255);"]] 37 + 36 36 * [[Video Demo>>url:https://www.youtube.com/watch?v=TAFZ5eaf-MY&t=6s&ab_channel=XavierFlorensaBerenguer]] 37 37 38 38 39 -== **1.2 Example 2: Connect to Pulse Counter** == 40 40 42 +== 1.2 Example 2: Connect to Pulse Counter == 41 41 44 + 42 42 This instruction is provided by Xavier Florensa Berenguer from [[NORIA GRUPO DE COMPRAS>>url:http://www.gruponovelec.com/]]. It is to show how to use RS485-LN to connect to Pulse Counter and communicate with Mobile. This example and example 2 compose the structure for a farm IoT solution. The structure is like below: 43 43 44 44 45 -[[image:image-20220527092058-3.png]] 48 +[[image:image-20220527092058-3.png||height="552" width="905"]] 46 46 47 -Connection 50 +**Connection** 48 48 49 49 53 +[[image:image-20220527092146-4.png||height="507" width="906"]] 50 50 51 - [[image:image-20220527092146-4.png]]55 +**Connection** 52 52 53 -Connection 54 54 55 - 56 56 (% style="color:blue" %)**Related documents:** 57 57 58 -* Configure Document: [[Pickdata MIO40 water pulse counter to LoRa with Dragino RS485-LN>>url:http://www.dragino.com/downloads/index.php?dir=RS485-LN/Application_Note/Pulse-Counter/]] 60 +* Configure Document: [[Pickdata MIO40 water pulse counter to LoRa with Dragino RS485-LN>>url:http://www.dragino.com/downloads/index.php?dir=RS485-LN/Application_Note/Pulse-Counter/||_mstmutation="1"]] 61 + 59 59 * [[Dragino Solution in Farm>>url:http://www.dragino.com/downloads/index.php?dir=RS485-LN/Application_Note/&file=Dragino%20on%20Farms.pptx]] 60 60 61 61 62 62 63 -== **1.3 Example3: Use RS485-LN with energy meters**==66 +== 1.3 Example 3: Use RS485-LN with energy meters == 64 64 68 +=== 1.3.1 OverView === 65 65 66 -=== **1.3.1 OverView** === 67 67 68 - 69 69 ((( 70 -(% style="color:red" %)**Note**:The specifications of each energy meter are different, please refer to your own energy meter specifications. 72 +(% style="color:red" %)**Note**:**The specifications of each energy meter are different, please refer to your own energy meter specifications.** 71 71 ))) 72 72 73 73 ((( ... ... @@ -76,10 +76,9 @@ 76 76 77 77 [[image:image-20220527092419-5.png]] 78 78 79 -Connection1 81 +**Connection1** 80 80 81 81 82 - 83 83 ((( 84 84 (% style="color:blue" %)**How to connect with Energy Meter:** 85 85 ... ... @@ -95,11 +95,11 @@ 95 95 ))) 96 96 97 97 ((( 98 -Power Source VIN to RS485-LN VIN+ 99 +Power Source **VIN** to RS485-LN **VIN+** 99 99 ))) 100 100 101 101 ((( 102 -Power Source GND to RS485-LN VIN- 103 +Power Source **GND** to RS485-LN **VIN-** 103 103 ))) 104 104 105 105 ((( ... ... @@ -108,15 +108,15 @@ 108 108 109 109 [[image:image-20220527092514-6.png]] 110 110 111 -Connection2 112 +**Connection2** 112 112 113 113 114 114 [[image:image-20220527092555-7.png]] 115 115 116 -Connection3 117 +**Connection3** 117 117 118 118 119 -=== **1.3.2 How to use the parameters of the energy meter and MODBUS commands**===120 +=== 1.3.2 How to use the parameters of the energy meter and MODBUS commands === 120 120 121 121 122 122 If the user needs to read the parameters of the electric energy meter and use the modbus command,please refer to the appendix of the MODBUS communication protocol in the user manual of the energy meter. ... ... @@ -127,9 +127,13 @@ 127 127 (% style="color:blue" %)**Example:**(%%) AT+COMMAND1=01 03 00 00 00 01 84 0A 128 128 129 129 * The first byte : slave address code (=001~247) 131 + 130 130 * The second byte : read register value function code 133 + 131 131 * 3rd and 4th bytes: start address of register to be read 135 + 132 132 * 5th and 6th bytes: Number of registers to read 137 + 133 133 * 7th and 8th bytes: CRC16 checksum from bytes 1 to 6. 134 134 135 135 ((( ... ... @@ -142,23 +142,22 @@ 142 142 ))) 143 143 144 144 * The first byte ARD: slave address code (=001~254) 150 + 145 145 * The second byte: Return to read function code 152 + 146 146 * 3rd byte: total number of bytes 154 + 147 147 * 4th~5th bytes: register data 156 + 148 148 * The 6th and 7th bytes: CRC16 checksum 158 + 149 149 * 08 FD is register data. Use short integer 16 bits to convert to decimal, get 2301, then 230.1V is the voltage. 150 150 151 -(% class="wikigeneratedid" %) 152 -((( 153 - 154 154 155 155 156 - 157 -))) 163 +=== 1.3.3 How to configure RS485-LN and parse output commands === 158 158 159 -=== **1.3.3 How to configure RS485-LN and parse output commands** === 160 160 161 - 162 162 RS485-LN provides two configuration methods: AT COMMAND and DOWNLINK. 163 163 164 164 ... ... @@ -169,16 +169,18 @@ 169 169 170 170 ((( 171 171 If the configured parameters and commands are incorrect, the return value is not obtained. 176 + 177 + 172 172 ))) 173 173 174 174 [[image:image-20220601143201-9.png]] 175 175 176 -AT COMMAND 182 +**AT COMMAND** 177 177 178 178 179 179 (% class="box infomessage" %) 180 180 ((( 181 - **AT+DATACUTx **: This command defines how to handle the return from AT+COMMANDx, max reture length is 40 bytes. AT+DATACUTx=a,b,c 187 + (% _mstmutation="1" %)**AT+DATACUTx **(%%): This command defines how to handle the return from AT+COMMANDx, max reture length is 40 bytes. AT+DATACUTx=a,b,c 182 182 ))) 183 183 184 184 a: length for the return of AT+COMMAND ... ... @@ -189,25 +189,22 @@ 189 189 190 190 [[image:image-20220601143115-8.png]] 191 191 192 -AT COMMAND 198 +**AT COMMAND** 193 193 194 194 195 - 196 196 PAYLOAD is available after the valid value is intercepted. 197 197 198 - 199 199 [[image:image-20220601143046-7.png]] 200 200 201 -AT COMMAND 205 +**AT COMMAND** 202 202 203 203 204 - 205 205 You can get configured PAYLOAD on TTN. 206 206 207 207 [[image:image-20220601143519-1.png]] 208 208 209 209 ((( 210 -AT COMMAND 213 +**AT COMMAND** 211 211 ))) 212 212 213 213 ((( ... ... @@ -217,7 +217,7 @@ 217 217 ((( 218 218 (% style="color:blue" %)**Example**: 219 219 220 -**CMD1:** Read current data with MODBUS command. address: 0x03 AT+COMMAND1= 01 03 00 03 00 01,1 223 +(% style="color:red" %)**CMD1:**(%%) Read current data with MODBUS command. address: 0x03 AT+COMMAND1= 01 03 00 03 00 01,1 221 221 ))) 222 222 223 223 ((( ... ... @@ -231,7 +231,7 @@ 231 231 ))) 232 232 233 233 ((( 234 -**CMD2: **Read voltage data with MODBUS command. address: 0x00 AT+COMMAND2= 01 03 00 00 00 01,1 237 +(% style="color:red" %)**CMD2: **(%%)Read voltage data with MODBUS command. address: 0x00 AT+COMMAND2= 01 03 00 00 00 01,1 235 235 ))) 236 236 237 237 ((( ... ... @@ -245,7 +245,7 @@ 245 245 ))) 246 246 247 247 ((( 248 -**CMD3:** Read total active energy data with MODBUS command. address: 0x0031 AT+COMMAND3= 01 03 00 31 00 02,1 251 +(% style="color:red" %)**CMD3:**(%%) Read total active energy data with MODBUS command. address: 0x0031 AT+COMMAND3= 01 03 00 31 00 02,1 249 249 ))) 250 250 251 251 ((( ... ... @@ -265,7 +265,7 @@ 265 265 AT COMMAND 266 266 267 267 268 -(% style="color: #4f81bd" %)**01 is device address,00 02 is the current, 08 DC is the voltage,00 00 00 44 is the total active energy.**271 +(% style="color:blue" %)**01 is device address,00 02 is the current, 08 DC is the voltage,00 00 00 44 is the total active energy.** 269 269 270 270 271 271 [[image:image-20220601143642-2.png]] ... ... @@ -279,15 +279,12 @@ 279 279 [[image:image-20220527093358-15.png]] 280 280 281 281 ((( 282 -DOWNLINK 285 +**DOWNLINK** 283 283 ))) 284 284 285 -((( 286 - 287 -))) 288 288 289 289 ((( 290 -(% style="color: #4f81bd" %)**Type Code 0xAF**290 +(% style="color:blue" %)**Type Code 0xAF** 291 291 ))) 292 292 293 293 ((( ... ... @@ -298,7 +298,7 @@ 298 298 ))) 299 299 300 300 ((( 301 -(% style="color:red" %)Note: if user use AT+COMMANDx to add a new command, he also need to send AT+DATACUTx downlink. 301 +(% style="color:red" %)**Note: if user use AT+COMMANDx to add a new command, he also need to send AT+DATACUTx downlink.** 302 302 ))) 303 303 304 304 ((( ... ... @@ -333,9 +333,8 @@ 333 333 will execute an uplink after got this command. 334 334 ))) 335 335 336 -((( 337 - 338 338 337 +((( 339 339 (% style="color:blue" %)**Example:** 340 340 ))) 341 341 ... ... @@ -345,35 +345,32 @@ 345 345 346 346 [[image:image-20220601144149-6.png]] 347 347 348 -DOWNLINK 347 +**DOWNLINK** 349 349 350 350 351 - 352 352 [[image:image-20220601143803-3.png]] 353 353 354 -DOWNLINK 352 +**DOWNLINK** 355 355 356 356 357 - 358 358 [[image:image-20220601144053-5.png]] 359 359 360 -DOWNLINK 357 +**DOWNLINK** 361 361 362 362 363 - 364 364 [[image:image-20220601143921-4.png]] 365 365 366 -DOWNLINK 362 +**DOWNLINK** 367 367 368 368 369 - 370 370 [[image:image-20220601142805-5.png]] 371 371 372 -DOWNLINK 373 - 367 +**DOWNLINK** 374 374 375 -=== **1.3.4 How to configure and output commands for RS485 to USB** === 376 376 370 +=== 1.3.4 How to configure and output commands for RS485 to USB === 371 + 372 + 377 377 ((( 378 378 This step is not necessary, it is just to show how to use a normal RS485 to USB adapter to connect to the meter to check the input and output. This can be used to test the connection and RS485 command of the meter without RS485-LN. 379 379 ))) ... ... @@ -392,26 +392,21 @@ 392 392 393 393 ((( 394 394 check digit: Even 395 - 396 - 397 397 ))) 398 398 399 399 [[image:image-20220527093708-21.png]] 400 400 401 -USB 395 +**USB** 402 402 403 403 404 - 405 405 [[image:image-20220527093747-22.png]] 406 406 407 -USB 400 +**USB** 408 408 409 409 410 410 411 411 ((( 412 412 The configuration command is consistent with the AT command, input the hexadecimal command directly into the serial port, and the serial port will output the command. 413 - 414 - 415 415 ))) 416 416 417 417 ((( ... ... @@ -426,10 +426,10 @@ 426 426 427 427 [[image:image-20220527093821-23.png]] 428 428 429 -USB 420 +**USB** 430 430 431 431 432 -=== **1.3.5 How to configure multiple devices and modify device addresses**===423 +=== 1.3.5 How to configure multiple devices and modify device addresses === 433 433 434 434 435 435 If users need to read the parameters of multiple energy meters, they need to modify the device address, because the default device address of each energy meter is 01. ... ... @@ -445,6 +445,7 @@ 445 445 446 446 (% style="color:blue" %)**Example**(%%): These two meters are examples of setting parameters and device addresses. 447 447 439 + 448 448 [[image:image-20220527093950-25.png]] 449 449 450 450 ... ... @@ -459,7 +459,7 @@ 459 459 460 460 ((( 461 461 ((( 462 -We can use **AT+CFGDEV** to set the device address. 454 +We can use (% style="color:blue" %)**AT+CFGDEV**(%%) to set the device address. 463 463 ))) 464 464 ))) 465 465 ... ... @@ -477,9 +477,9 @@ 477 477 **AT+CFGDEV:01 10 00 61 00 01 02 00 02,1** 478 478 ))) 479 479 480 -* 01:device adaress 472 +* 01: device adaress 481 481 482 -* 10:function code 474 +* 10: function code 483 483 484 484 * 00 61:Register address 485 485 ... ... @@ -503,12 +503,14 @@ 503 503 [[image:image-20220601142607-4.png]] 504 504 505 505 506 -**PAYLOAD:01 08 DF 43 62** 498 +(% style="color:blue" %)**PAYLOAD: 01 08 DF 43 62** 507 507 508 508 * 08 DF is the valid value of the meter with device address 02. 509 509 * 43 62 is the valid value of the meter with device address 01. 510 510 503 +(% style="display:none" %) (%%) 511 511 505 + 512 512 == 1.4 Example 4: Circuit Breaker Remote Open Close == 513 513 514 514 ... ... @@ -518,35 +518,54 @@ 518 518 519 519 [[image:image-20220527094330-30.png]] 520 520 521 -Connection 515 +**Connection** 522 522 523 523 524 -* Configure Documen: [[Circuit Breaker Remote Open Close>>url:http://www.dragino.com/downloads/index.php?dir=RS485-LN/Application_Note/Circuit_Breaker_Remote_Open_Close/]] 518 +* Configure Documen: [[Circuit Breaker Remote Open Close>>url:http://www.dragino.com/downloads/index.php?dir=RS485-LN/Application_Note/Circuit_Breaker_Remote_Open_Close/||_mstmutation="1"]] 525 525 526 526 521 + 527 527 == 1.5 Example 5: SEM Three Energy Meter with RS485-BL or RS485-LN == 528 528 529 529 530 530 This instruction is provided by Xavier Florensa Berenguer from [[NORIA GRUPO DE COMPRAS>>url:http://www.gruponovelec.com/]]. It is to show how to use RS485-BL to connect to SEM Three Energy Meter and send the data to mobile phone for remote minitor. The structure is like below: 531 531 532 -* Configure Document For RS485-BL: [[Connect to SEM Three>>url:http://www.dragino.com/downloads/index.php?dir=LoRa_End_Node/RS485-BL/Application_Note/&file=Dragino%20RS485BL%20and%20pickdata%20SEM%20Three%20v1.pdf||style="background-color: rgb(255, 255, 255);"]] 533 -* Configure Document for RS485-LN: [[Connect to SEM Three>>url:http://www.dragino.com/downloads/index.php?dir=RS485-LN/Application_Note/SEM_Three_Energy_Meter/&file=SEM%20three%20and%20Dragino%20RS485-LN%20v1.pdf]] 527 +* Configure Document For RS485-BL: [[Connect to SEM Three>>url:http://www.dragino.com/downloads/index.php?dir=LoRa_End_Node/RS485-BL/Application_Note/&file=Dragino%20RS485BL%20and%20pickdata%20SEM%20Three%20v1.pdf||_mstmutation="1" style="background-color: rgb(255, 255, 255);"]] 534 534 529 +* Configure Document for RS485-LN: [[Connect to SEM Three>>url:http://www.dragino.com/downloads/index.php?dir=RS485-LN/Application_Note/SEM_Three_Energy_Meter/&file=SEM%20three%20and%20Dragino%20RS485-LN%20v1.pdf||_mstmutation="1"]] 535 535 531 + 532 + 536 536 == 1.6 Example 6: CEM C31 485-T1-MID Energy Meter with RS485-LN == 537 537 538 538 539 539 This instruction is provided by Xavier Florensa Berenguer from [[NORIA GRUPO DE COMPRAS>>url:http://www.gruponovelec.com/]]. It is to show how to use RS485-LN to connect to CEM C31 485-T1-MID and send the data for remote minitor. The structure is like below: 540 540 541 -* Configure Document For RS485-LN: [[CEM C31 485-T1-MID>>url:http://www.dragino.com/downloads/index.php?dir=RS485-LN/Application_Note/ELECTRICAL%20CABINET/&file=ELECTRICAL%20CABINET%20READINGS.pdf||style="background-color: rgb(255, 255, 255);"]] 538 +* Configure Document For RS485-LN: [[CEM C31 485-T1-MID>>url:http://www.dragino.com/downloads/index.php?dir=RS485-LN/Application_Note/ELECTRICAL%20CABINET/&file=ELECTRICAL%20CABINET%20READINGS.pdf||_mstmutation="1" style="background-color: rgb(255, 255, 255);"]] 542 542 543 543 541 + 544 544 == 1.7 Example 7: Schneider Electric PLC M221 with RS485-BL == 545 545 546 546 547 547 [[image:image-20220527094556-31.png]] 548 548 547 + 549 549 Network Structure 550 550 551 - 552 552 * [[Reference Instruction>>url:https://www.dragino.com/downloads/index.php?dir=RS485-LN/Application_Note/Schneider%20Electric%20PLC/]] 551 + 552 + 553 + 554 +== 1.8 Example 8: This sketch is supposed to test Dragino RS485-BL (Modbus master), using an Arduino UNO as a Modbus slave. == 555 + 556 + 557 +This sketch uses 4 registers: some of them can be set by Dragino with a command, another is used to store value from a DS18B20 temperature sensor, or a random generated number. All data is 16bit uint, but the sketch shows also how to represent booleans and negative numbers. 558 + 559 +In the next days I will be adding more documentation, but I think it already explains users how to build their own modbus sensor to pair with Dragino RS485-BL. 560 + 561 +This is released the code under GNU LGPL licence on Github: 562 + 563 +[[https:~~/~~/github.com/zorbaproject/ArduinoModbusForDraginoRS485>>url:https://github.com/zorbaproject/ArduinoModbusForDraginoRS485]] 564 + 565 +