文档详情

工业网络技术(微课版)课件 3.2Modbus-RTU报文解析.pptx

发布:2025-06-11约4.83千字共41页下载文档
文本预览下载声明

Modbus-RTU报文解析服务教育成就未来北京新大陆时代科技有限公司

Modbus-RTU报文解析工具开发报文解析工具测试公共功能码实例Modbus-RTU报文解析

Modbus-RTU报文解析工具开发1.初始化(1)创建文件在串口调试助手的基础上进行开发,将串口调试助手“main”中的代码复制到“main2”中编辑,如图所示。

Modbus-RTU报文解析工具开发(2)安装crcmod包单击工具栏“工具”选项,选择“管理包”选项,在弹出的界面中输入“crcmod”,单击“在PyPl上搜索”按钮,搜索结果中出现crcmod,如图所示,单击进入并安装,安装crcmod包用于ModbusRTU的CRC校验值处理。

Modbus-RTU报文解析工具开发(3)导入crcmod包打开main2.py文件,在导入包部分的代码上,添加fromnewfa.systemimportcrc语句将newfa.system下的crc函数导入。

Modbus-RTU报文解析工具开发2.数据类型转换在导入包后,新增str类型转hex类型的类型转换方法,用于将发送框中的string类型的数据转换成十六进制后再进行发送。

Modbus-RTU报文解析工具开发3.定义主窗口主窗口的标题设置成“Modbus-RTU报文解析工具”。

Modbus-RTU报文解析工具开发3.定义主窗口主窗口的标题设置成“Modbus-RTU报文解析工具”。

Modbus-RTU报文解析工具开发4.定义数据记录区、数据发送区、串口配置区定义一个标题为“数据记录”的框架作为数据记录区,该区域可输入文本,用于显示串口操作及发送和接收的数据。定义一个标题为“数据发送”的框架作为数据发送区,该区域可输入文本,用于输入要发送的数据及执行发送操作。定义一个标题为“串口设置”的框架,将串口、波特率、数据位、奇偶校验位、停止位定义的下拉列表置于该框架内。数据记录区、数据发送区、串口配置区的搭建与main.py中一致,不作修改。

Modbus-RTU报文解析工具开发

Modbus-RTU报文解析工具开发5.定义接收函数打开串口命令基本与原本一致,改动在接收方法中,仅在从串口接收到的数据长度大于1时才将接收到的数据写入到数据记录区中。

Modbus-RTU报文解析工具开发6.定义CRC校验函数在打开串口后新增CRC校验计算区,定义crc计算方法用于读取数据发送文本框内的数值并将计算后的crc校验码写入到crc文本框内。通过crc计算按钮来控制crc计算方法的调用。

Modbus-RTU报文解析工具开发7.定义发送方法定义发送方法,发送方法先读取数据发送文本框内的数值并赋给变量data,然后将data数据处理后,通过串口发送出去,并将发送出去的数据以“发送:+数据”的格式显示在数据记录文本框中,通过发送按钮调用发送方法。

公共功能码实例(1)功能读取从站线圈寄存器,可读单个或多个,执行位操作。(2)主机发送指令主机发送数据格式:从站地址+功能码+寄存器起始地址+寄存器数量+校验码。假设从机地址为0x02,要读取的寄存器起始地址为0x0032,结束地址为0x003e,即寄存器读取范围为0x0032~0x0044,共读取13个连续线圈的值,发送的协议如表所示。1.01H-读线圈状态

公共功能码实例(3)从站响应返回从站响应返回数据格式:从站地址+功能码+返回字节数+返回数据值+校验码。每一个线圈状态由一位返回数据值表示。线圈状态为ON时,返回数据值为1。线圈状态为OFF时,返回数据值为0。返回字节数由所需读取的连续线圈数决定,每8个位组成一个字节,例如本例需读取13个连续线圈,13/8商1余5,因此需要2个字节来表示线圈状态,即返回字节数为2。字节1存放0x32~0x39的线圈状态,其中最低地址的线圈状态存放在最低位。字节2存放0x40~0x44的线圈状态,剩余位数添0补位。返回的协议如表所示。

公共功能码实例data1即为字节1,data1:0xB3data1线圈状态如表所示data2即为字节2,线圈状态不够8位,字节高位添0补位,data2:0x1Bdata2线圈状态如表所示。

公共功能码实例(1)功能读取从站保持寄存器,可读单个或多个,执行字节操作。(2)主机发送指令主机发送数据格式:从站地址+功能码+寄存器起始地址+寄存器数量+校验码。假设从机地址为0x01,要读取的寄存器起始地址为0x0025,结束地址为0x0026,即寄存器读取范围为0x0025~0x0026,共读取2个保持寄存器的数据,发送的协议如表所示。2.03H-读保持寄存器

公共功能码实例(3)从站响应返回从站响应返回数据格式:从站地址+功能码+返回字节数+返回数据

显示全部
相似文档