CAN总线在汽车车身控制中的应用

发布者:红尘清梦最新更新时间:2006-07-17 来源: 电子元器件应用关键字:寄存器  总线  报文 手机看文章 扫描二维码
随时随地手机看文章

引言

20世纪80年代以来,随着集成电路和单片机在汽车上的广泛应用,汽车上的电子控制单元越来越多,例如电子燃油喷射装置、防抱死制动装置(ABS)、安全气囊装置、电控门窗装置和主动悬架等等。在这种情况下,如果仍采用常规的布线方式,即电线一端与开关相接,另一端与用电设备相通,将导致车上电线数目的急剧增加,使得电线的质量占整车质量的4%左右。另外,电控系统的增加虽然提高了轿车的动力性、经济性和舒适性,但随之增加的复杂电路也降低了汽车的可靠性,增加了维修的难度。为此,改革汽车电气技术的呼声日益高涨。因此,一种新的概念——车用控制器局域网络CAN应运而生。

CAN是控制器局域网络(Controller Area Network)的简称,它是由德国Bosch公司及几个半导体生产商开发出来的,CAN总线是一种串行多主站控制器局域网总线。它具有很高的网络安全性、通讯可靠性和实时性,而且简单实用,网络成本低。特别适用于汽车计算机控制系统和环境温度恶劣、电磁辐射强和振动大的工业环境。

CAN总线的技术特点

CAN总线可有效支持分布式控制或实时控制。该总线的通信介质可以是双绞线、同轴电缆或光纤,其主要特点如下:

◆CAN总线为多主站总线,各节点可在任意时刻向网络上的其他节点发送信息,且不分主从;

◆CAN总线采用独特的非破坏性总线仲裁技术,高优先级节点优先传送数据,故实时性好;

◆CAN总线具有点对点、一点对多点及全局广播传送数据的功能;

◆CAN总线采用短帧结构,每帧有效字节数最多为8个,数据传输时间短,并有CRC及其它校验措施,数据出错率极低;

◆CAN总线上某一节点出现严重错误时,可自动脱离总线,而总线上的其他操作不受影响;

◆CAN总线系统扩充时,可直接将新节点挂在总线上,因而走线少,系统扩充容易,改型灵活;

◆CAN总线的最大传输速率可达1Mb/s,直接通信距离最远可达到10km(速率在5kbps以下);

◆CAN总线上的节点数取决于总线驱动电路。在标准帧(11位报文标识符)时可达到110个,而在扩展帧(29位报文标识符)时,个数不受限。

车身系统的CAN控制设计

CAN总线网络系统架构

现代汽车典刑的控制单元有发动机控制模块、变速器控制模块、多媒体控制模块、气囊控制模块、空调控制模块、巡航控制模块、车身控制模块(包括照明指示和车窗、刮雨器等)、防抱死制动系统(ABS)防滑控制系统(ASR)等。完善的汽车CAN总线网络系统架构如图1所示。

CAN节点的硬件架构

本系统中,CAN节点采用:

ECU(AT89C51)+CAN控制器(SJA1000)+CAN收发器(PCA82C250)的电路结构以下是其核心芯片简介:

(1)CAN控制器

为了系统进一步扩展的需要,可选取支持CAN 2.0B通讯协议的芯片SJA1000。SJA1000是PHILIPS公司生产的既支持CAN 2.0B,又支持CAN 2.0A的CAN控制器,它与仅支持CAN 2.0A的CAN控制器PCA82C200在硬件和软件上完全兼容。

(2)CAN收发器

PCA82C250是PHILIPS推出的CAN控制器和物理总线接口芯片,可提供对总线的差分发送和接收。它与ISO 11898标准完全兼容,并有高速、斜率控制和待机3种不同的工作方式,可根据实际情况选择。

(3)单片机AT89C51

AT89C51是ATMEL公司的单片机。它是一种低功耗、高性能、内含4KB闪速存储器的8位CMOS微控制器,与工业标准MCS-51指令系统和引脚完全兼容。AT89系列的优越性在于其片内闪速存储器可进行1000次的编程与擦除,且数据不易丢失,数据可保存10年。

CAN总线控制器、总线驱动器和单片机连接基本方法如图2所示。

车身控制模块中的CAN应用层协议

协议原则

本协议遵循CAN2.0B规范,根据车身控制模块的特点,采用源→目的方法,每个节点都有自己固定的标识地址,且节点数小于64,设计时可将中央控制模块设为主节点,而将车门、电动座椅子模块及自检子模块设置为从节点。本协议可完成以下功能:

