System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及智能电网,尤其涉及一种通用modbus协议解析方法、装置及设备。
技术介绍
1、modbus协议是一种用于电能表通信的协议,主要用于智能电能表和电力管理系统之间的通信,通过modbus协议,电力管理系统可以实时获取电能表的电能数据,监控电能使用情况,进行电能计量和结算等操作,从而实现对电能的有效管理和控制。
2、目前,存在对于modbus协议端设备,同一类型的modbus协议端设备的存储地址没有统一的规范,这就会存在不同厂家生产的modbus协议端设备,报文解析的方式存在差异的情况,所以针对不同厂家的modbus协议端设备,就需要开发不同的程序进行处理。
技术实现思路
1、本申请的主要目的在于提供一种通用modbus协议解析方法、装置及设备,旨在解决modbus协议端设备,因同一类型的设备存储地址没有统一的规范,导致针对不同设备,需要开发不同的程序进行报文解析的技术问题。
2、为实现上述目的,本申请提供一种通用modbus协议解析方法,包括以下步骤:
3、根据至少一个目标设备的协议,编辑与目标设备对应的第一配置文件,所述第一配置文件被配置为获取目标设备的第一配置信息,其中,所述第一配置文件包括用于表征协议解析信息的配置文件中的至少一项,所述第一配置信息包括至少一项配置参数;
4、根据所述第一配置文件,生成第一请求帧并发送所述第一请求帧至目标设备;
5、响应于所述第一请求帧对应的第一应答帧,编辑目标设备对应的第二配
6、根据所述第二配置文件对应的第二配置信息,生成第二请求帧并发送所述第二请求帧至目标设备;
7、响应于所述第二请求帧对应的第二应答帧,对所述第二应答帧进行拆分,获得第一解析结果;
8、根据所述第一解析结果,获得目标设备的目标配置参数,以所述目标配置参数作为第二解析结果。
9、可选的,所述根据至少一个目标设备的协议,获得目标设备对应的第一配置文件,所述第一配置文件被配置为获取目标设备的第一配置信息的步骤,包括:
10、根据目标设备的目标寄存器对应的第一标识,对目标设备的协议进行分解,获得多个第一分解变量和所述多个第一分解变量对应的第一配置参数,以所述第一分解变量和第一配置参数作为协议解析配置文件,其中,所述第一配置参数包括用于表征目标设备状态的数据中的至少一项;
11、根据预设的调控方案,生成第一遥控命令和/或第一遥调命令,以所述第一遥控命令和所述第一遥调命令作为调控命令配置文件,所述第一遥控命令和/或所述第一遥调命令被配置为在接收到来自管理平台的第二遥控命令和/或第二遥调命令后,根据第二配置参数和预设的第一拼帧规则,生成设置寄存器的帧;
12、根据预设的调控方案,生成拼帧命令和第一召测频率命令,以所述拼帧命令和所述第一召测频率命令作为数据召测配置文件,其中,所述拼帧命令被配置为在开始召测后,根据预设的第二拼帧规则,生成读寄存器的帧,所述第一召测频率命令被配置为在接收到第二召测频率命令后,根据第二召测频率命令中的召测任务,定时触发召测请求;
13、根据预设的调控方案,生成第二召测频率命令,以所述第二召测频率命令作为任务配置文件,所述第二召测频率命令被配置为根据预设的调控方案,生成召测任务;
14、获取目标设备的地址,以所述目标设备的地址作为档案配置文件中的地址参数;
15、根据所述协议解析配置文件、所述调控命令配置文件、所述数据召测配置文件、所述任务配置文件和所述档案配置文件,获得所述第一配置文件。
16、可选的,所述根据所述第一配置文件,生成第一请求帧并发送所述第一请求帧至目标设备的步骤,包括:
17、根据所述任务配置文件,定时触发召测请求;
18、根据所述档案配置文件中的地址参数,获得设备地址集合,遍历至少一个目标设备进行召测;
19、根据所述设备地址集合,读取目标设备对应的数据召测配置文件中的生成的所述读寄存器的帧作为第一请求帧;
20、发送所述读寄存器的帧至目标设备并记录所述读寄存器的帧对应的寄存器的起始地址。
21、可选的,所述响应于所述第一请求帧对应的第一应答帧,编辑目标设备对应的第二配置文件的步骤,包括:
22、根据所述第一请求帧,读取所述第一配置文件,转换所述第一配置文件的格式,获得第二配置文件并定位到对应的目标设备。
23、可选的,所述根据所述第二配置文件对应的第二配置信息,生成第二请求帧并发送所述第二请求帧至目标设备的步骤,包括:
24、获取目标设备的设备地址,根据寄存器数量、所述设备地址和所述第一请求帧对应的所述寄存器的起始地址,生成第二请求帧并发送所述第二请求帧至目标设备。
25、可选的,所述响应于所述第二请求帧对应的第二应答帧,对所述第二应答帧进行拆分,获得第一解析结果的步骤,包括:
26、响应于所述第二请求帧对应的第二应答帧,根据所述寄存器的起始地址,从所述第二应答帧获取数据域,以所述数据域作为第一解析结果。
27、可选的,所述根据所述第一解析结果,获得目标设备的目标配置参数,以所述目标配置参数作为第二解析结果的步骤,包括:
28、依次查询所述数据域对应的第二配置参数,直至取完整个数据域,获得多个第二配置参数;
29、将多个所述第二配置参数作为第二解析结果并存储。
30、可选的,在所述根据所述第一解析结果,获得目标设备的目标配置参数,以所述目标配置参数作为第二解析结果的步骤之后,还包括:
31、发送所述第二解析结果至管理平台;
32、响应于来自管理平台的第二解析结果对应的调控命令,对目标设备进行调控。
33、此外,为实现上述目的,本申请还提供一种通用modbus协议解析装置,包括:
34、第一编辑模块,所述第一编辑模块用于根据至少一个目标设备的协议,获得与目标设备对应的第一配置文件,所述第一配置文件被配置为获取目标设备的第一配置信息,其中,所述第一配置文件包括用于表征协议解析信息的配置文件中的至少一项,所述第一配置信息包括至少一项配置参数;
35、第一生成模块,所述第一生成模块用于根据所述第一配置文件,生成第一请求帧并发送所述第一请求帧至目标设备;
36、第二编辑模块,所述第二编辑模块用于响应于所述第一请求帧对应的第一应答帧,编辑目标设备对应的第二配置文件;
37、第二生成模块,所述第二生成模块用于根据所述第二配置文件对应的第二配置信息,生成第二请求帧并发送所述第二请求帧至目标设备;
38、第一解析模块,所述第一解析模块用于响应于所述第二请求帧对应的第二应答帧,对所述第二应答帧进行拆分,获得第一解析结果;
39、第二解析模块,所述第二解析模块用于根据所述第一解析结果,获得目标设备的目标配置参数,以本文档来自技高网...
【技术保护点】
1.一种通用Modbus协议解析方法,其特征在于,包括以下步骤:
2.如权利要求1所述的一种通用Modbus协议解析方法,其特征在于,所述根据至少一个目标设备的协议,获得目标设备对应的第一配置文件的步骤,包括:
3.如权利要求2所述的一种通用Modbus协议解析方法,其特征在于,所述根据所述第一配置文件,生成第一请求帧并发送所述第一请求帧至目标设备的步骤,包括:
4.如权利要求3所述的一种通用Modbus协议解析方法,其特征在于,所述响应于所述第一请求帧对应的第一应答帧,编辑目标设备对应的第二配置文件的步骤,包括:
5.如权利要求4所述的一种通用Modbus协议解析方法,其特征在于,所述根据所述第二配置文件对应的第二配置信息,生成第二请求帧并发送所述第二请求帧至目标设备的步骤,包括:
6.如权利要求4所述的一种通用Modbus协议解析方法,其特征在于,所述响应于所述第二请求帧对应的第二应答帧,对所述第二应答帧进行拆分,获得第一解析结果的步骤,包括:
7.如权利要求6所述的一种通用Modbus协议解析方法,其特
8.如权利要求1所述的一种通用Modbus协议解析方法,其特征在于,在所述根据所述第一解析结果,获得目标设备的目标配置参数,以所述目标配置参数作为第二解析结果的步骤之后,还包括:
9.一种通用Modbus协议解析装置,其特征在于,包括:
10.一种电子设备,其特征在于,包括:
...【技术特征摘要】
1.一种通用modbus协议解析方法,其特征在于,包括以下步骤:
2.如权利要求1所述的一种通用modbus协议解析方法,其特征在于,所述根据至少一个目标设备的协议,获得目标设备对应的第一配置文件的步骤,包括:
3.如权利要求2所述的一种通用modbus协议解析方法,其特征在于,所述根据所述第一配置文件,生成第一请求帧并发送所述第一请求帧至目标设备的步骤,包括:
4.如权利要求3所述的一种通用modbus协议解析方法,其特征在于,所述响应于所述第一请求帧对应的第一应答帧,编辑目标设备对应的第二配置文件的步骤,包括:
5.如权利要求4所述的一种通用modbus协议解析方法,其特征在于,所述根据所述第二配置文件对应的第二配置信息,生成第二请求帧并发送所述第二...
【专利技术属性】
技术研发人员:代辉,郭加兵,全靖,
申请(专利权)人:成都汉度科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。