首页 理论教育 汽车电子电气系统中的CAN-BUS基本原理

汽车电子电气系统中的CAN-BUS基本原理

时间:2023-08-20 理论教育 版权反馈
【摘要】:整车电气系统采用CAN总线之后,其结构将大为简化,如图3-19所示。6)CAN数据总线符合国际标准,不同厂家生产的控制单元可以进行数据交换。CAN收发器是发送器和接收器的组合。图3-21 CAN数据传输系统结构示意图图3-22 数据传递过程CAN总线数据构成 CAN数据总线不断地在各控制单元之间传输数据协议包,数据协议包分为7个部分,如图3-23所示。

汽车电子电气系统中的CAN-BUS基本原理

1.数据传输

汽车各个控制系统可以通过以下两种方式进行数据传输:

(1)每个数据项分别通过各自独立的数据线进行传输 如图3-17所示,如果要传输发动机转速、燃油消耗等5项数据,共需五根数据线,因为每项数据都需要一根独立的数据线。随着所需信息量的增加,数据线的数量和控制单元的端子数也要相应增加。

978-7-111-49455-3-Chapter03-22.jpg

图3-17 不带CAN总线的数据传输

(2)所有数据项都通过两根数据线即CAN数据总线进行传输 如图3-18所示,同样要传输发动机转速、燃油消耗等5项数据,所需的数据线只有2根。而且即使所要传输的数据项再增加,也无需再增加数据线和控制单元端子数。整车电气系统采用CAN总线之后,其结构将大为简化,如图3-19所示。因此,数据传输线路大为简化。

978-7-111-49455-3-Chapter03-23.jpg

图3-18 带CAN总线的数据传输

978-7-111-49455-3-Chapter03-24.jpg

图3-19 基于CAN总线的汽车电气系统结构示意图

2.CAN数据传输系统

CAN总线是控制单元间的一种数据传递形式,它连接各个控制单元形成一个完整的系统。一个控制单元与整个系统状态相关的信息越多,那么它协调各个功能的能力就会越强。

通常,发动机控制单元、自动变速器控制单元和ABS控制单元组成一个完整的动力传动系统CAN网络;中央控制系统、车门控制系统、舒适系统控制单元组成一个完整的CAN网络。

(1)CAN数据传输系统的优点

1)如果需要扩展数据协议以包含其他信息,只需修改软件即可。

2)通过控制单元和辅助安全措施对传输的信息进行持续不断的校验,可以达到较低的错误率。

3)通过传感器信号的多重使用减少了传感器和信号线的数量。

4)控制单元间实现高速数据传输。

5)因控制单元的减小和控制单元端子数的减少,节省了更多有用空间。

6)CAN数据总线符合国际标准,不同厂家生产的控制单元可以进行数据交换。

(2)CAN数据传输系统的原理 CAN数据总线的数据传输方式类似于电话会议,如图3-20所示,一个用户(控制单元)将数据“讲”入网络中,其他用户通过网络“接听”这个数据,对这个数据感兴趣的用户就会接受并利用它,而其他用户则忽略掉它。这种数据传输方式就是通常所说的“广播”形式。

978-7-111-49455-3-Chapter03-25.jpg

图3-20 CAN数据传输

(3)CAN数据传输系统的构成 CAN数据传输系统通常由一个控制器、一个收发器、两个数据总线终端和两条数据总线构成,如图3-21所示,各个部分功能如下:

1)CAN控制器。CAN控制器从微处理器(集成在控制单元内)接收数据,对数据进行处理后中转给CAN收发器,同时控制器也从收发器接收数据,进行处理后再中转给控制单元中的微处理器。

2)CAN收发器。CAN收发器是发送器和接收器的组合。它将CAN控制器提供的数据转化为电信号并通过数据线发送出去;同时它也接收数据,并进行转换,之后提供给CAN控制器。

3)数据总线终端。数据总线终端其实是一个电阻器,防止数据在传输终端被反射回来,避免反射波破坏数据。

4)数据总线。数据总线是用来传输数据的双向数据线,分为CAN高位数据线(CAN-High)和低位数据线(CAN-Low)。控制器输出的信号同时向高低电平两根数据线发送,高低电平互为镜像。数据线通常采用双绞线结构,既可以防止电磁干扰对传输信息的影响,也可以防止本身对外界的干扰。在数据总线上传输的数据并没有指定的接收方,而是被所有用户接收并评估是否接纳。

