CN117640670A - 一种车辆诊断方法及装置 - Google Patents

一种车辆诊断方法及装置 Download PDF

Info

Publication number
CN117640670A
CN117640670A CN202210984770.9A CN202210984770A CN117640670A CN 117640670 A CN117640670 A CN 117640670A CN 202210984770 A CN202210984770 A CN 202210984770A CN 117640670 A CN117640670 A CN 117640670A
Authority
CN
China
Prior art keywords
component
ethernet
diagnosis
diagnostic
vehicle
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.)
Pending
Application number
CN202210984770.9A
Other languages
English (en)
Inventor
宋稼祺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Co Wheels Technology Co Ltd
Original Assignee
Beijing Co Wheels Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Co Wheels Technology Co Ltd filed Critical Beijing Co Wheels Technology Co Ltd
Priority to CN202210984770.9A priority Critical patent/CN117640670A/zh
Publication of CN117640670A publication Critical patent/CN117640670A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Small-Scale Networks (AREA)

Abstract

本申请提供了一种车辆诊断方法及装置,涉及车辆诊断技术领域。该方法包括:基于汽车开放系统架构AUTOSAR标准中基于以太网的诊断服务的数据链路,确定目标组件集合,所述目标组件集合包括实现基于以太网的诊断服务的各个组件;获取所述目标组件集合中的各个组件;根据所述目标组件集合中的各个组件生成基于以太网的诊断服务软件;在待诊断的车辆上安装所述基于以太网的诊断服务软件,并通过所述基于以太网的诊断服务软件与所述诊断设备建立诊断通信链路,以及通过所述诊断通信链路与所述诊断设备进行诊断通信。由于本发明实施例提供的车辆诊断方法实现了软件全栈自研,提高了版本迭代速度。

Description

