C# NModbus的主从站开发以及Modbus Slave、Modbus Poll工具的使用

NModbus的主站开发

1.开发环境要求:PC端作为主站,控制器作为从站

2.PC端初始化代码:

serialPort = new SerialPort();
serialPort.PortName = "COM1";
serialPort.BaudRate = 9600;
serialPort.DataBits = 8;
serialPort.StopBits = StopBits.One;
serialPort.Parity = Parity.Even;
master = ModbusSerialMaster.CreateRtu(serialPort);
master.Transport.ReadTimeout = 2000;
master.Transport.Retries = 10;
master.Transport.WriteTimeout = 2000;
serialPort.Open();

3.PC端读写代码:(slaveNum:从站Slave ID,addrNum:读取寄存器起始地址,len:读取寄存器长度)功能码03

ushort[] recv = master.ReadHoldingRegisters((byte)slaveNum, (ushort)addrNum, (byte)len);

4.控制器收到指令格式:

如0A 03 9C 47 00 01 1B 34

0A-SlaveID

03-功能码 

9C-寄存器地址高位

47 -寄存器地址低位

00 -读取长度高位

01-读取长度低位

1B 34-校验位

5.Modbus Slave工具测试

  • 设置Connection-Connection Setup,根据上面设置RTU连接方式,Modbus Slave设置如下:(Master设置的串口参数必须如下的配置相同

  • 设置SetUp-Slave Definition,Master设置的SlaveID必须跟下图配置的保持一致,Function:功能码,Address:显示的寄存器起始地址,Quanity:寄存器的数量</
  • 2
    点赞
  • 54
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 12
    评论
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

乌里随记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值