文档库 最新最全的文档下载
当前位置:文档库 › 车辆CAN总线概述(完整版)解析

车辆CAN总线概述(完整版)解析

车辆CAN总线概述(完整版)解析
车辆CAN总线概述(完整版)解析

一.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颁布基于CA N的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所示。

图1 CAN总线分层结构

2)CAN协议标准

CAN总线协议现有CAN1.0、CAN1.2、CAN2.0A和CAN2.0B四个版本。CAN2.0A以及以下版本使用标准格式信息帧(11位),CAN2.0B使用扩展格式信息帧(29位)。CAN2.0A 及以下版本在接收到扩展帧信息格式时认为出错;CAN2.0B被动版本接收时忽略29位扩展信息帧,不认为出错;CAN2.0B主动版本能够接收和发送标准格式信息帧和扩展格式信息帧。

3)CAN总线网络基本结构

一般而言,CAN总线网络由若干个具有CAN通信功能的控制单元(又称节点)通过CAN_H和CAN_L两条数据线并联组成,CAN_H和CAN_L两条数据线的两端各安装一个120Ω电阻构成数据保护器,避免数据传输到终端被反射回来而产生反射波,影响数据的传送,如图2所示。汽车CAN总线网络结构示意

图如图3所示。

图2 CAN网络基本结构

图3 汽车CAN总线网络结构示意图

4)CAN总线节点硬件电路框图

一个完整的CAN总线节点应该包含微控制器、CAN控制器和CAN收发器三部分。其中微控制器负责完成CAN控制器的初始化,与CAN控制器的进行数据传递;CAN控制器负责将数据以CAN报文的形式传递,实现CAN协议数据链路层的功能;CAN收发器是CAN控制器与CAN物理总线的接口,为总线提供差动发送功能,也为控制器提供差动接收功能。CAN节点的基本结构框图如图4所示。部分微控制器集成有CAN控制器,因此,节点方案有两种。

图4 CAN节点基本结构框图

5)CAN差分通信

CAN总线的信号传输采用差分通信信号,差分通信具有较强的抗干扰能力。CAN收发器的差动信号放大器在处理信号时,会用CAN_H数据线的电压减去CAN_L数据上的电压,这两个数据线的电位差可对应两种不同逻辑状态进行编码。

在静止状态时,这两条导线上作用有相同预先设定值,该值称为静电平。对于CAN驱动数据总线来说,这个值大约为2.5V。静电平也称为隐性状态,因为连接的所有控制单元均可修改它。在显性状态时,CAN_H线上的电压值会升高一个预定值(对CAN驱动数据总线来说,这个值至少为1V)。而CAN_L线上的电压值会降低一个同样值(对CAN驱动数据总线来说,这个值至少为1V)。于是在CAN驱动数据总线上,CAN_H线就处于激活状态,其电压不低于3.5V (2.5V+1V=3.5V),而CAN_L线上的电压值最多可降至1.5V(2.5V-1V=1.5V)。因此在隐性状态时,CAN_H线与CAN_L线上的电压差为0V,在显性状态时该差值最低为2V,如图5所示。如果CAN_H–CAN_L > 2,那么比特为0,为显

性;如果CAN_H–CAN_L = 0,那么比特为1,为隐性。

图5 CAN数据线的电平

2、CAN总线通信原理

当CAN总线上的一个节点(站)发送数据时,它以报文形式广播给网络中所有节点。对每个节点来说,无论数据是否是发给自己的,都对其进行接收。每组报文开头的11位字符为标识符,定义了报文的优先级,这种报文格式称为面向内容的编址方案。在同一系统中标识符是唯一的,不可能有两个站发送具有相同标识符的报文。当一个站要向其它站发送数据时,该站CPU将要发送的数据和自己的标识符传送给本站的CAN控制器芯片,并处于准备状态;当它收到总线分配时,转为发送报文状态。CAN控制器芯片将数据根据协议组织成一定的报文格式发出,这时网上的其它站处于接收状态。每个处于接收状态的站对接收到的报文进行检测,判断这些报文是否是发给自己的,以确定是否接收它。

当多个站点同时发送消息时,需要进行总线仲裁,每个控制单元在发送信息时通过发送发送标识符来识别。所有的控制单元都是通过各自的RX线来跟踪总线上的一举一动并获知总线的状态。每个发射器将TX线和RX线的状态一位一位地进行比较,采用“线与”机制,“显性”位可以覆盖“隐性”位;只有所有节点都发送“隐性”位,总线才处于“隐性”状态。CAN是这样来进行调整的:TX信号上加有一个“0”的控制单元的控制单元必须退出总线。用标识符中位于前部的“0”的个数就可调整信息的重要程度,从而就可保证按重要程度的顺序来发送信息。标识符中的号码越小,表示该信息越重要,优先级越高。发送低优先级报文的节点退出仲裁后,在下次总线空闲时重发报文。三个节点总线仲裁示

意图如图6所示。

图6 总线仲裁示意图

3、CAN报文帧结构

CAN总线报文传输由以下4个不同的帧类型所表示和控制:

数据帧:数据帧携带数据从发送器至接收器。

远程帧:总线单元发出远程帧,请求发送具有同一识别符的数据帧。

错误帧:任何单元检测到一总线错误就发出错误帧。

过载帧:过载帧用以在先行的和后续的数据帧(或远程帧)之间提供一附加的延时。

数据帧(或远程帧)通过帧间空间与前述的各帧分开。

1)数据帧由7 个不同的位场组成:帧起始、仲裁场、控制场、数据场、CRC 场、应答场、帧结尾。数据场的长度可以为0。

2)远程帧由6 个不同的位场组成:帧起始、仲裁场、控制场、CRC 场、应答场、帧末尾。通过发送远程帧,作为某数据接收器的站通过其资源节点对不同的数据传送进行初始化设置。与数据帧相反,远程帧的RTR 位是“隐性”的。它没有数据场,数据长度代码的数值是不受制约的(可以标注为容许范围里0 (8)

的任何数值)。此数值是相应于数据帧的数据长度代码。

3)错误帧由两个不同的场组成。第一个场用作为不同站提供的错误标志(ERROR FLAG)的叠加。第二个场是错误界定符。

4)过载帧包括两个位场:过载标志和过载界定符。

4、错误检测

不同于其它总线,CAN协议不能使用应答信息。事实上,它可以将发生的任何错误用信号发出。CAN协议可使用五种检查错误的方法,其中前三种为基于报文内容检查。

1)循环冗余检查(CRC)

CR序列包括发送器的CRC计算结果。接收器计算CRC的方法与发送器相同。如果计算结果与接收到CRC序列的结果不相符,则检测到一个CRC错误。