(4)数据传输过程 如图3-22所示。CAN总线上的数据传输可以分为数据提供、发送、接收、检查和认可这五个环节。控制单元向CAN控制器提供需要发送的数据,CAN控制器将数据交给CAN收发器,收发器将数据转换为电信号后发送到CAN数据总线上。总线上的所有控制单元都能接收到这个数据,它们会检查这个数据是否是它们所需要的,如果是需要的,就接受这个数据并进行处理,否则就忽略这个数据。

978-7-111-49455-3-Chapter03-26.jpg

图3-21 CAN数据传输系统结构示意图

978-7-111-49455-3-Chapter03-27.jpg

图3-22 数据传递过程

(5)CAN总线数据构成 CAN数据总线不断地在各控制单元之间传输数据协议包,数据协议包分为7个部分,如图3-23所示。

978-7-111-49455-3-Chapter03-28.jpg

图3-23 协议数据包的构成

1)起始字段(图3-24):标志数据协议包的开始,1位5V电压(不同的系统可能不同)被送入CAN高位传输线,同时1位0V电压被送入CAN低位传输线。

2)状态字段(图3-25):定义数据协议包的优先级。例如,如果两个控制单元同时想通过数据总线发送数据,优先级较高的控制单元将优先发送。

978-7-111-49455-3-Chapter03-29.jpg

图3-24 起始字段

3)检查字段(图3-26):显示在数据字段中所包含的信息项目数,接收器能够根据这个字段检查其是否已经接收到所有传输数据。

978-7-111-49455-3-Chapter03-30.jpg

图3-25 状态字段

978-7-111-49455-3-Chapter03-31.jpg

图3-26 检查字段

4)数据字段(图3-27):是指要传输到其他控制单元的信息。

5)安全字段(图3-28):用于检测数据是否有传输错误。

978-7-111-49455-3-Chapter03-32.jpg

图3-27 数据字段

978-7-111-49455-3-Chapter03-33.jpg(www.zuozong.com)

图3-28 安全字段

6)确认字段(图3-29):接收器通过“确认字段”告知发送器该数据协议包已被正确接收。如果检查到错误,接收器会立刻通知发送器,发送器将会重新发送一次数据。

7)结束字段(图3-30):标志着一个数据协议包的结束,它也是检测错误并导致数据再次发送的最后一次机会。

978-7-111-49455-3-Chapter03-34.jpg

图3-29 确认字段

978-7-111-49455-3-Chapter03-35.jpg

图3-30 结束字段

(6)数据协议包的生成 数据协议包由多个数据位(bit)构成,每一位(bit)只能是“0”或“1”这两个状态值,类似于灯泡开关的断开或闭合两种状态。

1)状态值为“1”的数据位。发送器打开,接通舒适系统中的5V电压(在动力传动系统中电压约为2.5V),所以,此时数据总线上的电压为5V(舒适系统)或2.5V(动力传动系统),如图3-31所示。

2)状态值为“0”的数据位。发送器关闭,接通地线,加载在数据总线上的电压约为0V。

表3-6显示了信息是如何通过2个连续位进行传输的,2个位可以产生4种不同的可能情况,每种情况可以代表一项信息,并与所有控制单元相联系。注释:如果第1位和第2位传输的都是0V,在表3-6中代表的信息是“电动窗正在升降”或“冷却液温为10℃”。

978-7-111-49455-3-Chapter03-36.jpg

图3-31 状态值为“1”的数据位

978-7-111-49455-3-Chapter03-37.jpg

图3-32 状态值为“0”的数据位

表3-6 2个数据位可以代表的信息

978-7-111-49455-3-Chapter03-38.jpg

表3-7显示了随着数据位的增加,其代表的信息量是如何增加的,位数越多,可以传输的信息量就越大,每增加一位,产生的信息量就会增加一倍。

表3-7 信息量随着数据位成倍增加

978-7-111-49455-3-Chapter03-39.jpg

3.CAN数据总线的数据分配

如果多个控制单元要同时发送各自的数据,那么系统就必须决定哪一个控制单元首先进行发送,具有最高优先级的数据首先发送。基于安全考虑,由ABS/EDL控制单元提供的数据比自动变速器控制单元提供的数据更重要,因此优先级更高。

(1)如何进行分配 每个位都有一个值,不同的值被赋予不同的权重,权重共有2种:高权重或低权重,如表3-8所示。

表3-8 数据位对应的值和权重

978-7-111-49455-3-Chapter03-40.jpg

