在 S7-300 中,通信资源是如何分配的?

描述

S7-300PLC PN接口的CPU和CP包含的通讯服务。如下图所示。

通信资源就是通信双方为了执行通信服务而进行的连接资源和通信任务资源的分配。通信双方的数据交换需要通信资源,由其中的连接资源和通讯任务资源两个参数决定。
连接资源 :用于在连接期间管理通讯过程,主为2类:S7连接资源和非S7连接资源,如下图所示 。

通讯任务资源:基于连接资源可以执行的通讯任务数量。
例:下图为319-3PN/DP CPU技术数据,16为S7通通信连接源可建的个数,32为通讯任务资源即程序块背景DB的数量。 即多少个的 PUT, GET, BSEND, BRCV, USEND 和 URCV 块能够运行。

注:如果连接资源达到上限后,无法与其他Partner建立连接,同样,超过通讯任务资源,其它连接资源的通讯双方也无法进行通讯。

S7-300CPU S7通信资源与任务资源分配情况:

S7-300 CP 总连接资源分配情况:

* 总连接资源指同时进行多种协议通信时的最大允许连接数,这里CPU总连接资源指S7通信资源,CP总连接资源包含S7连接资源和S5兼容资源。

多路复用

由于S7-300CPU中S7连接资源数的限制,当通过CP卡进行S7相关的通讯服务时,可以激活多路复用功能,即在执行通信资源分配时,支持多路复用的CP和通讯服务,在建立连接时,占用CP多个资源,占用CPU1个连接资源,不支持多路复用的服务和CP,在建立连接时,占用CP1个资源,占用CPU1个资源。 下表列出支持多路复用的服务和CP卡。

CP

多路复用

服务

CP343-1 Advance

支持

OP S7双边 S7单边客户端

CP343-1

支持

OP S7双边 S7单边客户端

CP343-1lean

不支持

 

举例

针对于 CPU 317-2 PN/DP  (订货号:6ES7317-2EK14-0AB0) 和 CP343-1 (订货号:6GK7343-1EX30-0XE0) 的属性列出下面三种类型参数。

下面的表格列出了 CPU 317-2 PN/DP 和 CP343-1 的属性。

技术数据 CPU 317-2 PN/DP
6ES7317-2EK14-0AB0
CP343-1
6GK7343-1EX30-0XE0
开放式通信资源数 16 16
S7 连接资源数 32 16
S7 连接资源的限制 S7 通信资源数最大 16 个
S7 基本通信资源数最大 30 个
PG 或 OP 连接资源数最大 31 个
无限制
通信实例数目 32 16

表格 01

S7 通信

对于例子中的6ES7317-2EK14-0AB0 CPU 来说,最多可以配置 16 个 S7 连接。PG,OP 和 S7 基本通信共是 16 个连接资源。
通过扩展CP 例子中的6GK7343-1EX30-0XE0 模块建立 16 个 S7 连接。结合CP的多路复用功能,CP组态S7连接时,不论 CP 模块组态的是 1 个还是 16 个 S7连接,仅占用 CPU 的一个资源。这个被占用的 CPU 的 S7 连接是已组态的 S7 连接,而不是额外的 PG, OP 和 S7 基本通信中的 16 个资源。

下表列出了 CPU 317-2 PN/DP + CP343-1组合中, S7 连接的最大数目(未考虑通讯任务资源的情况)。

CP 模块数 每个 CP 可组态 每个 CPU 可组态  每个 CPU 可组态的其他连接 (PG, OP, S7 基本通信) 总共
0 (only CPU) - 16 16 32
1 16 15 16 47
2 16 14 16 62
3 16 13 16 77
4 16 12 16 92

表格 02

开放式通信

在 CPU 中,可以使用 TCON 块建立 16 连接 (TCP, ISO-on-TCP, UDP)。这个数目是不受其他通信服务的限制,且本身不影响任何其他类型的通信。
CP 模块可以配置 16 个开放通信连接。这些资源数是与 S7 连接并行的,CP 模块最大可以建立 32 个连接(包括 S7 连接和开放通信连接)。
CP的开放通信不影响 CPU 的通信资源。如果仅组态 CP 模块的开放通信连接,是不占用 CPU 的 S7 连接的。AG_SEND/AG_RECV 块是用来读取/写入数据的。通过这种方式不使用任何CPU 资源。功能块调用的最大数量不受限制。

通信实例

在 CPU 中进行 S7 通信,可以同时运行多达 32 个实例。超过 32 个实例的话会报错。当CPU进行更多的 S7 连接任务,一个 S7 连接的实例任务完成后可以使用另一个 S7 连接实例。
CP 模块可以最多运行16个实例。例如可以发送和接收 8 组 S7 连接,或者,仅发送或者仅接收 16 组 S7 连接。不能同时发送和接收 16 组 S7 连接。CP 模块不支持轮询,16 个实例数目就是最大值。