车辆诊断通信方法、装置、设备及介质与流程

文档序号:32338272发布日期:2022-11-26 08:47阅读:41来源:国知局
车辆诊断通信方法、装置、设备及介质与流程

1.本技术属于车辆技术领域,尤其涉及一种车辆诊断通信方法、装置、设备及介质。


背景技术:

2.随着车辆电子技术的发展,域控制器已经成为车辆电子产品中的重要一员。在域控制器的主控芯片中,集成有控制单元和计算单元,域控制器进行诊断通信时,控制单元与计算单元通常也需要进行相应的信息通信,域控制器与整车网络中的其他域控制器也需要进行诊断通信。
3.相关技术中,外部诊断仪将诊断请求发送给域控制器中的计算单元,计算单元作为域控制器和外部诊断仪之间进行诊断通信的协同者,通过互联网诊断通信协议(diagnostic communication over internet protocol,简称doip)将诊断请求的请求内容发送给域控制器中的控制单元。在诊断通信的响应过程中,控制单元通过doip将响应内容发送给计算单元,之后,计算单元再将响应内容转发给外部诊断仪。
4.然而,上述车辆诊断通信方式的效率较低。


技术实现要素:

5.本技术实施例提供一种车辆诊断通信方法、装置、设备及介质,能够解决车辆诊断通信的效率较低的问题。
6.第一方面,本技术实施例提供一种车辆诊断通信方法,应用于车辆的域控制器中的控制单元,所述车辆诊断通信方法包括:
7.接收诊断发起装置发送的诊断请求,
8.响应于所述诊断请求,基于所述诊断请求中的请求内容确定诊断对象,其中,诊断对象包括诊断请求所要求诊断或者访问的目标元器件,
9.根据所述诊断对象的诊断情况,向所述诊断发起装置返回所述诊断请求的响应消息。
10.第二方面,本技术实施例提供了一种车辆诊断通信装置,应用于车辆的域控制器中的控制单元,所述车辆诊断通信装置包括:
11.接收单元,用于接收诊断发起装置发送的诊断请求,
12.确定单元,用于响应于所述诊断请求,基于所述诊断请求中的请求内容确定诊断对象,其中,诊断对象包括诊断请求所要求诊断或者访问的目标元器件,
13.发送单元,用于根据所述诊断对象的诊断情况,向所述诊断发起装置返回所述诊断请求的响应消息。
14.第三方面,本技术提供一种芯片,所述芯片包括控制单元,所述控制单元用于执行如前述第一方面所述的车辆诊断通信方法。
15.第四方面,本技术实施例提供了一种电子设备,所述电子设备包括:处理器以及存储有计算机程序指令的存储器;所述处理器执行所述计算机程序指令时实现如第一方面所
述的车辆诊断通信方法:
16.第五方面,本技术实施例提供了一种计算机存储介质,所述计算机可读存储介质上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现如第一方面所述的车辆诊断通信方法。
17.第六方面,本技术实施例提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现如第一方面所述的车辆诊断通信方法。
18.第七方面,本技术实施例提供一种计算机程序产品,该程序产品被存储在存储介质中,该程序产品被至少一个处理器执行以实现如第一方面所述的车辆诊断通信方法。
19.根据本技术实施例,在车辆的诊断通信过程中,域控制器中的控制单元作为诊断通信的路由(即作为诊断通信的协调者),可直接接收来自诊断发起装置的诊断请求,无需域控制器中的计算单元将诊断请求转发给控制单元;在确定诊断对象后,控制单元还可基于诊断对象的诊断情况,直接向诊断发起装置返回诊断请求的响应消息,无需计算单元将诊断请求的响应消息转发给诊断发起装置。如此,减少了诊断通信过程中的消息转发次数,降低了诊断通信的通信延迟,提高了诊断通信的效率。
附图说明
20.为了更清楚地说明本技术实施例的技术方案,下面将对本技术实施例中所需要使用的附图作简单的介绍,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
21.图1示出了采用域控制器的整车网络架构的示例图;
22.图2示出了相关技术中域控制器的诊断通信的流程示例图;
23.图3示出了相关技术中域控制器中的控制单元与计算单元进行诊断通信的软件架构示例图;
24.图4示出了本技术实施例提供的车辆诊断通信方法的流程示意图一;
25.图5示出了本技术实施例提供的车辆诊断通信方法的流程示意图二;
26.图6示出了本技术实施例提供的车辆诊断通信方法的流程示意图三;
27.图7示出了在诊断对象为域控制器、域控制器处于诊断状态且诊断通信用于指示域控制器进行升级的情况下诊断通信的流程示意图;
28.图8示出了在诊断对象为域控制器、域控制器处于诊断状态且诊断通信用于指示域控制器进行升级的情况下诊断通信的流程示意图;
29.图9示出了本技术实施例提供的车辆诊断通信方法的流程示意图四;
30.图10示出了本技术实施例提供的域控制器中的控制单元与计算单元进行诊断通信的软件架构示意图;
31.图11示出了本技术实施例提供的车辆诊断通信装置的结构示意图一;
32.图12示出了本技术实施例提供的车辆诊断通信装置的结构示意图二;
33.图13示出了本技术实施例提供的电子设备的硬件结构示意图。
具体实施方式
34.下面将详细描述本技术的各个方面的特征和示例性实施例,为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及具体实施例,对本技术进行进一步详细描述。应理解,此处所描述的具体实施例仅意在解释本技术,而不是限定本技术。对于本领域技术人员来说,本技术可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本技术的示例来提供对本技术更好的理解。
35.需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
36.首先,对本技术涉及的用语进行解释,便于本领域技术人员理解:
37.诊断通信:诊断仪基于用于车辆诊断的通信协议与车辆进行通信,以向车辆提供诊断服务的过程。其中,用于车辆诊断的通信协议比如统一诊断协议(unified diagnostic services,uds)。
38.作为示例的,车辆出现故障时,维修人员可在车上的obd(on-board diagnostic)端口上连接诊断仪,诊断仪通过obd端口向车辆的域控制器发送诊断请求,以请求读取车辆内部的一些信息,比如请求获取一些传感器数据、应用程序运行的日志等。
39.域控制器:将车辆上的各部分电子功能划分为几个领域,由域控制器负责相应领域的功能实现。在域控制器的主控芯片中,集成有至少一个控制单元和至少一个计算单元。控制单元可称为微控制单元(microcontroller unit,mcu),计算单元可称为微处理器(microprocessor unit,mpu)。
40.图1示出了采用域控制器的整车网络架构的示例图。
41.如图1所示,在车辆的整车网络架构中,可包括一个或多个域控制器,比如图1中的域控制器1、域控制器2、
……
、域控制器n,n表示域控制器的数量。其中,各个域控制器之间可通过车内以太网进行通信。各个域控制器可连接连接多个电子控制单元(electronic control unit,ecu)。比如,在图1中,域控制器1连接ecu11~ecu1n1、ecu21~ecu2n2,域控制器2连接ecu31~ecu3n3、ecu41~ecu4n4,域控制器n连接ecu51~ecu5n5、ecu61~ecu6n6。其中,n1~n6均表示ecu的数量。
42.如图1所示,在车辆的整车网络架构中,域控制器还可以承担网关的功能。比如,域控制器1(可以是其他域控制器,图1以域控制器1为例)通过以太网(工规级以太网)和控制器局域网络(controller areanetwork,can)连接到obd端口,以与外部诊断仪通信。域控制器1(可以是其他域控制器,图1以域控制器1为例)可以连接多个电子控制单元(electronic control unit,ecu),还可通过车内以太网(车规级以太网)与具备联网功能的ecu7连接。其中,具备联网功能的ecu7也可以具备诊断仪功能,可通过车内以太网向域控制器发送诊断通信的请求。
43.图2示出了相关技术中域控制器的诊断通信的流程示例图。
44.如图2所示,在诊断请求由控制单元自身执行的情况下,诊断通信过程包括如下步骤s201~s204:
45.s201,外部诊断仪10将诊断请求发送给域控制器中的计算单元20。
46.s202,计算单元20接收到诊断请求后,通过基于车内以太网的诊断通信(diagnostic communication over internet protocol,doip),将诊断请求转发给域控制器中的控制单元30。
47.s203,在诊断请求由控制单元30自身执行的情况下,控制单元30执行诊断请求后,通过doip将诊断请求对应的响应消息返回给计算单元20。
48.s204,计算单元20接收到来自控制单元30的响应消息后,向计算单元20发送诊断请求对应的响应消息。
49.如图2所示,在诊断请求由整车网络中的其他ecu执行的情况下,诊断通信过程如下步骤s205:
50.s205,外部诊断仪10将诊断请求发送给域控制器中的计算单元20。
51.s206,计算单元20接收到诊断请求后,通过基于车内以太网的doip,将诊断请求转发给域控制器中的控制单元30。
52.s207,在诊断请求由整车网络中的其他ecu40执行的情况下,控制单元30将诊断请求发送给其他ecu40。
53.s208,控制单元30接收来自该其他ecu40返回的响应消息。
54.s209,控制单元30响应于来自其他ecu40的响应消息,通过doip将该响应消息返回给计算单元20。
55.s210,计算单元20再将响应消息返回给外部诊断仪10。
56.可以看出,在上述过程中,域控制器中的计算单元20为域控制器与外部诊断仪10之间的协同者。
57.图3示出了相关技术中域控制器中的控制单元30与计算单元20进行诊断通信的软件架构示例图。如图3所示,外部诊断仪10通过交换机(switch)50与计算单元20进行通信,计算单元20与控制单元30之间也通过交换机50进行通信,计算单元20通过can与其他ecu40通信。
58.如图3所示,在诊断通信过程中,外部诊断仪10通过交换机50将诊断请求发送至计算单元20;在计算单元20中,诊断请求经过多个协议层21,进入doip服务端22,由doip服务端22进入doip客户端23,再由doip客户端23将诊断请求传递给协议层21,经过多个协议层21和交换机50,将诊断请求发送至控制单元30的多个协议层31中;在控制单元30中,控制单元30可以在路由模块32中进行诊断请求的路由,在由控制单元30自身执行诊断请求的情况下,比如通过图3中的单片机(dcm)33,也可以将诊断请求通过can通信链路34发送给其他ecu40。同样的,诊断请求的响应消息可以基于诊断请求的传输路径,由控制单元20传递给计算单元30,再传递给外部诊断仪50。
59.图2和图3所示的诊断通信过程存在以下问题:
60.问题一,诊断通信过程需要进行多次信息转发,通信延迟大、效率低;
61.问题二,域控制器中的计算单元和控制单元之间基于以太网进行通信,不但占用了交换机、控制单元和计算单元的总线带宽,还需要处理以太网的接收中断和发送中断,占
用的通信资源较多;
62.问题三,域控制器中的计算单元和控制单元均需实现基于doip的诊断服务器端和诊断客户端的软件功能(对外部诊断仪而言,计算单元为诊断服务器端,对控制单元而言,计算单元为诊断客户端;对计算单元而言,控制单元为诊断服务端,对其他ecu而言,控制单元为诊断客户端),整体的软件复杂度较高,导致软件开发时间长和开发成本高。
63.为了解决上述问题,本技术实施例提供了一种车辆诊断通信方法、装置、设备及介质。在本技术实施例中,考虑到针对域控制器的诊断操作,大多由域控制器中的控制单元控制执行,在诊断通信中由域控制器中的控制单元承担诊断发起装置与域控制器之间的协同者,而无需由域控制器中的计算单元进行信息转发,减少了信息转发次数,降低了通信延迟,提高了通信效率,还有利于节约通信资源。同时,由于计算单元无需再承担诊断通信中的信息转发工作,计算单元无需实现诊断服务器端和诊断客户端的软件功能,控制单元也无需实现诊断客户端的软件功能,从而降低了计算单元和控制单元上与诊断通信相关的软件复杂度。
64.下面,结合应用场景和附图,对本技术实施例所提供的车辆诊断通信方法进行介绍。
65.图4示出了本技术实施例提供的车辆诊断通信方法的流程示意图一。如图4所示,车辆诊断通信方法包括:
66.s401、域控制器中的控制单元30接收诊断发起装置10发送的诊断请求。
67.其中,诊断发起装置10为发起诊断请求(又可理解为生成诊断请求)的装置。诊断请求用于请求域控制器进行诊断通信,换句话说,诊断发起装置10通过向域控制器中的控制单元30发送诊断请求,请求对车辆进行诊断。
68.本实施例中,控制单元30直接接收诊断发起装置10发送的诊断请求,而无需接收由域控制器中的计算单元转发的诊断请求。
69.在一些实施例中,诊断发起装置10可包括如下至少一种:外部设备、车辆中具备联网功能的ecu、域控制器中的计算单元。从而,可以通过灵活多样的诊断发起装置10向域控制器中的控制单元30发送诊断请求。
70.在诊断发起装置10为外部设备的情况下,外部设备可通过诊断通信端口(比如obd端口)连接车辆,s401的一种可能的实现方式包括:域控制器中的控制单元30通过诊断通信端口接收诊断发起装置10发送的诊断请求。
71.在诊断发起装置10为域控制器中具备联网功能的ecu的情况下,具备联网功能的ecu可响应于第三方设备通过网络指示进行车辆诊断通信的指令,生成诊断请求,s401的又一种可能的实现方式包括:域控制器中的控制单元30通过车内以太网或者can,接收具备联网功能的ecu发送的诊断请求。
72.在诊断发起装置10为域控制器中的计算单元的情况下,计算单元具备诊断功能,因此计算单元自身可定时生成诊断请求,或者计算单元可响应于第三方设备通过网络指示进行车辆诊断通信的指令,生成诊断请求。之后,计算单元作为诊断发起装置10,向控制单元30发送诊断请求,s401的又一种可能的实现方式包括:控制单元30接收计算单元生成并发送的诊断请求。
73.s402、控制单元30响应于诊断请求,基于诊断请求中的请求内容确定诊断对象。
74.其中,诊断对象是指诊断请求所要求诊断或者访问的目标元器件。
75.本实施例中,控制单元30接收到诊断请求后,可从诊断请求中的请求内容中,获取诊断请求的目标地址,基于诊断请求的目标地址,确定诊断请求所针对的诊断对象。其中,诊断请求的目标地址包括为诊断请求所请求获取的数据所在的存储地址和/或元器件标识。
76.s403、控制单元30根据诊断对象的诊断情况,向诊断发起装置10返回诊断请求的响应消息。
77.本实施例中,控制单元30在确定诊断对象之后,可由诊断对象执行诊断请求。在诊断对象的诊断由控制单元30控制的情况下,控制单元30可直接获得诊断对象的诊断情况;在诊断对象的诊断由其他元器件控制的情况下,控制单元30可监听诊断对象执行诊断请求的情况,即监听诊断对象的诊断情况;之后,控制单元30可基于诊断对象的诊断情况,向诊断发起装置10返回诊断请求的响应消息。在响应消息中,可包括诊断请求所请求的诊断数据,比如诊断请求所请求的传感器数据、运行日志等,响应消息还可以为定时器消息,以告知诊断发起装置10再等待一段时间。
78.本技术实施例中,控制单元30直接接收来自诊断发起装置10的诊断请求,基于诊断请求中的请求内容,确定诊断对象,基于诊断对象的诊断情况,向诊断发起装置10返回诊断请求的响应消息。基于域控制器中控制单元30负责诊断请求的执行的特点,由域控制器中的控制单元30充当诊断通信过程中的路由,而无需域控制器中的计算单元负责诊断通信中的消息转发,有效地减少了诊断通信过程中的消息转发次数,降低了通信延迟,提高了通信效率,解决了通信资源,还降低了计算单元和控制单元上与诊断通信相关的软件复杂度。
79.在一些实施例中,域控制器中还包括位于计算单元与控制单元之间的共享内存,计算单元与控制单元的通信方式为基于计算单元与控制单元之间的共享内存实现的核间通信(core to core communcation,c2cc)。
80.本实施例中,在核间通信中,计算单元和控制单元可将要进行彼此收发的消息或数据存放在共享内存中,由对方在共享内存中进行读取。具体的,控制单元向计算单元发送消息或数据时,控制单元将消息或数据写入共享内存中,计算单元从共享内存中读取控制单元写入的消息或数据;计算单元向控制单元发送消息或数据时,计算单元将消息或数据写入共享内存中,控制单元从共享内存中读取计算单元写入的消息或数据。
81.所以,相较于计算单元与控制单元通过交换机和doip进行通信,核间通信不占用交换机、控制单元和计算单元的总线带宽,也无需处理以太网的接收中断和发送中断,节约了通信资源。
82.进一步的,在诊断发起装置为计算单元的情况下,控制单元可通过核间通信接收计算单元发送的诊断请求。从而,在计算单元发起诊断通信的情况下,通过核间通信提高诊断通信的效率,节约通信资源。
83.在一种可能的实施方式中,共享内存还可设于计算单元中和/或控制单元中,以通过位于计算单元和/或控制单元中的共享内存实现核间通信。
84.进一步的,在共享内存设于计算单元中和控制单元中的情况下,计算单元中的共享内存与控制单元中的共享内存通信连接。
85.在一些实施例中,诊断对象可包括控制单元所在的域控制器和/或通过can与控制
单元通信的can ecu。从而,控制单元既可以执行针对控制单元所在的域控制器的诊断请求,又可以作为诊断发起装置与can ecu之间的路由,将诊断请求转发至can ecu,以实现对can ecu的诊断。
86.下面结合图5~图8给出诊断对象为域控制器的实施例:
87.图5示出了本技术实施例提供的车辆诊断通信方法的流程示意图二。如图5所示,车辆诊断通信方法包括:
88.s501、域控制器中的控制单元30接收诊断发起装置10发送的诊断请求。
89.其中,s501的实现原理和技术效果可参照前述实施例,不再赘述。
90.s502、控制单元30响应于诊断请求,基于诊断请求中的请求内容确定诊断对象为域控制器。
91.本实施例中,控制单元30可从诊断请求中获取请求内容,比如,请求内容为请求获取某个传感器的传感数据、请求获取某个元器件的故障信息;之后,控制单元30可基于请求内容中的目标地址,确定诊断对象。在请求内容中的目标地址指向控制单元30所在的域控制器的情况下,控制单元30可确定诊断对象为控制单元30所在的域控制器。
92.s503、控制单元30执行与诊断请求对应的诊断操作。
93.本实施例中,在诊断对象为控制单元30所在的域控制器的情况下,作为域控制器上由控制单元30处理诊断请求,即由控制单元30执行与诊断请求对应的诊断操作。比如,由控制单元30获取域控制器上传感器的传感数据、域控制器上元器件的故障信息、域控制器上软件的运行日志等。
94.s504、控制单元30根据诊断操作的执行情况,向诊断发起装置10返回诊断请求的响应消息。
95.本实施例中,在诊断对象为控制单元30所在的域控制器的情况下,控制单元30执行与诊断请求对应的诊断操作,并获取诊断操作的执行请求,其中,诊断操作的执行情况可包括如下至少一种:诊断操作未执行完成、诊断操作执行完成、执行诊断操作所获得的诊断数据(比如传感器数据、故障信息等)。在得到诊断操作的执行情况后,控制单元30向诊断发起装置10返回诊断请求的响应消息,该响应消息携带有诊断操作的执行情况,以通过控制单元30直接向诊断发起装置10反馈诊断操作的执行情况。
96.本技术实施例中,域控制器中的控制器30接收诊断发起装置10发送的诊断请求,在根据诊断请求确定诊断对象为该域控制器的情况下,控制单元30执行诊断请求对应的诊断操作,并将诊断操作的执行情况直接反馈给诊断发起装置10。相较于诊断请求由计算单元转发给控制单元30,诊断操作的执行情况由计算单元转发给诊断发起装置10的方式,本技术实施例有效的减少了诊断通信过程中的消息转发次数,降低了通信延迟,提高了通信效率。
97.在诊断对象为控制单元所在的域控制器的情况下,诊断请求可能与域控制器中的计算单元相关。因此,在一些实施例中,如果诊断请求与域控制器中的计算单元相关,则控制单元与计算单元通过核间通信,执行诊断操作。从而,通过控制单元与计算单元之间的核间通信,提高诊断通信效率,减少诊断通信占用的通信资源。
98.诊断通信的作用可包括如下两种:用于车辆的故障诊断、用于车辆的数据升级。因此,在本实施例中,诊断请求与域控制器中的计算单元相关可包括如下至少一种情况:诊断
请求用于请求获取计算单元中存储的数据,诊断请求所请求的数据需要经过计算单元运算得到、诊断请求用于请求域控制器进行升级。其中,诊断请求用于请求域控制器进行升级可包括用于请求控制单元和/或计算单元升级。
99.在诊断请求用于请求域控制器进行升级的情况下,域控制器的设备状态可包括如下两种:诊断状态和升级状态。在诊断状态下,域控制器接收来自诊断发起设备的升级数据并进行存储;在升级状态下,域控制器基于来自诊断发起设备的升级数据进行升级。因此,控制单元可通过判断域控制器的设备状态,来采取不同的操作,下面分别通过实施例进行说明。
100.其中,域控制器处于诊断状态时,域控制器中的控制单元和计算单元也处于诊断状态;域控制器处于升级状态时,域控制器中的控制单元和计算单元也处于升级状态。
101.图6示出了本技术实施例提供的车辆诊断通信方法的流程示意图三,该方法应用于域控制器中的控制单元,换句话说,本实施例提供的车辆诊断通信方法的执行主体为控制单元。如图6所示,车辆诊断通信方法包括:
102.s601、接收诊断发起装置发送的诊断请求。
103.s602、响应于诊断请求,基于诊断请求中的请求内容确定诊断对象为域控制器。
104.其中,s601和s602的实现原理和技术效果可参照前述实施例,不再赘述。
105.s603、确定诊断请求是否指示域控制器进行升级。
106.本实施例中,控制单元可通过判断诊断请求是否属于升级服务请求,来确定诊断请求是否指示域控制器进行升级,在控制单元确定诊断请求指示域控制器进行升级的情况下,则执行s604,否则执行s606。
107.在一种可能的实现方式中,控制单元可通过判断诊断请求是否为0
×
11请求、0
×
34请求、0
×
36请求、0
×
37请求或0
×
38请求,若是,则确定诊断请求指示域控制器进行升级,否则确定诊断请求未指示域控制器进行升级。其中,0
×
11请求、0
×
34请求、0
×
36请求、0
×
37请求或0
×
38请求为uds中的升级服务请求。从而,基于uds中的这几种升级服务请求,提高判断诊断请求是否属于升级服务请求的准确性。
108.s604、确定域控制器是否处于诊断状态。
109.本实施例中,控制单元判断域控制器是否处于诊断状态,在域控制器处于诊断状态的情况下,执行s605,否则执行s606。
110.其中,s603和s604的执行顺序可以先执行s603,也可以先执行s604,还可以同时执行s603和s604,在此不做限制。
111.在一种可能的实现方式中,域控制器可在启动后默认进入诊断状态。如此,在域控制器启动后,诊断发起设备即可通过发送指示域控制器进行升级的诊断请求,实现对域控制器的升级。
112.s605、通过核间通信,将来自诊断发起装置的第一升级数据发送至计算单元,以辅助计算单元进行升级。
113.其中,第一升级数据中可包括用于控制单元升级的升级数据和/或用于计算单元升级的升级数据。考虑到控制单元主要负责控制,计算单元主要负责数据处理,计算单元的存储能力比控制单元的存储能力更强,因此在域控制器中,可由计算单元对升级数据进行存储和处理。
114.本实施例中,控制单元在确定诊断请求指示域控制器进行升级且域控制器处于诊断状态的情况下,可接收来自诊断发起装置的第一升级数据,再将第一升级数据发送给计算单元,由计算单元进行存储。在第一升级数据中包含用于计算单元升级的升级数据的情况下,将第一升级数据发送给计算单元,有利于辅助实现计算单元的升级。
115.s606、执行与诊断请求对应的诊断操作。
116.本实施例中,在诊断请求未指示域控制器进行升级的情况下,控制单元自身可执行与诊断请求对应的诊断操作,比如,获取传感器的传感数据;在诊断请求指示域控制器进行升级但域控制器处于升级状态(即未处于诊断状态)的情况下,控制单元可基于存储在计算单元中的第一升级数据,执行升级操作;在诊断请求指示域控制器进行升级且域控制器处于诊断状态的情况下,控制器在将第一升级数据传递给计算单元后,可等待域控制器进入升级状态,在域控制器进入升级状态后,基于第一升级数据执行升级操作。
117.s607、根据诊断操作的执行情况,向诊断发起装置返回诊断请求的响应消息。
118.其中,s607的实现原理和技术效果可参照前述实施例,不再赘述。
119.本技术实施例中,在诊断对象为域控制器、域控制器处于诊断状态且诊断请求用于指示域控制器进行升级的情况下,控制单元通过核间通信将第一升级数据发送给计算单元,从而,通过控制单元和计算单元之间的核间通信,并以控制单元作为升级过程中的路由,实现用于升级域控制器的诊断通信,提高了诊断通信的通信效率,节约了通信资源。
120.在一些实施例,图7示出了在诊断对象为域控制器、域控制器处于诊断状态且诊断通信用于指示域控制器进行升级的情况下诊断通信的流程示意图。如图7所示,诊断通信过程可包括:
121.s701、诊断发起装置10向控制单元30发送诊断请求,诊断请求用于指示域控制器进行升级。
122.s702、控制单元30向诊断发起装置10返回诊断响应,诊断响应用于向诊断发起装置10指示控制单元30接收到诊断请求。
123.本实施例中,控制单元30在根据诊断请求确定诊断对象为域控制器且诊断请求用于指示域控制器进行升级的情况下,可向诊断发起装置10返回诊断响应,以告知诊断发起装置控制单元接收到诊断请求。
124.s703、诊断发起装置10响应于诊断响应向控制单元30发送第一消息,第一消息用于向控制单元30指示数据传输开始。
125.本实施例中,诊断发起装置10接收到诊断响应后,可响应于诊断响应向控制单元30发送第一消息,第一消息用于告知控制单元30数据传输开始。其中,第一消息还可用于请求控制单元30的数据传输要求,控制单元30的数据传输要求可包括控制单元30所能够接收并解析的数据需满足的格式、控制单元30通过核间通信进行数据传输所能够接受的数据传输速率。
126.s704、控制单元30响应于第一消息,向计算单元20发送第二消息,第二消息用于向计算单元20指示数据传输开始。
127.本实施例中,由于升级数据需要传输至计算单元20中进行存储,控制单元30在接收到第一消息后,可向计算单元20发第二消息,以通过第二消息向计算单元20告知数据传输开始,便于计算单元20准备好接收数据。其中,第二消息还可用于请求计算单元20的数据
传输要求,计算单元20的数据传输要求可包括计算单元20所能够接收并解析的数据需满足的格式、计算单元20通过核间通信进行数据传输所能够接受的数据传输速率。
128.s705、计算单元20响应于第二消息,向控制单元30返回第二消息的响应消息,第二消息的响应消息用于指示计算单元30接收到第二消息以及指示计算单元30的数据传输要求。
129.s706、控制单元30响应于计算单元20返回的第二消息的响应消息,向诊断发起装置10发送第一消息的响应消息,第一消息的响应消息用于指示控制单元30接收到第一消息以及指示控制单元30的数据传输要求。
130.s707、诊断发起装置10响应于第一消息的响应消息,向控制单元30发送第三消息,第三消息中携带有第一升级数据。
131.本实施例中,诊断发起装置10在接收到第一消息的响应消息之后,便可进行升级数据的传输,因此向控制单元30发送第三消息,在第三消息中携带第一升级数据。其中,第一升级数据可参照前述实施例,不再赘述。
132.s708、控制单元30响应于第三消息,向计算单元20发送第四消息,第四消息中携带有第一升级数据。
133.本实施例中,控制单元30接收到第三消息后,可从第三消息中获取第一升级文件,基于核间通信的方式,生成携带第一升级数据的第四消息,并将第四消息通过核间通信的方式,发送给计算单元。
134.s709、计算单元20接收到第四消息后,向控制单元30返回第四消息的响应消息,第四消息的响应消息用于向控制单元30指示第一升级数据传输完成。
135.s710、控制单元30响应于计算单元20返回的第四消息的响应消息,向诊断发起装置10发送第三消息的响应消息,第三消息的响应消息用于向诊断发起装置10指示第一升级数据传输完成。
136.本实施例中,计算单元20在接收到第四消息后,可从第四消息中获取第一升级数据,并对第一升级数据进行存储。同时,计算单元20可向控制单元30返回第四消息的响应消息,以向控制单元30指示计算单元20已接收到第一升级数据。控制单元30响应于第四消息的响应消息,向诊断发起装置10返回第三消息的响应消息,以向诊断发起装置10指示诊断发起装置10与域控制器之间已完成第一升级数据的传输,即第一升级数据传输成功。
137.在一些实施例中,如图7所示,在s710之后,车辆诊断通信方法还包括:s711、诊断发起装置10向控制单元30发送数据校验消息,以请求域控制器对接收到的第一升级数据进行校验;s712、控制单元30响应于来自诊断发起装置10的数据校验消息,向计算单元20发送数据校验消息,以请求计算单元20对第一升级数据进行校验;s713、计算单元20响应于控制单元30发送的数据校验消息,向控制单元30返回数据校验响应,以向控制单元30指示数据校验结果;s714、控制单元20响应于计算单元的数据校验响应,向诊断发起装置10发送数据校验响应,以向诊断发起装置10指示数据校验结果。从而,在完成升级数据的传输后对升级数据进行校验,提高升级数据的准确性和可靠性,提高通过诊断通信进行域控制器升级的成功率。
138.其中,数据校验结果可为数据校验成功或失败。
139.其中,控制单元30向诊断发起装置10返回的诊断响应、第一消息的响应消息、第三
消息的响应消息、数据校验响应均属于诊断请求的响应消息。
140.在本技术实施例中,在域控制器处于诊断状态且诊断请求指示域控制器进行升级的情况下,以域控制器中的控制单元30为路由,通过核间通信,将诊断发起装置10发送的指示数据传输开始的消息、携带升级数据的消息、指示数据校验的消息转发至计算单元20,通过核间通信接收计算单元20返回的指示数据传输要求的消息、数据传输完成的消息、指示数据校验结果的消息,将这些消息转发给诊断发起装置10。如此,充分发挥了控制单元30和计算单元20的优势,并利用核间通信,提高了通信效率,减少了通信资源占用。
141.在一些实施例中,控制单元在确定诊断请求指示域控制器进行升级且域控制器处于升级状态的情况下,计算单元可通过核间通信,向计算单元发送第二升级数据,控制单元根据第二升级数据进行升级。
142.其中,第二升级数据为用于控制单元升级的升级数据。
143.本实施例中,计算单元可在第一升级数据中包含用于控制单元升级的第二升级数据的情况下,将第二升级数据通过核间通信的方式,发送给控制单元,控制单元接收到第二升级数据后,可根据第二升级数据对控制单元中的固件或者软件进行升级。在第一升级数据还包括用于计算单元升级的第三升级数据的情况下,计算单元可根据第三升级数据,对计算单元中的固件或者软件进行升级。如此,实现域控制器的升级。
144.在一种可能的实现方式中,计算单元还可以通过空中下载技术(over-the-air technology,ota)获得用于域控制器升级的升级数据。在该升级数据包含第二升级数据的情况下,计算单元可将第二升级数据通过核间通信发送给控制单元。从而,提高了升级数据获取的灵活性。
145.在一种可能的实现方式中,域控制器在满足升级触发条件的情况下,进入升级状态。其中,升级触发条件可包括如下至少一种:来自诊断发起装置的第一升级数据传输完成;和/或,控制单元接收到诊断发起装置的第五消息,第五消息指示控制单元进入升级状态;控制单元接收到计算单元的第六消息,第六消息指示控制单元进入升级状态。
146.本实现方式中,域控制器可在第一升级数据传输完成的情况下,进入升级状态,以在升级数据传输完成后及时进行升级;和/或,控制单元可在接收到诊断发起装置指示控制单元进入升级状态的第五消息的情况下,控制域控制器进入升级状态,使得诊断发起装置可主动触发域控制器进入升级状态;和/或,控制单元可在接收到计算单元指示控制单元进入升级状态的第六消息的情况下,控制域控制器进入升级状态,使得计算单元也可以主动触发域控制器进入升级状态。
147.一示例中,第五消息可为重启消息或者复位消息。其中,重启消息指示域控制器重启,复位消息指示域控制器进行复位。控制单元接收到第五消息后可控制域控制器重启或者复位。诊断发起装置可在第一升级数据传输完成后,向控制单元发送第五消息,使得域控制器及时进行升级。
148.一示例中,计算单元可通过ota接收到用于域控制器升级的升级数据后,向控制单元发送第六消息,以使得域控制器接收到升级数据后及时进行升级,提高通过诊断通信进行域控制器升级的升级效率。
149.在一些实施例,图8示出了在诊断对象为域控制器、域控制器处于诊断状态且诊断通信用于指示域控制器进行升级的情况下诊断通信的流程示意图。如图8所示,诊断通信过
程可包括:
150.s801、控制单元30接收诊断发起装置10发送的第五消息。
151.s802、控制单元30响应于第五消息,向诊断发起装置10返回第五消息的响应消息,第五消息的响应消息用于指示控制单元30已接收到第五消息。
152.其中,第五消息可参照前述实施例,不再赘述。
153.s803、控制单元30响应于第五消息,向计算单元20发送第七消息,第七消息用于指示计算单元20准备进入升级状态。
154.s804、计算单元20响应于第七消息,向控制单元30返回第七消息的响应消息,第七消息的响应消息用于指示计算单元20已接收到第七消息。
155.本实施例中,控制单元30接收到第七消息后,控制单元30和计算单元20均进入升级状态,即域控制器进入升级状态。
156.s805、计算单元20向控制单元30发送的第八消息,第八消息用于向控制单元30指示数据传输开始。
157.本实施例中,在进入升级状态后,由于升级数据存储在计算单元20中,所以计算单元20可在存储的升级数据包含用于控制单元30升级的第二升级数据的情况下,通过核间通信,向控制单元30发送第八消息,以告知控制单元30数据传输开始,即准备进行升级数据的传输。
158.其中,第八消息还可用于请求控制单元30的数据传输要求,以便计算单元20按照该数据传输要求向控制单元30发送升级数据,该数据传输要求可参照前述实施例,不再赘述。
159.s806、控制单元30响应于第八消息,向计算单元20返回第八消息的响应消息,以将控制单元30的数据传输要求告知计算单元20。
160.本实施例中,控制单元30接收到第八消息后,可通过核间通信,向计算单元20返回第八消息的响应消息。在第八消息的响应消息中,携带有控制单元30的数据传输要求。
161.s807、计算单元20响应于第八消息的响应消息,向控制单元30发送第九消息,第九消息中携带有第二升级数据。
162.本实施例中,计算单元20在接收到第八消息的响应消息后,可从存储的升级数据中(比如第一升级数据)获取第二升级数据,生成携带第二升级数据的第九消息,并通过核间通信将第九消息发送给控制单元30。
163.s808、控制单元30响应于第九消息,向计算单元20发送第九消息的响应消息,以告知计算单元20第二升级数据传输完成。
164.s809,控制单元30和计算单元20分别进行升级。
165.本实施例中,控制单元30在接收到第二升级数据后,可按照第二升级数据进行升级,计算单元20可按照用于计算单元20升级的第三升级数据进行升级。如此,完成域控制器的升级。
166.在一种可能的实现方式中,计算单元20在接收到第九消息的响应消息后,可响应于第九消息的响应消息,向控制单元30发送数据校验消息;控制单元30响应于数据校验消息,对接收到的第二升级数据进行校验,并根据校验结果,向计算单元20发送数据校验响应。从而,通过数据校验,提高升级状态下计算单元20与控制单元30进行升级数据传输的准
确性和可靠性。
167.在一种可能的实现方式中,控制单元30进行升级之后,控制单元可30向计算单元20发送升级状态查询消息,以查询计算单元20是否完成升级,计算单元20可根据自身的升级情况,向控制单元30返回升级状态回应消息,以通过升级状态回应消息向控制单元30告知计算单元20是否完成升级。
168.在一种可能的实现方式中,控制单元30在接收到计算单元20的升级状态回应消息后,若根据升级状态回应消息确定计算单元20升级完成,则可向计算单元20发送关机命令,以指示计算单元20关机;计算单元20在接收到关机命令后,若确定当前允许关机,则向控制单元30返回关机响应。从而,在升级完成后,控制单元30和计算单元20自动关机,以确保升级后的控制单元30和计算单元20在重启后便可以按照升级后的固件和/或软件进行运行。
169.基于前述实施例,在控制单元与计算单元进行核间通信的过程中,在一些实施例中,通信消息所采用的数据结构包括命令数据结构和诊断数据结构。其中,命令数据结构包括如下至少一个字段:命令字段、响应字段、错误反馈字段、命令数据长度字段、命令数据地址字段;诊断数据结构包括如下至少一个字段:目标节点字段、诊断数据长度字段、诊断数据地址字段。控制单元与计算单元之间进行命令传输的情况下,可采用命令数据结构;控制单元与计算单元之间进行数据(尤其是升级数据)传输的情况下,可采用诊断数据结构,以提高核间通信中的数据传输效率。
170.本实施例中,在命令数据结构中:1)命令字段中携带命令类型值,命令类型值反映命令消息对应的执行操作,比如,在控制单元向计算单元发送的命令消息中,命令字段携带的命令类型值为1时,表示控制单元指示计算单元启动,命令字段携带的命令类型值为2时,表示控制单元指示计算单元复位;2)响应字段中携带响应类型值,响应类型值反映响应消息所传递的响应内容,比如,在计算单元向控制单元发送的响应消息中,响应字段携带的响应类型值为1时,表示计算单元正在执行命令消息所指示的执行操作,命令字段携带的命令类型值为2时,表示计算单元已完成命令消息所指示的执行操作;3)错误码字段中携带错误类型值,错误类型值反馈控制单元或计算单元在执行命令消息中的执行操作时所出现的错误;4)命令数据长度字段中携带数据地址的数据长度,该数据地址是指命令消息或响应消息中相关数据的存储地址;5)命令数据地址字段中携带命令消息或响应消息中相关数据的存储地址。从而,基于命令数据结构,控制单元和计算单元可清晰且准确地进行核间通信。
171.本实施例中,在诊断数据结构中:1)目标节点字段中携带目标节点的标识,目标节点是指消息所传达的对象,比如,控制单元将消息发送给计算单元,则计算单元为目标节点;2)诊断数据长度字段中携带诊断数据所在的存储地址的数据长度;3)诊断数据地址字段中携带诊断数据所在的存储地址。从而,在核间通信中,基于诊断数据结构,控制单元和计算单元可在共享内存中存储数据,也能够准确知道对方将数据存放在共享内存的何处,提高了核间通信的准确性。
172.下面结合图9给出诊断对象为can ecu的实施例:
173.图9示出了本技术实施例提供的车辆诊断通信方法的流程示意图四。如图9所示,车辆诊断通信方法包括:
174.s901、域控制器中的控制单元30接收诊断发起装置10发送的诊断请求。
175.其中,s901的实现原理和技术效果可参照前述实施例,不再赘述。
176.s902、控制单元30响应于诊断请求,基于诊断请求中的请求内容确定诊断对象为can ecu 60。
177.本实施例中,控制单元30可从诊断请求中获取请求内容,比如,请求内容为请求获取某个传感器的传感数据、请求获取某个元器件的故障信息;之后,控制单元30可基于请求内容中的目标地址,确定诊断对象。在请求内容中的目标地址指向通过can与控制单元30连接的can ecu 60的情况下,控制单元30可确定诊断对象为can ecu 60。
178.s903、控制单元30向can ecu 60发送诊断请求。
179.本实施例中,控制单元30在确定诊断对象为can ecu 60的情况下,可通过位于控制单元30内的诊断路由模块,将诊断请求转发给can ecu 60。
180.具体的,控制单元30可通过诊断路由模块,将诊断请求从以太网报文(如doip报文)转换为控制局域网络上的诊断(diagnostic over controller area network,docan)报文,将转换后的诊断请求发送给can ecu 60。
181.s904、控制单元30根据can ecu 60的诊断情况,向诊断发起装置10返回诊断请求的响应消息。
182.一示例中,控制单元30可在接收到can ecu 60返回的响应消息后,向诊断发起装置10发送诊断请求的响应消息。其中,can ecu 60在接收到诊断请求后,可通过can向控制单元30发送响应消息;控制单元30可通过诊断路由模块,将来自can ecu 60的响应消息从docan报文转为以太网报文,再将转换后的响应消息发送给诊断发起装置10。
183.又一示例中,控制单元30可在未收到can ecu 60返回的响应消息的时长超过预设市场的情况下,向诊断发起装置10发送诊断请求的响应消息,以告知诊断发起装置10再等待一段时间,或者告知诊断发起装置10诊断通信异常。
184.本技术实施例中,在诊断对象为通过can与控制单元30通信的can ecu 60的情况下,控制单元30充当了can ecu 60与诊断发起装置10的路由,将来自诊断发起装置10的诊断请求,转发给can ecu 60,还可以基于can ecu 60的诊断情况,向诊断发起装置10返回诊断请求的响应消息。相较于计算单元充当路由的情况,本技术实施例有效地减少了诊断通信中的消息转发次数,降低了诊断通信的时延,提高了诊断通信的效率。
185.图10示出了本技术实施例提供的域控制器中的控制单元30与计算单元20进行诊断通信的软件架构示意图。如图10所示,在控制单元30与计算单元20中分别设有共享内存,其中,以控制单元30包括共享内存35和计算单元20包括共享内存24为例。
186.如图10所示,在诊断通信过程中,外部诊断仪10可通过交换机50向控制单元30发送诊断请求,控制单元30中的多个协议层31接收到该诊断请求后,由路由模块32确定该诊断请求的诊断对象。若诊断对象为控制单元30所在的域控制器,则可由控制单元30中的单片机33执行诊断操作,否则可由can通信链路34向其他ecu40发送诊断请求。单片机33在执行诊断操作的过程中,可经控制单元30中的路由模块32和共享内存35,与计算单元20中的共享内存35进行通信,实现控制单元30与计算单元20的核间通信。此外,如图10所示,计算单元20中还设有如下结构:运行时环境(run-time environment,rte)25和空中下载技术(over-the-air technology,ota),可通过ota下载升级数据。控制单元30中还设有如下结构:rte36和应用层37,可响应于应用层的需求执行相应操作。
187.图11示出了本技术实施例提供的车辆诊断通信装置的结构示意图一。如图11所
示,在车辆的域控制器中的控制单元一侧,车辆诊断通信装置包括:
188.接收模块1101,用于接收诊断发起装置发送的诊断请求。
189.确定模块1102,用于响应于诊断请求,基于诊断请求中的请求内容确定诊断对象,其中,诊断对象包括诊断请求所要求诊断或者访问的目标元器件。
190.处理模块1103,用于根据诊断对象的诊断情况,向诊断发起装置返回诊断请求的响应消息。
191.在一些实施例中,诊断对象包括域控制器,在根据诊断对象的诊断情况,向诊断发起装置返回诊断请求的响应消息的过程中,处理模块1103具体用于:执行与诊断请求对应的诊断操作;根据诊断操作的执行情况,向诊断发起装置返回诊断请求的响应消息。
192.在一些实施例中,域控制器中还包括位于计算单元与控制单元之间的共享内存,计算单元与控制单元的通信方式包括基于计算单元与控制单元之间的共享内存实现的核间通信。在执行与诊断请求对应的诊断操作的过程中,处理模块1103具体用于:在诊断请求与域控制器中的计算单元相关的情况下,通过与计算单元进行核间通信,执行诊断操作。
193.在一些实施例中,诊断请求与计算单元相关,包括如下至少一种情况:诊断请求用于请求获取计算单元中存储的数据,诊断请求所请求的数据经计算单元运算得到,诊断请求用于请求域控制器进行升级,其中,诊断请求用于请求域控制器进行升级包括用于请求控制单元和/或计算单元升级。
194.在一些实施例中,在诊断请求与域控制器中的计算单元相关的情况下,通过与计算单元进行核间通信,执行诊断操作的过程中,处理模块1103具体用于:确定诊断请求指示域控制器进行升级;确定域控制器处于诊断状态;通过核间通信,将来自诊断发起装置的第一升级数据发送至计算单元,以辅助计算单元进行升级。
195.在一些实施例中,在通过核间通信,将来自诊断发起装置的第一升级数据发送至计算单元,以辅助计算单元进行升级的过程中,处理模块1103具体用于:包括:接收诊断发起装置发送的第一消息,第一消息用于向控制单元指示数据传输开始;响应于第一消息,向计算单元发送第二消息,第二消息用于向计算单元指示数据传输开始;响应于计算单元返回的第二消息的响应消息,向诊断发起装置发送第一消息的响应消息;接收诊断发起装置发送的第三消息,第三消息中携带有第一升级数据;响应于第三消息,向计算单元发送第四消息,第四消息中携带有第一升级数据;响应于计算单元返回的第四消息的响应消息,向诊断发起装置发送第三消息的响应消息,第四消息的响应消息和第三消息的响应消息用于指示第一升级数据传输完成。
196.在一些实施例中,在诊断请求与域控制器中的计算单元相关的情况下,通过与计算单元进行核间通信,执行诊断操作的过程中,处理模块1103具体用于:确定诊断请求指示域控制器进行升级;确定域控制器处于升级状态;通过核间通信,接收计算单元发送的第二升级数据;根据第二升级数据进行升级。
197.在一些实施例中,域控制器在满足升级触发条件的情况下,进入升级状态;升级触发条件包括如下至少一种:第一升级数据传输完成;和/或,接收到诊断发起装置的第五消息,第五消息指示控制单元进入升级状态;和/或,接收到计算单元的第六消息,第六消息指示控制单元进入升级状态。
198.在一些实施例中,在确定域控制器处于升级状态的过程中,处理模块1103具体用
于:接收诊断发起装置发送的第五消息;响应于第五消息,向诊断发起装置返回第五消息的响应消息,第五消息的响应消息指示控制单元升级开始;响应于第五消息,向计算单元发送第七消息,第七消息指示计算单元进入升级状态;接收计算单元返回的第七消息的响应消息,第七消息的响应消息指示计算单元升级开始。
199.在一些实施例中,在通过核间通信,接收计算单元发送的第二升级数据的过程中,处理模块1103具体用于:接收计算单元发送的第八消息,第八消息向控制单元指示数据传输开始;响应于第八消息,向计算单元返回第八消息的响应消息,以将控制单元的数据传输要求告知计算单元;接收计算单元发送的第九消息,第九消息中携带有第二升级数据;响应于第九消息,向计算单元发送第九消息的响应消息,以告知计算单元第二升级数据传输完成。
200.在一些实施例中,在控制单元与计算单元的核间通信中,通信消息所采用的数据结构包括命令数据结构和诊断数据结构;其中,命令数据结构中包括如下至少一个字段:命令字段、响应字段、错误反馈字段、命令数据长度字段、命令数据地址字段;其中,诊断数据结构包括如下至少一个字段:目标节点字段、诊断数据长度字段、诊断数据地址字段。
201.在一些实施例中,诊断对象包括通过控制器局域网络can与控制单元通信的can ecu,在根据诊断对象的诊断情况,向诊断发起装置返回诊断请求的响应消息的过程中,处理模块1103具体用于:向can ecu发送诊断请求;获取can ecu的诊断情况;根据can ecu的诊断情况,向诊断发起装置返回诊断响应。
202.在一些实施例中,诊断发起装置包括如下至少一种:外部设备、车辆中具备联网功能的ecu、域控制器中的计算单元;在诊断发起装置为计算单元的情况下,控制单元接收诊断发起装置发送的诊断请求的过程中,接收模块1101具体用于:通过核间通信接收计算单元发送的诊断请求。
203.本技术实施例提供的车辆诊断通信装置能够上述方法实施例中控制单元实现的各个步骤,为避免重复,这里不再赘述。
204.图12示出了本技术实施例提供的车辆诊断通信装置的结构示意图二,应用于车辆的域控制器中的计算单元,域控制器中的控制单元与计算单元的通信方式为基于控制单元与计算单元之间的共享内存实现的核间通信。如图12所示,在车辆的域控制器中的计算单元一侧,车辆诊断通信装置包括:
205.接收模块1201,用于在域控制器处于诊断状态的情况下,通过核间通信接收控制单元发送的第一升级数据;和/或;
206.发送模块1202,用于在域控制器处于升级状态的情况下,通过核间通信向控制单元发送第二升级数据。
207.本技术实施例提供的车辆诊断通信装置能够上述方法实施例中计算单元实现的各个步骤,为避免重复,在此不再赘述。
208.本技术实施例还提供了一种芯片,芯片包括控制单元和/或计算单元,控制单元用于执行前述任一实施例中控制单元执行的步骤,计算单元用于执行前述任一实施例中计算单元执行的步骤,在此不再赘述。
209.图13示出了本技术实施例提供的电子设备的硬件结构示意图。如图13所示,电子设备包括:
210.处理器1301以及存储有计算机程序指令的存储器1302。
211.具体地,上述处理器1301可以包括中央处理器(cpu),或者特定集成电路(application specific integrated circuit,asic),或者可以被配置成实施本技术实施例的一个或多个集成电路。
212.存储器1302可以包括用于数据或指令的大容量存储器。举例来说而非限制,存储器1302可包括硬盘驱动器(hard disk drive,hdd)、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(universal serial bus,usb)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器1302可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器1302可在综合网关容灾设备的内部或外部。在特定实施例中,存储器1302是非易失性固态存储器。
213.在特定实施例中,存储器1302可包括只读存储器(rom),随机存取存储器(ram),磁盘存储介质设备,光存储介质设备,闪存设备,电气、光学或其他物理/有形的存储器存储设备。因此,通常,存储器包括一个或多个编码有包括计算机可执行指令的软件的有形(非暂态)计算机可读存储介质(例如,存储器设备),并且当该软件被执行(例如,由一个或多个处理器)时,其可操作来执行参考根据本公开的一方面的方法所描述的操作。
214.处理器1301通过读取并执行存储器1302中存储的计算机程序指令,以实现上述实施例中的任意一种车辆诊断通信方法。
215.在一个示例中,电子设备还可包括通信接口1303和总线1304。其中,如图13所示,处理器1301、存储器1302、通信接口1303通过总线1304连接并完成相互间的通信。
216.通信接口1303,主要用于实现本技术实施例中各模块、装置、单元和/或设备之间的通信。
217.总线1304包括硬件、软件或两者,将车辆诊断通信设备的部件彼此耦接在一起。举例来说而非限制,总线可包括加速图形端口(agp)或其他图形总线、增强工业标准架构(eisa)总线、前端总线(fsb)、超传输(ht)互连、工业标准架构(isa)总线、无限带宽互连、低引脚数(lpc)总线、存储器总线、微信道架构(mca)总线、外围组件互连(pci)总线、pci-express(pci-x)总线、串行高级技术附件(sata)总线、视频电子标准协会局部(vlb)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线1304可包括一个或多个总线。尽管本技术实施例描述和示出了特定的总线,但本技术考虑任何合适的总线或互连。
218.该电子设备可以基于传感数据执行本技术实施例中的车辆诊断通信方法,从而实现结合图1~图12描述的车辆诊断通信方法和装置。
219.另外,结合上述实施例中的车辆诊断通信方法,本技术实施例可提供一种计算机存储介质来实现。该计算机存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现上述实施例中的任意一种车辆诊断通信方法。
220.需要明确的是,本技术并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本技术的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本技术的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。
221.以上所述的结构框图中所示的功能块可以实现为硬件、软件、固件或者它们的组合。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(asic)、适当的固件、插件、功能卡等等。当以软件方式实现时,本技术的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、rom、闪存、可擦除rom(erom)、软盘、cd-rom、光盘、硬盘、光纤介质、射频(rf)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。
222.还需要说明的是,本技术中提及的示例性实施例,基于一系列的步骤或者装置描述一些方法或系统。但是,本技术不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。
223.上面参考根据本公开的实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各方面。应当理解,流程图和/或框图中的每个方框以及流程图和/或框图中各方框的组合可以由计算机程序指令实现。这些计算机程序指令可被提供给通用计算机、专用计算机、或其它可编程数据处理装置的处理器,以产生一种机器,使得经由计算机或其它可编程数据处理装置的处理器执行的这些指令使能对流程图和/或框图的一个或多个方框中指定的功能/动作的实现。这种处理器可以是但不限于是通用处理器、专用处理器、特殊应用处理器或者现场可编程逻辑电路。还可理解,框图和/或流程图中的每个方框以及框图和/或流程图中的方框的组合,也可以由执行指定的功能或动作的专用硬件来实现,或可由专用硬件和计算机指令的组合来实现。
224.以上所述,仅为本技术的具体实施方式,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。应理解,本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本技术的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1