Wiki source code of 1 Communication

Version 66.1 by Ben on 2022/08/24 11:59

Show last authors
1 = (% style="color:inherit; font-family:inherit" %)**WECON PLC**(%%) =
2
3 == **LX3V Serial Protocol** ==
4
5 Supported series: WECON LX2V/ LX2E/ LX3V/LX3VP/LX3VE/LX3VM
6
7 **HMI Settings**
8
9 |**Item**|**Settings**|**Note**
10 |Protocol|WECON LX2V/ LX2E/ LX3V/LX3VP/LX3VE/LX3VM|
11 |Connection|RS422/RS485|
12 |Baud rate|9600|
13 |Data bit|7|
14 |Parity|EVEN|
15 |Stop bit|1|
16 |PLC station No.|1|
17
18 **Address List**
19
20 |**Type**|**Device registers**|**HMI registers**|**Format**|**Range**|**Note**
21 |(% rowspan="6" %)Bit|X|X|Xo|0~~303237|
22 |Y|Y|Y o|0~~303237|
23 |M|M|M d|0~~99999|
24 |T|T|T d|0~~99999|
25 |C|C|C d|0~~99999|
26 |S|S|S d|0~~99999|
27 |(% rowspan="8" %)Word|X|X|Xo|0~~303237|
28 |Y|Y|Y o|0~~303237|
29 |M|M|M d|0~~99999|
30 |T|T|T d|0~~99999|
31 |C|C|C d|0~~199|
32 |D|D|D d|0~~7999|
33 |S|S|S d|0~~99999|
34 |SD|SD|SD d|8000~~9999|
35
36 **Cable Wiring**
37
38 * **RS485**
39
40 [[image:image-20220822172124-1.png]]
41
42 * **RS422**
43
44 [[image:image-20220822172228-2.png]]
45
46 == **LX5V Serial Protocol** ==
47
48 This example introduces the establishment of serial port communication between Wecon V-BOX and LX5V. It is introduced through three parts: PLC software configuration, HMI software configuration, and hardware wiring.
49
50 **Software configuration of PLC**
51
52 **1)PLC programming software**
53
54 [[image:image-20220822172553-1.png]]
55
56 **2)New PLC project**
57
58 Click New Project and select the PLC model.
59
60 [[image:image-20220822172623-2.png]]
61
62 **3)Set Serial port parameters**
63
64 Follow the steps below to configure Serial port parameters
65
66 Baud rate:115200
67
68 Data bit:8
69
70 Stop bit:1
71
72 Parity:No verification
73
74 [[image:image-20220822172657-3.png]]
75
76 **4)Registers list**
77
78 [[image:image-20220822172730-4.png]]
79
80 **V-BOX software configuration**
81
82 **1)V-BOX programming software**
83
84 [[image:image-20220824104124-1.png]]
85
86 **2)V-NET add device**
87
88 Open V-NET client software → add device. As shown in the figure below, click "+" in the order of steps, and the Add Device window will pop up, enter the access key, password and remark, to add the device.
89
90 [[image:image-20220824104909-2.png]]
91
92
93 **3)Set communication port parameters**
94
95 Click the communication configuration button on the left to find the communication protocol with LX5V. After selecting the protocol, configure the communication parameters of the COM port.
96
97 Baud rate:115200
98
99 Data bit:8
100
101 Stop bit:1
102
103 Parity:No verification
104
105 [[image:image-20220811104012-1.png]]
106
107
108 **hardware connection**
109
110 **1)Hardware wiring diagram**
111
112 This example introduces WeconHMI with LX5V PLC to establish communication through serial port. The connection diagram is as follows:
113
114
115
116 [[image:image-20220811103005-4.png]]
117
118 [[image:image-20220811103227-7.png]]
119
120 The above are all the steps for establishing serial port communication between Wecon HMI with LX5V PLC.
121
122 == **LX5V-N Ethernet protocol** ==
123
124 This example introduces the establishment of Ethernet communication between Wecon HMI and LX5V. It is introduced through three parts: PLC software configuration, HMI software configuration, and hardware wiring.
125
126 **Software configuration of PLC**
127
128 **1)PLC programming software**
129
130 [[image:image-20220810164710-1.png]]
131
132 **2)New PLC project**
133
134 Click New Project and select the PLC model.
135
136 [[image:image-20220811115454-1.png]]
137
138 **3)Set Ethernet port parameters**
139
140 Follow the steps below to configure Ethernet parameters
141
142 PLC IP address:192.168.39.200
143
144 default gateway:192.168.39.1
145
146 subnet mask:255.255.255.0
147
148 [[image:image-20220811140530-2.png]]
149
150 **4)Registers list**
151
152 [[image:image-20220811102219-3.png]]
153
154 **HMI software configuration**
155
156 **1)HMI programming software**
157
158 [[image:image-20220810171237-4.png]]
159
160 **2)New HMI project**
161
162 Click New Project and select the HMI model.
163
164 [[image:image-20220810172010-5.png]]
165
166 **3)Set communication port parameters**
167
168 Click the project setting button on the left to configure the IP address of the HMI machine to ensure that the HMI and PLC IP remain in a local area network.
169
170 HMI IP address:192.168.39.201
171
172 default gateway:192.168.39.1
173
174 subnet mask:255.255.255.0
175
176 [[image:image-20220811170753-2.png]]
177
178 Next, click Communication Settings to configure the IP of the HMI communication object.
179
180 [[image:image-20220811163047-1.png]]
181
182 **hardware connection**
183
184 **1)Hardware wiring diagram**
185
186 This example introduces WeconHMI with LX5V-N PLC to establish communication through ethernet. The connection diagram is as follows:
187
188 [[image:image-20220811170248-1.png]]
189
190 The above are all the steps for establishing ethernet communication between Wecon HMI with LX5V PLC.
191
192 (% style="text-align:center" %)
193 [[image:1624348978863-771.png||queryString="width=812&height=494" height="487" width="800" class="img-thumbnail"]]
194
195 = **Rockwell PLC** =
196
197 == (% id="cke_bm_5621S" style="display:none" %)** **(%%)**MicroLogix Protocol** ==
198
199 MicroLogix 1000/1100/1200/1400/1500; SLC 5/03 5/04 5/05 PLC-5
200
201 **HMI Settings**
202
203 |**Item**|**Settings**|**Note**
204 |Protocol|Allen-Bradlley MicroLogix|
205 |Connection|RS232|
206 |Baud rate|19200|
207 |Data bit|8|
208 |Parity|None|
209 |Stop bit|1|
210 |PLC station No.|1|
211
212 **Address List**
213
214 |**Type**|**Device registers**|**Format**|**Range**|**Note**
215 |(% rowspan="5" %)Bit|I|I d.d|0.0~~255.15|
216 |O|O d.d|0.0~~255.15|
217 |B|B nnhh.dd|0.0~~ffff.15|nn: block number (hex)
218 |S|S d.d|0.0~~255.15|
219 |N|N nnhh.dd|0.0~~ffff.15|nn: block number (hex)
220 |(% rowspan="9" %)Word|S|S d|0~~255|
221 |TS|TS nnhh|0~~ffff|(% rowspan="8" %)nn: block number (hex)
222 |TP|TP nnhh|0~~ffff
223 |CS|CS nnhh|0~~ffff
224 |CP|CP nnhh|0~~ffff
225 |N|N nnhh|0~~ffff
226 |C|C nnhh|0~~ffff
227 |T|T nnhh|0~~ffff
228 |R|R nnhh|0~~ffff
229
230 **Cable Wiring**
231
232 [[image:image-20220824110724-1.png]]
233
234
235
236 == **CompactLogix Protocol** ==
237
238 (((
239 (((
240 This example introduces the establishment of Ethernet communication between Wecon V-box and CompactLogix L1769. It is introduced through three parts: PLC software configuration, V-box software configuration, and hardware wiring.
241 )))
242 )))
243
244 (((
245 (% class="wikigeneratedid" id="HSoftwareconfigurationofPLC" %)
246 (((
247 **Software configuration of PLC**
248 )))
249
250 (% class="wikigeneratedid" id="HPLCprogrammingsoftware" %)
251 (((
252 **1)PLC programming software**
253 )))
254
255 [[image:image-20220714162600-1.png]]
256
257 (% class="wikigeneratedid" id="HNewPLCproject" %)
258 (((
259 **2)New PLC project**
260 )))
261
262 (((
263 (((
264 Click New Project and select the PLC model.
265 )))
266 )))
267
268 (((
269 [[image:image-20220714162617-2.png]]
270 )))
271
272 (((
273
274
275 [[image:image-20220714162652-4.png]]
276 )))
277
278 (((
279 (% class="wikigeneratedid" id="HSetEthernetparameters" %)
280 (((
281 **3)Set Ethernet parameters**
282 )))
283
284 (((
285 (((
286 (((
287 Follow the steps below to configure Ethernet parameters
288 )))
289 )))
290 )))
291
292 (((
293 (((
294 (((
295 PLC IP address:192.168.40.101
296 )))
297 )))
298 )))
299
300 (((
301 (((
302 (((
303 default gateway:192.168.40.1
304 )))
305 )))
306 )))
307
308 (((
309 (((
310 (((
311 subnet mask:255.255.255.0
312 )))
313 )))
314 )))
315
316 (((
317 [[image:image-20220714162713-5.png]]
318 )))
319
320 (((
321
322 )))
323
324 (((
325 (% class="wikigeneratedid" id="HV-boxsoftwareconfiguration" %)
326 (((
327 **V-box software configuration**
328 )))
329
330 (% class="wikigeneratedid" id="HV-boxprogrammingsoftware" %)
331 (((
332 **1)V-box programming software**
333 )))
334
335 (% class="wikigeneratedid" %)
336 (((
337 [[image:image-20220714162725-6.png]]
338 )))
339
340 (% class="wikigeneratedid" id="HConfiguredevicenetwork" %)
341 (((
342 **2)Configure device network**
343 )))
344
345 (((
346 (((
347 (((
348 Click the Configuration Download button[[image:image-20220714115308-8.png||height="22" width="15"]], It is used to configure the device network, update the device time, obtain the device machine code, check the device network, etc.
349 )))
350
351 (((
352 In the example below, the IP address of V-Box is configured as 192.168.40.66, and the networking method is 4G connection
353 )))
354 )))
355 )))
356
357 (((
358 (((
359 [[image:image-20220714162737-7.png]]
360
361
362 )))
363 )))
364 )))
365 )))
366
367 (% class="wikigeneratedid" id="HV-netadddevice" %)
368 (((
369 **3)V-net add device**
370 )))
371 )))
372
373 (((
374 (((
375 Open VNET client software → add device. As shown in the figure below, click "+" in the order of steps, and the Add Device window will pop up, enter the device machine code/product code, device password, and device alias to add the device.   [[image:image-20220714162752-8.png]]
376 )))
377
378
379 )))
380
381 (((
382 (% class="wikigeneratedid" id="HSetcommunicationportparameters" %)
383 (((
384 **4)Set communication port parameters**
385 )))
386
387 (((
388 In the device list on the left, find the Vbox that communicates with the L1769, click it and select configuration,communication port configuration in the main interface to add a communication protocol.
389 )))
390
391 [[image:image-20220714162805-9.png]]
392 )))
393
394 (((
395 The communication port is selected as Ethernet, the device type is selected as Allen-Bradley, the protocol is Allen-BradleyMicro850_FreeTag EthemetIP, and the IP is the internal IP address of the L1769 PLC. The port number is 44818.
396 )))
397
398 [[image:image-20220714162814-10.png]]
399
400
401 (((
402 After adding the protocol Allen-BradleyMicro850_FreeTag, click[[image:image-20220714143838-2.png]]icon add label.[[image:image-20220714162827-11.png]]
403 )))
404
405 (% class="wikigeneratedid" id="HEngineeringproduction" %)
406 (((
407 **5)Engineering production**
408 )))
409
410 (% class="wikigeneratedid" %)
411 (((
412 (((
413 According to your own needs, use the V-NET client software to edit the required data monitoring points.
414 )))
415
416 [[image:image-20220714162841-12.png]]
417
418
419 (((
420 **hardware connection**
421 )))
422 )))
423
424 (((
425 **1)Hardware wiring diagram**
426 )))
427
428 (((
429 (((
430 This example introduces Wecon V-box with Allen-Bradley L1769 PLC to establish communication through Ethernet. The connection diagram is as follows:
431 )))
432
433 [[image:image-20220714162856-13.png]]
434
435 (((
436 The above are all the steps for establishing Ethernet communication between Wecon V-box with CompactLogix L1769 PLC.
437
438
439 == **Allen-Bradley Ethernet DF1** ==
440
441 [[download link>>https://ftp.we-con.com.cn/Download/WIKI/V-BOX/Demo/%E9%80%9A%E8%AE%AF%E6%A1%88%E4%BE%8B/Allen-Bradley%20Ethernet%20DF1.zip]]
442
443
444 = **Siemens PLC** =
445
446 == **S7-200 Smart Ethernet Protocol** ==
447
448 [[download link>>https://ftp.we-con.com.cn/Download/WIKI/V-BOX/Demo/%E9%80%9A%E8%AE%AF%E6%A1%88%E4%BE%8B/Communication%20with%20S7-200%20Smart.zip]]
449 )))
450 )))
451
452 == **S7-1200 Ethernet Protocol** ==
453
454 [[download link>>https://ftp.we-con.com.cn/Download/WIKI/V-BOX/Demo/%E9%80%9A%E8%AE%AF%E6%A1%88%E4%BE%8B/Communicate%20with%20S7-1200%20via%20Ehernet.zip]]
455
456 = **Mitsubishi PLC** =
457
458 == **Mitsubishi FX Series Protocol** ==
459
460 [[download link>>url:https://ftp.we-con.com.cn/Download/WIKI/V-BOX/Demo/%E9%80%9A%E8%AE%AF%E6%A1%88%E4%BE%8B/Communicate%20with%20Mitsubishi%20FX%20Series.zip]]
461
462 = **Delta PLC** =
463
464 == **DVP Ethernet Protocol** ==
465
466 [[download link>>https://ftp.we-con.com.cn/Download/WIKI/V-BOX/Demo/%E9%80%9A%E8%AE%AF%E6%A1%88%E4%BE%8B/Delta%20DVP%20Ethernet.zip]]
467
468 == **DVP Serial Protocol** ==
469
470 [[download link>>https://ftp.we-con.com.cn/Download/WIKI/V-BOX/Demo/%E9%80%9A%E8%AE%AF%E6%A1%88%E4%BE%8B/Delta%20DVP%20Ethernet.zip]]
471
472 = **Omron PLC** =
473
474 == **CP1 Series Protocol** ==
475
476 [[download link>>https://ftp.we-con.com.cn/Download/WIKI/V-BOX/Demo/%E9%80%9A%E8%AE%AF%E6%A1%88%E4%BE%8B/Communication%20with%20ORMON%20CP1%20Series.zip]]
477
478 == **CJ2M Series Protocol** ==
479
480 [[download link>>https://ftp.we-con.com.cn/Download/WIKI/V-BOX/Demo/%E9%80%9A%E8%AE%AF%E6%A1%88%E4%BE%8B/Communication%20with%20ORMON%20CJ2M.zip]]
481
482 = **Modbus RTU** =
483
484 == **V-BOX as master** ==
485
486 Select the protocol “(% class="mark" %)Modbus RTU Slave(All Fuction)”,
487
488 (% class="mark" %)then set BaudRate,Port,Stop Bit,Data Bit,Parity
489
490 (% style="text-align:center" %)
491 [[image:1624342015914-382.png||height="486" width="800" class="img-thumbnail"]]
492
493 == **V-BOX as slave** ==
494
495 Select the protocol “(% class="mark" %)**Modbus RTU Master”**,
496
497 (% class="mark" %)then set BaudRate,Port,Stop Bit,Data Bit,Parity
498
499 (% style="text-align:center" %)
500 [[image:1624348709622-711.png||queryString="width=809&height=493" height="488" width="800" class="img-thumbnail"]]
501
502 **Address List**
503
504 (% class="table-bordered" %)
505 |**Type**|**Register**|**Function code & Description**
506 |(% rowspan="11" %)Word|(% rowspan="3" %)3|04 (read input register: read current binary value in one or more input registers)
507 |06 (write single register: write a binary value to a holding register)
508 |10 (write values to multiple addresses )
509 |(% rowspan="3" %)4|03 (read holding register: read current binary value in one or more holding registers)
510 |06 (write single register: write a binary value to a holding register)
511 |10 (write values to multiple addresses )
512 |(% rowspan="3" %)W6|03 (read holding register: read current binary value in one or more holding registers)
513 |06 (write single register: write a binary value to a holding register)
514 |10 (write values to multiple addresses )
515 |(% rowspan="2" %)W16|03 (read holding register: read current binary value in one or more holding registers)
516 |10 (write values to multiple addresses )
517 |(% rowspan="11" %)Bit|(% rowspan="3" %)0|01 (Read coil state)
518 |05 (Force a single coil to force the on/off state of a logic coil)
519 |0F (Write multiple bits, ie write continuously)
520 |(% rowspan="3" %)1|02 (Read the input state)
521 |05 (Force a single coil to force the on/off state of a logic coil)
522 |0F (Write multiple bits)
523 |(% rowspan="3" %)W5|01 (Read coil state to obtain the current state of a set of logic coils)
524 |05 (Force a single coil to force the on/off state of a logic coil)
525 |0F (Write multiple bits)
526 |(% rowspan="2" %)W15|01 (Read coil state to obtain the current state of a set of logic coils)
527 |0F (Write multiple bits)
528
529 == **communicate with VB inverter** ==
530
531 [[download link>>url:https://ftp.we-con.com.cn/Download/WIKI/V-BOX/Demo/%E9%80%9A%E8%AE%AF%E6%A1%88%E4%BE%8B/Communicate%20with%20VB%20inverter.zip]]
532
533 = **User define protocol** =
534
535 More serial port script instruction,please refer manual:[[Lua script function>>doc:V-BOX.V-Net.Manual.04 Lua Script.01 Lua Functions.WebHome]]~-~-->[[3.Serial port operation>>url:http://docs.we-con.com.cn/wiki/vbox/view/HMI/04.Lua%20script%20%20function%20and%20operation/01.Lua%20script%20function/#H3.Serialportoperation]]
536
537 == **Read the temperature sensor.** ==
538
539 the commond format is as beliow:
540
541 Send commond:01 03 02 00 00 03 04 73
542
543 Feedback commond:01 03 06 07 F7 0E 7E B7 35
544
545 Temperature data:07 F7,desimal = 2039,it means temperature is 20.39℃.
546
547 Humidity data:0E 7E,desimal = 3710, it mean humidity is 37.10%RH.
548
549 Script Demo:
550
551 ~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~--
552
553 function com.main()
554 ~-~-dosomething
555 openPlc()
556 end
557 function openPlc()
558 if obj then
559 ~-~- If the serial port opened,then read/write data by timing
560
561 local wri = string.pack(">HHHH",0X0103,0X0200,0X0003,0X0473)
562 local arr = reading(wri)
563 ~-~- if arr ~~=nil then
564 ~-~- if arr[1] ==33 and arr[2] ==v[2][2] and arr[3] ==v[2][3] then
565 ~-~- local A = arr[4]*256
566 ~-~- local B = A+arr[5]
567 ~-~- addr_setword(v[1],B)
568 ~-~- end
569 ~-~- end
570
571 else
572 ~-~-judge if there is a serial object, then initialize and open the serial port
573 local configs = {
574 name = 'COM1', ~-~-Select serial port COM1
575 mode = 485, ~-~-Communication mode RS485
576 baud_rate = 9600, ~-~-Baud rate 9600
577 stop_bit = 1, ~-~-stop bit 1
578 data_len = 8, ~-~-data length 8
579 check_bit = 'NONE', ~-~-no parity
580
581 }
582 obj,err = serial.open(configs) ~-~-Open serial port
583 if not obj then
584 print("serial open :failed", err) ~-~- Open serial port failed
585 end
586 end
587 end
588
589 function reading(wri)
590 obj:flush() ~-~- Clear serial port
591 obj:write(wri) ~-~- Write serial port
592 print(string.byte(wri,1,#wri))
593 obj:flush() ~-~- Clear serial port 
594 local readed =obj:read(9,1000) ~-~- Read 9 bytes, timeout 1 second
595 if readed and readed ~~= "" then 
596 ~-~- judge that a non-empty string is read
597 print(string.byte(readed,1,#readed))
598 a={string.byte(readed, 1, #readed)}
599 if nil ~~= a[4] and nil ~~= a[5] and nil ~~= a[6] and nil ~~= a[7] then
600 a1=a[4]*256+a[5]
601 a2=a[6]*256+a[7]
602 addr_setword("@HDW0",a1)
603 addr_setword("@HDW1",a2)
604 end
605 return {string.byte(readed, 1, #readed)}
606 elseif readed == nil then
607 print("serial read err:", err or "")
608 return nil
609 end
610 return nil
611 end
612
613 ~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-