多语言展示
当前在线:743今日阅读:167今日分享:16

S7-1200与LabVIEW之间进行TCP/IP通信

S7-1200 PLC支持TCP通信,LabVIEW中也有TCP函数,本文介绍怎样实现二者之间的通信。
工具/原料
1

S7-1200 PLC

2

TIA Portal编程软件

3

LabVIEW软件

S7-1200 PLC组态和编程
1

打开TIA Portal编程软件,新建一个项目,添加新设备,注意设备型号和版本必须选择正确。

2

设备组态中,添加新子网,设置PLC的IP地址。本文按默认值192.168.0.1。

3

将TSEND_C函数块拖到主程序中,拖放后会弹出建立DB块的窗口,选默认即可。这个函数块的作用就是自动建立TCP连接,并发送数据给指定的伙伴。

4

TSEND_C函数块的REQ端,接一个请求信号。本文中利用I0.0触点进行请求,REQ端每监测到I0.0出现一次上升沿,就会触发一次TCP发送。

5

点击TSEND_C块上的组态按钮,进入组态窗口,伙伴选择“未指定”,连接数据选择“新建”。

6

系统会自动建立一个连接数据,现在可以填写伙伴的IP地址,填入本机的IP地址,注意必须与PLC在同一个网段内,勾选伙伴“主动建立连接”,填写PLC的端口,本文按默认的2000端口。这样,伙伴就可以按IP和端口访问到PLC了。

7

块参数的连接状态(CONT),填写TRUE,这可以让函数块与伙伴建立连接后,一直保持连接,而不是在调用完后就断开。此时,连接参数和块参数都组态完成,状态是绿色的勾勾。

8

接下来要指定发送的数据了,本文要发送字符串“Hello World!”,所以新建一个全局DB,在其中建立一个String型变量,赋值为“Hello World!”。

9

主程序中,将刚才的字符串变量赋给TSEND_C函数块的DATA端口。

10

编译,下载程序到PLC。

LabVIEW编程和测试
1

LabVIEW中,新建一个项目,新建一个VI,在VI的后面板中放置3个函数:打开TCP连接、读取TCP数据、关闭TCP连接,这3个函数都位于“数据通信”组中。

2

连接3个函数。打开TCP连接函数的IP和端口为PLC的IP和端口,一定填写正确,否则不可能建立与PLC的连接。读取TCP数据函数的数据长度,比PLC发送数据的长度长一点即可。

3

点运行,这时数据输出中没有任何数据,这是因为PLC中的发送还没有被触发的缘故。闭合触发触点(本例中为I0.0),则立刻接收到了数据!说明通信成功!

注意事项

细心的朋友可能会发现,接收的数据前有一个乱码,这是发送数据的长度,可不必理会,LabVIEW编程中舍去即可。

推荐信息