本发明属于车辆数据显示领域,特别涉及一种区分总线数据变化的显示方法、计算机设备、存储介质。
背景技术:
1、现有的市面上用于如车辆的总线数据的分析软件比较多,例如pcan-viewer,canoe抓取控制器局域网(can)报文,wireshark抓取网络报文等工具,都可以完成车载总线can、串行通讯网络(lin)、flexray,以太网(eth)报文的实时抓取、解析。由于车辆的通信协议的特殊性,其上层的报文通常会由不同的信号组成一个协议数据单元(pdu),因此开发和测试人员通常更加关心内部信号的变化情况。
2、对于报文数据如车辆数据的分析工具比较少,目前主要有德国的canoe软件,以太网报文分析的工具主要聚焦在协议解析和对应数据段的展示,如用wireshark可以分析出多种网络协议的内容和对应字段,目前主要集中在比对报文的原始数据的数据描述,以及信号对应的波形图信息,较少有关注原始报文字节内信号比特位之间的数据变化频率和差异。在如车载以太网trace数据分析和测试中,通常需要观察每条trace数据的变化,快速分析和定位出现问题的报文规律。
3、现有的数据查看方式,颜色的区分都是体现在数据帧的背景或是整条数据内容上,目的也主要是为了对数据的不同类型进行可视化的区分。例如用wireshark抓取查看数据,如图1所示的wireshark软件抓包截图中,数据内容都是用黑字体现(除了黑色背景,颜色有反差),用户数据报协议(udp)网络报文使用蓝色背景,传输控制协议(tcp)网络报文使用粉色背景。用户在查看数据的时候,依旧没有特别的能够针对某一数据分辨其出现频率的功能。因此用户需要自己去看原始报文数据的某个比特位,或是展开报文解析去查看对应的数据字段,去判断信号的历史与当前的数据。这种数据查看方式是比较低效的,因为随着现在越来越多的应用如车辆架构中采用以太网的方式进行通信,同时车辆的can通信也升级到了can2.0(canfd),报文的帧数和一帧报文的数据量都有了显著的上升。过去的can、lin传统总线,一帧报文数据内容长度为8字节,但是现在的canfd、以太网报文,一帧长度高达64~1000字节。而车机的信号,往往只占到某几个比特位(1字节=8比特位)。因此如果直接在字节流中去肉眼比对信号,无疑是大海捞针,对于测试人员来说非常痛苦,效率也极低。其他产品,如canoe用于分析解决问题时,通常会采用车载以太网波形图的方案,将信号单独放到波形图的界面中,用示波器的形式去关注信号的变化走势。但是这类功能通常只面向资深的测试工程师,即用户需要提前知道自己要关注哪些信号,才能完成这类操作。而对于一些初级工程师,例如想要知道车窗开关对应的数据,在软件中是比较难去逆向获取的。
4、综上,业界现缺乏有效的能够以二维化的方式,直观体现如车辆总线信号的变化情况,且展示数据变化的过程的技术手段,不利于提高如汽车开发和测试人员通过总线去定位问题的效率。
技术实现思路
1、针对上述问题,本发明提供一种区分总线数据变化的显示方法、计算机设备、存储介质。
2、本发明提供的区分总线数据变化的显示方法,包括下列步骤:
3、对trace数据报文中的trace数据进行统计;
4、基于所述统计的结果计算颜色;
5、基于所述颜色进行界面展示。
6、进一步,
7、所述trace数据为n条,n为大于1的整数,所述trace数据依时间顺序排序;
8、进行所述统计时,对各条所述trace数据依时间次序由前向后进行对比,对比各条所述trace数据是否为同一组trace数据,即发送方向,目的互联网协议地址,目的端口,源互联网协议地址,源端口相同的trace数据。
9、进一步,
10、进行所述对比,对各条所述trace数据进行分组后,进行二次对比:对各组trace数据中的任一组,依时间次序由前向后进行对比,对其中各条所述trace数据中的数据信号中各对应的位上的数据所构成的各个位数据序列进行对比,设所述数据信号有nn个比特的数据,则所述任一组的trace数据形成nn个依时间顺序排序的位数据序列,nn为大于1的整数,每个位数据序列具有nn个位,nn为所述任一组的trace数据中的数据条数,nn为整数且1≤nn≤n,
11、进行所述二次对比时,对于各所述位数据序列中的第jj个序列,jj为整数且1≤jj≤nn,依照时间顺序对第2位至第nn位进行对比,对比时,所述第jj个序列中第ii个位对应地设置一个统计值或者说计数值ndii,jj,ndii,jj为整数,对比时,对于所述第ii个位,对应的所述统计值ndii,jj的初始值设为nd0ii,jj,如果所述第ii个位上的数据,经过对比发现,与其相邻的上一位即第ii-1个位上的数据即对比数据为相同的数据,则所述统计值ndii,jj为所述对比数据所在位所对应的统计值ndii-1,jj增加一个计数,否则,所述统计值ndii,jj归为所述初始值nd0ii,jj,对比后,所述第ii个位对应的统计值的终值记为nd1ii,jj。
12、进一步,
13、各所述位数据序列各个位的初始值nd0ii,jj为相同值。
14、进一步,
15、在进行所述计算时,对于第jj个位数据序列,如果第ii个位的计数值满足:
16、i*m≤(nd1ii,jj-nd0ii,jj+1)≤(i+1)*m,
17、其中,i和m均为整数,且1≤m,1≤i,i*m≤nn,则所述计数值对应的颜色等级为i,即i代表颜色等级,m代表除了最后一个颜色等级外、同一颜色等级用于显示的位的个数。
18、进一步,
19、设i0为最多等级数目,当i0≤i时颜色等级不再下降。
20、进一步,
21、设第i颜色等级的红绿蓝值为(nri,ngi,nbi),nri和ngi和nbi均为整数且满足0≤nri,ngi,nbi≤255,设第i+1颜色等级的红绿蓝值为(nri+δ1,ngi+δ1,nbi+δ3),则δ1和δ2和δ3为相邻颜色等级的红绿蓝差值,δ1和δ2和δ3均为整数且30≤δii≤128或-128≤δii≤-30,δii为δ1,δ2或δ3,
22、所述界面展示为依据所述红绿蓝值进行显示得到的nn×nn二维展示。
23、进一步,
24、所述trace数据报文为车载trace数据报文。
25、本发明还提供一种计算机设备,其包括存储器、第一处理器及储存在所述存储器上并在所述第一处理器上运行的第一计算机程序,所述第一计算机程序被所述第一处理器执行时实现前述的区分总线数据变化的显示方法。
26、本发明还提供一种计算机可读存储介质,所述计算机可读存储介质用于储存第二计算机程序,所述第二计算机程序可被至少一个第二处理器所 执行,以使所述至少一个第二处理器执行前述的区分总线数据变化的显示方法。
27、本发明提供的用于区分如车辆的总线动态数据变化频率的显示方法,采用比特位颜色变化对应数据频率变化的形式,通过颜色映射到时间维度,以二维化的方式,直观体现如车辆的总线信号的变化情况,且展示了数据变化的过程,极大方便了测试和开发人员分析总线数据和对问题进行快速定位,让一些初级的工程师,通过观察数据帧内的信号变化,可高效快速的完成变化值信号的专属码(id)定位和分析,并高效的追踪相关问题。
28、本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所指出的结构来实现和获得。
1.区分总线数据变化的显示方法,其特征在于,包括下列步骤:
2.根据权利要求1所述的区分总线数据变化的显示方法,其特征在于,
3.根据权利要求2所述的区分总线数据变化的显示方法,其特征在于,
4.根据权利要求2所述的区分总线数据变化的显示方法,其特征在于,
5.根据权利要求3或4任一所述的区分总线数据变化的显示方法,其特征在于,
6.根据权利要求5所述的区分总线数据变化的显示方法,其特征在于,
7.根据权利要求5所述的区分总线数据变化的显示方法,其特征在于,
8.根据权利要求7所述的区分总线数据变化的显示方法,其特征在于,
9.计算机设备,其特征在于,包括存储器、第一处理器及储存在所述存储器上并在所述第一处理器上运行的第一计算机程序,所述第一计算机程序被所述第一处理器执行时实现权利要求 1-8中任一项所述的区分总线数据变化的显示方法。
10.计算机可读存储介质,其特征在于,所述计算机可读存储介质用于储存第二计算机程序,所述第二计算机程序可被至少一个第二处理器所 执行,以使所述至少一个第二处理器执行权利要求 1-8中任一项所述的区分总线数据变化的显示方法。