System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及总线数据分析领域,特别涉及总线数据分析方法、计算机装置和存储介质。
技术介绍
1、总线数据文件结构如下:每个总线数据文件内包含多个dg(数据组块),每个dg内只存放一种数据类型的报文(例如:can、lin、eth等);dg包含数据类型、数据的存储结构和加密压缩后的原始数据,加密压缩后的原始数据以一个一个dz(数据压缩块)的方式存储,即一个dg数据组块下会有很多个原始数据块,他们以链表的方式链接。
2、而目前需要对总线数据文件进行快速分析,将总线数据文件转化成车辆总线上的原始报文数据和实际物理量(发动机转速、方向盘角度等等)以供车辆工程师快速分析车辆故障。
3、而目前在在总线数据进行分析时,由于需要顺序执行大量数据解压操作,因此具有分析效率低下的问题。
技术实现思路
1、本专利技术解决的技术问题是提供一种总线数据分析方法,具有分析速度快的特点。
2、本专利技术解决其技术问题所采用的技术方案是:总线数据分析方法,包括如下步骤:
3、s100:获取离线数据文件集合;
4、s200:将离线数据文件按开始时间进行排序,然后依次遍历每个离线数据文件;
5、s300:读入一个离线文件并将该离线文件的所有dg块的地址读取并记录在一个dg块数组中,然后开始循环遍历dg块数组;
6、s400:选取一个dg块,每次从该dg块中取出一个dz块,从dz块中解析出基本信息,将dz块的基础信息放入解压缩线程,解压缩
7、s500:循环步骤s400,直至该dg块中所有的dz块均被取出后,将此dg块从dg块数组中移除,当dg块数组为空时,表示所有数据都已经解压缩完成;
8、s600:通过数据排序线程遍历原始报文数据集合表中的所有子项,每次取出一个条时间上最早的报文将它放入数据缓冲区表;
9、s700:图表和报文显示界面会实时从数据缓冲区表中取出的数据进行解析运算转化成物理值然后显示到界面上;
10、其中,步骤s400中,解压缩线程包括并行设置的多个独立子集解压缩线程,每个子集解压缩线程均包含一个解压任务,dg块中的dz块均被取出后送入各个子集解压缩线程中进行解压操作。
11、进一步的是:原始报文数据集合表中的原始报文数据存储方式以数据块的唯一标识名为键值存放所有dz块解压出的数据。
12、进一步的是:步骤s700中,图表和报文显示界面会实时从数据缓冲区表中取出数据进行解析运算转化成物理值然后显示到界面上,具体包括如下步骤:
13、查找解析文件,将解析文件与数据缓冲区表中的报文进行id匹配,匹配成功后取出对应比特位数据进行数据类型转换和解析计算得到实际信号的物理值。
14、进一步的是:步骤s400中的将原始报文数据放入原始报文数据集合表中的线程和数据排序线程同步执行。
15、进一步的是:步骤s600中,每次取出一个条时间上最早的报文将它放入数据缓冲区表,当数据缓冲区表中的数据达到指定数据量或者超过指定的超时事件后,发送信号至图表和报文显示线程进行数据读取解析并显示。
16、进一步的是:图表和报文显示线程在进行数据读取解析并显示前先锁定数据缓冲区表。
17、本专利技术还公开了一种计算机装置,包括:处理器、存储器、通信接口和通信总线,所述处理器、存储器和通信接口通过所述通信总线完成相互间的通信,所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如上述所述的总线数据分析方法对应的操作。
18、本专利技术还公开了一种计算机存储介质,所述计算机存储介质中存储有至少一个可执行指令,所述可执行指令使处理器执行如上述所述的总线数据分析方法。
19、本专利技术的有益效果是:本专利技术采用流水线并行处理的方式,从而可以极大地减少整体解压时间,因为不同的压缩数据可以在同一时间内被并行解压,而不是一个一个地顺序解压,因此可以有效利用计算资源,提高解压速度,同时图表和报文显示线程在进行数据读取解析并显示前先锁定数据缓冲区表,从而可以防止读取数据缓冲区表数据时被解压缩线程修改数据,从而可确保数据一致性。
本文档来自技高网...【技术保护点】
1.总线数据分析方法,其特征在于,包括如下步骤:
2.如权利要求1所述的总线数据分析方法,其特征在于,原始报文数据集合表中的原始报文数据存储方式以数据块的唯一标识名为键值存放所有dz块解压出的数据。
3.如权利要求2所述的总线数据分析方法,其特征在于,步骤S700中,图表和报文显示界面会实时从数据缓冲区表中取出数据进行解析运算转化成物理值然后显示到界面上,具体包括如下步骤:
4.如权利要求1所述的总线数据分析方法,其特征在于,步骤S400中的将原始报文数据放入原始报文数据集合表中的线程和数据排序线程同步执行。
5.如权利要求1所述的总线数据分析方法,其特征在于,步骤S600中,每次取出一个条时间上最早的报文将它放入数据缓冲区表,当数据缓冲区表中的数据达到指定数据量或者超过指定的超时事件后,发送信号至图表和报文显示线程进行数据读取解析并显示。
6.如权利要求5所述的总线数据分析方法,其特征在于,图表和报文显示线程在进行数据读取解析并显示前先锁定数据缓冲区表。
7.一种计算机装置,其特征在于:包括:处理器、存储器
8.一种计算机存储介质,其特征在于:所述计算机存储介质中存储有至少一个可执行指令,所述可执行指令使处理器执行如权利要求1至6中任意一项所述的总线数据分析方法。
...【技术特征摘要】
1.总线数据分析方法,其特征在于,包括如下步骤:
2.如权利要求1所述的总线数据分析方法,其特征在于,原始报文数据集合表中的原始报文数据存储方式以数据块的唯一标识名为键值存放所有dz块解压出的数据。
3.如权利要求2所述的总线数据分析方法,其特征在于,步骤s700中,图表和报文显示界面会实时从数据缓冲区表中取出数据进行解析运算转化成物理值然后显示到界面上,具体包括如下步骤:
4.如权利要求1所述的总线数据分析方法,其特征在于,步骤s400中的将原始报文数据放入原始报文数据集合表中的线程和数据排序线程同步执行。
5.如权利要求1所述的总线数据分析方法,其特征在于,步骤s600中,每次取出一个条时间上最早的报文将它放入数据缓冲区表,当数...
【专利技术属性】
技术研发人员:陆雨帆,申铖,
申请(专利权)人:希尔塔苏州信息技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。