基于上位机场景还原的下位机数据帧异常定位方法

文档序号:7780584阅读:291来源:国知局
基于上位机场景还原的下位机数据帧异常定位方法
【专利摘要】本发明提供一种基于上位机场景还原的下位机数据帧异常定位方法,其特征在于:地点1的上位机通信应用模块,在与下位机的通信时,采集并保存下位机的正确数据文件和异常数据文件;将地点1的上位机保存的通信数据文件传输到地点2的上位机上,地点2的上位机通信应用模块通过回读正确数据文件重现地点1的运行场景并进行独立调试,回读异常数据文件定位通信数据异常问题。本发明提出的通信应用模块调试及场景还原方法,不再依赖下位机和技术支持人员,能够自动化完成定位、对设备进行巡检,提高了故障排除效率。
【专利说明】基于上位机场景还原的下位机数据帧异常定位方法
【技术领域】
[0001]本发明涉及通信领域,特别涉及下位机(DSP板卡,服务器等)通过网线、串口、USB口以及蓝牙、WIFI等与PC、PDA等上位机终端设备通信时,通信应用模块。
【背景技术】
[0002]随着科技的发展,人们社会生活水平的提高需要大量的通信软件予以支撑。而在使用或者开发这些通信软件时,常常会遇到各种问题。
[0003]在使用上位机和下位机模式的系统中,要解决这些问题,以往的办法是通过下位机与上层应用软件联调来查找问题。这一方法在某些情况下,比如下位机设备紧张、开发人员不在问题发生地点等情况,就无法实现与上位机联调解决,从而延迟了解决问题的第一时间,降低了工作效率。此外系统在非开发地点发生的应用问题,以前多采用技术支持人员向开发人员描述现场环境和现象的方式帮助定位问题,但这种方式存在描述不清晰等缺点。

【发明内容】

[0004]本发明要解决的技术问题是,克服现有技术缺陷,实现了上位机的通信应用模块脱离下位机独立调试以及还原设备运行场景的功能。
[0005]本发明提出并实现了一种基于上位机场景还原的下位机数据帧异常定位方法,地点I的上位机通信应用模块,在与下位机的通信时,采集并保存下位机的通信数据文件,所述通信数据文件包括正确数据文件和异常数据文件;将地点I的上位机保存的通信数据文件传输到地点2的上位机上,地点2的上位机通信应用模块通过回读正确数据文件重现地点I的运行场景并进行独立调试,回读异常数据文件定位通信数据异常问题;
[0006]上位机通信应用模块采集并保存下位机的正确数据文件和异常数据文件时,包括以下子步骤,
[0007]步骤101,启动采集线程,
[0008]步骤102,判断是否终止采集线程,是则采集线程结束,否则循环判断消息帧是否到达,到达则进入步骤103;
[0009]步骤103,检测消息帧是否为正确帧,是则进入步骤104,否则是异常帧,进入步骤106 ;
[0010]步骤104,把正确帧写入正确数据文件FILEl ;
[0011]步骤105,对正确数据文件FILEl中的正确帧进行解析,然后返回步骤102 ;
[0012]步骤106,把异常帧写入异常数据文件FILE2,然后返回步骤102 ;
[0013]上位机通信应用模块通过回读正确数据文件重现地点I的运行场景并独立调试时,包括以下子步骤,
[0014]步骤201,启动回读线程;
[0015]步骤202,判断是否终止回读线程,是则回读线程结束,否则进入步骤203 ;[0016]步骤203,计算正确数据文件FILEl尺度,尺度为FILEl字节数与帧最大长度的比值;
[0017]步骤204,判断是否读完正确数据文件FILE1,是则返回步骤202,否则进入步骤205 ;
[0018]步骤205,按帧长读取正确数据文件FILE1,然后检查读取的帧是否正确,是则进入步骤206,否则并返回步骤204读取下一个帧进行处理;
[0019]步骤206,解析消息帧,调试上位机各处理模块,然后返回步骤204 ;
[0020]上位机通信应用模块回读异常数据文件定位通信数据异常问题时,包括以下子步骤,
[0021 ] 步骤301,启动定位异常线程,计算异常数据文件FILE2尺度,尺度为FILE2字节数与帧最大长度的比值;
[0022]步骤302,判断是否读完异常数据文件FILE2,是则结束流程,否则进入步骤303 ;
[0023]步骤303,按帧长读取异常数据文件FILE2 ;
[0024]步骤304,检查读取的帧是否正确,否则进入步骤305,是则进入步骤308 ;
[0025]步骤305,返回步骤302 ;
[0026]步骤306,定位独立消息填充异常,记录并返回步骤308 ;
[0027]步骤307,正确解析独立消息,解析完毕返回步骤308 ;
[0028]步骤308,设一个帧中有k条独立消息,判断帧中k条独立消息是否检查完毕,是则返回步骤302,否则继续执行步骤309 ;
[0029]步骤309,从k条独立消息中取一条未检查的消息,检查独立消息是否正确,如果正确则跳到步骤307,否则跳到步骤306。
[0030]而且,步骤205和304检查读取的一个帧是否正确,实现方式为,验证帧中的各独立消息总体长度之和与帧头中填充的长度是否相等,如果相等则该帧是正确的。
[0031 ] 而且,上位机通信应用模块提供三种运行模式MODEl、M0DE2和M0DE3,
[0032]在MODEl下执行采集并保存下位机的正确数据文件和异常数据文件,
[0033]在M0DE2下执行通过回读正确数据文件重现地点I的运行场景并独立调试;
[0034]在M0DE3下执行回读异常数据文件定位通信数据异常问题。
[0035]本发明提出的通信应用模块调试及场景还原方法,不再依赖下位机和技术支持人员,能够自动化完成定位、对设备进行巡检,提高了故障排除效率。
【专利附图】