(1)特定信息的广播;

(2)主从节点之间的连接;

(3)主从节点之间的信息交换(包括故障信息)。

本协议采用帧优先原则分配标识符,每一帧标识符中的高四位表示帧类型,不同帧类型有不同的优先权,优先权决定了各种信息帧在同等情况下的发送顺序,协议中的29位标识符的分配如下:

帧类型(4位)+目的地址(6位)+源地址(6位)+命令(或状态、报告)属性(13位)[或数据属性+分段标志+分段号(共13位)]。

对所有的命令或状态、数据、报告属性、除定时采集发送的数据外,原则上均需应答(发送确认帧以保证通讯正常)。

帧格式仲裁场和控制场定义

仲裁场由29位标识符ID28-ID0以及SRR、IDE和RTR组成,SJA1000中的寄存器17-21用来存放扩展帧格式帧信息的标识符。发送时,SRR=1,IDE=1,RTR=1/0(远程帧/数据帧)。标识符中的ID28-ID25为车身控制模块交换报文的帧类型(共4位)。ID24-ID19为车身控制模块中帧信息使用者的地址(或称为目的地址,共6位)。ID18-ID13为车身控制模块中帧信息发送者的地址或称为源地址(共6位)。ID12-ID5为车身控制模块中交换的命令、状态、数据或报告属性(共8位),ID4位需附加命令或状态、数据、报告属性时的分段标志。ID3-ID0为附加命令或状态、数据、报告属性的分段号(共4位)。当ID4=0时,ID3-ID0控制场、数据寄存器0-7有效。对于远程帧,则可忽略ID4-ID0以及控制场的值。SJA1000的寄存器16低四位DLC3-DLC0可构成控制场,以决定数据帧的数据长度。

车身控制模块CAN2.0B通讯报文约定

按车身控制模块的节点要求,通讯的信息帧分为表1所列的6种,表1中的优先级按序号从高到低排列。其目的地址和源地址的分配见表2所列。


其工作方式如下:

(1)开机后或唤醒时,从节点向主节点发送状态信息,主节点发送广播信息远程帧(两次),广播信息为共用信息,包括车速信号,档位信号,点火开关位置信号等。

(2)正常情况下,从节点内部巡查各端口状态,如有故障则向主节点发送故障代码3次,主节点收到三次故障报警后开始响应,从节点停止发送,一旦故障消失,再向主节点发送正常信息。在主节点中应有一故障表,以用于已诊断模块的通讯。

(3)主结点分别发送自检信息后,如各从节点正常,则发送正常信息,状态和数据帧。如有故障,则通过分段数据帧发送故障报警帧。

(4)从节点监测到正常输入信号的变化(包括开关量和模拟量采样级数的变化)后,便通过报告帧发送信息给主节点,主节点则发送命令帧以示响应。

通讯报文定义

表3所列是中央控制模块与诊断模块的通讯报文定义。表中,aaaa为分段号,可在故障代码多于8个时设置,最多可达传送16×8个字节代码;bbbbbb为各传感器代号,其响应帧采用不分段的数据帧,cccccccc为执行相应动作的代码,如车窗上升为00000001,下降为00000010,该响应最多可以执行256个动作。响应帧采用远程帧,请求帧为远程帧。

在系统正常工作时,各节点的通讯协议约定如表4所列。表中的dddd为分段起始命令中包含的总段数;eeee为广播信息的某一段号,控制场中的数据长度为该段内的数据长度,数据场中的数据广播的某段实际数据,按顺序定义数据有:

◆数据寄存器1=车速信息高8位;

◆数据寄存器2=车速信号低8位;

◆数据寄存器3=发动机转速信号高8位;

◆数据寄存器4=发动机转速信号低8位;

◆数据寄存器5=点火开关位置,其中,0表示钥匙拔出;1表示钥匙位于OFF;2表示钥匙位于ACC;3表示钥匙位于RUN;4表示钥匙位于START;

◆数据寄存器6=档位信号,0表示空档;1表示驱动档;2表示驱动档;3表示倒档;4表示驻车档;


◆数据寄存器7=遥控信号,0表示遥控解锁主驾车门;1表示遥控锁定主驾车门;2表示遥控解锁所有车门;3表示遥控锁定所有车门;4表示遥控解锁行礼箱;

