CAN总线技术基础分析

合集下载

CAN总线基础知识

CAN总线基础知识

1.CAN总线是什么?CAN(Controller Area Network)是ISO国际标准化的串行通信协议。

广泛应用于汽车、船舶等。

具有已经被大家认可的高性能和可靠性。

CAN控制器通过组成总线的2根线(CAN-H和CAN-L)的电位差来确定总线的电平,在任一时刻,总线上有2种电平:显性电平和隐性电平。

“显性”具有“优先”的意味,只要有一个单元输出显性电平,总线上即为显性电平,并且,“隐性”具有“包容”的意味,只有所有的单元都输出隐性电平,总线上才为隐性电平。

(显性电平比隐性电平更强)。

总线上执行逻辑上的线“与”时,显性电平的逻辑值为“0”,隐性电平为“1”。

下图显示了一个典型的CAN拓扑连接图。

连接在总线上的所有单元都能够发送信息,如果有超过一个单元在同一时刻发送信息,有最高优先级的单元获得发送的资格,所有其它单元执行接收操作。

2.CAN总线的特点CAN总线协议具有下面的特点:1) 多主控制当总线空闲时,连接到总线上的所有单元都可以启动发送信息,这就是所谓的多主控制的概念。

先占有总线的设备获得在总线上进行发送信息的资格。

这就是所谓的CSMA/CR(Carrier Sense MultipleAccess/Collosion Avoidance)方法如果多个设备同时开始发送信息,那么发送最高优先级ID消息的设备获得发送资格。

2) 信息的发送在CAN协议中,所有发送的信息要满足预先定义的格式。

当总线没有被占用的时候,连接在总线上的任何设备都能起动新信息的传输,如果两个或更多个设备在同时刻启动信息的传输,通过ID来决定优先级。

ID并不是指明信息发送的目的地,而是指示信息的优先级。

如果2个或者更多的设备在同一时刻启动信息的传输,在总线上按照信息所包含的ID的每一位来竞争,赢得竞争的设备(也就是具有最高优先级的信息)能够继续发送,而失败者则立刻停止发送并进入接收操作。

因为总线上同一时刻只可能有一个发送者,而其它均处于接收状态,所以,并不需要在底层协议中定义地址的概念。

CAN总线基础

CAN总线基础
CAN总线基础
张宗哲
CAN总线的由来
CAN是Controller Area Net的缩写,即控制 器局域网络
1980年,为了适应汽车减少线束数量和数 据高速可靠通信的要求,BOSCH公司的工 程师们开始设计新型串行总线,并于1986 年提出了CAN总线。
CAN总线的优势
数据传输速率高(相对),最高可达 1Mbit/s
2.5 超载帧
超载帧包括两个位场:超载标志和超载界定符。 存在两种导致发送超载标志的超载条件:一、要 求延迟下一个数据帧或远程帧的接收器的内部条 件;二、在间隙场检测到显性位
2.6 帧间空间
数据帧、远程帧、出错帧或超载帧,均以 称之为帧间空间的位场分开。而在超载帧 和出错帧前面没有帧间空间,且多个超载 帧前面也不被帧间空间分隔。
按照BOSCH CAN总线标准,将逻辑信号转 换为标准中规定的电平,同时具有反馈功 能。
常用的收发器如: NXP公司的TJA1050、 BOSCH公司CF160等
1.3 CAN总线电平
CAN总线采用两种互补的逻辑数值“显性” 和“隐性”。“显性” 数值表示逻辑“0”, 而“隐性” 表示逻辑“1”。当总线上同时 出现“显性”位和“隐性”位时,最终呈 现在总线上的是“显性”位。CAN_H和 CAN_L表示CAN总线收发器与总线的两接 口引脚,信号是以两线之间的“差分”电 压形式出现。
帧间空间包括间歇场和总线空闲场,对于前面已 经发送过报文的“错误被动”站还有暂停发送场。
间歇场由3个隐性位组成,间歇期间,不允许起动 发送数据帧或远程帧。
空闲场可以是任意长度。
暂停发送场是指“错误被动”站在发送完一个报 文后,在下一次发送前确定总线空闲。由8个隐性 位组成。

CAN总线简介(2024版)

