CN104092659A - 一种通用协议数据解析方法 - Google Patents

一种通用协议数据解析方法 Download PDF

Info

Publication number
CN104092659A
CN104092659A CN201410242910.0A CN201410242910A CN104092659A CN 104092659 A CN104092659 A CN 104092659A CN 201410242910 A CN201410242910 A CN 201410242910A CN 104092659 A CN104092659 A CN 104092659A
Authority
CN
China
Prior art keywords
data analysis
configuration file
analysis method
data
puppy parc
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201410242910.0A
Other languages
English (en)
Inventor
梁成就
陶永红
高诚
刘靖
魏辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Gree Electric Appliances Inc of Zhuhai
Original Assignee
Gree Electric Appliances Inc of Zhuhai
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Gree Electric Appliances Inc of Zhuhai filed Critical Gree Electric Appliances Inc of Zhuhai
Priority to CN201410242910.0A priority Critical patent/CN104092659A/zh
Publication of CN104092659A publication Critical patent/CN104092659A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Communication Control (AREA)

Abstract

本发明公开一种通用协议数据解析方法,包括:建立对数据解析协议进行定义的配置文件;读取所述配置文件;读取相关数据;按照所述配置文件中对相关参数变量的定义进行数据解析。本发明实施例的通用协议数据解析方法在数据解析协议有升级或改动时,可以只针对用于定义参数变量的配置文件进行改动,无需修改用于实现逻辑处理的解析程序源代码,无需重新编译,即可运行解析程序,实现了定义与逻辑处理的分离;使用通用公式对能够对各个具体参数进行各种各样的数据解析,能够适用各种不同的解析方法以及各种不同的解析协议,通用性强。

Description

