Wiki source code of 1 Communication

Version 74.1 by Ben on 2022/08/24 15:12

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