CAN总线简介(2024版)
目前汽车上的网络连接方式主要采用2条CAN, 一条用于驱动系统的高速CAN,速率达到500kb/s; 另一条用于车身系统的低速CAN,速率是100kb/s。
驱动系统的高速CAN
• 驱动系统CAN主要连接对象是发动机控制器 (ECU)、ABS控制器、安全气囊控制器、 组合仪表等等,它们的基本特征相同,都是 控制与汽车行驶直接相关的系统。
倍。这种传统布线方法不能适应汽车的发展。CAN总线可有效减少线束,节省空间。
例如某车门-后视镜、摇窗机、门锁控制等的传统布线需要20-30 根,应用总线 CAN 则
只需要 2 根。(3)关联控制在一定事故下,需要对各ECU进行关联控制,而这是传统
汽车控制方法难以完成的表1 汽车部分电控单元数据发送、接受情况
• (5)直接通信距离最远可达10km(速率5Kbps以下)。
• (6)通信速率最高可达1MB/s(此时距离最长40m)。
• (7)节点数实际可达110个。
• (8)采用短帧结构,每一帧的有效字节数为8个。
• (9)每帧信息都有CRC校验及其他检错措施,数据出错 率极低。
• (10)通信介质可采用双绞线,同轴电缆和光导纤维,一 般采用廉价的双绞线即可,无特殊要求。
可靠性高:传输故障(不论是由内部还是外部引起 的)应能准确识别出来 使用方便:如果某一控制单元出现故障,其余系统 应尽可能保持原有功能,以便进行信息交换 数据密度大:所有控制单元在任一瞬时的信息状态 均相同,这样就使得两控制单元之间不会有数据偏 差。如果系统的某一处有故障,那么总线上所有连 接的元件都会得到通知。 数据传输快:连成网络的各元件之间的数据交换速 率必须很快,这样才能满足实时要求。
• (2)网络上的节点(信息)可分成不同的优先级,可以满 足不同的实时要求。

CAN总线基础知识总结(建议收藏)

CAN总线基础知识总结(建议收藏)

CAN总线基础知识总结(建议收藏)CAN总线基础知识总结一、CAN总线简介1、CAN总线(Controller Area Network,控制器局域网)是由德国BOSCH(博世)公司在1986年为汽车而设计的,它是一种串行通信总线,只需两根线CAN_H和CAN_L。

2、隐性(逻辑1)与显性(逻辑0)的概念:CAN总线在数据传输过程中,实际上传输的是CAN_H和CAN_L 之间的电位差。

CAN_H只能是高电平(3.5V)或悬浮状态(2.5V),CAN_L只能是低电平(1.5V)或悬浮状态(2.5)V,当CAN_H和CAN_L 都为2.5V 时,是隐性,表示逻辑1,当CAN_H为3.5V、CAN_L都为2.5V时,是显性,表示逻辑0。

表示隐性和显性逻辑的能力是CAN总线仲裁方法的基本先决条件,即所有节点都为隐性时,总线才处于隐性状态;只要有一个节点发送了显性,总线就呈现为显性状态。

3、120?电阻:必须在总线的每一节点的CAN_H和CAN_L之间接一个120?左右的电阻,以避免出现信号反射。

4、CAN技术规范CAN2.0A和CAN2.0B:CAN2.0A只有标准帧(标识符(ID)有11位);CAN2.0B除了标准帧,还有扩展帧(标识符(ID)有29位)。

5、CAN的国际标准ISO11898和ISO11519:CAN 协议经ISO 标准化后有ISO11898和ISO11519两种标准,它们对于数据链路层的定义相同,但物理层不同。

ISO11898 是波特率为125kbps-1Mbps 的CAN高速通信标准。

ISO11519 是波特率为125kbps 以下的CAN低速通信标准。

高速通信标准和低速通信标准的硬件规格也不一样,所以需要选用不同的收发器。

在收发器的规格书上都会注明高速通信用还是低速通信用,或者是符合ISO11898标准还是ISO11519标准。

6、CAN总线协议只定义了物理层和数据链路层,要将CAN总线应用于工程项目中必须制定上层的应用协议。

CAN总线技术介绍

CAN总线技术介绍

CAN总线技术介绍
CAN总线技术,也被称为Controller Area Network(CAN),是一种广泛使用的低层次的工业总线,是一种高效的低成本高性能的汽车总线。

