我希望能够与PLC控制器通信,以便我可以在PLC上发送和接收自定义命令。
我能够做到这一点的想法是在PLC上有一个TCP侦听器,它可以读取特定端口上的TCP传入数据包,并根据数据包中的命令执行例程。它还可以通过TCP / IP发回信息。
这将允许我用多种语言编写软件,如C#,PHP,JavaScript等,以便软件可以在任何平台上使用,如Windows,iOS,Android等,以向PLC发出命令。这也意味着您不需要PLC软件(成本很高)来查看或控制PLC。
我不是PLC程序员,所以我不知道PLC是否具有发送和接收自定义TCP数据包的能力。我想知道a)是否有可能b)这样做是否可行以及c)究竟应该研究什么以便我能够做到这一点。
感谢。
答案 0 :(得分:1)
听起来有点像重新发明轮子。你想制作像KepServerEX这样的东西吗?
http://www.kepware.com/kepserverex/
还有两件事需要考虑 - 一个是与PLC接口以共享数据的能力(即:用于自定义HMI),另一个是对PLC进行编程。对于后者,您仍然需要制造商提供的控制软件,除非您愿意从头开始进行逆向工程和重新编写。
请记住,PLC的工作方式与其他软件的工作方式不同。本身没有任何功能或程序或类或对象,甚至没有任何“命令”。 PLC是一种执行大多数原始逻辑规则和计算的连续固定程序的系统。 HMI的典型接口包括直接读取和写入逻辑位和字数据(即:硬件存储器位置),这些数据代表机器的当前状态。 OPC已经做到这一点很好,所以我不太清楚你想要的是什么。
如果您正在寻找廉价/免费替代完整商业套餐,这里的内容可能对您有用:
答案 1 :(得分:0)
如果我理解正确,当提到“运行/停止”时,你的意思是PLC要“启动”或“停止”扫描代码并更新其I / O.如果是这种情况,将HMI_If_On位(将由TCP命令写入)与HMI控制的“开始”位并行连接将是完全合适的。 这样,将有两种形式的“启动”由PLC控制的过程。 HMI和TCP。