科创梦想,节效未来
INEWS / 新闻中心

Modbus协议与上位机软件编程,上位机应该怎么编程

来源: | 作者:合肥科节智能科技有限公司 | 发布时间: 905天前 | 682 次浏览 | 分享到:

Modbus是由MODICON公司于1979年开发的一种工业现场总线协议标准。Modbus协议是应用层消息传输协议,包括ASCII、RTU和TCP。之前写过RTU和ASCII的文章,这次写的是基于Modbus TCP协议的上位机软件。

报文格式:ModbusTCP的数据帧可以分为两部分:MBAP+PDU。

1.MBAP是消息头,长度为7字节,组成如下:

2,帧结构PDU:

PDU由功能代码+数据组成。代码为1字节,数据长度可变,由具体函数决定。

Modbus操作对象有四种:线圈、离散输入、输入寄存器和保持寄存器。根据对象的不同,Modbus功能代码有:

例如,0x01:读取线圈

从站点读取1 ~ 2000个连续线圈的状态,开= 1,关= 0。

请求:MBAP功能码起始地址H起始地址L数量H数量L(共12字节)响应:MBAP功能码数据长度数据(一个地址的数据为1位)如:00 02 00 00 06 01 00 02 00 08在从站0x01中,读取起始地址为0x0002的线圈数据,读取0x0008位回:00 02 00 00 04 01 01 01 01 01 01 01 01 01。