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,65 +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 -== **1.2 Example 2: Connect to Pulse Counter** == 39 39 40 40 41 - Thisinstructionis provided by Xavier Florensa Berenguer from[[NORIA GRUPO DE COMPRAS>>url:http://www.gruponovelec.com/]].Itis toshow how to use RS485-LN to connect to Pulse Counterand communicate with Mobile. This example and example 2 compose the structure for a farm IoT solution. The structure is like below:42 +== 1.2 Example 2: Connect to Pulse Counter == 42 42 43 43 44 -[[ima ge:image-20220527092058-3.png]]45 +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: 45 45 46 -Connection 47 47 48 +[[image:image-20220527092058-3.png||height="552" width="905"]] 48 48 50 +**Connection** 49 49 50 -[[image:image-20220527092146-4.png]] 51 51 52 - Connection53 +[[image:image-20220527092146-4.png||height="507" width="906"]] 53 53 55 +**Connection** 54 54 57 + 55 55 (% style="color:blue" %)**Related documents:** 56 56 57 -* 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 + 58 58 * [[Dragino Solution in Farm>>url:http://www.dragino.com/downloads/index.php?dir=RS485-LN/Application_Note/&file=Dragino%20on%20Farms.pptx]] 59 59 60 60 61 -== **1.3 Example3: Use RS485-LN with energy meters** == 62 62 66 +== 1.3 Example 3: Use RS485-LN with energy meters == 63 63 64 -=== **1.3.1 OverView**===68 +=== 1.3.1 OverView === 65 65 66 66 67 67 ((( 68 -(% 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.** 69 69 ))) 70 70 71 71 ((( ... ... @@ -74,10 +74,9 @@ 74 74 75 75 [[image:image-20220527092419-5.png]] 76 76 77 -Connection1 81 +**Connection1** 78 78 79 79 80 - 81 81 ((( 82 82 (% style="color:blue" %)**How to connect with Energy Meter:** 83 83 ... ... @@ -93,11 +93,11 @@ 93 93 ))) 94 94 95 95 ((( 96 -Power Source VIN to RS485-LN VIN+ 99 +Power Source **VIN** to RS485-LN **VIN+** 97 97 ))) 98 98 99 99 ((( 100 -Power Source GND to RS485-LN VIN- 103 +Power Source **GND** to RS485-LN **VIN-** 101 101 ))) 102 102 103 103 ((( ... ... @@ -106,15 +106,15 @@ 106 106 107 107 [[image:image-20220527092514-6.png]] 108 108 109 -Connection2 112 +**Connection2** 110 110 111 111 112 112 [[image:image-20220527092555-7.png]] 113 113 114 -Connection3 117 +**Connection3** 115 115 116 116 117 -=== **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 === 118 118 119 119 120 120 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. ... ... @@ -125,9 +125,13 @@ 125 125 (% style="color:blue" %)**Example:**(%%) AT+COMMAND1=01 03 00 00 00 01 84 0A 126 126 127 127 * The first byte : slave address code (=001~247) 131 + 128 128 * The second byte : read register value function code 133 + 129 129 * 3rd and 4th bytes: start address of register to be read 135 + 130 130 * 5th and 6th bytes: Number of registers to read 137 + 131 131 * 7th and 8th bytes: CRC16 checksum from bytes 1 to 6. 132 132 133 133 ((( ... ... @@ -140,23 +140,22 @@ 140 140 ))) 141 141 142 142 * The first byte ARD: slave address code (=001~254) 150 + 143 143 * The second byte: Return to read function code 152 + 144 144 * 3rd byte: total number of bytes 154 + 145 145 * 4th~5th bytes: register data 156 + 146 146 * The 6th and 7th bytes: CRC16 checksum 158 + 147 147 * 08 FD is register data. Use short integer 16 bits to convert to decimal, get 2301, then 230.1V is the voltage. 148 148 149 -(% class="wikigeneratedid" %) 150 -((( 151 - 152 152 153 153 154 - 155 -))) 163 +=== 1.3.3 How to configure RS485-LN and parse output commands === 156 156 157 -=== **1.3.3 How to configure RS485-LN and parse output commands** === 158 158 159 - 160 160 RS485-LN provides two configuration methods: AT COMMAND and DOWNLINK. 161 161 162 162 ... ... @@ -167,16 +167,18 @@ 167 167 168 168 ((( 169 169 If the configured parameters and commands are incorrect, the return value is not obtained. 176 + 177 + 170 170 ))) 171 171 172 172 [[image:image-20220601143201-9.png]] 173 173 174 -AT COMMAND 182 +**AT COMMAND** 175 175 176 176 177 177 (% class="box infomessage" %) 178 178 ((( 179 - **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 180 180 ))) 181 181 182 182 a: length for the return of AT+COMMAND ... ... @@ -187,25 +187,22 @@ 187 187 188 188 [[image:image-20220601143115-8.png]] 189 189 190 -AT COMMAND 198 +**AT COMMAND** 191 191 192 192 193 - 194 194 PAYLOAD is available after the valid value is intercepted. 195 195 196 - 197 197 [[image:image-20220601143046-7.png]] 198 198 199 -AT COMMAND 205 +**AT COMMAND** 200 200 201 201 202 - 203 203 You can get configured PAYLOAD on TTN. 204 204 205 205 [[image:image-20220601143519-1.png]] 206 206 207 207 ((( 208 -AT COMMAND 213 +**AT COMMAND** 209 209 ))) 210 210 211 211 ((( ... ... @@ -263,7 +263,7 @@ 263 263 AT COMMAND 264 264 265 265 266 -(% 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.** 267 267 268 268 269 269 [[image:image-20220601143642-2.png]] ... ... @@ -277,15 +277,12 @@ 277 277 [[image:image-20220527093358-15.png]] 278 278 279 279 ((( 280 -DOWNLINK 285 +**DOWNLINK** 281 281 ))) 282 282 283 -((( 284 - 285 -))) 286 286 287 287 ((( 288 -(% style="color: #4f81bd" %)**Type Code 0xAF**290 +(% style="color:blue" %)**Type Code 0xAF** 289 289 ))) 290 290 291 291 ((( ... ... @@ -296,7 +296,7 @@ 296 296 ))) 297 297 298 298 ((( 299 -(% 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.** 300 300 ))) 301 301 302 302 ((( ... ... @@ -331,9 +331,8 @@ 331 331 will execute an uplink after got this command. 332 332 ))) 333 333 334 -((( 335 - 336 336 337 +((( 337 337 (% style="color:blue" %)**Example:** 338 338 ))) 339 339 ... ... @@ -343,35 +343,32 @@ 343 343 344 344 [[image:image-20220601144149-6.png]] 345 345 346 -DOWNLINK 347 +**DOWNLINK** 347 347 348 348 349 - 350 350 [[image:image-20220601143803-3.png]] 351 351 352 -DOWNLINK 352 +**DOWNLINK** 353 353 354 354 355 - 356 356 [[image:image-20220601144053-5.png]] 357 357 358 -DOWNLINK 357 +**DOWNLINK** 359 359 360 360 361 - 362 362 [[image:image-20220601143921-4.png]] 363 363 364 -DOWNLINK 362 +**DOWNLINK** 365 365 366 366 367 - 368 368 [[image:image-20220601142805-5.png]] 369 369 370 -DOWNLINK 371 - 367 +**DOWNLINK** 372 372 373 -=== **1.3.4 How to configure and output commands for RS485 to USB** === 374 374 370 +=== 1.3.4 How to configure and output commands for RS485 to USB === 371 + 372 + 375 375 ((( 376 376 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. 377 377 ))) ... ... @@ -390,26 +390,21 @@ 390 390 391 391 ((( 392 392 check digit: Even 393 - 394 - 395 395 ))) 396 396 397 397 [[image:image-20220527093708-21.png]] 398 398 399 -USB 395 +**USB** 400 400 401 401 402 - 403 403 [[image:image-20220527093747-22.png]] 404 404 405 -USB 400 +**USB** 406 406 407 407 408 408 409 409 ((( 410 410 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. 411 - 412 - 413 413 ))) 414 414 415 415 ((( ... ... @@ -424,10 +424,10 @@ 424 424 425 425 [[image:image-20220527093821-23.png]] 426 426 427 -USB 420 +**USB** 428 428 429 429 430 -=== **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 === 431 431 432 432 433 433 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. ... ... @@ -443,6 +443,7 @@ 443 443 444 444 (% style="color:blue" %)**Example**(%%): These two meters are examples of setting parameters and device addresses. 445 445 439 + 446 446 [[image:image-20220527093950-25.png]] 447 447 448 448 ... ... @@ -457,7 +457,7 @@ 457 457 458 458 ((( 459 459 ((( 460 -We can use **AT+CFGDEV** to set the device address. 454 +We can use (% style="color:blue" %)**AT+CFGDEV**(%%) to set the device address. 461 461 ))) 462 462 ))) 463 463 ... ... @@ -475,9 +475,9 @@ 475 475 **AT+CFGDEV:01 10 00 61 00 01 02 00 02,1** 476 476 ))) 477 477 478 -* 01:device adaress 472 +* 01: device adaress 479 479 480 -* 10:function code 474 +* 10: function code 481 481 482 482 * 00 61:Register address 483 483 ... ... @@ -501,11 +501,14 @@ 501 501 [[image:image-20220601142607-4.png]] 502 502 503 503 504 -**PAYLOAD:01 08 DF 43 62** 498 +(% style="color:blue" %)**PAYLOAD: 01 08 DF 43 62** 505 505 506 506 * 08 DF is the valid value of the meter with device address 02. 507 507 * 43 62 is the valid value of the meter with device address 01. 508 508 503 +(% style="display:none" %) (%%) 504 + 505 + 509 509 == 1.4 Example 4: Circuit Breaker Remote Open Close == 510 510 511 511 ... ... @@ -515,32 +515,54 @@ 515 515 516 516 [[image:image-20220527094330-30.png]] 517 517 518 -Connection 515 +**Connection** 519 519 520 520 521 -* 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"]] 522 522 520 + 521 + 523 523 == 1.5 Example 5: SEM Three Energy Meter with RS485-BL or RS485-LN == 524 524 525 525 526 526 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: 527 527 528 -* 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);"]] 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]] 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);"]] 530 530 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"]] 530 + 531 + 532 + 531 531 == 1.6 Example 6: CEM C31 485-T1-MID Energy Meter with RS485-LN == 532 532 533 533 534 534 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: 535 535 536 -* 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);"]] 537 537 540 + 541 + 538 538 == 1.7 Example 7: Schneider Electric PLC M221 with RS485-BL == 539 539 540 540 541 541 [[image:image-20220527094556-31.png]] 542 542 547 + 543 543 Network Structure 544 544 545 - 546 546 * [[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 +