1 研究的背景和意义
从改革开放到现在,汽车产业对我国经济发展产生巨大的推动,对社会进步产生了深远的影响,逐渐成为了我国的支柱行业。近几年来,随着科技发展的日新月异,汽车上电子控制装置越来越多,汽车音响,电子仪表,空调控制器,电喷发动机,BCM,ABS等等ECU在车内形成了巨大的网络系统,按照传统的布线模式,电线的错综复杂对汽车的电气控制及系统实时网络通信带来重重困难,CAN总线网络的出现,大大简化了综合布线,很好的解决了系统间的信息交互与共享,在汽车电子技术的普及应用取得了重大进步。
Can-Bus总线技术是“控制器局域网总线技术(Controller Area Network-BUS)”的简称,它具有极强的抗干扰和纠错能力,最早被用于飞机、坦克等武器电子系统的通讯联络上。
虽然CAN总线有着非常高的稳定性,然而,一旦出现错误尤其是CAN总线关闭,对于汽车的整体功能甚至安全性都造成极大影响。为此,在汽车行业高速发展,电子与通信技术广泛应用的今天,如何检测汽车网络故障的发生,如何修复故障,使我们能够保证稳定和安全的应用CAN网络技术服务于汽车产业,形成了本文研究的背景和意义。
2 汽车CAN总线网络技术的概述
2.1 CAN总线网络简介
在八十年代,CAN总线是由德国博世公司研究开发而成一种串行通信协议,而今形成了CAN技术规范2.0,包括支持11位地址标准帧的2.0A版本,和支持11位地址标准帧与29位地址扩展帧的2.0B版本。它的出现解决了汽车内部多个微控制器进行实时数据交互的问题。在物理层上,通信介质一般是双绞线,也可以使同轴电缆或光纤。CAN总线的技术有以下特点。
1)是多主系统。
2)最高波特率达到1 Mbit/sec。
3)是短帧结构(每条报文最多8字节数据)。
4)有错误检测与处理机制。
5)有数据校验,帧内应答。
6)是总线型拓扑结构。
7)是广播发送。
8)具有基于优先级的总线仲裁机制。
2.2 车内CAN总线网络拓扑示例图
车内CAN总线网络拓扑示例图见图1。
2.3 CAN(高速)总线通信物理电平信号
CAN总线采用CAN_H与CAN_L的差分信号进行通信,显性位为逻辑0,隐性位为逻辑1,并通过“线与”的机制决定总线电平。
2.4 CAN帧类型
CAN总线的帧类型包括:数据帧,远程帧,帧间空间,错误帧,超载帧。其中总线关闭的故障就是由错误帧引起的。
2.5 CAN总线可检测的错误类型
1)位错误:节点检测到的位与自身送出的位数值不同。在仲裁或ACK位期间送出“隐性”位,而检测到“显性”位不导致位错误。
2)填充错误:在使用位填充编码的帧场(帧起始至CRC序列)中,不允许出现六个连续相同的电平位。
3)CRC错误:节点计算的CRC序列与接收到的CRC序列不同。
4)格式错误:固定格式位场(如CRC界定符、ACK界定符、帧结束等)含有一个或更多非法位。
5)ACK错误:发送节点在ACK位期间未检测到“显性”位。
其中发送节点能检测到的错误有位错误、格式错误、ACK错误。而接收节点能检测到的错误有填充错误、格式错误、CRC错误。CAN控制器与收发器在检测到错误时,会发出错误帧,通报到总线上发送或接收报文错误。
由于CAN总线有着极高的稳定性,所以网络出现错误而又不被检测到的机会极低。假如一个高速CAN以500kbps的速率进行通信,总线的负载为25%,每年按照2000小时来算,那么至少要1000年才会漏检一个错误。
3 汽车CAN总线关闭问题的成因分析
3.1 CAN总线关闭
CAN控制器可以判断出错误的类型是总线上暂时的数据错误(如外部干扰等)还是持续的数据错误(如单元内部故障、驱动器故障、断线、短路等)。由此,当总线上发生持续数据错误时,CAN控制器内部的错误计数器累积到总线关闭的阀值,可将引起此故障单元从总线上隔离出去,不参与跟总线其他节点的网络通信。
3.2 CAN(高速)总线常见物理故障分析
对于CAN总线常见的物理故障,主要是CAN线路产生的。其中包括:
1)CAN_H开路。
2)CAN_L开路。
3)CAN_H对VBAT短路。
4)CAN_L对GND短路。
5)CAN_H对GND短路。
6)CAN_L对VBAT短路。
7)CAN_H对CAN_L短路。
8)CAN_H和CAN_L开路。
9)终端电阻开路。如图4。
但是根据ISO11898标准,CAN收发器具有一定的容错性能。因此,并不是每一种CAN线路的故障都会导致CAN总线关闭问题的发生。以上述高速CAN网络为例,除了4)CAN_L对GND短路和9)终端电阻开路是可以自身容错外,其他线路故障都会存在引发CAN总线关闭问题的可能性。 造成CAN总线关闭的物理层因素,除了CAN线路的故障,还有可能是CAN控制器或收发器等元器件出现了故障,导致该CAN节点无法通信。另外,也有可能因为CAN总线信号的干扰,使得CAN信号的收发不能正确,尤其是不能正常发送报文,容易导致CAN总线关闭。
3.3 CAN总线软件错误计数分析
CAN网络上每个节点都含有REC(接收错误计数器)和TEC(发送错误计数器)。当接收错误产生时,REC增加;正确接收到数据帧,REC减少;当发送错误产生时,TEC增加;正确发送一帧数据帧,TEC减少;REC、TEC的数值会引发节点状态改变。
CAN网络节点存在三种状态:
1)主动错误,能正常的进行总线通信,错误产生时,发送主动错误帧。
2)被动错误,能够进行总线通信,错误产生时,发送被动错误帧。
3)总线关闭,不能收发任何报文。
特殊案例:如果总线上只有一个节点,该节点发送数据帧后得不到应答,TEC最大只能计到128,即节点只会进入被动错误状态而不会进入总线关闭状态。
4 汽车CAN总线关闭的故障记录与恢复建议
4.1 CAN总线关闭的故障诊断与记录
诊断规范描述了一系列的诊断服务,定义ECU与诊断仪之间的请求响应规则、ECU对于请求报文的处理行为以及请求、响应报文信息含义。常用的诊断规范包括有UDS,KWP2000以及ISO15765等协议。其中记录和读取诊断故障码(DTC)就是诊断的一项重要工作,网络节点单元把曾经或现在发生的相关故障码都保存在非易失性存储器(NVM)中,随时方便于汽车工程师检查故障记录。
我们对于CAN总线关闭故障的诊断流程是,CAN控制器在错误中断里或者在周期性的查询里,检查BUS OFF寄存器的值,如果CAN控制器发生了BUS OFF,这个寄存器的值就会被赋真值。此时,CAN诊断模块会把BUS OFF的DTC状态中的Test Failed位给置上,表示当前检查CAN总线关闭故障是存在的,即CAN网络通信处在失效模式,同时把BUS OFF的记录次数加1。当BUS OFF的记录次数达到整车厂规定的阀值时,CAN诊断模块会DTC状态中的Confirmed位给置上,同时把CAN总线关闭的DTC记录到非易失性存储器中。
4.2 CAN总线关闭的恢复建议
我们的CAN诊断模块在错误中断或周期性查询中发现总线关闭故障时,应该立即对CAN控制器的驱动及相关寄存器进行初始化操作,这样,在初始化完成后,CAN总线关闭的故障能够立即被解除。但是,该CAN节点在解除总线关闭故障后,会继续对外发送报文,如果此时产生总线关闭的真正外部因素没有解除,该CAN节点仍有机会再次发生总线关闭的故障。
为了避免该节点在CAN网络中频繁发生总线关闭的问题,防止影响到网络资源的消耗和对其他节点的不必要干扰,我们建议在CAN初始化完成后,不要立即对外发送CAN报文,应该等待一定时间段后再尝试发送报文是否成功。
5 结论
汽车CAN总线关闭故障发生时,应分析物理层包括CAN线路、CAN控制器及收发器、CAN信号干扰等外在因素,同时分析CAN寄存器及软件处理,重新初始化CAN驱动和恢复正常后,定时尝试往外发送报文。CAN总线关闭严重影响到整车的功能与安全性,我们通过对故障的成因分析,提出合理的完善建议,希望能对汽车电子技术的健康发展起到一定的作用。
参考文献
[1]恒润科技,CAN规范2.0.2007.
[2]国际标准化组织,ISO14229.2006.
[3]国际标准化组织,ISO11898.2006.
关键字:汽车CAN总线 关闭故障 诊断与恢复
引用地址:汽车CAN总线关闭故障的诊断与恢复
从改革开放到现在,汽车产业对我国经济发展产生巨大的推动,对社会进步产生了深远的影响,逐渐成为了我国的支柱行业。近几年来,随着科技发展的日新月异,汽车上电子控制装置越来越多,汽车音响,电子仪表,空调控制器,电喷发动机,BCM,ABS等等ECU在车内形成了巨大的网络系统,按照传统的布线模式,电线的错综复杂对汽车的电气控制及系统实时网络通信带来重重困难,CAN总线网络的出现,大大简化了综合布线,很好的解决了系统间的信息交互与共享,在汽车电子技术的普及应用取得了重大进步。
Can-Bus总线技术是“控制器局域网总线技术(Controller Area Network-BUS)”的简称,它具有极强的抗干扰和纠错能力,最早被用于飞机、坦克等武器电子系统的通讯联络上。
虽然CAN总线有着非常高的稳定性,然而,一旦出现错误尤其是CAN总线关闭,对于汽车的整体功能甚至安全性都造成极大影响。为此,在汽车行业高速发展,电子与通信技术广泛应用的今天,如何检测汽车网络故障的发生,如何修复故障,使我们能够保证稳定和安全的应用CAN网络技术服务于汽车产业,形成了本文研究的背景和意义。
2 汽车CAN总线网络技术的概述
2.1 CAN总线网络简介
在八十年代,CAN总线是由德国博世公司研究开发而成一种串行通信协议,而今形成了CAN技术规范2.0,包括支持11位地址标准帧的2.0A版本,和支持11位地址标准帧与29位地址扩展帧的2.0B版本。它的出现解决了汽车内部多个微控制器进行实时数据交互的问题。在物理层上,通信介质一般是双绞线,也可以使同轴电缆或光纤。CAN总线的技术有以下特点。
1)是多主系统。
2)最高波特率达到1 Mbit/sec。
3)是短帧结构(每条报文最多8字节数据)。
4)有错误检测与处理机制。
5)有数据校验,帧内应答。
6)是总线型拓扑结构。
7)是广播发送。
8)具有基于优先级的总线仲裁机制。
2.2 车内CAN总线网络拓扑示例图
车内CAN总线网络拓扑示例图见图1。
2.3 CAN(高速)总线通信物理电平信号
CAN总线采用CAN_H与CAN_L的差分信号进行通信,显性位为逻辑0,隐性位为逻辑1,并通过“线与”的机制决定总线电平。
2.4 CAN帧类型
CAN总线的帧类型包括:数据帧,远程帧,帧间空间,错误帧,超载帧。其中总线关闭的故障就是由错误帧引起的。
2.5 CAN总线可检测的错误类型
1)位错误:节点检测到的位与自身送出的位数值不同。在仲裁或ACK位期间送出“隐性”位,而检测到“显性”位不导致位错误。
2)填充错误:在使用位填充编码的帧场(帧起始至CRC序列)中,不允许出现六个连续相同的电平位。
3)CRC错误:节点计算的CRC序列与接收到的CRC序列不同。
4)格式错误:固定格式位场(如CRC界定符、ACK界定符、帧结束等)含有一个或更多非法位。
5)ACK错误:发送节点在ACK位期间未检测到“显性”位。
其中发送节点能检测到的错误有位错误、格式错误、ACK错误。而接收节点能检测到的错误有填充错误、格式错误、CRC错误。CAN控制器与收发器在检测到错误时,会发出错误帧,通报到总线上发送或接收报文错误。
由于CAN总线有着极高的稳定性,所以网络出现错误而又不被检测到的机会极低。假如一个高速CAN以500kbps的速率进行通信,总线的负载为25%,每年按照2000小时来算,那么至少要1000年才会漏检一个错误。
3 汽车CAN总线关闭问题的成因分析
3.1 CAN总线关闭
CAN控制器可以判断出错误的类型是总线上暂时的数据错误(如外部干扰等)还是持续的数据错误(如单元内部故障、驱动器故障、断线、短路等)。由此,当总线上发生持续数据错误时,CAN控制器内部的错误计数器累积到总线关闭的阀值,可将引起此故障单元从总线上隔离出去,不参与跟总线其他节点的网络通信。
3.2 CAN(高速)总线常见物理故障分析
对于CAN总线常见的物理故障,主要是CAN线路产生的。其中包括:
1)CAN_H开路。
2)CAN_L开路。
3)CAN_H对VBAT短路。
4)CAN_L对GND短路。
5)CAN_H对GND短路。
6)CAN_L对VBAT短路。
7)CAN_H对CAN_L短路。
8)CAN_H和CAN_L开路。
9)终端电阻开路。如图4。
但是根据ISO11898标准,CAN收发器具有一定的容错性能。因此,并不是每一种CAN线路的故障都会导致CAN总线关闭问题的发生。以上述高速CAN网络为例,除了4)CAN_L对GND短路和9)终端电阻开路是可以自身容错外,其他线路故障都会存在引发CAN总线关闭问题的可能性。 造成CAN总线关闭的物理层因素,除了CAN线路的故障,还有可能是CAN控制器或收发器等元器件出现了故障,导致该CAN节点无法通信。另外,也有可能因为CAN总线信号的干扰,使得CAN信号的收发不能正确,尤其是不能正常发送报文,容易导致CAN总线关闭。
3.3 CAN总线软件错误计数分析
CAN网络上每个节点都含有REC(接收错误计数器)和TEC(发送错误计数器)。当接收错误产生时,REC增加;正确接收到数据帧,REC减少;当发送错误产生时,TEC增加;正确发送一帧数据帧,TEC减少;REC、TEC的数值会引发节点状态改变。
CAN网络节点存在三种状态:
1)主动错误,能正常的进行总线通信,错误产生时,发送主动错误帧。
2)被动错误,能够进行总线通信,错误产生时,发送被动错误帧。
3)总线关闭,不能收发任何报文。
特殊案例:如果总线上只有一个节点,该节点发送数据帧后得不到应答,TEC最大只能计到128,即节点只会进入被动错误状态而不会进入总线关闭状态。
4 汽车CAN总线关闭的故障记录与恢复建议
4.1 CAN总线关闭的故障诊断与记录
诊断规范描述了一系列的诊断服务,定义ECU与诊断仪之间的请求响应规则、ECU对于请求报文的处理行为以及请求、响应报文信息含义。常用的诊断规范包括有UDS,KWP2000以及ISO15765等协议。其中记录和读取诊断故障码(DTC)就是诊断的一项重要工作,网络节点单元把曾经或现在发生的相关故障码都保存在非易失性存储器(NVM)中,随时方便于汽车工程师检查故障记录。
我们对于CAN总线关闭故障的诊断流程是,CAN控制器在错误中断里或者在周期性的查询里,检查BUS OFF寄存器的值,如果CAN控制器发生了BUS OFF,这个寄存器的值就会被赋真值。此时,CAN诊断模块会把BUS OFF的DTC状态中的Test Failed位给置上,表示当前检查CAN总线关闭故障是存在的,即CAN网络通信处在失效模式,同时把BUS OFF的记录次数加1。当BUS OFF的记录次数达到整车厂规定的阀值时,CAN诊断模块会DTC状态中的Confirmed位给置上,同时把CAN总线关闭的DTC记录到非易失性存储器中。
4.2 CAN总线关闭的恢复建议
我们的CAN诊断模块在错误中断或周期性查询中发现总线关闭故障时,应该立即对CAN控制器的驱动及相关寄存器进行初始化操作,这样,在初始化完成后,CAN总线关闭的故障能够立即被解除。但是,该CAN节点在解除总线关闭故障后,会继续对外发送报文,如果此时产生总线关闭的真正外部因素没有解除,该CAN节点仍有机会再次发生总线关闭的故障。
为了避免该节点在CAN网络中频繁发生总线关闭的问题,防止影响到网络资源的消耗和对其他节点的不必要干扰,我们建议在CAN初始化完成后,不要立即对外发送CAN报文,应该等待一定时间段后再尝试发送报文是否成功。
5 结论
汽车CAN总线关闭故障发生时,应分析物理层包括CAN线路、CAN控制器及收发器、CAN信号干扰等外在因素,同时分析CAN寄存器及软件处理,重新初始化CAN驱动和恢复正常后,定时尝试往外发送报文。CAN总线关闭严重影响到整车的功能与安全性,我们通过对故障的成因分析,提出合理的完善建议,希望能对汽车电子技术的健康发展起到一定的作用。
参考文献
[1]恒润科技,CAN规范2.0.2007.
[2]国际标准化组织,ISO14229.2006.
[3]国际标准化组织,ISO11898.2006.
上一篇:CAN总线技术在汽车上的应用
下一篇:汽车CAN总线概述及其故障诊断
推荐阅读最新更新时间:2024-05-03 00:39
基于CAN总线的汽车车身控制系统设计
1 引言 随着汽车电子技术的不断发展,汽车上的各种电子装置越来越多,电子控制装置之间的通讯也越来越复杂,而汽车上传统的电气系统大多采用点对点的单一通信方式,相互之间少有联系,造成了庞大的布线系统,已远远不能满足汽车愈加复杂的控制系统要求。汽车控制局域网CAN 总线应运而生,它广泛应用于汽车电子控制系统中,为实现汽车控制部件的智能化和汽车控制系统的网络化提供了一个有效的途径和方法。
2 CAN总线技术简介
CAN 总线是德国BOSCH 公司从20 世纪80 年代初为解决现代汽车中众多的控制与测试仪器之间的数据交换而开发的一种串行数据通信协议,它是一种多主总线,通信介质可以是双绞线、同轴电缆或光导纤维。通信速率可达1
[嵌入式]
LIN/CAN总线汽车零部件测试方案
摘要 虹科的LIN/CAN总线汽车零部件测试方案是一款优秀的集成套装,基于Baby-LIN系列产品,帮助客户高效完成在测试、生产阶段车辆零部件质量、功能、控制等方面的检测工作。 背景 1、汽车零部件测试的重要性? 汽车零部件的测试对于确保汽车的安全性、功能性和可靠性起着至关重要的作用。LIN/CAN通信的车辆零部件主要包括汽车摇窗器、雨刮、格栅、天窗等电机,检测组合开关,座椅,氛围灯等,客户往往需要在车辆零部件自动测试系统中验证其功能性和可靠性,因此需要功能强大的LIN&CAN总线测试仿真工具。 2、虹科的测试仿真工具如何在汽车 零部件测试展露头角? 1.精准模拟仿真:模拟LIN&CAN节点,实现系统的主
[汽车电子]
2.4G射频的CAN总线汽车故障诊断仪设计
控制器局域网络CAN(Controller Area Network)为汽车内部各种复杂的 电子 设备、控制器、测量仪器等提供了统一数据交换渠道,已得到广泛的应用。目前,太多数汽车部件都提供了CAN 总线 通信接口。 在当今的中高档汽车中,都采用了 CAN总线 技术。针对车载CAN总线会出现的故障.结合 射频 和 USB 的优点,依靠KWP2000应用层规定的故障代码,本文提出了一种基于车载CAN总线故障诊断仪设计方案。本方案成本低廉,携带方便,具有很强的灵活性与适应性。 1 方案设计 系统总体设计框图如图l所示。系统分为发射端和接收端两部分。 由于采用射频技术,使汽车CAN总线数据采集部分和CAN总线数据诊断部
[单片机]
基于CAN总线的汽车行驶记录仪的开发
引言 汽车行驶记录仪是传统汽车仪表系统的技术革新产品,涉及许多技术领域。 其核心概念及主要研究内容包括:仪表信息数字化、车内总线通讯与全车信息共享、整车统一调度以及基于全车信息的故障诊断等几个方面。相信今后汽车将会越来越多地采用各种用途的电子化仪表,功能强大的电子仪表将成为发展趋势。 汽车行驶记录仪的系统结构 如图1所示,本系统由主机和上位机管理分析软件两部分组成。其中主机部分包括:信号输入、数据保存和处理、数据显示、数据通信、复位电路和掉电保护电路等。上位机软件实现数据统计、查询、分析等功能。整个系统作为汽车CAN网络的一个节点,可以实现与其他CAN节点之间的通讯及数据传输等。 汽车行驶记录仪的硬件设计 主处理器的选择
[嵌入式]
基于CAN总线的汽车车身控制系统的研究
引言
随着汽车电子技术的不断发展,汽车上的各种电子装置越来越多,电子控制装置之间的通讯也越来越复杂,而汽车上传统的电气系统大多采用点对点的单一通信方式,相互之间少有联系,造成了庞大的布线系统,已远远不能满足汽车愈加复杂的控制系统要求。汽车控制局域网CAN 总线应运而生,它广泛应用于汽车电子控制系统中,为实现汽车控制部件的智能化和汽车控制系统的网络化提供了一个有效的途径和方法。
2 CAN总线技术简介
CAN 总线是德国BOSCH 公司从20 世纪80 年代初为解决现代汽车中众多的控制与测试仪器之间的数据交换而开发的一种串行数据通信协议,它是一种多主总线,通信介质可以是双绞线、同轴电缆或光导纤维。通
[嵌入式]
提升汽车CAN总线能效的途径
对于传统乘用车而言,油箱是唯一的实际能源来源,故制造商们寻求在包括电子系统在内的所有汽车系统中节能,以进一步改善燃油经济性及二氧化碳(CO2)排放。随着汽车中增添的电子系统的数量不断增多,以增强汽车性能及安全性,并为购买者提供有吸引力的新功能,汽车中每个电子控制单元(ECU)的节能效果较低的话,就会使总油耗大幅增加。
芯片设计人员采用不同技术及途径,已经能够降低他们提供的器件的总能耗。在单个系统基础芯片(SBC)中结合多个器件的功能,并应用不同电源管理策略,还能帮助进一步降低总能耗。这些进展表示当今的内燃 发动机 汽车能够舒适安全地搭载乘客,而使用的燃油更少,碳排放更低。
增强型系统基础芯片
SBC为连接至汽车(CAN
[嵌入式]
基于CAN总线汽车车身视觉检测站的研究
前言
汽车车身视觉检测站是用于测量车身关键点的三维空间坐标的大型的专用检测系统。它由机械及定位系统、三维视觉传感器系统、测量控制与接口系统、标定系统以及计算机软件五大部分组成。主要方法采用结构光传感器,经标定系统标定后,通过控制系统选取被测点,采集图像,结合视觉检测算法,求出被测点坐标参数。为进行测量,必须把计算机与传输器联系起来。检测人员应能通过计算机选择测点,使传感器按预先设定的顺序进入测量状态,产生测量用的光条平面,还应能够随时调整测量顺序,并实现对光源的实时控制及图像部分的多用户采集。
控制器局域网CAN(Controller Area Network)是一种具有很高保密性,有效支持分布式控
[嵌入式]
搞定了CAN总线加密的Trillium,能成为汽车安全防护的好把式吗?
一直以来,大家都认为CAN总线几乎是没法保护的。但Trillium的SecureCAN显然打破了这个 迷信 。 汽车安全领域的技术产品正在变得炙手可热。大量创业公司涌入,潜心技术开发的同时,都期待着能成为大公司收购的下一个目标。去年夏天,白帽黑客查理 米勒和老搭档克里斯 瓦拉塞克入侵了一辆Jeep切诺基。几乎是同一时间,通用安吉星的RemoteLink系统被爆安全漏洞,黑客利用系统网关能够远程操控车门解锁,发动机启停。下图是英特尔公布的目前联网汽车上暴露出的15个最容易被黑客利用的攻击面。 因此,照目前的形势来看,车企和供应商在智能互联、自动驾驶汽车上投入的精力越多,他们对安全的重视程度就越高,而网络安全对汽
[汽车电子]