一种车辆诊断方法及装置
技术领域
本公开涉及车辆诊断技术领域,具体涉及一种车辆诊断方法及装置。
背景技术
目前,车辆中普遍使用的基于以太网的诊断服务软件普遍是以汽车开发系统架构(AUTomotive Open System Architecture,AUTOSAR)为基础开发的。然而,AUTOSAR的代码由vector工具(一种分布式系统设计开发工具)配置生成,因此生成的基于以太网的诊断服务软件的代码难以阅读及维护,不利于实现基于以太网的诊断服务软件的代码的统一性,同时降低基于以太网的诊断服务软件的版本的迭代速度。
发明内容
有鉴于此,本发明实施例提供了一种车辆诊断方法及装置,用于在使基于以太网的诊断服务软件符合汽车开发系统架构的同时,降低基于以太网的诊断服务软件的阅读和维护的难度。
为了实现上述目的,本发明实施例提供技术方案如下:
第一方面,本发明实施例提供了一种车辆诊断方法,包括:
基于汽车开放系统架构AUTOSAR标准中基于以太网的诊断服务的数据链路,确定目标组件集合,所述目标组件集合包括实现基于以太网的诊断服务的各个组件;
获取所述目标组件集合中的各个组件;
根据所述目标组件集合中的各个组件生成基于以太网的诊断服务软件;
在待诊断的车辆上安装所述基于以太网的诊断服务软件,并通过所述基于以太网的诊断服务软件与所述诊断设备建立诊断通信链路,以及通过所述诊断通信链路与所述诊断设备进行诊断通信。
作为本发明实施例一种可选的实施方式,所述目标组件集合包括:诊断通信管理器DCM组件、协议数据单元路由PDUR组件、基于以太网的诊断DoIP组件、套接字适配SoAD组件、TCP/IP协议栈组件、以太网接口组件以及以太网驱动组件。
作为本发明实施例一种可选的实施方式,所述获取所述目标组件集合中的各个组件,包括:构建所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件;从所述AUTOSAR的以太网诊断服务软件架构中获取所述TCP/IP协议栈组件、所述以太网接口组件以及所述以太网驱动组件。
作为本发明实施例一种可选的实施方式,所述构建所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件,包括:在基于微内核的嵌入式系统的组件架构CAmkES中构建所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件;在CAmkES的架构描述语言中将所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件添加到同一群组中;通过连接器连接所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件的接口。
作为本发明实施例一种可选的实施方式,所述在基于微内核的嵌入式系统的组件架构CAmkES中构建所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件,包括:
分别根据所述AUTOSAR标准中对所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件的规定,在CAmkES中构建所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件。
作为本发明实施例一种可选的实施方式,所述通过所述基于以太网的诊断服务软件与所述诊断设备建立诊断通信链路,包括:
通过所述基于以太网的诊断服务软件获取网络协议IP地址;
基于所述IP地址向所述以太网中的所有网络设备发送车辆声明消息,所述车辆声明消息携带有所述待诊断车辆的基本信息;
响应所述诊断设备的传输控制协议TCP连接建立请求,与所述诊断设备建立TCP连接。
作为本发明实施例一种可选的实施方式,所述通过所述基于以太网的诊断服务软件与所述诊断设备建立诊断通信链路,包括:
通过所述基于以太网的诊断服务软件获取IP地址;
接收所述诊断设备发送的车辆发现请求;
向所述诊断设备发送所述车辆发现响应,所述车辆发现响应携带有所述待诊断车辆的基本信息;
响应所述诊断设备的传输控制协议TCP连接建立请求,与所述诊断设备建立TCP连接。
第二方面,本发明实施例提供了一种车辆诊断装置,包括:
处理单元,用于基于汽车开放系统架构AUTOSAR标准中基于以太网的诊断服务的数据链路,确定目标组件集合,所述目标组件集合包括实现基于以太网的诊断服务的各个组件;
获取单元,用于获取所述目标组件集合中的各个组件;
生成单元,用于根据所述目标组件集合中的各个组件生成基于以太网的诊断服务软件;
诊断单元,用于在待诊断的车辆上安装所述基于以太网的诊断服务软件,并通过所述基于以太网的诊断服务软件与所述诊断设备建立诊断通信链路,以及通过所述诊断通信链路与所述诊断设备进行诊断通信。
作为本发明实施例一种可选的实施方式,所述目标组件集合包括:诊断通信管理器DCM组件、协议数据单元路由PDUR组件、基于以太网的诊断DoIP组件、套接字适配SoAD组件、TCP/IP协议栈组件、以太网接口组件以及以太网驱动组件。
作为本发明实施一种可选的实施方式,所述获取单元,具体用于构建所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件;
从所述AUTOSAR的以太网诊断服务软件架构中获取所述TCP/IP协议栈组件、所述以太网接口组件以及所述以太网驱动组件。
作为本发明实施例一种可选的实施方式,所述获取单元,还用于在基于微内核的嵌入式系统的组件架构CAmkES中构建所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件;
在CAmkES的架构描述语言中将所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件添加到同一群组中;
通过连接器连接所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件的接口。
作为本发明实施例一种可选的实施方式,所述在基于微内核的嵌入式系统的组件架构CAmkES中构建所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件,包括:
分别根据所述AUTOSAR标准中对所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件的规定,在CAmkES中构建所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件。
作为本发明实施例一种可选的实施方式,所述诊断单元,具体用于通过所述基于以太网的诊断服务软件获取网络协议IP地址;
基于所述IP地址向所述以太网中的所有网络设备发送车辆声明消息,所述车辆声明消息携带有所述待诊断车辆的基本信息;
响应所述诊断设备的传输控制协议TCP连接建立请求,与所述诊断设备建立TCP连接。
作为本发明实施例一种可选的实施方式,所述诊断单元,还用于通过所述基于以太网的诊断服务软件获取IP地址;
接收所述诊断设备发送的车辆发现请求;
向所述诊断设备发送所述车辆发现响应,所述车辆发现响应携带有所述待诊断车辆的基本信息;
响应所述诊断设备的传输控制协议TCP连接建立请求,与所述诊断设备建立TCP连接。
第三方面,本发明实施例提供了一种电子设备,包括:存储器和处理器,所述存储器用于存储计算机程序;所述处理器用于在执行计算机程序时,使得所述电子设备实现上述任一实施例所述的车辆诊断方法。
第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,当所述计算机程序被计算设备执行时,使得所述计算设备实现上述任一实施例所述的车辆诊断方法。
第五方面,本发明实施例提供了一种车辆,包括:第二方面所述的车辆诊断装置或第三方面所述的电子设备。
本发明实施例提供的车辆诊断方法包括:基于汽车开放系统架构AUTOSAR标准中基于以太网的诊断服务的数据链路,确定目标组件集合,所述目标组件集合包括实现基于以太网的诊断服务的各个组件;获取所述目标组件集合中的各个组件;根据所述目标组件集合中的各个组件生成基于以太网的诊断服务软件;在待诊断的车辆上安装所述基于以太网的诊断服务软件,并通过所述基于以太网的诊断服务软件与所述诊断设备建立诊断通信链路,以及通过所述诊断通信链路与所述诊断设备进行诊断通信。由于本发明实施例提供的车辆诊断方法是基于汽车开放系统架构AUTOSAR标准中基于以太网的诊断服务的数据链路来确定目标组件集合,并且获取所述目标组件集合中的各个组件,再根据所述目标组件集合中的各个组件生成基于以太网的诊断服务软件,然后在待诊断的车辆上安装所述基于以太网的诊断服务软件,并通过所述基于以太网的诊断服务软件与所述诊断设备建立诊断通信链路,以及通过所述诊断通信链路与所述诊断设备进行诊断通信,因此本发明实施例提供的车辆诊断方法生成了符合汽车开发系统架构的基于以太网的诊断服务软件,因为本发明实施例中的基于以太网的诊断服务软件的代码并非由vector工具配置生成,因此本发明实施例还可以提升基于以太网的诊断服务软件的代码的统一程度,降低基于以太网的诊断服务软件的阅读和维护的难度。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要调用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的车辆诊断方法的步骤流程图之一;
图2为本发明实施例提供的基于汽车开放系统架构标准规定的以太网诊断服务软件架构图。
图3为本发明实施例提供的车辆诊断方法的步骤流程图之二;
图4为本发明实施例提供的车辆诊断方法的步骤流程图之三;
图5为本发明实施例提供的车辆诊断装置的结构示意图;
图6为本发明实施例提供的电子设备的硬件结构示意图。
具体实施方式
为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
在本发明实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本发明实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,调用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。此外,在本发明实施例的描述中,除非另有说明,“多个”的含义是指两个或两个以上。
需要说明的是,在本文中,术语“包括”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以下首先对本发明实施例中的相关术语进行说明。
seL4:是世界上第一个通过数学方法被证明安全的操作系统内核,并且在安全的基础上还强调高性能,是世界上最快、最先进的OS微内核。它对于嵌入式计算系统的安全可信赖方面将会有极大意义,具体来看可能影响到航空电子、自动驾驶汽车、医疗设备、关键基础设施与国防等行业。
CAmkES:全称(component architecture for microkernel-based embeddedsystems)是一套基于seL4的软件开发以及运行环境框架,目的是为了快速可靠的建立基于微内核的多服务操作系统。CAmkES可以理解为一个自动生成c代码的脚本,seL4设计一个线程的时候需要调用一堆的API来初始化线程和设置参数,CAmkES屏蔽这些复杂实现细节,直接定义组件就可以,然后CAmkES可以在编译的时候自动生成对应的c代码。
AUTOSAR:汽车开放系统架构(AUTomotive Open System Architecture,AUTOSAR)是由全球汽车制造商、部件供应商及其他电子、半导体和软件系统公司联合建立的致力于制定汽车电子软件标准的联盟所开发汽车开发系统架构。AUTOSAR架构有利于车辆电子系统软件的交换与更新,并为高效管理愈来愈复杂的车辆电子、软件系统提供了一个基础。
Vector:Vector类是在java中可以实现自动增长的对象数组,Vector在C++标准模板库中的部分内容,它是一个多功能的,能够操作多种数据结构和算法的模板类和函数库。
DCM:诊断通信管理器(Diagnostic Communication Manager)是向DoIP模块提供车辆识别号码(Vehicle Identification Number,VIN)的模块。此外,DCM将执行经PduR路由的电子控制单元ECU局部诊断。DCM模块提供了用于诊断服务的通用API。在开发,制造服务期间,外部诊断工具会使用DCM模块的功能。DCM模块可确保诊断数据流并管理诊断状态,尤其是诊断会话和安全状态。DCM模块还会根据诊断状态检查是否支持诊断服务请求以及该服务是否可以在当前会话中执行。
DoIP:基于以太网的诊断(Diagnostic communication over InternetProtocol),主要负责解析来自SoAD的数据包的包头数据(head data),根据解析的结果来判断是否应该将数据包发送给上层DCM模块用于诊断处理,如果是无效的数据包会被丢弃并给数据的发送方发送通知。
PduR:协议数据单元路由(Protocol Data Unit Router)是DoIP模块用来连接到通信堆栈的其余部分的模块。PduR主要功能包括:将DoIP模块的诊断消息转发给其他模块(即内部DCM或其他TP模块)以及将DCM或其他TP模块的诊断消息转发给DoIP模块。
SoAd:套接字适配器(Socket Adaptor)是DoIP模块的底层模块。它提供了Socket连接建立和通知的接口和回调。SoAd模块的主要目的是在使用PDU(如PDU Router)的AUTOSAR通信服务模块和基于Socket的TCP/IP堆栈之间创建一个接口。
TCP/IP协议栈:又称为TCP/IP协议栈或互联网协议系列,包含了物理层、网络接口层、传输层、应用层四层协议系统。其中,物理层:对应于网络的基本硬件。网络接口层:定义了将资料组成正确帧的规程和在网络中传输帧的规程。传输层:为两个用户进程之间建立、管理和拆除可靠而又有效的端到端连接。应用层:它定义了应用程序使用互联网的规程。对此,该协议栈可包括但不限于IPv4、IPv6、DHCPv4、DHCPv6、ARP、NDP、TCP、UDP、ICMPv4、ICMPv6等协议
基于上述内容的基础上,本发明实施例提供了一种车辆检测方法,参照图1,该车辆检测方法包括如下步骤S101至步骤S104:
S101、基于汽车开放系统架构标准中基于以太网的诊断服务的数据链路,确定目标组件集合。
其中,所述目标组件集合包括实现基于以太网的诊断服务的各个组件。
基于汽车开放系统架构标准规定的以太网诊断服务软件架构图如图2所示。
由图2所示内容可知,按照汽车开放系统架构标准,完成以太网服务诊断建立的数据链路为:诊断通信管理器21<->协议数据单元路由22<->基于以太网的诊断23<->套接字适配器24<->TCP/IP协议栈25<->以太网接口26<->以太网驱动27,因此所述目标组件集合包括:诊断通信管理器组件、协议数据单元路由组件、基于以太网的诊断组件、套接字适配组件、TCP/IP协议栈组件、以太网接口组件以及以太网驱动组件,且诊断通信管理器组件、协议数据单元路由组件、基于以太网的诊断组件、套接字适配组件、TCP/IP协议栈组件、以太网接口组件以及以太网驱动组件分别用于实现诊断通信管理器21、协议数据单元路由22、基于以太网的诊断23、套接字适配器24、TCP/IP协议栈25、以太网接口26、以太网驱动27的相关功能。
作为一种可选的实施方式,所述诊断通信管理器组件是向基于以太网的诊断组件提供车辆识别号(Vehicle Identification Number,VIN)。此外,诊断通信管理器组件将执行经协议数据单元路由的电子控制单元(Electronic Control Unit,ECU)局部诊断。诊断通信管理器组件提供了用于诊断服务的通用应用程序编程接口(Application ProgramInterface,API)。在开发,制造服务期间,外部诊断工具会使用诊断通信管理器组件的功能。诊断通信管理器组件可确保诊断数据流并管理诊断状态,尤其是诊断会话和安全状态。此外,诊断通信管理器组件会根据诊断状态检查是否支持诊断服务请求以及该服务是否可以在当前会话中执行。
所述基于以太网的诊断组件负责解析来自套接字适配组件的数据包的头数据,根据解析的结果来判断是否应该将数据包发送给上层诊断通信管理器组件用于诊断处理,如果是无效的数据包会被丢弃并给数据的发送方发送通知。
所述协议数据单元路由组件中协议数据单元(Protocol Data Unit,PDU)路由器是DoIP组件用来连接到通信堆栈的其余部分的组件。用于将DoIP组件的诊断消息转发给其他模块(即内部DCM或其他传输协议组件);将DCM或其他传输协议(Transfer Protocol,TP)组件的诊断消息转发给DoIP组件。
所述套接字适配组件是DoIP组件的底层组件。Socket连接建立和通知的接口和回调。SoAD组件的主要目的是在使用PDU(如PDUR)的AUTOSAR通信服务模块和基于Socket的TCP/IP堆栈之间创建一个接口。它将I-PDU ID映射到Socket连接,反之亦然。
所述TCP/IP协议栈组件的作用的是处理IOS/OSI层模型的2层到4层,包括但不限于IPv4、IPv6、DHCPv4、DHCPv6、ARP、NDP、TCP、UDP、ICMPv4、ICMPv6等协议。
所述以太网接口组件用于通过一个同一接口访问一个或多个以太网驱动程序和以太网收发器驱动程序。
所述以太网驱动组件用于驱动不同的以太网收发器。
S102、获取所述目标组件集合中的各个组件。
在上述步骤S102(获取所述目标组件集合中的各个组件)中,具体包括以下步骤a和步骤b:
步骤a、构建所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件。
步骤b、从所述AUTOSAR的以太网诊断服务软件架构中获取所述TCP/IP协议栈组件、所述以太网接口组件以及所述以太网驱动组件。
S103、根据所述目标组件集合中的各个组件生成基于以太网的诊断服务软件。
S104、在待诊断的车辆上安装所述基于以太网的诊断服务软件,并通过所述基于以太网的诊断服务软件与所述诊断设备建立诊断通信链路,以及通过所述诊断通信链路与所述诊断设备进行诊断通信。
本发明实施例提供的车辆诊断方法包括:基于汽车开放系统架构AUTOSAR标准中基于以太网的诊断服务的数据链路,确定目标组件集合,所述目标组件集合包括实现基于以太网的诊断服务的各个组件;获取所述目标组件集合中的各个组件;根据所述目标组件集合中的各个组件生成基于以太网的诊断服务软件;在待诊断的车辆上安装所述基于以太网的诊断服务软件,并通过所述基于以太网的诊断服务软件与所述诊断设备建立诊断通信链路,以及通过所述诊断通信链路与所述诊断设备进行诊断通信。由于本发明实施例提供的车辆诊断方法是基于汽车开放系统架构AUTOSAR标准中基于以太网的诊断服务的数据链路来确定目标组件集合,并且获取所述目标组件集合中的各个组件,再根据所述目标组件集合中的各个组件生成基于以太网的诊断服务软件,然后在待诊断的车辆上安装所述基于以太网的诊断服务软件,并通过所述基于以太网的诊断服务软件与所述诊断设备建立诊断通信链路,以及通过所述诊断通信链路与所述诊断设备进行诊断通信,因此本发明实施例提供的车辆诊断方法生成了符合汽车开发系统架构的基于以太网的诊断服务软件,因为本发明实施例中的基于以太网的诊断服务软件的代码并非由vector工具配置生成,因此本发明实施例还可以提升基于以太网的诊断服务软件的代码的统一程度,降低基于以太网的诊断服务软件的阅读和维护的难度。
作为对上述实施例的扩展和细化,本发明实施例提供了另一种车辆控制方法,参照图3所示,该车辆控制方法包括如下步骤S201至步骤S206:
S201、基于AUTOSAR标准中基于以太网的诊断服务的数据链路,确定目标组件集合。
上述步骤S201的具体内容参照步骤S101,在此不作详细说明。
S202、构建所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件。
在一种可选的实施方式中,可以基于微内核的嵌入式系统的组件架构CAmkES构建所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件,具体包括如下步骤:
步骤1:在基于微内核的嵌入式系统的组件架构CAmkES中构建所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件。
作为一种可选的实施方式,上述步骤1(在基于微内核的嵌入式系统的组件架构CAmkES中构建所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件)中,分别根据所述AUTOSAR标准中对所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件的规定,在CAmkES中构建所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件。
作为一种可选的实施方式,构建DoIP组件,按照车辆开放系统架构中的配置规范文档中的要求需要实现如下几类接口:UDP DOIP communication,Rx TCP message,Tx TCPmessage,(即UDP消息发送的接口,TCP消息收发的接口)具体可以参考车辆开放系统架构中的配置规范文档。其余组件也是采用类似方式,车辆开放系统架构的配置规范文档中规定了各个组件需要提供的接口,以及详细的函数调用时序。
步骤2、在CAmkES的架构描述语言中将所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件添加到同一群组中。
步骤3、通过连接器连接所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件的接口。
作为一种可选的实施方式,在步骤3(通过连接器连接所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件的接口)中,所述连接器可以为seL4DirectCall连接器,即通过seL4DirectCall连接器连接所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件的接口。
S203、从所述AUTOSAR的以太网诊断服务软件架构中获取所述TCP/IP协议栈组件、所述以太网接口组件以及所述以太网驱动组件。
作为一种可选的实施方式,可以获取微服务器的代码作为以太网接口组件,将驱动代码作为以太网驱动组件。
S204、根据所述目标组件集合中的各个组件生成基于以太网的诊断服务软件。
S205、通过所述基于以太网的诊断服务软件获取网络协议IP地址。
在一种可选的实施例中,获取IP地址的方式可有两种:
方式1、当目标车辆与诊断设备直连组建以太网时,由于不存在动态主机配置协议(Dynamic Host Configuration Protocol,DHCP),因此目标车辆可以通过获取预配置的静态IP或者使用AUTOIP获取IP的方式获取IP地址。
方式2、当所述目标车辆与诊断设备通过动态主机配置协议连接到同一个以太网时,可以利用动态主机配置协议获取IP地址。
S206、基于所述IP地址向所述以太网中的所有网络设备发送车辆声明消息。
作为一种可选的实施方式,首先通过用户数据报协议以UDP广播的形式把一条基于以太网的诊断的报文(车辆声明消息)发给网络上的所有的其他节点,其中就包括诊断设备,目的端口外部测试设备发送UDP数据包的目标端口,其中这条消息携带了DoIP设备的DoIP版本、VIN、逻辑地址信息等信息,这条广播消息会基于UDP重复发送三次,而之前监听在外部测试设备发送UDP数据包的目标端口的诊断设备接收到这条信息,就知道了DoIP设备的基本信息。
S207、响应所述诊断设备的传输控制协议TCP连接建立请求,与所述诊断设备建立TCP连接。
在本发明实施例提供的另一种车辆诊断方法中,采用微内核的嵌入式系统的组件架构CAmkES构建所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件,并在在CAmkES的架构描述语言中将所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件添加到同一群组中,最后通过连接器连接所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件的接口。即在本发明实施例中采用微内核的嵌入式系统的组件架构CAmkES实现上述组件,并且将上述几个组件添加到一个群组中共享地址空间并通过seL4DirectCall连接器将上述组件的接口连接,这样就可以实现像同一进程空间内函数的直接调用,不会因为跨进程而带来的效率低下的问题,同时由于本发明实施例的车辆诊断方法基于CAmkES框架,本质是多进程模型,解决了传统方式多线程模型中,一个线程崩溃,同一进程中的所有线程都会受影响的问题。
作为对上述实施例的扩展和细化,本发明实施例提供了另一种车辆控制方法,参照图4所示,该车辆控制方法包括如下步骤S301至步骤S307:
S301、基于汽车开放系统架构AUTOSAR标准中基于以太网的诊断服务的数据链路,确定目标组件集合。
S302、构建所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件。
S303、从所述AUTOSAR的以太网诊断服务软件架构中获取所述TCP/IP协议栈组件、所述以太网接口组件以及所述以太网驱动组件。
上述步骤S301至步骤S303的具体内容参照步骤S201至步骤S203,在此不作详细说明。
S304、根据所述目标组件集合中的各个组件生成基于以太网的诊断服务软件。
S305、通过所述基于以太网的诊断服务软件获取网络协议IP地址。
步骤S305的具体内容参照步骤S205,在此不作详细说明。
S306、接收所述诊断设备发送的车辆发现请求。
作为一种可选的实施方式,在诊断设备未收到车辆声明消息时,诊断设备这边主动请求,通过UDP广播的形式,主动发一条DoIP代表车辆ID的请求消息,目的端口号是外部测诊断设备发送的UDP数据包的目标端口。
S307、向所述诊断设备发送所述车辆发现响应。
其中,所述车辆发现响应携带有所述待诊断车辆的基本信息。
示例性的,预设启动后就一直监听在外部测诊断设备发送的UDP数据包的目标端口的DoIP设备在接收到这条消息后,所述车辆就会回复一条携带自己信息的车辆声明消息给诊断设备。
S308、响应所述诊断设备的传输控制协议TCP连接建立请求,与所述诊断设备建立TCP连接。
在一种可选的实施方式中,在TCP连接建立后,诊断设备还需要发送一条路由激活消息请求的DoIP报文给DoIP组件,DoIP组件收到后会回复一条路由激活响应消息的DoIP报文,此时诊断连接建立,双方可以诊断通信。
本发明实施例提供了一种车辆诊断装置,图5该车辆诊断装置的结构示意图,如图5所示,该车辆诊断装置500包括:
处理单元510,用于基于汽车开放系统架构AUTOSAR标准中基于以太网的诊断服务的数据链路,确定目标组件集合,所述目标组件集合包括实现基于以太网的诊断服务的各个组件;
获取单元520,用于获取所述目标组件集合中的各个组件;
生成单元530,用于根据所述目标组件集合中的各个组件生成基于以太网的诊断服务软件;
诊断单元540,用于在待诊断的车辆上安装所述基于以太网的诊断服务软件,并通过所述基于以太网的诊断服务软件与所述诊断设备建立诊断通信链路,以及通过所述诊断通信链路与所述诊断设备进行诊断通信。
作为本发明实施例一种可选的实施方式,所述目标组件集合包括:诊断通信管理器DCM组件、协议数据单元路由PDUR组件、基于以太网的诊断DoIP组件、套接字适配SoAD组件、TCP/IP协议栈组件、以太网接口组件以及以太网驱动组件。
作为本发明实施一种可选的实施方式,所述获取单元520,具体用于构建所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件;
从所述AUTOSAR的以太网诊断服务软件架构中获取所述TCP/IP协议栈组件、所述以太网接口组件以及所述以太网驱动组件。
作为本发明实施例一种可选的实施方式,所述获取单元520,还用于在基于微内核的嵌入式系统的组件架构CAmkES中构建所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件;
在CAmkES的架构描述语言中将所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件添加到同一群组中;
通过连接器连接所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件的接口。
作为本发明实施例一种可选的实施方式,所述在基于微内核的嵌入式系统的组件架构CAmkES中构建所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件,包括:
分别根据所述AUTOSAR标准中对所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件的规定,在CAmkES中构建所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件。
作为本发明实施例一种可选的实施方式,所述诊断单元540,具体用于通过所述基于以太网的诊断服务软件获取网络协议IP地址;
基于所述IP地址向所述以太网中的所有网络设备发送车辆声明消息,所述车辆声明消息携带有所述待诊断车辆的基本信息;
响应所述诊断设备的传输控制协议TCP连接建立请求,与所述诊断设备建立TCP连接。
作为本发明实施例一种可选的实施方式,所述诊断单元540,还用于通过所述基于以太网的诊断服务软件获取IP地址;
接收所述诊断设备发送的车辆发现请求;
向所述诊断设备发送所述车辆发现响应,所述车辆发现响应携带有所述待诊断车辆的基本信息;
响应所述诊断设备的传输控制协议TCP连接建立请求,与所述诊断设备建立TCP连接。
基于同一发明构思,本发明实施例还提供了一种电子设备。图6为本发明实施例提供的电子设备的结构示意图,如图6所示,本实施例提供的电子设备包括:存储器601和处理器602,所述存储器601用于存储计算机程序;所述处理器602用于在执行计算机程序时执行上述实施例提供的车辆诊断方法。
基于同一发明构思,本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,当计算机程序被处理器执行时,使得所述计算设备实现上述实施例提供的车辆诊断方法。
基于同一发明构思,本发明实施例还提供了一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算设备实现上述实施例提供的车辆控制方法。
基于同一发明构思,本发明实施例还提供了一种车辆,所述车辆包括上述实施例提供的车辆诊断装置或上述实施例提供的电子设备。
本领域技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质上实施的计算机程序产品的形式。
处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动存储介质。存储介质可以由任何方法或技术来实现信息存储,信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。根据本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (11)

