[发明专利]一种基于位域的Modbus TCP报文解析方法有效
| 申请号: | 202010724071.1 | 申请日: | 2020-07-24 |
| 公开(公告)号: | CN111917753B | 公开(公告)日: | 2023-04-18 |
| 发明(设计)人: | 韩玲 | 申请(专利权)人: | 西安航空学院 |
| 主分类号: | H04L69/22 | 分类号: | H04L69/22;H04L12/40 |
| 代理公司: | 西安研创天下知识产权代理事务所(普通合伙) 61239 | 代理人: | 郭璐 |
| 地址: | 710077 *** | 国省代码: | 陕西;61 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 modbus tcp 报文 解析 方法 | ||
1.一种基于位域的Modbus TCP报文解析方法,其特征在于,包括以下步骤:
S1:Modbus TCP协议基于主、从站工作模式运行,当主、从站建立TCP连接后,主站发送数据请求报文并进入侦听状态,从站收到请求报文后向主站发送数据请求响应报文;
S2:对接收到的报文进行校验匹配,判断报文是否是请求的数据报文的数据响应报文,如果是则转入下一步骤,反之则返回异常响应报文;
S3:对校验通过的请求响应报文进行数据域提取,将提出的有效数据域以Bit流存储;
S4:将以Bit流存储的有效数据进行位域类型转换,并得到相应的位域结构体;
S5:通过操作所述位域结构体,从而直接使用控制信息;
步骤S4中所述的将Bit流存储的有效数据进行位域类型转换的具体步骤包括:
S41:分析有效数据域存储的控制信息,定义与之对应的位域结构体;
定义位域结构体的包括五个定义规则,分别为:
规则1:控制信息中开关数据对应位域结构体成员的长度为1;
规则2:控制信息中以字节或字符存储的数据对应的位域结构体成员的长度为8;
规则3:控制信息中以字存储的数据对应的位域结构体成员的长度为16;
规则4:控制信息中以双字存储的数据对应的位域结构体成员长度为32;
规则5:控制信息的总长度及其数据顺序与位域结构体成员一致;
S42:将以Bit流方式存储的有效数据对应存储到相应的位域结构体中。
2.根据权利要求1所述的一种基于位域的Modbus TCP报文解析方法,其特征在于:步骤S2中所述的判断报文是否是请求的数据报文的数据响应报文的具体步骤包括:
S21:解析接收到的请求响应报文,获取报文中的功能码;
S22:校验所述功能码与发送的请求报文功能码是否一致,如果是则接收到的请求响应报文为该请求报文的响应报文,如果否则返回异常响应报文。
3.根据权利要求1所述的一种基于位域的Modbus TCP报文解析方法,其特征在于:步骤S3中所述的数据域提取的具体步骤包括:
S31:对校验通过的数据响应报文,去除响应报文的包头、包尾及功能码;
S32:将有效的数据以Bit流方式存储。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安航空学院,未经西安航空学院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010724071.1/1.html,转载请声明来源钻瓜专利网。





