一、 汽车总线概述
1.汽车总线技术的发展
随着近年来ITS的发展,以3G(GPS、GIS和GSM)为代表的新型电子通讯产品的出现,它对汽车的综合布线和信息的共享交互提出了更高的要求。另外,随着车用电气设备越来越多,从发动机控制到传动系统控制,从行驶、制动、转向系统控制到安全保证系统及仪表报警系统,从电源管理到为提高舒适性而作的各种努力,使汽车电气系统形成一个复杂的大系统,并且都集中在驾驶室控制。
从布线角度分析,传统的电气系统大多采用点对点的单一通信方式,相互之间少有联系,这样必然造成庞大的布线系统。据统计,一辆采用传统布线方法的高档汽车中,其导线长度可达2000米,电气节点达1500个,而且,根据统计,该数字大约每十年增长1倍,从而加剧了粗大的线束与汽车有限的可用空间之间的矛盾。无论从材料成本还是工作效率看,传统布线方法都将不能适应汽车的发展。下图1、图2分别为相同节点的传统点对点通讯方式和使用CAN总线的通讯方式,从图可以直观地比较线束的变化(图中节点之间的连线仅表示节点间存在的信息交换,并不代表线束的多少)。
nload="javascript:if(>740)=740" align=center border=0>
图1 传统的节点通讯方式
nload="javascript:if(>740)=740" align=center border=0>
图2 CAN总线通讯方式
电控燃油喷射系统、电控传动系统、防抱死制动系统(ABS)、防滑控制系统(ASR)、废气再循环控制、巡航系统和空调系统。为了满足各子系统的实时性要求,有必要对汽车公共数据实行共享,如发动机转速、车轮转速、油门踏板位置等。但每个控制单元对实时性的要求是因数据的更新速率和控制周期不同而不同的。这就要求其数据交换网是基于优先劝竞争的模式,且本身具有较高的通信速率,CAN总线正是为满足这些要求而设计的。
美国汽车工程师协会(SAE)车辆网络委员会根据标准SAE J2057将汽车数据传输网划分为A、B、C三类,为了直观地说明其网络划分,这里图3表示。
nload="javascript:if(>740)=740" align=center border=0>
从通讯速度角度分析,随着车载多媒体和办公设备在车辆应用方面的快速发展,一种新型总线——IDB已经出现,世界各大汽车生产商对此非常关注,纷纷出台相应的研究计划。现在已经存在能够对导航、GPS、电话、音响、电视、DVD等进行信息综合的双总线(OEM总线+IDB)样车,这些装置之间需要频繁地通讯,而且信息量巨大,原有的CAN总线或J1850总线无法满足这些装置间的通讯要求,因为传输地理信息(GI)、数字音频信息或车辆位置信息至少需要5Mbit/s的网络速度,IDB-1394可以支持100、200、400Mbit/s的通讯速度,完全可以满足高速通讯的网络需求。
CAN总线是控制策略驱动的总线,主要实现对车辆本身的控制,而IDB总线则以信息交互、共享为目的。为实现CAN总线和IDB总线间的信息流动以及防止后者对前者产生影响,在两总线间增加网关已经成为共识。图4为一典型的双总线结构示意图。
nload="javascript:if(>740)=740" align=center border=0>
早在80年代,众多国际知名的汽车公司就积极致力于汽车总线技术的研究及应用,如博世的CAN、SAE的J1850、马自达的PALMNET、德国大众的ABUS、美国商用机器的AUTOCAN、ISO的VAN等。目前,国外的汽车总线技术已经成熟,采用总线系统的车辆有BENZ、BMW、RORSCHE、ROLLSROYCE、JAGUAR、VOLVO等。国内完全引进技术生产的奥迪A6车型已于2000年起采用总线替代原有线束,帕萨特B5、BORA、POLO、FIAT PALIO和SIENA等车型也都不同程度地使用了总线技术。此外,部分高档客车、工程机械也都开始应用总线技术。
2.汽车总线技术的特征
2.1设计目标
汽车总线传输必须确保以下几点:传输信息的安全;信号的逻辑“1”明显区别于逻辑“0”;异步总线随机地传送数据;根据预先确定的优先权进行总线访问;竞争解决后获胜站点能够访问总线且继续传输信息;具有根据信息内容解决总线访问竞争的能力;总线的功能寻址和点到点寻址能力;节点在尽量小的时间内成功访问总线;最优化的传输速率(波特率);节点的故障诊断能力;总线具有一定的可扩充性等等。
2.2数字信号的编码
为了保证信息传输的可靠性,对数字信号正确编码非常重要。汽车局域网数据信号多采用脉宽调制(PWM)和不归零制(NRZ)。PWM作为编码方案时,波特率上界为3×105kb/s,用于传输速率较低的场合。采用NRZ进行信息传输,可以达到1Mb/s,用于传输速率较高的场合。
2.3网络拓扑结构
实用的汽车局域网是总线拓扑结构,如CAN、SAEJ1850、ADVANCED PALMNET等。其优点是:电缆短,布线容易;总线结构简单,又是无源元件,可靠性高;易于扩充,增加新节点只需在总线的某点将其接入,如需增加长度可通过中继器加入一个附加段。
2.4总线访问协议
汽车总线的访问协议一般为争用协议,每个节点都能独立决定信息帧的发送。如果同时有两个或两个以上的节点发送信息,就会出错,这就要求每个节点有能力判断冲突是否发生,发生冲突时按某个规律等待随机时间间隔后重发,以避免再发生冲突。网络协议所使用的防冲突监听措施多为载波监听多路访问,如CAN、SAEJ1850、ADVANCED、PALMNET等都采用的是:载波监听多路访问/冲突检测+无损仲裁(CSMA/CD+NDA)。
二、 汽车CAN总线
CAN总线是德国BOSCH公司在20世纪80年代初,为了解决现代汽车中众多的控制与测试仪器之间的数据交换而开发的一种串行数据通讯协议。它的短帧数据结构、非破坏性总线性仲裁技术以及灵活的通讯方式适应了汽车的实时性和可靠性要求。
汽车CAN总线的技术背景来源于工业现场总线和计算机局域网这样非常成熟的技术,因此具有很高的可靠性,抗干扰性。
1.CAN总线的特点
CAN作为一种多主总线,支持分布式实时控制的通讯网络。其通讯介质可以是双绞线、同轴电缆或光纤。在汽车发动机控制部件、传感器、抗滑系统等应用中,总线的位速率最大可达1Mbit/s。CAN总线属于总线式串行通讯网络,由于其采用了许多新技术及独特的设计,与一般的通讯总线相比,CAN总线的数据通讯具有突出的可靠性、实时性和灵活性。其特点可以概括如下:
1) CAN为多主方式工作,网络上任一节点均可在任意时刻主动地向网络上其他节点发送信息,而不分主从,通信方式灵活,且无需站地址等节点信息。利用这一点可方便地构成多机备份系统。
2) CAN网络上的节点信息分成不同的优先级,可满足不同的实时要求,高优先级的数据最多可在134us内得到传输。
3) CAN采用非破坏性总线性仲裁技术,当多个节点同时向总线发送信息时,优先级较低的节点会主动地退出发送,而最高优先级的节点可不受影响地继续传输数据,从而大大节省了总线冲突仲裁时间。尤其是在网络负载很重的情况下也不会出现网络瘫痪情况(以太网则可能)。
4) CAN只需通过帧滤波即可实现点对点、一点对多点及全局广播等几种方式传送接受数据,无需专门的“调度”。
5) CAN采用NRZ编码,直接通信距离最远可达10km(速率5kbps);通信速率最高可达1Mbps(此时通信距离最长为40m)。
6) CAN上的节点数主要取决于总线驱动电路,目前可达110个;标示符可达2032种(CAN2.0A),而扩展标准(CAN2.0B)的标示符几乎不受限制。
7) 采用短帧结构,传输时间短,受干扰概率低,具有极好的检错效果。
8) CAN的每帧信息都有CRC效验及其他检错措施,保证数据出错率极低。
9) CAN的通信介质可为双铰线、同轴电缆或光纤,选择灵活。
10) CAN节点在错误严重的情况下具有自动关闭输出功能,以使总线上其他节点的操作不受影响。
2.CAN总线技术的优点
国内汽车品牌中已经有几款车型应用了总线技术,这些技术完全来自国外。目前应用总线的国产车中大多采用两套独立的CAN总线:一套是动力CAN数据传输系统,另一套是舒适CAN数据传输系统。
使用CAN总线后,对其优点进行了总结,得出以下结论:
1) 如果数据扩展以增加新的信息,只需升级软件即可。
2) 控制单元对所传输的信息进行实时检测,检测到故障后存储故障码。
3) 使用小型控制单元及小型控制单元插孔可节省空间。
4) 使传感器信号线减至最少,控制单元可做到高速数据传输。
5) CAN总线符合国际标准,因此可应用不同型号控制单元间的数据传输。
3.汽车CAN总线的节点设计
3.1 CAN节点ECU的设计(硬件)
汽车节点ECU的开发可以选择带有在片CAN的微控制器,也可以选择其它微控制器和相应的片外CAN控制器、收发器。本文以后者为例说明ECU的开发。
带有CAN接口的ECU设计是总线开发的核心与关键,其中ECU的CAN总线模块有几个功能单元构成——CAN控制器和CAN收发器。CAN控制器执行完整的CAN协议,完成通讯功能,包括信息缓冲和接收滤波。CAN控制器与物理总线之间需要一个接口——CAN收发器,它实现CAN控制器与总线之间逻辑电平信号的转换。CAN控制器和收发器完成CAN物理层和逻辑电路层的所有功能。应用层的功能则由软件来实现。
各节点的ECU主要由MCU、DSP、CAN控制器SJA1000、CAN收发器PCA2C250和其它外围器件构成。一个由51单片机开发CAN节点的原理图(图中省略了SJA1000与PCA2C250之间的光耦等细节),完全可以说明带CAN接口ECU设计的原理。
3.2 CAN网络通讯的实现(软件)
CAN设计的三层结构模型为:物理层、数据链路层和应用层。物理层和数据链路层的功能由CAN接口器件完成,包括硬件电路和通讯协议两部分。CAN通讯协议规定了四种不同用处的网络通讯帧,即数据帧、远程帧、错误指示帧和超载帧。CAN通讯协议的实现,包括各种通讯帧的组织和发送,均是由集成在SJA1000通讯控制器中的电路实现的,因此系统的开发主要在应用层的设计上。应用层软件的核心部分是CPU与SJA1000通讯控制器之间的数据接收和发送程序,即CPU把待发的数据发给SJA1000通讯控制器,再由SJA1000通讯控制器发到总线上;当SJA1000通讯控制器从总线接受到数据后,CPU再把数据取走。对于单片机而言,操作SJA1000就象访问外部RAM一样简单。首先,应对SJA1000中的有关控制寄存器写入控制字,进行初始化。之后,CPU即可通过SJA1000接收/发送缓冲区向物理总线接收和发送数据。
三、汽车总线的研究重点及关键技术
汽车总线系统的研究与发展可以分为三个阶段:第一阶段是研究汽车的基本控制系统(也称舒适总线系统),如照明、电动车窗、中央集控锁等。第二阶段是研究汽车的主要控制系统(也称动力总线系统),如电喷ECU控制系统、ABS系统、自动变速箱等。第三阶段是研究汽车各电子控制系统之间的综合、实时控制和信息反馈。
按照我国汽车电子技术发展规划,进入21世纪后轿车电子技术可达国外90年代水平,为了缩短同国外轿车技术水平的差距,提高自身的竞争力,单纯靠技术引进不利于发展,消化、吸收、研究和开发自己的汽车总线与网络应用系统势在比行。目前我国的汽车总线研究和应用尚处起步阶段,而且汽车总线的应用趋势明显,现在介入该研究正是大好时机。
1.汽车总线的研究重点
由于我国的车型以欧美车型为主,且欧美车型又以CAN总线为主流,目前国内使用总线技术的车型几乎全部使用CAN总线,因此汽车总线的研发应该结合国内外实际情况选用CAN总线。
CAN符合ISO/OSI的参考模型,但只规定了物理层和数据链路层的协议,其应用层的协议需要用户自己定义。支持CAN低层协议的芯片有许多,既有在片的MCU,也有片外的CAN控制器。用户自己开发的应用层协议也有很多,如AB公司定义的DEVICENET协议就是CAN协议基础上的应用层协议,Honeywell公司推出的SDS总线也是在CAN的基础上定义了自己的应用层。可见,汽车CAN总线的研究重点是:针对具体的车型开发ECU的硬件和应用层的软件,并构成车内网络。
2.关键技术
利用CAN总线构建一个车内网络,需要解决的关键技术问题有:
a) 总线传输信息的速率、容量、优先等级、节点容量等技术问题;
b) 高电磁干扰环境下的可靠数据传输;
c) 确定最大传输时的延时大小;
d) 网络的容错技术;
e) 网络的监控和故障诊断功能;
四、结论
技术的先进性是总线在汽车上应用的最大动力,也是汽车生产商竟相应用总线的主要原因,汽车总线的普及和发展是大势所趋,是提高汽车性能的一条很好途径。