Last modified by Karry Zhuang on 2024/07/11 11:58
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. Xiaoling1 +XWiki.Bei - Content
-
... ... @@ -1,6 +1,4 @@ 1 -(% class="wikigeneratedid" %) 2 -* 3 -** Table of** **Contents: 1 +**Table of Contents:** 4 4 5 5 {{toc/}} 6 6 ... ... @@ -9,75 +9,85 @@ 9 9 10 10 11 11 12 -= **1. Introduction**=10 += 1. Introduction = 13 13 14 14 15 15 This article provide the examples for RS485-LN to connect to different type of RS485 sensors. 16 16 17 17 18 -== **1.1 Example 1: Connect to Leak relay and VFD**==16 +== 1.1 Example 1: Connect to Leak relay and VFD == 19 19 20 20 21 21 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: 22 22 23 -[[image:image-20220527091852-1.png]] 24 24 25 - Connection22 +[[image:image-20220527091852-1.png||height="547" width="994"]] 26 26 24 +**Connection** 27 27 28 28 27 + 29 29 [[image:image-20220527091942-2.png]](% style="display:none" %) 30 30 31 -Connection 30 +**Connection** 32 32 33 33 34 -Related documents: 33 +(% style="color:blue" %)**Related documents:** 35 35 36 -* [[Solar Pump with Dragino>>url:http://www.dragino.com/downloads/index.php?dir=RS485-LN/Application_Note/Relay_VFD/]] : System Structure 37 -* [[Configure Manual>>url:http://www.dragino.com/downloads/index.php?dir=RS485-LN/Application_Note/Relay_VFD/]] : Explanation on how to integrate to Node-red and to the Mobile Phone, and with link to the Github code. 35 +* 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);"]] 36 + 37 +* 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);"]] 38 + 38 38 * [[Video Demo>>url:https://www.youtube.com/watch?v=TAFZ5eaf-MY&t=6s&ab_channel=XavierFlorensaBerenguer]] 39 39 40 -== **1.2 Example 2: Connect to Pulse Counter** == 41 41 42 +== 1.2 Example 2: Connect to Pulse Counter == 42 42 44 + 43 43 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: 44 44 45 45 46 -[[image:image-20220527092058-3.png]] 48 +[[image:image-20220527092058-3.png||height="552" width="905"]] 47 47 48 -Connection 50 +**Connection** 49 49 50 50 51 51 52 -[[image:image-20220527092146-4.png]] 54 +[[image:image-20220527092146-4.png||height="507" width="906"]] 53 53 54 -Connection 56 +**Connection** 55 55 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/]] 59 +(% style="color:blue" %)**Related documents:** 60 + 61 +* 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"]] 62 + 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 -== **1.3 Example3: Use RS485-LN with energy meters** == 61 61 62 -== =**1.3.1OverView**===66 +== 1.3 Example 3: Use RS485-LN with energy meters == 63 63 68 +=== 1.3.1 OverView === 64 64 70 + 65 65 ((( 66 -(% 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.** 67 67 ))) 68 68 69 69 ((( 70 70 This example describes a single-phase meter.This is the connection between the RS485-LN and the energy meter. 77 + 78 + 71 71 ))) 72 72 73 73 [[image:image-20220527092419-5.png]] 74 74 75 -Connection1 83 +**Connection1** 76 76 77 77 78 78 79 79 ((( 80 -**How to connect with Energy Meter:** 88 +(% style="color:blue" %)**How to connect with Energy Meter:** 81 81 82 82 83 83 ))) ... ... @@ -91,29 +91,31 @@ 91 91 ))) 92 92 93 93 ((( 94 -Power Source VIN to RS485-LN VIN+ 102 +Power Source **VIN** to RS485-LN **VIN+** 95 95 ))) 96 96 97 97 ((( 98 -Power Source GND to RS485-LN VIN- 106 +Power Source **GND** to RS485-LN **VIN-** 99 99 ))) 100 100 101 101 ((( 102 102 Once there is power, the RS485-LN will be on. 111 + 112 + 103 103 ))) 104 104 105 105 [[image:image-20220527092514-6.png]] 106 106 107 -Connection2 117 +**Connection2** 108 108 109 109 110 110 111 111 [[image:image-20220527092555-7.png]] 112 112 113 -Connection3 123 +**Connection3** 114 114 115 115 116 -=== **1.3.2 How to use the parameters of the energy meter and MODBUS commands**===126 +=== 1.3.2 How to use the parameters of the energy meter and MODBUS commands === 117 117 118 118 119 119 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. ... ... @@ -124,9 +124,13 @@ 124 124 (% style="color:blue" %)**Example:**(%%) AT+COMMAND1=01 03 00 00 00 01 84 0A 125 125 126 126 * The first byte : slave address code (=001~247) 137 + 127 127 * The second byte : read register value function code 139 + 128 128 * 3rd and 4th bytes: start address of register to be read 141 + 129 129 * 5th and 6th bytes: Number of registers to read 143 + 130 130 * 7th and 8th bytes: CRC16 checksum from bytes 1 to 6. 131 131 132 132 ((( ... ... @@ -139,23 +139,21 @@ 139 139 ))) 140 140 141 141 * The first byte ARD: slave address code (=001~254) 156 + 142 142 * The second byte: Return to read function code 158 + 143 143 * 3rd byte: total number of bytes 160 + 144 144 * 4th~5th bytes: register data 162 + 145 145 * The 6th and 7th bytes: CRC16 checksum 164 + 146 146 * 08 FD is register data. Use short integer 16 bits to convert to decimal, get 2301, then 230.1V is the voltage. 147 147 148 -(% class="wikigeneratedid" %) 149 -((( 150 - 151 151 168 +=== 1.3.3 How to configure RS485-LN and parse output commands === 152 152 153 - 154 -))) 155 155 156 -=== **1.3.3 How to configure RS485-LN and parse output commands** === 157 - 158 - 159 159 RS485-LN provides two configuration methods: AT COMMAND and DOWNLINK. 160 160 161 161 ... ... @@ -166,16 +166,18 @@ 166 166 167 167 ((( 168 168 If the configured parameters and commands are incorrect, the return value is not obtained. 181 + 182 + 169 169 ))) 170 170 171 171 [[image:image-20220601143201-9.png]] 172 172 173 -AT COMMAND 187 +**AT COMMAND** 174 174 175 175 176 176 (% class="box infomessage" %) 177 177 ((( 178 - **AT+DATACUTx **: This command defines how to handle the return from AT+COMMANDx, max reture length is 40 bytes. AT+DATACUTx=a,b,c 192 + (% _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 179 179 ))) 180 180 181 181 a: length for the return of AT+COMMAND ... ... @@ -186,16 +186,15 @@ 186 186 187 187 [[image:image-20220601143115-8.png]] 188 188 189 -AT COMMAND 203 +**AT COMMAND** 190 190 191 191 192 192 193 193 PAYLOAD is available after the valid value is intercepted. 194 194 195 - 196 196 [[image:image-20220601143046-7.png]] 197 197 198 -AT COMMAND 211 +**AT COMMAND** 199 199 200 200 201 201 ... ... @@ -204,7 +204,7 @@ 204 204 [[image:image-20220601143519-1.png]] 205 205 206 206 ((( 207 -AT COMMAND 220 +**AT COMMAND** 208 208 ))) 209 209 210 210 ((( ... ... @@ -214,7 +214,7 @@ 214 214 ((( 215 215 (% style="color:blue" %)**Example**: 216 216 217 -CMD1: Read current data with MODBUS command. address: 0x03 AT+COMMAND1= 01 03 00 03 00 01,1 230 +(% style="color:red" %)**CMD1:**(%%) Read current data with MODBUS command. address: 0x03 AT+COMMAND1= 01 03 00 03 00 01,1 218 218 ))) 219 219 220 220 ((( ... ... @@ -228,7 +228,7 @@ 228 228 ))) 229 229 230 230 ((( 231 -CMD2: Read voltage data with MODBUS command. address: 0x00 AT+COMMAND2= 01 03 00 00 00 01,1 244 +(% style="color:red" %)**CMD2: **(%%)Read voltage data with MODBUS command. address: 0x00 AT+COMMAND2= 01 03 00 00 00 01,1 232 232 ))) 233 233 234 234 ((( ... ... @@ -242,7 +242,7 @@ 242 242 ))) 243 243 244 244 ((( 245 -CMD3: Read total active energy data with MODBUS command. address: 0x0031 AT+COMMAND3= 01 03 00 31 00 02,1 258 +(% style="color:red" %)**CMD3:**(%%) Read total active energy data with MODBUS command. address: 0x0031 AT+COMMAND3= 01 03 00 31 00 02,1 246 246 ))) 247 247 248 248 ((( ... ... @@ -262,8 +262,8 @@ 262 262 AT COMMAND 263 263 264 264 265 -(% 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.** 266 266 279 +(% 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]] ... ... @@ -271,6 +271,7 @@ 271 271 AT COMMAND 272 272 273 273 287 + 274 274 ==== **1.3.3.2 via LoRaWAN DOWNLINK** ==== 275 275 276 276 ... ... @@ -277,15 +277,13 @@ 277 277 [[image:image-20220527093358-15.png]] 278 278 279 279 ((( 280 -DOWNLINK 294 +**DOWNLINK** 281 281 ))) 282 282 283 -((( 284 - 285 -))) 286 286 298 + 287 287 ((( 288 -(% style="color: #4f81bd" %)**Type Code 0xAF**300 +(% style="color:blue" %)**Type Code 0xAF** 289 289 ))) 290 290 291 291 ((( ... ... @@ -296,7 +296,7 @@ 296 296 ))) 297 297 298 298 ((( 299 -Note: if user use AT+COMMANDx to add a new command, he also need to send AT+DATACUTx downlink. 311 +(% 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,10 +331,9 @@ 331 331 will execute an uplink after got this command. 332 332 ))) 333 333 334 -((( 335 - 336 336 337 -(% style="color:#4f81bd" %)**Example:** 347 +((( 348 +(% style="color:blue" %)**Example:** 338 338 ))) 339 339 340 340 ((( ... ... @@ -343,35 +343,36 @@ 343 343 344 344 [[image:image-20220601144149-6.png]] 345 345 346 -DOWNLINK 357 +**DOWNLINK** 347 347 348 348 349 349 350 350 [[image:image-20220601143803-3.png]] 351 351 352 -DOWNLINK 363 +**DOWNLINK** 353 353 354 354 355 355 356 356 [[image:image-20220601144053-5.png]] 357 357 358 -DOWNLINK 369 +**DOWNLINK** 359 359 360 360 361 361 362 362 [[image:image-20220601143921-4.png]] 363 363 364 -DOWNLINK 375 +**DOWNLINK** 365 365 366 366 367 367 368 368 [[image:image-20220601142805-5.png]] 369 369 370 -DOWNLINK 371 - 381 +**DOWNLINK** 372 372 373 -=== **1.3.4 How to configure and output commands for RS485 to USB** === 374 374 384 +=== 1.3.4 How to configure and output commands for RS485 to USB === 385 + 386 + 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,17 +390,19 @@ 390 390 391 391 ((( 392 392 check digit: Even 405 + 406 + 393 393 ))) 394 394 395 395 [[image:image-20220527093708-21.png]] 396 396 397 -USB 411 +**USB** 398 398 399 399 400 400 401 401 [[image:image-20220527093747-22.png]] 402 402 403 -USB 417 +**USB** 404 404 405 405 406 406 ... ... @@ -409,20 +409,24 @@ 409 409 ))) 410 410 411 411 ((( 412 -(% style="color: #4f81bd" %)**Example:** (%%)input:01 03 00 31 00 02 95 c4426 +(% style="color:blue" %)**Example:** (%%)input:01 03 00 31 00 02 95 c4 413 413 ))) 414 414 415 415 ((( 416 416 output:01 03 04 00 00 00 42 7A 02 431 + 432 + 417 417 ))) 418 418 419 419 [[image:image-20220527093821-23.png]] 420 420 421 -USB 437 +**USB** 422 422 423 423 424 -=== **1.3.5 How to configure multiple devices and modify device addresses** === 425 425 441 +=== 1.3.5 How to configure multiple devices and modify device addresses === 442 + 443 + 426 426 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. 427 427 428 428 ((( ... ... @@ -434,13 +434,15 @@ 434 434 [[image:image-20220601142044-1.png]] 435 435 436 436 437 -**Example**:These two meters are examples of setting parameters and device addresses. 455 +(% style="color:blue" %)**Example**(%%): These two meters are examples of setting parameters and device addresses. 438 438 457 + 439 439 [[image:image-20220527093950-25.png]] 440 440 441 441 442 442 [[image:image-20220527094028-26.png]] 443 443 463 + 444 444 ((( 445 445 ((( 446 446 First of all, since the default device address of the energy meter is 01, the configuration of two energy meters will conflict, so we first connect an energy meter and configure the device address. ... ... @@ -449,7 +449,7 @@ 449 449 450 450 ((( 451 451 ((( 452 -We can use AT+CFGDEV to set the device address. 472 +We can use (% style="color:blue" %)**AT+CFGDEV**(%%) to set the device address. 453 453 ))) 454 454 ))) 455 455 ... ... @@ -461,14 +461,15 @@ 461 461 462 462 [[image:image-20220601142354-2.png]] 463 463 484 + 464 464 (% class="box infomessage" %) 465 465 ((( 466 466 **AT+CFGDEV:01 10 00 61 00 01 02 00 02,1** 467 467 ))) 468 468 469 -* 01:device adaress 490 +* 01: device adaress 470 470 471 -* 10:function code 492 +* 10: function code 472 472 473 473 * 00 61:Register address 474 474 ... ... @@ -491,39 +491,68 @@ 491 491 492 492 [[image:image-20220601142607-4.png]] 493 493 494 -**PAYLOAD:01 08 DF 43 62** 495 495 516 +(% style="color:blue" %)**PAYLOAD: 01 08 DF 43 62** 517 + 496 496 * 08 DF is the valid value of the meter with device address 02. 497 497 * 43 62 is the valid value of the meter with device address 01. 498 498 521 +(% style="display:none" %) (%%) 522 + 523 + 499 499 == 1.4 Example 4: Circuit Breaker Remote Open Close == 500 500 501 -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 SCHNEIDER SMART and Monitor and control your cabinet remotely with no wires and with Dragino RS485-LN LoRaWAN technology. The structure is like below: 502 502 527 +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 SCHNEIDER SMART and Monitor and control your cabinet remotely with no wires and with Dragino RS485-LN LoRaWAN technology. 528 + 529 +The structure is like below: 530 + 503 503 [[image:image-20220527094330-30.png]] 504 504 505 -Connection 533 +**Connection** 506 506 507 -* [[Circuit Breaker Remote Open Close>>url:http://www.dragino.com/downloads/index.php?dir=RS485-LN/Application_Note/Circuit_Breaker_Remote_Open_Close/]] : Configure Documen 508 508 536 +* 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"]] 537 + 538 + 509 509 == 1.5 Example 5: SEM Three Energy Meter with RS485-BL or RS485-LN == 510 510 541 + 511 511 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: 512 512 513 -* [[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 ]] : Configure Document ForRS485-BL544 +* 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);"]] 514 514 515 -* [[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 ]] : Configure Documentfor RS485-LN546 +* 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"]] 516 516 517 -== 1.6 Example 6:CEM C31 485-T1-MID Energy Meter with RS485-LN == 518 518 549 +== 1.6 Example 6: CEM C31 485-T1-MID Energy Meter with RS485-LN == 550 + 551 + 519 519 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: 520 520 521 -* [[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 ]] : Configure Document ForRS485-LN554 +* 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);"]] 522 522 523 -== 1.7 Example 7:Schneider Electric PLC M221 with RS485-BL == 524 524 557 +== 1.7 Example 7: Schneider Electric PLC M221 with RS485-BL == 558 + 559 + 525 525 [[image:image-20220527094556-31.png]] 526 526 562 + 527 527 Network Structure 528 528 529 529 * [[Reference Instruction>>url:https://www.dragino.com/downloads/index.php?dir=RS485-LN/Application_Note/Schneider%20Electric%20PLC/]] 566 + 567 +== == 568 + 569 +== 1.8 Example 8: This sketch is supposed to test Dragino RS485-BL (Modbus master), using an Arduino UNO as a Modbus slave. == 570 + 571 +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. 572 + 573 +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. 574 + 575 +This is released the code under GNU LGPL licence on Github: 576 + 577 +[[https:~~/~~/github.com/zorbaproject/ArduinoModbusForDraginoRS485>>url:https://github.com/zorbaproject/ArduinoModbusForDraginoRS485]] 578 + 579 +