考虑下面的梯形程序,它检查是否启用了连接(A 202.00),然后从PLC向PC发送一条消息。

文档(Omron CX-程序员)严重缺乏对程序惯例的解释。我不明白的是:
MOV到DM地址(D300),然后使用它?如果是这样的话(IP地址有4个字节之间的点..)?S (First source )、D (First目的词)和C (First control word)是什么。它们不只是内存地址吗?例如,将内存的内容发送到另一个内存地址?编辑
,我想做什么?
我正在尝试将一个测量仪表(通过以太网通过PC/C#应用程序控制)与机器人系统(没有RS232或串行,没有TCP/IP,只有最简单的I/O点)与欧姆龙PLC连接。当量规完成测量时,C#应用程序向欧姆龙PLC发送一个命令,该命令根据接收到的命令,打开或关闭一个触发电压流到机器人I/O端口的输出。
我该用鱼翅吗?我需要知道PLC的哪些功能/协议才能做到这一点?我不知道,所以我正在测试文档中的每个功能。到目前为止没有进展。
发布于 2012-02-25 13:09:35
1)将所有寻址信息封装在五个控制字(C -> C+4)中。C-“第一个控制字”是指向这个表中的第一个单词的指针,你必须将它存储在PLC中的某个地方来建立通信。
2)第一个源词指向您希望发送的PLC中的第一个单词。第一个目标词指向您希望发送到的PLC/设备中的第一个地址。在该示例中,第一个控制字指定应该发送10个单词。您指向第一个地址,它也会发送该地址和接下来的9个地址。
要做到这一点,您必须使用FINS通信-- PC存储类似于PC (CIO、DM等)的内存结构,称为事件内存,这些是您所指向的PC中的地址。PC获得一个FINS节点号和地址,就像PLC一样--不涉及IP地址。(参见:鱼翅手册) FINS是旧的,已经被Sysmac网关之类的东西取代了。
但是,在PLC/PC之间有更好的通信方式,这取决于您想要做什么。你想写人机界面吗?如果是的话,你用的是什么语言?
编辑:
如果您正在使用C#,我强烈建议您查看Sysmac网关和Compolet。 --这可能是使.NET与Omron协同工作的最灵活、最简单和最可扩展的方法。然而,如果有可能,更好的方法甚至可能是让测量单元通过硬件I/O (继电器、DIO等)与PLC直接通信。
CX-Compolet,Sysmac网关链接:
u.html
https://stackoverflow.com/questions/9442925
复制相似问题