Micrologix PLC使用的低级别协议是什么

本文关键字:协议 是什么 PLC Micrologix | 更新日期: 2023-09-27 17:57:48

我正在C#中构建一个应用程序,该应用程序需要与Allen-Bradley Micrologix PLC进行通信。我知道InGear驱动程序可以与它交谈。我过去曾使用InGear与其他Allen-Bradley PLC交谈,所以我知道与他们的许可证可能会给我带来问题。

我想知道的是:是否有任何基于TCP或UDP的协议可以直接与Micrologix PLC通信?显然,肯定有一些东西,因为InGear可能在一些较低级别的协议上构建了他们的协议。

Micrologix PLC使用的低级别协议是什么

Micrologix系列PLC使用PCCC(又名CSP)协议,该协议是通过TCP传输的DF1协议。免费提供的最清晰的代码是几年前由Ron Gage编写的。Allen-Bradley有一份文档,非常详细地描述了最初的DF1协议,结合Ron Gage的代码,很容易理解。除了初始握手之外,它是一个非常简单的请求/响应协议。这与PLC-5系列(来自20世纪80年代)和SLC系列(来自90年代)使用的协议相同,但随着时间的推移,它正在慢慢被弃用。

它支持的第二个协议是以太网/IP,它使用一种称为"CIP"的数据包协议,该协议可以通过UDP或TCP传输,但在初次联系时必须使用TCP。协议标准是"开放的",由ODVA发布。这也是奥姆龙品牌PLC和其他公司使用的相同协议。对于此通信,您将希望使用未连接的消息传递模式(请求/响应)。我在Python中使用"cpppo"协议栈取得了巨大成功,但我不知道在.NET.中什么会起作用

此PLC系列使用的第三个协议是Modbus/TCP或Modbus(串行格式),具体取决于PLC。它可以充当主人,也可以充当奴隶。Modbus是使用最简单的协议。协议本身的完整文档可在modbus.org网站上免费获得。我使用过旧型号,但没有使用过1400,所以我无法具体说明它将支持哪种类型的Modbus。因为这个协议基本上得到了市场上每个PLC品牌的支持,所以有无数的软件库支持它。任何有能力的程序员通常都可以在大约一天的工作中从头开始写一个,因为它非常简单。