一种通用协议数据解析方法
技术领域
本发明涉及网络数据通信技术领域,具体涉及一种通用协议数据解析方法。
背景技术
实时通讯系统中需要进行协议数据的解析。普通协议数据解析方法中,不同协议数据的解析和解析程序源代码的内容是密切相关的,如果协议改变了,解析程序源代码也需要做出相应的修改,然后重新进行代码编译,才能发布程序。
图1是现有技术的空调监控系统的工作流程示意图。如图1和图2所示,在现有技术的空调监控系统中,典型的工作流程是:空调设备发送十六进制数据给监控平台,然后由监控平台根据相应的协议进行数据解析,最终解析出这些数据的意义。
针对上述情况,传统的数据解析方法如下:
第一步:读取空调设备发送的十六进制数据,并将其保存到解析程序相应的数组里面;
第二步:按照相应的数据解析协议申请多个有特定含义的变量,如防冻温度变量、系统信息变量、故障名称变量、冷却水进水温度变量、冷却水出水温度变量、机型编码变量、电压变量、电流变量、冷凝压力变量等,并利用第一步中的数组对各个变量进行赋值,如图2所示,图2是现有技术的某空调机型的Mobus协议示意图;
第三步:将上述各个变量的值与相应显示界面的名称进行对应,并一起进行显示输出。
上述方法中,对协议的定义放在了解析程序的源代码中,一旦相应的数据解析协议发生改变,例如增加参数或减少参数,就必须重新定义各个变量,从而必须重新编写解析程序源代码,才能正确解析数据。这样给协议数据的解析带来不便,使得传统的协议数据解析方法不具备通用性。
发明内容
本发明实施例中提供一种通用协议数据解析方法,使得能够在不修改解析程序源代码的基础上,实现对各种不同参数进行各种各样解析的目的。
为解决上述技术问题,本发明实施例提供一种通用协议数据解析方法,其步骤如下:
步骤(1)建立对数据解析协议进行定义的配置文件;
步骤(2)读取所述配置文件;
步骤(3)读取相关数据;
步骤(4)按照所述配置文件中对相关参数变量的定义进行数据解析。
作为优选,所述方法还包括:将数据解析结果通过显示界面进行输出。
作为优选,所述方法还包括:将数据解析结果存入数据库。
作为优选,所述方法还包括:根据数据解析结果操作相关设备。
作为进一步的优选,所述设备为空调设备。
作为优选,所述步骤(3)中的相关数据为空调设备的相关数据。
作为优选,所述步骤(1)中的配置文件为文本文件。
作为优选,所述配置文件中对相关参数变量的定义的内容包括参数变量的名称、参数变量的单位和参数变量的取值。
作为进一步的优选,所述参数变量的取值用通用公式进行表示。
作为再进一步的优选,在所述通用公式中设定一个变量word xx,代表在协议中需要取值的位置是第xx个字节,所述通用公式可以对所述变量word xx进行任意的算术运算。
所谓配置文件就是对数据解析协议进行定义的文件,对数据解析协议进行定义就是指对相关参数变量数据进行定义。其一般为高级语言编写的文本文件,但也可以是低级语言编写的源代码文件。其关键在于与解析协议中的其它内容例如运算程序内容分别开来单独设置,以便于单独更新或升级。
本发明至少具有以下有益效果:
由于本发明所述通用协议数据解析方法中对数据解析协议进行定义的配置文件是单独设置的,需要解析时将配置文件读到解析程序中,然后根据配置文件中的相关协议表达式解析数据。这种方法在数据解析协议有升级或改动时,可以只针对用于定义参数变量的配置文件进行改动,无需修改用于实现逻辑处理的解析程序源代码,无需重新编译,即可运行解析程序,实现了定义与逻辑处理的分离。
使用单独的文本文件对数据解析协议进行定义,无需将其编写在解析程序源代码中,可以实现配置文件与解析程序源代码的分离,使得解析程序的源代码简洁易懂。
使用通用公式能够对各个具体参数进行各种各样的数据解析,能够适用各种不同的解析方法以及各种不同的解析协议,通用性强。
附图说明
图1是现有技术的空调监控系统的工作流程示意图。
图2是现有技术的某空调机型的Mobus协议示意图。
图3是以空调为例的本发明实施例的通用协议数据解析方法的流程示意图。
图4是以空调为例的本发明实施例的通用协议数据解析方法的一个配置文件的示意图。
具体实施方式
下面结合具体实施例对本发明作进一步详细描述,但不作为对本发明的限定。
实施例
图3是以空调为例的本发明实施例的通用协议数据解析方法的流程示意图,图4是以空调为例的本发明实施例的通用协议数据解析方法的一个配置文件的示意图。在本实施例的空调监控系统中,空调设备发送二进制数据给监控平台,然后由监控平台根据相应的协议进行数据解析,最终解析出这些数据的意义。具体实现方法如下:
第一步:建立对空调设备数据解析协议进行定义的配置文件。本实施例中的配置文件是如图4所示的一个单独的文本文件,在配置文件中,对各个相关的参数变量进行定义。
例如,将空调设备运行参数“冷却水进水最低温度”的单位定义为摄氏度,将其取值用通用公式定义为(word37/10+word77*8)-1,其中word37表示在协议中需要取值的位置是第37个字节,word77表示在协议中需要取值的位置是第77个字节。这个公式的含义如下:数据解析协议的第37个字节除以10、数据解析协议的第77个字节乘以8,将以上两者之和减去1,计算得到冷却水进水最低温度值;
又如,将空调设备运行参数“低压压力”的单位定义为千帕,将其取值用通用公式定义为word38/10,这个公式的含义如下:将数据解析协议的第38个字节除以10,计算得到低压压力值;
再如,将空调设备运行参数“高压压力”的单位定义为千帕,将其取值用通用公式定义为word2*word3+10,这个公式的含义如下:将协议的第2个字节乘以协议的第3个字节,再加10,计算得到高压压力值。
上述通用公式的计算方式并不唯一,本领域技术人员也可以通过其他通用公式对各个运行参数进行定义。
第二步:将第一步中建立好的对空调设备数据解析协议进行定义的配置文件读到解析程序中。
第三步:读取空调设备发送过来的相关的二进制数据。
第四步:按照配置文件中对相关参数变量的定义进行数据解析。
在上述第四步之后还可以包括将数据解析结果通过显示界面进行输出,将数据解析结果存入数据库,和/或根据数据解析结果操作相关设备。
由于上述数据解析方法中对数据解析协议进行定义的配置文件是单独设置的,需要解析时将配置文件读到解析程序中,然后根据配置文件中的相关协议表达式解析数据。这种方法在数据解析协议有升级或改动时,可以只针对用于定义参数变量的配置文件进行改动,无需修改用于实现逻辑处理的解析程序源代码,无需重新编译,即可运行解析程序,实现了定义与逻辑处理的分离。
使用单独的文本文件对数据解析协议进行定义,无需将其编写在解析程序源代码中,可以实现配置文件与解析程序源代码的分离,使得解析程序的源代码简洁易懂。
使用通用公式对能够对各个具体参数进行各种各样的数据解析,能够适用各种不同的解析方法以及各种不同的解析协议,通用性强。
当然,以上是本发明的优选实施方式。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明基本原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。