主要应用于车辆对信息和控制来说非常重要的多个电子设备之间的连接,用于传输信息,控制信号和多媒体信号等。

是一种以多路复用网络技术技术为基础,可以实现节点间信息和控制的互连网络,这种网络经常被用来实现车辆各组件之间的联动,实现多媒体的信号传输和各类信号的交互。

CAN总线技术也是一种多路复用网络技术,它在不同类型的节点之间传输信号和控制信号,实现节点之间互连,实现多媒体的信号传输和各类信号的交互。

CAN总线采用两线总线结构,通信线缆一般采用双绞线、单绞线或者光纤。

它的通信特性具有低延时、高速率、低成本、可靠性高等优点,可以满足现代车辆对节能、安全、可靠性要求。

(1)硬件:包括CAN总线收发器(Transceiver)、CAN总线线缆(Cable)及CAN总线连接线(Connector)。

(2)软件:主要是CAN 控制器(Controller)和CAN驱动软件(Driver)。

CAN总线基础知识总结(建议收藏)

CAN总线基础知识总结(建议收藏)

CAN总线基础知识总结一、CAN总线简介1、CAN总线(Controller Area Network,控制器局域网)是由德国BOSCH(博世)公司在1986年为汽车而设计的,它是一种串行通信总线,只需两根线CAN_H和CAN_L。

2、隐性(逻辑1)与显性(逻辑0)的概念:CAN总线在数据传输过程中,实际上传输的是CAN_H和CAN_L之间的电位差。

CAN_H只能是高电平(3.5V)或悬浮状态(2.5V),CAN_L只能是低电平(1.5V)或悬浮状态(2.5)V,当CAN_H和CAN_L都为2.5V 时,是隐性,表示逻辑1,当 CAN_H为3.5V、CAN_L都为2.5V时,是显性,表示逻辑0。

表示隐性和显性逻辑的能力是CAN总线仲裁方法的基本先决条件,即所有节点都为隐性时,总线才处于隐性状态;只要有一个节点发送了显性,总线就呈现为显性状态。

3、120Ω电阻:必须在总线的每一节点的CAN_H和CAN_L之间接一个120Ω左右的电阻,以避免出现信号反射。

4、CAN技术规范CAN2.0A和CAN2.0B:CAN2.0A只有标准帧(标识符(ID)有11位);CAN2.0B除了标准帧,还有扩展帧(标识符(ID)有29位)。

5、CAN的国际标准ISO11898和ISO11519:CAN 协议经ISO 标准化后有ISO11898和ISO11519两种标准,它们对于数据链路层的定义相同,但物理层不同。

ISO11898 是波特率为125kbps-1Mbps 的CAN高速通信标准。

ISO11519 是波特率为125kbps 以下的CAN低速通信标准。

高速通信标准和低速通信标准的硬件规格也不一样,所以需要选用不同的收发器。

在收发器的规格书上都会注明高速通信用还是低速通信用,或者是符合ISO11898标准还是ISO11519标准。

6、CAN总线协议只定义了物理层和数据链路层,要将CAN总线应用于工程项目中必须制定上层的应用协议。

CAN 总线基础

CAN 总线基础

-CANoe窗口与功能模块介绍
主要窗口介绍
跟踪窗口 -跟踪窗口的标准配置 >按时间顺序输出 >按时间顺序输出,周期更新 >固定位置输出,周期更新 >固定位置输出,周期更新
-CANoe窗口与功能模块介绍
主要窗口介绍
跟踪窗口 -跟踪窗口的列配置 >自由配置跟踪窗口的列 >自定义列 >并非所有的列都会有信 息显示
有广播/多点传播能力。
- CAN总线的特点
CAN总线基础
——系统的柔软性 与总线相连的单元没有类似于“地址”的信息。因此在总线上增加单元时, 连接在总线上的其它单元的软硬件及应用层都不需要改变。
节点数量不受协议限制,节点容易连接或断开。 ——通信速度 根据整个网络的规模,可设定适合的通信速度。 在同一网络中,所有单元必须设定成统一的通信速度。即使有一个单元的通 信速度与其它的不一样,此单元也会输出错误信号,妨碍整个网络的通信。 不同网络间则可以有不同的通信速度。 不同通信速度的子网之间的通信可以通过网关来切换。
CANoe的应用 -CANoe窗口与功能模块介绍
附加功能模块与过滤器
CANoe的应用 -CANoe窗口与功能模块介绍
附加功能模块与过滤器
发生器模块 -可指定发送列表 -可指定触发条件 -配置可保存为文件 -可单次或周期性触发
CANoe的应用 -CANoe窗口与功能模块介绍
附加功能模块与过滤器
发生器模块 -触发条件,可组合 >指定按键触发 >时间周期触发 >指定消息ID触发 -触发方式 >单次触发 >周期性触发
CANoe的应用 -CANoe窗口与功能模块介绍
主要窗口介绍
统计窗口 -分析消息频率 -统计报告 -直方条功能

