一种基于规约的大数据报文解析方法、系统、芯片及设备与流程

文档序号:36388919发布日期:2023-12-15 04:34阅读:38来源:国知局
一种基于规约的大数据报文解析方法与流程

本发明属于信息通信自动化测试,具体涉及一种基于规约的大数据报文解析方法、系统、芯片及设备。


背景技术:

1、近年来,输变电工程建设具有点多面广、流动性大的特点,输变电工程建设现场安全风险作业监控不到位,施工现场移动布控球种类繁杂,移动布控球在线/离线状态、信号强度、gps坐标和电量等相关信息难以精准管控。

2、现有方法老系统中,测试布控球设备的拍摄功能,一个是定时拍摄,一个是手动拍摄,数据格式都是一样的但是老系统不能将手动触发拍摄的和设备设置的自动定时拍摄数据区分开来。接收到平台展示的来个那种数据是混在一起的。会导致测试人员判断失误,不知道手动拍摄是否成功,也不知道自动拍摄是否成功。我们采用以上设计方式,很巧妙的将移动设备上传的相同格式数据进行区分。大大提高了测试的准确性。


技术实现思路

1、本发明的目的在于针对上述现有技术中的不足,提供一种基于规约的大数据报文解析方法、系统、芯片及设备,用于解决现阶段施工现场移动布控球种类繁杂,移动布控球在线/离线状态、信号强度、gps坐标和电量等相关信息难以精准管控的技术问题,强化输变电工程建设现场安全风险作业监控,更好地收集移动布控球设备状态信息。

2、本发明采用以下技术方案:

3、一种基于规约的大数据报文解析方法,包括以下步骤:

4、按照移动布控球设备数据传输规范进行数据交互,接收大数据报文;

5、按照i1规约对接收的大数据报文进行解密,解析得到大数据报文每段对应的真实内容。

6、具体的,数据交互过程中,数据传输采用数据帧模式,传输序列为二进制字节流。

7、进一步的,数据传输的传输层采用tcp协议。

8、具体的,接收大数据报文过程中,引入缓存队列存储手动拍摄或者自动拍摄操作的操作编号。

9、进一步的,引入缓存队列存储手动拍摄或者自动拍摄操作的操作编号具体为:

10、记录当前移动布控球设备的手动拍摄操作编号缓存队列,记当前操作编号为a,当再一次点击或者用户同时操作移动布控球甲时,生成操作编号为b,得到当前缓存队列为[a,b],根据移动布控球设备数据发送的先后顺序以及当前队列的先进先出原则创建缓存对象,在存储缓存队列的同时将操作的操编号信息、设备信息、时间信息存储到手动拍摄业务库中;

11、当移动布控球设置的自动拍摄时间与当前时间相等时,移动布控球向平台发送请求图像数据上送报文,平台接收后创建当前唯一值作为操作编号c,并记录到当前移动布控球设备的自动拍摄操作编号缓存队列,缓存队列数据为[c]。

12、更进一步的,根据移动布控球设备数据发送的先后顺序以及当前队列的先进先出创建缓存对象:

13、以操作编号a作为key,以接收到的图像数据作为value,根据报文的分块发送原则,将接收到的数据不断追加到value,直到接收到图像数据上送结束报文且报文长度完整,将当前全量的报文数据value取出,删除缓存队列中对应的操作编号a。

14、具体的,按照i1规约对接收的大数据报文进行解密,解析得到大数据报文每段对应的真实内容具体为:

15、根据i1规约创建报文头、报文尾、以及设备id的正则表达式规则,过滤分解出每块报文,再将报文根据包号进行排序,循环解析数据报文,拿到真实的数据内容,完成原始数据报文的解析拼装;

16、最后对真实的数据内容进行转码,解析为base64格式的数据,再根据对应操作编号进行存储。

17、第二方面,本发明实施例提供了一种基于规约的大数据报文解析系统,包括:

