问题: 如何给通信模块SFB14 (“GET”)和SFB15 (“PUT”)编程,从而实现S7-400 上的数据通信
解答: 为了在两个S7-400 站之间通过在NetPro 中组态的 一个S7 连接进行数据通信,必 须在S7 程序中调用通信函数
SFB14 (“GET”)用于从远程CPU 读取数据,SFB15 (“PUT”)用于向远程CPU写入数据
< /p> 通信模块FB14 (“GET”)和 FB15 (“PUT”)的特点 • SFB14 / SFB15 是系统函数模块,因此包含在CPU 的固件中
• SFB14 和SFB15 是异步通信函数
• 可以跨几个OB1 循环运行
• SFB14 和SFB15 通过输入参数(“REQ”)激活
• 任务结束后显示“DONE”、“NDR”或者“ERROR”
样例程序包含一个S7 连接,通过该连接,使用SFB14 从远程CPU 读取数据,使用SFB15 向远程CPU 写入数据
样例程序的说明 项目包含两个S7-500 站,它们具有 CPU 416-2DP 和CP 443-1,用于在工业以太网上通信
通 信基础是两站之间建立的S7 连接
如果通过“右键单击 > Object Properties”打开 NetPro 中的S7 连接属性,则 可以看到通信功能块的块参数“ID”
当调用SFB14 或 SFB15 时必须遵守相应的规定,以通过S7 连接实现数据通信
图1: S7 连接的属性 STEP 7 程序包含块OB100、OB1、FB100、DB100、DB200、DB201、SFB14 和 SFB15
• OB100 OB100 是一个启动型OB,并且在CPU 重启时运行
在这个OB 中,用 于触发第一次通信的使能信号是M1
0 和 M0
图 2: OB100 • OB1 OB1 被循环地调用
这个OB 包含