AB控制器之间通过Producer/Consumer生产者/消费者进行数据通讯
1.简介
LOGIX 5000 控制器可生产(广播)和消费(接收)系统共享的标签。一个生产者产生的标签可以广播给多个消费者。
术语 |
定义 |
生产型标签 |
控制器提供给其他控制器使用的标签。多个控制器可以同时消费(接收)数据。生产 型标签在不使用逻辑的情况下将其数据发送给一个或多个消费型标签(消费者)。 |
消费型标签 |
接收生产型标签的数据的标签。消费型标签的数据类型应与生产型标签的数据类型(包 括任何数组维数)匹配。消费型标签的 RPI 决定了数据的更新周期。 |
1.1使用要求
1.1.1硬件要求
要使两个控制器共享生产型或消费型标签,这两个控制器必须处于同一 背板中或连接到同一控制网络(如 ControlNet 或 EtherNet/IP 网络)。
1.1.2消耗控制器连接数
生成型标签和消费型标签均需要使用控制器/通讯模块的连接数。消费生产型标签的控制器越多,控制器可供其他操作(例如通信和 I/O)使用的连接就越少。
标签类型 |
每个标签使用的连接数量 |
生产型标签 |
消费者数量 + 1 |
消费型标签 |
1 |
示例: 一个生产者控制器有4个生产型标签,同时有一个消费者控制器连接到这4个标签。连接消耗如下:
生产者控制器生产 4 个标签,将使用 8 个连接:
·每个标签使用 2 个连接(1个 消费者 + 1 = 2)。
·每个标签 2 个连接 x 4 个标签 = 8 个连接。
消费者控制器如果连接 4 个标签,将使用 4 个连接:
·每个标签 1 个连接 x 4 个标签 = 4 个连接。
1.1.3固件要求
在消费者控制器项目管理器的 I/O 配置 (I/O Configuration) 文件夹中,添加生产者控制器,保证型号、固件、项目名称、网络路径与实际一致。
只有属于控制器作用域的标签才能作为生产型标签。
2.创建标签
生产型标签在不使用逻辑的情况下将其数据发送给一个或多个消费型 标签。多个控制器可以同时使用生产型标签。
2.1创建生产型标签
1.在控制器项目管理器中,右键单击控制器标签 (Controller Tags) 并选择编辑标签 (Edit Tags)。在标签编辑器中,右键单击要作为生产者的标签,然后选择编辑 <标签名称> 属性 (Edit <name of tag> Properties)。
2.在类型 (Type) 中,选择生产型 (Produced)。
类型 (Type) 为生产型 (Produced) 或消费型 (Consumed) 时,连 接 (Connection) 可用。
3.点击连接 (Connection) 以定义生产型标签。 生产型标签连接 (Produced Tag Connection) 对话框随即打开。
4.在最大消费者数 (Max Consumers) 中,键入要消费(接收)此标签 的控制器数量。
5.选择高级 (Advanced) 以打开高级选项 (Advanced Options) 对话框。更改 RPI 范围限制、协商默认值或单播连接。处于联机状态时,RPI 限制配置将禁用。
6.单播连接是指生产控制器与消费控制器之间的点到点连接;此时无多个连接。单播连接不需要最小或最大 RPI 范围或默认 RPI 值。
7.默认情况下,高级选项 (Advanced Options) 对话框底部的允许单播消费者连接 (Allow Unicast Consumer Connections) 复选框为选中状态,表示允许多个单播消费者消费生产型标签。
2.2 创建消费型标签
1.在标签编辑器中,右键单击要消费数据的标签,然后选择编辑 < 标签名称> 属性 (Edit <name of tag> Properties)。
2.在名称 (Name) 中,键入消费型标签的名称。
3.在类型 (Type) 中,选择消费型 (Consumed)。
4.在数据类型 (Data Type) 中,选择数据类型,与生产型标签具有相同数据类型。
5. 选择连接 (Connection) 以定义消费型标签。 类型 (Type) 为生产型 (Produced) 或消费型 (Consumed) 时,选择连接 (Connection)。
6. 在生产者 (Producer) 中,选择生产数据的控制器。
如果列表为空,应将远程控制器添加到控制器项目管理器的 I/O 配置 (I/O Configuration) 文件夹中。
7. 在远程数据 (Remote Data) 中,键入生产型标签的名称或实例编号。
10. 在 RPI 中,输入连接的请求信息包间隔 (RPI)。
在 28.00.00 及更高版本中,生产型标签的首个消费者决定着生产型数据 的 RPI。所有后续消费者必须请求与首个消费者相同的 RPI 值,否则 将无法连接并显示错误代码 0112。
2.3设置消费控制器(可选)
通过设置消费控制器,可以允许其消费型标签接受来自生产者控制器的 RPI。 可使用控制器属性 (Controller Properties) 对话框中的高级 (Advanced) 选项卡设置控制器。
3.与常规MSG指令比较优劣势
3.1优点
一对多广播
少量数据无需编写程序
传输速度快 毫秒级别的传输
3.2缺点
数据量小 500 个字节的数 据。这相当于一个 125 个 DINT 或 REAL 元素的数组。大量数据收发需要额外编写程序。
程序修改 生产者和消费者双方都需要修改程序。
占用通讯连接数