西门子CPU ST30说明书西门子CPU ST30说明书西门子CPU ST30说明书
1、主动连接资源和被动连接资源
调用 PUT/GET 指令的CPU 占用主动连接资源数;相应的远程 CPU 占用被动连接资源。
2、8个PUT/GET 主动连接资源
S7-200 SMART CPU 程序中可以包含远多于 8个PUT/GET 指令的调用,在同一时刻多只能 8 个PUT/GET 连接资源。
同一时刻对同一个远程 CPU 的多个 PUT/GET 指令的调用,只会占用本地 CPU的一个主动连接资源和远程CPU的一个被动连接资源。本地 CPU 与远程 CPU之间只会建立一条连接通道,同一时刻触发的多个 PUT/GET指令将会在这条连接通道上顺序执行。
同一时刻多能对8个不同 IP 地址的远程 CPU 进行 PUT/GET 指令的调用,第9个 远程CPU的PUT/GET指令调用将报错,无可用连接资源。已经成功建立的连接将被保持,直到远程 CPU断电或者物理断开。
3、8个PUT/GET 被动连接资源
S7-200 SMART CPU 调用 PUT/GET 指令,执行主动连接的也可以被动地被其他远程 CPU进行通信读写。
S7-200 SMART多可以与被8个不同 IP 地址的远程 CPU 进行 建立被动连接。已经成功建立的连接将被保持,直到远程CPU断电或者物理断开。
指令编程举例
在下面的例子中,CPU1 为主动端,其 IP 地址为192.168.2.100,调用 PUT/GET 指令;CPU2 为被动端,其IP 地址为192.168.2.101,不需调用 PUT/GET 指令,网络配置见图 1 。通信任务是把 CPU1 的实时时钟信息写入CPU2 中,把CPU2 中的实时时钟信息读写到 CPU1 中。
图 1 CPU通信网络配置图
1、CPU1 主动端编程
CPU1 主程序中包含读取 CPU 实时时钟、初始化 PUT/ GET 指令的 TABLE 参数表、调用 PUT 指令和 GET指令等。
网络1:读取 CPU1 实时时钟,存储到 VB100 ~ VB107 。
图 2 读取 CPU1 实时时钟
注:READ_RTC 指令用于读取 CPU实时时钟指令,并将其存储到从字节地址 T 开始的 8 字节时间缓冲区中,数据格式为 BCD 码。
网络2:定义 PUT 指令 TABLE 参数表,用于将 CPU1 的VB100 ~ VB107 传输到远程 CPU2 的VB0 ~VB7。