一、S7-200 SMART CPU之间的以太网通信
S7-200 SMART CPU 固件版本 V2.0 及以上版本的 CPU 可实现CPU、编程设备和HMI(触摸屏)之间的多种通信:
— CPU与编程设备之间的数据交换。
— CPU与HMI之间的数据交换。
— CPU与其他S7-200 SMART CPU之间的PUT/GET通信。
— CPU与编程设备之间的数据交换。
— CPU与HMI之间的数据交换。
— CPU与其他S7-200 SMART CPU之间的PUT/GET通信。
S7-200 SMART CPU 以太网连接资源如下:
— 1个连接用于与STEP7 Micro/Win SMART软件的通信。
— 8个连接用于CPU与HMI之间的通信。
— 8个连接用于CPU与其他S7-200 SMART CPU之间的PUT/GET主动连接
— 8个连接用于CPU与其他S7-200 SMART CPU之间的PUT/GET被动连接
— 1个连接用于与STEP7 Micro/Win SMART软件的通信。
— 8个连接用于CPU与HMI之间的通信。
— 8个连接用于CPU与其他S7-200 SMART CPU之间的PUT/GET主动连接
— 8个连接用于CPU与其他S7-200 SMART CPU之间的PUT/GET被动连接
PUT/GET 指令格式
S7-200 SMART CPU提供了PUT/GET 指令,用于S7-200 SMART CPU之间的以太网通信(P
UT/GET 指令格式见表 1)。PUT/GET 指令只需要在主动建立连接的 CPU 中调用执行,被动建立连接的 CPU不需要进行通信编程。PUT/GET 指令中TABLE 参数用于定义远程CPU的 IP地址、本地CPU和远程 CPU的数据区域以及通信长度(TABLE 参数定义见表 2)。
表 1 PUT和GET 指令:
LAD/FBD | STL | 描述 |
PUT TABLE | PUT 指令启动以太网端口上的通信操作,将数据写入远程设备。PUT 指令可向远程设备写入最多 212 个字节的数据。 | |
GET TABLE | GET 指令启动以太网端口上的通信操作,从远程设备获取数据。GET 指令可从远程设备读取最多 222 个字节的数据。 | |
表 2 PUT和GET 指令的TABLE参数定义:
字节偏移量 | Bit 7 | Bit 6 | Bit 5 | Bit 4 | Bit 3 | Bit 2 | Bit 1 | Bit 0 |
0 | D1 | A2 | E3 | 0 | 错误代码4 | |||
1 | 远程 CPU的 IP地址 | |||||||
2 | ||||||||
3 | ||||||||
4 | ||||||||
5 | 预留(必须设置为0) | |||||||
6 | 预留(必须设置为0) | |||||||
7 | 指向远程 CPU 通信数据区域的地址指针 (允许数据区域包括:I、Q、M、V) | |||||||
8 | ||||||||
9 | ||||||||
10 | ||||||||
11 | 通信数据长度5 | |||||||
12 | 指向本地 CPU 通信数据区域的地址指针 (允许数据区域包括:I、Q、M、V) | |||||||
13 | ||||||||
14 | ||||||||
15 | ||||||||
1 D :通信完成标志位,通信已经成功完成或者通信发生错误。
2 A :通信已经激活标志位。
3 E :通信发生错误,错误原因需要查询错误代码4。
4 错误代码:见表 3 PUT 和 GET 指令TABLE 参数的错误代码。
5 通信数据长度:需要访问远程 CPU通信数据的字节个数,PUT 指令可向远程设备写入最多 212 个字节的数据,GET 指令可从远程设备读取最多 222 个字节的数据。
2 A :通信已经激活标志位。
3 E :通信发生错误,错误原因需要查询错误代码4。
4 错误代码:见表 3 PUT 和 GET 指令TABLE 参数的错误代码。
5 通信数据长度:需要访问远程 CPU通信数据的字节个数,PUT 指令可向远程设备写入最多 212 个字节的数据,GET 指令可从远程设备读取最多 222 个字节的数据。
表 3 PUT 和 GET 指令TABLE 参数的错误代码:
错误代码 | 描述 |
0 | 通信无错误 |
1 | PUT/GET TABLE参数表中存在非法参数: ∙ 本地CPU通信区域不包括 I、Q、M 或 V。 ∙ 本地CPU不足以提供请求的数据长度。 ∙ 对于 GET指令数据长度为零或大于 222 字节;对于 PUT指令数据长度大于 212 字节。 ∙ 远程CPU通信区域不包括 I、Q、M 或 V。 ∙ 远程CPU 的IP 地址是非法的 (0.0.0.0)。 ∙ 远程CPU 的IP 地址为广播地址或组播地址。 ∙ 远程CPU 的IP 地址与本地 CPU的IP 地址相同 ∙ 远程CPU 的IP 地址位于不同的子网。 |
2 | 同一时刻处于激活状态的 PUT/GET 指令过多(仅允许 16 个) |
3 | 无可以连接资源,当前所有的连接都在处理未完成的数据请求(S7-200 SAMRT CPU主动连接资源数为 8 个)。 |
4 | 从远程 CPU 返回的错误: ∙ 请求或发送的数据过多。 ∙ STOP 模式下不允许对 Q 存储器执行写入操作。 ∙ 存储区处于写保护状态 |
5 | 与远程 CPU 之间无可用连接: ∙ 远程 CPU 无可用的被动连接资源(S7-200 SMART CPU被动连接资源数为 8 个)。 ∙ 与远程 CPU 之间的连接丢失(远程 CPU 断电或者物理断开)。 |
6-9 | 预留 |
通信资源数量
S7-200 SMART CPU 以太网端口含有 8 个PUT/GET 主动连接资源和 8 个PUT/GET 被动连接资源。例如:CPU1 调用 PUT/GET 指令与 CPU2 ~ CPU9 建立8主动连接的同时,可以与 CPU10 ~ CPU17 建立8被动连接(CPU10 ~ CPU17 调用 PUT/GET 指令),这样的话 CPU1 可以同时与16台 CPU(CPU2 ~ CPU17)建立连接。关于主动连接资源和被动连接资源的详细解释如下:
1、主动连接资源和被动连接资源
∙ 调用 PUT/GET 指令的CPU 占用主动连接资源数;相应的远程 CPU 占用被动连接资源。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论