(2)如何识别数据协议包的优先级 每个数据协议包的状态域都是由11位组成的,这11位编码就决定了数据协议包的优先级。表3-9列举了三种不同优先级的数据协议包及其状态字段值,优先级识别过程如图3-33所示。ABS控制单元、发动机控制单元和自动变速器控制单元同时向数据总线发送数据,此时在数据传输线上进行11位的数据比较。如果一个控制单元发送了一个低电位,而检测到一个高电位,那么这个控制单元就停止发送,而转为接受。

表3-9 优先级不同的数据协议及其状态字段

978-7-111-49455-3-Chapter03-41.jpg

978-7-111-49455-3-Chapter03-42.jpg

图3-33 数据协议包优先权的确定

基本术语

为了掌握CAN总线系统的结构和工作原理必须了解和理解以下网络术语

1.报文(Message)

报文是网络中交换与传输的数据单元即站点一次性要发送的数据块报文包含了将要发送的完整的数据信息其长短不一致长度不限且可变。CAN总线上的报文以不同报文格式发送但长度受到限制当总线空闲时网络上的任何一个节点都可以发送报文

2.波特率(BaudRate)

波特率是描述数据传输速率的单位指单位时间内信道上所能传输的数据量码元个数),也就是信号经调制后的传输速率也可用比特率来表示单位为比特/(bit/s),也记做bps,常用的数据传输速率单位有kbps、Mbps、GbpsTbps。若每个码元所含的信息量为1bit则波特率等于比特率在计算机通信常将比特率称为波特率”,

1波特(B)=1/(1bit/s)

3.网关(Gateway)

顾名思义网关就是一个网络连接到另一个网络的关口”。大家都知道从一个房间走到另一个房间通常需要经过一扇门同样从一个网络向另一个网络发送信息也必须经过一道关口”,也就是网关网关又称网间连接器协议转换器是一种充当转换重任的计算机系统或设备在使用不同的通信协议数据格式或语言甚至体系结构完全不同的两种系统之间网关是一个翻译器汽车的驱动系统舒适系统信息系统多功能仪表诊断系统等对通信速率的要求不同通常会分别组成一个CAN局域网如果一个信号要从一个局域网进入到另一个局域网必须通过网关将其速率和识别号进行改变后才能完成这种通信另外网关还具有改变信息优先级的功能例如如车辆发生相撞事故安全气囊控制单元会发出负加速度传感器的信号这个信号在驱动系统CAN总线中的优先级非常高但到舒适系统后网关会调低它的优先级因为它在舒适系统中的功能只是打开门和灯根据车辆的不同网关可能安装在组合仪表内车上供电控制单元内或在自己的网关控制单元内

4.信息路由(Information Routing)

互联网,“路由就是指通过相互连接的网络把信息从源地点传输到目标地点的活动一般来说在路由过程中信息至少会经过一个或多个中间节点在互联网中路由器是不同网络间的连接枢纽构成了Internet的骨架。Internet上的数据包中含有目标地址信息路由器接收到这些数据包后会重新计算其校验值并写入新的物理地址然后寻找一条最佳传输路径将数据有效地传送到目的地址CAN网络中各个节点发送的报文中不含目标节点的地址信息由接收节点根据报文本身特征判断是否接收它因此不需要使用路由器在扩展系统时也无需对任何节点或应用层的软件和硬件作任何改动可以直接在CAN中增加节点

5.标识符(Identifier)

CAN网络中传送的报文都有特征标识符是数据帧和远程帧中的一个字段),它给出的不是目标节点地址而是这个报文本身的特征信息以广播方式在网络上发送所有节点都可以接收到节点通过标识符判定是否接收这帧信息

6.优先权

由发送数据报文中的标识符决定报文占用总线的优先权

7.远程数据请求(Remote Data Request)

通过发送远程帧”(RemoteFrame),需要数据的节点可以请求另一节点发送相应的数据帧”(DataFrame)。回应节点传送的数据帧与请求数据的远程帧由相同的标识符命名

8.仲裁(Arbitration)

只要总线空闲任何节点都可以向总线发送报文如果有两个或两个以上的节点同时发送报文就会引起总线访问碰撞通过使用标识符的逐位仲裁可以解决这种碰撞仲裁机制确保了报文和时间均不会损失当具有相同标识符的数据帧和远程帧同时发送时数据帧优先于远程帧在仲裁期间每一个发送器都将其要发送的数据位电平与监控到的总线电平进行比较如果电平相同则该控制单元可以继续发送如果发送的是隐性电平而监视到的是显性电平那么该控制单元就失去了仲裁必须退出发送状态

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈

相关推荐