车辆故障排查方法、装置、设备和计算机可读存储介质转让专利
申请号 : CN201910127072.5
文献号 : CN111596638B
文献日 : 2021-08-13
发明人 : 苏得生 , 储北东 , 陶建卫
申请人 : 南京天擎汽车电子有限公司
摘要 :
权利要求 :
1.一种车辆故障排查方法,其特征在于,包括:通过UDS诊断协议与车辆的控制系统进行通讯,在所述控制系统中设置配置帧;所述配置帧包括标识栏、打开或关闭标志栏和内存地址栏;
对所述配置帧进行数据写入操作,在所述配置帧中写入目标内存地址;所述目标内存地址用于所述控制系统获取对应内存中的数据,将获取的数据写入携带有预设标识的发送帧,并将写入数据后的发送帧上传至车辆网络;
从所述车辆网络获取带有所述预设标识的发送帧,并从获取的发送帧中读取数据以供进行故障排查。
2.根据权利要求1所述的方法,其特征在于,所述对所述配置帧进行数据写入操作,在所述配置帧中写入目标内存地址,包括:通过UDS诊断协议的2E服务将所述配置帧的打开或关闭标志栏设置为打开状态,在所述内存地址栏写入目标内存地址,使所述控制系统根据所述目标内存地址读取对应内存中的数据并写入携带有预设标识的发送帧,以固定的周期将发送帧上传到车辆网络。
3.根据权利要求2所述的方法,其特征在于,所述通过UDS诊断协议的2E服务将所述配置帧的打开或关闭标志栏设置为打开状态,在所述内存地址栏写入目标内存地址,包括:通过UDS诊断协议的2E服务将多个配置帧的打开或关闭标志栏设置为打开状态,在各配置帧的内存地址栏写入目标内存地址;或通过UDS诊断协议的2E服务将配置帧的打开或关闭标志栏设置为打开状态,在所述内存地址栏写入多个目标内存地址。
4.根据权利要求1所述的方法,其特征在于,从所述车辆网络获取带有所述预设标识的发送帧,并从获取的发送帧中读取数据以供进行故障排查,包括:从所述车辆网络获取带有所述预设标识的发送帧后,读取发送帧中的数据;
将读取的数据中变化频率小于预设频率阈值的数据发送至显示器进行显示;
对读取的数据中变化频率大于或等于预设频率阈值的数据进行处理分析。
5.根据权利要求1‑4任意一项所述的方法,其特征在于,所述控制系统为ECU。
6.一种车辆故障排查装置,其特征在于,包括:配置帧设置模块,用于通过UDS诊断协议与车辆的控制系统进行通讯,在所述控制系统中设置配置帧;所述配置帧包括标识栏、打开或关闭标志栏和内存地址栏;
内存地址写入模块,用于对所述配置帧进行数据写入操作,在所述配置帧中写入目标内存地址;所述目标内存地址用于所述控制系统获取对应内存中的数据,将获取的数据写入携带有预设标识的发送帧,并将写入数据后的发送帧上传至车辆网络;
诊断数据获取模块,用于从所述车辆网络获取带有所述预设标识的发送帧,并从获取的发送帧中读取数据以供进行故障排查。
7.根据权利要求6所述的装置,其特征在于,所述诊断数据获取模块包括:第一获取单元,用于从车辆网络获取带有预设标识的发送帧后,读取发送帧中的数据;
第二获取单元,用于将读取的数据中变化频率小于预设频率阈值的数据发送至显示器进行显示;
第三获取单元,用于对读取的数据中变化频率大于或等于预设频率阈值的数据进行处理分析。
8.一种车辆故障排查设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1‑5中任一项所述方法的步骤。
9.根据权利要求8所述的车辆故障排查设备,其特征在于,还包括连接所述处理器的显示器。
10.根据权利要求8或9所述的车辆故障排查设备,其特征在于,所述处理器通过总线与所述控制系统连接。
11.一个或多个包含计算机可执行指令的非易失性计算机可读存储介质,其特征在于,当所述计算机可读存储介质中存储的所述计算机可执行指令被一个或多个处理器执行时,使得所述处理器执行权利要求1至5中任一项所述的方法。
说明书 :
车辆故障排查方法、装置、设备和计算机可读存储介质
技术领域
背景技术
Control Unit,ECU)的集成度越来越高,运行于其中的软件也越来越复杂。车载环境和工况
千变万化,难免会出现各种故障。为了快速定位故障,ECU一般都会集成统一诊断服务
(Unified Diagnostic Services,UDS),这对于可预测的故障开发阶段可以集成进去,后面
故障发生时可以及时上报或者可供查询。
工具发送一条数据告诉ECU读取的内存地址和长度,然后ECU回复相应内存的数据,实时性
很差,无法捕获变化很快的情况。传统的车辆故障检测方式存在故障检测可靠性低的缺点。
发明内容
内存地址;所述目标内存地址用于所述控制系统获取对应内存中的数据,将获取的数据写
入携带有预设标识的发送帧,并将写入数据后的发送帧上传至车辆网络;从所述车辆网络
获取带有所述预设标识的发送帧,并从获取的发送帧中读取数据以供进行故障排查。
络,从车辆网络中抓取控制系统上传的发送帧获取其中的数据以供进行故障排查。检测人
员只需要配置好内存地址就可获取到控制系统对应内存中的有关数据,能方便快捷的排查
各种不可预测的故障,快速定位故障问题,与传统的车辆故障检测方式相比,提高了车辆故
障排查的可靠性。
开状态,在所述内存地址栏写入目标内存地址,使所述控制系统根据所述目标内存地址读
取对应内存中的数据并写入携带有预设标识的发送帧,以固定的周期将发送帧上传到车辆
网络。
时则控制系统不用写入数据,提高了车辆故障排查的操作便利性。
服务将多个配置帧的打开或关闭标志栏设置为打开状态,在各配置帧的内存地址栏写入目
标内存地址;或通过UDS诊断协议的2E服务将配置帧的打开或关闭标志栏设置为打开状态,
在所述内存地址栏写入多个目标内存地址。
捷。
送帧后,读取发送帧中的数据;将读取的数据中变化频率小于预设频率阈值的数据发送至
显示器进行显示;对读取的数据中变化频率大于或等于预设频率阈值的数据进行处理分
析。
员检测,进一步提高了车辆故障排查的操作便利性。
据写入携带有预设标识的发送帧,并将写入数据后的发送帧上传至车辆网络;
的车辆故障检测方式相比,提高了车辆故障排查的可靠性。
员检测,进一步提高了车辆故障排查的操作便利性。
的车辆故障检测方式相比,提高了车辆故障排查的可靠性。
性。
理器执行上述方法。
测的故障,快速定位故障问题,与传统的车辆故障检测方式相比,提高了车辆故障排查的可
靠性。
附图说明
具体实施方式
用于限定本申请。
便于理解,以下均以控制系统为ECU为例进行解释说明。
帧的设置以及数据抓取为例,处理器通过UDS诊断协议与ECU通信,在ECU中设置配置帧以便
控制系统抓取对应数据。
操作的标识(即打开或关闭标志),内存地址栏用于存储需要进行数据导出的内存地址。将
配置帧的格式配置为包括标识栏、打开或关闭标志栏和内存地址栏,分别用于存储对应数
据,便于进行数据识别和读取,提高数据处理可靠性。具体地,配置帧的数据格式如下表:
置为打开),也可以不发送数据(配置帧中配置为关闭)。可以理解,如果需要同时读取多个
内存地址,可以配置多个标识生成对应的配置帧,通过多个配置帧分别使控制系统提取各
内存地址对应的数据;或者在同一个配置帧的DID栏后面添加多个memAddr栏,通过同一个
配置帧实现控制系统根据对应多个内存地址进行数据读取。
辆ECU收发的各种数据,处理器对ECU中的配置帧进行数据写入,写入目标内存地址,以便控
制系统获取对应内存地址的数据进行上传。
定具体的格式。帧是数据的载体,例如在定义的帧配置为8个字节的情况下,则最多可以同
时发送8个内存地址的数据,8个内存地址的排列方式并不唯一,只需要知道哪个内存地址
对应哪个字节即可。发送帧中配置的预设标识的具体内容也不是唯一的,可以是数字和字
母的组合。本实施例中,预设标识为0x666,可以理解,预设标识也可以是其他形式,只要不
与ECU中正常功能数据帧的ID冲突即可。
就是区分各种22和2E服务的,比如标识DID为0xC002可以配置锁车时后视镜是否自动折叠。
给ECU分配一个标识DID,每个数据帧都是多个字节的数据包,标识DID位于数据包的前两个
字节,用来标识诊断数据的作用,以便于根据标识DID的不同对数据包里的数据做不同的处
理。该标识DID支持UDS的2E服务,通过该标识DID的2E服务可以激活ID为0x666的立即帧以
固定的周期(比如10ms)将内存地址处的数据发送至车辆网络上。
址读取对应内存中的数据并写入携带有预设标识的发送帧,以固定的周期将发送帧上传到
车辆网络。上传周期的具体取值并不唯一,可根据实际情况调整。具体地,在配置帧的数据
格式中设置有打开/关闭的标志enableFlg,该标志为1时打开,为0时关闭。ID为0x666的数
据帧默认是关闭的,需要排查问题的时候通过UDS的2E服务将enableFlg栏设置为1,打开ID
为0x666的帧发送数据。
行故障排查时则控制系统不用写入数据,提高了车辆故障排查的操作便利性。
开或关闭标志栏设置为打开状态,在内存地址栏写入多个目标内存地址。
操作简便快捷。
有提取到的数据发送至显示器显示,检测人员根据显示的数据进行对比分析,检测车辆ECU
是否出现故障。此外,还可以是将提取的数据导入到测试工具中进行分析,将分析结果发送
到显示器进行显示,以便检测人员查看。
果数据变化频率小于预设频率阈值,则说明该数据的变化可直接通过肉眼观察到。处理器
将变化频率小于预设频率阈值的数据发送至显示器显示,检测人员直接通过肉眼观察显示
的数据进行故障排查。数据显示的方式也不是唯一的,具体地,可将预设标识、内存地址和
提取的数据对应并列显示,以便于检测人员观察对比。
接用肉眼观察。此时处理器可将数据进行保存,然后用工具处理分析。其中,工具可以是
notepad、ultraedit、记事本等所有能打开文本文件的工具。用工具处理分析的过程,就是
对照时间戳、ID、数据,看哪个内存地址在哪个时间点被修改为了哪个数,然后对比代码或
者规范来判断这种变化是否是正常的。处理分析后得到的结果也可发送至显示器进行显
示,以供检测人员查看。
理,便于检测人员检测,进一步提高了车辆故障排查的操作便利性。
的车辆故障检测方式相比,提高了车辆故障排查的可靠性。
ID为0x666的帧发送数据。ECU根据配置帧中写入的内存地址在ID为0x666的发送帧写入对
应内存中的数据,并将写入数据后的发送帧上传到车辆网络中。处理器中的软件过滤出ID
为0x666的帧,对于变化比较慢的变量(即内存中导出的数据),可以直接肉眼观察显示出来
的数据即可;对于变化比较快的变量用工具处理分析,对比判断数据变化是否是正常的。汽
车的网络上会有很多数据,有ID为0x123的、有ID为0x456的等等,而我们需要的是ID为
0x666的,为了减少其他数据的干扰,只接收ID为0x666的数据,如图3所示。
件从车辆网络中接收这些数据,供软件开发人员分析。该故障排查方法实时性好,可以捕获
ms级的变化。该方法应用范围广,可以用于分析任何软件相关的故障,获取ms级的内存(内
存也就是变量)变化,然后对比代码和规范看某个时间点某个变量的值是否正确。
上实时的显示出来。如图3所示为利用上述方法捕获的数据,最左边是时间戳,单位为s。从
数据中可以看出捕获到了10ms的快速变化。图中第1列为时间戳、第3列为ID(0x666),第4列
Rx是接收数据,第7列的8个字节为ID为0x666的帧发送的数据,最后一列ID=1638是0x666
的十进制表示。
获取模块130。
地,配置帧包括标识栏、打开或关闭标志栏和内存地址栏。
有预设标识的发送帧,并将写入数据后的发送帧上传至车辆网络。在一个实施例中,内存地
址写入模块120通过UDS诊断协议的2E服务将配置帧的打开或关闭标志栏设置为打开状态,
在内存地址栏写入目标内存地址,使控制系统根据目标内存地址读取对应内存中的数据写
入携带有预设标识的发送帧,以固定的周期将发送帧上传到车辆网络。
组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以
以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的
操作。
的车辆故障检测方式相比,提高了车辆故障排查的可靠性。
骤。具体地,处理器220通过总线与控制系统连接。利用总线与控制系统通信进行目标内存
地址配置,操作简便可靠。
memory),例如快闪存储装置(flash memory),固态硬盘(solid‑state drive,SSD)等;存储
装置204还可以包括上述种类的存储装置的组合。
(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field‑
Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、
分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器
等。
车辆故障排查的检测便利性。
的车辆故障检测方式相比,提高了车辆故障排查的可靠性。
被一个或多个处理器20执行时,使得处理器20执行上述方法。
测的故障,快速定位故障问题,与传统的车辆故障检测方式相比,提高了车辆故障排查的可
靠性。
中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁
碟、光盘、只读存储记忆体(Read‑Only Memory,ROM)或随机存储记忆体(Random Access
Memory,RAM)等。
在矛盾,都应当认为是本说明书记载的范围。
说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护
范围。因此,本申请专利的保护范围应以所附权利要求为准。