我希望能够与PLC控制器进行通信,这样我就可以在PLC上发送和接收自定义命令。
我的想法是在PLC上有一个TCP侦听器,它可以读取特定端口上的TCP传入数据包,并根据数据包中的命令执行例程。它还可以通过TCP/IP发回信息。
这将使我可以用多种语言编写软件,如C#、PHP、JavaScript等,以便软件可以在任何平台上使用,如Windows、iOS、Android等,以向可编程控制器发出命令。这也意味着您不需要PLC软件(这可能很昂贵)来查看或控制PLC。
我不是PLC程序员,所以我不知道PLC是否具有发送和接收自定义TCP数据包的能力。我想知道,a)如果可能,b)做这件事有多可行,c)我到底应该研究什么才能完成这件事。
谢谢。
发布于 2012-03-02 01:58:24
这听起来有点像重新发明轮子。你想做像KepServerEX这样的东西吗?
http://www.kepware.com/kepserverex/
还有两件事要考虑-一是与PLC接口以共享数据的能力(即:用于自定义HMI),另一是对PLC进行编程。对于后者,您仍然需要制造商提供的控制软件,除非您愿意进行逆向工程并从头开始重写。
还请记住,PLC的工作方式与其他软件不同。本身没有函数、过程、类或对象,甚至没有任何真正的“命令”。PLC是一个系统,它执行一个连续的固定程序,主要是原始的逻辑规则和计算。HMI的典型接口包括直接向/从表示机器当前状态的逻辑位和字数据(即,硬件存储器位置)读取和写入。OPC已经做得很好了,所以我不太确定你想要什么。
如果你正在寻找一个便宜的/免费的替代完整的商业软件包,这里的一些东西可能会为你工作:
http://www.opcconnect.com/freesrv.php
发布于 2013-08-28 23:03:06
如果我理解正确的话,“运行/停止”指的是可编程控制器“启动”或“停止”扫描代码并更新其I/O。如果是这种情况,添加一个Scan_If_On位(将由TCP命令写入)与人机界面控制的“启动”位并行连接是非常合适的。这样,将有两种形式“启动”由PLC控制的过程。HMI和TCP。
https://stackoverflow.com/questions/9521085
复制相似问题