can总线原理(CAN总线通信原理)
can总线原理(CAN总线通信原理)作用:将整车中各种不同的控制器连接起来,实现信息的可靠共享,并减少整车线束数量。可以设想一种极端情况,如下图所示:
如:果整车上所有的用电设备都是一个独立的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网络所要考虑的,可以查阅相关文献看负载率在多少时合适
二氧化硫与氢氧化钙(二氧化碳与氧化钙)二氧化硫与氢氧化钙(二氧化碳与氧化钙)能源人都在看,点击右上角加39关注39北极星大气网讯半干法烟气脱硫技术是利用CaO加水制成Ca(OH)2悬浮液与烟气接触反应,去除烟气中SO2
氧化钙和二氧化碳(氧化钙可以与二氧化碳反应吗)氧化钙和二氧化碳(氧化钙可以与二氧化碳反应吗)农民在种植农作物以后,经常会改良土壤,所有的材料有生石灰石膏农家肥腐叶土白醋煤渣等,都有不错的效果。那么,石灰粉可以用于改良土壤吗?能
氧化钙和二氧化碳(氧化钙可以与二氧化碳反应吗)氧化钙和二氧化碳(氧化钙可以与二氧化碳反应吗)农民在种植农作物以后,经常会改良土壤,所有的材料有生石灰石膏农家肥腐叶土白醋煤渣等,都有不错的效果。那么,石灰粉可以用于改良土壤吗?能
麝香猫(麝香对男性性功能)麝香猫(麝香对男性性功能)咖啡这种饮品,对于我这个宠物医生来说,品尝不来,也享受不到它带来的乐趣,对于我这个偶尔喝咖啡,加大量糖的粗人来说,本来和咖啡也没有什么交集。但是一种据说是
厨余垃圾有哪些(垃圾分类之厨余垃圾)厨余垃圾有哪些(垃圾分类之厨余垃圾)垃圾分类之厨余垃圾厨余垃圾是指在日常的食品加工食用过程中产生的一种有机垃圾,主要包括蔬菜水果残体剩饭剩菜果壳蛋壳变质的食品等。主要危害由于其含有
厨余垃圾有(厨余垃圾如何分类)厨余垃圾有(厨余垃圾如何分类)自从实施垃圾分类以来,全国上下都先后轰轰烈烈开展过各种形式的垃圾分类试点,居民对垃圾分类问题越来越重视,其中厨余垃圾因为涉及物品种类繁多,易腐败变质,
卫生间适合放什么植物(厕所放什么花最好旺财)前几天有花友和花花吐槽,说家里的厕所一到了夏天就潮潮的,还总是有各种味道,用空气清新剂都快遮不住了。对这个问题他感到非常苦恼,因此特意跑来向花花寻求解决办法。这个问题来找花花就对了
洋槐花怎么吃(鲜槐花怎么做好吃)洋槐花怎么吃(鲜槐花怎么做好吃)谷雨时节,洋槐花上市,富含芳香油维生素植物蛋白等营养成分,清热又美容。整理了六种做法,炒饭烙饼都可以,让春末的小野花,一道比一道清鲜爽口。一。槐花炒
洋槐花怎么吃(洋槐花怎样做好吃)洋槐花怎么吃(洋槐花怎样做好吃)芳菲四月,洋槐花上市,清火润肺又养颜,一如经久不衰的槐花蜂蜜。新鲜的洋槐花富含芳香油维生素,植物蛋白等营养成分,肝火易旺的春季可多吃些。整理了五款洋
饮料生产工艺流程(饮料生产线加工流程)饮料生产工艺流程(饮料生产线加工流程)果汁饮料生产线是用于对各类水果进行深加工制作成可口的果汁饮料,近几年来国家对农业深加工扶持力度较大。很多水果经过深加工后获得了更大的附加值。比
一汽大众高尔夫7(现在高尔夫7多少钱)一汽大众高尔夫7(现在高尔夫7多少钱)本文是买车问问(微信号autoask)的原创分享文章,来自撰稿人JackieLXX。车型一汽大众高尔夫7官方指导价12。19万18。29万元购
数学知识为什么一次函数平移是左加右减关于到现在为什么一次函数平移是左加右减这个话题相信很多小伙伴都是非常有兴趣了解的吧因为这个话题也是近期非常火热的那么既然现在大家都想要知道为什么一次函数平移是左加右减小编也是到网上
数学知识平行四边形是正方形对吗关于到现在平行四边形是正方形对吗这个话题相信很多小伙伴都是非常有兴趣了解的吧因为这个话题也是近期非常火热的那么既然现在大家都想要知道平行四边形是正方形对吗小编也是到网上收集了一些与
数学知识物体平移后形状方向不变对吗关于到现在物体平移后形状方向不变对吗这个话题相信很多小伙伴都是非常有兴趣了解的吧因为这个话题也是近期非常火热的那么既然现在大家都想要知道物体平移后形状方向不变对吗小编也是到网上收集
数学知识平行四边形的特点是什么关于到现在平行四边形的特点是什么这个话题相信很多小伙伴都是非常有兴趣了解的吧因为这个话题也是近期非常火热的那么既然现在大家都想要知道平行四边形的特点是什么小编也是到网上收集了一些与
数学知识直角的特点是什么关于到现在直角的特点是什么这个话题相信很多小伙伴都是非常有兴趣了解的吧因为这个话题也是近期非常火热的那么既然现在大家都想要知道直角的特点是什么小编也是到网上收集了一些与直角的特点是
数学知识小学数学等式的性质关于到现在小学数学等式的性质这个话题相信很多小伙伴都是非常有兴趣了解的吧因为这个话题也是近期非常火热的那么既然现在大家都想要知道小学数学等式的性质小编也是到网上收集了一些与小学数学
九个复韵母是什么(9个复韵母怎么读)九个复韵母是什么(9个复韵母怎么读)一年级拼音知识重难点一汉语拼音中最重要的。(记住23个声母24个韵母和16个整体认读音节。)要求每个孩子都能背下来,能默写以及打乱顺序能听写。1
九个复韵母是什么(小学一年级啊喔鹅拼音字母)九个复韵母是什么(小学一年级啊喔鹅拼音字母)声母共23个bpmfdtnlgkhjqxzhchshrzcsyw韵母共23个单韵母6个分别是aoeiu复韵母9个分别是aieiuiaoo
知识朔气传金柝寒光照铁衣的意思是什么关于到现在朔气传金柝寒光照铁衣的意思是什么这个话题相信很多小伙伴都是非常有兴趣了解的吧因为这个话题也是近期非常火热的那么既然现在大家都想要知道朔气传金柝寒光照铁衣的意思是什么小编也
知识朔气传金柝寒光照铁衣的意思关于到现在朔气传金柝寒光照铁衣的意思这个话题相信很多小伙伴都是非常有兴趣了解的吧因为这个话题也是近期非常火热的那么既然现在大家都想要知道朔气传金柝寒光照铁衣的意思小编也是到网上收集
科普下历史上的今天07月31日关于到现在历史上的今天07月31日这个话题,相信很多小伙伴都是非常有兴趣了解的吧,因为这个话题也是近期非常火热的,那么既然现在大家都想要知道历史上的今天07月31日,小编也是到网上