【附图说明】
[0036]图1是本发明实施例的通信应用模块三种运行模式对应的处理流程。
[0037]图2是本发明实施例的上位机采集、分析、保存与下位机通信的数据文件的流程图。
[0038]图3是本发明实施例的本发明实施例的上位机回读正确数据文件独立调试的流程图。
[0039]图4是本发明实施例的上位机回读异常数据文件定位通信数据异常问题的流程图。
[0040]图5是本发明实施例的原理图。【具体实施方式】
[0041 ] 结合附图,提供本发明实施例具体描述如下。
[0042]以下结合附图对本发明采用通信应用模块处理下位机数据帧数据调试及场景还原方法进行说明。
[0043]参见图5,这种方法的原理:地点I的上位机通信应用模块,在与下位机经过通信链路的通信时,采集并保存下位机的通信数据文件(简称数据文件F,包括正确数据文件和异常数据文件);将地点I保存的通信数据文件在地点2的上位机通信应用模块进行回放分析或调试,可以重现系统应用的地点I的运行场景以及脱离地点I的下位机进行独立调试。具体实施时,地点I保存的通信数据文件可从地点I的上位机通过网络传输到地点2的上位机;或者用U盘等方式拷贝入地点2的上位机。
[0044]具体实施时,本发明对现有技术中的通信应用模块进行改进,可在通信应用模块中定义M0DE1、M0DE2和M0DE3三种运行模式,这样任意地点的上位机,可根据需要设定通信应用模块的运行模式。如图1所示,其中MODEl为采集模式,M0DE2时为回读历史模式,M0DE3为正常运行模式。在M0DE1、M0DE2和M0DE3三种模式下,都会执行解析,具体实施时通信应用模块中可设置解析模块用于完成解析工作,解析过程实现可参考现有技术。
[0045]MODEl和M0DE2的区别与联系:
[0046]MODEl采集模式时,通信应用模块处理数据为下位机上传的实时通信数据。当通信应用模块接收下位机上传数据后,首先执行了一个采集即保存原始二进制数据流的操作,然后再执行解析模块;这一处理流程确保MODEl采集的数据是无修改的原始数据,由此可以保证M0DE2回读数据与原工作场景数据的是完全相同的。
[0047]M0DE2回读历史模式时,通信应用模块处理的数据不再是下位机实时的上传数据,而是在MODEl时保存的无修改数据;相同点在于M0DE2执行的解析模块与MODEl执行的解析模块是完全相同的,或者说是同一个解析模块。由于解析数据相同,解析模块相同,所以,在地点2将通信应用模块设置处理模式M0DE2时,将MODEl时采集的数据按照原数据解析模块重新解析,可以再现原采集数据场景。
[0048]另外,M0DE3为正常运行模式,不采集数据,当消息帧到达时采用同样的解析模块进行解析。
[0049]根据以上说明,在地点I,设置运行模式MODEl,运行通信应用模块,按二进制格式采集下位机上传的数据帧,并对该数据帧进行分析和处理;经过处理可以根据数据的校验结果分别保存正确数据文件FILEl并解析或保存异常数据文件FILE2,并对正确数据文件FILEl中的正确帧进行解析。在地点2,设置运行模式M0DE2,运行通信应用模块,回读数据文件FILEl并进行解析,则可以重现系统应用地点的运行场景,并调试模块代码,从而脱离下位机实现独立调试;回读数据文件FILE2,可以从异常数据文件FILE2中定位下位机发送的异常帧,并确定导致异常数据帧错误的原因,然后把这一问题通知下位机予以解决,或向相关技术人员发出告警。
[0050]具体实施时,本领域技术人员可自行预设下位机发往上位机的消息格式。为便于实施参考起见,提供实施例中下位机发往上位机的消息格式如下表:
[0051]表1:通信协议之消息帧帧接口结构表通信协议之消息帧帧接口结构表[0052]
【权利要求】
1.一种基于上位机场景还原的下位机数据帧异常定位方法,其特征在于:地点I的上位机通信应用模块,在与下位机的通信时,采集并保存下位机的通信数据文件,所述通信数据文件包括正确数据文件和异常数据文件;将地点I的上位机保存的通信数据文件传输到地点2的上位机上,地点2的上位机通信应用模块通过回读正确数据文件重现地点I的运行场景并进行独立调试,回读异常数据文件定位通信数据异常问题; 上位机通信应用模块采集并保存下位机的正确数据文件和异常数据文件时,包括以下子步骤, 步骤101,启动采集线程, 步骤102,判断是否终止采集线程,是则采集线程结束,否则循环判断消息帧是否到达,到达则进入步骤103 ; 步骤103,检测消息帧是否为正确帧,是则进入步骤104,否则是异常帧,进入步骤106 ; 步骤104,把正确帧写入正确数据文件FILEl ; 步骤105,对正确数据文件FILEl中的正确帧进行解析,然后返回步骤102 ; 步骤106,把异常帧写入异常数据文件FILE2,然后返回步骤102 ; 上位机通信应用模块通过回读正确数据文件重现地点I的运行场景并独立调试时,包括以下子步骤, 步骤201,启动回读线程; 步骤202,判断是否终止回读线程,是则回读线程结束,否则进入步骤203 ; 步骤203,计算正确数据文件FILEl尺度,尺度为FILEl字节数与帧最大长度的比值;步骤204,判断是否读完正确数据文件FILEl,是则返回步骤202,否则进入步骤205 ;步骤205,按帧长读取正确数据文件FILE1,然后检查读取的帧是否正确,是则进入步骤206,否则并返回步骤204读取下一个帧进行处理; 步骤206,解析消息帧,调试上位机各处理模块,然后返回步骤204 ; 上位机通信应用模块回读异常数据文件定位通信数据异常问题时,包括以下子步骤,步骤301,启动定位异常线程,计算异常数据文件FILE2尺度,尺度为FILE2字节数与帧最大长度的比值; 步骤302,判断是否读完异常数据文件FILE2,是则结束流程,否则进入步骤303 ; 步骤303,按帧长读取异常数据文件FILE2 ; 步骤304,检查读取的帧是否正确,否则进入步骤305,是则进入步骤308 ; 步骤305,返回步骤302 ; 步骤306,定位独立消息填充异常,记录并返回步骤308 ; 步骤307, 正确解析独立消息,解析完毕返回步骤308 ; 步骤308,设一个帧中有k条独立消息,判断帧中k条独立消息是否检查完毕,是则返回步骤302,否则继续执行步骤309 ; 步骤309,从k条独立消息中取一条未检查的消息,检查独立消息是否正确,如果正确则跳到步骤307,否则跳到步骤306。
2.根据权利要求1所述基于上位机场景还原的下位机数据帧异常定位方法,其特征在于:步骤205和304检查读取的一个帧是否正确,实现方式为,验证帧中的各独立消息总体长度之和与帧头中填充的长度是否相等,如果相等则该帧是正确的。
3.根据权利要求1或2所述基于上位机场景还原的下位机数据帧异常定位方法,其特征在于:上位机通信应用模块提供三种运行模式MODEl、M0DE2和M0DE3, 在MODEl下执行采集并保存下位机的正确数据文件和异常数据文件, 在M0DE2下执行通过回读正确数据文件重现地点I的运行场景并独立调试; 在M0DE3下执行回读异常数据文件定位通信数据异常问题。
【文档编号】H04L12/26GK103684915SQ201310686910
【公开日】2014年3月26日 申请日期:2013年12月16日 优先权日:2013年12月16日
【发明者】刘晓东 申请人:武汉虹信通信技术有限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1