本应用使用AB的eip-cip协议,从AB PLC读取PLC导出的数据。通讯链路为以太网。
产品系列 | 分类 |
SLC 500 系列 | PLC |
PLC-5 系列 | PLC |
ControlLogix 系列 | LGX |
CompactLogix 系列 | LGX |
FlexLogix 系列 | LGX |
Micrologix 系列 | MLGX800 |
Micro800 系列 | MLGX800 |
型号 | 分类 |
SLC-5/05 (1747-L553/C) | SLC |
MicroLogix 1100 (1763-L16BWA) | SLC |
ControlLogix5571 (1756-L71) | LGX |
ControlLogix5555 (1756-L55/A) | LGX |
ControlLogix5573 (1756-L73) | LGX |
ControlLogix 5580 (1756-L82ES) | LGX |
CompactLogix L16ER (1769-L16ER/B) | LGX |
CompactLogix 1769 L30ERMS | LGX |
CompactLogix 5318 (1769-L18) | LGX |
CompactLogix 5370 (1769-L18ER) | LGX |
CompactLogix L32E (1769) | LGX |
CompactLogix L23E (1769-L23E-QB1B) | LGX |
GuardLogix 5570 (1756-L72S) | LGX |
MicroLogix 1400 (1766-L32BXB) | MLGX |
本应用基于libplctag, 通讯协议为CIP-EtherNet/IP (CIP/EIP or EIP)
CPU型号 | PLC系列 |
PLC | plc5, plc, slc, slc500 |
LGX_PCCC | lgxpccc, logixpccc, lgxplc5, logixplc5, lgx-pccc, logix-pccc, lgx-plc5, logix-plc5 |
MLGX800 | micrologix800, mlgx800, micro800 |
MLGX | mricrologix, mlgx |
LGX | compactlogix, clgx, lgx, controllogix, contrologix, flexlogix, flgx |
PLC设备的IP地址
路径是CPU模块在整个PLC的位置信息,有架号槽号组成,如1,0中架号为1、槽号为0。小型PLC的路径通常为1,0。大型PLC需要查看具体CPU模块所在的架号和槽号。
获取PLC数据的时间间隔、由于PLC通讯协议不是订阅模式,应用只能周期性的去获取PLC设备的数据,这里需要指定时间间隔。 注意: PLC的处理能力有限,所以尽可能的使用较大的时间间隔,降低PLC的运行负载
应用具体读取那些数据点需要在设备模板中指定,这里只能选择一个设备模板。即一个应用示例只负责和一个PLC进行通讯。
此部分描述设备信息,包含以下字段:
字段名称 | 字段说明 |
name | 设备名称,如 ControlLogix5555 |
description | 设备描述 ControlLogix5555 (1756-L55/A) |
series | 设备系列号, 如 1756-L55 |
字段名称 | 字段说明 | 备注 |
name | 属性点(数据点)名称 | 只能是字母、数字、下划线 |
description | 描述信息 | 可以是任意字符串 |
unit | 数据单位 | |
RW | 数据读写类型 | RO-只读 RW-读写 WO-只写 |
data type | PLC数据类型,支持 uint8/16/32/64 int8/16/32/64 float32/64 bool string | 只能是这些类型之一 |
vt | FreeIOE数据类型(int/float/string) | |
elem_name | PLC中导出的数据点名称 | 字符串 |
offset | 数据偏移量(针对PLC数据是数组的情况, 从0开始, 单位是数据类型的长度) | |
rate | 数据计算系数,默认为1 | 如PLC导出的数据100,而rate设置为0.001 那么数据的数值会是0.1 |
从PLC编程软件中查看数据点类型。类型对应关系如下:
PLC 数据类型 | data type |
UINT8 | uint8 |
UINT16 | uint16 |
UINT32 | uint32 |
SINT8 | int8 |
SINT16 | int16 |
SINT32 | int32 |
REAL32/FLOAT32 | float32 |
REAL64/FLOAT64 | float64 |
BOOL | bool |
STRING | string |