CN111221317B - 一种汽车诊断数据处理方法和系统 - Google Patents
一种汽车诊断数据处理方法和系统 Download PDFInfo
- Publication number
- CN111221317B CN111221317B CN201811422376.6A CN201811422376A CN111221317B CN 111221317 B CN111221317 B CN 111221317B CN 201811422376 A CN201811422376 A CN 201811422376A CN 111221317 B CN111221317 B CN 111221317B
- Authority
- CN
- China
- Prior art keywords
- diagnostic data
- data
- request command
- diagnostic
- data request
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0208—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the configuration of the monitoring system
- G05B23/0213—Modular or universal configuration of the monitoring system, e.g. monitoring system having modules that may be combined to build monitoring program; monitoring system that can be applied to legacy systems; adaptable monitoring system; using different communication protocols
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/24—Pc safety
- G05B2219/24065—Real time diagnostics
Abstract
本发明提供一种汽车诊断数据处理方法和系统,该系统包括:诊断协议解析模块,用于接收诊断请求并进行解析获得相应的解析结果,解析结果至少包括与所述诊断请求对应的诊断数据请求命令;数据包处理模块,用于根据所述解析结果生成设定格式的数据包,其中,设定格式的数据包中包括与所述诊断数据请求命令对应的诊断数据;诊断数据校验模块,用于对所述设定格式的数据包进行拆包处理获得所述诊断数据请求命令和诊断数据,并对所述诊断数据进行有效性校验;诊断数据存取模块,用于保存诊断数据请求命令和校验成功的诊断数据。本发明的处理系统使得SOC系统支持ISO 14229‑1:2006中所列明的诊断服务,使得MCU与SOC的诊断功能统一通过CAN网络实现。
Description
技术领域
本发明涉及汽车诊断数据处理技术领域,尤其涉及一种汽车诊断数据处理方法和系统。
背景技术
目前国内外汽车同行业普遍采用国际标准化组织于2006年颁布的、基于车载控制器局域网(CAN)网络通信架构的统一诊断服务标准(ISO 14229-1:2006)。该标准立足于传统车载电子控制单元(ECU)的控制核心——微控制器(MCU),已在发动机控制器、车身控制器等传统车载ECU中得到广泛应用和认可。但随着人工智能等新技术被不断引入汽车行业,诸如车载多媒体影音娱乐系统、智能驾驶控制器等新一代车载ECU在数据传输与处理能力上的更高要求,单纯依靠性能有限的MCU已经难以胜任。基于成本、功耗以及可靠性等方面的考虑,目前汽车行业内比较普遍的做法,是在系统设计阶段通过引入高性能片上系统(SOC)完成对数据传输与处理有较高要求的任务,以MCU作为与整车网络通讯的交互节点,二者协同处理,最终实现整个ECU的高效、可靠运行。
高性能SOC的设计思想与实现技术起源于已蓬勃发展多年的计算机领域,其优势在于高效处理图形图像等大数据量、大运算量的任务,尤其适用于汽车中的车载多媒体系统,以及正在快速发展的智能驾驶领域;但劣势在于其上所执行的软件、操作系统等并非专为汽车电子行业定制,很多汽车电子领域的特殊需求无法覆盖,比如电源管理、诊断功能等。
目前国内外多家公司已经开展适配汽车电子领域高性能SOC的软件与操作系统的移植与开发工作,诸如WinCE,Linux,Android,QNX等。但这些方案更多是从应用的角度出发,尝试适配车辆现有的功能,即无法深入到整车网络层面来统一设计。
目前基于MCU与SOC共存的系统架构设计中,MCU与SOC的诊断通常都是独立实现,即MCU的诊断遵循ISO 14229-1:2006标准通过CAN网络实现,SOC的诊断往往依赖于SOC上所承载的操作系统类型的不同而有所不同, 暂无法通过整车CAN网络进行读取。
发明内容
本发明所要解决的技术问题在于,提供一种汽车诊断数据处理方法和系统,通过在SOC系统中构建一套支持ISO 14229-1:2006中所列明诊断服务的诊断数据处理系统,使得MCU与SOC的诊断功能统一通过CAN网络实现。
为了解决上述技术问题,本发明提供一种基于片上系统汽车诊断数据处理方法,包括如下步骤:
接收诊断请求并进行解析获得相应的解析结果,所述解析结果至少包括与所述诊断请求对应的诊断数据请求命令;
根据所述解析结果获得设定格式的数据包,所述设定格式的数据包中包括与所述诊断数据请求命令对应的诊断数据;
对所述设定格式的数据包进行拆包处理,获得所述诊断数据请求命令和所述诊断数据,并对所述诊断数据进行有效性校验;
保存所述诊断数据请求命令和校验成功的诊断数据。
其中,若所述解析结果为第一诊断数据请求命令和所述第一诊断数据请求命令需要配置的第一诊断数据,则所述根据所述解析结果获得设定格式的数据包具体包括:
根据所述第一诊断数据请求命令和第一诊断数据生成设定格式的第一数据包;
对所述设定格式的数据包进行拆包处理,获得所述诊断数据请求命令和所述诊断数据,并对所述诊断数据进行有效性校验具体包括:
对所述设定格式的第一数据包进行拆包处理,获得第一诊断数据请求命令和所述第一诊断数据,并对所述第一诊断数据进行有效性校验;
所述保存所述诊断数据请求命令和校验成功的诊断数据具体包括:
保存所述第一诊断数据请求命令和校验成功的第一诊断数据。
其中,所述对第一诊断数据进行有效性校验具体包括:
根据所述第一诊断数据请求命令与数据库中约定的每一第一诊断数据的数据长度分别对拆包获得的每一对应的第一诊断数据的长度进行有效性校验;
根据每一第一诊断数据的预先设定值分别对长度有效性校验成功的每一对应的第一诊断数据的数据内容进行有效性校验。
其中,所述保存所述第一诊断数据请求命令和校验成功的第一诊断数据具体包括:
判断内容有效性校验成功的每一第一诊断数据的数据类型,当数据库中具有与所述数据类型匹配的条目时,在所述条目中保存所述第一诊断数据请求命令和内容有效性校验成功后的所述第一诊断数据;当数据库中没有与所述数据类型匹配的条目时,根据所述第一诊断数据请求命令和内容有效性校验成功后的所述第一诊断数据在数据库中新建相应的条目,并保存所述新建条目。
其中,所述解析结果为第二诊断数据请求命令,则根据所述解析结果获得设定格式的数据包具体包括:
在所述第二诊断数据请求命令具备相应的请求权限时,接收设定格式的第二数据包,所述第二数据包中包括第二诊断数据请求命令的权限等级、第二诊断数据请求命令以及所述第二诊断数据请求命令请求的第二诊断数据;
对所述设定格式的数据包进行拆包处理,获得所述诊断数据请求命令和所述诊断数据,并对所述诊断数据进行有效性校验具体包括:
对所述设定格式的第二数据包进行拆包处理,获得第二诊断数据请求命令和第二诊断数据,并对第二诊断数据进行有效性校验;
保存所述诊断数据请求命令和校验成功的所述诊断数据具体包括:
保存第二诊断数据请求命令和校验成功的第二诊断数据,并返回保存的第二诊断数据。
其中,所述在所述第二诊断数据请求命令具备相应的请求权限时,接收设定格式的第二数据包具体包括:
接收解析获得的第二诊断数据请求命令;
根据接收的第二诊断数据请求命令生成设定格式的中间数据包,所述设定格式的中间数据包中包括第二诊断数据请求命令的权限等级、第二诊断数据请求命令以及设置为特定值的第二诊断数据请求命令请求的诊断数据;
根据第二诊断数据请求命令的权限等级判断所述第二诊断数据请求命令是否具备相应的请求权限,若具备请求权限,则接收所述设定格式的第二数据包,所述设定格式的第二数据包为将所述第二诊断数据写入设定格式的中间数据包中的所述设定为特定值的诊断数据处形成的数据包。
其中,所述对第二诊断数据进行有效性校验具体包括:
根据所述第二诊断数据请求命令与数据库中约定的每一第二诊断数据的长度对拆包获得的每一第二诊断数据的长度进行有效性校验;
根据每一第二诊断数据的预先设定值对长度有效性校验成功后的每一第二诊断数据进行数据内容有效性校验。
其中,所述保存第二诊断数据请求命令和校验成功后的第二诊断数据,并返回保存的第二诊断数据具体包括:
判断内容有效性校验成功后的每一第二诊断数据的数据类型,当数据库中具有与所述数据类型匹配的条目时,在所述条目中保存所述第二诊断数据请求命令和内容有效性校验成功后的所述第二诊断数据,并返回保存的第二诊断数据;当数据库中没有与所述数据类型匹配的条目时,根据所述第二诊断数据请求命令和内容有效性校验成功后的第二诊断数据在数据库中新建相应的条目,保存所述新建的条目并返回保存的第二诊断数据。
本发明还提供一种汽车诊断数据处理系统,设置于汽车车载电子控制单元中,包括:诊断协议解析模块、数据包处理模块、诊断数据校验模块、诊断数据存取模块,其中,
所述诊断协议解析模块用于接收诊断请求并进行解析获得相应的解析结果,所述解析结果至少包括与所述诊断请求对应的诊断数据请求命令;
数据包处理模块用于根据所述解析结果获得设定格式的数据包,其中,所述设定格式的数据包中包括与所述诊断数据请求命令对应的诊断数据;
诊断数据校验模块用于对所述设定格式的数据包进行拆包处理获得所述诊断数据请求命令和诊断数据,并对诊断数据进行有效性校验;
诊断数据存取模块用于保存所述诊断数据请求命令和校验成功的诊断数据。
其中,所述解析结果包括第一诊断数据请求命令和第一诊断数据请求命令需要配置的第一诊断数据,或者第二诊断数据请求命令 。11、根据权利要求10所述的系统,其特征在于,所述系统还包括:
诊断数据权限管理模块,用于判断所述第二诊断数据请求命令是否具备相应的请求权限。
本发明实施例的有益效果在于:该诊断数据处理系统通过设置诊断协议解析模块、数据包处理模块、诊断数据校验模块、诊断数据存取模块以及诊断数据权限管理模块,使得SOC系统支持ISO 14229-1:2006中所列明的诊断服务,从而使得MCU与SOC共存的车载ECU,可以使用基于CAN网络的诊断服务同时实现内部多个芯片的诊断功能,无需添加其他诊断设备,也无需考虑ECU内部架构;从车载ECU个体来看,本发明的SOC系统,可以使得开发人员在SOC中快速实现诊断功能框架的搭建,且移植性好,尤其多个SOC共存时,可以有效提升开发效率,保证软件架构的一致性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例的一种汽车诊断数据处理方法的流程示意图。
图2是本发明实施例的一种汽车诊断数据处理方法用于诊断数据配置的流程示意图
图3是本发明实施例的一种汽车诊断数据处理方法用于诊断数据请求的流程示意图。
图4是本发明实施例的一种汽车诊断数据处理系统的结构示意图。
具体实施方式
以下各实施例的说明是参考附图,用以示例本发明可以用以实施的特定实施例。
以下参照图1进行说明,本发明实施例一提供一种汽车诊断数据处理方法,该方法包括如下步骤:
S1、接收诊断请求并进行解析,获得相应的解析结果,所述解析结果至少包括与所述诊断请求对应的诊断数据请求命令。
S2、根据所述解析结果获得设定格式的数据包,所述设定格式的数据包中包括与所述诊断数据请求命令对应的诊断数据。
S3、对所述设定格式的数据包进行拆包处理,获得所述诊断数据处理命令和诊断数据,并对诊断数据进行有效性校验。
S4、保存所述诊断数据请求命令和校验成功的诊断数据。
该汽车诊断数据处理方法主要应用于两种场景,分别为汽车诊断数据配置和汽车诊断数据请求,以下从上述两个场景对汽车诊断数据处理方法进行说明。
如图2所示,当该方法用于汽车诊断数据配置时,其具体包括如下步骤:
S1a、接收诊断请求并进行解析,获得第一诊断数据请求命令和第一诊断数据请求命令需要配置的第一诊断数据。
串口协议发过来的数据帧里面包括协议头和数据部分,其中数据部分包括了诊断服务类型以及可能存在的附加数据,可能存在的附加数据视不同的诊断服务类型不同而不同。为了区分通讯协议和诊断协议,给诊断协议分配了专门的协议头ID,当接收到数据帧后,对数据帧进行解析,获得协议的协议头ID,并根据协议头ID判断该接收的协议是否是诊断协议,如果是诊断协议,则对数据帧的数据部分进行第一级解析,获得相应的诊断数据请求命令,接着对数据部分的第二级、第三级等进行解析,从而获得该第一诊断数据。
举例说明,假设要进行扬声器参数配置,那么此配置工作中的第一诊断数据请求命令就是扬声器参数配置指令码,该第一诊断数据包括扬声器的生产商、数量与位置等信息。
S2a、根据所述第一诊断数据请求命令和第一诊断数据生成设定格式的第一数据包。
其中,步骤S2a具体包括:接收第一诊断数据请求命令、第一诊断数据请求命令的权限等级以及第一诊断数据,并根据接收的第一诊断数据请求命令、第一诊断数据请求命令权限等级以及第一诊断数据生成设定格式的第一数据包。
S3a、对所述设定格式的第一数据包进行拆包处理,获得所述第一诊断数据请求命令和第一诊断数据,并对第一诊断数据进行有效性校验。
具体地,接收设定格式的第一数据包,并对设定格式的第一数据包进行拆包处理,从而获得第一诊断数据请求命令和第一诊断数据,根据第一诊断数据请求命令与数据库中约定的每一第一诊断数据的数据长度分别对第一数据包中的每一对应的第一诊断数据的长度进行有效性校验;根据每一第一诊断数据的预先设定值分别对长度有效性校验成功后的每一对应的第一诊断数据的数据内容进行有效性校验。
举例说明对第一诊断数据进行内容有效性校验,假设某第一诊断数据包括一个字节,一个字节8个位,可以表示0-255之间的内容,定义该第一诊断数据的每位为1有效时,判断该第一诊断数据的每一位是否为1,如果均为1,则通过内容有效性校验,否则,不通过。
S4a、保存所述第一诊断数据请求命令和校验成功后的第一诊断数据。
具体地,判断内容有效性校验成功后的每一第一诊断数据的数据类型,由于不同类型的诊断数据在数据库中对应的条目是不一样的,诊断数据类型是作为数据库中数据条目存储的唯一识别ID。当数据库中具有与第一诊断数据的数据类型匹配的条目时,在条目中保存第一诊断数据请求命令和内容有效性校验成功后的第一诊断数据;当数据库中没有与数据类型匹配的条目时,根据第一诊断数据请求命令和内容校验成功后的第一诊断数据在数据库中新建相应的条目,并在新建的条目中保存第一诊断数据请求命令和内容有效性校验成功后的第一诊断数据。
在保存第一诊断数据的同时保存第一诊断数据请求命令,便于在进行数据请求的过程中,能够快速的查找属于同一诊断数据请求命令的所有诊断数据。
如图3所示,当该方法用于汽车诊断数据请求时,具体包括如下步骤:
S1b、接收诊断请求并进行解析,获得第二诊断数据请求命令。
具体地,该第二诊断数据请求命令可以是外部诊断仪请求获得上层应用的版本号,该上层应用可以是与汽车诊断服务相关的手机APP。
为了使得请求得到的数据以与数据库中约定的格式进行传输,根据第二诊断数据请求命令生成第二请求数据包,并对第二请求数据包进行数据包格式处理。
S2b、在所述第二诊断数据请求命令具备相应的权限时,接收设定格式的第二数据包,所述设定格式的第二数据包中包括第二诊断数据请求命令的权限等级、第二诊断数据请求命令和第二诊断数据请求命令请求的第二诊断数据。
具体地,接收第二诊断数据请求命令和第二诊断数据请求命令的权限等级,并根据接收的第二诊断数据请求命令和第二诊断数据请求命令的权限等级生成设定格式的中间数据包,该设定格式的中间数据包中包括第二诊断数据请求命令的权限等级、第二诊断数据请求命令以及设置为特定值的第二诊断数据请求命令请求的诊断数据,根据第二诊断数据请求命令的权限等级判断第二诊断数据请求命令是否具备相应的请求权限,若具备请求权限,则接收第二数据包,该设定格式的第二数据包为将第二诊断数据写入设定格式的中间数据包中的设置为特定值的诊断数据处而形成的数据包。其中,该特定值可以是空值。
S3b、对所述设定格式的第二数据包进行拆包处理,获得第二诊断数据请求命令和第二诊断数据,并对第二诊断数据进行有效性校验。
具体地,对接收的设定格式的第二数据包进行拆包处理,获得第二诊断数据处理命令和第二诊断数据,根据第二诊断数据请求命令与数据库中约定的第二诊断数据的长度对设定格式的第二数据包中的第二诊断数据进行长度有效性校验;根据第二诊断数据的预先设定值对长度有效性校验成功后的第二诊断数据进行数据内容有效性校验,具体地校验方法同诊断数据配置过程中对第一诊断数据的有效性校验,因而不再描述。
S4b、保存第二诊断数据请求命令和校验成功后的第二诊断数据,并返回保存的第二诊断数据。
具体地,判断内容有效性校验成功后的每一第二诊断数据的数据类型,当数据库中具有与第二诊断数据的数据类型匹配的条目时,在条目中保存所述第二诊断数据请求命令和内容有效性校验成功后的第二诊断数据,并返回第二诊断数据;当数据库中没有与数据类型匹配的条目时,根据第二诊断数据请求命令和内容有效性校验成功后的第二诊断数据在数据库中新建相应的条目,保存新建的条目,并返回保存的第二诊断数据。
基于本发明实施例一,本发明实施例二提供一种汽车诊断数据处理系统,该系统设置于车载电子控制单元中,如图4所示,该系统1包括:诊断协议解析模块11、数据包处理模块12、诊断数据校验模块14、诊断数据存取模块15以及诊断数据权限管理模块13,其中,该数据包处理模块12包括数据包完整性校验模块和封包模块,诊断数据校验模块14包括拆包模块、数据长度校验模块和数据内容校验模块,诊断数据存取模块15包括判断模块、保存模块和创建模块。该汽车诊断数据处理系统支持诊断数据配置以及诊断数据请求两种场景。以下分别结合上述两种场景对该汽车诊断数据处理系统及5个模块进行具体说明。
(一)当该汽车诊断数据处理系统用于诊断数据配置的场景中:
诊断协议解析模块11用于接收诊断请求,并对接收的诊断请求进行解析,获得相应的第一诊断数据请求命令和第一诊断数据请求命令需要配置的第一诊断数据。
数据包处理模块12中的封包模块用于接收解析模块11解析获得的第一诊断数据请求命令和第一诊断数据,并根据第一诊断数据请求命令、第一诊断数据以及第一诊断数据请求命令的权限等级生成设定格式的第一数据包。
诊断数据校验模块14中的拆包模块用于接收设定格式的第一数据包,并对设定格式的第一数据包进行拆包处理,从而获得第一诊断数据请求命令和第一诊断数据,数据长度校验模块用于接收设定格式的第一数据包并对设定格式的第一数据包中的第一诊断数据进行长度有效性校验,内容校验模块用于对长度有效性校验成功后的第一诊断数据的数据内容进行有效性校验。校验成功后,将第一诊断数据请求命令和第一诊断数据写入数据库中。
诊断数据存取模块15中的判断模块用于判断每一第一诊断数据的数据类型,保存模块用于当数据库中具有与第一诊断数据的数据类型匹配的条目时,在该条目中保存第一诊断数据请求命令和内容有效性校验成功后的第一诊断数据;当数据库中没有与该数据类型匹配的条目时,创建模块用于根据第一诊断数据请求命令和内容校验成功后的第一诊断数据在数据库中新建相应的条目,保存模块还用于在新建的条目中保存第一诊断数据请求命令和内容有效性校验成功后的第一诊断数据。
(二)当该汽车诊断数据处理系统用于诊断数据请求的场景中:
诊断协议解析模块11用于接收诊断请求,并对接收的诊断请求进行解析,获得相应的第二诊断数据请求命令。
数据包处理模块12的封包模块用于接收第二诊断数据请求命令并根据第二诊断数据请求命令和第二诊断数据请求命令的权限等级生成设定格式的中间数据包,该设定格式的中间数据包包括第二诊断数据请求命令的权限等级、第二诊断数据请求命令以及设置为特定值的诊断数据。
诊断数据权限管理模块13用于接收设定格式的中间数据包,并根据接收的设定格式的中间数据包中的第二诊断数据请求命令的权限等级判断该第二诊断数据请求命令是否具备相应的请求权限,如果不具备相应的请求权限,则通知外部诊断设备不具备请求权限,如果具备相应的请求权限,则将该设定格式的中间数据包发送给上层应用或者其他模块,上层应用或其他模块将第二诊断数据请求命令请求的第二诊断写入设置为特定值的中间数据包的诊断数据处,从而形成设定格式的第二数据包,并将该设定格式的第二数据包发送给数据包处理模块。,数据包处理模块13的完整性校验模块还用于接收该,设定格式的第二数据包,并根据第二诊断数据请求命令与数据库中约定的所有第二诊断数据的长度对接收的第二数据包中的所有的第二诊断数据的总长度进行校验,如果两者一致,则接收该设定格式的第二数据包,否则,丢弃该设定格式的第二数据包,并将该数据包发送给诊断数据校验模块14。其中,该特定值可以是空值,该设定格式的第二数据包中包括至少一个第二诊断数据。
诊断数据校验模块14的拆包模块用于对接收的设定格式的第二数据包进行拆包处理,获得第二诊断数据请求命令和第二诊断数据,并对第二诊断数据进行有效性校验。数据长度校验模块用于对设定格式的第二数据包中的第二诊断数据进行数据长度有效性校验。数据内容校验模块,用于对数据长度校验模块校验成功的第二诊断数据的数据内容进行有效性校验。
当内容有效性校验成功后,诊断数据校验模块14将第二诊断数据请求命令和内容有效性校验成功后的第二诊断数据写入数据库中。
诊断数据存取模块15用于保存校验成功的第二诊断数据并返回保存的第二诊断数据。具体地,判断模块用于判断数据内容校验模块校验成功的第二诊断数据的数据类型;不同类型的诊断数据在数据库中对应的条目是不一样的,诊断数据类型是作为数据库中数据条目存储的唯一识别ID。保存模块用于在数据库中存在与数据内容校验模块校验成功的第二诊断数据的数据类型匹配的条目时,保存第二诊断数据请求命令和诊断数据模块校验成功后的第二诊断数据,并返回保存的第二诊断数据给诊断协议解析模块11;创建模块用于在数据库中不存在与数据内容校验模块校验成功的第二诊断数据的数据类型匹配的条目时,根据第二诊断数据请求命令和诊断数据校验模块校验成功的第二诊断数据在数据库中创建相应的条目,保存创建的条目并返回保存的第二诊断数据给诊断协议解析模块11。
其中,诊断数据校验模块14支持单一数据的写入回读校验,并且还支持基于文件或者字段存储两种存储方式。
其中,诊断数据存取模块15采用统一化数据存取接口进行数据存取,诊断数据存取模块15也支持文件和字段存储两种存储 方式。
其中,诊断数据权限管理模块13支持数据包广播和定向发送两个方式传输信息。
本发明实施例汽车诊断数据处理系统,通过设置诊断协议解析模块、数据包处理模块、诊断数据校验模块、诊断数据存取模块以及诊断数据权限管理模块,使得SOC系统支持ISO 14229-1:2006中所列明的诊断服务,从而使得MCU与SOC共存的车载ECU,可以使用基于CAN网络的诊断服务同时实现MCU与SOC的诊断功能,无需添加其他诊断设备,也无需考虑ECU内部架构;从车载ECU个体来看,本实施例的汽车诊断数据处理系统,可以使得开发人员在SOC侧快速实现诊断功能框架的搭建,且移植性好,尤其多个SOC共存时,可以有效提升开发效率,保证软件架构的一致性。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
Claims (9)
1.一种汽车诊断数据处理方法,其特征在于,包括如下步骤:
接收诊断请求并进行解析获得相应的解析结果,所述解析结果至少包括与所述诊断请求对应的诊断数据请求命令;
根据所述解析结果获得设定格式的数据包,所述设定格式的数据包中包括与所述诊断数据请求命令对应的诊断数据;
对所述设定格式的数据包进行拆包处理,获得所述诊断数据请求命令和所述诊断数据,并对所述诊断数据进行有效性校验;
保存所述诊断数据请求命令和校验成功的诊断数据;
若所述解析结果为第二诊断数据请求命令,则根据所述解析结果获得设定格式的数据包具体包括:
在所述第二诊断数据请求命令具备相应的请求权限时,接收设定格式的第二数据包,所述第二数据包中包括第二诊断数据请求命令的权限等级、第二诊断数据请求命令以及所述第二诊断数据请求命令请求的第二诊断数据;
对所述设定格式的数据包进行拆包处理,获得所述诊断数据请求命令和所述诊断数据,并对所述诊断数据进行有效性校验具体包括:
对所述设定格式的第二数据包进行拆包处理,获得第二诊断数据请求命令和第二诊断数据,并对第二诊断数据进行有效性校验;
保存所述诊断数据请求命令和校验成功的所述诊断数据具体包括:
保存第二诊断数据请求命令和校验成功的第二诊断数据,并返回保存的第二诊断数据。
2.根据权利要求1所述的方法,其特征在于:若所述解析结果为第一诊断数据请求命令和所述第一诊断数据请求命令需要配置的第一诊断数据,则所述根据所述解析结果获得设定格式的数据包具体包括:
根据所述第一诊断数据请求命令和第一诊断数据生成设定格式的第一数据包;
对所述设定格式的数据包进行拆包处理,获得所述诊断数据请求命令和所述诊断数据,并对所述诊断数据进行有效性校验具体包括:
对所述设定格式的第一数据包进行拆包处理,获得第一诊断数据请求命令和所述第一诊断数据,并对所述第一诊断数据进行有效性校验;
所述保存所述诊断数据请求命令和校验成功的诊断数据具体包括:
保存所述第一诊断数据请求命令和校验成功的第一诊断数据。
3.根据权利要求2所述的方法,其特征在于,所述对第一诊断数据进行有效性校验具体包括:
根据所述第一诊断数据请求命令与数据库中约定的每一第一诊断数据的数据长度分别对拆包获得的每一对应的第一诊断数据的长度进行有效性校验;
根据每一第一诊断数据的预先设定值分别对长度有效性校验成功的每一对应的第一诊断数据的数据内容进行有效性校验。
4.根据权利要求3所述的方法,其特征在于,所述保存所述第一诊断数据请求命令和校验成功的第一诊断数据具体包括:
判断内容有效性校验成功的每一第一诊断数据的数据类型,当数据库中具有与所述数据类型匹配的条目时,在所述条目中保存所述第一诊断数据请求命令和内容有效性校验成功后的所述第一诊断数据;当数据库中没有与所述数据类型匹配的条目时,根据所述第一诊断数据请求命令和内容有效性校验成功后的所述第一诊断数据在数据库中新建相应的条目,并保存新建条目。
5.根据权利要求1所述的方法,其特征在于,所述在所述第二诊断数据请求命令具备相应的请求权限时,接收设定格式的第二数据包具体包括:
接收解析获得的第二诊断数据请求命令;
根据接收的第二诊断数据请求命令生成设定格式的中间数据包,所述设定格式的中间数据包中包括第二诊断数据请求命令的权限等级、第二诊断数据请求命令以及第二诊断数据请求命令请求的设置为特定值的诊断数据;
根据第二诊断数据请求命令的权限等级判断所述第二诊断数据请求命令是否具备相应的请求权限,若具备请求权限,则接收所述设定格式的第二数据包,所述设定格式的第二数据包为将所述第二诊断数据写入设定格式的中间数据包中的所述设置为特定值的诊断数据处而形成的数据包。
6.根据权利要求5所述的方法,其特征在于,所述对第二诊断数据进行有效性校验具体包括:
根据所述第二诊断数据请求命令与数据库中约定的每一第二诊断数据的长度对拆包获得的每一第二诊断数据的长度进行有效性校验;
根据每一第二诊断数据的预先设定值对长度有效性校验成功后的每一第二诊断数据进行数据内容有效性校验。
7.根据权利要求6所述的方法,其特征在于,所述保存第二诊断数据请求命令和校验成功后的第二诊断数据,并返回保存的第二诊断数据具体包括:
判断内容有效性校验成功后的每一第二诊断数据的数据类型,当数据库中具有与所述数据类型匹配的条目时,在所述条目中保存所述第二诊断数据请求命令和内容有效性校验成功后的所述第二诊断数据,并返回保存的第二诊断数据;当数据库中没有与所述数据类型匹配的条目时,根据所述第二诊断数据请求命令和内容有效性校验成功后的第二诊断数据在数据库中新建相应的条目,保存所述新建的条目并返回保存的第二诊断数据。
8.一种汽车诊断数据处理系统,设置于汽车车载电子控制单元中,其特征在于,包括:诊断协议解析模块、数据包处理模块、诊断数据校验模块、诊断数据存取模块,其中,
所述诊断协议解析模块用于接收诊断请求并进行解析获得相应的解析结果,所述解析结果包括第一诊断数据请求命令和第一诊断数据请求命令需要配置的第一诊断数据,或者第二诊断数据请求命令;
数据包处理模块用于根据所述解析结果获得设定格式的数据包,其中,所述设定格式的数据包中包括与所述诊断数据请求命令对应的诊断数据;
诊断数据校验模块用于对所述设定格式的数据包进行拆包处理获得所述诊断数据请求命令和诊断数据,并对诊断数据进行有效性校验;
诊断数据存取模块用于保存所述诊断数据请求命令和校验成功的诊断数据;
若所述解析结果为第二诊断数据请求命令,则所述数据包处理模块具体用于在所述第二诊断数据请求命令具备相应的请求权限时,接收设定格式的第二数据包,所述第二数据包中包括第二诊断数据请求命令的权限等级、第二诊断数据请求命令以及所述第二诊断数据请求命令请求的第二诊断数据;
所述诊断数据校验模块具体用于对所述设定格式的第二数据包进行拆包处理,获得第二诊断数据请求命令和第二诊断数据,并对第二诊断数据进行有效性校验;
所述诊断数据存取模块具体用于保存第二诊断数据请求命令和校验成功的第二诊断数据,并返回保存的第二诊断数据。
9.根据权利要求8所述的系统,其特征在于,所述系统还包括:
诊断数据权限管理模块,用于判断所述第二诊断数据请求命令是否具备相应的请求权限。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811422376.6A CN111221317B (zh) | 2018-11-27 | 2018-11-27 | 一种汽车诊断数据处理方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811422376.6A CN111221317B (zh) | 2018-11-27 | 2018-11-27 | 一种汽车诊断数据处理方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111221317A CN111221317A (zh) | 2020-06-02 |
CN111221317B true CN111221317B (zh) | 2021-04-30 |
Family
ID=70827064
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811422376.6A Active CN111221317B (zh) | 2018-11-27 | 2018-11-27 | 一种汽车诊断数据处理方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111221317B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112491681B (zh) * | 2020-12-08 | 2023-04-25 | 合众新能源汽车股份有限公司 | 一种汽车总线数据的读取方法和系统 |
CN113934192B (zh) * | 2021-09-09 | 2023-08-08 | 星河智联汽车科技有限公司 | 一种车辆信息系统的模拟调试系统及方法 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006088821A (ja) * | 2004-09-22 | 2006-04-06 | Denso Corp | 車両の故障診断方法、故障診断システム、車載装置、故障解析装置、故障診断装置 |
JP2010102642A (ja) * | 2008-10-27 | 2010-05-06 | Denso Corp | 故障診断システム及び電子制御装置 |
CN102073319A (zh) * | 2011-01-25 | 2011-05-25 | 武汉理工大学 | 一种多功能综合型电控汽车故障诊断系统 |
CN102183945A (zh) * | 2011-01-17 | 2011-09-14 | 武汉理工大学 | 一种多功能电控汽车远程故障诊断系统 |
CN104850113A (zh) * | 2014-11-14 | 2015-08-19 | 北汽福田汽车股份有限公司 | 一种汽车远程诊断系统及方法 |
CN104965507A (zh) * | 2015-06-29 | 2015-10-07 | 广州汽车集团股份有限公司 | 生成开放式诊断数据交换数据库的方法及装置 |
CN105511448A (zh) * | 2015-12-30 | 2016-04-20 | 东风商用车有限公司 | 一种集成式车用诊断仪及其诊断方法 |
CN107272649A (zh) * | 2017-07-05 | 2017-10-20 | 东南(福建)汽车工业有限公司 | 车辆故障远程诊断系统及方法 |
CN107945306A (zh) * | 2017-10-11 | 2018-04-20 | 深圳市朗仁科技有限公司 | 一种汽车数据分析方法、终端及服务器 |
CN108566368A (zh) * | 2018-02-08 | 2018-09-21 | 深圳市元征软件开发有限公司 | 一种数据处理方法、服务器及诊断接头 |
CN108663628A (zh) * | 2018-04-02 | 2018-10-16 | 上汽大众汽车有限公司 | 一种高压电池包便携式多功能测试仪 |
-
2018
- 2018-11-27 CN CN201811422376.6A patent/CN111221317B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006088821A (ja) * | 2004-09-22 | 2006-04-06 | Denso Corp | 車両の故障診断方法、故障診断システム、車載装置、故障解析装置、故障診断装置 |
JP2010102642A (ja) * | 2008-10-27 | 2010-05-06 | Denso Corp | 故障診断システム及び電子制御装置 |
CN102183945A (zh) * | 2011-01-17 | 2011-09-14 | 武汉理工大学 | 一种多功能电控汽车远程故障诊断系统 |
CN102073319A (zh) * | 2011-01-25 | 2011-05-25 | 武汉理工大学 | 一种多功能综合型电控汽车故障诊断系统 |
CN104850113A (zh) * | 2014-11-14 | 2015-08-19 | 北汽福田汽车股份有限公司 | 一种汽车远程诊断系统及方法 |
CN104965507A (zh) * | 2015-06-29 | 2015-10-07 | 广州汽车集团股份有限公司 | 生成开放式诊断数据交换数据库的方法及装置 |
CN105511448A (zh) * | 2015-12-30 | 2016-04-20 | 东风商用车有限公司 | 一种集成式车用诊断仪及其诊断方法 |
CN107272649A (zh) * | 2017-07-05 | 2017-10-20 | 东南(福建)汽车工业有限公司 | 车辆故障远程诊断系统及方法 |
CN107945306A (zh) * | 2017-10-11 | 2018-04-20 | 深圳市朗仁科技有限公司 | 一种汽车数据分析方法、终端及服务器 |
CN108566368A (zh) * | 2018-02-08 | 2018-09-21 | 深圳市元征软件开发有限公司 | 一种数据处理方法、服务器及诊断接头 |
CN108663628A (zh) * | 2018-04-02 | 2018-10-16 | 上汽大众汽车有限公司 | 一种高压电池包便携式多功能测试仪 |
Also Published As
Publication number | Publication date |
---|---|
CN111221317A (zh) | 2020-06-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2019109915A1 (zh) | 汽车故障诊断方法、汽车故障诊断装置及电子设备 | |
CN103345243A (zh) | 一种刷写车辆电子控制单元程序的方法及装置 | |
CN111221317B (zh) | 一种汽车诊断数据处理方法和系统 | |
WO2021098212A1 (zh) | 软件升级方法、装置和系统 | |
CN101458525A (zh) | 一种电控单元配置自动识别方法 | |
CN107423492B (zh) | 一种基于模板的叉车诊断测试方法及系统 | |
WO2022041720A1 (zh) | 一种基于uds的通信方法、ecu及上位机 | |
CN213715751U (zh) | 一种域控制器 | |
CN112015489A (zh) | 一种车载软件的管理方法、装置、存储介质及系统 | |
CN113253707B (zh) | 一种新型列控车载设备的系统集成测试方法及装置 | |
CN109684148B (zh) | 一种基于arinc653的机载嵌入式软件虚拟总线通信构建方法 | |
CN110221867A (zh) | 一种xp系统下脉冲i/o功能卡通信驱动系统及方法 | |
CN115080104A (zh) | 一种对Autosar中COM代码进行自动配置的方法及系统 | |
CN108197043B (zh) | 一种智能车机的外设硬件的控制系统及方法 | |
CN116521217A (zh) | 一种基于autosar工具快速配置bsw的方法、系统及储存介质 | |
CN111400281B (zh) | 一种面向oss对象存储的gis数据质检与入库方法 | |
KR101382109B1 (ko) | 미들웨어 장치 및 방법 | |
CN117170822B (zh) | 使用分布式网络中间件的系统模型和代码联合仿真系统 | |
CN102567159B (zh) | 内存检测方法 | |
JP2003280902A (ja) | マイコンロジック開発システム及びそのプログラム | |
Mouzakitis et al. | Advanced automated onboard vehicle diagnostics testing | |
US20230215226A1 (en) | Method for vehicle diagnostics, diagnostic connector, and diagnostic device | |
CN113542381B (zh) | 一种消息帧处理方法和装置 | |
CN115495388B (zh) | 用于ai推理芯片的芯片验证方法、装置、设备及介质 | |
CN112104766B (zh) | 诊断协议重构方法、装置、终端设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |