1.本发明涉及计算机技术领域,特别是涉及一种对串口数据的通用化处理方法及装置。
背景技术:2.串口数据返回格式不同且字段含义不同,需要根据相应协议进行不同的解析,当协议字段含义调整时,后续会需要进行大量适应性的修改,这无疑会对整体数据处理造成不稳定影响,增加业务开发和测试验证的工作量。
技术实现要素:3.本发明提供了一种对串口数据的通用化处理方法及装置,以解决现有技术中串口数据返回数据格式和协议不同而影响数据处理的问题。
4.第一方面,本发明提供了一种对串口数据的通用化处理方法,该方法包括:获取串口传输的原始数据,将所述原始数据统一转化为具有预设的结构化的数据,使得转化后的数据具有通用性质,以适配不同协议的数据处理要求;
5.基于转换后的数据,按照当前的协议进行数据处理;
6.其中,所述预设的结构化的数据的数据定义包括以下中的一种或多种:名称、计量单位、缩放系数、起始位置、结束位置、bit起始位置、bit结束位置、协议类型、协议解析器。数据描述包括字段名称、字段数值和计量单位;
7.所述预设的结构化的数据的数据描述包括以下中的一种或多种:名称、数据值和计量单位。
8.可选地,所述获取串口传输的原始数据,包括:获取下位机回复给上位机的串口传输的原始数据。
9.可选地,将所述原始数据统一转化为具有预设的结构化的数据,使得转化后的数据具有通用性质,包括:通过协议解析器将所述原始数据统一转化为具有预设的结构化的数据,使得转化后的数据具有通用性质。
10.可选地,将所述原始数据统一转化为具有预设的结构化的数据,包括:将所述原始数据统一转化为具有预设的数据描述和预设的数据定义的的结构化的数据,得到具有数据描述集合的转换后的数据。
11.可选地,将所述原始数据统一转化为具有预设的数据描述和预设的数据定义的的结构化的数据,得到具有数据描述集合的转换后的数据,包括:
12.基于所述原始数据中的数据标识,将所述原始数据中的具有所述数据标识的数据字段统一转化为具有预设的数据描述和预设的数据定义的的结构化的数据,得到具有数据描述集合的转换后的数据,其中,所述数据字段包括以下中的一种或多种:电压、电流、温度、湿度和气压。
13.第二方面,本发明提供了一种对串口数据的通用化处理装置,该装置包括:
14.获取单元,用于获取串口传输的原始数据;转化单元,用于将所述原始数据统一转化为具有预设的结构化的数据,使得转化后的数据具有通用性质,以适配不同协议的数据处理要求;其中,所述预设的结构化的数据的数据定义包括以下中的一种或多种:名称、计量单位、缩放系数、起始位置、结束位置、bit起始位置、bit结束位置、协议类型、协议解析器。数据描述包括字段名称、字段数值和计量单位;
15.所述预设的结构化的数据的数据描述包括以下中的一种或多种:名称、数据值和计量单位。
16.可选地,所述转化单元还用于,通过协议解析器将所述原始数据统一转化为具有预设的结构化的数据,使得转化后的数据具有通用性质。
17.可选地,所述转化单元还用于,将所述原始数据统一转化为具有预设的数据描述和预设的数据定义的的结构化的数据,得到具有数据描述集合的转换后的数据。
18.可选地,所述转化元还用于,基于所述原始数据中的数据标识,将所述原始数据中的具有所述数据标识的数据字段统一转化为具有预设的数据描述和预设的数据定义的的结构化的数据,得到具有数据描述集合的转换后的数据,其中,所述数据字段包括以下中的一种或多种:电压、电流、温度、湿度和气压。
19.第三方面,本发明提供了一种计算机可读存储介质,所述计算机可读存储介质存储有信号映射的计算机程序,所述计算机程序被至少一个处理器执行时,以实现上述任一种所述的对串口数据的通用化处理方法。
20.本发明有益效果如下:
21.本发明是将串口返回的数据统一转化为具有一定结构化的数据,使得转化后的数据具有通用性质,从而能够适配不同协议的数据处理要求,进而实现对串口返回的数据的稳定处理,减少业务开发和测试验证的工作量,最终提高用户体验。
22.上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
23.通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
24.图1是本发明第一实施例提供的一种对串口数据的通用化处理方法的流程示意图;
25.图2是本发明第一实施例提供的对串口数据的处理流程示意图;
26.图3是本发明第一实施例提供的数据解析器的解析过程示意图;
27.图4是本发明第一实施例提供的对串口数据的通用化处理装置的示意图。
具体实施方式
28.本发明实施例针对现有串口数据返回数据格式和协议不同而影响数据处理的问题,将串口返回的数据统一转化为具有一定结构化的数据,使得转化后的数据具有通用性
质,从而能够适配不同协议的数据处理要求。以下结合附图以及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不限定本发明。
29.本发明第一实施例提供了一种异质性数据集的异常检测方法,参见图1,该方法包括:
30.s101、获取串口传输的原始数据;
31.具体来说,本发明实施例是获取下位机回复给上位机的串口传输的原始数据。也即本发明实施例所述的串口传输的原始数据实质就是串口返回的各种数据,由于串口返回的数据格式不一,并且也有协议不同的情况,这会给数据处理造成非常大的困扰,基于此,本发明通过获取串口传输的数据,并对该数据进行处理,以使得转化后的数据能够适配不同协议的要求。
32.s102、将所述原始数据统一转化为具有预设的结构化的数据,使得转化后的数据具有通用性质,以适配不同协议的数据处理要求;
33.具体实施时,本发明实施例是通过协议解析器将所述原始数据统一转化为具有预设的结构化的数据,使得转化后的数据具有通用性质。
34.其中,将所述原始数据统一转化为具有预设的结构化的数据,包括:
35.将所述原始数据统一转化为具有预设的数据描述和预设的数据定义的的结构化的数据,得到具有数据描述集合的转换后的数据。
36.也即,基于所述原始数据中的数据标识,将所述原始数据中的具有所述数据标识的数据字段统一转化为具有预设的数据描述和预设的数据定义的的结构化的数据,得到具有数据描述集合的转换后的数据,其中,所述数据字段包括以下中的一种或多种:电压、电流、温度、湿度和气压,当然也可以是其他各种数据字段,本发明仅是以上述几种字段为例来对本发明所述的方法进行说明。
37.具体来说,本发明实施例是将串口返回的数据统一转化为具有一定结构化的数据,使得转化后的数据具有通用性质,最终使得转化后的数据能够适配不同的协议,通过转化可以使得本技术能够顺畅地对多种串口返回数据进行顺畅处理,最终提高了用户体验。
38.也就是说,最终本发明可以基于转换后的数据,按照当前的协议进行数据处理,从而在用户无感的情况下实现对串口返回数据的处理。
39.具体实施时,本发明实施例所述的预设的结构化的数据的数据定义包括有名称、计量单位、缩放系数、起始位置、结束位置、bit起始位置、bit结束位置、协议类型和协议解析器。数据描述进一步可以包括字段名称、字段数值和计量单位;所述预设的结构化的数据的数据描述包括名称、数据值和计量单位。
40.当然在具体实施时,本领域技术人员也可以根据实际串口返回数据的需要来对进行其他任意形式的数据定义和数据描述,本发明对此不作具体限定。
41.参见图2,本发明实施例是对串口数据解析提供一种通用的解析方案,可以快速简便的适配不同厂商的协议,并且本发明的结构清晰简单,后续协议数据调整时可以通过少量的修改完成调整,并对未修改部分不造成影响,从而提升了数据解析的稳定性和可测试性。
42.下面将通过一个具体的例子来对本发明实施例所述的方法进行详细的解释和说明:
43.本发明实施例中数据定义主要分为两部分,即数据定义和数据描述。数据定义主要包括字段名称、计量单位、缩放系数、起始位置、结束位置、bit起始位置、bit结束位置、协议类型、协议解析器。数据描述包括字段名称、字段数值和计量单位。根据数据定义可以生成对应的数据描述,多个数据字段描述最终组成整体的结果数据。
44.具体本发明实施例中数据定义的说明如下:
45.名称:该数据字段的名称,如电压、电流等;
46.计量单位:该数据字段的单位,如v、a、h等;
47.缩放系数:该数据字段的缩放,如读到8,实际为0.8,则认为缩放系数为0.1;
48.起始位置:该数据字段的解析位置,原始数据为byte数组,需要指定该字段的数据位置;
49.结束位置:说明同上;
50.bit起始位置:该数据字段的bit解析位置,默认解析为按byte为单位,但存在部分字段是只占用一个或多个bit,故当此配置存在且大于0时,则开始解析对应bit位;
51.bit结束位置:说明同上;
52.协议类型:用来标明该原始数据的来源协议类型,需要根据类型调用对应的默认解析器;
53.协议解析器:当数据解析方式非默认解析类型,则需要指定相应的解析器来处理数据。
54.数据字段描述说明:名称:该数据的该项字段名称;数据值:该数据的该字段数据的值,最终会转换为字符串;计量单位:该数据的该字段的计量单位。
55.通过上述数据定义、数据描述和解析器的设计,可以把原始数据抽象为方便识别的结构化对象,最后可以把所有数据描述合并起来,构成对结果数据的描述。
56.本发明实施例中数据解析器为接口方法,接收该字段对应的数值,根据该实现的解析规则进行处理,然后计算得到正确的数值。
57.也就是说,本发明实施例中的数据解析器是一个通用的工具模块,可以根据数据描述和对应的数据定义,把二进制数据转换为数据描述。这个是通用的实现,只要有数据定义和数据描述就可以完成。所以本发明的整个数据处理过程就只需要数据描述和数据定义,就可以完成对一条指令的处理,不需要再关注二进制数据处理过程。而且数据描述和数据定义相对结构
58.参见图3,首先得到原始数据,通过java反射机制得到数据定义的相关信息,根据数据的起始位置和结束位置,得到数据对应byte数组值,然后根据协议类型和解析器配置,把byte数组转换为真实数据,最终构建出数据描述,得到该原始数据对应的结果数据。
59.综上,本发明实施例所述方法解析时抽离了数据的定义和解析,使整个数据处理过程更加清晰,并且解析过程为通用方案,可支持串口通信的不同厂家协议。在数据处理时,只需根据厂家协议编写对应数据定义即可完成整个数据处理。此方案简化了串口数据解析过程,减少了相关代码量和工作量,增加了项目的扩展性和稳定性,并可以及时响应数据协议的增加和调整。
60.本发明第二实施例提供了一种对串口数据的通用化处理装置,参见图4,该装置包括:
61.获取单元,用于获取串口传输的原始数据;
62.转化单元,用于将所述原始数据统一转化为具有预设的结构化的数据,使得转化后的数据具有通用性质,以适配不同协议的数据处理要求;
63.本发明实施例是将串口返回的数据统一转化为具有一定结构化的数据,使得转化后的数据具有通用性质,最终使得转化后的数据能够适配不同的协议,通过转化可以使得本技术能够顺畅地对多种串口返回数据进行顺畅处理,最终提高了用户体验。
64.具体实施时,本发明是还可以设置一个处理单元,通过处理单元来基于转换后的数据,按照当前的协议进行数据处理;
65.其中,本发明实施例中所述预设的结构化的数据的数据定义包括以下中的一种或多种:名称、计量单位、缩放系数、起始位置、结束位置、bit起始位置、bit结束位置、协议类型、协议解析器。数据描述包括字段名称、字段数值和计量单位;所述预设的结构化的数据的数据描述包括以下中的一种或多种:名称、数据值和计量单位。
66.具体实施时,本发明实施例中,所述转化单元还用于,通过协议解析器将所述原始数据统一转化为具有预设的结构化的数据,使得转化后的数据具有通用性质,以及所述原始数据统一转化为具有预设的数据描述和预设的数据定义的的结构化的数据,得到具有数据描述集合的转换后的数据。
67.具体地,本发明实施例的所述转化单元还用于,基于所述原始数据中的数据标识,将所述原始数据中的具有所述数据标识的数据字段统一转化为具有预设的数据描述和预设的数据定义的的结构化的数据,得到具有数据描述集合的转换后的数据,其中,所述数据字段包括以下中的一种或多种:电压、电流、温度、湿度和气压。
68.综上,本发明实施例所述装置解析时抽离了数据的定义和解析,使整个数据处理过程更加清晰,并且解析过程为通用方案,可支持串口通信的不同厂家协议。在数据处理时,只需根据厂家协议编写对应数据定义即可完成整个数据处理。此方案简化了串口数据解析过程,减少了相关代码量和工作量,增加了项目的扩展性和稳定性,并可以及时响应数据协议的增加和调整。
69.本发明实施例的相关内容可参见本发明第一实施例进行理解,在此不做详细论述。
70.本发明第三实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有信号映射的计算机程序,所述计算机程序被至少一个处理器执行时,以实现本发明第一实施例中任一种所述的对串口数据的通用化处理方法。
71.本发明实施例的相关内容可参见本发明第一实施例进行理解,在此不做详细论述。
72.尽管为示例目的,已经公开了本发明的优选实施例,本领域的技术人员将意识到各种改进、增加和取代也是可能的,因此,本发明的范围应当不限于上述实施例。
技术特征:1.一种对串口数据的通用化处理方法,其特征在于,包括:获取串口传输的原始数据;将所述原始数据统一转化为具有预设的结构化的数据,使得转化后的数据具有通用性质,以适配不同协议的数据处理要求;其中,所述预设的结构化的数据的数据定义包括以下中的一种或多种:名称、计量单位、缩放系数、起始位置、结束位置、bit起始位置、bit结束位置、协议类型、协议解析器,数据描述包括字段名称、字段数值和计量单位;所述预设的结构化的数据的数据描述包括以下中的一种或多种:名称、数据值和计量单位。2.根据权利要求1所述的方法,其特征在于,所述获取串口传输的原始数据,包括:获取下位机回复给上位机的串口传输的原始数据。3.根据权利要求1或2所述的方法,其特征在于,将所述原始数据统一转化为具有预设的结构化的数据,使得转化后的数据具有通用性质,包括:通过协议解析器将所述原始数据统一转化为具有预设的结构化的数据,使得转化后的数据具有通用性质。4.根据权利要求1或2所述的方法,其特征在于,将所述原始数据统一转化为具有预设的结构化的数据,包括:将所述原始数据统一转化为具有预设的数据描述和预设的数据定义的的结构化的数据,得到具有数据描述集合的转换后的数据。5.根据权利要求4所述的方法,其特征在于,将所述原始数据统一转化为具有预设的数据描述和预设的数据定义的的结构化的数据,得到具有数据描述集合的转换后的数据,包括:基于所述原始数据中的数据标识,将所述原始数据中的具有所述数据标识的数据字段统一转化为具有预设的数据描述和预设的数据定义的的结构化的数据,得到具有数据描述集合的转换后的数据,其中,所述数据字段包括以下中的一种或多种:电压、电流、温度、湿度和气压。6.一种对串口数据的通用化处理装置,其特征在于,包括:获取单元,用于获取串口传输的原始数据;转化单元,用于将所述原始数据统一转化为具有预设的结构化的数据,使得转化后的数据具有通用性质,以适配不同协议的数据处理要求;其中,所述预设的结构化的数据的数据定义包括以下中的一种或多种:名称、计量单位、缩放系数、起始位置、结束位置、bit起始位置、bit结束位置、协议类型、协议解析器,数据描述包括字段名称、字段数值和计量单位;所述预设的结构化的数据的数据描述包括以下中的一种或多种:名称、数据值和计量单位。7.根据权利要求6所述的装置,其特征在于,所述转化单元还用于,通过协议解析器将所述原始数据统一转化为具有预设的结构化的数据,使得转化后的数据具有通用性质。8.根据权利要求6所述的装置,其特征在于,
所述转化单元还用于,将所述原始数据统一转化为具有预设的数据描述和预设的数据定义的的结构化的数据,得到具有数据描述集合的转换后的数据。9.根据权利要求6所述的装置,其特征在于,所述转化单元还用于,基于所述原始数据中的数据标识,将所述原始数据中的具有所述数据标识的数据字段统一转化为具有预设的数据描述和预设的数据定义的的结构化的数据,得到具有数据描述集合的转换后的数据,其中,所述数据字段包括以下中的一种或多种:电压、电流、温度、湿度和气压。10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有信号映射的计算机程序,所述计算机程序被至少一个处理器执行时,以实现权利要求1-5中任意一项所述的对串口数据的通用化处理方法。
技术总结本发明公开了一种对串口数据的通用化处理方法及装置,本发明是将串口返回的数据统一转化为具有一定结构化的数据,使得转化后的数据具有通用性质,从而能够适配不同协议的数据处理要求,进而实现对串口返回的数据的稳定处理,减少业务开发和测试验证的工作量,最终提高用户体验。高用户体验。高用户体验。
技术研发人员:李江 田野 马文新 张立 赵振毅 王辉 别力辉 张秋冬
受保护的技术使用者:中国电子科技集团公司第十五研究所
技术研发日:2022.03.29
技术公布日:2022/7/5