2)帧检查

这种方法通过位场检查帧的格式和大小来确定报文的正确性,用于检查格式上的错误。

3)应答错误

被接收到的帧由接收站通过明确的应答来确认。如果发送站未收到应答,那么表明接收站发现帧中有错误,也就是说,ACK场已损坏或网络中的报文无站接收。

4)总线检测

CAN中的一个节点可监测自己发出的信号。因此,发送报文的站可以观测总线电平并探测发送位和接收位的差异。

5)位填充

一帧报文中的每一位都由不归零码表示,可保证位编码的最大效率。然而,如果在一帧报文中有太多相同电平的位,就有可能失去同步。为保证同步,在五个连续相等位后,发送站自动插入一个与之互补的补码位。接收时,这个填充位被自动丢掉。例如,五个连续的低电平位后,CAN自动插入一个高电平位。CAN 通过这种编码规则检查错误,如果在一帧报文中有6个相同位,CAN就知道发生了错误。

三.车辆CAN总线及关键技术国内外发展现状

1. 车辆CAN总线国内外发展现状

如今,CAN总线现已成为汽车电子控制装置之间通信的标准总线,在汽车分布式控制系统中得到了广泛的应用。同时,CAN总线得到Motorola、Intel、Philips

等著名半导体器件生产厂家的广泛支持,他们纷纷推出了CAN接口芯片与直接带有CAN接口的微控制器(MCU)芯片,如Intel公司的82527,Philips公司的SJA1000、82C250等。因此在接口芯片技术方面,CAN已遥遥领先于其他的现场总线,正逐步形成系列。到目前为至,世界上已拥有20多家CAN总线控制器芯片生产商,110多种CAN总线协议控制器芯片和集成CAN总线协议控制器的微控制器芯片。

总线系统对于汽车行业,特别是对于我国的汽车行业来说还是一项新生事物,总线系统和传统汽车电器有着本质的不同。从研发、应用和维护出发,为整车提供一个安全可靠的总线系统,以达到以“X~BY~WIRE”的目标还需要业界付出长期的努力。为了加速我国汽车总线技术的标准化进程,在“十五”期间,科技部连续五年支持电动汽车总线通信协议方面的研究工作,国家汽车标准化组织也成立了《商用车控制系统局域网络(CAN总线)通讯协议》起草小组。其中电动汽车总线通信协议以J1939为基础,并针对电动汽车的特点进行了补充。根据目前得到的信息,《商用车控制系统局域网络(CAN总线)通讯协议》是完全基于J1939的,同时国内一些单位也研发出符合J1939的汽车智能零部件。2002年中国首辆CAN网络系统混合动力轿车(HEV) 在奇瑞公司试装成功,并进行了初步试运行,这标志着中国在混合动力轿车项目上取得突破性进展;2008年深圳航盛公司去年推出了第一款带CAN总线的车载CD/MP3播放器,该产品具有AM/FM收音功能、CD/MP3播放功能,带CAN BUS总线、蓝牙免提接口、中文显示及数字信号处理芯片,音质优美动听。该产品结构设计独特,获得国家发明专利。我国的CAN总线时代也正在来临。目前,支持CAN协议的有英特尔、摩托罗拉、惠普、西门子、M I CROCH IP、NEC、SI L I ON I等著名公司。欧洲大部分汽车制造商,如宝马、保时捷、劳斯莱斯、大众、沃尔沃、雷诺等都已经使用了CAN总线。奔驰公司生产的大部分轿车和载货汽车都使用基CAN的发动机管理系统,它的传送速度为500 kb / s。国产的很多汽车上也引入了CAN 总线技术,如大众途安、帕萨特、东风雪铁龙赛纳、东风标致307、苏州金龙、一汽大众宝来、斯太尔王系列等车型。

国内较早研究CAN总线的有北京航空航天大学、清华大学、中国汽车技术研究中心等单位,不过目前的研究还处于起步阶段。研制生产CAN元器件的

厂家很少,具有自主知识产权的专用芯片更少。目前国内主要主要从事CAN总线部分研发生产的企业见下表:

2. 车辆CAN总线关键技术及发展现状

CAN总线关键技术主要包含两方面:硬件和软件。硬件主要为微控制器、CAN控制器和CAN收发器。软件主要是节点控制程序和CAN总线网络应用层协议。

微控制器依功能性能分为4位、8位、16位、32位和64位。然而,目前主

力的市场集中在8位、16位和32位,这三种等级正好适用低、中、高端三种车用电子应用。CAN控制器分为独立的CAN控制器和集成CAN控制器,它能够实现协议中的实体层及数据链接层的功能,达成位同步、优先权仲裁和故障诊断等要求。CAN收发器是CAN协议控制器与物理总线之间的接口。它可以为总线提供差动的发送功能,为控制器提供差动的接收功能,是CAN系统中的必须设备。到目前为至,微控制器技术比较成熟,可供选择的种类也较多。而对于CAN 控制器和收发器,世界上已拥有20多家CAN总线控制器芯片生产商,110多种CAN总线协议控制器芯片和集成CAN总线协议控制器的微控制器芯片。主要生产厂家有英特尔、摩托罗拉、惠普、西门子、飞利浦、MICROCHIP、NEC、SLICON、飞思卡尔、英飞凌(西门子)、瑞萨、ST、TI、安森美、科动、富士通、Atmel、Altera、CAST等。CAN控制器主要有四类:独立CAN控制器、单片机集成CAN 控制器、DSP集成CAN控制器和ARM集成CAN控制器,如飞利浦公司的SJA1000独立CAN控制器、NXP公司的单片机P87C591集成CAN控制器、TI 公司S2000系列的集成CAN控制器功能的TMS320C28X系列DSP和TI公司S2000系列的集成CAN控制器功能的ARM芯片等。所以,CAN总线系统硬件设计主要是根据节点功能需求,选择合适的控制芯片。

CAN总线软件设计除了节点控制程序设计之外,更主要的是应用层协议开发。许多系统中,可以特别制定一个适合的应用层,但对于许多的行业来说,这种方法是不经济的。一些组织已经研究并开放了应用层标准,一些可以使用的CAN应用层协议有:CiACAL、CiACANOpen、ODV A DeviceNet、Honeywell SDS、Kvaser CANKingdom,SAE J1939。

因此,汽车CAN总线的研究重点是:针对具体的车型开发ECU的硬件和应用层的软件,并构建车内网络。利用CAN总线构建一个车内网络,需要解决的关键技术问题有:

(1) 总线传输信息的速率、容量、优先等级、节点容量等技术问题;

(2) 高电磁干扰环境下的可靠数据传输;

