Wiki source code of 1 Communication

Version 43.1 by Ben on 2022/08/24 11:27

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