目录
一、CAN总线在汽车网络上的应用 二、CAN总线在汽车上的应用 汽车通信基本上是采用控制局域网的事件触发通信形式,其仲裁机制采用的是根据标识符的优先级发送消息的方式。最高级的信息在发送时不受干扰。X-by-wire系统:随着汽车电子技术的不断发展和汽车系统的集成化,人们可以不需要传统的机械机构传递控制信号,而是通过电子手段来驾驶汽车。这一电子手段就是(X-By-Wire)。“By-Wire”可称为电子线控,“X”则代表汽车中各个系统。如线控转向(Steering-By-Wire),线控制动(Brake-By-Wire)等。X-by-wire系统,在通信服务期间需要有确定的行为,即使在总线最大负载时,与安全相关的信息发送必须得到保证,而且当消息以最高精度发送时,它必须确定可能的时间点。基于CAN总线的时间触发协议TTCAN:其通信是通过一种以时间为主导的参考消息周期性发送来完成的。TTCAN的优势:在一定的仲裁时间窗内它也有可能发送事件触发协议,产生正常仲裁的这些时间窗允许发送自发的消息。
基于CAN的汽车网络系统

CAN总线的特点
CAN总线最大传输距离与其位速率的关系

CAN的基本特点
1、总线访问采用基于优先权的多主方式。
2、非破坏性的基于线路竞争的仲裁机制。
3、利用接受率波对帧实现多节点传送
4、支持远程数据请求
节点发送的远程数据帧,该节点可以请求另外一个节点向自己发送相应的数据帧,该数据帧的表示被指定为和相应远程帧的标识相同。
5、配置灵活
向CAN网络中添加节点时,如果要添加的节点不是任何数据帧的发送器或者该节点根本不需要接收额外的追加发送的数据,则网络中所有节点均不用做任何软硬件方面的调整。
6、数据在整个系统范围内具有一致性
使一个帧既可以同时被所有节点接收,也可以同时不被任何节点所接收,这在CAN网络中完全能够做到。所以系统具有一致性的特征,而这一特征是利用多点传送原理和故障处理方法来获得的。
7、有检错和出错通报功能。
CAN总线中有下列几种检测错误的措施
8、仲裁失败、或传输期间被故障损坏了的帧能重新发送
9、能区分节点的临时故障和永久故障并能自动断开故障节点
CAN节点能够区分短期干扰和永久性故障,出现故障的节点会被断开,这意味着该节点脱离了与总线逻辑上的连接(即无法发送帧,也无法接受帧)。
通常情况下,一个CAN节点必处于错误-激活,错误-认可或离线中的某一状态。
三、CAN的分层结构及功能
CAN遵循ISO/OSI标准模型,定义了OSI模型的
遵循OSI参考模型,CAN的体系结构体现了相应于OSI参考模型的两层:物理层,数据链路层。依照ISO 8802-3(LAN标准)和ISO8802-2,数据链路层被进一步分为逻辑链路控制层(LLC)和介质访问控制(MAC);物理层被进一步分为物理信令(PLS)、物理介质附件(PMA)、介质附属接口(MDI).。故障界定:由MAC子层运行一个叫做“故障界定实体(FCE)”的管理实体监控,故障界定是一种能区分短期干扰和永久性故障的自校机制。物理层是一种检测并管理物理介质故障(总线短路或中断,总线故障管理)的一种实体监控。MAC(多媒体访问控制子层)是核心层,MAC子层可分为完全独立工作的两个部分。


物理层实现ECU与总线相连的电路。ECU的总数取决于总线的电力负载,CAN能够使用多种物理介质,如双绞线、光纤。双绞线最常用,信号使用差分电压传送,两条信号线被称为CAN_H和CAN_L。静态时均2.5V左右,此时状态表示为逻辑1,也可以叫隐性。用CAN_H比CAN_L高表示逻辑0,称为显性。此时通常电压值为CAN_H=3.5V CAN_L=1.5V。
四、CAN的消息帧
1.CAN消息帧的标准格式(CAN2.0A消息帧)
CAN的消息帧有两类,其本质是ID的长度不同,CAN2.0A的消息帧格式,是CAN消息帧的标准格式,11位标识符.
基于CAN2.0A的网络只能接收如下图的格式消息。


2.扩展消息帧(CAN2.0B的消息帧格式)
29位标识符,前11位与CAN2.0A消息帧的标识符一样,后18位专用标记CAN2.0B的消息帧
4.1、CAN的四种消息帧(按用途分类)

起始帧:标志远程帧和数据帧的起始,他仅由一个显性位构成,只有在总线在空闲状态时才允许开始发送,
仲裁场:标准格式:由11位标识符和RTR(远程传输请求位)位组成
扩展格式:29位标识符和SRR位(代替传输请求位)、标识符以及RTR位组成。
RTR位:在数据帧中,RTR位必须是显性电平,而在远程帧中必须是隐性电平。
SRR位:在扩展格式中始终位隐性位。
IDE位:IDE位对于扩展格式中属于仲裁场,此时IDE位隐性电平。对于标准格式中属于控制场,此时IDE位显性电平。
控制场:6位组成 标准格式:一个信息帧包括DLC、发送显示电平的IDE位和保留为r0,在
扩展格式:一个信息帧包括DLC和两个保留为r1和r0这两个位必须发送显性电平
DLC(数据长度码):数据场的字节数目由数据长度码给出,数据长度码为4位,在控制场中被发送。
数据场:由数据帧中被发送的数据组成,可包括0~8字节
CRC场:包括CRC序列和CRC界定符
应答场:包括2位(应答间隙和应答界定符),在应答场中发送站发送出两个隐性位。一个完好的接收器接收到有效报文,在应答间隙期间,将此信息以显性位报文的形式传送给发送器,所有接收到与RCR序列匹配的站,在应答间隙内把显性位写入发送器的隐性来报告,应答界定符是应答场的第二位,必须是隐性位的。
帧结束:每个数据帧和远程帧均由7个隐性位组成的标志序列界定。
接收数据的节点可以通过发送远程帧要求源节点发送数据

远程帧没有数据场,它的RTR位为隐性电平
出错帧由错误标志和错误界定符两个域组成。
接收节点发现总线上报文有错误时,将自动发出错误标志,由六个连续的显性位构成。
其他节点检测到活动错误标志后发送错误认可标志,由六个连续的隐性位构成。
各节点的接收错误标志可能存在时间上的差异,所以导致总线上实际错误标志可能由6~12位的隐性位组成。
错误界定符由8个隐性电平位组成,当错误标志发生后,每个CAN节点监视总线,直至检查到一个显性电平的跳变。至此所有的节点已经完成了错误标志的发送,并开始发送8个隐性电平的界定符。
超载帧由超载标志和超载界定符两个位场组成。
两种触发发送超载标志的超载条件类型:
1、要求延迟发送下一个数据帧或远程帧的接收器的内部条件。
2、在间歇场的第一位和第二位上检测到显性位,超载标志由6个显性位组成,超载界定符由8个连续的隐性位组成。
4.2、非破坏性按位仲裁
相关博文1