1.一种车辆诊断方法,其特征在于,包括:
基于汽车开放系统架构AUTOSAR标准中基于以太网的诊断服务的数据链路,确定目标组件集合,所述目标组件集合包括实现基于以太网的诊断服务的各个组件;
获取所述目标组件集合中的各个组件;
根据所述目标组件集合中的各个组件生成基于以太网的诊断服务软件;
在待诊断的车辆上安装所述基于以太网的诊断服务软件,并通过所述基于以太网的诊断服务软件与所述诊断设备建立诊断通信链路,以及通过所述诊断通信链路与所述诊断设备进行诊断通信。
2.根据权利要求1所述的方法,其特征在于,
所述目标组件集合包括:诊断通信管理器DCM组件、协议数据单元路由PDUR组件、基于以太网的诊断DoIP组件、套接字适配SoAD组件、TCP/IP协议栈组件、以太网接口组件以及以太网驱动组件。
3.根据权利要求2所述的方法,其特征在于,所述获取所述目标组件集合中的各个组件,包括:
构建所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件;
从所述AUTOSAR的以太网诊断服务软件架构中获取所述TCP/IP协议栈组件、所述以太网接口组件以及所述以太网驱动组件。
4.根据权利要求3所述的方法,其特征在于,所述构建所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件,包括:
在基于微内核的嵌入式系统的组件架构CAmkES中构建所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件;
在CAmkES的架构描述语言中将所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件添加到同一群组中;
通过连接器连接所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件的接口。
5.根据权利要求4所述的方法,其特征在于,所述在基于微内核的嵌入式系统的组件架构CAmkES中构建所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件,包括:
分别根据所述AUTOSAR标准中对所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件的规定,在CAmkES中构建所述DCM组件、所述PDUR组件、所述DoIP组件以及所述SoAD组件。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述通过所述基于以太网的诊断服务软件与所述诊断设备建立诊断通信链路,包括:
通过所述基于以太网的诊断服务软件获取网络协议IP地址;
基于所述IP地址向所述以太网中的所有网络设备发送车辆声明消息,所述车辆声明消息携带有所述待诊断车辆的基本信息;
响应所述诊断设备的传输控制协议TCP连接建立请求,与所述诊断设备建立TCP连接。
7.根据权利要求1-5任一项所述的方法,其特征在于,所述通过所述基于以太网的诊断服务软件与所述诊断设备建立诊断通信链路,包括:
通过所述基于以太网的诊断服务软件获取IP地址;
接收所述诊断设备发送的车辆发现请求;
向所述诊断设备发送车辆发现响应,所述车辆发现响应携带有所述待诊断车辆的基本信息;
响应所述诊断设备的传输控制协议TCP连接建立请求,与所述诊断设备建立TCP连接。
8.一种车辆诊断装置,其特征在于,包括:
处理单元,用于基于汽车开放系统架构AUTOSAR标准中基于以太网的诊断服务的数据链路,确定目标组件集合,所述目标组件集合包括实现基于以太网的诊断服务的各个组件;
获取单元,用于获取所述目标组件集合中的各个组件;
生成单元,用于根据所述目标组件集合中的各个组件生成基于以太网的诊断服务软件;
诊断单元,用于在待诊断的车辆上安装所述基于以太网的诊断服务软件,并通过所述基于以太网的诊断服务软件与所述诊断设备建立诊断通信链路,以及通过所述诊断通信链路与所述诊断设备进行诊断通信。
9.一种电子设备,其特征在于,包括:存储器和处理器,所述存储器用于存储计算机程序;所述处理器用于在执行计算机程序时,使得所述电子设备实现权利要求1-7任一项所述的车辆诊断方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,当所述计算机程序被计算设备执行时,使得所述计算设备实现权利要求1-7任一项所述的车辆诊断方法。
11.一种车辆,其特征在于,包括:权利要求8所述的车辆诊断装置或权利要求9所述的电子设备。
CN202210984770.9A 2022-08-17 2022-08-17 一种车辆诊断方法及装置 Pending CN117640670A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210984770.9A CN117640670A (zh) 2022-08-17 2022-08-17 一种车辆诊断方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210984770.9A CN117640670A (zh) 2022-08-17 2022-08-17 一种车辆诊断方法及装置