(3) 确定最大传输时的延时大小;

(4) 网络的容错技术;

(5) 网络的监控和故障诊断功能;

can总线协议完全解析

CAN总线协议解析 李玉丽 (吉林建筑工程学院电气与电子信息工程学院,吉林长春,130021 ) 摘要:现场总线的发展与应用引起了传统控制系统结构的改变。控制局域网(C AN)总线因其自身的特点被广泛应用于 自动控制领域。本文对C AN总线协议作了详尽解析。 关键词:C AN总线;隐性位;显性位;节点 中图分类号:T U 85 文献标识码:A CAN(Cont roll e r A rea N et work)是分布式实时控 制系统的串行通信局域网,称谓CAN总线。在数据 实时传输中,设计独特、低成本,具有高可靠性,得到 广泛应用。 本文着重解析C AN 技术规范2.0B 版的CAN 的分层结构规范和CAN 报文结构规范。重点在于 充分理解CAN总线协议精髓,有助于CAN总线的 局网设计、软件编程、局网维护。 一、C AN的分层结构 CAN 遵从O SI ( Ope n Syste m I nte rc onnec ti on Re fe re nce Mode l ) 模型,其分层结构由高到低如图1 所示。 图1 C AN的分层结构 对应OSI 模型为两层,实际为三层,即LLC、 MA C、PL S。由此而知,对应于CAN总线系统每个 节点都是三层结构。数据发送节点数据流为LLC→ MA C→P LS ,然后将数据发送到总线上;而对于挂在 总线上的所有节点(包括发送节点)的接收的数据流 为PL S→MA C→LLC。 这种分层结构的规范保证了CAN 总线的多主 方式工作模式,即不分主从,非破坏性的仲裁工作模 式。而LLC 层的报文滤波功能可实现点到点、一点 对多点、全局广播、多点对一点,多点对多点等数据 传递方式。 各分层主要功能如下: LLC 层:接收滤波、超载通知、恢复管理; MAC 层:控制帧结构、执行仲裁、错误检测、出 错标定、故障界定。该层是CAN的核心; PL S 层:位编码/ 解码、位定时。 二、CAN总线的报文规范 CAN报文的传送有4 种不同类型的帧结构,数 据帧、远程帧、出错帧、超载帧。CA B2.0B 有4 种帧 格式。 (一)数据帧

车辆can总线概述完整版)

一.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颁布基于CA N的J1939标准;

车辆CAN总线概述完整版

车辆C A N总线概述完整 版 The final revision was on November 23, 2020

一.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 技术规范,包括A和B两个部分 为促进CAN以及CAN协议的发展,1992在欧洲成立了国际用户和厂商协会(CAN in Automation,简称CiA),在德国Erlangen注册,CiA总部位于Erlangen。CiA提供服务包括:发布CAN的各类技术规范,免费下载CAN文献资料,提供

CAN总线技术详解

CAN总线技术详解 起源 20世纪80年代,Robert Bosch 公司在SAE(汽车工程协会)大会上介绍了一种新型的串行总线CAN控制器局域网,那也是CAN 诞生的时刻。今天,在欧洲几乎每一辆新客车均装配有CAN 局域网。同样,CAN也用于其他类型的交通工具,从火车到轮船或者用于工业控制。CAN 已经成为全球范围内最重要的总线之一甚至领导着串行总线。CAN总线的工作原理 CAN总线使用串行数据传输方式,可以1Mb/s的速率在40m的双绞线上运行,也可以使用光缆连接,而且在这种总线上总线协议支持多主控制器。CAN与I2C总线的许多细节很类似,但也有一些明显的区别。 当CAN总线上的一个节点(站)发送数据时,它以报文形式广播给网络中所有节点。对每个节点来说,无论数据是否是发给自己的,都对其进行接收。每组报文开头的11位字符为标识符,定义了报文的优先级,这种报文格式称为面向内容的编址方案。在同一系统中标识符是唯一的,不可能有两个站发送具有相同标识符的报文。当几个站同时竞争总线读取时,这种配置十分重要。 当一个站要向其它站发送数据时,该站的CPU将要发送的数据和自己的标识符传送给本站的CAN芯片,并处于准备状态;当它收到总线分配时,转为发送报文状态。CAN芯片将数据根据协议组织成一定的报文格式发出,这时网上的其它站处于接收状态。每个处于接收状态的站对接收到的报文进行检测,判断这些报文是否是发给自己的,以确定是否接收它。 由于CAN总线是一种面向内容的编址方案,因此很容易建立高水准的控制系统并灵活地进行配置。我们可以很容易地在CAN总线中加进一些新站而无需在硬件或软件上进行修改。当所提供的新站是纯数据接收设备时,数据传输协议不要求独立的部分有物理目的地址。它允许分布过程同步化,即总线上控制器需要测量数据时,可由网上获得,而无须每个控制器都有自己独立的传感器。

汽车CAN总线基础知识

CAN总线协议 控制器局域网总线(CAN,Controller Area Network)是一种用于实时应用的串行通讯协议总线,它可以使用双绞线来传输信号,是世界上应用最广泛的现场总线之一。CAN协议用于汽车中各种不同元件之间的通信,以此取代昂贵而笨重的配电线束。该协议的健壮性使其用途延伸到其他自动化和工业应用。CAN协议的特性包括完整性的串行数据通讯、提供实时支持、传输速率高达1Mb/s、同时具有11位的寻址以及检错能力。 CAN总线发展 控制器局域网CAN( Controller Area Network)属于现场总线的范畴,是一种有效支持分布式控制系统的串行通信网络。是由德国博世公司在20世纪80年代专门为汽车行业开发的一种串行通信总线。而且能够检测出产生的任何错误。当信号传输距离达到10km时,CAN仍可提供高达50kbit/s的数据传输速率。 CAN总线的工作原理 CAN总线使用串行数据传输方式,可以1Mb/s的速率在40m的双绞线上运行,也可以使用光缆连接,而且在这种总线上总线协议支持多主控制器。[1]CAN与I2C总线的许多细节很类似,但也有一些明显的区别。当CAN总线上的一个节点(站)发送数据时,它以报文形式广播给网络中所有节点。对每个节点来说,无论数据是否是发给自己的,都对其进行接收。每组报文开头的11位字符为标识符,定义了报文的优先级,这种报文格式称为面向内容的编址方案。在同一系统中标识符是唯一的,不可能有两个站发送具有相同标识符的报文。当几个站同时竞争总线读取时,这种配置十分重要。 当一个站要向其它站发送数据时,该站的CPU将要发送的数据和自己的标识符传送给本站的CAN芯片,并处于准备状态;当它收到总线分配时,转为发送报文状态。CAN芯片将数据根据协议组织成一定的报文格式发出,这时网上的其它站处于接收状态。每个处于接收状态的站对接收到的报文进行检测,判断这些报文是否是发给自己的,以确定是否接收它。由于CAN总线是一种面向内容的编址方案,因此很容易建立高水准的控制系统并灵活地进行配置。我们可以很容易地在CAN总线中加进一些新站而无需在硬件或软件上进行修改。当所提供的新站是纯数据接收设备时,数据传输协议不要求独立的部分有物理目的地址。它允许分布过程同步化,即总线上控制器需要测量数据时,可由网上获得,而无须每个控制器都有自己独立的传感器。 CAN总线在空闲(没有节点传输报文)时是一直处于隐性状态。当有节点传输报文时显性覆盖隐性,由于CAN总线是一种串行总线,也就是说报文是一位一位的传输的,而且是数字信号(0和1),1代表隐性,0代表显性。在传送报文的过程中是显隐交替的,就像二进制数字0101001等,这样就能把信息发送出去,而总线空闲的时候是一直处于隐性的。 CAN总线特征 (1)报文(Message)总线上的数据以不同报文格式发送,但长度受到限制。当总线空闲时,任何一个网络上的节点都可以发送报文。 (2)信息路由(Information Routing)在CAN中,节点不使用任何关于系统配置的报文,比如站地址,由接收节点根据报文本身特征判断是否接收这帧信息。因此系统扩展时,不用对应用层以及任何节点的软件和硬件作改变,可以直接在CAN中增加节点。 (3)标识符(Identifier) 要传送的报文有特征标识符(是数据帧和远程帧的一个域),它给出的不是目标节点地址,而是这个报文本身的特征。信息以广播方式在网络上发送,所有节点都可以接收到。节点通过标识符判定是否接收这帧信息。

(完整版)CAN总线解析

一、概述 CAN(Controller Area Network)即控制器局域网,是一种能够实现分布式实时控制的串行通信网络。 想到CAN就要想到德国的Bosch公司,因为CAN就是这个公司开发的(和Intel)CAN 有很多优秀的特点,使得它能够被广泛的应用。比如:传输速度最高到1Mbps,通信距离最远到10KM,无损位仲裁机制,多主结构。 近些年来,CAN控制器价格越来越低,很多MCU也集成了CAN控制器。现在每一辆汽车上都装有CAN总线。 一个典型的CAN应用场景: 二、CAN总线标准 CAN总线标准只规定了物理层和数据链路层,需要用户来自定义应用层。不同的CAN标准仅物理层不同。

CAN收发器负责逻辑电平和物理信号之间的转换,将逻辑信号转换成物理信号(差分电平)或者将物理信号转换成逻辑电平。 CAN标准有两个,即IOS11898和IOS11519,两者差分电平特性不同。(有信号时,CANH 3.5V,CANL 1.5V,即显性;没有信号时,CANH 2.5V,CANL 2.5V,即隐性) IOS11898高速CAN电平中,高低电平的幅度低,对应的传输速度快。 双绞线共模消除干扰,是因为电平同时变化,电压差不变。 2.1物理层 CAN有三种接口器件

多个节点连接,只要有一个为低电平,总线就为低电平,只有所有的节点都输出高电平时,才为高电平。所谓“线与”。 CAN总线有5个连续性相同的位后,就会插入一个相反位,产生跳变沿,用于同步。从而消除累计误差。 和485、232一样,CAN的传输速度与距离成反比。 CAN总线终端电阻的接法:

特点:低速CAN在CANH和CANL上串入2.2kΩ的电阻;高速CAN在CANH和CANL 之间并入120Ω电阻。为什么是120Ω,因为电缆的特性阻抗为120Ω,为了模拟无限远的传输线。(因为大多数双绞线电缆特性阻抗大约在100~120Ω。) 120欧姆只是为了保证阻抗完整性,消除回波反射,提升通信可靠性的,因此,其只需要在总线最远的两端接上120欧姆电阻即可,而中间节点并不需要接(接了反而有可能会引起问题)。因此各位在使用CAN Omega做CAN总线侦听的时候,大多数情况下是不需要这个120欧姆电阻的,当然,即使当前网络中并没有终端匹配电阻,只要传输线长度不长(比如SysCan360比赛环境中,传输线只有1-2米)CAN节点数量不多的情况下,不要这个120欧姆电阻也完全可以工作,甚至,你接任意电阻都是不会有影响的。因为此时传输线长度和波长还相差甚远,节点不多的情况下,反射波的叠加信号强度也不会很强,因此传输线效应完全可以忽略。 而哪些情况需要呢,主要就是,当使用2个CAN Omega对发或者当前网络中仅有2个CAN设备的时候,此时两个端点最好都加上终端匹配电阻,当然,前面也说过了,传输线长度不长的时候,也可以不需要2端120欧姆电阻,但为了信号完整性考虑,加上这两个电阻才是严谨的。 2个120欧姆电阻的意义在于,使用USB CAN调试某些不带终端电阻的中间节点设备时,有时候CAN总线上没有2个120欧姆电阻通信可能会异常,此时可以接入2个120欧姆电阻作为2个终端电阻来作阻抗匹配,这时候其他端点不应接入任何终端电阻!并且,这2个120欧姆电阻不可用1个60欧姆电阻代替!

车辆CAN总线概述(完整版)

CAN总线简介 1. CAN总线的发展历史 20 世纪80年代初期,欧洲汽车工业的蓬勃发展,车辆电子信息化程度的也不断提高。当时,由于消费者对于汽车功能的要求越来越多,而这些功能的实现大多是基于电子操作的,这就使得电子装置之间的通讯越来越复杂,同时意味着需要更多的连接信号线,但是传统的线束式汽车电子系统已经不能满足车辆电子信息功能发展的需求。为了解决这一制约现代汽车电子信息化发展的瓶颈,德国Bosch 公司设计了一个单一的网络总线,所有的外围器件可以被挂接在该总线上,经过试验,这一总线能够有效解决现代汽车中庞大的电子控制装置之间的通讯,并且能够减少不断增加的信号线。所以在1986年Bosch公司正式公布了这一总线,且命名为CAN总线。 CAN空制器局部网(CAN-Controller Area Network )属于现场总线的范畴,它是一种有效支持分布式控制或实时控制的串行通讯网络,它具有很高的网络安全性、通信可靠性和实时性,简单实用,网络成本低,特别适用于汽车计算机控制系统和环境恶劣、电磁辐射强和振动大的工业环境,因此CAN总线在诸多现场总线中独占鳌头,成为汽车总线的代名词,CAN总线开始进入快速发展时期:1987年Intel公司生产出了首枚CAN空制器(82526)。不久,Philips 公司也推出了CAN控制器82C20Q 1991年,Bosch颁布CAN 2.0技术规范,CAN2.0包括A和B两个部分 为促进CAN以及CAN协议的发展,1992在欧洲成立了国际用户和厂商协会(CANn Automation,简称CiA),在德国Erlangen 注册,CiA 总部位于Erlangen。CiA提供服务包括:发布CAN勺各类技术规范,免费下载CAN文献资料,提供CANope规范DeviceNet规范;发布CAN产品数据库,CANoper产品指南;提供CANopen验证工具执行CANope认证测试;开发CAN规范并发布为CiA 标准。 1993年CAN成为国际标准£011898(高速应用)和£011519(低速应用); 1993 年,ISO 颁布CANS际标准ISO-11898 ; 1994年,SAE颁布基于CAN的J1939标准; 2003 年,Maybach发布带76 个ECU的新车型(CAN LIN,MOS);

CAN总线技术讲解

摘要: 随着工业测控技术和生产自动化技术的不断进步,传统的RS-232、RS-485和CCITTV.24通信技术已不能适应现代化的工业控制需要,而现场总线(Fieldbus)以其低廉的价格、可靠的性能而逐步成为新型的工业测控领域的通信技术。现场总线是应用在生产现场,在微机化测量控制设备之间实现双向串行多节点数字通信的系统,是一种开放式、数字化、多点通信的底层控制网络。汇集了计算机技术、网络通信技术和自动控制技术(3C)的现场总线技术,从20世纪80年代开始发展起来,并逐步在制造业、流程工业、交通、楼宇等方面的自动化系统中得到了广泛的重视和应用。现场总线主要有以下几种类型[1-3]:基金会现场总线(FF)、LonWorks、ProfiBus、CAN、HART,而其中CAN即控制器局域网因为具有高性能、高可靠性以及独特的设计而越来越受到关注,现已形成国际标准,被公认为几种最有前途的现场总线之一。 Abstract: As industrial measurement and control technology and production automation technology advances, the traditional RS - 232, RS - 485 and CCITTV. 24 communication technology can not meet the needs of modern industrial control, and field bus (Fieldbus), with its low price, reliable performance, and gradually become a new kind of communication technology in the field of industrial measurement and control. Field bus is used in production field, between microcomputer-based measuring control equipment to realize the bidirectional serial multi-node digital communication system, is a kind of open, digital, multipoint communication bottom control network. Brings together computer technology, network communication technology and automatic control technology (3 c) field bus technology, developed in the 1980 s, and gradually in the manufacturing and process industries, transportation, building automation system has been widely attention and application. Fieldbus basically has the following several types: [1-3] foundation fieldbus (FF), LonWorks, ProfiBus, CAN, HART, and which CAN namely controller local area network (LAN) because of the high performance, high reliability and unique design is more and more attention, already formed the international standard, is recognized as one of the most promising fieldbus.

汽车CAN总线基础知识

CAN总线协议 控制器局域网总线(CAN, Controller Area Network )是一种用于实时应用的串行通讯协议总线,它可以使用双绞线来传输信号,是世界上应用最广泛的现场总线之一。CAN协议用于汽车中各种不同元件之间的通信,以此取代昂贵而笨重的配电线束。该协议的健壮性使其 用途延伸到其他自动化和工业应用。CAN协议的特性包括完整性的串行数据通讯、提供实时 支持、传输速率高达1Mb/s、同时具有11位的寻址以及检错能力。 CAN总线发展 控制器局域网CAN( Controller Area Network)属于现场总线的范畴,是一种有效支持分布式控制系统的串行通信网络。是由德国博世公司在20世纪80年代专门为汽车行业开发的一种串行通信总线。而且能够检测出产生的任何错误。当信号传输距离达到10km时,CAN仍可提供高达50kbit/s的数据传输速率。 CAN总线的工作原理 CAN总线使用串行数据传输方式,可以1Mb/s的速率在40m的双绞线上运行,也可以 使用光缆连接,而且在这种总线上总线协议支持多主控制器。[1]CAN与I2C总线的许多细节 很类似,但也有一些明显的区别。当CAN总线上的一个节点(站)发送数据时,它以报文形式 广播给网络中所有节点。对每个节点来说,无论数据是否是发给自己的,都对其进行接收。每组报文开头的11位字符为标识符,定义了报文的优先级,这种报文格式称为面向内容的编址方案。在同一系统中标识符是唯一的,不可能有两个站发送具有相同标识符的报文。当几个站同时竞争总线读取时,这种配置十分重要。 当一个站要向其它站发送数据时,该站的CPU将要发送的数据和自己的标识符传送给 本站的CAN芯片,并处于准备状态;当它收到总线分配时,转为发送报文状态。CAN芯片将数据根据协议组织成一定的报文格式发出,这时网上的其它站处于接收状态。每个处于接 收状态的站对接收到的报文进行检测,判断这些报文是否是发给自己的,以确定是否接收它。 由于CAN总线是一种面向内容的编址方案,因此很容易建立高水准的控制系统并灵活地进行配置。我们可以很容易地在CAN总线中加进一些新站而无需在硬件或软件上进行修改。 当所提供的新站是纯数据接收设备时,数据传输协议不要求独立的部分有物理目的地址。它允许分布过程同步化,即总线上控制器需要测量数据时,可由网上获得,而无须每个控制器 都有自己独立的传感器。 CAN总线在空闲(没有节点传输报文)时是一直处于隐性状态。当有节点传输报文时显性覆盖隐性,由于CAN总线是一种串行总线,也就是说报文是一位一位的传输的,而且是数字信号(0和1),1代表隐性,0代表显性。在传送报文的过程中是显隐交替的,就像二进制数字0101001等,这样就能把信息发送出去,而总线空闲的时候是一直处于隐性的。 CAN总线特征 (1)报文(Message)总线上的数据以不同报文格式发送,但长度受到限制。当总线空闲时, 任何一个网络上的节点都可以发送报文。 ⑵信息路由(Information Routing)在CAN中,节点不使用任何关于系统配置的报文,比 如站地址,由接收节点根据报文本身特征判断是否接收这帧信息。因此系统扩展时,不用对应用层以及任何节点的软件和硬件作改变,可以直接在CAN中增加节点。 (3) 标识符(Identifier)要传送的报文有特征标识符(是数据帧和远程帧的一个域),它给出的不是目标节点地址,而是这个报文本身的特征。信息以广播方式在网络上发送,所有节点都可以接收到。节点通过标识符判定是否接收这帧信息。

汽车CAN总线简介

