1:Can总线简介
CAN总线是控制器局域网络(Controller Area Network,CAN)的简称,由德国BOSCH公司开发,并最终成为国际标准(ISO 11898-1),是一种串行数据通信总线
。
在当前的汽车产业中,出于对安全性、舒适性、方便性、低公害、低成本的要求,各种各样的电子控制系统被开发了出来。由于这些系统之间通信所用的数据类型及对可靠性的要求不尽相同,由多条总线构成的情况很多,线束的数量也随之增加。为适应“减少线束的数量”、“通过多个LAN,进行大量数据的高速通信”的需要,1986 年德国电气商博世公司开发出面向汽车的CAN 通信协议。此后CAN 通过ISO11898 及ISO11519 进行了标准化,现在在欧洲已是汽车网络的标准协议。
2:汽车通讯网络
2.1:汽车网络分类
汽车网络是将汽车上所有电子传感器、执行器和电子控制单元(ECU)连接组网的通信形式。
根据通信速率,汽车工程师协会(SAE)定义了如下类别的汽车网络。
- CAN (CANFD)
- LIN
- MOST
- FlexRay
- 车载以太网
按照通讯速率大致可将其分为Class:A, B, C, D;具体内容如下:
2.2:CAN 网络架构
通常汽车CAN网络细分为:
- 动力CAN网络
- 车身CAN网络
- 组合仪表CAN网络
- 诊断CAN网络
在一个车辆上完整的构想图如下:
应用示例:
CAN 总线拓扑图
汽车网络典型应用
3:CAN总线的特性
(1)节点间采用多主通信
方式,
(2)采用短帧结构
,报文帧的有效字节数为8个,可达汽车实时响应要求。
(3)报文ID值越小,优先级越高
。报文ID可分成不同的优先级,进一步满足汽车网络报文的实时性要求。
(4)非破坏性
总线仲裁处理机制
(5)可靠的CRC校验
方式,传输数据出错率极低,满足汽车数据传输的可靠性要求。
(6)报文帧仲裁失败或传输期间被破坏有自动重发
(机制)。
(7)节点在错误严重的情况下,具有自动脱离总线
的功能,切断它与总线的联系,不影响总线的正常工作。
(8)通信距离最远达10km
(速率5Kbps以下)
(9)通信速率最高1MB/s
(此时距离最长40m)
(10)节点数实际可达110个
(11)CAN节点设计成本较低,通信介质采用双绞线
(12) 远程数据请求,可通过发送“遥控帧” 请求其他单元发送数据。
4:CAN总线连接示意图
下图是CAN总线简化的连接图: