什么是CAN bus?###
在谈论车联网的时候,你应该会经常听到CAN bus这个词。什么是CAN bus? 它又是如何工作的呢?
01
什么是CAN bus?
CAN bus是控制器局域网络总线技术(Controller Area Network Bus)的简称,是一种基于信息的、专为车辆设计的串行通信协议。
在汽车行业中,出于对安全性、舒适性和便捷性的要求,各种各样的电子控制单元(Electronic Control Unit, 简写为ECU)被开发了出来。车越高级,车上的控制单元越多、也越复杂,如电子燃油喷射装置、ABS装置、安全气囊装置、电动门窗等。
这些系统之间通信所用的数据类型以及对可靠性的要求不尽相同,往往需要多条总线,线束的数量也随之增加。为了满足 “减少线束数量”、“通过多个LAN进行大量数据的高速通信”的需求,1986年,以研发和生产汽车电子产品著称的德国BOSCH公司开发出面向汽车的CAN通信协议。之后,CAN 通过ISO11898 及ISO11519 进行了标准化,在欧洲已是汽车网络的标准协议。
02
CAN bus的工作原理
遍布车身的传感器需要实时监控车辆状态,并将此信息发送至相对应的控制单元内。比如,来自气压传感器、发动机温度传感器、油门踏脚位置传感器、发动机转速传感器等单元的信息到达发送机控制单元,后者经过分析处理之后发送相应的指令来控制喷油嘴的喷油量。
车上的控制单元不是独立工作的,它们往往需要共享信息以更好地协作。这就存在信息的传递问题。
控制单元之间的通信主要有两种方式。
第一种,每条信息都通过各自独立的数据线进行交换。比如,如果两个控制单元之间有5种信号需要传递,则需要5根独立的数据线。信息越多,需要的线缆越多,控制单元之间也需要越多的针脚。
第二种,控制单元之间所有的信息都通过两根数据线进行交换。通过这种方式,所有的信息,不管容量大小,都可以通过这两根线进行传递。