汽车C A N总线简介 我们在了解汽车结构时常常接触到CAN总线这个名词,在工程实际中CAN总线是对汽车中标准的串行数据传输系统的习惯叫法。CAN的英文全称是:Controller Area Network,意思是区域网络控制器,最早是用于智能化住宅小区的信息传输,总线则源自计算机,因为其功能和计算机中的“BUS”类似。 现代汽车中所使用的电子控制系统和通讯系统越来越多,如发动机电控系统、自动变速器控制系统、防抱死制动系统(ABS)、自动巡航系统(ACC)和车载多媒体系统等,这些系统之间。系统和汽车的显示仪表之间,系统和汽车故障诊断系统之间均需要进行数据交换,如此巨大的数据交换量,如仍然采用传统数据交换的方法,即用导线进行点对点的连接的传输方式将是难以想象的,据统计,如采用普通线索,一个中级轿车就需要线索插头300个左右,插针总数将达到2000个左右,线索总长超过1. 6Km,不但装配复杂而且故障率会很高。因此,用串行数据传输系统取而代之就成为必然的选择。 数据在串联总线上可以一个接一个的传送,所有参加CAN总线的分系统都可以通过其控制单元上的CAN总线接口进行数据的发送和接收,CAN总线是一个多路传输系统,当某一单元出现故障时不会影响其他单元的工作,CAN总线对不同数据的传输速率不一样,对发动机电控系统和ABS等实时控制用数据实施高速传输,速率为125K波特~1M波特,对车身调节系统(如空调)的数据实施低速传输,传输速率在1 0~125K波特,其他如多媒体系统和诊断系统则为中速传输,速率在两者之间,这样的区分提高了总线的传输效率。 数据总线如何能实现多路传输的呢?原来数据总线有三部分组成:1)数据传输线,2)地址传输线,3)发送单元和接收单元之间的传送控制线。数据按CPU的指令以一定的模式传输到指定的地址,而传输模式是由软件控制的。

CAN总线技术在汽车中的应用

技术导向 CAN总线技术在汽车中的应用 【摘要】文章首先概述了CAN总线技术,并详细阐述了CAN总线技术的特点和优点,及其结构和数据,传输原理,从而引出CAN总线研究的重点、关键技术及其在现代汽车上的应用现状和发展趋势。 【主题词】CAN总线汽车应用 前言 近20年来,随着现代电子技术、信息技术的发展,汽车上由电子控制单 元(ECU)控制的部件数量越来越多,例如,数字式电控燃油喷射系统(DEFI)、 废气再循环控制系统(EGR)、防抱死制动系统(ABS)、防滑控制系统(ASR)、 牵引力控制系统(TRC)、车辆稳定控制系统(VSC)、巡航系统(CCS)等等。 大量传感器、集成电路和计算机芯片等电子元器件在汽车上的广泛应用, 在提高汽车动力性、经济性、舒适性和安全性的同时,也带来其他问题: (1)电子设备的大量应用必然导致车身布线愈来愈复杂、运行可靠性降低、故障维修难度增大,必然造成庞大的布线系统。比如在沃尔沃公司生产的S80型轿车中,所安装的电缆长达1200 m,有54根保险丝。从材料成本和工作效率看,传统布线方法都将不能适应汽车的发展。 (2)上述DEFI、EGR、ABS、ASR等子系统对控制信息的共享和实时性的要求,需要共享发动机转速、车轮转速、油门踏板位置等公共数据,同时各个子系统对实时性的要求因为数据的更新速率和控制周期的不同而有 差别。传统的线缆已远远不能满足这种需求。 (3)为了使不同厂家生产的部件能在同一辆汽车中协调工作,必须按照

某种约定的标准来解决其状态信号和控制信息的传递问题。针对上述问题,在借鉴计算机网络技术和现场控制技术的基础上,诞生了各种适用于汽车环境的汽车网络技术。经过长时间发展,已形成Hart、Lonworks、Profibus、Bitbus及CAN等多种现场总线协议。CAN是控制器局域网络的简称,它由德国的Bosch公司及几个半导体生产商开发的,CAN总线是一种串行多主站控制器局域网总线。它具有很高的网络安全性、通讯可靠性和实时性,简单实用,网络成本低。特别适用于汽车计算机控制系统和环境温度恶劣、电磁辐射强和振动大的工业环境。因此CAN总线在诸多总线中独占鳌头,逐渐成为汽车总线的代名词。 1、CAN总线技术的特点和优点 CAN总线与一般的通信总线相比,它的数据通信具有突出的可靠性、实时性和灵活性。其主要特性如下: (1)具有较高的性价比。它结构简单,器件容易购置,每个节点的价格较低,而且开发过程中能充分利用现在的单片机开发工具; (2)是目前为止唯一有国际标准的现场总线; (3)为多主方式工作,网络上任一节点均可在任意时刻主动向网络上其他节点发送信息而不分主从,通信方式灵活,且无需站地址等节点信息; (4)网络上的节点信息分成不同的优先级, 可满足不同的实时要求,高优先级的数据最多可在134μs内得到传输; (5)采用非破坏性总线仲裁技术,当多个节点同时向总线发送信息时,优先级较低的节点会主动地退出发送,而最高优先级的节点不受影响地继续传输数据,从而大大节省了总线冲突仲裁时间。尤其是在网络负载很重的情

车辆CAN总线概述(完整版)

一.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国际标准ISO11898; 1994年,SAE颁布基于CA N得J1939标准; 2003年,Maybach发布带76个ECU得新车型(CAN,LIN,MOST); 2003年,VW发布带35个ECU得新型Golf。

汽车CAN总线基础-CAN总线简介

