当前位置:首页 > 公众号精选 > 小麦大叔
[导读] 点击上方“小麦大叔”,选择“置顶/星标公众号”福利干货,第一时间送达CAN(“ControllerAreaNetwork”,控制器局域网)作用:将整车中各种不同的控制器连接起来,实现信息的可靠共享,并减少整车线束数量。可以设想一种极端情况,如下图所示:如:果整车上所有的用电设备...




CAN(“Controller Area Network”,控制器局域网


作用:将整车中各种不同的控制器连接起来,实现信息的可靠共享,并减少整车线束数量。可以设想一种极端情况,如下图所示:




如:果整车上所有的用电设备都是一个独立的CAN总线节点,并且每一个节点都向外发送自己当前的状态,并接受来自外部的信息, 那么整车的控制只需要一条CAN总线控制线和电源线就可以了!




CAN总线的基本工作原理

CAN总线的通信通过一种类似于“会议” 的机制实现的,只不过会议的过程并不是由一方(节点)主导,而 是,每一个会议参加人员都可以自由的提出会议议题(多主通信模式),二者对应关系如下:




CAN总线工作流程



CAN总线的优势

  • 数据传输速度高1Mbit/s,距离远


  • 抗干扰能力强(差分数据线)


  • 具有自我诊断能力(错误侦测)



CAN总线网络结构

01 CAN总线网络节点结构




02 为何CAN收发器


照BOSCH CAN总线标准将0或1逻辑信号转换为标准中规定的电平,同时有反馈功能






CAN总线上的电平


CAN2.0A/B标准规定:总线空闲时,CAN_H和CAN_L上的电压为2.5V


在数据传输时,显性电平(逻辑 0):CAN_H 3.5V CAN_L 1.5V


隐性电平(逻辑 1):CAN_H 2.5V CAN_L 2.5V




03总线长度的思考


影响总线长度的主要因素:


(1)CAN总线通信的应答机制,即成功接收到一帧报文的节点必须在 应答场的”应答间隙“期间发送一位“显性位”表示成功接收到一帧数据


如:通信速率为250Kbit/s,传送一个bit所需时间为:1/250×1000 = 4μ 那么,该信号在总线上的延时时间必须小于(2μ?)才能保证发送节点成功的在应答间隙期间接收到该“显性电平”。


任何一根导线都可以简化为左图所示的电路模型,可以看到,其中既有电感又有电容,因此,电流在其中传输并不是光速,而是需要一定的时间。






对于双绞线而言,信号在其中的传播延时时间约为,5ns/m(典型值)。当通信速率达到1Mbit/s时,40m的总线长度, 延时时间就达到200ns,而允许延时时间为600ns左右,还是不能不考虑的!


由上面的分析可知:


总线通信速率越高,通信距离越短,对物理传输线的要求就越高,在双绞线、屏蔽线还是其他的传输线选择上,通信速率是一个很关键的参数。


影响总线长度的其他因素


  • 信号在节点ECU内部的延时时间


  • 振荡器的容差(各个节点ECU内部晶振频率的差别) 这些因素加起来就形成了CAN总线通信中总的信号延时。




CAN总线的硬件抗干扰





共模电感作用:共模电压有较大的感 抗,差模电压感抗为零,相当于电感滤波。对共模电流有较大的阻碍作用。




终 端 电阻 120 欧姆并非固定不变,这跟使用的导线有关!


总线长度的限制——位定时、同步


CAN总线控制器按照时间片的概念将每一个bit的时间划分成了n个时间片。这样做的目的就是为了实现CAN总线的同步、保证不同节点间时间的一致性。


如:晶振和CAN CLOCK,频率均为4MHz,那么每一个时间片最小时间就为0.25μs,通信波特率为250Kbit/s,那么每一个bit的时间就为4μs, 因此,每一个bit的总的时间片数目就为16。当然可以进一步提高晶振频率,使得每一个bit被划分的更加细致。





CAN2.0A/B将每一个bit的时间划分成了4段,同步段、传输段、相位段1和相位段2,每一段占用一定的时间片



Can总线报文帧结构

CAN总线共有四种报文:


1 数据帧


2 远程帧


3 错误帧


4 过载帧




数据帧定义



帧起始:1bit。从图中看出,在帧间隙后由逻辑1(至少两个bit)向逻辑 0 的跳变就被认为是帧起始,它的作用就是为了硬同步。


仲裁场:由29bit的ID标示符和IDE、SRR、RTR位构成。IDE位用于标示该帧是扩展帧(29bit ID)还是标准帧(11bit ID);SRR在扩展帧 中 为 一 隐 性 位 ;R T R 位 为 远 程 帧 标 志 位 。


由上图可以看出,11bit的基本ID首先被发送(ID28~ID18),然后在发送18bit的扩展ID(ID17~ID0)


CAN总线的仲裁机制

要点


(1)首先发送ID的29位,优先级问题


(2)总线电平由谁决定






CAN总线总裁机制的实现也就实现了CAN总线的多主机模式,总线节点不存在谁主谁从的概念


注意:我们可以人为的给29位的ID赋予一定的意义从而区分不同的报文类型!


报文滤波

报文滤波可以通过软件编程的方式实现,也可以通过硬件(芯片内部的报文滤波寄存器)实现,但二者实现的原理是相同的,如下图所示:




数据帧中的其他场作用


控制场:包括两位保留位(必须为0),和数据长度位(DLC0~DLC3) 数据场:包括最多8个字节的数据


CRC场:是一种算法,对数据进行CRC校验,共15bit,其后跟了一位CRC界定符——为1(隐性电平)


应答场:为两个1(总线电平为低电平),其中一位为应答间隙,另一位为应答界定符。成功接收到数据的节点必须发送一位显性位(总线电平为高电平)


来应答该发送节点,必须注意:该显性位必须在应答间隙期间, 即1bit的时间内将总线电平拉高。帧结尾:7个连续的1组成(隐性电平)


CAN总线的侦听机制—支持仲裁及错误检查

帧听就是发出去的数据再采样回来,比较采样回来的数据是否和发出的数据一致!



CAN总线错误检测


CAN总线通过如下几个方面进行错误检测


当节点赢得总线发送权后,会对总线电平进行检测,当发送的电平和检测到的总线电平不一致时,认为错误;



出现6个连续相同的电平时,认为是填充错误;



CRC错误,接收数据的节点按照与发送数据的节点相同的方法计算数据的CRC校验值,如果接收节点的计算结果与数据包中CRC场的数据不一致, 认为是CRC错误;



应答错误,在应答场如果没有监控到一个显性电平,那么就认定一个应答错误;



固定位错误,例如:CRC界定符等,其电平是固定的,当监控到该电平不相符时,认定一个错误;


另:总线同步机制也是CAN总线容错的一种方式;


注意:通过上面5种错误检测机制,发送节点和接收节点均可以检测到总线上的错误,并通过错误的累加来实现总线节点的关闭等操作



CAN总线负载率计算

计算例子:


假设CAN总线波特率为250Kbit/s,总线报文发送时间间隔为10ms, 报文为数据帧(8个字节数据),那么10ms内总线能够支持的最大报文数量为多少?


第一步:根据通信波特率计算10ms总共可以发送多少bit (250000/1000)*10 = 2500bit


第二步:计算最长的一帧报文有多少个bit


1sof 29id 1ide 1rtr 1srr 2r 4dlc 8*8data


16crc 2ack 7eof = 128bit


第三步:计算10ms内可以支持的报文数目


2500/128 ≈ 19


由上面的计算可知,当10ms间隔的报文数量超过19条时,就会出现丢帧,总线饱和。


计算报文数量也是设计CAN网络所要考虑的,可以查阅相关文献看负载率在多少时合适


来源:头条 亿佰特物联网实验室


—— The End ——



本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

功率器件是一种专门用于控制、调节和放大电能的电子元件,主要用于处理大功率电信号或驱动高功率负载,如电机、变压器、照明设备等。

关键字: 功率器件 控制 放大电能

机器人是一种集成了机械、电子、控制、传感、人工智能等多学科先进技术的自动化装备,能够模仿或替代人类进行各种任务的设备。

关键字: 人工智能 电子 控制

伺服电机是一种高精度、高性能的电机,广泛应用于各种自动化控制系统中。控制伺服电机是实现自动化控制的关键环节,不同的控制方式具有不同的特点和适用场景。本文将介绍几种常见的伺服电机控制方式及其特点,并分析在实际应用中应注意的...

关键字: 伺服电机 控制 自动化

CAN总线是一种串行通信协议,是ISO国际标准化的。它最初设计用于汽车内的多路电气布线以节省铜线,但也可以用于许多其他环境。在CAN总线中,所有的单元都可以发送和接收信息,且所有与总线相连的单元都可以开始发送新消息,但如...

关键字: CAN总线 CAN总线故障分析

CAN通信是一种控制器局域网络(Controller Area Network)通信协议,是由德国BOSCH公司开发,并最终成为国际标准(ISO 11898)。它是一种多主方式的串行通讯总线,基本设计规范要求有高的位速率...

关键字: can通信 CAN总线

CAN总线通信是一种用于解决汽车众多控制部件之间的数据交换而开发的一种串行数据通信总线。它的英文全称是Controller Area Network,即控制器局域网。CAN总线通信的特点包括多主控制、通信速度快、通信距离...

关键字: CAN总线 CAN故障维修

大连2023年9月20日 /美通社/ -- 日前,国际独立第三方检测、检验和认证机构德国莱茵TÜV大中华区(以下简称"TÜV莱茵")受...

关键字: 控制 医疗服务 HEALTH 信息安全

 上海2023年9月7日 /美通社/ -- 近期,“国家卫生健康委国际交流与合作中心·因美纳公共卫生教育奖学金”项目(下称,“公共卫生教育奖学金”)完成首批奖学金颁发。该项目是由国家卫生健康委国际...

关键字: BSP 控制 组网 网络建设

张家港2023年8月25日 /美通社/ -- 对于塔机买家,需求的不仅仅是塔机的功能性,还有塔机的耐用性和残值。在这方面,波坦塔机以其卓越的品质和持久的稳定性,成为了一个值得信赖的选择。 当你在考虑购买二手塔机时,你应...

关键字: BSP 控制 变频调速 应力

上海2023年8月25日 /美通社/ -- 云顶新耀(HKEX 1952.HK)是一家专注于创新药和疫苗开发、制造、商业化的生物制药公司,今日宣布中国澳门特别行政区药物监督管理局已正式受理耐赋康®用于治疗IgA肾...

关键字: NDA 控制 新加坡 COM
关闭
关闭