小小教员
小小教员
发布于 2025-08-23 / 4 阅读
0
0

未命名文章

概述

CAN学习模块

目标群体

该在线学习模块适用于所有希望更好地了解CAN通信技术的人员。

Vector培训课程

该在线学习模块还适用于所有计划参加Vector培训课程的人员。在对数据通信有一定程度的了解之后,您将更容易接受绝大多数Vector培训课程。

相关信息

学习目标
要求
  • 电子学的基础知识

  • 动因和时间

范围
  • 37个学习单元

学习用时
  • 每个学习单元10分钟

技术文章

Reliable data exchange in the automobile with CAN

Ways to transition from classic CAN to the improved CAN FD

版权声明

详情查看Vector培训官网 -《版权声明

介绍

CAN的推动因素

电子化

汽车近年来的发展呈现出以电子化为主的特点。电子化的主要原因是由于当前用户对汽车的需求一直在不断增长,以及日益严格的汽车排放法规。另一个因素是全球化,全球化加剧了竞争和成本压力,直接导致创新压力不断增加。

数据传输

起初,独立运行的ECU足以实现电子功能。但工程师们很快就意识到,ECU彼此协调工作可以极大地增强车辆功能。最初,ECU之间数据交换是以传统方式实现的,即为每一个传输信号分配一个物理通信通道。

串行通信

然而,大量的布线也只能实现有限的数据交换。唯一可以解决这一难题的方法是通过单个通信通道(总线)进行串行位数据交换。因此,需要设计适合汽车需求的串行通信系统。

基于CAN的安全数据传输

上世纪八十年代初,Bosch开发一种新的串行通信系统,即CAN。即使在今天,CAN汽车动力系统、底盘和舒适系统的ECU网络中发挥着重要作用。最重要的是,CAN具有数据传输非常可靠的特点,可以满足应用领域的实时要求。

化繁为简

自引入CAN后,汽车中的复杂线束(通常存在多种变体)已成为过去。CAN不仅可以简化项目规划和实施,还可以降低布线重量和空间要求。

标准化

CAN协议(CAN protocol)

从1994年开始,ISO启动CAN技术标准化工作,并最终形成4份标准规范。其中,ISO 11898-1描述了CAN协议。除了数据通信的参考模型,CAN协议仅包括数据链路层(介质访问控制子层MAC -Medium Access Control和逻辑链路控制子层LLC - Logical Link Control)和物理层(物理信号PLS - Physical Signaling)。

CAN控制器(CAN Controller)

CAN协议是基于硬件实现的。目前有多种不同的CAN控制器,其唯一区别在于对CAN报文的处理方式,具体体现在对象层中:具有对象存储的CAN控制器(即完整CAN控制器-Full CAN Controller)与不具有对象存储的CAN控制器(即基础CAN控制器-Basic CAN Controller)。

高速CAN(CAN High Speed)和低速CAN(CAN Low Speed)

ISO 11898-2和ISO 11898-3介绍了数据通信参考模型的两个子层:PMA(Physical Medium Attachment,物理介质适配层)和PMS(Physical Medium Specification,物理介质规范)。它们描述了两种不同的CAN物理层:高速CAN物理层和低速CAN物理层,主要区别在于对总线电平和数据传输速率(波特率)的定义。

波特率

ISO 11898-3规定最大的波特率为125 kbit/s,主要用于汽车的舒适系统领域。ISO 11898-2规定最大波特率为1 Mbit/s,主要用于汽车的动力系统和底盘系统领域。
ISO 11898-3规定最大的波特率为125 kbit/s,主要用于汽车的舒适系统领域。ISO 11898-2规定最大波特率为1 Mbit/s,主要用于汽车的动力系统和底盘系统领域。

事件驱动通信

ISO 11898-1定义了事件驱动通信。总线负载较高可能会导致延迟,对于优先级较低的CAN报文来说尤其如此。若要确保在CAN网络中实现确定性通信,可以使用ISO 11898-4。ISO 11898-4是数据链路层的扩展,为CAN网络增加了时间触发的通信选项。

ISO/OSI参考模型

图“Standard and Implementation”显示了数据通信的ISO/OSI参考模型、CAN技术规范(CAN standard)及其实现之间的关系。

