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