18、接收模块,按照移动布控球设备数据传输规范进行数据交互,接收大数据报文;

19、解析模块,按照i1规约对接收的大数据报文进行解密,解析得到大数据报文每段对应的真实内容。

20、第三方面,一种芯片,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述基于规约的大数据报文解析方法的步骤。

21、第四方面,本发明实施例提供了一种电子设备,包括计算机程序,所述计算机程序被处理器执行时实现上述基于规约的大数据报文解析方法的步骤。

22、与现有技术相比,本发明至少具有以下有益效果:

23、本发明基于规约的大数据报文解析方法,全覆盖i1规约19种报文类型的下发或召测,使测试人员通过该平台即可全面测试设备是否完全符合i1规约要求;使用i1规约要求的加密方式进行报文的加密解密与crc校验,过滤出不符合的设备,使测试人员更方便的筛选出不符合的设备,同时降低了平台压力,以及提高测试人员的工作效率;对每个测试类型进行结果记录,使测试人员快捷记录、统计测试结果。同事讲测试结果同步到自动化测试任务,使测试人员更快捷的完成测试任务,出具测试报告。

24、进一步的,对于移动布控球设备来说,图像数据报文数据格式相同,不管是手动拍摄的图像数据或是定时自动拍摄的图像数据都属于图像数据报。引入缓存队列是说手动拍摄的时候我们生成一个操作编号进行记录,定时拍摄时设备会先给工具平台发送图像数据包上送请求,此时同样生成一个操作编号进行记录,同时记录到对应的业务数据库中(如手动拍摄的时候生成一条数据包括设备编号,操作时间,当前操作编号,数据类型等记录到手动拍摄业务表;自动拍摄接收到主动图像上报请求时同样在记录操作编号的同时,在对应的自动拍摄业务表中存储设备编号,拍摄时间,数据类型等数据,以此逻辑进行区分图像数据报文类型)。在缓存队列中操作编号遵循先进先出规则,移动布控球上报图像数据报后,将所有报文存储。再通过规约中约定的报文头报文尾都有一定的原则(以a55a开头以96结尾)将获取到的报文进行分割,将多个操作编号与多个数据报一一对应。如此便巧妙的将想移动布控球上报的相同格式的图像数据报文进行区分。

25、进一步的,移动布控球上送数据时的先后顺序即,如在定时自动拍摄的时候任务触犯了手动拍摄,不管在相近总会有一个向后顺序,就能知道是手动拍摄在前还是自动拍摄在前。这样通过我们缓存队列中存储的操作编号的先进先出原则即能将操作编号与图像数据报文一一对应。

26、进一步的,图像数据报文的解析是因为我们接收到的原始图像数据报文是二进制,首先转化为十六进制十一是因为二进制数据一个字节为8位如十进制数据的1用二进制数据表示即为00000001,二进制表示的最大数值(11111111)与16进制转化的最大数值(ff)都是十进制的255,从而二进制转化为16进制比较方标不容易错乱。而且规约报文中也是如此要求,使用十六进制提高报文的可读性。再将十六进制报文解析获取到真实报文内容是因为,规约规定的有报文头、报文尾、报文类型等字段,真实的图像数据报文内容只是其中的一部分。需要提取出来获取到真实的图像数据内容。然后将图像数据解密,是为了保证报文内容的而安全性,每个报文都会进行加密是规约报文要求的。最后将解密的报文内容转化为base64格式数据是因为图像数据的一种格式即为base64格式,有了base64格式的数据在页面中便能直观的看到图片本事而不是一串不明所以的字符。

27、可以理解的是,上述第二方面至第四方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。

28、综上所述,本发明减少了施工现场移动布控球数量,加强移动布控球设备状态管控,为基层减负的同时提升远程视频监控管理水平,实现对风险作业进行全时段、全过程的精确监控,守住施工安全底线,提高基建施工现场安全管控水平。

29、下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1