我正在将项目从NModbus4转换为NModbus(因为NModbus4最后一次提交是在5年前),但我找不到任何modbus从属tcp实现示例,所以我坚持使用这段代码并且不知道如何走得更远。我整个早上都在寻找解决方案但是
applicationLog.Info("Initializing modbus slave");
TcpListener tcpListener = new TcpListener(new IPAddress(new byte[] { 127, 0, 0, 1 }), Properties.Settings.Default.TcpModbusPort);
modbusSlave = modbusFactory.CreateSlave(1, new SlaveDataStore());
modbusSlaveTransport = modbusFactory.CreateSlaveNetwork(tcpListener);
applicationLog.Info("Modbus slave listening on port " + Properties.Settings.Default.TcpModbusPort);
有人可以帮助我吗?
使用此软件包,我已成功连接到与测量设备通信的 Modbus RTU<->TCP 转换器:
https://www.nuget.org/packages/NModbus/
这里有一些可能有用的代码示例(尤其是第 466 行):
https://github.com/NModbus/NModbus/blob/master/Samples/Program.cs
我已经测试了一种读取保持寄存器的方法(但作为主寄存器),它似乎有效。