CAN总线

控制器局域网络简称
CAN总线(Controller Area Network,CAN bus)是控制器局域网络的简称,是一种支持分布式控制的串行数据通信总线,国际上应用最广泛的网络总线之一。最大数据信息传输速率为1Mbit/s,通信距离最远可达10km,属于中速网络。[3]
德国博世公司在1985年时为了解决汽车上众多测试仪器与控制单元之间的数据传输,开发了一种支持分布式控制的串行数据通信总线。1986年2月,在底特律的SAE大会上,新的总线系统被称为“汽车串行控制器局域网”。[1]此后CAN总线不断标准化,在各个自动化控制系统中得到了广泛应用,是一种技术先进、可靠性高、功能完善、成本合理的远程网络通信控制方式。[4][2]总线型拓扑结构使其易于实现且构建成本低,但其容错能力和可拓展性较差。[5]CAN协议参照ISO/OSI标准模型,定义了数据链路层物理层[6]具有数据帧、远程帧、差错帧和超载帧4种帧结构。[7]
因为其容错能力较差,CAN协议中定义了五种方法用于错误检测,分别为:位错误、填充错误、CRC错误、格式错误和确认错误。界定不同的错误状态来进行处理。[7]在调试过程中,可以通过测量CAN收发器和CAN控制器的发送和接收信号来验证工作状态是否正常。[8][9]

发展历程

起源