汽车CAN总线基础-CAN总线简介 1. CAN 的介绍1.1 CAN 是什么CAN 是Controller Area Network 的缩写(以下称为CAN),是ISO 国际标准化的串行通信协议。1.2 CAN 的起源汽车CAN 总线是20 世纪80 年代初德国Bosch 公司为解决现代汽车中众多控制单元、测试仪器之间的实时数据交换而开发的一种串行通信协议。传统汽车线束连接 如图1.21。在当前的汽车产业中,出于对安全性、舒适性、方便性、低公害、 低成本的要求,各种各样的电子控制系统被开发了出来。由于这些系统之间通 信所用的数据类型及对可靠性的要求不尽相同,由多条总线构成的情况很多, 线束的数量也随之增加。为适应减少线束的数量,通过多哥LAN,进行大量数 据的高速通信的需要,1986 年德国电气商博世公司开发出面向汽车的CAN 通 信协议。此后,CAN 通过ISO11898 及ISO11519 进行了标准化,现在在欧洲 已是汽车网络的标准协议。现在,CAN 总线的高性能和可靠性已被认同,并被 广泛地应用于工业自动化、船舶、医疗设备、工业设备等方面。在汽车上的应用,CAN 节点已经达到最多90 个电子控制节点了。1.1 CAN 的发展史※1983 年,Bosch 开始研究车上的网络技术;※1986 年,Bosch 在SAE 大会公布 CAN 协议;※1987 年,Intel 与Philips 先后推出CAN 控制器芯片;※1991 年,Bosch 颁布CAN2.0 技术规范,CAN2.0 包括A 和B 两个部分;※1991 年,CAN 总线最先在Benz S 系列轿车上实现;※1993 年,ISO 颁布CAN 国际标准ISO-11898;※1994 年,SAE 颁布基于CAN 的J1939 标准;※2003 年,Maybach 颁布带76 个ECU 的新车型(CAN、LIN、MOST);※2003 年,VW 颁布了带35ECU 的新车型Golf;※未来,CAN 总线将部分被FlexRay 所取代,但是CAN 总线将会被持续应用相当长的时间。1.2 CAN 的特性※多主结构依 据优先权进行总线访问;※无破坏性的基于优先权的逐位仲裁;※借助验收滤

CAN总线教程详解

工作原理 当CAN 总线上的一个节点(站)发送数据时,它以报文的形式广播给网络中所有节点,对每个节点来说,无论数据是否是发给自己的,都对其接收。 每组报文开头的11 位字符为标识符,定义了报文的优先级,这种报文格式成为面向内容的编制方案。同一系统中标识符是唯一的,不可能有两个站发送具有相同标识符的报文,当几个站同时竞争总线读取时,这种配置十分重要。 大体的工作原理我们搞清了,但是根本的协议我们还要花一番功夫。下面介绍一个重要的名词,“显性”和“隐性”:首先CAN 数据总线有两条导线,一条是黄色的,一条是绿色的------分别是CAN_High 线和CAN_Low 线,当静止状态时,这两条导线上的电平一样,这个电平称为静电平,大约为2.5 伏。 这个静电平状态就是隐形状态,也称隐性电平,也就是没有任何干扰的时候的状态称为隐性状态。当有信号修改时,CAN_High 线上的电压值变高了,一般来说会升高至少1V;而CAN_Low 线上的电压值会降低一个同样值,也是1v。 那么这时候,CAN_High 就是 2.5v+1v=3.5v,它就处于激活状态了。而CAN_Low 降为2.5v-1v=1.5v。可以看看这个图 由此我们得到 在隐性状态下,CAN_High 线与CAN_Low 没有电压差,这样我们看到没有任何变化也就检测不到信号。但是在显性状态时,改值最低为2V,我们就可以利用这种变化才传输数据了。所以出现了那些帧,那些帧中的场,那些场中的位,云云。

在总线上通常逻辑 1 表示隐性。而0 表示显性。这些 1 啊,0 啊,就可以利用起来为我们传数据了。利用这种电压差,我们可以接收信号。 一般来说,控制单元通过收发器连接到 CAN 驱动总线上,这个收发器(顾名思义,可发送,可接收)内有一个接收器,该接收器是安装在接收一侧的差动信号放大器。然后,这个放大器很自然地就放大了CAN_High 和CAN_Low 线的电平差,然后传到接收区。如下图 由上图可知,当有电压差,差动信号放大器放大传输,将相应的数据位转化为0。 下面我们进入重点难点-----报文 所谓报文,就是CAN 总线上要传输的数据报,为了安全,我们要给我们传输的数据报编码定一下协议,这样才能不容易出错,所以出现了很多的帧,以及仲裁啊,CRC 效验。这些都是难点。 识别符的概念 识别符顾名思义,就是为了区分不同报文的可以鉴别的好多字符位。有标准的,和扩展的。标准的是11 位,扩展的是29 位。他有一个功能就是可以提供优先级,也就是决定哪个报文优先被传输,报文标识符的值越小,报文具有越高的优先权。 CAN 的报文格式有两种,不同之处其实就是识别符长度不同,具有11 位识别符的帧称为标准帧,而还有29 位识别符的帧为扩展帧,CAN 报文有以下4 个不同的帧类型。分别是:

汽车通信CAN总线详解

CAN总线及应用实例 (1)CAN特点 ●CAN为多主方式工作,网络上任意智能节点均可在任意时刻主动向网络上其他节点发送信息,而不分主从,且无需站地址等节点信息,通信方式灵活。利用这特点可方便地构成多机备份系统。 ●CAN网络上的节点信息分成不同的优先级(报文有2032种优先权),可满足不同的实时要求,高优先级的数据最多可在134,us内得到传输。 ●CAN采用非破坏性总线仲裁技术,当多个节点同时向总线发送信息时,优先级较低的节点会主动地退出发送,大大节省了总线冲突仲裁时间。 ●CAN只需通过报文滤波即可实现点对点、一点对多点及全局广播等几种方式收发数据,无需专门“调度”。 ●CAN的直接通信距离最远可达l 0km(速率5kbp以下):通信速率最高可达Mbps(此时通信距离最长为40m) 。 ●CAN上的节点数主要取决于总线驱动电路,目前可达110个;报文标识符可达2032种(CAN2.0A),而扩展(CAN2.0B)的报文标识符几乎不受限制。 (2)CAN总线协议 CAN协议以国际标准化组织的开放性互连模型为参照,规定了物理层、传输层和对象层,实际上相当于ISO网络层次模型中的物理层和数据链路层。图3.9 为CAN总线网络层次结构,发送过程中,数据、数据标识符及数据长度,加上必要的总线控制信号形成串行的数据流,发送到串行总线上,接收方再对数据流进行分析,从中提取有效的数据。CAN协议的一个最大特点是废除了传统的站地址编码,而代之以对通信数据块进行编码,数据在网络上通过广播方式发送。其优点是可使网络内的节点个数在理论上不受限制(实际中受网络硬件的电气特性限制),还可使同一个通信数据块同时被不同的节点接收,这在分布式控制系统中非常有用。CAN 2.0A版本规定标准CAN的标识符长度为11位,同时在2.0 B版本中又补充规定了标识符长度为29位的扩展格式,因此理论上可以定义2的11次方或2的19次方种不同的数据块。遵循CAN 2.0 B协议的CAN控制器可以发送和接收标准格式报文(11位标识符)或扩展格式报文(29位标识符),如果禁止CAN 2.0B则CAN控制器只能发送和接收标准格式报文而忽略扩展格式的报文,但不会出现错误。每个报文数据段长度为0-8个字节,可满足通常工业领域中控制命令、工作状态及检测数据传送的一般要求。同时,8个字节占用总线时间不长,从而保证了通信的实时性。CAN协议采用CRC检验并提供相应的错误处理功能,保证了数据通信的可靠性。 (3)报文传送和帧结构 CAN总线以报文为单位进行信息传送。报文中包含标识符,它标志了报文的优先权。CAN总线上各个节点都可主动发送。如同时有两个或更多节点开始发送报文,采用标识符ID来进行仲裁,具有最高优先权报文节点赢得总线使用权,而其他节点自动停止发送。在总线再次空闲后,这些节点将自动重发原报文。CAN系统中,一个CAN节点不使用有关系统结构的任何信息。报文中的标识符并不指出报文的目的地址,而是描述数据的含义。网络

