CAN总线协议;CAN总线案例

发布时间:2012-07-16 阅读量:5900 来源: 我爱方案网 作者:

对于CAN总线在汽车上的应用,具有很多行业标准或者是国际标准,比如国际标准化组织的ISO11992、ISO11783以及汽车工程协会的SAE J1939。CAN总线已经作为汽车的一种标准设备列入汽车的整体设计中。一提到总线,就很容易让我们联想到复杂错乱的计算机电线。但这些总线却起着十分重要的作用。以下就这个CAN总线协议的发展历程、特点、基本规则以及传输和结构来总结介绍一下。

CAN总线发展

控制器局域网CAN是由德国博世公司在20世纪80年代专门为汽车行业开发的一种串行通信总线。由于其高性能、高可靠性以及独特的设计而越来越受到人们的重视,被广泛应用于诸多领域。而且能够检测出产生的任何错误。当信号传输距离达到10km时,CAN仍可提供高达50kbit/s的数据传输速率。由于CAN总线具有很高的实时性能和应用范围,从位速率最高可达1Mbps的高速网络到低成本多线路的50Kbps网络都可以任意搭配。因此,CAN己经在汽车业、航空业、工业控制、安全防护等领域中得到了广泛应用。   
 
CAN总线基本规则:
(1)总线访问:采用载波监听多路访问,CAN控制器之恩能够在总线空闲时,就是节点侦听到网络上至少存在3个空闲位(隐性位)时开始发送,采用硬同步,所有的控制器同步都为与帧的起始的前沿。过了一定时间,并在一定条件后,重同步。
(2)仲裁:各节点向总线发电平时,也对总线上电平进行读取,并于自身发送的电平进行比较,相同则发下一位,直至全部发完。不同则说明网络上有更高优先级的信息帧正在发送,即停止发送,退出竞争。
(3)编码/解码:帧起始域,仲裁域,控制域,数据域和CRC序列均使用位填充技术进行编码,就是5个连续的同状态电平插入一位与它相补的电平,还原时每5个同状态的电平后的相补电平被删除。
(4)出错标注:当检测到位错误,填充错误,形式错误或应答错误时,检测出错条件的CAN控制器将发送一个出错标志。
(5)超载标注,一些控制器会发送一个或多个超载帧以延迟下一个数据帧或远程帧的发送
 
CAN的特点
(1)通信方式灵活。多主从方式工作,网络上任何节点均可以在任何时刻主动的向其他节点发送信息,不分主从。无需站地址等节点信息。可以构成多机备份系统。
(2)CAN网络上的节点信息分成不同的优先级,可以满足不同的实时要求。
(3)CAN采取非破坏性的总线仲裁技术,多个节点同时发送信息时,优先级低的节点会主动退出发送。
(4)CAN只需通过报文滤波就可以实现点对点,1点对多点及全局广播等几种方式传送接收,无需调度。
(5)CAN的直接通信距离最远可达10KM(5Kb/s),通信速率最高可达1Mb/s(40M)。
(6)CAN上的节点数目前可达110个;报文标示符可达2032种(CAN2.0A ),而CAN2.0B报文标示符几乎不受限制。
(7)CAN通信采用短帧格式,传输时间短,抗干扰强,极好的验错效果,每帧最多8B足以满足控制要求,不会占用过长总线时间,实时性强。
(8)CAN每帧都有CRC校验及其他验错措施。
(9)接口中集成了CAN协议的物理层和数据链路层。
(10)CAN的通信介质可为双绞线或同轴电缆,光纤。
(11)CAN节点在错误严重情况下具有自动关闭输出功能。

CAN总线的报文传输和结构

报文类型
在CAN2.0B的版本协议中有两种不同的帧格式,不同之处为标识符域的长度不同,含有ll位标识符的帧称之为标准帧,而含有29位标识符的帧称为扩展帧。如CAN1.2版本协议所描述,两个版本的标准数据帧格式和远程帧格式分别是等效的,而扩展格式是CAN2.0B协议新增加的特性。为使控制器设计相对简单,并不要求执行完全的扩展格式,对于新型控制器而言,必须不加任何限制的支持标准格式。

