0

我希望能够与 PLC 控制器通信,以便我可以在 PLC 上发送和接收自定义命令。

我能够做到这一点的想法是在 PLC 上安装一个 TCP 侦听器,它可以读取特定端口上的 TCP 传入数据包,并根据数据包中的命令执行例程。它还可以通过 TCP/IP 发回信息。

这将允许我用多种语言编写软件,例如 C#、PHP、JavaScript 等,以便可以在任何平台上使用软件,例如 Windows、iOS、Android 等,向 PLC 发出命令。这也意味着您不需要 PLC 软件(可能很昂贵)来查看或控制 PLC。

我不是PLC程序员,所以我不知道PLC是否有发送和接收自定义TCP数据包的能力。我想知道a)如果可能的话b)这样做的可行性和c)我应该研究什么才能做到这一点。

谢谢。

4

2 回答 2

2

这听起来有点像重新发明轮子。你想制作类似 KepServerEX 的东西吗?

http://www.kepware.com/kepserverex/

还有两件事需要考虑——一是与 PLC 接口以共享数据的能力(即:用于自定义 HMI),另一是对 PLC 进行编程。对于后者,您仍然需要制造商提供的控制软件,除非您愿意进行逆向工程并从头开始重新编写它。

另外请记住,PLC 的工作方式与其他软件不同。本身没有函数、过程、类或对象,甚至没有任何“命令”。PLC 是一个系统,它执行主要是原始逻辑规则和计算的连续固定程序。HMI 的典型接口包括直接读取和写入代表机器当前状态的逻辑位和字数据(即:硬件存储器位置)。OPC 已经很好地做到了,所以我不太确定你想要什么。

如果您正在寻找完整商业套餐的廉价/免费替代品,这里的某些东西可能对您有用:

http://www.opcconnect.com/freesrv.php

于 2012-03-01T17:58:24.117 回答
0

如果我理解正确,当提到“运行/停止”时,您的意思是 PLC“开始”或“停止”扫描代码并更新其 I/O。如果是这种情况,最好添加一个 Scan_If_On 位(将由 TCP 命令写入)与 HMI 控制的“开始”位并行连接。这样,将有两种形式的“启动”由 PLC 控制的过程。人机界面和 TCP。

于 2013-08-28T15:03:06.007 回答