◆数据寄存器8用于防盗模式;0表示进入防盗模式,1表示解除防盗模式;

◆数据寄存器9-16:保留。

软件流程

各控制器应按规定格式和周期发送数据到总线上,同时也要接受其他控制器的信息。总线上的其他控制器则根据需要各取所需的报文。对于接收数据,本系统采用中断方式实现。一旦中断发生,即将接收的数据自动装载到相应的报文寄存器中,此时还可采用屏蔽滤波方式,利用屏蔽滤波寄存器对接收报文的标识符和预先在接收缓冲器初始化时设定的标识符进行有选择地逐位比较,只有标识符匹配的报文才能进入接收缓冲器,那些不符合要求的报文则将被屏蔽于接收缓冲器之外,从而减轻CPU处理报文的负担。此外,不同数据应放入不同的报文寄存器中,因此在接收中断服务程序中,就可以容易地判断出中断是由哪个接收报文引起的,其程序流程图如图3所示。

结束语

CAN总线作为一种可靠的汽车计算器网络总线,现已开始在先进的汽车上得到应用,从而使得各汽车计算机控制单元能够通过CAN总线共享所有的信息和资源,以达到简化布线、减少传感器数量、避免控制功能重复、提高系统可靠性和可维护性、降低成本、更好地匹配和协调各个控制系统之目的,进而使得汽车的动力性、操作稳定性、完全性都上升到新的高度、随着汽车电子技术的发展,具有高度灵活性、简单的扩展性、优良的抗干扰性和纠错能力的CAN总线通信协议必将在汽车电容系统中得到更广泛的应用。

关键字:寄存器  总线  报文 引用地址:CAN总线在汽车车身控制中的应用

上一篇:FRAM在汽车行驶记录仪中的应用
下一篇:汽车ESP用传感器及其接口技术

推荐阅读最新更新时间:2024-11-14 17:31

西门子PLC的内部标志与寄存器
  ①内部标志位M:西门子plc中的“内部标志位”用英文字母M标记,作用相当于其他公司PLC中常说的“内部继电器”,它用于寄存PLC程序中间运算结果。在PLC程序中,内部标志位的内容可以随着程序的执行,在执行过程中不断进行更新与改变。   ②特殊内部标志位SM:PLC内部特殊标志位用英文字母SM标记,它与内部标志位的区别是:特殊标志位SM具有特殊的含义,它可以反映PLC内部的工作状态和控制信息,并可被PLC用户程序使用。   特殊标志位SM分为“只读”和“可读写”两部分。“只读”信号由PLC自动生成结果,在程序中只能使用其结果,而不能进行“写入”(或输出)操作。   ③累加器AC:S7.200与S7—400有4个32位
[嵌入式]
判断DP总线是否正常的方法
DP线的通断,会影响到现场站之间和现场站与中控的连接,是系统能正常工作的基础。判断DP线是否正常的方法,我自己的一般会用下面的方法: 1.把DP线两端的DP头的终端电阻都打到ON上,在其中一段用万用表量DP头3号引脚和8号引脚之间的电阻,正常测量值是110欧姆左右; 2.把测量端的终端电阻打到OFF上,远端的不动,这时的正常测量值是220欧姆左右; 3.把远端的终端电阻打到OFF上,测量端的终端电阻打到ON上,这时正常的测量值也应该是220欧姆左右; 4.把两端的终端电阻都打到OFF上,这时应该是开路,量不出电阻。 假如总线上有不止一个DP头,可以只测量两端,中间的DP头的终端电阻,始终处在OFF上就可以了。不通的话,可以分段测
[嵌入式]
BACnet和LonWorks现场总线技术
1. BACnet 现场总线 技术 BACnet是Building Automation and Control Network 的简称,是一种为楼宇自控网络制定的数据通讯协议。1995年6月,美国暖通空调工程师协会(American Society of Heating, Refrigeration, and Air-conditioning Engineers,ASHRAE)经过8年半时间,正式通过全球首个楼宇自控行业通讯标准——BACnet。同年12月成为美国国家标准,并且还得到欧盟委员会的承认,成为欧盟标准草案。 BACnet是一个标准通讯和数据交换协议。各厂家按照这一协议标准开发与楼宇自控网兼容的控制器与接口,最终达到
[嵌入式]
超小超薄零延迟,Diodes全新总线切换器问市
Diodes 公司 (Nasdaq:DIOD) 宣布四信道和双信道 4:1 和 2:1 总线切换器系列开始供应,采用超薄 QFN (UQFN) 封装。UQFN 封装可让 OEM 在开发个人笔记本电脑、平板计算机、网络与电信设备时,更轻松提升 PCB 密度,并减少产品尺寸。 诸如总线多路复用器和解复用器等分离逻辑设备,依然是嵌入式设计的重要组件。此 UQFN 封装尺寸仅 3mm × 3mm × 0.65mm (高),远小于标准封装内的同级装置,因此几乎各种设计都能加入总线切换器,即使是组件密度高的设计也不例外。 总线切换器内的每个通道,都可针对二或四个输入的单一输出进行多路复用/解复用。虽然所有信道的路径会由通用输入做
[网络通信]
超小超薄零延迟,Diodes全新<font color='red'>总线</font>切换器问市
航空电子系统几种主要数据总线应用特性分析
  70年代以来,随着微电子、计算机、控制论的发展,使得航空电子系统的发展更为迅速。1980年美国专门制定了军用1553系列标准和ARINC系列标准,使数据总线更加规范化。目前自动化程度较高的军、民用飞机,如 F-16、F-117、幻影2000、空中客机A340等都采用了总线技术。数据总线技术在我国航空电子系统设计中已有十几年的设计和使用经验,本文就常用的MIL-STD-1553B、ARINC429、CSDB、ARINC6路总线(561、568、582)和ARINC629总线从构成、特性以及应用等几方面进行讨论和阐述。   1 总线的构成   一旦设计者确定了基本的飞电系统结构后,最重要的是总线布局,它对系统性能具有重要影
