CAN总线详解:深入解析控制器局域网络的工作原理、应用与优势
1 简介
CAN是控制器局域网络(Controller Area Network, CAN)的简称,是一种能够实现分布式实时控制的串行通信网络。优点: 传输速度最高到1Mbps,通信距离最远到10km,无损位仲裁机制,多主结构。近些年来,CAN控制器价格越来越低。Ø 低成本:ECUs通过单个CAN接口进行通信,布线成本低。Ø 高集成:CAN总线系统允许在所有ECUs上进行集中错误诊断和配置。Ø 可靠性:该系统对子系统的故障和电磁干扰具有很强的鲁棒性,是汽车控制系统的理想选择。Ø 高效率:可以通过id对消息进行优先级排序,以便最高优先级的id不被中断。Ø 灵活性:每个ECU包含一个用于CAN总线收发芯片,随意添加CAN总线节点。2 CAN总线网络
CAN总线网络主要挂在CAN_H和CAN_L,各个节点通过这两条线实现信号的串行差分传输,为了避免信号的反射和干扰,还需要在CAN_H和CAN_L之间接上120欧姆的终端电阻。为什么是120Ω,因为电缆的特性阻抗为120Ω,为了模拟无限远的传输线。
3 CAN收发器 CAN收发器的作用是负责逻辑电平和信号电平之间的转换。
即从CAN控制芯片输出逻辑电平到CAN收发器,然后经过CAN收发器内部转换将逻辑电平转换为差分信号输出到CAN总线上,CAN总线上的节点都可以决定自己是否需要总线上的数据。 具体的引脚定义如下:
4 CAN信号表示
CAN总线采用不归零码位填充技术,也就是说CAN总线上的信号有两种不同的信号状态,分别是显性的(Dominant)逻辑0和隐形的(recessive)逻辑1,信号每一次传输完后不需要返回到逻辑0(显性)的电平。
显性与隐性电平的解释:
CAN的数据总线有两条,一条是黄色的CAN_High,一条是绿色的CAN_Low。当没有数据发送时,两条线的电平一样都为2.5V,称为静电平,也就是隐性电平。当有信号发送时,CAN_High的电平升高1V,即3.5V,CAN_Low的电平降低1V,即1.5V。 按照定义的:
-
CAN_H-CAN_L < 0.5V 时候为隐性的,逻辑信号表现为"逻辑1"- 高电平。
-
CAN_H-CAN_L > 0.9V 时候为显性的,逻辑信号表现为"逻辑0"- 低电平。
5 CAN信号传输 发送过程:CAN控制器将CPU传来的信号转换为逻辑电平(即逻辑0-显性电平或者逻辑1-隐性电平)。CAN发射器接收逻辑电平之后,再将其转换为差分电平输出到CAN总线上。
接收过程:CAN接收器将CAN_H 和 CAN_L 线上传来的差分电平转换为逻辑电平输出到CAN控制器,CAN控制器再把该逻辑电平转化为相应的信号发送到CPU上。
6 CAN数据传输 CAN总线传输的是CAN帧,CAN的通信帧分成五种,分别为数据帧、远程帧、错误帧、过载帧和帧间隔。 数据帧根据仲裁段长度不同分为标准帧(2.0A)和扩展帧(2.0B)。
帧起始 由一个显性位(低电平)组成,发送节点发送帧起始,其他节点同步于帧起始;
帧结束 由7个隐形位(高电平)组成。
仲裁段 只要总线空闲,总线上任何节点都可以发送报文,如果有两个或两个以上的节点开始传送报文,那么就会存在总线访问冲突的可能。但是CAN使用了标识符的逐位仲裁方法可以解决这个问题。
CAN总线控制器在发送数据的同时监控总线电平,如果电平不同,则停止发送并做其他处理。如果该位位于仲裁段,则退出总线竞争;如果位于其他段,则产生错误事件。 假设节点A、B和C都发送相同格式相同类型的帧,如标准格式数据帧,它们竞争总线的过程是:
帧ID越小,优先级越高。由于数据帧的RTR位为显性电平,远程帧为隐性电平,所以帧格式和帧ID相同的情况下,数据帧优先于远程帧;由于标准帧的IDE位为显性电平,扩展帧的IDE位为隐形电平,对于前11位ID相同的标准帧和扩展帧,标准帧优先级比扩展帧高。
数据段 一个数据帧传输的数据量为0~8个字节,这种短帧结构使得CAN-bus实时性很高,非常适合汽车和工控应用场合如下图所示。
数据量小,发送和接收时间短,实时性高,被干扰的概率小,抗干扰能力强。
声明: 本文转载自其它媒体或授权刊载,目的在于信息传递,并不代表本站赞同其观点和对其真实性负责,如有新闻稿件和图片作品的内容、版权以及其它问题的,请联系我们及时删除。(联系我们,邮箱:evan.li@aspencore.com )
-
在线直播意法半导体“在中国,为中国”战略,STM32最新产品、应用及生态;
STM32线上训练营带您玩转机械手直播:边缘AI及GUI软硬件开发特训,ST资深专家在线互动答疑。
-
你还在为设备启停“猛冲猛刹”头疼?别让不会调参数毁了你的电机!
-
在工业自动化的广阔天地里,PLC(可编程逻辑控制器)犹如一位指挥若定的核心人物,而PLC通信则是连接各个
-
电力设备的绝缘是由各种绝缘材料构成的。通常把作用于电力设备绝缘上的直流电压与流过其中稳定的泄露电流之比定义为绝缘电阻。
-
在现代工业生产的广阔舞台上,伺服控制系统宛如一位技艺精湛的“舞者”,在搬运机、匀胶机、印刷机等众多场合翩
-
-
串口通信(UART),顾名思义也就是利用串行接口进行通信。串行接口指串口按位(bit)发送和接收字节。
-
在工业自动化领域,变频器作为电力传动系统的核心部件,其稳定运行至关重要。
-
-
-
-
你是否曾遇到过变频器频繁报警停机,故障代码E15过热报警的困扰?那种焦头烂额的感觉,简直让人崩溃!
-
本文总结整理了一下网上搜到的车载电子控制单元(Electronic Control Unit, ECU)的有关信息,在入门车辆控制时需要了解一下,慢慢更新。