CAN通信

CAN网络

结构

CAN网络由若干个经物理传输介质(CAN总线-CAN Bus)连接的CAN节点组成。实际上,CAN网络通常采用线性拓扑结构,每个ECU经CAN接口连接到总线。也有少数CAN网络采用被动星形拓扑。

物理层

非屏蔽双绞线(UTP,Unshielded Twisted Pair)是传输对称信号时最常用的物理传输介质。通常,UTP的线横截面介于0.34 mm2 和0.6 mm2 之间。线路电阻应小于60 mΩ。

边界条件

在最高传输速率1Mbit/s的情况下,允许的最大长度是40米。在CAN网络的末端,总线终端电阻(termination resistor)有助于抑制信号反射现象。ISO 11898规定CAN节点的最大数量为32。

CAN节点

电子化

随着汽车电子化程度的提高,软件的数量和复杂度也在迅速增长。一些豪华汽车已经拥有1000多种软件功能,多条总线系统,以及70多个ECU。在CAN网络中执行任务的ECU称为CAN节点。

复杂度不断升高

在ECU联网的初期,一个简单的CAN驱动程序(该驱动程序为应用程序提供与硬件无关的简单接口)、一个CAN控制器和一个CAN收发器(CAN transceiver)足以实现CAN接口。如今,ECU网络离不开操作系统、网络管理和诊断功能。同时,软件已变得极其复杂,因此有必要对ECU基础软件进行标准化

软件协调

标准统一的软件可减少开发工作并简化维护工作,还有助于提高重复使用率,并且有助于增强不同车辆平台之间以及OEM和供应商之间的软件组件的互换性。

AUTOSAR

AUTOSAR(AUTomotive Open System ARchiteture,汽车开放系统架构)为ECU软件提供了参考架构,其核心是AUTOSAR实时运行环境(RTE),负责将网络与应用程序的软件组件完全分离。AUTOSAR以基础软件的形式为软件组件提供统一的服务,从低到高分别为:微控制器抽象层、ECU抽象层、服务层。

CAN节点结构

“CAN Node”图描述了新式CAN节点的结构。最值得关注的是“通信服务”领域。AUTOSAR COM(通信)提供标准通信服务、诊断服务(诊断COM管理器)和网络管理服务(通用NM/CAN NM)。PDU路由器(PDU:协议数据单元)处理各个通信层之间的内部节点通信,并协调AUTOSAR COM、诊断COM管理器和CAN TP(传输协议)之间的通信。

CAN控制器

CAN接口

ECU需要CAN接口才能参与CAN通信。CAN接口由CAN控制器和CAN收发器组成。CAN控制器执行CAN协议规定的通信功能,从而大大减轻了主机的负担。

CAN收发器

CAN收发器将CAN控制器连接到物理传输介质。通常,控制器和收发器之间采用光耦隔离或磁耦隔离,因此尽管CAN总线上的过电压可能会损坏CAN收发器,但CAN控制器和底层主机仍可受到保护。

发送/接收

在CAN网络中,CAN节点的不同之处在于每个节点发送或接收的CAN报文的数量。发送和接收的频率也存在很大差异。例如,一个CAN节点可能要接收五条不同的CAN报文,且每隔10毫秒接收一条,而另一个CAN节点只需每隔100毫秒接收一条CAN报文。这些明显的差异导致产生了两种基本的CAN控制器架构:完整CAN控制器和基础CAN控制器。

集成

不论CAN控制器类型如何,CAN控制器都可集成在微控制器中,也可以作为独立的芯片存在(如图所示)。在这种情况下,微控制器会将CAN控制器视为存储芯片。虽然独立CAN控制器更加灵活,但集成CAN控制器具有所需空间更少的优势,并且微控制器和CAN控制器之间的通信更快、更可靠。

CAN收发器

总线连接

以前,CAN控制器经常通过离散电路连接到通信介质(CAN总线)。但现在,CAN收发器可以处理总线连接。CAN收发器有两个总线引脚:一个用于连接CAN高信号线(CANH),另一个用于连接CAN低信号线(CANL)。这是因为CAN采用对称的物理信号传输以满足电磁兼容性,而且CAN网络中的物理传输介质是由两根线(非屏蔽双绞线)构成。

