CAN 总线原理解析 (can总线原理图)

概述

CAN 总线(Controller Area Network)是一种串行网络,用于连接传感器、控制器和执行器,完成设备间的连锁控制。它起源于汽车领域,现已广泛应用于医疗、工业自动化等领域。

CAN 总线采用面向数据的内容寻址机制,报文的优先级由 11 位标识符决定,标识符越小,优先级越高。这种机制可以保证网络的高实时性。

CAN 的发展

CAN 总线最初由博世公司开发,并获得国际标准化组织(ISO)认证(ISO11898)。目前,国际上主要的半导体厂商都提供了支持 CAN 总线的专用芯片。

CAN 总线在汽车、工业自动化、医疗等领域获得了广泛的应用。例如,奔驰 S 型轿车使用了 CAN 总线系统;美国商用车辆制造商也将 CAN 总线应用于生产线和机床上。

CAN 的工作原理

当 CAN 总线上的一个节点要发送数据时,它会以报文的形式广播到网络中所有的节点。每个节点都会接收报文,并根据报文中的标识符判断该报文是否发给自己。

CAN 总线采用位仲裁机制来解决多个节点同时竞争总线的情况。标识符二进制值更小的节点优先级更高,可以获得总线读取权。

位仲裁

位仲裁是一个快速有效地确定总线读取权的机制。当多个节点同时发送报文时,它们的标识符会被逐位比较。二进制值更小的标识符的节点将保留总线读取权,而其它节点的报文会被丢弃。

位仲裁的详细过程如下图所示:

该图中,站 1 的标识符为 011111,站 2 的标识符为 0100110,站 3 的标识符为 0100111。所有标识符都相同的两位 01,直到第 3 位进行比较时,站 1 的报文被丢弃,因为它的第 3 位为高,而其它两个站的报文第 3 位为低。

CAN 报文的格式

CAN 报文由以下字段组成:

  • 起始位:1 位,表示报文的开始
  • 仲裁位:11 位,用于位仲裁
  • 控制位:6 位,用于传输速率和报文长度控制
  • 数据域:0-8 字节,用于传输数据
  • CRC 校验域:16 位,用于检测报文传输中的错误
  • 结束位:7 位,表示报文的结束

应用

CAN 总线广泛应用于以下领域:

  • 汽车
  • 工业自动化
  • 医疗
  • 纺织机械
  • 电梯控制

CAN 总线以其高可靠性、实时性和易于配置等优点,成为工业自动化和汽车领域不可或缺的技术。

本文原创来源:电气TV网,欢迎收藏本网址,收藏不迷路哦!

相关阅读

添加新评论