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. Bei1 +XWiki.Xiaoling - Content
-
... ... @@ -1,4 +1,5 @@ 1 -**Table of Contents:** 1 +(% class="wikigeneratedid" %) 2 + ** Table of** **Contents:** 2 2 3 3 {{toc/}} 4 4 ... ... @@ -7,85 +7,80 @@ 7 7 8 8 9 9 10 -= 1. Introduction = 11 += **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 == 17 +== **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 22 +[[image:image-20220527091852-1.png]] 21 21 22 - [[image:image-20220527091852-1.png||height="547" width="994"]]24 +Connection 23 23 24 -**Connection** 25 25 26 26 27 - 28 28 [[image:image-20220527091942-2.png]](% style="display:none" %) 29 29 30 - **Connection**30 +Connection 31 31 32 32 33 - (% style="color:blue" %)**Related documents:**33 +Related documents: 34 34 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);"]] 35 +* [[Solar Pump with Dragino>>url:http://www.dragino.com/downloads/index.php?dir=RS485-LN/Application_Note/Relay_VFD/]] : System Structure 36 +* [[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. 37 +* [[Video Demo>>url:https://www.youtube.com/watch?v=TAFZ5eaf-MY&t=6s&ab_channel=XavierFlorensaBerenguer]] 36 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 39 -* [[Video Demo>>url:https://www.youtube.com/watch?v=TAFZ5eaf-MY&t=6s&ab_channel=XavierFlorensaBerenguer]] 40 40 41 -== 1.2 Example 2: Connect to Pulse Counter == 42 42 42 +== **1.2 Example 2: Connect to Pulse Counter** == 43 43 44 + 44 44 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 46 47 -[[image:image-20220527092058-3.png ||height="552" width="905"]]48 +[[image:image-20220527092058-3.png]] 48 48 49 - **Connection**50 +Connection 50 50 51 51 52 52 53 -[[image:image-20220527092146-4.png ||height="507" width="906"]]54 +[[image:image-20220527092146-4.png]] 54 54 55 - **Connection**56 +Connection 56 56 57 57 58 -(% style="color:blue" %)**Related documents:** 59 +* 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 +* [[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 -* 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 61 62 -* [[Dragino Solution in Farm>>url:http://www.dragino.com/downloads/index.php?dir=RS485-LN/Application_Note/&file=Dragino%20on%20Farms.pptx]] 63 63 64 -== 1.3 Example 3: Use RS485-LN with energy meters == 65 65 66 -== =1.3.1OverView ===65 +== **1.3 Example3: Use RS485-LN with energy meters** == 67 67 67 +=== **1.3.1 OverView** === 68 68 69 69 ((( 70 - (% style="color:red" %)**Note**:**The specifications of each energy meter are different, please refer to your own energy meter specifications.**70 +**Note**:The specifications of each energy meter are different, please refer to your own energy meter specifications. 71 71 ))) 72 72 73 73 ((( 74 74 This example describes a single-phase meter.This is the connection between the RS485-LN and the energy meter. 75 - 76 - 77 77 ))) 78 78 79 79 [[image:image-20220527092419-5.png]] 80 80 81 - **Connection1**79 +Connection1 82 82 83 83 84 84 85 85 ((( 86 -(% style="color:blue" %)**How to connect with Energy Meter:** 87 - 88 - 84 +How to connect with Energy Meter: 89 89 ))) 90 90 91 91 ((( ... ... @@ -97,96 +97,88 @@ 97 97 ))) 98 98 99 99 ((( 100 -Power Source **VIN**to RS485-LN**VIN+**96 +Power Source VIN to RS485-LN VIN+ 101 101 ))) 102 102 103 103 ((( 104 -Power Source **GND**to RS485-LN**VIN-**100 +Power Source GND to RS485-LN VIN- 105 105 ))) 106 106 107 107 ((( 108 108 Once there is power, the RS485-LN will be on. 109 - 110 - 111 111 ))) 112 112 113 113 [[image:image-20220527092514-6.png]] 114 114 115 - **Connection2**109 +Connection2 116 116 117 117 118 118 119 119 [[image:image-20220527092555-7.png]] 120 120 121 - **Connection3**115 +Connection3 122 122 123 123 124 -=== 1.3.2 How to use the parameters of the energy meter and MODBUS commands === 118 +=== **1.3.2 How to use the parameters of the energy meter and MODBUS commands** === 125 125 126 - 127 127 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. 128 128 129 129 [[image:image-20220601143257-10.png]] 130 130 131 131 132 -(% style="color:blue" %)**Example:**(%%) AT+COMMAND1=01 03 00 00 00 01 84 0A 125 +(% class="box infomessage" %) 126 +((( 127 +**Example:** AT+COMMAND1=01 03 00 00 00 01 84 0A 128 +))) 133 133 134 134 * The first byte : slave address code (=001~247) 135 - 136 136 * The second byte : read register value function code 137 - 138 138 * 3rd and 4th bytes: start address of register to be read 139 - 140 140 * 5th and 6th bytes: Number of registers to read 141 - 142 142 * 7th and 8th bytes: CRC16 checksum from bytes 1 to 6. 143 143 144 144 ((( 145 - 146 - 147 - 148 148 How to parse the reading of the return command of the parameter: 138 +))) 149 149 150 -(% style="color:blue" %)**Example:**(%%) RETURN1:01 03 02 08 FD 7E 05 140 +(% class="box infomessage" %) 141 +((( 142 +**Example:** RETURN1:01 03 02 08 FD 7E 05 151 151 ))) 152 152 153 153 * The first byte ARD: slave address code (=001~254) 154 - 155 155 * The second byte: Return to read function code 156 - 157 157 * 3rd byte: total number of bytes 158 - 159 159 * 4th~5th bytes: register data 160 - 161 161 * The 6th and 7th bytes: CRC16 checksum 162 - 163 163 * 08 FD is register data. Use short integer 16 bits to convert to decimal, get 2301, then 230.1V is the voltage. 164 164 165 -=== 1.3.3 How to configure RS485-LN and parse output commands === 152 +(% class="wikigeneratedid" %) 153 +((( 154 + 155 +))) 166 166 157 +=== **1.3.3 How to configure RS485-LN and parse output commands** === 167 167 168 168 RS485-LN provides two configuration methods: AT COMMAND and DOWNLINK. 169 169 170 170 171 -==== **1.3.3.1 via AT COMMAND** ==== 162 +==== **1.3.3.1 via AT COMMAND:** ==== 172 172 164 +First, we can use **AT+CFGDEV** to get the return value, and we can also judge whether the input parameters are correct. 173 173 174 -First, we can use (% style="color:blue" %)**AT+CFGDEV**(%%) to get the return value, and we can also judge whether the input parameters are correct. 175 - 176 176 ((( 177 177 If the configured parameters and commands are incorrect, the return value is not obtained. 178 - 179 - 180 180 ))) 181 181 182 182 [[image:image-20220601143201-9.png]] 183 183 184 - **AT COMMAND**172 +AT COMMAND 185 185 186 186 187 187 (% class="box infomessage" %) 188 188 ((( 189 - (% _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,c177 + AT+DATACUTx : This command defines how to handle the return from AT+COMMANDx, max reture length is 40 bytes. AT+DATACUTx=a,b,c 190 190 ))) 191 191 192 192 a: length for the return of AT+COMMAND ... ... @@ -197,15 +197,16 @@ 197 197 198 198 [[image:image-20220601143115-8.png]] 199 199 200 - **AT COMMAND**188 +AT COMMAND 201 201 202 202 203 203 204 204 PAYLOAD is available after the valid value is intercepted. 205 205 194 + 206 206 [[image:image-20220601143046-7.png]] 207 207 208 - **AT COMMAND**197 +AT COMMAND 209 209 210 210 211 211 ... ... @@ -214,7 +214,7 @@ 214 214 [[image:image-20220601143519-1.png]] 215 215 216 216 ((( 217 - **AT COMMAND**206 +AT COMMAND 218 218 ))) 219 219 220 220 ((( ... ... @@ -222,49 +222,49 @@ 222 222 ))) 223 223 224 224 ((( 225 -(% style="color:b lue" %)**Example**:214 +(% style="color:#4f81bd" %)**Example**: 226 226 227 - (% style="color:red" %)**CMD1:**(%%)Read current data with MODBUS command. address:216 +CMD1:Read current data with MODBUS command. address:0x03 AT+COMMAND1= 01 03 00 03 00 01,1 228 228 ))) 229 229 230 230 ((( 231 -RETURN1: 220 +RETURN1:01 03 02 00 02 39 85 00 00(return data) 232 232 ))) 233 233 234 234 ((( 235 -AT+DATACUT1: 224 +AT+DATACUT1:9,1,4+5+6+7 Take the return value 00 02 39 85 as the valid value of reading current data and used to splice payload. 236 236 237 237 238 238 ))) 239 239 240 240 ((( 241 - (% style="color:red" %)**CMD2:**(%%)Read voltage data with MODBUS command. address:230 +CMD2:Read voltage data with MODBUS command. address:0x00 AT+COMMAND2= 01 03 00 00 00 01,1 242 242 ))) 243 243 244 244 ((( 245 -RETURN2: 234 +RETURN2:01 03 02 08 DC BE 1D(return data) 246 246 ))) 247 247 248 248 ((( 249 -AT+DATACUT2: 238 +AT+DATACUT2:7,1,4+5 Take the return value 08 DC as the valid value of reading voltage data and used to splice payload. 250 250 251 251 252 252 ))) 253 253 254 254 ((( 255 - (% style="color:red" %)**CMD3:**(%%)Read total active energy data with MODBUS command. address:244 +CMD3:Read total active energy data with MODBUS command. address:0x0031 AT+COMMAND3= 01 03 00 31 00 02,1 256 256 ))) 257 257 258 258 ((( 259 -RETURN3: 248 +RETURN3:01 03 04 00 00 00 44 FA 00(return data) 260 260 ))) 261 261 262 262 ((( 263 -AT+DATACUT3: 252 +AT+DATACUT3:9,1,4+5+6+7 Take the return value 00 00 00 44 as the valid value of reading total active energy data and used to splice payload. 264 264 ))) 265 265 266 266 ((( 267 -Payload: 256 +Payload:01 00 02 39 85 08 DC 00 00 00 44 268 268 ))) 269 269 270 270 [[image:image-20220601142936-6.png]] ... ... @@ -272,8 +272,8 @@ 272 272 AT COMMAND 273 273 274 274 264 +(% 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.** 275 275 276 -(% 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.** 277 277 278 278 279 279 [[image:image-20220601143642-2.png]] ... ... @@ -281,20 +281,20 @@ 281 281 AT COMMAND 282 282 283 283 284 - 285 285 ==== **1.3.3.2 via LoRaWAN DOWNLINK** ==== 286 286 287 - 288 288 [[image:image-20220527093358-15.png]] 289 289 290 290 ((( 291 - **DOWNLINK**278 +DOWNLINK 292 292 ))) 293 293 281 +((( 282 + 283 +))) 294 294 295 - 296 296 ((( 297 -(% style="color:b lue" %)**Type Code 0xAF**286 +(% style="color:#4f81bd" %)**Type Code 0xAF** 298 298 ))) 299 299 300 300 ((( ... ... @@ -305,7 +305,7 @@ 305 305 ))) 306 306 307 307 ((( 308 - (% style="color:red" %)**Note: if user use AT+COMMANDx to add a new command, he also need to send AT+DATACUTx downlink.**297 +Note: if user use AT+COMMANDx to add a new command, he also need to send AT+DATACUTx downlink. 309 309 ))) 310 310 311 311 ((( ... ... @@ -340,9 +340,10 @@ 340 340 will execute an uplink after got this command. 341 341 ))) 342 342 343 - 344 344 ((( 345 -(% style="color:blue" %)**Example:** 333 + 334 + 335 +(% style="color:#4f81bd" %)**Example:** 346 346 ))) 347 347 348 348 ((( ... ... @@ -351,36 +351,35 @@ 351 351 352 352 [[image:image-20220601144149-6.png]] 353 353 354 - **DOWNLINK**344 +DOWNLINK 355 355 356 356 357 357 358 358 [[image:image-20220601143803-3.png]] 359 359 360 - **DOWNLINK**350 +DOWNLINK 361 361 362 362 363 363 364 364 [[image:image-20220601144053-5.png]] 365 365 366 - **DOWNLINK**356 +DOWNLINK 367 367 368 368 369 369 370 370 [[image:image-20220601143921-4.png]] 371 371 372 - **DOWNLINK**362 +DOWNLINK 373 373 374 374 375 375 376 376 [[image:image-20220601142805-5.png]] 377 377 378 -**DOWNLINK** 368 +DOWNLINK 369 + 379 379 371 +=== **1.3.4 How to configure and output commands for RS485 to USB** === 380 380 381 -=== 1.3.4 How to configure and output commands for RS485 to USB === 382 - 383 - 384 384 ((( 385 385 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. 386 386 ))) ... ... @@ -399,19 +399,17 @@ 399 399 400 400 ((( 401 401 check digit: Even 402 - 403 - 404 404 ))) 405 405 406 406 [[image:image-20220527093708-21.png]] 407 407 408 - **USB**395 +USB 409 409 410 410 411 411 412 412 [[image:image-20220527093747-22.png]] 413 413 414 - **USB**401 +USB 415 415 416 416 417 417 ... ... @@ -420,24 +420,20 @@ 420 420 ))) 421 421 422 422 ((( 423 -(% style="color:b lue" %)**Example:** (%%)input:01 03 00 31 00 02 95 c4410 +(% style="color:#4f81bd" %)**Example:** (%%)input:01 03 00 31 00 02 95 c4 424 424 ))) 425 425 426 426 ((( 427 427 output:01 03 04 00 00 00 42 7A 02 428 - 429 - 430 430 ))) 431 431 432 432 [[image:image-20220527093821-23.png]] 433 433 434 - **USB**419 +USB 435 435 436 436 422 +=== **1.3.5 How to configure multiple devices and modify device addresses** === 437 437 438 -=== 1.3.5 How to configure multiple devices and modify device addresses === 439 - 440 - 441 441 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. 442 442 443 443 ((( ... ... @@ -449,15 +449,13 @@ 449 449 [[image:image-20220601142044-1.png]] 450 450 451 451 452 - (% style="color:blue" %)**Example**(%%):435 +**Example**:These two meters are examples of setting parameters and device addresses. 453 453 454 - 455 455 [[image:image-20220527093950-25.png]] 456 456 457 457 458 458 [[image:image-20220527094028-26.png]] 459 459 460 - 461 461 ((( 462 462 ((( 463 463 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. ... ... @@ -466,7 +466,7 @@ 466 466 467 467 ((( 468 468 ((( 469 -We can use (% style="color:blue" %)**AT+CFGDEV**(%%)to set the device address.450 +We can use AT+CFGDEV to set the device address. 470 470 ))) 471 471 ))) 472 472 ... ... @@ -478,15 +478,14 @@ 478 478 479 479 [[image:image-20220601142354-2.png]] 480 480 481 - 482 482 (% class="box infomessage" %) 483 483 ((( 484 484 **AT+CFGDEV:01 10 00 61 00 01 02 00 02,1** 485 485 ))) 486 486 487 -* 01: 467 +* 01:device adaress 488 488 489 -* 10: 469 +* 10:function code 490 490 491 491 * 00 61:Register address 492 492 ... ... @@ -509,63 +509,40 @@ 509 509 510 510 [[image:image-20220601142607-4.png]] 511 511 492 +**PAYLOAD:01 08 DF 43 62** 512 512 513 -(% style="color:blue" %)**PAYLOAD: 01 08 DF 43 62** 514 - 515 515 * 08 DF is the valid value of the meter with device address 02. 516 516 * 43 62 is the valid value of the meter with device address 01. 517 517 518 -(% style="display:none" %) (%%) 519 519 520 - 521 521 == 1.4 Example 4: Circuit Breaker Remote Open Close == 522 522 500 +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: 523 523 524 -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. 525 - 526 -The structure is like below: 527 - 528 528 [[image:image-20220527094330-30.png]] 529 529 530 - **Connection**504 +Connection 531 531 506 +* [[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 532 532 533 -* 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"]] 534 - 535 535 == 1.5 Example 5: SEM Three Energy Meter with RS485-BL or RS485-LN == 536 536 537 - 538 538 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: 539 539 540 -* 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);"]]512 +* [[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 For RS485-BL 541 541 542 -* 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"]]514 +* [[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 Document for RS485-LN 543 543 544 -== 1.6 Example 6: 516 +== 1.6 Example 6:CEM C31 485-T1-MID Energy Meter with RS485-LN == 545 545 546 - 547 547 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: 548 548 549 -* 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);"]]520 +* [[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 For RS485-LN 550 550 551 -== 1.7 Example 7: 522 +== 1.7 Example 7:Schneider Electric PLC M221 with RS485-BL == 552 552 553 - 554 554 [[image:image-20220527094556-31.png]] 555 555 556 - 557 557 Network Structure 558 558 559 559 * [[Reference Instruction>>url:https://www.dragino.com/downloads/index.php?dir=RS485-LN/Application_Note/Schneider%20Electric%20PLC/]] 560 - 561 -== 1.8 Example 8: This sketch is supposed to test Dragino RS485-BL (Modbus master), using an Arduino UNO as a Modbus slave. == 562 - 563 -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. 564 - 565 -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. 566 - 567 -This is released the code under GNU LGPL licence on Github: 568 - 569 -[[https:~~/~~/github.com/zorbaproject/ArduinoModbusForDraginoRS485>>url:https://github.com/zorbaproject/ArduinoModbusForDraginoRS485]] 570 - 571 -