产品描述
沈阳西门子一级代理商 沈阳西门子一级代理商 沈阳西门子一级代理商
S7 通信是 S7 系列 PLC 基千 MPI、PROFIBUS、ETHERNET 网络的一种优化的通信协议,主要用千 S7-300/400PLC 之间的通信。S7-200 SMARTPLC V2.0 版本支持 SMART PLC 之间的 PUT/GET 通讯,经过测试发现 S7-300/400 集成的 PN 口与 S7-200 SMART PLC 之间的 PUT/GET 通讯也是可以成功的,但是需要 S7-300/400 侧编程调用 PUT/GET指令。S7-300/400 集成 PN 口调用的功能块的调用如图 1、图 2 所示。
块S7-400 | 块S7-300 | 描述 | 简要描述 |
SFB 14 | FB 14 | 读数据 | 单边编程读访问。 |
SFB 15 | FB 15 | 写数据 | 单边编程写访问。 |
表1
图1
图2
要通过 S7-300/400 CPU 的 集成 PROFINET 接口实现 S7 通信,需要在硬件组态中建立连接。
2硬件及网络组态CPU 采用 1 个 315-2PN/DP,1 个 S7-200 SMART PLC 使用以太网进行通信。
在 STEP7 中创建一个新项目,项目名称为 S7-300-SMART。插入 1 个 S7-300 站,在硬件组态中插入 CPU 315-2 PN/DP。如图 3 所示。
图3
设置 CPU 315-2PN/DP 的 IP 地址:192.168.0.1,如图 4 所示。硬件组态完成后,即可下载该组态。
图4
打开“NetPro'设置网络参数,选中CPU 315-2PN/DP,在连接列表中建立新的连接。步骤如图 5 所示。
图5
选择 Unspecified 站点,选择通讯协议 S7 connection,点击 Apply,如图 6 所示。
图6
在弹出的 S7 connection 属性对话框中,勾选 Establish an active connection,设置Partner address:192.168.0.2(S7-200 SMART PLC IP 地址),如图 7 所示。
图7
点击 Address Details ,再弹出来的对话框设置 Partner 的 Slot 为 1,如图 8 所示。点击
OK 即可关闭该对话框。
图8
网络组态创建完成后,需要编译,如图 9 所示。
图9
网络组态编译无错,鼠标先点击 CPU 315-2PN/DP ,然后点击下载按钮下载网络组态,步骤如图 10 所示。
图10
3软件编程可以通过 SFB/FB 14 'GET',从远程 CPU 中读取数据。
S7-300:在 REQ 的上升沿处读取数据。在 REQ 的每个上升沿处传送参数 ID、ADDR_1和 RD_1。在每个作业结束之后,可以分配新数值给 ID、ADDR_1 和 RD_1 参数。
S7-400:在控制输入 REQ 的上升沿处启动 SFB。在此过程中,将要读取的区域的相关指针(ADDR_i)发送到伙伴 CPU。远程伙伴返回此数据。在下一个 SFB/FB 调用处,已接收的数据被复制到组态的接收区(RD_i)中。必须要确*参数 ADDR_i 和 RD_i 定义的区域在长度和数据类型方面要相互匹配。
通过状态参数 NDR 数值为 1 来指示此作业已完成。只有在**个作业已经完成之后, 才能重新激活读作业。远程 CPU 可以处千RUN 或 STOP 工作状态。如果正在读取数据时发生访问故障,或如果数据类型检查过程中出错,则出错和警告信息将通过 ERROR 和STATUS 输出表示。
通过使用 SFB/FB 15 'PUT',可以将数据写入到远程 CPU。
S7-300:在 REQ 的上升沿处发送数据。在 REQ 的每个上升沿处传送参数 ID、ADDR_1和 SD_1。在每个作业结束之后,可以给 ID、ADDR_1 和 SD_1 参数分配新数值。
S7-400:在控制输入 REQ 的上升沿处启动 SFB。在此过程中,将指向要写入数据的区域(ADDR_i)的指针和数据(SD_i)发送到伙伴 CPU。远程伙伴将所需要的数据保存在随数据一起的地址下面,并返回一个执行确认。必须要确*参数 ADDR_i 和 SD_i 定义的区域在编号、长度和数据类型方面相互匹配。
如果没有产生任何错误,则在下一个 SFB/FB 调用时,通过状态参数DONE 来指示,其数值为 1。只有在最后一个作业完成之后,才能再次激活写作业。远程 CPU 可以处千RUN 或 STOP 模式。如果正在写入数据时发生访问故障,或如果执行检查过程中出错,则出错和警告信息将通过 ERROR 和 STATUS 输出表示。
打开 SIMATIC 315PN-1 的 OB1,在 OB1 中依次调用 FB14,FB15 如图 11、图 12 所示:
图11
参数 | 描述 | 数据类型 | 存储区 | 描述 |
REQ | INPUT | BOOL | I、Q、M、D、L | 上升沿触发调用功能块 |
ID | INPUT | WORD | M、D、常数 | 地址参数 ID |
ERROR | OUTPUT | BOOL | I、Q、M、D、L | 接收到新数据 |
STATUS | OUTPUT | WORD | I、Q、M、D、L | 故障代码 |
S7-300:ADDR_1 S7-400: ADDR_i (1 ≤i ≤ | IN_OUT | ANY | M、D I、Q、M、D、 T、C | 从 S7-200 SMART 的数据地址中读取数据;V 区数据对应 DB1。 |
S7-300:RD_1 S7-400: RD_i (1 ≤i ≤4) | IN_OUT | ANY | S7-300:M、D S7-400 I、Q、 M、D、T、C | 本站接收数据地址 |
FB14 参数说明
图12
参数 | 描述 | 数据类型 | 存储区 | 描述 |
REQ | INPUT | BOOL | I、Q、M、D、L | 上升沿触发调用功能块 |
ID | INPUT | WORD | M、D、常数 | 地址参数 |
DONE | OUTPUT | BOOL | I、Q、M、D、L | 为 1 时,发送完成 |
ERROR | OUTPUT | BOOL | I、Q、M、D、L | 为 1 时,有故障发生 |
STATUS | OUTPUT | WORD | I、Q、M、D、L | 故障代码 |
S7-300:ADDR_1 S7-400: ADDR_i (1 ≤i ≤ | IN_OUT | ANY | M、D I、Q、M、D、 T、C | 从 S7-200 SMART 的数据地址中读取数据;V 区数据对应 DB1。 |
S7-300:SD_1 S7-400: SD_i (1 ≤i ≤4) | IN_OUT | ANY | S7-300:M、D S7-400 I、Q、 M、D、T、C | 本站发送数据地址 |
FB15 参数说明
S7-200 SMART PLC 不需要编程。
产品推荐