一、CAN总线技术简介
CAN总线又称作汽车总线,其全称为“控制器局域网(CAN—Controller Area Network)”。CAN总线是一种现场总线(区别于办公室总线),是德国Bosch公司为解决现代汽车中众多的电控模块(ECU)之间的数据交换而开发的一种串行通信协议。CAN总线的设计充分考虑了汽车上恶劣工作环境,可靠性高。因此CAN总线在诸多现场总线中独占鳌头,成为汽车总线的代名词。
随着车用电气设备越来越多,从发动机控制到传动系统控制,从行驶、制动、转向系统控制到安全保证系统及仪表报警系统,从电源管理到为提高舒适性而作的各种努力,使汽车电气系统形成一个复杂的大系统,并且都集中在驾驶室控制。另外,随着近年来ITS的发展,以3G(GPS、GIS和GSM)为代表的新型电子通讯产品的出现,它对汽车的综合布线和信息的共享交互提出了更高的要求。从布线角度分析,传统的电气系统大多采用点对点的单一通信方式,相互之间少有联系,这样必然造成庞大的布线系统。据统计,一辆采用传统布线方法的高档汽车中,其导线长度可达2000米,电气节点达1500个,而且,根据统计,该数字大约每十年增长1倍。无论从材料成本还是工作效率看,传统布线方法都将不能适应汽车的发展。从信息共享角度分析,现代典型的控制单元有电控燃油喷射系统、电控传动系统、防抱死制动系统(ABS)、防滑控制系统(ASR)、废气再循环控制、巡航系统和空调系统。为了满足各子系统的实时性要求,有必要对汽车公共数据实行共享,如发动机转速、车轮转速、油门踏板位置等。但每个控制单元对实时性的要求是因数据的更新速率和控制周期不同而不同的。这就要求其数据交换网是基于优先竞争的模式,且本身具有较高的通信速率,CAN总线正是为满足这些要求而设计的。
二、CAN总线技术优点
数据共享减少了数据的重复处理,节省了成本。比如,对于具有CAN总线接口的电喷发动机,其它电器可共享其提供的转速、水温、机油压力、机油温度、油量瞬时流速等等,一方面可省去额外的水温、油压、油温传感器,另一方面可以将这些数据显示在仪表上,便于司机检查发动机运行工况,从而便于发动机的保养维护。
再比如,电涡流缓速器、空气悬架、门控制及巡航定速控制都用到车速数据,结果这些电器都有一套车速处理电路,浪费了资源。而采用总线技术后,大家都从总线上即可获得车速数据。
减少车身布线,进一步节省了成本。由于采用总线技术,模块之间的信号传递仅需要两条信号线。布线局部化,车上除掉总线外,其他所有横贯车身的线都不再需要了,节省了布线成本。另外,数据共享也节省了线路,还拿车速信号打比方,在没有总线的情况,车速信号要接到电涡流缓速器、空气悬架、门控制及电喷发动机。有了总线后只要接到一处,其他电器通过总线共享。
硬件方案的软件化实现,大大地简化了设计,减小硬件成本和设计生产成本。
比如发动机点火控制,前点火时必须满足下列条件:
1、后仓门关闭
发动机点火控制后点火时必须满足下列条件:
1、空档
2、钥匙门处于ON档
另外还需点火保护装置,以往是靠一系列继电器来实现这些功能,既不可靠又增大成本。而用软件实现既可靠又无资金投入。
具有错误诊断能力和自动恢复能力,节省了生产维护成本。对于总线内部错误,总线系统可以通过自身软件进行自动恢复。而非总线车辆,一旦出现故障,第一更依赖人工,第二,往往需要对复杂线束挨根测量,第三,需要对相关电器依次测定。整个过程非常费工时。
扩充性强,产品升级快,节省了新产品开发设计成本。CAN节点几乎可以在不改动原有线束的情况下增加新的组件。
数据稳定可靠,CAN总线具有线间干扰小、抗干扰能力强的特点。由于VITI-CAN系统采用的是模块化管理,各模块按其功能分散的摆放在车内,简化了布线并缩短了线束的长度,从而降低了耦合电流的产生,减小了线间干扰。同时在软件上,CAN总线采用短帧传输,这样使总线数据报文在传输过程中有较强的抗干扰能力。
CAN总线专为汽车量身订做,可靠性有保障。CAN总线的设计充分考虑了汽车上恶劣工作环境,比如点火线圈点火时产生的强大的反冲电压,电涡流缓速器切断时产生的浪涌电流及汽车发动机仓100℃左右的高温。
性价比占有绝对的优势。随着CAN的批量推广,其成本会进一步降低。
配置参数十分灵活,可以通CAN总线分析软件进行设置。如开关量可以根据厂家需求设置其门限及控制极性(正负控),模拟量可根据厂家提供的传感器阻值曲线,通过软件灵活配置。缩短新车试制时间。
CAN现场总线知识
控制器局域网(CAN)为串行通讯协议,能有效地支持具有很高安全等级的分布实时制。CAN 的应用范围很广,从高速的网络到低价位的多路接线都可以使用CAN。在汽车电子行业里,使用CAN 连接发动机控制单元、传感器、防刹车系统等等,其传输速度可达1 Mbit/s。同时,可以将CAN 安装在气车本体的电子控制系统里,诸如车灯组、电气车窗等等,用以代替接线配线装置。
CAN 被细分为以下不同的层次:
1. CAN 对象层(the object layer)
2.CAN 传输层(the transfer layer)
3.物理层(the phyical layer)
对象层和传输层包括所有由ISO/OSI 模型定义的数据链路层的服务和功能。对象层的作用范围括:
1. 查找被发送的报文。
2. 确定由实际要使用的传输层接收哪一个报文。
3. 为应用层相关硬件提供接口。
传输层的作用主要是传送规则,也就是控制帧结构、执行仲裁、错误检测、出错标定、故障界定。总线上什么时候开始发送新报文及什么时候开始接收报文,均在传输层里确定。位定时的一些普通功能也可以看作是传输层的一部分。