内容发布更新时间 : 2024/11/19 20:37:17星期一 下面是文章的全部内容请认真阅读。
一. CAN总线简介 1. CAN总线的发展历史
20世纪80年代初期,欧洲汽车工业的蓬勃发展,车辆电子信息化程度的也不断提高。当时,由于消费者对于汽车功能的要求越来越多,而这些功能的实现大多是基于电子操作的,这就使得电子装置之间的通讯越来越复杂,同时意味着需要更多的连接信号线,但是传统的线束式汽车电子系统已经不能满足车辆电子信息功能发展的需求。为了解决这一制约现代汽车电子信息化发展的瓶颈,德国Bosch公司设计了一个单一的网络总线,所有的外围器件可以被挂接在该总线上,经过试验,这一总线能够有效解决现代汽车中庞大的电子控制装置之间的通讯,并且能够减少不断增加的信号线。所以在1986年Bosch公司正式公布了这一总线,且命名为CAN总线。
CAN控制器局部网(CAN—Controller Area Network)属于现场总线的范畴,它是一种有效支持分布式控制或实时控制的串行通讯网络,它具有很高的网络安全性、通信可靠性和实时性,简单实用,网络成本低,特别适用于汽车计算机控制系统和环境恶劣、电磁辐射强和振动大的工业环境,因此CAN总线在诸多现场总线中独占鳌头,成为汽车总线的代名词,CAN总线开始进入快速发展时期:
1987年Intel公司生产出了首枚CAN控制器(82526)。不久,Philips公司也推出了CAN 控制器82C200;
1991年,Bosch颁布CAN 2.0技术规范,CAN2.0包括A和B两个部分 为促进CAN以及CAN协议的发展,1992在欧洲成立了国际用户和厂商协会(CAN in Automation,简称CiA),在德国Erlangen注册,CiA总部位于Erlangen。CiA提供服务包括:发布CAN的各类技术规范, 免费下载CAN文献资料, 提供CANopen规范DeviceNet规范;发布CAN产品数据库,CANopen产品指南;提供CANopen验证工具执行CANopen认证测试;开发CAN规范并发布为CiA标准。
1993 年CAN 成为国际标准ISO11898(高速应用)和ISO11519(低速应用); 1993年,ISO颁布CAN国际标准 ISO-11898; 1994年,SAE颁布基于CAN的J1939标准;
2003年,Maybach发布带76个ECU的新车型(CAN,LIN,MOST);
2003年,VW发布带35个ECU的新型Golf。
根据CiA组织统计,截止到2002年底,约有500多家公司加入了这个协会, 协作开发和支持各类CAN高层协议;生产CAN控制器 (独立或内嵌) 厂家, 包括世界上主要半导体生产厂家在内,已有20多家,CAN控制器产品的品种已达110多种,CAN控制器的数量已达210,000,000 枚。CAN接口已经被公认为微控制器(Microcontroller)的标准串行接口,应用在各种分布式内嵌系统。该协会已经为全球应用CAN技术的权威。
2. CAN总线的特点
CAN总线与一般的通信总线相比 ,它的数据通信具有突出的可靠性、 实时性和灵活性。其主要特性如下:
1) 具有较高的性价比。它结构简单,器件容易购置 ,每个节点的价格较低 ,而且开发过程中能充分利用现在的单片机开发工具; 2) 是目前为止唯一有国际标准的现场总线;
3) 为多主方式工作 ,网络上任一节点均可在任意时刻主动向网络上其他节点发送信息而不分主从 ,通信方式灵活 ,且无需站地址等节点信息
4) 网络上的节点信息分成不同的优先级 ,可满足不同的实时要求 ,高优先级的数据最多可在 134μs内得到传输;
5) 采用非破坏性总线仲裁技术 ,当多个节点同时向总线发送信息时,优先级较低的节点会主动地退出发送 ,而最高优先级的节点不受影响地继续传输数据 ,从而大大节省了总线冲突仲裁时间。尤其是在网络负载很重的情况下也不会出现网络瘫痪情况;
6) 只需通过报文滤波即可实现点对点、一点对多点及全局广播等几种方式传送接收数据 ,无需专门的“调度”;
7) 直接通信距离最远可达10 km (速率5 kb/s以下) ,通信速率最高可达 1 Mkb / s (此时通信距离最长为 40 m) ;
8) 节点数主要取决于总线驱动电路,目前可达成110个;
9) 采用短帧结构 ,传输时间短 ,受干扰概率低 ,具有极好的检错效果; 10) 每帧信息都有CRC校验及其他检错措施,保证了数据出错率低; 11) 通信介质可为双绞线、同轴电缆或光纤,选择灵活;
12) 节点在错误严重的情况下具有自动关闭输出功能 ,以使总线上其他节点的操
作不受影响。
自CAN总线问世以来,为满足CAN总线协议的多种应用需求,相继出现了几种高层协议。目前大多数基于CAN总线的网络都采用CAN总线的高层协议。CANopen、DeviceNet和SDS是通常采用的高层协议,适用于任何类型的工业控制局域网应用场合,而CAL则应用于基于标准应用层通信协议的优化控制场合,SAEJ1939则应用于卡车和重型汽车计算机控制系统。其总线规范已被ISO国际标准化组织制定为国际标准,并被公认为是最有前途的现场总线之一。CAN总线的应用范围遍及从高速网络到低成本的多线路网络,广泛应用于控制系统中的各检测和执行机构之间的数据通信。随着控制 、计算机、通信、网络等技术的发展,信息交换沟通的领域正在迅速覆盖从现场设备到控制、管理的各个层次。信息技术的发展引起自动化系统结构的变革,逐步形成以网络集成自动化系统为基础的企业信息系统。现场总线(Fieldbus)就是顺应这一形势发展起来的新技术,成为当今自动化领域技术发展的热点,被誉为自动化领域的计算机局域网。它的出现,标志着自动化领域的又一个新时代的开始,并对该领域的发展产生重要影响。
二、CAN总线基本原理 1、CAN标准
1)CAN总线的分层结构
OSI(Open System Interconnection)开放系统互连参考模型将网络协议分为7
层,由上至下分别为:应用层、表示层、会话层、传输层、网络层、链路层和物理层。国际电工技术委员会定义现场总线模型分为三层:应用层、链路层和物理层。CAN的分层定义与OSI模型一致,使用了七层模型中的应用层、链路层和物理层。CAN技术规范定义了模型最下面的两层:数据链路层和物理层,如图1所示。