[嵌入式]
基于CAN总线技术的汽车ECU设计
1、引言   控制器局域网(ControllerAreaNetwork,CAN)是Bosch公司于1986年在美国汽车工程师协会(SAE)大会上推出的一种新型串行总线,被广泛地用于汽车内部测量与执行部件之间的数据通信,其总线规范已被制订为国际标准,由于其高性能、高可靠性及独特的设计,CAN总线技术越来越受到人们的重视 。随着现代汽车技术的发展,电子设备在汽车中的比重越来越高,如电喷发动机、燃油高压共轨、制动防抱死系统(ABS)、自动变速器系统、注油控制以及电动门窗等 ,这些总成之间需要检测并交换大量数据,采用CAN总线技术不仅成本低,而且可靠性明显提高。从1992年起,Mercedes-Benz(奔驰)公司开始在高级客车中使用CAN
[嵌入式]
基于CAN总线的嵌入式数控系统网络化研究
0 引言 近些年,随着现场总线技术和嵌入式技术在工业控制领域的应用,给整个制造业领域带来了巨大的变革,极大的提高了生产力发展水平。本文设计了一种基于ARM9系列微处理器S3C2440和专业运动芯片MCX314As嵌入式数控系统,并在微处理器中移植经过裁剪的开源Linux操作系统,使其具有多任务处理能力。该数控系统结构简单、成本低、插补精度高等优点是符合新一代开放式标准的经济性数控系统。通过在ARM上面扩展CAN总线接口电路,利用CAN总线技术对嵌入式数控系统进行网络化,组建基于CAN总线的局域网数控加工网络。CAN总线在数据通信方面具有突出的可靠性、实时性和灵活性,特别适合工业现场自动化设备的相互连接。根据实际情况,考虑到企
[单片机]
基于CAN<font color='red'>总线</font>的嵌入式数控系统网络化研究
ISO 26262安全机构插入和验证四步骤讲解
翻译自——semiengineering 随着先进的驾驶员辅助系统和自动驾驶技术的引入,汽车集成电路的复杂性呈指数级增长。与这种复杂性的增加直接相关的是,确保IC不受随机硬件故障(不可预测的功能故障)的影响所增加的负担。 历史上,汽车行业通过利用专家的判断来进行安全分析。最初的安全性分析通常采用自上而下的故障模式影响诊断分析(FMEDA)。随着IC复杂性的增加,主要由专家驱动的方法不再实用或有效。 汽车集成电路已经变得太大、太复杂,以至于人们无法完全理解保护所有可能的故障所需的安全机制。必须部署自动化工作流来帮助专家处理随机故障。有效的方法是使用安全综合和形式验证来将安全机制纳入设计。这最好在寄存器传输层(RTL)进行
[汽车电子]
ISO 26262安全机构插入和验证四步骤讲解
小广播
最新汽车电子文章
换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved