如何使用 NModbus4 框架向 Modbus 客户端发送响应

How to send response to Modbus client with using NModbus4 framework?

本文关键字:客户端 响应 Modbus 何使用 NModbus4 框架      更新时间:2023-10-16

I use NModbus4.我的软件是modbus从属软件,如果我收到"非法数据值",我必须发送正确的异常响应。我创建奴隶异常响应:void ModbusRequestEvent(Object^ sender, Modbus::D evice::ModbusSlaveRequestEventArgs^ e) { 尝试 { .... Modbus::Message::SlaveExceptionResponse exceptionRes; exceptionRes.FunctionCode = 80; exceptionRes.SlaveAddress = e->Message->SlaveAddress; exceptionRes.SlaveExceptionCode = 3;

但是通过使用模拟工具进行测试,我得到了另一个响应。 如何发送我的回复?

提前感谢您的帮助:-)

我发现了。解决方案非常简单。如果存在一些错误,则必须引发响应异常。

...

抛出新的 InvalidModbusRequestException(异常代码);//异常代码 e.x. 1 表示非法函数