Claims (10)

1.一种通用协议数据解析方法,其特征在于,包括:
步骤(1)建立对数据解析协议进行定义的配置文件;
步骤(2)读取所述配置文件;
步骤(3)读取相关数据;
步骤(4)按照所述配置文件中对相关参数变量的定义进行数据解析。
2.如权利要求1所述的通用协议数据解析方法,其特征在于,还包括:将数据解析结果通过显示界面进行输出。
3.如权利要求1所述的通用协议数据解析方法,其特征在于,还包括:将数据解析结果存入数据库。
4.如权利要求1所述的通用协议数据解析方法,其特征在于,还包括:根据数据解析结果操作相关设备。
5.如权利要求4所述的通用协议数据解析方法,其特征在于,所述设备为空调设备。
6.如权利要求1所述的通用协议数据解析方法,其特征在于,所述步骤(3)中的相关数据为空调设备的相关数据。
7.如权利要求1所述的通用协议数据解析方法,其特征在于,所述步骤(1)中的配置文件为文本文件。
8.如权利要求1至7之一所述的通用协议数据解析方法,其特征在于,所述配置文件中对相关参数变量的定义的内容包括参数变量的名称、参数变量的单位和参数变量的取值。
9.如权利要求8所述的通用协议数据解析方法,其特征在于,所述参数变量的取值用通用公式进行表示。
10.如权利要求9所述的通用协议数据解析方法,其特征在于,在所述通用公式中设定一个变量word xx,代表在协议中需要取值的位置是第xx个字节,所述通用公式可以对所述变量word xx进行任意的算术运算。
CN201410242910.0A 2014-06-03 2014-06-03 一种通用协议数据解析方法 Pending CN104092659A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410242910.0A CN104092659A (zh) 2014-06-03 2014-06-03 一种通用协议数据解析方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410242910.0A CN104092659A (zh) 2014-06-03 2014-06-03 一种通用协议数据解析方法

Publications (1)

Publication Number Publication Date
CN104092659A true CN104092659A (zh) 2014-10-08

Family

ID=51640341

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410242910.0A Pending CN104092659A (zh) 2014-06-03 2014-06-03 一种通用协议数据解析方法

Country Status (1)

