CN114815773A - 车辆诊断响应方法、装置、可读存储介质及车辆网关 - Google Patents
车辆诊断响应方法、装置、可读存储介质及车辆网关 Download PDFInfo
- Publication number
- CN114815773A CN114815773A CN202210325212.1A CN202210325212A CN114815773A CN 114815773 A CN114815773 A CN 114815773A CN 202210325212 A CN202210325212 A CN 202210325212A CN 114815773 A CN114815773 A CN 114815773A
- Authority
- CN
- China
- Prior art keywords
- diagnosis
- request message
- diagnostic
- main body
- bus
- 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
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
Landscapes
- Small-Scale Networks (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
Abstract
本发明提供一种车辆诊断响应方法、装置、可读存储介质及车辆网关,应用于车辆的网关当中,方法包括:当获取到CAN网络中的任意CAN总线上所传输的诊断请求报文时,确定出当前传输诊断请求报文的当前诊断主体,诊断主体包括诊断仪诊断及OTA诊断;若当前诊断主体为诊断仪诊断及OTA诊断中的任意一者时,对诊断请求报文进行广播路由至CAN网络中,同时禁止对另一诊断主体所传输的诊断请求报文进行广播路由;若当前诊断主体同时为诊断仪诊断及OTA诊断时,对优先级高的诊断主体所传输的诊断请求报文进行广播路由至CAN网络中,及禁止对优先级低的诊断主体所传输的诊断请求报文进行广播路由。本发明解决了OTA及诊断仪诊断方式同时出现时产生冲突的问题。
Description
技术领域
本发明涉及汽车诊断技术领域,特别涉及一种车辆诊断响应方法、装置、可读存储介质及车辆网关。
背景技术
OTA技术(Over-the-Air Technology,空中下载技术,即通过移动通信的空中接口实现对终端设备进行远程管理的技术)作为当前汽车上炙手可热的技术,越来越多的车型开始支持OTA技术,通过OTA技术可以批量更新车辆中ECU(ElectronicControl Unit,电子控制单元)模块的软件以解决一些已知的问题或提供更丰富的功能。当车辆ECU需要软件更新时,其OTA服务器通过与车辆的TBOX(Telematics BOX,远程控制模块)进行数据通讯使得可将待升级的软件包下发至TBOX中,而TBOX通过CAN(Controller Area Network,控制器局域网络)总线与网关连接,使得网关根据TBOX传输的诊断指令相应的广播至CAN网络,而使待升级的ECU可接收其软件包进行OTA升级。
而汽车诊断技术通常是指通过标准的汽车OBD(On-Board Diagnostic,车载诊断系统)通信协议获取车辆的故障数据、车况数据等,实现汽车故障的快速定位和处理。其售后人员可使用售后诊断仪通过车辆的OBD诊断接口可访问车辆CAN网络中的各个节点,从而可读取各个ECU的软件或硬件信息、运行状态信息,以及对所需ECU的软件进行升级等功能,实现对ECU进行问题诊断或软件升级。由此,OTA和售后诊断仪在各自的应用场景下都必不可少。
但综合OTA和售后诊断仪的使用场景,两种方式可能同时出现,由于其OTA及售后诊断仪对同一ECU进行诊断时所发出来的诊断报文中的诊断ID都是一样的,当两种诊断同时出现时,势必会导致功能执行的异常,例如售后诊断仪执行给ECU烧录软件任务的过程中,如果OTA也同时执行该ECU软件升级任务,则此时会将售后诊断仪的任务进行打断,使得可能导致的结果为售后诊断仪烧录软件失败,同时OTA升级也失败,因此两种诊断方式同时出现会产生运行的冲突。
发明内容
基于此,本发明的目的是提供一种车辆诊断响应方法、装置、可读存储介质及车辆网关,以从根本上解决OTA及诊断仪诊断方式同时出现时产生冲突的问题。
根据本发明实施例的一种车辆诊断响应方法,应用于车辆的一网关当中,所述方法包括:
当获取到CAN网络中的任意CAN总线上所传输的诊断请求报文时,确定出当前传输所述诊断请求报文的当前诊断主体,其中诊断主体包括诊断仪诊断及OTA诊断;
若所述当前诊断主体为诊断仪诊断及OTA诊断中的任意一者时,则对所述诊断请求报文进行广播路由至CAN网络中的各路CAN总线上,同时禁止对另一诊断主体所传输的诊断请求报文进行广播路由;
若所述当前诊断主体同时为诊断仪诊断及OTA诊断时,则对优先级高的诊断主体所传输的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上,以及禁止对优先级低的诊断主体所传输的诊断请求报文进行广播路由。
另外,根据本发明上述实施例的一种车辆诊断响应方法,还可以具有如下附加的技术特征:
进一步地,所述对所述诊断请求报文进行广播路由至CAN网络中的各路CAN总线上的步骤包括:
对所述当前诊断主体所传输的诊断请求报文中增加相对应的状态位;
将增加状态位的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上。
进一步地,若所述当前诊断主体为诊断仪诊断时,则所述对所述诊断请求报文进行广播路由至CAN网络中的各路CAN总线上的步骤包括:
对所述诊断仪诊断所传输的诊断请求报文中增加诊断仪在线状态位;
将增加有诊断仪在线状态位的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上,以使ECAN总线中的组合仪表模块根据接收到的诊断请求报文相应的提示车辆处于诊断状态中,以及ECAN总线中的TBOX模块根据接收到的诊断请求报文相应的将所解析出的诊断仪在线状态反馈至OTA服务器而实现禁止OTA升级任务的下发。
进一步地,若所述当前诊断主体为OTA诊断时,则所述对所述诊断请求报文进行广播路由至CAN网络中的各路CAN总线上的步骤包括:
对所述OTA诊断所传输的诊断请求报文中增加OTA升级状态位;
将增加有OTA升级状态位的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上,以使ECAN总线中的组合仪表模块根据接收到的诊断请求报文相应的提示车辆处于OTA升级状态中,以及诊断仪在通过OBD接口接收到DCAN总线所传输的诊断请求报文时相应的提示车辆处于OTA升级状态中,无法支持诊断。
进一步地,所述诊断仪诊断的优先级高于所述OTA诊断的优先级;
所述对优先级高的诊断主体所传输的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上的步骤包括:
对所述诊断仪诊断所传输的诊断请求报文中增加诊断仪在线状态位;
将增加有诊断仪在线状态位的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上,以使ECAN总线中的组合仪表模块根据接收到的诊断请求报文相应的提示车辆处于诊断状态中,以及ECAN总线中的TBOX模块根据接收到的诊断请求报文相应的将所解析出的诊断仪在线状态反馈至OTA服务器而实现禁止OTA升级任务的下发。
进一步地,所述禁止对另一诊断主体所传输的诊断请求报文进行广播路由的步骤包括:
判断在对所述当前诊断主体的诊断过程中是否获取到另一诊断主体在所对应的CAN总线上传输的诊断请求报文;
若是,则禁止对另一诊断主体所传输的诊断请求报文进行广播路由。
进一步地,所述方法还包括:
在对所述当前诊断主体诊断完成后,恢复对所禁止的诊断主体所传输的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上。
根据本发明实施例的一种车辆诊断响应装置,应用于车辆的一网关当中,所述装置包括:
诊断主体确定模块,用于当获取到CAN网络中的任意CAN总线上所传输的诊断请求报文时,确定出当前传输所述诊断请求报文的当前诊断主体,其中诊断主体包括诊断仪诊断及OTA诊断;
第一广播模块,用于若所述当前诊断主体为诊断仪诊断及OTA诊断中的任意一者时,则对所述诊断请求报文进行广播路由至CAN网络中的各路CAN总线上,同时禁止对另一诊断主体所传输的诊断请求报文进行广播路由;
第二广播模块,用于若所述当前诊断主体同时为诊断仪诊断及OTA诊断时,则对优先级高的诊断主体所传输的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上,以及禁止对优先级低的诊断主体所传输的诊断请求报文进行广播路由。
本发明还提出一种可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述的车辆诊断响应方法。
本发明还提出一种车辆网关,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述的车辆诊断响应方法。
与现有技术相比:通过获取到CAN网络中的任意CAN总线上所传输的诊断请求报文时确定当前诊断主体,并根据当前诊断主体相应的将所当前诊断主体当前传输的或优先级高的诊断主体所当前传输的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上,同时禁止对另一诊断主体所传输的诊断请求报文进行广播路由,因此网关即使在接收到另一诊断主体所传输的诊断请求报文,也不进行广播路由,不分发到其他各路CAN总线上去,使得禁止对另一诊断主体的报文转发,因此车辆当前只能执行当前诊断主体的诊断任务,而不会与另一诊断主体的诊断任务相冲突,使得从根本上解决OTA及诊断仪诊断方式同时出现时产生冲突的问题。
附图说明
图1为本发明实施例提供的车辆的结构示意图;
图2为本发明第一实施例中的车辆诊断响应方法的流程图;
图3为本发明第二实施例中的车辆诊断响应装置的结构示意图;
图4为本发明第三实施例中的车辆网关的结构示意图。
以下具体实施方式将结合上述附图进一步说明本发明。
具体实施方式
为了便于理解本发明,下面将参照相关附图对本发明进行更全面的描述。附图中给出了本发明的若干实施例。但是,本发明可以以许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使对本发明的公开内容更加透彻全面。
需要说明的是,当元件被称为“固设于”另一个元件,它可以直接在另一个元件上或者也可以存在居中的元件。当一个元件被认为是“连接”另一个元件,它可以是直接连接到另一个元件或者可能同时存在居中元件。本文所使用的术语“垂直的”、“水平的”、“左”、“右”以及类似的表述只是为了说明的目的。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。本文所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。
以下各个实施例均可应用于图1示出的车辆当中,图1示出的车辆包括智能中央网关(Centralgateway,简称CGW)与智能中央网关通过CAN网络连接的各个ECU模块(Electronic Control Unit,电子控制单元),其中CAN网络通常可分成5路CAN总线,即分别为PCAN总线(PowerTrain CAN,动力总成CAN总线)、CCAN总线(Chassis CAN,底盘控制CAN总线)、BCAN(Body CAN,车身控制CAN总线)、ECAN总线(Entertainment CAN,娱乐系统CAN总线)、及DCAN总线(Diagnose CAN,诊断控制CAN总线),其中每路CAN总线一般都是由2根线组成的双绞线构成,其中一根can_high,另一根can_low,分别代表高电平和低电平。
具体的,PCAN总线上一般设有ECM(Engine Control Module,发动机控制模块),SRS(SupplementalRestraintSystem,辅助乘员保护系统),BMS(Battery ManagementSystem,电池管理系统)等ECU模块,其中PCAN总线负责车辆动力,是整车CAN网络中信号优先级及信号传输速率最高的一条CAN总线。
而CCAN总线上一般设有ABS(Antilock Brake System,防抱死制动系统),ESP(Electronic Stability Program,车身电子稳定系统),及EPS(Electric PowerSteering,电子转向助力系统)等ECU模块,其中CCAN总线负责汽车底盘及4个轮子的制动、稳定、以及转向,由于涉及整车制动、助力及转向等,因此其网络信号优先级也是较高的。
而BCAN总线上一般设有AC(Air Condition,空调),AVM(Around View Monitor,全景式监控影像系统),BCM(Body Control Module,车身控制模块,具体控制如天窗,车窗,雾灯,转向灯,雨刮等),IMMO(Immobilizer,发动机防盗锁止系统),及TPMS(Tire PressureMonitoring System,胎压监控系统)等ECU模块。其中BCAN总线负责车身上的一些提高舒适性/安全性的智能硬件的管理与控制,其网络信号优先级较低。
而ECAN总线上一般设有VAES(Video Audio Entertainment System,车载娱乐系统),IPK(Instrument Pack,组合仪表模块)、TBOX(Telematics BOX,远程控制模块)等ECU模块,其中ECAN总线主要负责车身上的一些提高娱乐性的智能硬件的管理与控制,其是辅助可选设备,所以优先级也是较低的。其中TBOX模块是车辆上带通讯功能的一个盒子,因此其TBOX模块可以提供外网连接功能,提供GPS定位服务,以及实现整车CAN网络的远程诊断(如获取车辆状态、远程读取故障码、ECU软件升级等)或远程控制功能(控制车辆某些智能硬件的工作,如空调、座椅加热等)。
而DCAN总线上一般设有OBD(On-Board Diagnostic,车载诊断系统)诊断接口,其中诊断仪通过OBD诊断接口连接至该DCAN总线上。
进一步的,智能中央网关大概有六七十个接线pin脚,其每个接线pin脚都有严格的定义,除了10个CAN总线接线口(5条双绞线),2个电源线接线口外,其还包括定速巡航设备的8个接线口,电源管理方面的3个接线口,钥匙开关(或无钥匙启动系统)的5个接口,脚踏板的3个接线口,5个LIN接线pin脚,档位开关的4个接线pin脚等等。
更进一步的,智能中央网关是整个CAN网络的核心,其控制着整车5条CAN总线的各类信号转发与处理,使得智能中央网关可以接收任何CAN总线(还有LIN总线)传来的不同传输速率网络信号,同时在把这些信号按一定的标准处理后,广播到整车CAN网络中,此时如果有ECU订阅(接收)了这个信号,则ECU将解析信号并做相应的响应处理。由于CAN总线是广播类型的总线,其意味着所有节点都可以侦听到所有传输的报文而无法将报文单独发送给指定节点,而所有节点都将始终捕获所有报文。但是智能中央网关能够提供本地过滤功能,让每个节点对报文有选择性地做出响应。
具体例如发动机的转速信号处理,其先从PCAN总线的ECM节点发出,智能中央网关收到并进行处理后广播ECM信号到各路CAN总线上去。此时ECAN总线上的IPK节点订阅(接收)了发动机转速信号,因此ECAN总线上的IPK节点会将这个转速信号进行解析,并显示到仪表盘去。
又或者例如安全带的报警信号处理,具体的安全带未扣紧需要两个条件:1、车速大于5km/h;2、安全带扣未扣(即无电压信号)。其中车速一般是PCAN总线上的ECM节点负责信号管理;而安全带扣是BCAN总线上的BCM节点负责信号管理。因此在智能中央网关收到PCAN总线上的ECM节点发出来的车速信号,并收到了BCAN总线上的BCM节点发出来的安全带扣电压值为异常值(比如0)时,智能中央网关统一处理后转发并广播车速信号及安全带扣未扣信号,ECAN总线上的IPK节点订阅(接收)了相关的车速信号及安全带未扣信号,因此ECAN总线上的IPK节点会将这个车速信号及安全带未扣信号进行解析报警并显示到仪表盘去。如果安全带扣一直未扣紧,则智能中央网关将一直发送相关安全带未扣信号,使得车主会听到一直报警。直到安全带扣上,智能中央网关继续发送安全带扣相关的信号,只是这个时候的信号值是安全带已扣紧,报警将立马消失。
因此,其智能中央网关的作用主要就是路由以及网络管理,其路由具体可以分为报文路由和信号路由。其中报文路由为智能中央网关对接收到的报文不做任何处理直接转发广播到CAN网络上,使之具有转发报文的功能,并对总线报文状态进行诊断。而信号路由为智能中央网关需要将报文中的信号解析提取需要转发的信号,然后将需要转发的信号重新打包再次广播发送到CAN网络上,使之实现信号在不同报文间的映射。而网络管理对网络状态进行监测与统计,并进行错误处理、休眠唤醒等诊断请求包括目的逻辑地址。
需要指出的是,图1示出的结构并不构成对车辆的限定,在其它实施例当中,该车辆可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
实施例一
请参阅图2,所示为本发明第一实施例中的车辆诊断响应方法,应用于车辆的一网关当中,该网关具体可以为上述的智能中央网关,所述方法具体包括步骤S01-步骤S03。
步骤S01,当获取到CAN网络中的任意CAN总线上所传输的诊断请求报文时,确定出当前传输诊断请求报文的当前诊断主体,其中诊断主体包括诊断仪诊断及OTA诊断。
其中,在本发明的一个实施例中,参照前述所述,其CAN网络分为5路CAN总线,其每路CAN总线所传输的报文均需通过网关进行广播至其他路CAN总线上,此时其网关实时监控CAN网络中的各路CAN总线的报文,同时相应的根据各路CAN总线所传输的报文确定出具体发布报文的模块,也即是网关根据传输诊断请求报文的具体CAN总线确定出当前诊断主体。
具体例如,其诊断仪通过OBD诊断接口连接至DCAN总线上时,其诊断仪可通过发送诊断请求报文以实现对车辆的诊断,此时网关根据DCAN总线上所传输的诊断请求报文可相应的确定出所发布诊断请求报文的主体模块为诊断仪。同时诊断仪在DCAN总线传输的诊断请求报文中携带有指向具体ECU的报文ID,例如其诊断仪需要诊断发动机转速时,其所发送的诊断请求报文中携带有指向ECM节点的报文ID,此时网关将该诊断请求报文广播至其他各路CAN总线上时,只有PCAN总线的ECM节点可根据该报文ID解析其诊断请求报文,并根据诊断请求报文相应的反馈诊断响应报文,其网关相应的将所接收的诊断响应报文广播至各路CAN总线上,使得诊断仪接收到诊断响应报文后可相应的解析出发动机转速信息,从而实现了对发动机转速的诊断。相应的,其诊断仪可通过车辆的OBD诊断接口访问车辆CAN网络中的各个节点,从而可读取各个ECU的软件或硬件信息、运行状态信息,以及对所需ECU的软件进行升级等功能。需要指出的是,当其诊断仪连接OBD诊断接口时,其网关才会将所接收的报文广播路由至DCAN总线上;否则在诊断仪未连接OBD诊断接口时,其网关只会将所接收的报文广播路由至其他路CAN总线上,而不会转发至DCAN总线上。
相应的,当前OTA服务器需要对车辆中ECU进行软件升级时,其通过升级任务将软件升级包下发至TBOX模块,TBOX模块相应发送诊断请求报文以实现目标ECU的软件升级,此时网关根据ECAN总线上所传输的诊断请求报文可相应的确定出所发布报文的主体模块为TBOX模块。
当然,在本发明实施例中,其诊断主体还可以为其他主体,但本发明所针对解决OTA及诊断仪相关冲突的问题,因此本发明实施例仅针对网关在诊断仪诊断或OTA诊断时所传输的诊断请求报文的处理,其网关在对其他主体所传输的报文的处理参照现有技术,在此不做限定。
步骤S02,若当前诊断主体为诊断仪诊断及OTA诊断中的任意一者时,则对诊断请求报文进行广播路由至CAN网络中的各路CAN总线上,同时禁止对另一诊断主体所传输的诊断请求报文进行广播路由。
其中,在本发明的一个实施例中,当网关获取到CAN网络中的任意CAN总线上所传输的诊断请求报文并确定出当前传输诊断请求报文的当前诊断主体为诊断仪诊断及OTA诊断中的任意一者时,此时网关将所当前传输的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上,同时禁止对另一诊断主体所传输的诊断请求报文进行广播路由,因此网关即使在接收到另一诊断主体所传输的诊断请求报文后,也不进行广播路由,不分发到其他各路CAN总线上去,使得禁止对另一诊断主体的报文转发,因此车辆当前只能执行当前诊断主体的诊断任务,而不会与另一诊断主体的诊断任务相冲突。
进一步的,在本发明的优选实施例中,上述对诊断请求报文进行广播路由至CAN网络中的各路CAN总线上的步骤包括:
对当前诊断主体所传输的诊断请求报文中增加相对应的状态位;
将增加有状态位的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上。
具体的,若当前诊断主体为诊断仪诊断时,则对所述诊断请求报文进行广播路由至CAN网络中的各路CAN总线上的步骤包括:
对诊断仪诊断所传输的诊断请求报文中增加诊断仪在线状态位;
将增加有诊断仪在线状态位的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上,以使ECAN总线中的组合仪表模块根据接收到的诊断请求报文相应的提示车辆处于诊断状态中,以及ECAN总线中的TBOX模块根据接收到的诊断请求报文相应的将所解析出的诊断仪在线状态反馈至OTA服务器而实现禁止OTA升级任务的下发。
进一步的,当诊断仪正在进行诊断时,此时如增加OTA升级,可能导致售后诊断失败;因此在网关所转发的诊断请求报文中增加诊断仪在线状态位,此时ECAN总线中的TBOX模块收到该状态位时,将该状态反馈至OTA服务器,OTA服务器在收到该状态位时,禁止OTA升级任务下发;同时组合仪表模块上提示车辆处于诊断中。进一步的,即使当前OTA服务器下发软件升级包至TBOX模块,使得TBOX模块在ECAN总线上传输诊断请求报文时,其网关接收到该TBOX模块所发送的诊断请求报文后,也不再转发广播诊断请求报文至其他CAN总线上,使得其他CAN总线上的ECU接收不到TBOX模块所发送的诊断请求报文,因而也无法进行相应的响应,从而禁止了当前诊断仪进行诊断时的OTA升级任务。
相应的,若当前诊断主体为OTA诊断时,则对所述诊断请求报文进行广播路由至CAN网络中的各路CAN总线上的步骤包括:
对OTA诊断所传输的诊断请求报文中增加OTA升级状态位;
将增加有OTA升级状态位的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上,以使ECAN总线中的组合仪表模块根据接收到的诊断请求报文相应的提示车辆处于OTA升级状态中,以及诊断仪在通过OBD接口接收到DCAN总线所传输的诊断请求报文时相应的提示车辆处于OTA升级状态中,无法支持诊断。
进一步的,当OTA正在进行诊断时,此时如增加诊断仪诊断,可能导致OTA升级中断;因此在网关所转发的诊断请求报文中增加OTA升级状态位,此时ECAN总线中的组合仪表模块收到该状态位时,提示车辆处于OTA升级状态中。同时当用户将诊断仪接入OBD诊断接口时,其诊断仪在收到该状态位时,相应的提示车辆处于OTA升级状态中,无法支持诊断,请稍后。进一步的,即使当前诊断仪还需对车辆进行诊断时,其网关接收到该诊断仪所发送的诊断请求报文后,也不再转发广播诊断请求报文至其他CAN总线上,使得其他CAN总线上的ECU接收不到诊断仪所发送的诊断请求报文,因而也无法进行相应的响应,从而禁止了当前进行OTA诊断时的诊断仪诊断任务。
其中,在本发明的一个实施例中,上述禁止对另一诊断主体所传输的诊断请求报文进行广播路由的步骤包括:
判断在对当前诊断主体的诊断过程中是否获取到另一诊断主体在所对应的CAN总线上传输的诊断请求报文;
若是,则禁止对另一诊断主体所传输的诊断请求报文进行广播路由。
具体的,在对当前诊断主体的诊断过程中,若网关未获取到另一诊断主体在所对应的CAN总线上传输的诊断请求报文时,则直接进行该当前诊断主体的诊断任务,而不会出现两个诊断冲突的问题。若网关获取到另一诊断主体在所对应的CAN总线上传输的诊断请求报文时,则直接禁止对另一诊断主体所传输的诊断请求报文进行广播路由,使得另一诊断主体所传输的诊断请求报文无法传输到所对应待诊断的CAN总线上,从而解决了两个诊断方式同时出现时产生冲突的问题。
步骤S03,若当前诊断主体同时为诊断仪诊断及OTA诊断时,则对优先级高的诊断主体所传输的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上,以及禁止对优先级低的诊断主体所传输的诊断请求报文进行广播路由。
其中,在本发明的一个实施例中,其参照上述所述,当网关获取到诊断仪诊断及OTA诊断同时传输的诊断请求响应时,则优选响应优先级高的诊断主体,而相应的禁止优先级低的诊断主体,使得可以先对优先级高的诊断主体进行诊断。其中考虑人为执行的可靠性,因此将诊断仪诊断的优先级设置较OTA诊断的优先级高,从而可优先执行诊断仪诊断。
进一步的,在本发明的优选实施例中,上述对优先级高的诊断主体所传输的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上的步骤包括:
对优先级高的诊断主体所传输的诊断请求报文中增加相对应的状态位;
将增加有状态位的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上并进行广播路由至CAN网络中的各路CAN总线上。
具体的,诊断仪诊断的优先级高于OTA诊断的优先级,因此对优先级高的诊断主体所传输的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上的步骤包括:
对诊断仪诊断所传输的诊断请求报文中增加诊断仪在线状态位;
将增加有诊断仪在线状态位的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上,以使ECAN总线中的组合仪表模块根据接收到的诊断请求报文相应的提示车辆处于诊断状态中,以及DCAN总线中的TBOX模块根据接收到的诊断请求报文相应的将所解析出的诊断仪在线状态反馈至OTA服务器而实现禁止OTA升级任务的下发。
进一步的,在本发明的一个实施例中,其步骤S02或步骤S03之后还包括:
在对当前诊断主体诊断完成后,恢复对所禁止的诊断主体所传输的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上。
具体的,在对当前诊断主体诊断完成后,其网关可恢复对所禁止的诊断主体所传输的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上,使得可实现对另一诊断主体的诊断,此时通过网关的功能控制使得可在诊断主体同时出现产生冲突时,禁止其中一诊断主体的诊断而实现避免诊断冲突,同时在一诊断主体诊断完成后,又可对所禁止的诊断主体恢复诊断,实现了先后顺序的诊断。
综上,本发明上述实施例当中的车辆诊断响应方法,通过获取到CAN网络中的任意CAN总线上所传输的诊断请求报文时确定当前诊断主体,并根据当前诊断主体相应的将所当前诊断主体当前传输的或优先级高的诊断主体所当前传输的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上,同时禁止对另一诊断主体所传输的诊断请求报文进行广播路由,因此网关即使在接收到另一诊断主体所传输的诊断请求报文,也不进行广播路由,不分发到其他各路CAN总线上去,使得禁止对另一诊断主体的报文转发,因此车辆当前只能执行当前诊断主体的诊断任务,而不会与另一诊断主体的诊断任务相冲突,使得从根本上解决OTA及诊断仪诊断方式同时出现时产生冲突的问题。
实施例二
请参阅图3,所示为本发明第二实施例中的车辆诊断响应装置,应用于车辆的一网关当中,所述车辆诊断响应装置包括:
诊断主体确定模块11,用于当获取到CAN网络中的任意CAN总线上所传输的诊断请求报文时,确定出当前传输诊断请求报文的当前诊断主体,其中诊断主体包括诊断仪诊断及OTA诊断;
第一广播模块12,用于若当前诊断主体为诊断仪诊断及OTA诊断中的任意一者时,则对诊断请求报文进行广播路由至CAN网络中的各路CAN总线上,同时禁止对另一诊断主体所传输的诊断请求报文进行广播路由;
第二广播模块13,用于若当前诊断主体同时为诊断仪诊断及OTA诊断时,则对优先级高的诊断主体所传输的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上,以及禁止对优先级低的诊断主体所传输的诊断请求报文进行广播路由。
进一步地,在本发明一些可选实施例当中,第一广播模块12用于:
对当前诊断主体所传输的诊断请求报文中增加相对应的状态位;
将增加状态位的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上。
进一步地,在本发明一些可选实施例当中,若所述当前诊断主体为诊断仪诊断时,第一广播模块12用于:
对诊断仪诊断所传输的诊断请求报文中增加诊断仪在线状态位;
将增加有诊断仪在线状态位的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上,以使ECAN总线中的组合仪表模块根据接收到的诊断请求报文相应的提示车辆处于诊断状态中,以及ECAN总线中的TBOX模块根据接收到的诊断请求报文相应的将所解析出的诊断仪在线状态反馈至OTA服务器而实现禁止OTA升级任务的下发。
进一步地,在本发明一些可选实施例当中,若当前诊断主体为OTA诊断时,第一广播模块12用于:
对OTA诊断所传输的诊断请求报文中增加OTA升级状态位;
将增加有OTA升级状态位的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上,以使ECAN总线中的组合仪表模块根据接收到的诊断请求报文相应的提示车辆处于OTA升级状态中,以及诊断仪在通过OBD接口接收到DCAN总线所传输的诊断请求报文时相应的提示车辆处于OTA升级状态中,无法支持诊断。
进一步地,在本发明一些可选实施例当中,诊断仪诊断的优先级高于OTA诊断的优先级;
第二广播模块13还用于:
对诊断仪诊断所传输的诊断请求报文中增加诊断仪在线状态位;
将增加有诊断仪在线状态位的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上,以使ECAN总线中的组合仪表模块根据接收到的诊断请求报文相应的提示车辆处于诊断状态中,以及ECAN总线中的TBOX模块根据接收到的诊断请求报文相应的将所解析出的诊断仪在线状态反馈至OTA服务器而实现禁止OTA升级任务的下发。
进一步地,在本发明一些可选实施例当中,第一广播模块12还用于:
判断在对所述当前诊断主体的诊断过程中是否获取到另一诊断主体在所对应的CAN总线上传输的诊断请求报文;
若是,则禁止对另一诊断主体所传输的诊断请求报文进行广播路由。
进一步地,在本发明一些可选实施例当中,所述装置还包括:
第三广播模块,用于在对当前诊断主体诊断完成后,恢复对所禁止的诊断主体所传输的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上。
上述各模块、单元被执行时所实现的功能或操作步骤与上述方法实施例大体相同,在此不再赘述。
综上,本发明上述实施例当中的车辆诊断响应装置,通过获取到CAN网络中的任意CAN总线上所传输的诊断请求报文时确定当前诊断主体,并根据当前诊断主体相应的将所当前诊断主体当前传输的或优先级高的诊断主体所当前传输的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上,同时禁止对另一诊断主体所传输的诊断请求报文进行广播路由,因此网关即使在接收到另一诊断主体所传输的诊断请求报文,也不进行广播路由,不分发到其他各路CAN总线上去,使得禁止对另一诊断主体的报文转发,因此车辆当前只能执行当前诊断主体的诊断任务,而不会与另一诊断主体的诊断任务相冲突,使得从根本上解决OTA及诊断仪诊断方式同时出现时产生冲突的问题。
实施例三
本发明另一方面还提出一种车辆网关,请参阅图4,所示为本发明第三实施例当中的车辆网关,包括存储器20、处理器10以及存储在存储器上并可在处理器上运行的计算机程序30,所述处理器10执行所述计算机程序30时实现如上述的车辆诊断响应方法。
其中,所述车辆网关具体可以为智能中央网关CGW,处理器10在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储器20中存储的程序代码或处理数据,例如执行访问限制程序等。
其中,存储器20至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器20在一些实施例中可以是车辆网关的内部存储单元,例如该车辆网关的硬盘。存储器20在另一些实施例中也可以是车辆网关的外部存储装置,例如车辆网关上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(FlashCard)等。进一步地,存储器20还可以既包括车辆网关的内部存储单元也包括外部存储装置。存储器20不仅可以用于存储安装于车辆网关的应用软件及各类数据,还可以用于暂时地存储已经输出或者将要输出的数据。
需要指出的是,图4示出的结构并不构成对车辆网关的限定,在其它实施例当中,该车辆网关可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
综上,本发明上述实施例当中的车辆网关,通过获取到CAN网络中的任意CAN总线上所传输的诊断请求报文时确定当前诊断主体,并根据当前诊断主体相应的将所当前诊断主体当前传输的或优先级高的诊断主体所当前传输的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上,同时禁止对另一诊断主体所传输的诊断请求报文进行广播路由,因此网关即使在接收到另一诊断主体所传输的诊断请求报文,也不进行广播路由,不分发到其他各路CAN总线上去,使得禁止对另一诊断主体的报文转发,因此车辆当前只能执行当前诊断主体的诊断任务,而不会与另一诊断主体的诊断任务相冲突,使得从根本上解决OTA及诊断仪诊断方式同时出现时产生冲突的问题。
本发明实施例还提出一种可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述的车辆诊断响应方法。
本领域技术人员可以理解,在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何可读存储介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“可读存储介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。
可读存储介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,可读存储介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或它们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种车辆诊断响应方法,其特征在于,应用于车辆的一网关当中,所述方法包括:
当获取到CAN网络中的任意CAN总线上所传输的诊断请求报文时,确定出当前传输所述诊断请求报文的当前诊断主体,其中诊断主体包括诊断仪诊断及OTA诊断;
若所述当前诊断主体为诊断仪诊断及OTA诊断中的任意一者时,则对所述诊断请求报文进行广播路由至CAN网络中的各路CAN总线上,同时禁止对另一诊断主体所传输的诊断请求报文进行广播路由;
若所述当前诊断主体同时为诊断仪诊断及OTA诊断时,则对优先级高的诊断主体所传输的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上,以及禁止对优先级低的诊断主体所传输的诊断请求报文进行广播路由。
2.根据权利要求1所述的车辆诊断响应方法,其特征在于,所述对所述诊断请求报文进行广播路由至CAN网络中的各路CAN总线上的步骤包括:
对所述当前诊断主体所传输的诊断请求报文中增加相对应的状态位;
将增加状态位的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上。
3.根据权利要求2所述的车辆诊断响应方法,其特征在于,若所述当前诊断主体为诊断仪诊断时,则所述对所述诊断请求报文进行广播路由至CAN网络中的各路CAN总线上的步骤包括:
对所述诊断仪诊断所传输的诊断请求报文中增加诊断仪在线状态位;
将增加有诊断仪在线状态位的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上,以使ECAN总线中的组合仪表模块根据接收到的诊断请求报文相应的提示车辆处于诊断状态中,以及ECAN总线中的TBOX模块根据接收到的诊断请求报文相应的将所解析出的诊断仪在线状态反馈至OTA服务器而实现禁止OTA升级任务的下发。
4.根据权利要求2所述的车辆诊断响应方法,其特征在于,若所述当前诊断主体为OTA诊断时,则所述对所述诊断请求报文进行广播路由至CAN网络中的各路CAN总线上的步骤包括:
对所述OTA诊断所传输的诊断请求报文中增加OTA升级状态位;
将增加有OTA升级状态位的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上,以使ECAN总线中的组合仪表模块根据接收到的诊断请求报文相应的提示车辆处于OTA升级状态中,以及诊断仪在通过OBD接口接收到DCAN总线所传输的诊断请求报文时相应的提示车辆处于OTA升级状态中,无法支持诊断。
5.根据权利要求1所述的车辆诊断响应方法,其特征在于,所述诊断仪诊断的优先级高于所述OTA诊断的优先级;
所述对优先级高的诊断主体所传输的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上的步骤包括:
对所述诊断仪诊断所传输的诊断请求报文中增加诊断仪在线状态位;
将增加有诊断仪在线状态位的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上,以使ECAN总线中的组合仪表模块根据接收到的诊断请求报文相应的提示车辆处于诊断状态中,以及ECAN总线中的TBOX模块根据接收到的诊断请求报文相应的将所解析出的诊断仪在线状态反馈至OTA服务器而实现禁止OTA升级任务的下发。
6.根据权利要求1所述的车辆诊断响应方法,其特征在于,所述禁止对另一诊断主体所传输的诊断请求报文进行广播路由的步骤包括:
判断在对所述当前诊断主体的诊断过程中是否获取到另一诊断主体在所对应的CAN总线上传输的诊断请求报文;
若是,则禁止对另一诊断主体所传输的诊断请求报文进行广播路由。
7.根据权利要求1所述的车辆诊断响应方法,其特征在于,所述方法还包括:
在对所述当前诊断主体诊断完成后,恢复对所禁止的诊断主体所传输的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上。
8.一种车辆诊断响应装置,其特征在于,应用于车辆的一网关当中,所述装置包括:
诊断主体确定模块,用于当获取到CAN网络中的任意CAN总线上所传输的诊断请求报文时,确定出当前传输所述诊断请求报文的当前诊断主体,其中诊断主体包括诊断仪诊断及OTA诊断;
第一广播模块,用于若所述当前诊断主体为诊断仪诊断及OTA诊断中的任意一者时,则对所述诊断请求报文进行广播路由至CAN网络中的各路CAN总线上,同时禁止对另一诊断主体所传输的诊断请求报文进行广播路由;
第二广播模块,用于若所述当前诊断主体同时为诊断仪诊断及OTA诊断时,则对优先级高的诊断主体所传输的诊断请求报文进行广播路由至CAN网络中的各路CAN总线上,以及禁止对优先级低的诊断主体所传输的诊断请求报文进行广播路由。
9.一种可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7任一所述的车辆诊断响应方法。
10.一种车辆网关,其特征在于,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如权利要求1-7任一所述的车辆诊断响应方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210325212.1A CN114815773A (zh) | 2022-03-30 | 2022-03-30 | 车辆诊断响应方法、装置、可读存储介质及车辆网关 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210325212.1A CN114815773A (zh) | 2022-03-30 | 2022-03-30 | 车辆诊断响应方法、装置、可读存储介质及车辆网关 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114815773A true CN114815773A (zh) | 2022-07-29 |
Family
ID=82532170
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210325212.1A Pending CN114815773A (zh) | 2022-03-30 | 2022-03-30 | 车辆诊断响应方法、装置、可读存储介质及车辆网关 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114815773A (zh) |
-
2022
- 2022-03-30 CN CN202210325212.1A patent/CN114815773A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8126606B2 (en) | Automobile detection and control gateway interface and method thereof | |
JP3151831B2 (ja) | 車両情報通信装置及び車両情報通信システム | |
WO2017212772A1 (ja) | 車両用装置 | |
US11475721B2 (en) | Method for performing vehicle remote diagnosis and related devices | |
US7917261B2 (en) | System and methods for controlling vehicular functions | |
US20220126846A1 (en) | In-vehicle communication system, in-vehicle relay apparatus, and in-vehicle control apparatus | |
US20110222433A1 (en) | Automatic address configuration of vehicle network devices during installation | |
JP2004350137A (ja) | 車両用通信システム | |
CN114815773A (zh) | 车辆诊断响应方法、装置、可读存储介质及车辆网关 | |
JPH11175331A (ja) | 車両用lanシステムにおけるromの書換方法及び車載制御装置 | |
KR102110581B1 (ko) | 차량용 제어기 진단 장치 및 방법 | |
CN115119236A (zh) | 车辆数据传输控制方法、存储介质及车辆 | |
US11482060B2 (en) | Method for diagnosing a slave computer communicating with a master computer | |
JP4259468B2 (ja) | 車両用診断システム | |
JP2004020461A (ja) | 車両用故障診断装置 | |
KR101714474B1 (ko) | 차량 전자 장치의 통신방법 및 이를 포함하는 차량 | |
JP2005145262A (ja) | 車載用lanシステム | |
US20230406330A1 (en) | Vehicle diagnostic information communications | |
JP7415364B2 (ja) | 車載中継装置、コンピュータプログラム及び故障判定方法 | |
KR20190067304A (ko) | 차량의 배터리 충전 상태 제어 장치 및 그 방법 | |
CN108259251A (zh) | 一种网关控制器路由配置方法、装置、设备及汽车 | |
CN114103836B (zh) | 多域控制车载系统以及汽车 | |
JP3383462B2 (ja) | 多重伝送システム | |
KR20120014946A (ko) | 차량용 오디오/비디오 장치를 이용한 차량 원격 관리 시스템 및 그 운용방법 | |
KR20240063469A (ko) | 차량 및 진단기 |
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 |