我们有一个Beckhoff EtherCAT耦合器,该耦合器当前由某些c#代码控制,我们从powershell脚本中调用该c#代码。我们想将耦合器上切换插槽的整个过程移到powershell脚本中,但是我不确定该怎么做。如果您甚至可以为我提供有关如何在Powershell中发送/接收Modbus命令的信息,那将是非常有用的。
谢谢!
编辑: 这是C#中用于切换IO耦合器的一个插槽的代码:
using System.Net.Sockets;
using Modbus.Device;
TcpClient tcp_connection = new TcpClient(ip, MODBUS_TCP_PORT);
ModbusIpMaster coupler = ModbusIpMaster.CreateIp(tcp_connection);
coupler.WriteSingleRegister(0x1120, 0);
coupler.WriteSingleCoil(slot, state);
答案 0 :(得分:0)
使用机器自动化控制器是高度针对制造商的。我只了解有关Omron PLC和MAC的工作知识,所以我无法提供确切的详细信息。
无论如何,一种方法是从Powershell创建C#DLL和call it。关于如何对耦合器进行编程,首先要弄清楚您正在使用哪种模型并搜索Beckhoff的documentation。也许有合适的样品。
还请考虑与制造商的支持部门联系。他们可能能够以非常合理的价格提供建议,除非任务发展成咨询工作。
通常通过制造商特定的解决方案对PLC和MAC进行编程。这些语言比通用语言(如C#)更容易使用。
答案 1 :(得分:0)
Acontis提供了适用于Windows的EtherCAT Master库和一个C#示例应用程序,您可以利用它来将其包含在自己的应用程序中:https://acontis.com/en/ecsta.html