modbus Tcp

24.11.12更新

 在用hsl的库来进行tcp通讯的时候发现新的高于7.00的库的时候 用

busTcpClient.ReadFromCoreServer(HslCommunication.BasicFramework.SoftBasic.HexStringToBytes( textBox13.Text ) );

这句来进行报文通讯会收发特别慢而且只能通讯一次在查问题的时候在官网看到了新版的方法这个报文不需要加mbap头

官网:

http://api.hslcommunication.cn/html/dc91004f-2a78-e371-c080-b27480978b5d.htm


工作记录

深层原理不记录网上都是

报文分为

mbap头 +PDU(功能码+数据 )

MBAP头:

事务标识符:先理解为和返回的要对应相当于这次沟通事件的名字上传的 00 01 那返回的开头是00 01 的就是这个上传的返回 因为返回和上传可能会有很多所有要区分(简单理解上传的这里是多少返回的就得是多少 上传00 02那返回就是00 02开头)

协议标识符:00 00 就是modbus协议的(这个协议就是modbus tcp所有这里可以默认就是写死的)

后面的报文长度:就是数后面多少位数据(不同的功能码数据的长度会不同,比如写的话还要有写几位写入的数据等等)

从站地址:这个一般在要通讯的东西上设置(这次要通讯的是电批控制器就可以看控制器上设置的多少一般一台就是01 )

PDU ;这部分可以理解为modbus rtu的上传数据少一个从站地址因为从站地址已经在前面的MBAP头里有的

读的03 

例子:00 01 00 00 00 06 01 03 00 4A 00 01

读寄存器4A的一个长度

返回

例子00 01 00 00 00 05 01 03 02 00 08


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值