帧类型
(1)数据帧(Data ) 数据帧将数据从发送器传输到接收器。   
(2)远程帧(Remote ) 总线单元发出远程帧,请求发送具有同一标识符的数据帧。   
(3)错误帧(Error ) 任何单元检测到总线错误就发出错误帧。   
(4)过载帧(Overload ) 过载帧用在相邻数据帧或远程帧之间提供附加的延时。   
数据帧或远程帧与前一个帧之间都会有一个隔离域,即帧间间隔。数据帧和远程帧可以使用标准帧及扩展帧两种格式。
 

对此,很多世界级的半导体厂商专门针对CAN总线在汽车上的应用,提出了自己的全套解决方案。上图是某半导体公司的汽车网络解决方案。



通过上图可以看到,蓝色较粗线代表CAN总线,它连接了传动装置控制单元、灯控单元、门控单元、座椅控制单元以及仪表盘控制单元等等。红色较细线代表LIN总线,由LIN总线构成的LIN网络作为CAN网络的辅助网络,连接了车窗控制单元、雨刷控制单元、天窗控制单元等低速设备。

LIN网络(Local Interconnect Network),由汽车厂商为汽车开发,作为CAN网络的辅助网络,目标应用在低端系统,不需要CAN的性能、带宽以及复杂性。LIN的工作方式是一主多从,单线双向低速传送数据(最高20K位/秒),与CAN相比具有更低的成本,且基于 UART接口,无需硬件协议控制器,使系统成本更低。

在未来的汽车中,由汽车厂商和半导体厂商共同组成的团体FlexRay Consortium,致力于发展更高速的、具有容错性的、支持分布式控制系统的总线“X-by-Wire,X-by-Wire的通信速率将达到10M。届时,X-by-Wire将和CAN、LIN一起组成整个汽车的通信控制网络。

若从事CAN总线在汽车中的应用上的开发,就必须有一套高效的开发工具,包括软件产品和硬件产品。德国PEAK公司致力于CAN总线开发产品的研发,提供了一系列产品,是世界上知名的CAN设备提供商。

相关资讯
核心对比!无源晶振与有源晶振在结构和工作原理的本质区别

无源晶振与有源晶振是电子系统中两种根本性的时钟元件,其核心区别在于是否内置振荡电路。晶振结构上的本质差异,直接决定了两者在应用场景、设计复杂度和成本上的不同。

温度稳定性对RTC晶振的计时误差影响与分析

RTC(实时时钟)电路广泛采用音叉型32.768kHz晶振作为时基源,但其频率稳定性对温度变化极为敏感。温度偏离常温基准(通常为25℃)时,频率会产生显著漂移,且偏离越远漂移越大。

从参数到实践!剖析有源晶振的频率稳定度、老化率及正确接线方案

有源晶振作为晶振的核心类别,凭借其内部集成振荡电路的独特设计,无需依赖外部电路即可独立工作,在电子设备中扮演着关键角色。本文将系统解析有源晶振的核心参数、电路设计及引脚接法,重点阐述其频率稳定度、老化率等关键指标,并结合实际电路图与引脚定义,帮助大家全面掌握有源晶振的应用要点,避免因接线错误导致器件失效。

如何对抗晶振老化?深入生产工艺与终端应用的防老化指南

晶振老化是影响其长期频率稳定性的核心因素,主要表现为输出频率随时间的缓慢漂移。无论是晶体谐振器还是晶体振荡器,在生产过程中均需经过针对性的防老化处理,但二者的工艺路径与耗时存在显著差异。

无源晶振YSX321SL应用于高精度HUD平视显示系统YXC3225

在现代汽车行业中,HUD平视显示系统正日益成为驾驶员的得力助手,为驾驶员提供实时导航、车辆信息和警示等功能,使驾驶更加安全和便捷。在HUD平视显示系统中,高精度的晶振是确保系统稳定运行的关键要素。YSX321SL是一款优质的3225无源晶振,拥有多项卓越特性,使其成为HUD平视显示系统的首选。