高/低速率

通常,高速CAN收发器和低速CAN收发器的物理电平不同,支持的数据传输速率也不同。高速CAN收发器支持的波特率高达1 Mbit/s。低速CAN收发器支持的波特率最高仅为125 kbit/s。但低速CAN收发器可确保总线接口的容错布局(例如,两条通信线路之中的某一条故障不会导致总体通信故障)。

收发器布局

“CAN Transceiver Layout”图显示了高速CAN收发器的基本布局。两个输出晶体管都处于截止状态时,CANH和CANL均具有相同的电位(0.5*Vcc),且差分电压为零。两个晶体管导通时会在CANH和CANL之间产生一个随负载电阻变化的差分电压。根据ISO 11898-2,该差分应为2V。因此,会产生约35 mA的电流。

抗噪能力

通常,CAN收发器的电磁辐射极低且共模工作范围广,具有较高的抗噪能力。此外,目前的CAN收发器可提供高达8 kV的ESD(Electro-Static discharge,防静电)保护。尽管CAN收发器在某些应用领域中具有很高的共模抑制,但在输出附近插入共模扼流圈(CMC)仍有助于进一步减少辐射。

限制

ISO 11898中规定CAN节点的最大数量为32。实际上,CAN节点的最大数量在很大程度上取决于所使用的CAN收发器的性能以及CAN网络是高速还是低速。例如,如果在高速CAN网络中使用TJA1050高速CAN收发器,则在一个CAN网络中最多可以连接110个CAN节点。

CAN总线

差分信号(Differential signals)

CAN网络中的物理信号基于差分信号进行传输,有效地消除发动机、点火系统和开关触点引起的干扰电压所造成的负面影响。因此,传输介质(CAN总线)由两条线路构成:CAN高信号线(CANH)和CAN低信号线(CANL)。

双绞线

将两条导线绞成一股可显著减小磁场。因此,在实践中双绞线通常用作物理传输介质。

总线终端

由于信号传播速度有限,反射现象的影响会随着波特率提高和总线延长而增加。使用终端电阻连接通信通道的两端(模拟传输介质的电特性)可防止在高速CAN网络中发生反射。

总线终端电阻的关键参数是导线的特性阻抗。ISO11898-2(高速CAN)规定终端电阻是120欧姆,但ISO11898-3(低速CAN)未规定任何总线终端电阻,因为它的最大速率仅为125kbit/s。

CAN总线电平

总线连接

CAN网络中的物理信号基于差分信号进行传输,具体的差分电压取决于所使用的总线接口。高速CAN总线接口(ISO 11898-2)和低速CAN总线接口(ISO 11898-3)有所不同。

电压等级

在ISO 11898-2中,逻辑“1”对应差分电压0V,逻辑“0”对应差分电压2V。高速CAN收发器将超过0.9V的差分电压当做共模工作范围(通常为-12V到12V之间)内的显性(dominant)电平。

低于0.5V的差分电压被当做隐性(recessive)电平。磁滞电路提高了抵抗干扰电压的能力。在ISO 11898-3中,逻辑“1”对应差分电压-5V,逻辑“0”对应差分电压2V。

“High-Speed CAN Bus Levels”图和“Low-Speed CAN Bus Levels”图说明了不同CAN总线上的电压关系。

CAN总线逻辑

显性/隐性

在CAN网络中实现通信顺畅(尤其是总线访问、故障指示和应答)的基本前提是总线显性电平和总线隐性电平之间存在明显差别。总线显性电平对应于逻辑“0”,总线隐性电平对应于逻辑“1”。

显性电平优先级高于隐性电平。当不同CAN节点同时发送显性和隐性总线电平时,CAN总线将呈现显性总线电平。只有当所有CAN节点都发送隐性电平时,CAN总线才呈现隐性总线电平。

与逻辑

从逻辑上说,上述行为是与逻辑。从物理上讲,与逻辑由集电极开路电路实现。通过“Bus Logic”图可以了解CAN网络的线与(wired-AND)逻辑。

CAN Bus Logic (交互页面)



评论