一、modbus
1.使用VI Package Manager (VIPM)安装modbus库

2.安装好后如下显示会有Modbus Library

3.Master API作为客户端,如下有一个例程

4.Slave API作为服务端,如下有一个例程

上述两个例程是通过IP 127.0.0.1可以互相通信的。数据是一直存在服务端的,服务端程序不关闭数据不会丢失。在没有PLC的情况下可以写另一端程序模拟PLC逻辑流程。
5.由于modbus函数的一个地址两个字节,PLC给的地址可能如下,modbus读0时会把0与1数据都读到。具体modbus地址与PLC地址对应关系要根据实际情况修改。
|------------------------|-----------------------|-------------------------|
| modbus address | PLC start address | PLC end address |
| 0 | 0.0 | 0.0 |
| | 0.1 | 0.1 |
| | 0.2 | 0.2 |
| | 0.3 | 0.3 |
| | 0.4 | 0.4 |
| | 0.5 | 0.5 |
| | 0.6 | 0.6 |
| | 0.7 | 0.7 |
| | 1.0 | 1.0 |
| | 1.1 | 1.1 |
| | 1.2 | 1.2 |
| | 1.3 | 1.3 |
| | 1.4 | 1.4 |
| | 1.5 | 1.5 |
| | 1.6 | 1.6 |
| | 1.7 | 1.7 |
| 10 | 10.0 | 11.7 |
| 12 | 12.0 | 15.7 |
|------------------------|-------------------------------|-------------------------|
| modbus address | PLC start address | PLC end address |
| 100 | 100.0 | 100.0 |
| | 100.1 | 100.1 |
| | 101.0 | 101.0 |
| | 101.1 | 101.1 |
| | 101.2 | 101.2 |
| 101 | 102.0 | 103.7 |
| 102 | 104.0 | 107.7 |
二、S7
通过网盘分享的文件:labview与PLC S7例程.zip
链接: https://pan.baidu.com/s/1srfp6gwApoPJB_FxzzEFAg?pwd=yp5d 提取码: yp5d
1.使用VI Package Manager (VIPM)安装S7库

2.安装好后如下显示

3.验证:
西门子plc使用如下例程下载到PLC中
通过指令编程实现S7-200 SMART 之间S7通信-SIMATIC S7-200 SMART通信-PLC-西门子下载中心常见问题大全

Labview如下:192.168.0.185为PLC的IP地址,Port默认102

多线程通信注意:每个循环的读写要使用独立的 链接。不能像第二张图使用一个 链接。

如下会报错(两个线程同时运行,应答帧数据存在被别的线程读取导致报错,两个轮流运行是可行的)
