在前面的章节讲解了无组态MPI通信、全局数据MPI通信,这些MPI的通信方式其实都适用于S7-300/400PLC与S7-400间的MPI通信,但组态MPI通信方式就只适用于后者,以下用一个例子讲解S7-300与S7-400间的MPI通信。组态方式的MPI通信的好处是处理的数据量大。
【例8-4】有两台设备,由1台CPU416-2DP和CPU314C-2DP控制,要求实时从设备1上CPU416-2DP的MB10~MB14发出5个字节到设备2的CPU314C-2DP的MB10~MB14,从设备2上的CPU314C-2DP的MB30~MB34发出5个字节到设备1的CPU416-2DP的MB30~MB34。
解:将设备1上的CPU416-2DP作为主站,主站地址为2,将设备2上的CPU314C-2DP作为从站,从站地址为3。
1.主要软硬件配置
①1套STEP7V5.5SP4。
②1台CPU314C-2DP。
③1台CPU416-2DP。
④1根编程电缆。
⑤1根PROFIBUS网络电缆(含两个网络总线连接器)。
MPI通信硬件配置图如图8-52所示。

图8-52 MPI通信硬件配置图
2.硬件组态
1)新建项目。新建项目,命名为“MPI_400”,插入站点和CPU,并将建立SLAVE和MASTER的MPI连接,其中MASTER的MPI地址为“2”,SLAVE的MPI地址为“3”,如图8-53所示,再单击“MPI(1)”标志,弹出如图8-54所示的界面。

图8-53 新建项目
2)新建连接。如图8-54所示,选中“1”处,单击鼠标右键,弹出快捷菜单,单击“插入新连接”命令,弹出如图8-55所示的界面。

图8-54 新建连接
3)选择CPU的连接方式。如图8-55所示,选中“CPU314C-2DP”和“S7连接”,单击“应用”按钮,弹出如图8-56所示的界面。
4)选择MPI块参数。如图8-56所示,单击“确定”按钮,硬件组态完成。

图8-55 选择CPU的连接方式

图8-56 块参数(https://www.xing528.com)
3.相关指令介绍
PUT(SFB15)是发送指令,通过使用SFB15“PUT”,可以将数据写入到远程CPU。在REQ的上升沿处发送数据。在REQ的每个上升沿处传送参数ID、ADDR_1和SD_1。在每个作业结束之后,可以给ID、ADDR_1和SD_1参数分配新数值。其各参数的含义见表8-7。
表8-7 PUT(SFB15)指令格式

GET(SFB14)是接收指令,通过SFB14“GET”,从远程CPU中读取数据。在REQ的上升沿处读取数据。在REQ的每个上升沿处传送参数ID、ADDR_1和RD_1。在每个作业结束之后,可以分配新数值给ID、ADDR_1和RD_1参数。其各参数的含义见表8-8。
表8-8 GET(SFB14)指令格式

【关键点】PUT(SFB15)和GET(SFB14)指令的参数ID设定如图8-56所示,本通信使用OSI模型的第1、2和7层。
4.编写程序
主站的梯形图程序如图8-57、图8-58所示。

图8-57 主站OB35梯形图

图8-58 主站OB1梯形图
【关键点】从站中不需要编写程序,MPI、PROFIBUS-DP以及以太网的S7通信与以上程序相同。
5.SFB通信简介
SFB块存在于所有的S7-400CPU中,被用于同S7/M7-300/400CPU交换数据。使用这些块,最多可有64KB的数据通过多种子网(MPI、PROFIBUS、工业以太网)传输。SFB通信有如下特点:
1)使用MPI、K-Bus、PROFIBUS或工业以太网进行数据交换。
2)通过连接表组态连接。
3)通过完全重新起动建立连接并使连接永久存在(即使是在STOP模式)。
4)用户数据大小可达64KB。
5)通信服务也可用于控制(停止、起动)通信伙伴。
6)SFB只存在于S7-400CPU,FB用于S7-300。
7)通过一个连接可以处理不同的任务。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。
