MPI:Multi Point Interface,多点接口
物理层:RS-485,通信速率通常默认设置为187.5kbit/s。
每个S7系列的CPU都集成了MPI通信协议,因此,不需要额外的硬件就可以实现PLC之间的数据交换了。
PLC也可以在MPI协议下,与PG/PC或工程师站、安装有WinCC等人机交互软件的电脑等进行通讯。要求PC端配置支持MPI协议的通讯网卡,比如CP5611、CP5613等,当然也可以选用MPI-USB适配器做物理通讯连接。
MPI网络最多可以连接32个节点,最大通信距离为50米,但可以通过中继器来扩展长度。
通过MPI实现PLC之间通信有三种方式:全局数据包通信方式、无组态连接通信方式和组态连接通信方式。这里,我们以“全局数据通信”为例做简单介绍。
假设我们要在S7-300和S7-400两块PLC之间做全局数据通信,如图1所示。
图1 两PLC组态全局数据通信
1、选择任意一个CPU,打开“硬件组态”界面,创建一条MPI网络,如图2所示,我们在CPU315-2DP中创建名为“MPI(1)”的网络。注意,站地址可任意设置,这里设为“4”。
图2 配置MPI网络
2、打开另一个CPU的“硬件组态”,将该CPU挂在“MPI(1)”网络上,如图3所示。
图3 连接到现有的MPI网络
3、在SIMATIC Manager的项目管理视图中,点击工具栏按钮“组态网络”检查网络拓扑,看上述组态是否正确,如图4所示。
图4 查看网络拓扑
4、打开“全局数据”组态窗口
在图4中,选中“MPI(1)”网络,右键选择“定义全局数据”,即可进入“全局数据”的组态窗口,如图5所示。
图5 “全局数据”组态窗口
5、配置需要通讯的PLC,步骤如图6所示。
图6 配置全局通讯PLC
“全局数据(GD)/ID”右侧的每一列都可以配置一个CPU,总共有15列,因此最多有15个CPU能够参与到全局通讯中。本例中,参与通讯的是CPU315-2DP和CPU416-2DP,配置好之后,见图7所示。
图7 配置全局通讯PLC
6、组态全局数据的发送和接收区
在每个CPU 栏底下填上数据的发送区和接收区。注意:发送区和接收区的长度必须一致,地址区可以为DB、M、I、Q区,S7-300地址区长度最大为22字节,S7-400地址区长度最大为54字节。组态后,如图8所示。
图8 组态全局数据的发送和接收区
7、编写收、发程序。需要在参与全局通讯的每个CPU中编写相应的收、发数据程序。可以调用SFC60/SFC61来完成发送和接收,如图9所示,为在CPU315中编写的收、发程序,CPU416中的程序类似,这里不做赘述。
图9 示例程序,全局数据的发送和接收
经过上述几步,就可以实现PLC之间的全局数据通信了。
联系客服