CAN总线原理与应用基础

CAN总线原理与应用基础

CAN总线原理与应用基础CAN(Controller Area Network)总线是一种高可靠性、高性能、实时性强的通信总线,广泛应用于汽车电子、工业控制、机器人等领域。

本文将从CAN总线的基本原理、应用领域以及优势等方面进行详细介绍。

一、CAN总线的基本原理CAN总线是一种串行通信总线,采用非归零码 NRZ(Non-Return-to-Zero)的编码方式。

它由两根线组成,分别是CAN-H(CAN高)和CAN-L (CAN低)。

CAN总线采用差分传输方式,即CAN-H和CAN-L之间的电压差代表了数据的值。

CAN总线的通信速率可以达到1Mbps,具有很高的传输效率。

CAN总线采用了CSMA/CD(Carrier Sense MultipleAccess/Collision Detection)的冲突检测机制,保证了多个节点同时发送数据时不会产生冲突。

当一个节点要发送数据时,首先会监听总线上的电平,如果检测到总线上没有数据传输,则将数据发送出去。

如果多个节点同时发送数据,会发生冲突,此时节点会停止发送数据,并等待一个随机时间后再次发送,以避免冲突。

CAN总线还具有差错检测和纠正的功能。

每个CAN帧都附带有一个CRC(Cyclic Redundancy Check)校验码,接收节点会对接收到的数据进行校验,如果校验失败,则会发送错误帧。

此外,CAN总线还支持错误传播,即如果一个节点发送了错误的数据,其他节点会通过错误帧检测到错误,并进行相应的处理。

二、CAN总线的应用领域1.汽车电子:CAN总线最早应用于汽车电子领域,用于连接汽车内部的各个电子控制单元(ECU),如发动机控制单元、仪表盘、防抱死制动系统等。

CAN总线可以实现这些控制单元之间的数据交换和协调,提高汽车的性能和安全性。

2.工业控制:在工业控制领域,CAN总线被广泛应用于PLC(可编程逻辑控制器)、传感器、执行器等设备之间的通信。

CAN总线可以实现实时的数据传输和控制,提高工业自动化系统的可靠性和性能。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

