使用 C# 从 AB PLC 或任何其他控制器读取和写入数据



我是C#和.NET编程的新手,所以如果我的问题对你没有意义,请原谅我。我正在尝试制作一个可以从PLC(艾伦布拉德利紧凑型逻辑(读取和写入数据到我的应用程序的应用程序的应用程序。以下是我的愿景:1(PLC充当服务器,主机充当客户端。 2(PLC监听或等待主机。 3(PLC接受客户端或主机。 4(主机向PLC发送数据或命令以完成某些任务。例如,创建一个简单的按钮,用于打开和关闭 PLC 上的存储位。 我对从 1、2 和 3 开始工作很舒服,但我不知道我将如何做第 4 部分。过去,我构建了简单的应用程序,让两台计算机使用 TCP/IP 相互交换字符串或文本,但我想发送命令而不是发送字符串,以便我可以更改 PLC 的内存位。

我只需要第 4 部分的帮助。

我正在使用 C# 编程语言来完成此操作。

取决于您实际拥有的紧凑型 compactlogix 类型及其以太网卡,听起来您不想/不想使用传统的 HMI/OPC 方法,如点火或普通 Kepware,因此 Id 建议您看看 ingear Net.Logix 有什么(试用/付费(。我已经使用过它,它与用于AB PLC的TCP/IP的非OPC网络套接字一样可靠。另一件事是,您可以将纯 .NET 套接字与 visual C# 一起使用,并尝试在 logix 上使用某些以太网卡在较新版本后支持的套接字 MSG 配置,在这种情况下,您必须更密集地编程套接字和梯形图逻辑的所有方面,以便处理 PLC 内部的 IO。

https://ingeardrivers.com/products/net-products/netlogix/

https://literature.rockwellautomation.com/idc/groups/literature/documents/at/enet-at002_-en-p.pdf

听起来你的最终目标是制作一个SCADA或HMI。因此,我将为您提供一些选择:

  1. 看看高级人机界面。这应该为您提供所需的一切。这不是一个开源软件,而是免费软件。
  2. 您还可以查看我所做的关于使用node-Red执行您请求的POST。这是使用WAGO PLC,但我会展示什么是可能的。如果您需要有关此选项的更多帮助,请询问。我应该从哪里开始我的OPC-UA客户端?
  3. 如果你想自己创业,你想要一个完全开源的选项。有一篇文章可以帮助您使用通信AllenBradley Compactlogix PLC Ethernet IP和C#通信?

还有更多选择。这只是免费或开源选项的一小部分。如果您需要更多选项,请询问,我会将付费列表添加到这篇文章中。

最新更新