专利名称:总线式客车故障报警装置的制作方法
技术领域:
本实用新型涉及一种总线式客车故障报警装置,属于CAN总线式客车故障诊断与 报警的技术领域。
背景技术:
随着客车电子化程度不断提高,电控系统在客车的应用日趋普遍,电控系统能够 提高客车的安全性、动力性、经济性和排放性能,使客车向智能控制的方向发展,但是客车 电控系统的日益复杂使客车的故障定位和维修的难度增加。与此同时,客车上各种电子控 制单元的数目不断增加,连接导线显著增加,因而提高控制单元间通讯可靠性和降低导线 成本已成为迫切需要解决的问题。为此,德国BOSCH公司开发了 CAN总线协议,并使其成为 国际标准(IS011898)。CAN协议的一个最大特点是废除了传统的站地址编码,而代之以对 通信数据块编码,采用这种方法可使网络内的节点个数在理论上不受限制,还可使不同的 节点同时收到相同的数据,在客车领域主要采用传输波特率为250KBPS的SAE J1939协议。汽车上的各类电控设备,诸如发动机控制系统EMS、防抱死控制系统ABS、变速箱 电控系统、电控空气悬挂系统ECAS、铰接系统等都具备故障诊断的功能,而且绝大多数汽 车电控系统的故障诊断部分都遵循ISO 9141/IS0 14230标准,其中ISO 14230又称为 KWP2000协议。因此本实用新型人想到只需要增加与车辆的车载故障诊断系统(On-Board Diagnostics, 0BD)的接口通信的电路以及开发相应的协议解析程序就能够实现汽车故障 码的读取以满足汽车故障提醒的需要,使得驾驶员能够方便地获知当前汽车是否处于良好 的工作状态。而目前在客车领域尚没有具备能够与客车CAN总线通信,并采集客车各种电控系 统的故障诊断信息,然后以LCM画面或者以语音方式告知驾驶员的设备,国外在这个方面 也未见报道,或者是属于公司的技术机密,不对外公开。
发明内容本实用新型所要解决的技术问题在于提供一种总线式客车故障报警装置,该装置 和方法以有效简单的方式得到客车电控系统的故障码,同时持续监控电控系统实时工作的 数据流参数,再将这些数据信息以有效的方式显示出来,并在车辆行驶过程中及时告知驾 驶员以保证行车安全,从而实现故障报警。为解决上述技术问题,本实用新型的技术解决方案是—种总线式客车故障报警装置,其包括客车CAN总线接口及电路、故障诊断接口 OBD及电路、输出报警模块和与三者相连的微处理器E⑶,微处理器E⑶通过客车CAN总线 接口及电路以及故障诊断接口 OBD及电路获得客车各类电控系统的数据流和故障码数据 信息,将所得到的信息通过输出报警模块输出,以提醒驾驶员。所述的故障诊断接口 ISO串行K线采用MC33290实现电平的转换。所述客车CAN总线接口及电路的CAN接口芯片采用TJA1050,CAN控制器采用SJA1000T。所述输出报警模块为液晶显示模块LCM ;该液晶显示模块LCM可采用128*64图形 点阵式液晶。所述输出报警模块为语音输出模块;该语音输出模块可采用XF-S4240语音合成 模块。所述微处理器E⑶内控制软件实现的功能包括数据流读取和记录模块得到K线 和CAN总线上传输的客车实时参数;芯片程序和控制模块完成电路中使用的各种芯片的驱 动;语音提醒输出模块完成语音输出;LCM显示驱动模块完成液晶显示模块的驱动和控制; 故障码内容转换模块将故障码转换成故障码对应的内容;任务调度模块完成各个功能之间 资源的调度和协调;配置参数记录模块完成数据流阈值的记录,故障诊断通信模块完成故 障的判断,并决定是否通过液晶显示模块LCM或者语音的方式报警告知驾驶员。所述控制软件能够遵循ISO 9141,ISO 14230/KWP 2000和SAEJ1939协议的应用 层标准完成故障码和数据流的读取以获取重要的行驶参数。采用上述方案后,由于本实用新型增加了与车辆的车载故障诊断系统(On-Board Diagnostics, 0BD)的接口通信的电路、与客车CAN总线相连的CAN总线接口及电路,以及 开发了相应的协议解析程序,这样就能够实现客车故障码的读取,并以语音或LCM显示的 方式及时对行驶过程中客车电控系统出现的故障进行报警,以满足客车故障提醒的需要, 使得驾驶员能够方便地获知所驾驶车辆当前是否处于良好的工作状态。更具体来说,本实用新型具有下述有益效果1.通过连接客车各路电控系统的故障诊断接口 0BD,实现对车的故障诊断,便于 实现故障的定位和维修排查。2.通过故障诊断接口 OBD读取客车各类电控系统的运行数据参数,并利用设置的 安全门限值,保证行车安全。3.利用CAN总线获取故障报警信息,便于连接各类车载电控系统,补充了从故障 诊断接口 OBD获得的故障报警信息和客车实时运行参数,扩展灵活。4.根据电控系统所出现的故障的严重程度分别采用液晶显示或者语音报警的两 级故障报警的提醒方式,在保证行驶安全的前提下,适合驾驶员的使用习惯。
图1是本实用新型硬件系统的示意框图;图2是本实用新型K线接口的电路图;图3是本实用新型CAN总线接口的电路图;图4是本实用新型软件的体系结构图。
具体实施方式
以下结合附图和具体实施实例对本实用新型作进一步详述。如图1所示,本实用新型所涉及的是一种总线式客车故障报警装置,其包括客车 CAN总线接口及电路1、故障诊断接口 OBD及电路2、输出报警模块和与三者相连的微处理 器E⑶3,微处理器E⑶3通过客车CAN总线接口及电路1以及故障诊断接口 OBD及电路2获得客车电控系统的数据流和故障码数据信息,将所得到的信息通过输出报警模块输出, 以提醒驾驶员。所述的输出报警模块可为液晶显示模块LCM 4用以将所得到的信息显示出 来,其还可为语音输出模块5,对于重要的提醒信息则能够通过语音输出模块5输出以更加 有效地提醒驾驶员,需要说明的是,故障诊断接口 OBD需要使用线束将客车上各类电控系 统的K线并接在一起。采用上述方案,本实用新型可以通过两个渠道来获取故障报警信息首先是电控系统的故障码。对于客车而言,目前客车上主要的电控系统都有故障 诊断的功能,并支持ISO 9141/IS0 14230协议标准,因此,在硬件接口电路的设计上采用 芯片MC33290实现故障诊断接口 OBD的K线电平到TTL电平的转化,并通过编制故障诊断 的通信程序,读取各类电控系统输出的故障码。与此同时,通过故障诊断接口 OBD和通信程 序还能够得到电控系统中的数据流信息,如发动机转速、机油压力、油温等对车辆使用安全 性至关重要的参数,当采集到的这些参数超过设定的报警阈值,例如发动机冷却液的温度 超过100°C,就提醒驾驶人员“发动机水温过高,请注意! ”,并及时进行原因排查,以保证客 车在良好工作状态下运行。其次,故障信息和数据流的数据还能够通过SAE J1939协议获得。对于客车而言, 当前客车上的电控设备基本上都采用基于J1939通信协议的CAN总线,通过总线能够得到 客车各类电控系统行驶的实时参数,同时还能够得到OBD诊断接口无法提供的其他报警信 息,如储气罐气压报警、空气滤清器报警、机油滤清器报警、刹车片磨损报警等。通过基于 J1939标准的CAN总线能够对从OBD故障诊断接口得到的故障码和数据流进行充分有效的 补充。除此之外,与客车上的车载电控系统如TPMS、行驶记录仪等设备的通信能够使客车故 障报警的内容和信息更加丰富。在硬件接口电路的设计方案上采用CAN控制器SJA1000T 和CAN收发器TJA1050。此外,为了解决故障信息的报警,本实用新型采用了两种方式以适应驾驶员的不 同使用,提高客车的行驶安全性首先是液晶显示模块LCM的方式。利用液晶显示模块能够显示较为丰富信息的优 点,显示故障码以及具体的内容。对于故障报警类的信息,采用在液晶显示模块上闪烁显示 的方式,根据客车中的具体使用情况,使用128*64图形点阵式液晶。其次是语音报警提醒的方式。对于等级比较严重的,且与行驶安全相关度高的故 障报警信息,用语音的方式提醒驾驶员,以引起驾驶员的充分注意。语音提醒有多种方案 1)语音合成芯片及模块的方式;2) ISD系列录音及播放芯片;3) OKI语音合成芯片及语音信 息存储芯片,例如采用语音合成芯片ML2240及P2R0M芯片MR27T1602F的电路设计方案。考 虑到提醒信息需要根据情况经常变更,如果采用ISD或者OKI的方案需要经常更改变换录 音,灵活性差。而采用语音合成芯片及模块的方式在客车应用场合下音质效果以及在系统 应用的方便性方面都能够满足要求,因此语音报警提醒的方式就采用语音合成芯片及模块 的方案。本实用新型具体的硬件电路的设计和实现以及软件的开发设计详细描述如下1、硬件电路的设计和实现1)故障诊断接口电路目前客车的电控系统基本都采用ISO串行K线接口,为了完成ISO 9141规定的物理层电平标准到TTL逻辑电平的转换,采用MC33290,如图2所示,该芯片的第4脚连接到故 障诊断的K线上,第5脚和第6脚分别连接到单片机的串行接口的发送TXD和接收RXD引 脚。2) CAN总线接口电路客车上的CAN总线在物理层上采用的是CAN2. 0B,客车CAN总线的CAN_H和CAN_ L分别通过5. 1欧姆的电阻在连接到CAN接口芯片TJA1050的第7脚和第6脚上,TJA1050 的1脚连接到CAN控制器SJA1000T的13脚,TJA1050的4脚连接到CAN控制器SJA1000T 的19脚。为了保证CAN控制器的正确复位,采用复位芯片STC809,STC809的2脚连接到 SJA1000T 的 17 脚,见图 3。3)语音输出模块接口电路采用安徽科大讯飞信息科技有限公司的XF-S4240语音合成模块,模块的第10脚 和第8脚分别连接到单片机的串行接口的发送TXD和接收RXD引脚。设置的语音内容包 括“发动机水温过高,请注意! ”“发动机机油压力过低,请注意! ”“发动机机油温度异常, 请注意! ” “您的车辆的电控系统有故障码,请及时维修! ” “车辆的发动机排放超标,请送 修! ” “车辆轮胎压力异常,请注意防止爆胎! ” “车辆发动机转速过高,请注意安全! ”4)液晶显示模块电路液晶显示模块选用128*64图形点阵式液晶,其数据线DB0-DB7连接到单片机的并 行接口上。2、软件的开发设计1)软件的体系结构在软件开发上包括数据链路层和逻辑应用层。如图4所示,其中数据链路层中包 括四个协议解析通信模块ISO 91416、ISO 142307、J19398和串行通信SCI 9,分别完成各 种协议标准的帧格式数据的封装和信息提取。在逻辑应用层上,数据流读取和记录模块10 得到K线和CAN总线上传输的客车实时参数如发动机转速、冷却液温度等信息。芯片程序 和控制模块11完成电路中使用的各种芯片如SJA1000T的驱动。语音提醒输出模块12完 成语音合成模块XF-S4240的语音输出。LCM显示驱动模块13完成128*64液晶显示模块的 驱动和控制。故障码内容转换模块14将故障码转换成故障码对应的内容,如某款发动机的 故障码P0330表示爆震传感器2线路不良。任务调度模块15完成各个功能之间资源的调 度和协调,以在资源有限的单片机上可靠实现各种功能。配置参数记录模块16完成数据流 阈值的记录,包括实时数据流读取时间间隔、发动机冷却液温度阈值、机油压力阈值、机油 温度阈值、发动机转速等。故障诊断通信模块17完成故障的判断,并决定是否通过液晶显 示模块LCM或者语音的方式报警告知驾驶员。2)KWP2000通信协议实现步骤按照ISO 14230/KWP2000标准的约定,其链路层的命令格式如下 其中Length——请求命令长度,占用1个byte,长度为Length_0x80表示Data 的字节数。E⑶Add——请求的目标E⑶的地址。Tools Add——故障诊断设备的地址。Data——应用层数据。Checksum——校验和,采用累加和方式。得到a进入诊断系统的数据交互模型依据交互规则,需要顺次发送以下命令,其中Req为本装置发给发动机电控系统 的命令,Ans为发动机电控系统应答的命令。Req8111Fl8104[0052]Ans83Fl11ClE98FBE[0053]Req8211FlIA81IF[0054]Ans83Fl11ClEF8FC4[0055]Req8211FlIA80IE[0056]Ans83Fl11ClEF8FC4[0057]b链路保持命令[0058]Req8111Fl3ECl[0059]Ans81Fl117E01[0060]C读故障码命令[0061]Req8411Fl1800FF00[0062]Ans85Fl1158010115[0063]Pos0123456发动机电控系统应答的命令分析为了描述方便引入Pos作为字节定义。Pos[0] 表示回传的第1个字节。Pos[3] = Req[3]+0x40 ;Pos[4]表示故障码的个数;Pos[5]和 Pos [6]表示故障码内容,具体为如果PoS[5]&0xC0 >>6 = O第一个字母为P,表示是动 力系统;=1第一个字母为C,表示是底盘系统;=2第一个字母为B,表示是车身系统;=3 第一个字母为U,表示是网络系统。Pos[5]&3F和Pos[6]组成后四位数字。遵循以上规则 可以得出Pos[4] = 01,表示有1个故障码。Pos[5] = 01,Pos[5]&C0 >>6 = 0得到第 一个字母为P,为动力系统,Pos [5]&3F = 01与Pos [6]组成后四位数字0115,得到的故障 码是P0115。通过查询电控系统的故障码表,P0115所对应的故障内容为发动机冷却液温度 电路故障。3) SAE J1939通信协议实现步骤按照J1939协议的规定,对本系统而言,主要是针对SAE J1939-71应用层协议的 开发,而且主要集中在CAN总线上PDU2格式的消息也就是广播消息的接收,例如从发动 机控制单元EMS上接收发动机转速、油门开度、冷却液温度等。以发动机转速为例,按照 SAEJ1939-71的规定,采用型号为SJA1000T的CAN控制器,其验收代码寄存器ACR设置为 ACRO = 01100111,ACRl = 10011000,ACR2 = 00001000,ACR3 = 00000000,而验收屏蔽寄 存器AMR设置为AMR0 = AMRl = AMR2 = AMR3 = 0,则CAN的数据帧设置为 本消息的参数群编号PGN为61444,其对应的数据场长度为6个字节,共有5个参数,其中发动机转速占字节4和5。
权利要求一种总线式客车故障报警装置,其特征在于包括客车CAN总线接口及电路(1)、故障诊断接口OBD及电路(2)、输出报警模块和与三者相连的微处理器ECU(3),微处理器ECU(3)通过客车CAN总线接口及电路(1)以及故障诊断接口OBD及电路(2)获得客车各类电控系统的数据流和故障码数据信息,将所得到的信息通过输出报警模块输出。
2.根据权利要求1所述的总线式客车故障报警装置,其特征在于所述的故障诊断接 口 ISO串行K线采用MC33290实现电平的转换。
3.根据权利要求1所述的总线式客车故障报警装置,其特征在于所述客车CAN总线 接口及电路的CAN接口芯片采用TJA1050,CAN控制器采用SJA1000T。
4.根据权利要求1所述的总线式客车故障报警装置,其特征在于所述输出报警模块 为液晶显示模块LCM(4)。
5.根据权利要求4所述的总线式客车故障报警装置,其特征在于所述的液晶显示模 块LCM采用128*64图形点阵式液晶。
6.根据权利要求1所述的总线式客车故障报警装置,其特征在于所述输出报警模块 为语音输出模块(5)。
7.根据权利要求6所述的总线式客车故障报警装置,其特征在于所述语音输出模块 采用XF-S4240语音合成模块。
8.根据权利要求1至7之一所述的总线式客车故障报警装置,其特征在于所述微处 理器E⑶内控制软件实现的功能包括数据流读取和记录模块(10)得到K线和CAN总线上 传输的客车实时参数;芯片程序和控制模块(11)完成电路中使用的各种芯片的驱动;语音 提醒输出模块(12)完成语音输出;LCM显示驱动模块(13)完成液晶显示模块的驱动和控 制;故障码内容转换模块(14)将故障码转换成故障码对应的内容;任务调度模块(15)完 成各个功能之间资源的调度和协调;配置参数记录模块(16)完成数据流阈值的记录,故障 诊断通信模块(17)完成故障的判断,并决定是否通过液晶显示模块LCM或者语音的方式报 警告知驾驶员。
9.根据权利要求8所述的总线式客车故障报警装置,其特征在于所述控制软件能够 遵循ISO 9141,ISO 14230/KWP 2000和SAEJ1939协议的应用层标准完成故障码和数据流 的读取以及重要行驶参数获取。
专利摘要本实用新型公开了一种总线式客车故障报警装置,其涉及一种安装在客车上能够通过故障诊断接口OBD以及客车CAN总线接口获得客车电控系统的故障码和数据流信息并进行故障报警的装置和方法。微处理器ECU连接到以J1939协议为标准的客车CAN总线接口获得总线的数据流和相关的故障信息进行故障诊断,并通过故障诊断接口OBD获得客车电控单元的故障码,所得到的信息能够在液晶显示模块LCM上显示出来,对于重要的提醒信息通过语音输出模块输出以更加有效地提醒驾驶员。该装置以语音和LCM显示的方式及时对行驶过程中客车电控系统出现的故障进行报警,提醒驾驶员以提高客车的行车安全。
文档编号B60Q5/00GK201619517SQ201020122230
公开日2010年11月3日 申请日期2010年2月25日 优先权日2010年2月25日
发明者周方明, 陆山, 陈晓冰 申请人:厦门金龙联合汽车工业有限公司