浅谈CAN总线在汽车上的应用

浅谈CAN总线在汽车上的应用

浅谈CAN总线在汽车上的应用 【摘要】:随着电子技术的迅速发展和在汽车上的广泛应用,汽车上应用的ECU(电子控制单元)越来越多。电子设备的大量应用必然导致车身布线量大而且复杂,安装空间紧缺,运行可靠性降低,故障维修难度增大。为了实现车内各ECU协同动作,达到智慧控制的目的,要求大量的数据信息能在不同的电子单元中共享,同时汽车综合控制系统中大量的控制信号也需要实时交换。传统电器系统采用的点到点的单一通信方式已远不能满足这种需求。因此,改变汽车传统的数据传输方式已经成为汽车技术发展的必然趋势。 【关键词】:车载网络模块 CAN 一、绪论 1、研究背景及意义 随着汽车技术的快速发展,汽车性能不断提高,汽车电器与电子控制装置在汽车上的应用越来越多,例如电子燃油喷射系统(EFI)、汽车防滑控制系统(ABS/ASR)、电控自动变速器、安全气囊(SRS)、电子悬架、电控动力转向系统等。由于集成电路和电控单元在汽车上的广泛应用,汽车上的电控单元的数量越来越多,线路越来越复杂。传统点到点布线方式使汽车上的导线数量成倍增加,汽车的线束越来越庞大,而复杂和凌乱的线束使电器线路的故障率增加,降低了汽车电器与电子控制装置的工作可靠性,同时增加了汽车的自身重量,耗油增加;占用空间更大,使得在有限的汽车空间内布线越来越困难;当线路发生故障时,不仅故障查找麻烦,而且维修也很困难,在一定程度上影响了电子控制技术在汽车上的应用。 随着汽车电子控制装置的大量使用,有些数据需要在不同的控制系统中共享,大量的控制信号也需要实时交换,以提高系统资源的利用率和系统的工作可靠性。采用传统的点到点的布线方式,信号传输的可靠性、信息传送速度均具有不适应性,信息传输材料成本较高。 为了简化线路,提高信息传输的速度和可靠性,降低故障率,越来越多的汽车公司在汽车上采用网络技术,如控制器局域网(CAN)、局部连接网络(LIN)、和局域网(LAN)等。一辆汽车不管有多少个电控单元,每个

汽车CAN总线的结构原理与诊断分析

汽车CAN总线的结构原理与诊断分析 【摘要】 CAN总线(Controller Area Network,即控制器局域网)是汽车产业发展的一门新兴技术,可有效简化车辆电气线路、节约成本、提高车辆的可靠性。本文以CB311 AT系列车(以下简称“CB311”)采用的动力型线形CAN总线为例,介绍了CAN总线的总体结构、数据传输信号特征及故障的诊断分析方法。 【关键词】CAN总线故障诊断分析 1 前言 随着经济社会的发展和人类文明的进步,人们对汽车的安全性、舒适性、尾气排放及燃油经济性的要求越来越严格,汽车上的电子控制系统越来越多,在为人们带来安全、方便、舒适的同时,却使车内线束增多、运行可靠性降低、故障维修难度增大。为了简化线路,提高各电子控制系统之间的通信速度,降低故障频率,CAN总线应运而生。 CAN总线是由德国Bosch公司首先制订推出的针对汽车电子控制领域的总线式串行数据通讯网络。CAN总线可分为动力型(高速)、舒适型(低速)、信息娱乐型(低速);CAN总线的网络拓扑结构主要有线形结构、星形结构、环形结构。 2 CAN总线的总体结构 CAN总线由CAN控制器、CAN收发器、数据传输线、数据传输终端等组成。CB311的ECU(发动机控制单元)、TCU(变速器控制单元)、PEPS(无钥匙进入和无钥匙启动系统)、组合仪表四个电控单元通过CAN总线连接,CAN控制器、CAN收发器均集成在电控单元中。CB311 CAN总线的结构如图1所示。

图1 CB311 CAN总线的总体结构 2.1 CAN控制器 CAN控制器集成在电控单元内部,接收由控制单元微处理器传来的数据。CAN控制器对这些数据进行处理并将其传递给CAN收发器;同样CAN控制器也接收收发器传来的数据,处理后传递给控制单元微处理器。 2.2 CAN收发器 CAN收发器集成在电控单元内部,同时兼具接收、发送和转化数据信号的功能。它将CAN控制器发送来的电平信号数据转化为电压信号并通过数据传输线以广播方式发送出去。同时,它接收数据传输线发送来的电压信号并将电压信号转化为电平信号数据后,发送到CAN控制器。 2.3 数据传输线 为了减少干扰,CAN总线的数据传输线采用双绞线,其绞距为20mm,截面积为0.5mm2,称这两根线为CAN-高线 (CAN-H)和CAN-低线 (CAN-L),如图2所示。两根线上传输的数据相同,电压值互成镜像,这样,两根线的电压差保持一个常值,所产生的电磁场效应也会由于极性相反而互相抵消。通过该方法,数据传输线可免受外界辐射的干扰;同时,向外辐射时,实际上保持中性(即无辐射)。 图2 CAN总线数据传输线 2.4 数据传输终端 数据传输终端是一个电阻器,阻止数据在传输终了被反射回来破坏数据,一般数据传输终端为120Ω的电阻。CB311的数据传输终端为两个120Ω的电阻,分别集成在ECU和组合仪表中。 3 CAN总线的数据传输信号特征 CAN总线控制单元中传递的数据是二进制格式的电平信号,数据的每一位只有0或1两个值,其中0表示显性状态,1表示隐性状态。CAN总线数据传输线中传输的是电压信号,在隐性状态,CAN-H和CAN-L的对地电压均为2.5V左右,此时CAN总线未通讯;在显性状态,CAN-H的对地电压升至3.5V左右,CAN-L的对地电压降至为1.5V左右,此时CAN总线在通讯。

相关文档