Version 1.8 by Xiaoling on 2022/05/12 10:03

Hide last authors
Xiaoling 1.2 1 = 1. Introduction =
Xiaoling 1.1 2
Xiaoling 1.2 3 This article provide the examples for RS485-LN to connect to different type of RS485 sensors.
Xiaoling 1.1 4
Xiaoling 1.2 5 == 1.1 Example 1: Connect to Leak relay and VFD ==
Xiaoling 1.1 6
Xiaoling 1.2 7 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:
Xiaoling 1.1 8
Xiaoling 1.3 9 [[image:https://wiki.dragino.com/images/thumb/5/5c/RS485_01.png/600px-RS485_01.png||height="297" width="534"]]
Xiaoling 1.1 10
Xiaoling 1.2 11 Connection
Xiaoling 1.1 12
Xiaoling 1.3 13 [[image:https://wiki.dragino.com/images/thumb/f/f2/RS485_02.png/600px-RS485_02.png||height="743" width="528"]](% style="display:none" %)
Xiaoling 1.1 14
Xiaoling 1.2 15 Connection
Xiaoling 1.1 16
Xiaoling 1.2 17 Related documents:
Xiaoling 1.1 18
Xiaoling 1.2 19 * [[Solar Pump with Dragino>>url:http://www.dragino.com/downloads/index.php?dir=RS485-LN/Application_Note/Relay_VFD/]] : System Structure
20 * [[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.
21 * [[Video Demo>>url:https://www.youtube.com/watch?v=TAFZ5eaf-MY&t=6s&ab_channel=XavierFlorensaBerenguer]]
Xiaoling 1.1 22
23
Xiaoling 1.2 24 == 1.2 Example 2: Connect to Pulse Counter ==
Xiaoling 1.1 25
Xiaoling 1.2 26 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:
Xiaoling 1.1 27
Xiaoling 1.2 28 [[image:https://wiki.dragino.com/images/thumb/3/34/RS485_02_1.png/600px-RS485_02_1.png||height="364" width="600"]]
Xiaoling 1.1 29
Xiaoling 1.2 30 Connection
Xiaoling 1.1 31
Xiaoling 1.2 32 [[image:https://wiki.dragino.com/images/thumb/5/5f/RS485_02_2.png/600px-RS485_02_2.png||height="337" width="600"]]
33
34 Connection
35
36 * [[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/]] : Configure Document
37 * [[Dragino Solution in Farm>>url:http://www.dragino.com/downloads/index.php?dir=RS485-LN/Application_Note/&file=Dragino%20on%20Farms.pptx]]
38
39
40 == 1.3 Example3: Use RS485-LN with energy meters ==
41
42 === 1.3.1 OverView ===
43
Xiaoling 1.5 44 (((
Xiaoling 1.6 45 **Note**:The specifications of each energy meter are different, please refer to your own energy meter specifications.
Xiaoling 1.5 46 )))
Xiaoling 1.2 47
Xiaoling 1.5 48 (((
Xiaoling 1.2 49 This example describes a single-phase meter.This is the connection between the RS485-LN and the energy meter.
Xiaoling 1.5 50 )))
Xiaoling 1.2 51
52 [[image:https://wiki.dragino.com/images/thumb/f/f4/Meter1.jpg/600px-Meter1.jpg||height="800" width="600"]]
53
54 Connection1
55
56 How to connect with Energy Meter:
57
58 Follow the instructions of the electric energy meter to connect the phase line and the neutral line, and then connect 485A+ and 485B- to RS485A and RA485B of RS485-LN respectively.
59
60 The RS485-LN can be powered by 7 ~~ 24V DC power source. Connection as below
61
62 Power Source VIN to RS485-LN VIN+
63
64 Power Source GND to RS485-LN VIN-
65
66 Once there is power, the RS485-LN will be on.
67
68 [[image:https://wiki.dragino.com/images/thumb/1/15/Meter2.jpg/600px-Meter2.jpg||height="450" width="600"]]
69
70 Connection2
71
72 [[image:https://wiki.dragino.com/images/thumb/a/a5/Meter3.jpg/600px-Meter3.jpg||height="800" width="600"]]
73
74 Connection3
75
76
77 === 1.3.2 How to use the parameters of the energy meter and MODBUS commands ===
78
Xiaoling 1.7 79 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.
Xiaoling 1.2 80
81 [[image:https://wiki.dragino.com/images/thumb/3/35/Meter4.png/600px-Meter4.png||alt="Meter4.png" height="193" width="600"]]
82
Xiaoling 1.8 83 (% class="box infomessage" %)
84 (((
Xiaoling 1.2 85 Example:AT+COMMAND1=01 03 00 00 00 01 84 0A
Xiaoling 1.8 86 )))
Xiaoling 1.2 87
88 * The first byte : slave address code (=001~247)
89 * The second byte : read register value function code
90 * 3rd and 4th bytes: start address of register to be read
91 * 5th and 6th bytes: Number of registers to read
92 * 7th and 8th bytes: CRC16 checksum from bytes 1 to 6.
93
94 How to parse the reading of the return command of the parameter:
95
Xiaoling 1.8 96 (% class="box infomessage" %)
97 (((
Xiaoling 1.2 98 Example:RETURN1:01 03 02 08 FD 7E 05
Xiaoling 1.8 99 )))
Xiaoling 1.2 100
101 * The first byte ARD: slave address code (=001~254)
102 * The second byte: Return to read function code
103 * 3rd byte: total number of bytes
104 * 4th~5th bytes: register data
105 * The 6th and 7th bytes: CRC16 checksum
106 * 08 FD is register data. Use short integer 16 bits to convert to decimal, get 2301, then 230.1V is the voltage.
107
108
109 === 1.3.3 How to configure RS485-LN and parse output commands ===
110
111 RS485-LN provides two configuration methods: AT COMMAND and DOWNLINK.
112
Xiaoling 1.8 113 ==== 1.3.3.1 via AT COMMAND: ====
Xiaoling 1.2 114
Xiaoling 1.8 115 First, we can use **AT+CFGDEV** to get the return value, and we can also judge whether the input parameters are correct.
Xiaoling 1.2 116
Xiaoling 1.8 117 (((
Xiaoling 1.2 118 If the configured parameters and commands are incorrect, the return value is not obtained.
Xiaoling 1.8 119 )))
Xiaoling 1.2 120
121 [[image:https://wiki.dragino.com/images/b/bc/AT_COMMAND1.png||height="358" width="456"]]
122
Xiaoling 1.8 123 **AT COMMAND**
Xiaoling 1.2 124
Xiaoling 1.8 125 (% class="box infomessage" %)
126 (((
Xiaoling 1.2 127 AT+DATACUTx : This command defines how to handle the return from AT+COMMANDx, max reture length is 40 bytes. AT+DATACUTx=a,b,c
Xiaoling 1.8 128 )))
Xiaoling 1.2 129
130 a: length for the return of AT+COMMAND
131
132 b:1: grab valid value by byte, max 6 bytes. 2: grab valid value by bytes section, max 3 sections.
133
134 c: define the position for valid value.
135
136 [[image:https://wiki.dragino.com/images/7/7d/AT_COMMAND2.png||height="278" width="477"]]
137
138 AT COMMAND
139
140 PAYLOAD is available after the valid value is intercepted.
141
Xiaoling 1.8 142
Xiaoling 1.2 143 [[image:https://wiki.dragino.com/images/3/3a/AT_COMMAND4.png||height="219" width="576"]]
144
145 AT COMMAND
146
147 You can get configured PAYLOAD on TTN.
148
Xiaoling 1.8 149
Xiaoling 1.2 150 [[image:https://wiki.dragino.com/images/thumb/c/c2/AT_COMMAND3.png/600px-AT_COMMAND3.png||height="138" width="600"]]
151
152 AT COMMAND
153
Xiaoling 1.8 154 **Example**: CMD1:Read current data with MODBUS command. address:0x03 AT+COMMAND1= 01 03 00 03 00 01,1
Xiaoling 1.2 155
156 RETURN1:01 03 02 00 02 39 85 00 00(return data)
157
158 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.
159
160 CMD2:Read voltage data with MODBUS command. address:0x00 AT+COMMAND2= 01 03 00 00 00 01,1
161
162 RETURN2:01 03 02 08 DC BE 1D(return data)
163
164 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.
165
166 CMD3:Read total active energy data with MODBUS command. address:0x0031 AT+COMMAND3= 01 03 00 31 00 02,1
167
168 RETURN3:01 03 04 00 00 00 44 FA 00(return data)
169
170 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.
171
172 Payload:01 00 02 39 85 08 DC 00 00 00 44
173
174 [[image:https://wiki.dragino.com/images/thumb/9/9b/AT_COMMAND10.png/600px-AT_COMMAND10.png||height="278" width="600"]]
175
176 AT COMMAND
177
178 01 is device address,00 02 is the current, 08 DC is the voltage,00 00 00 44 is the total active energy.
179
Xiaoling 1.8 180
Xiaoling 1.2 181 [[~[~[image:https://wiki.dragino.com/images/thumb/b/b8/AT_COMMAND11.png/600px-AT_COMMAND11.png~|~|height="271" width="600"~]~]>>url:https://wiki.dragino.com/index.php/File:AT_COMMAND11.png]]
182
183 AT COMMAND
184
185
Xiaoling 1.8 186 ==== 1.3.3.2 via LoRaWAN DOWNLINK ====
187
Xiaoling 1.2 188 [[image:https://wiki.dragino.com/images/thumb/f/fc/DOWNLINK_METER1.png/600px-DOWNLINK_METER1.png||height="423" width="600"]]
189
190 DOWNLINK
191
192 Type Code 0xAF
193
194 0xAF downlink command can be used to set AT+COMMANDx or AT+DATACUTx.
195
196 Note: if user use AT+COMMANDx to add a new command, he also need to send AT+DATACUTx downlink.
197
198 Format: AF MM NN LL XX XX XX XX YY
199
200 Where:
201
202 MM: the ATCOMMAND or AT+DATACUT to be set. Value from 01 ~~ 0F,
203
204 NN: 0: no CRC; 1: add CRC-16/MODBUS ; 2: set the AT+DATACUT value.
205
206 LL: The length of AT+COMMAND or AT+DATACUT command
207
208 XX XX XX XX: AT+COMMAND or AT+DATACUT command
209
210 YY: If YY=0, RS485-LN will execute the downlink command without uplink; if YY=1, RS485-LN
211
212 will execute an uplink after got this command.
213
214 Example:
215
216 AF 03 01 06 0A 05 00 04 00 01 00: Same as AT+COMMAND3=0A 05 00 04 00 01,1
217
218 [[image:https://wiki.dragino.com/images/thumb/4/45/DOWNLINK_METER2.png/600px-DOWNLINK_METER2.png||height="208" width="600"]]
219
220 DOWNLINK
221
Xiaoling 1.8 222
Xiaoling 1.2 223 [[~[~[image:https://wiki.dragino.com/images/thumb/2/20/DOWNLINK_METER3.png/600px-DOWNLINK_METER3.png~|~|height="105" width="600"~]~]>>url:https://wiki.dragino.com/index.php/File:DOWNLINK_METER3.png]]
224
225 DOWNLINK
226
Xiaoling 1.8 227
Xiaoling 1.2 228 [[image:https://wiki.dragino.com/images/thumb/2/27/DOWNLINK_METER4.png/600px-DOWNLINK_METER4.png||height="210" width="600"]]
229
230 DOWNLINK
231
Xiaoling 1.8 232
Xiaoling 1.2 233 [[~[~[image:https://wiki.dragino.com/images/thumb/3/39/DOWNLINK_METER5.png/600px-DOWNLINK_METER5.png~|~|height="176" width="600"~]~]>>url:https://wiki.dragino.com/index.php/File:DOWNLINK_METER5.png]]
234
235 DOWNLINK
236
237 [[image:https://wiki.dragino.com/images/thumb/a/a2/DOWNLINK_METER6.png/600px-DOWNLINK_METER6.png||height="365" width="600"]]
238
239 DOWNLINK
240
241
242 === 1.3.4 How to configure and output commands for RS485 to USB ===
243
244 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.
245
246 First, connect the A+ and A- of the USB to the 485 A and 485 B of the energy meter.
247
248 Open the serial port debugging, set the send and receive to HEX.
249
250 Baud rate: 9600
251
252 check digit: Even
253
254 [[image:https://wiki.dragino.com/images/thumb/8/8f/Usb_meter2.jpg/600px-Usb_meter2.jpg||height="800" width="600"]]
255
256 USB
257
258 [[image:https://wiki.dragino.com/images/thumb/6/62/Usb_meter1.jpg/600px-Usb_meter1.jpg||height="800" width="600"]]
259
260 USB
261
262 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.
263
264 Example:input:01 03 00 31 00 02 95 c4
265
266 {{{ output:01 03 04 00 00 00 42 7A 02
267 }}}
268
269 [[image:https://wiki.dragino.com/images/thumb/b/b3/Usb_meter3.jpg/600px-Usb_meter3.jpg||height="466" width="600"]]
270
271 USB
272
273 === 1.3.5 How to configure multiple devices and modify device addresses ===
274
275 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.
276
277 Set the device address according to the parameters in the appendix of the MODBUS communication protocol.
278
279 [[image:https://wiki.dragino.com/images/thumb/1/1f/Double_meter3.png/600px-Double_meter3.png||alt="Double meter3.png" height="83" width="600"]]
280
281 Example:These two meters are examples of setting parameters and device addresses.
282
283 [[image:https://wiki.dragino.com/images/thumb/e/ee/Double_meter1.jpg/600px-Double_meter1.jpg||alt="Double meter1.jpg" height="800" width="600"]]
284
285 [[image:https://wiki.dragino.com/images/thumb/7/72/Double_meter2.jpg/600px-Double_meter2.jpg||alt="Double meter2.jpg" height="800" width="600"]]
286
287 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.
288
289 We can use AT+CFGDEV to set the device address.
290
291 We modify the device address 01 of the first energy meter to 02.
292
293 [[image:https://wiki.dragino.com/images/6/6b/Double_meter4.png||alt="Double meter4.png" height="141" width="456"]]
294
295 AT+CFGDEV:01 10 00 61 00 01 02 00 02,1
296
297 * 01:device adaress
298
299 * 10:function code
300
301 * 00 61:Register address
302
303 * 00 01:Number of Registers
304
305 * 02:Number of bytes
306
307 * 00 02:Modified device address
308
309 * 1:Check code
310
311 The device address setting of the energy meter is complete.
312
313 Another energy meter is a single active energy meter with a floating-point format.
314
315 Its default device address is 01, and the following are the parameters for configuring two energy meters.
316
317 [[image:https://wiki.dragino.com/images/1/13/Meter11.png||alt="Meter11.png" height="576" width="379"]]
318
319 [[image:https://wiki.dragino.com/images/thumb/7/7e/Meter12.png/600px-Meter12.png||alt="Meter12.png" height="262" width="600"]]
320
321 PAYLOAD:01 08 DF 43 62
322
323 * 08 DF is the valid value of the meter with device address 02.
324 * 43 62 is the valid value of the meter with device address 01.
325
326
327 == 1.4 Example 4: Circuit Breaker Remote Open Close ==
328
329 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:
330
331 [[image:https://wiki.dragino.com/images/thumb/f/fa/RS485_04_2.png/600px-RS485_04_2.png||height="336" width="600"]]
332
333 Connection
334
335 * [[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
336
337
338 == 1.5 Example 5: SEM Three Energy Meter with RS485-BL or RS485-LN ==
339
340 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:
341
342 * [[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
343
344 * [[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
345
346
347 == 1.6 Example 6:CEM C31 485-T1-MID Energy Meter with RS485-LN ==
348
349 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:
350
351 * [[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
352
353
354 == 1.7 Example 7:Schneider Electric PLC M221 with RS485-BL ==
355
356 [[image:https://wiki.dragino.com/images/thumb/9/97/PLC_M221.png/600px-PLC_M221.png||height="353" width="600"]]
357
358 Network Structure
359
360 * [[Reference Instruction>>url:https://www.dragino.com/downloads/index.php?dir=RS485-LN/Application_Note/Schneider%20Electric%20PLC/]]