假设传输没有延时,但是节点A和节点B的晶振有误差, 那么由上图可以看出,虽然硬同步已经实现,但是节点B的 采样点却不能够采样到当前时刻的数据,而是上一时刻的 数据,即节点B的时间跑的慢了。那么CAN总线控制器如 何处理该问题呢? —— 通过重同步的机制实现。
同步的概念
CAN总线控制器通过在一帧数据的传输过程进行重同步保证一帧报文 的顺利传输,重同步的本质为:增加或减少自己的位定时时间(如:增加 1~2个时间片)来和总线上的其他节点同步。
对于双绞线而言,信号在其中的传播 延时时间约为,5ns/m(典型值)。当通 信速率达到1Mbit/s时,40m的总线长度, 延时时间就达到200ns,而允许延时时间 为600ns左右,还是不能不考虑的!
注意后面同步的概念
总线长度的思考
由上面的分析可知: 总线通信速率越高,通信距离越短,对物理传输线的要求就越高,在双绞 线、屏蔽线还是其他的传输线选择上,通信速率是一个很关键的参数。 影响总线长度的其他因素: (1)信号在节点ECU内部的延时时间 (2)振荡器的容差(各个节点ECU内部晶振频率的差别)
显性电平
隐性电平
总线支持的最大节点数目
总线支持的最大节点数目
由上表可以看出,常用的两款CAN驱动芯片 支持的总线节点数目都可以满足整车CAN节点需 求,这不是问题。
总线长度的思考
影响总线长度的主要因素:
(1)CAN总线通信的应答机制,即成功接收到一帧报文的节点必须在 应答场的”应答间隙“期间发送一位“显性位”表示成功接收到一帧数据
单片机
can报文帧结构
报文打包 can总线容错 网络负载率 信号电平 信号传输、抗干扰 位定时、同步 位编解码
总线控制器
Physical Layer
总线收发器
何为CAN收发器?
按照BOSCH CAN总线标准将0或1逻辑信号转换为 标准中规定的电平,同时有反馈功能
CAN总线上的电平
CAN2.0A/B标准规定:总线空闲时,CAN_H和CAN_L上的电压为2.5V 在数据传输时,显性电平(逻辑 0):CAN_H 3.5V 隐性电平(逻辑 1):CAN_H 2.5V CAN_L 1.5V CAN_L 2.5V
这些因素加起来就形成了CAN总线通信中总的信号延时。
CAN总线的硬件抗干扰(1)
共模电感作用:共模电压有较大的感 抗,差模电压感抗为零,相当于电感滤波。 对共模电流有较大的阻碍作用。
CAN总线的硬件抗干扰(2)
1 终端电阻
终端电 阻 120 欧姆 并非固定不 变,这跟使 用的导线有 关!
ISO11898的推荐值
何为CAN控制器?
CAN控制器主要实现了两部分的功能,1:数据链路层 的全部功能;2:物理层的位定时功能 也就是BOSCH CAN 2.0A/B中规定的部分
总线长度的限制——位定时、同步
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,每一段占用一定的时间片
如:通信速率为250Kbit/s,传送一个bit所需时间为:1/250×1000 = 4μ 那么,该信号在总线上的延时时间必须小于(2μ?)才能保证发送节点成 功的在应答间隙期间接收到该“显性电平”。 任何一根导线都可以简化为左图所示 的电路模型,可以看到,其中既有电感又 有电容,因此,电流在其中传输并不是光 速,而是需要一定的时间。
采样点
采样点 为了实现重同步,CAN总线控制器必须要通过位填充实现, 即:如果CAN总线控制器发现报文里有5个连续相同的位,就 会在第六位填充一位相反的数据位(该数据位只是为了总线安 全才考虑的),同步发生在隐性电平(逻辑1)向显性电平(逻 辑0)转换的跳变沿。
会议 参会人员 参会人员身份 局域网 节点 ID
会议议题
参会人员发言顺序 裁定
报文
仲裁
CAN总线工作原理
请求发言 发言优先权 开始发言 发言 反馈 结束发言 参会人员 信息反馈
帧起始
仲裁
开始发送
0/1 错误检测
接收成功 应答
帧结尾
一帧报文
CAN总线网络结构
CAN总线网络节点结构
j1939本质 Application Layer 如何将29ID分类 j1939组织架构 协议查找 总线仲裁机制 Data Link Layer 位填充机制机制 S A E J 1 9 3 9
组合开关 组合灯具 电磁阀 雨刷电机 仪表 传感器
如果整车上所有的用电设备都 是一个独立的CAN总线节点,并且 每一个节点都向外发送自己当前的 状态,并且接受来自外部的信息, 那么整车的控制只需要一条CAN总 线控制线和电源线就可以了!
CAN总线的基本工作原理
跟其他总线一样,CAN总线的通信也是通过一种类似于“会议” 的机制实现的,只不过会议的过程并不是由一方(节点)主导,而 是,每一个会议参加人员都可以自由的提出会议议题(多主通信模 式),二者对应关系如下:
同步的概念
T
采样点
假设两个节点的时间完全一致(即晶振完全相同,没有误 差),信号经过T延时后到达节点B,此时节点B就以当前时 刻为基准进行位定时,因为二者的时钟完全一致,因此,节 点B的采样不会出现任何问题,即节点B总是能采样到A节点 发出的总线电平。硬同步只发送在一个CAN总线技术基础
CAN总线的优势及应用
• 数据传输速度高(相对),1Mbit/s • 抗干扰能力强(差分数据线) • 具有自我诊断能力(错误侦测)
CAN总线的作用
CAN(“Controller Area Network”,控制器局域网) 总线的作用就是将整车中各种不同的控制器连接起来,实 现信息的可靠共享,并减少整车线束数量。可以设想一种 极端情况,如下图所示:
相关文档
最新文档