Publications (1)

Publication Number Publication Date
CN117640670A true CN117640670A (zh) 2024-03-01

Family

ID=90030870

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210984770.9A Pending CN117640670A (zh) 2022-08-17 2022-08-17 一种车辆诊断方法及装置

Country Status (1)

Country Link
CN (1) CN117640670A (zh)

Similar Documents

Publication Publication Date Title
US9769114B2 (en) Method and system for providing optimized ethernet communication for vehicle
US20240045657A1 (en) System architecture for implementing dds communication based on autosar, communication method, and device
CN114073043B (zh) 以太网网桥端口管理的方法和装置
EP1742446B1 (en) Information processing device and program
US10499311B2 (en) Method and apparatus for implementing network sharing
CN113676564B (zh) 数据传输方法、装置及存储介质
CN101369987B (zh) 一种建立通信通道的方法及装置
CN110191200A (zh) 网络访问方法、装置、电子设备和计算机可读介质
EP3267633B1 (en) Information processing system, proxy server, address duplication prevention method, and computer-readable recording medium
CN110278148B (zh) 一种数据兼容性网关系统
CN113485920B (zh) 实现DoIP实体的方法、装置、可读存储介质及电子设备
CN117640670A (zh) 一种车辆诊断方法及装置
CN114070578B (zh) 用户私有网络内网互通方法、系统、计算机和存储介质
CN113079036A (zh) 一种接入点设备的管理vlan确定方法、装置及接入点设备
CN113377393A (zh) 一种车载系统主节点的诊断刷新系统及方法
KR20080051046A (ko) 네트워크 프로토콜 패킷 전송을 위한 하드웨어 장치 및 그방법
US20240048527A1 (en) Information processing method, device, related apparatus and storage medium
CN114553634B (zh) 一种数据处理方法和相关装置
Vrinda et al. Design, development and testing of AUTOSAR TCP/IP stack: ICMP protocol
CN117319479A (zh) 用于DoIP诊断场景的TCP连接方法及相关设备
CN117812142A (zh) 服务发现方法、装置及电子设备
CN116016634A (zh) 多设备连接方法、装置及电子设备、计算机可读存储介质
CN111107178B (zh) 一种指定报文使用本地地址的方法和设备
Jose et al. Design, development and testing of AUTOSAR TCP/IP stack: UDP protocol
CN116056046A (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