Beckhoff ADS
TwinCAT 是由 Beckhoff Automation 开发的一种控制技术。它是一种基于软件的控制系统,用于自动化和控制应用。TwinCAT 能够运行在多种平台上并支持多种编程语言。
Neuron Beckhoff ADS 插件使用户可以通过 TCP/IP 连接到 Beckhoff TwinCAT PLC。
添加插件
在 配置 -> 南向设备,点击添加设备来创建设备节点,输入插件名称,插件类型选择 Beckhoff ADS 启用插件。
设备配置
点击插件卡片或插件列,进入设备配置页。配置 Neuron 与设备建立连接所需的参数,下表为插件相关的配置项。
字段 | 说明 |
---|---|
设备 IP 地址 | 远程设备 IP。 |
设备端口 | 远程设备 TCP 端口(默认 48898)。 |
源 AdsAmsNetId | 运行 Neuron 的设备的 AMS Net ID。 |
源 AdsPortNr | 运行 Neuron 的设备的 AMS Port (默认 851)。 |
目标 AdsAmsNetId | 目标 PLC 的 AMS Net ID。 |
目标 AdsPortNr | 目标 PLC 的 AMS Port(默认 851)。 |
请注意,为了让 Neuron 能与 TwinCAT PLC 正常通信,需要在目标 TwinCAT 软件中添加和设置对应的 ADS 路由。
其中涉及的关键 ADS 概念如下:
概念 | 说明 |
---|---|
ADS 协议 | ADS (Automation Device Specification) 是 TwinCAT 的通讯协议。 它使得 TwinCAT 系统能够通过媒介独立的串行或网络连接,实现数据的交换和控制。 ADS 旨在为 TwinCAT 系统中控制器与用户界面之间的通信提供标准接口。 |
AMS Net ID | AMS Net ID 是 TwinCAT 网络中本地计算机的地址。它由6个字节组成,用点分十进制表示(例如: “1.2.3.4.5.6”) 。 为避免通信冲突,AMS Net ID 在 TwinCAT 网络中必须是唯一的。 默认情况下,TwinCAT 通过在系统的 IP 地址后附加 “.1.1” 来生成 AMS Net ID 。 例如,在 IP 地址为 “172.17.213.60” 的系统中, 默认生成的 AMS Net ID 将为 “172.17.213.60.1.1” 。注意:实际场景不一定会使用默认生成的方式,这时请在 TwinCAT 软件中查看 AMS Net ID。 |
AMS port | TwinCAT 网络中的 ADS 设备由 AMS Net ID 和 AMS port 标识。 每个 TwinCAT 系统通常为特定的目的使用特定的 AMS Port 。 例如,Port 801 用于系统通信,Port 851 用于事件通知。 |
Index group/offset | ADS index group 和 index offset 是 TwinCAT ADS 系统服务中用于设备或程序之间进行数据交换的规范。 所有的读取和写入操作都通过 index group 和 index offset 在 PLC 上进行。 Index offset 是16位的,index offset 是32位的。 Index group 用于指定正在访问的数据的类别或类型,而 index offset 指定该类别或类型中的特定数据元素。 |
设置组和点位
完成插件的添加和配置后,要建立设备与 Neuron 之间的通信,首先为南向驱动程序添加组和点位。
完成设备配置后,在南向设备页,点击设备卡片/设备列进入组列表页。点击创建来创建组,设定组名称以及采集间隔。完成组的创建后,点击组名称进入点位列表页,添加需要采集的设备点位,包括点位地址,点位属性,数据类型等。
公共配置项部分可参考连接南向设备,本页将介绍支持的数据类型和地址格式部分。
数据类型
- BOOL
- INT8
- UINT8
- INT16
- UINT16
- INT32
- UINT32
- INT64
- UINT64
- FLOAT
- DOUBLE
- STRING
地址格式
对 ADS 插件来说,一个点位地址由 INDEX_GROUP 和 INDEX_OFFSET 两个部分组成,分别表示 index group 和 index offset 。
INDEX_GROUP,INDEX_OFFSET
INDEX_GROUP
和 INDEX_OFFSET
可以分别使用十进制或十六进制指定。
地址示例
地址 | 数据类型 | 说明 |
---|---|---|
0x4040,0x7d01c | bool | index_group 0x4040, index_offset 0x7d01c |
16448,51029 | uint8 | index_group 0x4040, index_offset 0x7d01d |
0x4040,512896.5 | string | index_group 0x4040, index_offset 0x7d380, 字符串长度为 5 |
应用场景
您可通过 Neuron 通过 ADS 协议采集倍福 PLC 上不同地址区域的数据,具体步骤,见采集 PLC 数据(Beckhoff ADS 协议)。
数据监控
完成点位的配置后,您可点击 监控 -> 数据监控查看设备信息以及反控设备,具体可参考数据监控。