Country Link
CN (1) CN104092659A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105159723A (zh) * 2015-09-14 2015-12-16 四川长虹电器股份有限公司 中央空调数据采集方法
CN106302697A (zh) * 2016-08-11 2017-01-04 珠海格力电器股份有限公司 一种空调数据的解析方法、装置及空调
CN106776512A (zh) * 2016-12-02 2017-05-31 浪潮通信信息系统有限公司 一种通用的文本数据处理方法
CN106899688A (zh) * 2017-03-15 2017-06-27 中国联合网络通信集团有限公司 一种物联网数据交互方法、物联网设备和物联网平台
CN108494752A (zh) * 2018-03-09 2018-09-04 万帮充电设备有限公司 一种协议的解析方法和装置
CN109818926A (zh) * 2018-12-25 2019-05-28 西安长远电子工程有限责任公司 一种无需预先规划的通信方法
CN110032535A (zh) * 2018-12-28 2019-07-19 北京润科通用技术有限公司 一种串口数据解析方法及装置
CN108954686B (zh) * 2018-07-27 2020-07-03 宁波奥克斯电气股份有限公司 一种空调控制装置、方法及空调器

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030204590A1 (en) * 2002-04-30 2003-10-30 Canon Kabushiki Kaisha Network device management system and method of controlling same
CN1713592A (zh) * 2004-06-27 2005-12-28 华为技术有限公司 一种通用数据采集的实现方法
CN1925638A (zh) * 2006-09-18 2007-03-07 华为技术有限公司 一种短消息的处理终端、方法及跟踪系统
CN101296119A (zh) * 2008-06-10 2008-10-29 中兴通讯股份有限公司 一种消息跟踪系统及方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030204590A1 (en) * 2002-04-30 2003-10-30 Canon Kabushiki Kaisha Network device management system and method of controlling same
CN1713592A (zh) * 2004-06-27 2005-12-28 华为技术有限公司 一种通用数据采集的实现方法
CN1925638A (zh) * 2006-09-18 2007-03-07 华为技术有限公司 一种短消息的处理终端、方法及跟踪系统
CN101296119A (zh) * 2008-06-10 2008-10-29 中兴通讯股份有限公司 一种消息跟踪系统及方法

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105159723A (zh) * 2015-09-14 2015-12-16 四川长虹电器股份有限公司 中央空调数据采集方法
CN106302697A (zh) * 2016-08-11 2017-01-04 珠海格力电器股份有限公司 一种空调数据的解析方法、装置及空调
CN106776512A (zh) * 2016-12-02 2017-05-31 浪潮通信信息系统有限公司 一种通用的文本数据处理方法
CN106899688A (zh) * 2017-03-15 2017-06-27 中国联合网络通信集团有限公司 一种物联网数据交互方法、物联网设备和物联网平台
CN108494752A (zh) * 2018-03-09 2018-09-04 万帮充电设备有限公司 一种协议的解析方法和装置
CN108494752B (zh) * 2018-03-09 2021-03-16 万帮星星充电科技有限公司 一种协议的解析方法和装置
CN108954686B (zh) * 2018-07-27 2020-07-03 宁波奥克斯电气股份有限公司 一种空调控制装置、方法及空调器
CN109818926A (zh) * 2018-12-25 2019-05-28 西安长远电子工程有限责任公司 一种无需预先规划的通信方法
CN109818926B (zh) * 2018-12-25 2020-10-09 西安长远电子工程有限责任公司 一种无需预先规划的通信方法
CN110032535A (zh) * 2018-12-28 2019-07-19 北京润科通用技术有限公司 一种串口数据解析方法及装置

Similar Documents

Publication Publication Date Title
CN104092659A (zh) 一种通用协议数据解析方法
US10338551B2 (en) P and ID and control system synchronization
CN104834537A (zh) 数据处理方法、服务器及客户端
CN107016019B (zh) 数据库索引创建方法及装置
JP5489958B2 (ja) 試験テーブル生成装置及びその方法
CN104199667B (zh) 一种新建mtk工程和提交代码的方法及系统
CN104579748B (zh) Scd在线校核的网络分析方法及系统
CN105354036A (zh) 数据库操作代码生成方法及装置
CN103678714B (zh) 实体知识库的构建方法和装置
CN105809309A (zh) 一种电力系统安控策略仿真系统及其仿真方法
CN106775937A (zh) 一种命令行校验方法及装置
CN105074592A (zh) 定序程序部件创建程序以及定序程序部件创建装置
CN105574032A (zh) 规则匹配运算方法及装置
CN105159809A (zh) 基于状态机故障定位方法以及装置
CN103970061A (zh) 数据生成装置以及方法
EP2804361B1 (en) Integrated interface system for power-system monitoring and control system
WO2014040488A1 (zh) 一种规划数据一致性保证的方法和装置
CN105426305A (zh) 一种控件属性解析系统及方法
CN103064988A (zh) 一种异常数据的检测方法及装置
CN105468770A (zh) 一种数据处理方法及系统
CN104504221A (zh) 一种评审数据处理方法和系统
CN105095568A (zh) 一种用于大型风机的快速建模方法
CN104392104A (zh) 一种航天器低频电缆导线长度及数量的确定方法
CN106776275A (zh) 一种基于分组复用的测试流程自动生成方法
CN113238748B (zh) 一种直流控保程序页面修改校验方法、装置、终端及介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20141008

RJ01 Rejection of invention patent application after publication