一种传感数据解析方法及装置与流程

文档序号:12890052阅读:352来源:国知局
一种传感数据解析方法及装置与流程
本发明涉及数据处理
技术领域
,尤其涉及一种传感数据解析方法及装置。
背景技术
:传感器是一种能够探测、采集外界的信号、物理条件(如光、热、湿度),并传递采集到的信息的物理装置,广泛应用于物联网、智慧城市、智能家居、智慧农业、医疗健康等系统中。现有技术中,传感器通常使用私有的传感器协议对采集得到的元数据进行封装,并将封装得到的初始数据发送到系统终端;系统终端将接收到的初始数据透传到相应的应用系统。应用系统对接收到的初始数据进行协议适配,根据协议类型进行相应的协议解析,以从初始数据中提取出元数据。在实现本发明过程中,发明人发现现有的传感数据解析方法至少存在以下问题:由于不同的传感器厂商生产的不同类型的传感器具有各自私有的传感器协议,因此,传感器协议种类繁多,通常包括成千上万种私有协议,应用系统无法预先识别传感器的协议类型,因而需要在开发应用系统时,预先定义应用系统支持的各种传感器协议,并在应用系统中植入相应的协议解析程序,若有新的传感器接入,则需要根据该传感器协议,重新在应用系统中植入相应的协议解析程序,操作复杂,导致系统无法快速实现对不同传感器类型的数据解析。技术实现要素:鉴于上述问题,本发明提出了一种传感数据解析方法及装置,能够快速、高效地实现对不同传感器类型的数据解析,支持不同传感器类型的接入。本发明的一个方面,提供了一种传感数据解析方法,包括:获取传感器实时采集的传感数据,所述传感数据中包括所述传感器的传感器标识信息和传感器状态数据;根据所述传感器标识信息确定所述传感器的传感器类型,并根据所述传感器类型查找对应的数据解析模板;以及采用所述数据解析模板对所述传感器状态数据进行解析。可选地,在所述采用所述数据解析模板对所述传感器状态数据进行解析之后,所述方法还包括:根据预设的数据过滤规则对解析后的数据进行过滤,得到满足所述数据过滤规则的目标传感器状态数据;根据所述传感器类型查找对应的数据监测模板;以及采用所述数据监测模板对所述目标传感器状态数据进行实时监测和预警,所述数据监测模板通过预先设置的样式风格和/或颜色对所述传感数据的异常状态进行预警。可选地,所述根据所述传感器标识信息确定所述传感器的传感器类型,根据所述传感器类型查找对应的数据解析模板,包括:根据所述传感器标识信息查找预设的映射关系,以获取所述传感器标识信息对应传感器的传感器类型,所述映射关系中包括有传感器标识信息和传感器类型之间的对应关系;根据所述传感器类型判定所述传感器状态数据对应的解析类型,所述解析类型至少包括表达式解析、解析类解析;根据所述解析类型查找对应的数据解析模板。可选地,当所述解析类型为表达式解析时,所述数据解析模板为表达式解析函数;所述采用所述数据解析模板对所述传感器状态数据进行解析,包括:根据所述表达式解析函数对所述传感器状态数据进行解析。可选地,所述根据所述表达式解析函数对所述传感器状态数据进行解析,包括:根据所述表达式解析函数中的正则表达式从所述传感器状态数据中提取对应的变量数据;解析所述表达式解析函数,以获取所述表达式解析函数中添加的描述指示信息,所述描述指示信息用于描述所述变量数据的数据处理方法;根据所述描述指示信息对所述变量数据进行数据处理。可选地,当所述解析类型为解析类解析时,所述数据解析模板为解析类;所述采用所述数据解析模板对所述传感器状态数据进行解析,包括:根据所述解析类对所述传感器状态数据进行解析。本发明的另一个方面,提供了一种传感数据解析装置,包括:数据获取模块,用于获取传感器实时采集的传感数据,所述传感数据中包括所述传感器的传感器标识信息和传感器状态数据;第一模板查找模块,用于根据所述传感器标识信息确定所述传感器的传感器类型,并根据所述传感器类型查找对应的数据解析模板;数据解析模块,用于采用所述数据解析模板对所述传感器状态数据进行解析。可选地,所述装置还包括:数据过滤模块,用于在所述数据解析模块采用所述数据解析模板对所述传感器状态数据进行解析之后,根据预设的数据过滤规则对解析后的数据进行过滤,得到满足所述数据过滤规则的目标传感器状态数据;第二模板查找模块,用于根据所述传感器类型查找对应的数据监测模板;数据显示模块,用于采用所述数据监测模板对所述目标传感器状态数据进行实时监测和预警,所述数据监测模板通过预先设置的样式风格和/或颜色对所述传感数据的异常状态进行预警。可选地,所述第一模板查找模块,具体包括:获取子模块,用于根据所述传感器标识信息查找预设的映射关系,以获取所述传感器标识信息对应传感器的传感器类型,其中,所述映射关系中包括有传感器标识信息和传感器类型之间的对应关系;判定子模块,用于根据所述传感器类型判定所述传感器状态数据对应的解析类型,所述解析类型至少包括表达式解析、解析类解析;查找子模块,用于根据所述解析类型查找对应的数据解析模板。可选地,当所述解析类型为表达式解析时,所述数据解析模板为表达式解析函数,所述数据解析模块,具体用于根据所述表达式解析函数对所述传感器状态数据进行解析;当所述解析类型为解析类解析时,所述数据解析模板为解析类,所述数据解析模块,具体用于根据所述解析类对所述传感器状态数据进行解析。本发明实施例提供的传感数据解析方法及装置,通过使用数据解析模板的方式可以支持不同类型、不同厂家传感器类型的接入,而且在传感数据解析协议有升级或改动时,可以只针对用于定义参数变量的数据解析模板进行改动,无需修改用于实现逻辑处理的程序源代码,无需重新编译,即可实现数据解析,实现了定义与逻辑处理的分离,进而能够快速、高效地实现对不同传感器类型的数据解析。上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。附图说明通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:图1为本发明实施例提出的一种传感数据解析方法的流程图;图2为本发明实施例提出的另一种传感数据解析方法的流程图;图3为本发明实施例中的实现传感数据解析的具体工作流程图;图4为本发明实施例提出的一种传感数据解析方法中步骤s14的细分流程图;图5为本发明实施例提出的一种传感数据解析装置的结构框图;图6为本发明实施例提出的一种传感数据解析装置的结构框图。具体实施方式下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。本
技术领域
技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。本
技术领域
技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非被特定定义,否则不会用理想化或过于正式的含义来解释。图1示意性示出了本发明一个实施例的传感数据解析方法的流程图。该方法又设置在系统终端中的传感数据解析装置实现,参照图1,本发明实施例的传感数据解析方法具体包括以下步骤:s11、获取传感器实时采集的传感数据,所述传感数据中包括所述传感器的传感器标识信息和传感器状态数据。其中,所述传感器标识信息可以为传感器编号。在一个具体示例中,传感数据解析装置接受传感器实时采集并上传的传感数据,该传感数据的数据包格式如表一所示:表一传感数据的数据包格式传感器编号传感器状态数据24字节n字节其中,n的大小具体根据传感器采集数据的格式和数据量进行设置,本发明对此不做具体限定。s12、根据所述传感器标识信息确定所述传感器的传感器类型,并根据所述传感器类型查找对应的数据解析模板。在实际应用中,可预先建立包括有传感器标识信息和传感器类型之间的对应关系的映射关系,然后根据传感数据中包括的传感器的传感器标识信息查找该预设的映射关系,以快速获取该传感器的传感器类型。s13、采用所述数据解析模板对所述传感器状态数据进行解析。本发明实施例中,预先根据传感器类型定义相应的数据解析模板,当传感器从底层实时采集到传感数据后,通过调取对应的数据解析模板解析采集的数据。本发明实施例提供的传感数据解析方法,通过使用数据解析模板的方式可以支持不同类型、不同厂家传感器类型的接入,而且在传感数据解析协议有升级或改动时,可以只针对用于定义参数变量的数据解析模板进行改动,无需修改用于实现逻辑处理的程序源代码,无需重新编译,即可实现数据解析,实现了定义与逻辑处理的分离,进而能够快速、高效地实现对不同传感器类型的数据解析。图2示意性示出了本发明另一个实施例的传感数据解析方法的流程图。参照图2,本发明实施例的传感数据解析方法具体包括以下步骤:s11、获取传感器实时采集的传感数据,所述传感数据中包括所述传感器的传感器标识信息和传感器状态数据。s12、根据所述传感器标识信息确定所述传感器的传感器类型,并根据所述传感器类型查找对应的数据解析模板。s13、采用所述数据解析模板对所述传感器状态数据进行解析。s14、根据预设的数据过滤规则对解析后的数据进行过滤,得到满足所述数据过滤规则的目标传感器状态数据。其中,所述的过滤规则可由用户自定义。此外,系统中还预设有最基本的过滤规则,包括非法值过滤、原值过滤,如最新采集的数据和上一次数据相比没有变动或变动未达到设定的阈值等基础规则。s15、根据所述传感器类型查找对应的数据监测模板。s16、采用所述数据监测模板对所述目标传感器状态数据进行实时监测和预警,所述数据监测模板通过预先设置的样式风格和/或颜色对所述传感数据的异常状态进行预警。本发明实施例中,传感器负责底层传感数据的采集,将采集的传感数据上传传感数据解析装置,传感数据解析装置对预先根据传感器类型设置的相应的数据解析模板和数据监测模板进行管理和存储,根据传感器的传感器类型调用对应的数据解析模板进行数据解析;并利用预设的过滤规则对解析后的数据进行过滤,然后根据传感器类型调用对应数据监测模板对传感器当前的状态进行实时展示。此外,传感数据解析装置还实现对过滤后的数据进行存储。本发明实施例不仅能够快速、高效地实现对不同传感器类型的数据解析,而且通过过滤规则和数据监测模板的设定,可以更加准确地解析出用户所需求的数据,并按照用户需求对其进行展示,提升用户体验。本发明实施例中,所述根据所述传感器标识信息确定所述传感器的传感器类型,根据所述传感器类型查找对应的数据解析模板,具体包括:根据所述传感器标识信息查找预设的映射关系,以获取所述传感器标识信息对应传感器的传感器类型;所述映射关系中包括有传感器标识信息和传感器类型之间的对应关系。本发明实施例通过预先建立映射关系的方式,能够根据传感器标识信息快速、准确地确定传感器的传感器类型,提升系统整体性能。根据所述传感器类型判定所述传感器状态数据对应的解析类型,所述解析类型至少包括表达式解析、解析类解析。根据所述解析类型查找对应的数据解析模板。具体的,当所述解析类型为解析类解析时,所述数据解析模板为解析类。相应地,所述采用所述数据解析模板对所述传感器状态数据进行解析,包括:根据所述解析类对所述传感器状态数据进行解析。当所述解析类型为表达式解析时,所述数据解析模板为表达式解析函数。相应地,所述采用所述数据解析模板对所述传感器状态数据进行解析,具体包括:根据所述表达式解析函数对所述传感器状态数据进行解析。在实际应用中,传感数据解析装置实现数据解析的具有工作流程如图3所示。参见图3,首先获取到传感器状态数据,然后解析出传感器对应的传感器编号,并根据该传感器编号获取对应传感器类型,然后查询该类型对应的解析类型,解析类型主要支持:表达式解析、解析类解析(支持java、groovy和c#语言),如果解析类型为表达式解析类型,则调用对应的表达式解析函数库进行数据解析,如果是解析类类型,则调用对应的解析类进行数据解析,解析完成后得到json格式的数据,以便后续进行数据过滤。进一步地,如图4所示,所述根据所述表达式解析函数对所述传感器状态数据进行解析,具体包括以下步骤:s141、根据所述表达式解析函数中的正则表达式从所述传感器状态数据中提取对应的变量数据;s142、解析所述表达式解析函数,以获取所述表达式解析函数中添加的描述指示信息,所述描述指示信息用于描述所述变量数据的数据处理方法;s143、根据所述描述指示信息对所述变量数据进行数据处理。本发明实施例中,通过在基于正则表达式的数据提取方法基础上进行扩展,为每一表达式解析函数加入了用于描述所述变量数据的数据处理方法的描述指示信息,用于对数据进行转换。例如,某一温湿度传感器的数据解析模板为:\d{2}(?<v0{convert.toint16(v0)/10.0}>\d{4})\d{2}(?<v1{convert.toint16(v0)/100.0}>\d{4})\d{2}(?<v2>\d{4});该数据解析模板表示该传感器接收到的字符串共有20位,解析器将第3到6位的数据解析出,并转换为整型除以10,然后将结果赋值给变量v0;解析器将第9到12位的数据解析出,并转换为整型除以100,然后将结果赋值给变量v1;解析器将第15到18位的数据解析出,赋值给变量v2。依据以上解析方法,如果输入的数据为100358001310000020,则需要解析出来的变量数据为0358、1310以及0020,根据所述描述指示信息对所述变量数据进行数据处理,则根据以上解析模板可以将数据解析为v0=35.8,v1=13.10,v2=0020。需要说明的是,对于简单的数据类型转换和值运算,可以直接调用对应开发语言支持库函数;对于部分复杂操作,可以由开发人员根据用户需求编写相应的解析类,进行运算。本发明实施例通过为每一表达式解析函数加入了用于描述所述变量数据的数据处理方法的描述指示信息,可以方便的对具有复杂结构的传感器进行数据解析、转换和展示;而且使用正则表达式能够对各个具体参数进行各种各样的数据解析,能够适用各种不同的解析方法以及各种不同的解析协议,通用性强。本发明实施例可以快速支持不同传感器类型的接入,在后台实现对数据的解析和保存。对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。图5示意性示出了本发明一个实施例的传感数据解析装置的结构框图。参照图5,本发明实施例的传感数据解析装置具体包括数据获取模块501、第一模板查找模块502以及数据解析模块503,其中:所述的数据获取模块501,用于获取传感器实时采集的传感数据,所述传感数据中包括所述传感器的传感器标识信息和传感器状态数据;所述的第一模板查找模块502,用于根据所述传感器标识信息确定所述传感器的传感器类型,并根据所述传感器类型查找对应的数据解析模板;所述的数据解析模块503,用于采用所述数据解析模板对所述传感器状态数据进行解析。本发明实施例提供的传感数据解析装置,通过使用数据解析模板的方式可以支持不同类型、不同厂家传感器类型的接入,而且在传感数据解析协议有升级或改动时,可以只针对用于定义参数变量的数据解析模板进行改动,无需修改用于实现逻辑处理的程序源代码,无需重新编译,即可实现数据解析,实现了定义与逻辑处理的分离,进而能够快速、高效地实现对不同传感器类型的数据解析。在本发明的一个可选实施例中,如图6所示,所述装置还包括数据过滤模块504、第二模板查找模块505和数据显示模块506,其中:所述的数据过滤模块504,用于在所述数据解析模块采用所述数据解析模板对所述传感器状态数据进行解析之后,根据预设的数据过滤规则对解析后的数据进行过滤,得到满足所述数据过滤规则的目标传感器状态数据;所述的第二模板查找模块505,用于根据所述传感器类型查找对应的数据监测模板;所述的数据显示模块506,用于采用所述数据监测模板对所述目标传感器状态数据进行实时监测和预警,所述数据监测模板通过预先设置的样式风格和/或颜色对所述传感数据的异常状态进行预警。本发明实施例中,所述第一模板查找模块502,具体包括获取子模块、判定子模块和查找子模块,其中:所述的获取子模块,用于根据所述传感器标识信息查找预设的映射关系,以获取所述传感器标识信息对应传感器的传感器类型,其中,所述映射关系中包括有传感器标识信息和传感器类型之间的对应关系;所述的判定子模块,用于根据所述传感器类型判定所述传感器状态数据对应的解析类型,所述解析类型至少包括表达式解析、解析类解析;所述的查找子模块,用于根据所述解析类型查找对应的数据解析模板。具体的,当所述解析类型为解析类解析时,所述数据解析模板为解析类。相应的,所述数据解析模块503,具体用于根据所述解析类对所述传感器状态数据进行解析。具体的,当所述解析类型为表达式解析时,所述数据解析模板为表达式解析函数。相应的,所述数据解析模块503,具体用于根据所述表达式解析函数对所述传感器状态数据进行解析。进一步地,数据解析模块503,具体用于根据所述表达式解析函数中的正则表达式从所述传感器状态数据中提取对应的变量数据;解析所述表达式解析函数,以获取所述表达式解析函数中添加的描述指示信息,所述描述指示信息用于描述所述变量数据的数据处理方法;根据所述描述指示信息对所述变量数据进行数据处理。对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。此外,本发明另一实施例还提供了一种电子设备,所述电子设备包括:壳体、处理器、存储器、电路板和电源电路,其中,所述电路板安置在所述壳体围成的空间内部,所述处理器和所述存储器设置在所述电路板上;所述电源电路,用于为所述电子设备的各个电路或器件供电;所述存储器用于存储可执行程序代码;所述处理器通过读取所述存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于执行以下步骤:获取传感器实时采集的传感数据,所述传感数据中包括所述传感器的传感器标识信息和传感器状态数据;根据所述传感器标识信息确定所述传感器的传感器类型;根据所述传感器类型查找对应的数据解析模板;以及采用所述数据解析模板对所述传感器状态数据进行解析。本发明实施例提供的传感数据解析方法及装置,通过使用数据解析模板的方式可以支持不同类型、不同厂家传感器类型的接入,而且在传感数据解析协议有升级或改动时,可以只针对用于定义参数变量的数据解析模板进行改动,无需修改用于实现逻辑处理的程序源代码,无需重新编译,即可实现数据解析,实现了定义与逻辑处理的分离,进而能够快速、高效地实现对不同传感器类型的数据解析。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。此外,本领域的技术人员能够理解,尽管在此的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1