一种商用车OBD控制器的制作方法

文档序号:33087753发布日期:2023-01-31 22:24阅读:72来源:国知局
一种商用车obd控制器
技术领域
1.本发明属于汽车技术领域,具体涉及一种商用车obd控制器。


背景技术:

2.受限于整车系统架构,目前商用车的obd系统架构多数是分布式架构,obd数据分布在多个控制器中,如油门踏板接在vcu控制器中,发动机负责燃油相关数据,后处理系统则由后处理控制器处理。
3.现有obd系统架构存在以下缺点:
4.1、obd相关数据分布在多个控制器中,而通用社会obd检测工具只能对单一控制器进行obd数据读取,导致在obd检测时存在部分obd数据无法读取完整的情况。
5.2、无法获取就绪状态,由于部分诊断就绪功能需要特定工况下才能达到诊断条件,完成就绪状态诊断,导致新车上户和用户车在年审时存在因就绪状态问题或obd数据不完全导致无法完成obd检测项目。


技术实现要素:

6.本发明的目的就是为了解决上述背景技术存在的不足,提供一种商用车obd控制器。
7.本发明采用的技术方案是:一种商用车obd控制器,包括
8.obd诊断数据管理模块,用于从整车控制器获取车辆信息及obd数据、接收scr的就绪状态和故障信息,用于当接收到激活信号时根据接收到的obd诊断请求将对应的obd诊断数据响应给诊断工具,所述obd诊断数据为车辆信息、obd数据、scr的就绪状态、故障信息中的任意一种或多种;
9.诊断就绪状态管理模块,用于在车辆上电后获取车辆信息,根据车辆信息判断scr的就绪状态,将判断结果发送至obd诊断数据管理模块;
10.诊断报文路由模块,用于对从obd口接收到的诊断id报文进行解析,当解析结果为请求obd数据时发送激活信号至obd诊断数据管理模块;
11.obd故障管理模块,用于根据故障诊断报文确定故障信息,将故障信息发送至obd诊断数据管理模块。
12.进一步地,当接收到激活信号时,若在设定时间内未通过obd口接收到obd诊断请求,则视为诊断工具离线,退出当前obd诊断数据响应功能,直到再次通过obd口接收到obd诊断请求。
13.进一步地,车辆下电后,obd诊断数据管理模块对当前获取车辆信息、obd数据、接收scr的就绪状态和故障信息进行更新及下电存储。
14.进一步地,所述故障信息包括故障代码、故障等级、整车静态obd数据。
15.进一步地,所述车辆信息包括车辆总行驶里程、发动机总运行时间、整车运行工况和整车故障工况中的任意一种或多种信息。
16.进一步地,根据车辆信息判断scr的就绪状态的过程包括:
17.当车辆总行驶里程小于设定里程且发动机总运行时间小于设定时间时,
18.若未出现整车故障,则将scr的就绪状态置为已就绪状态,同时将scr就绪状态诊断因子置为1;
19.若出现整车故障,则将scr的就绪状态置为未就绪状态,等待故障解除;故障解除后,将scr的就绪状态置为已就绪状态,同时将scr就绪状态诊断因子清空。
20.进一步地,根据车辆信息判断scr的就绪状态的过程包括:当车辆总行驶里程大于等于设定里程或发动机总运行时间大于等于设定时间时,
21.若未出现整车故障,则根据车辆运行工况判断scr的就绪状态;
22.若出现整车故障,则将scr的就绪状态置为未就绪状态,等待故障解除;故障解除后,再根据车辆运行工况判断scr的就绪状态,同时将scr就绪状态诊断因子清空。
23.进一步地,根据车辆运行工况判断scr的就绪状态的过程为:根据车辆运行参数确定是否达到正常诊断就绪状态判断条件,
24.若未达到正常诊断就绪状态判断条件,且当前scr就绪状态诊断因子大于设定因子,则将scr的就绪状态置为已就绪状态,并根据车辆总行驶里程和发动机总运行时间更新scr就绪状态诊断因子;
25.若未达到正常诊断就绪状态判断条件,且当前scr就绪状态诊断因子等于设定因子,则将scr的就绪状态置为未就绪状态,将scr就绪状态诊断因子清空;
26.若未达到正常诊断就绪状态判断条件,且当前scr就绪状态诊断因子不存在,则将scr的就绪状态置为未就绪状态;
27.若达到正常诊断就绪状态判断条件,则将scr的就绪状态置为已就绪状态,将scr就绪状态诊断因子清空。
28.进一步地,车辆行驶过程中,将scr的就绪状态置为未就绪状态后,若某一时刻,确定达到正常诊断就绪状态判断条件,则将scr的就绪状态置为已就绪状态。
29.更进一步地,当同时满足以下条件时,确定达到正常诊断就绪状态判断条件:1)发动机转速处于1200~1500rpm;2)发动机负荷处于75%~100%之间3)后处理进、出口排气温度均高于250℃;4)nox排放浓度小于20ppm;5)持续时间达到20秒。
30.本发明的有益效果为:
31.本发明obd控制器通过设置obd诊断数据管理模块、诊断就绪状态管理模块、诊断报文路由模块和obd故障管理模块配合,能够对整车obd数据、故障进行统一管理、获取完整obd数据,进行整车诊断时避免obd检测设备只与单一控制器进行obd数据交互。
32.本发明obd诊断数据管理模块通过诊断服务从整车获取到车辆信息,有助于保证获取obd数据的完整性,也能对数据进行判断,提高obd数据的有效性。
33.本发明诊断就绪状态管理模块对车辆就绪状态进行判断,避免影响车辆obd检测的结果;诊断报文路由模块能够实现网络隔离,也可以快速有效的检测到obd检测工具的连接,避免obd检测工具直接与eecu、vcu等控制器连接,导致obd数据读取不完整。
具体实施方式
34.下面对本发明的具体实施方式作进一步说明。在此需要说明的是,对于这些实施
方式的说明用于帮助理解本发明,但并不构成对本发明的限定。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以互相结合。
35.本发明提供一种商用车obd控制器,包括
36.obd诊断数据管理模块,实现iso-27145/sae-j1939等相关obd诊断服务功能,用于从整车控制器获取车辆信息及obd数据、接收scr的就绪状态和故障信息,用于当接收到激活信号时根据接收到的obd诊断请求将对应的obd诊断数据响应给诊断工具,所述obd诊断数据为车辆信息、obd数据、scr的就绪状态、故障信息中的任意一种或多种。车辆下电后,obd诊断数据管理模块对当前获取车辆信息、obd数据、接收scr的就绪状态和故障信息进行更新及下电存储。
37.诊断就绪状态管理模块,用于在车辆上电后获取车辆信息,根据车辆信息判断scr的就绪状态,将判断结果发送至obd诊断数据管理模块。所述车辆信息包括车辆总行驶里程、发动机总运行时间、整车运行工况和整车故障工况中的任意一种或多种信息。
38.诊断报文路由模块,用于对从obd口接收到的诊断id报文进行解析,当解析结果为请求obd数据时发送激活信号至obd诊断数据管理模块。
39.obd故障管理模块,用于根据故障诊断报文确定故障信息,将故障信息发送至obd诊断数据管理模块。
40.本发明obd控制器各功能模块的具体运行策略描述如下:
41.obd诊断数据管理模块:
42.整车t15上电后,通过诊断服务从整车获取到车辆信息,包括但不限于:整车vin、cvn、calid等静态信息,车速、转速等动态信息。
43.发动机运行后,主动激活obd诊断数据请求功能,通过iso-27145和sae-j1939数据请求服务,向总线上各节点进行obd数据请求,根据iso-27145和sae-j1939标准,结合实车工况,对各控制器响应的数据进行合理性判断,选取合适的响应数据,并记录obd数据来源(响应的控制器信息)。在获取到所有obd数据信息(包括支持和不支持)后,停止主动请求功能。
44.如通过obd口接收到obd诊断请求,则再次激活obd诊断数据请求功能,分别向对应的控制器周期性的请求obd数据,并实时更新obd数据buffer;然后根据obd诊断请求,将对应的obd诊断数据响应给诊断工具。
45.如在连续10秒内,未通过obd口接收到obd诊断请求,则视为诊断工具离线,此次退出obd诊断数据请求功能,直到再次通过obd口接收到obd诊断请求。
46.整车t15下电后,控制器纪录获取的车辆信息、obd数据信息来源并进行下电存储。
47.诊断就绪状态管理模块:
48.整车t15上电后,通过总线从整车获取到车辆信息,包括车辆行驶里程、发送机总运行时间、发动机/后处理等排放相关系统dm1报文信息。
49.当车辆总行驶里程小于设定里程且发动机总运行时间小于设定时间时,若未出现整车故障,视该车辆为新车下线状态,则将scr的就绪状态置为已就绪状态,同时将scr就绪状态诊断因子置为1;若出现整车故障,则将scr(即与排放相关系统和部件,如doc、dpf、scr等)的就绪状态置为未就绪状态,等待故障解除;故障解除后,将scr的就绪状态置为已就绪状态,同时将scr就绪状态诊断因子清空,即之后判断scr的就绪状态时,scr就绪状态诊断
因子就不存在了,scr就绪状态诊断因子不作为判断条件。
50.当车辆总行驶里程大于等于设定里程或发动机总运行时间大于等于设定时间时,若未出现整车故障(相应obd故障,由对应控制器发出的故障信息确定),则根据车辆运行工况判断scr的就绪状态;若出现整车故障,则将scr的就绪状态置为未就绪状态,等待故障解除;故障解除后,再根据车辆运行工况判断scr的就绪状态,同时将scr就绪状态诊断因子清空。
51.上述方案中,根据车辆运行工况判断scr的就绪状态的过程为:根据车辆运行参数确定是否达到正常诊断就绪状态判断条件,
52.若未达到正常诊断就绪状态判断条件,且当前scr就绪状态诊断因子存在,且当前scr就绪状态诊断因子大于设定因子,则将scr的就绪状态置为已就绪状态,并根据车辆总行驶里程和发动机总运行时间更新scr就绪状态诊断因子;更新scr就绪状态诊断因子的标准为:基于上一次更新scr就绪状态诊断因子的时刻之后,车辆总行驶里程每增加5000km且发动机总运行时间每增加200小时,则对诊断因子进行更新,将诊断因子下调0.1;车辆总行驶里程及发动机总运行时间是累加计算的,即当基于上一次更新scr就绪状态诊断因子之后,若车辆总行驶里程增加达到10000km且发动机总运行时间增加达到400小时,则将诊断因子下调0.2。
53.若未达到正常诊断就绪状态判断条件,且当前scr就绪状态诊断因子存在,且当前scr就绪状态诊断因子等于设定因子,则将scr的就绪状态置为未就绪状态,将scr就绪状态诊断因子清空;
54.若未达到正常诊断就绪状态判断条件,且当前scr就绪状态诊断因子不存在,则将scr的就绪状态置为未就绪状态;
55.若达到正常诊断就绪状态判断条件,则将scr的就绪状态置为已就绪状态,将scr就绪状态诊断因子清空。
56.上述scr就绪状态诊断因子清空后,将不再使用,即下次车辆启动后或运行时,只进行车辆总行驶里程、发动机总运行时间、正常诊断就绪状态判断及整车故障判断,scr就绪状态诊断因子不再作为其中的判断条件。
57.上述方案中,将scr的就绪状态置为未就绪状态后,若某一时刻,确定达到正常诊断就绪状态判断条件,则将scr的就绪状态置为已就绪状态。
58.上述方案中,当同时满足以下条件时,确定达到正常诊断就绪状态判断条件:1)发动机转速处于1200~1500rpm;2)发动机负荷处于75%~100%之间3)后处理进、出口排气温度均高于250℃;4)nox排放浓度小于20ppm;5)持续时间达到20秒。
59.诊断报文路由模块:
60.对在obd口和其他can通道接收到的诊断报文(如xcp/uds及其他诊断协议),实现不同can网段之间的报文路由功能;
61.当从obd口接收到排放相关诊断id报文时,对报文内容进行判断,如报文内容非请求obd数据,则按正常路由规则对该报文进行报文路由;
62.当从obd口接收到排放相关诊断id报文时,对报文内容进行判断,如报文内容为请求obd数据,则停止诊断报文路由功能,激活“obd诊断数据管理”功能,由“obd诊断数据管理”接管相关报文信息响应工作。
63.obd故障管理模块:
64.通过总线接收发动机、后处理等排放相关系统dm1报文,并根据故障代码,确认故障等级,通过指定规则请求仪表点亮mil灯,并对故障信息进行存储和消除等动作;将故障等级、故障信息发给obd诊断数据管理,由obd诊断数据管理发给obd诊断工具。
65.实施例:
66.商用车obd系统由obd控制器(ocu)、整车控制器(vecu)、发动机控制器(ecm)、后处理控制器(acm)、仪表(ic)组成。
67.整车车辆信息获取及obd数据来源获取:
68.步骤一:车辆上t15电后,ocu通过在总线发动obd诊断服务,通过接收到的响应,判断车辆具备vecu、eecu、acm、ic;
69.步骤二:ocu通过obd诊断服务分别向vecu、eecu、acm发送obd诊断数据请求,对各控制器的响应做综合判断,纪录车辆vin、cvn、calid等车辆静态信息;
70.步骤三:结合步骤二的响应数据及整车can通信数据,确定obd数据来源并纪录:油门开度(vecu)、发动机转速(eecu)、发动机扭矩百分比(eecu)、egp进口温度(acm)、nox排放浓度(acm)、车速(ic)、行驶里程(ic)等。
71.步骤四:ocu从obdcan(obd口6,14)接收到诊断仪的obd诊断请求,ocu根据请求内容,将车辆vin、cvn、calid、诊断就绪状态等反馈给诊断仪,并分别实施从vecu、eecu、ic获取油门开度、发动机转速、发动机扭矩百分比、egp进口温度、nox排放浓度、车速、行驶里程等数据,并根据诊断仪的请求响应响应数据。
72.步骤五:检测到诊断仪离线后,停止从vecu、eecu、ic获取油门开度、发动机转速、发动机扭矩百分比、egp进口温度、nox排放浓度、车速、行驶里程等数据,直到再次检测到诊断仪在线。
73.诊断报文路由
74.步骤一:ocu从obdcan接收到id为0x18db33f/0x7df的can报文,确认为obd诊断专用报文,进行入obd诊断模式;
75.步骤二:ocu从obdcan接收到id为0x18da00xx(xx给源地址,不限定具体值)的can报文,对报文内容进行判断,确认报文内容不是obd诊断报文,将该报文路由给eecu,并将eecu的响应报文路由至obdcan。
76.诊断就绪状态管理
77.步骤一:整车上t15电后,ocu根据车辆行驶里程(小于2000km)、发动机总运行时间(小于50小时),且无acm相关现行故障和历史故障,判断该车辆为新车,将scr诊断就绪状态置为已就绪状态,并将scr就绪状态诊断因子置为1.
78.步骤二:ocu在车辆行驶里程和发动机总运行时间达到10000km/200小时、15000km/400小时时,对acm故障信息和车辆运行工作纪录进行判断,确认scr未达到正常诊断就绪的条件,将scr就绪状态诊断因子分别下调0.1、0.2
79.步骤三:当scr就绪状态诊断因子小于等于0.5时,ocu将scr就绪状态置为未就绪状态;
80.步骤四:随着车辆运行,ocu检测到发动机转速处于1200~1500rpm,发动机负荷处于75%~100%之间,且后处理进、出口排气温度均高于250℃,nox排放浓度小于20ppm,且
持续时间达到20秒以上时,判断scr诊断就绪条件满足,将scr诊断就绪状态置为已就绪状态,并清除scr就绪状态诊断因子。
81.为了使本揭示内容的叙述更加详尽与完备,上文针对本发明的实施方式与具体实施例提出了说明性的描述;但这并非实施或运用本发明具体实施例的唯一形式。实施方式中涵盖了多个具体实施例的特征以及用以建构与操作这些具体实施例的方法步骤与其顺序。然而,亦可利用其它具体实施例来达成相同或均等的功能与步骤顺序。
82.上文的描述包括一个或多个实施例的举例。当然,为了描述上述实施例而描述部件或方法的所有可能的结合是不可能的,但是本领域普通技术人员应该认识到,各个实施例可以做进一步的组合和排列。因此,本文中描述的实施例旨在涵盖落入所附权利要求书的保护范围内的所有这样的改变、修改和变型。此外,就说明书或权利要求书中使用的术语“包含”,该词的涵盖方式类似于术语“包括”,就如同“包括,”在权利要求中用作衔接词所解释的那样。此外,使用在权利要求书的说明书中的任何一个术语“或者”是要表示“非排它性的或者”。
83.本发明实施例中所描述的各种说明性的逻辑块,或单元都可以通过通用处理器,数字信号处理器,专用集成电路(asic),现场可编程门阵列或其它可编程逻辑装置,离散门或晶体管逻辑,离散硬件部件,或上述任何组合的设计来实现或操作所描述的功能。通用处理器可以为微处理器,可选地,该通用处理器也可以为任何传统的处理器、控制器、微控制器或状态机。处理器也可以通过计算装置的组合来实现,例如数字信号处理器和微处理器,多个微处理器,一个或多个微处理器联合一个数字信号处理器核,或任何其它类似的配置来实现。
84.以上仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本领域的技术人员在本发明所揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1