汽车CAN总线系统设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第1章绪论
1.1概述
进入二十一世纪以来,我国国民经济持续高速增长,同时汽车产业也得到了迅速的发展。
我国汽车特别是轿车的生产和消费都进入了高速增长期。
据统计,2007年我国汽车总量达到近888.2万部,而轿车依然是汽车产业发展的最强劲动力,轿车比重进一步扩大,达到总产量的54.3%。
在汽车业高度发达的今天,汽车已逐步进入中国工薪阶层,成为普通市民的主要交通工具。
据统计至2007年末,全国民用汽车保有量达到5697万辆,比上年末增长14.3%,其中私人汽车保有量3534万辆,增长20.8%。
民用轿车保有量1958万辆,增长26.7%。
人民对家用轿车的消费需求日益增长,而汽车也正朝着电子化、智能化的方向发展。
近年来,在中国汽车产业高速发展的直接推动下,中国汽车电子市场发展迅猛,2007年我国汽车电子产品销售额达到1215.7亿元,同此2006年增长超过40%。
汽车技术的创新70%都是来自于电子技术的应用,整车设计师把汽车电子作为开发新型车型,改善和提高汽车性能的技术措施。
汽车制造商把加快汽车电子化进程,增加汽车电子装置数量,作为汽车的新卖点和夺取未来市场的重要手段。
当前国际汽车电子技术正处于全面快速发展的阶段,其特征体现以下五个方面:(1)功能多样化。
从最初的电子点火、电控燃油喷射发展到如今各种控制功能,如汽油机缸内自喷,电控复合火花点火,智能气门电子,各种线控技术(X-By-Wire),主动和自适应悬挂,防撞防盗等等。
(2)技术一体化。
从最初的单一控制发展到如今的机、液、电、磁一体化,如自喷式发动机电控燃料喷射系统。
(3)系统集成化。
从最初的单一控制发展到如今多口标、多变量综合协调控制,实质更经济有效。
从传感器到控制器包括布线都越来越集成化,把几项功能集成在一起。
(4)通信网络化。
从最初的多子系统分别上作到如今的分布式模块化控制器局部网络,如以CAN总线为基础的整车信息共享的车载分布式控制系统,以D2B (Domestic Digital Bus)无线通信为基础的远程高频网络通信系统。
(5)技术标准化。
由博世公司提出的控制器局域网(Coneroller Area Network)已成文国际标准(ISO11519和ISO11898),并产品化,欧洲汽车上获得广泛应用。
第2章汽车电子与CAN总线
随着汽车电子技术的不断发展,汽车上各种电子控制单元的数目不断增加,连接导线显著增加,因而提高控制单元间通讯可靠性和降低导线成本已成为迫切需要解决的问题。
为此以研发和生产汽车电子产品著称的德国BOSCH公司开发了CAN总线协议,并使其成为国际标准(ISO11898)。
1989年,Intel公司率先开发出CAN总线协议控制器芯片,到目前为止,世界上已经拥有20多家CAN总线控制器芯片生产商,110多种CAN总线协议控制器芯片和集成CAN总线协议控制器的微处理器芯片。
在北美和西欧,CAN总线协议已经成为汽车计算机控制系统和嵌入式工业控制局域网的标准总线,并且拥有以CAN为底层协议专为大型货车和重工机械车辆设计的J1939协议。
我国的汽车CAN总线技术起步较晚,但随着现代汽车电子的不断进步发展,其研究和应用正如火如荼的进行中。
CAN总线是一种串行多主站控制器局域网总线,是一种有效支持分布式控制或实时控制的串性通讯网络。
CAN总线的通信介质可以是双绞线,同轴电缆或光导纤维,通信速率可达1Mbps/40m,通信距离可达10km/40Kbps。
由于其通信速率高,可靠性好以及价格低廉等特点,使其特别适合中小规模的工业过程监控设备的互连和交通运载工具电气系统中。
2.1 CAN总线基本特点:
(1)废除传统的站地址编码,代之以对通信数据块进行编码,可以多主方式工作;(2)采用非破坏性仲裁技术,当两个节点同时向网络上传送数据时,优先级低的节点主动停止数据发送,而优先级高的节点可不受影响继续传输数据,有效避免了总线冲突;
(3)采用短帧结构,每一帧的有效字节数为8个,数据传输时间短,受干扰的概率低,重新发送的时间短;
(4)每帧数据都有CRC校验及其他检错措施,保证了数据传输的高可靠性,适于在高干扰环境下使用;
(5)节点在错误严重的情况下,具有自动关闭总线的功能,切断它与总线的联系,以使总线上其他操作不受影响;
(6)可以点对点,一对多及广播集中方式传送和接受数据。
外接一块工业级的12M振荡芯片作为时钟信号。
复位电路采用X25045芯片进行智能控制。
X25045芯片将看门狗定时器,电源监控电路和E2PROM功能合三为一。
看门狗定时器功能在系统出错期间,经过一个可设置的时间间隔就置位RESET信号。
电源监控电路能检测到欠电压状况,在VCC下降到限阀值以下,系统被复位。
并且RESET信号在VCC恢复且稳定之前一直有效。
存储器功能的X25405是CMOS的4096字的E2PROM.并且支持SPI协议的三线(SO,SI,SCLK)存取。
本节点用到X25405的前两个功能构成可靠的复位电路。
2.2.5开关数字量,模拟量检测电路:
汽车节点的开关器件(信号灯,雨刮,面板,车窗玻璃,电动后视镜等等的开关)特别复杂和繁多,而电流检测,水温油位传感器信号都是非线性的模拟信号,所以可靠实时地对这些开关/模拟量进行检测成为汽车电子硬件必须解决的问题。
传统的分立元件保持电路存在可靠性差,尤其是开关触点氧化严重,浪费大量的微处理器I/O口等问题,推荐采用MOTOROLA公司的多路开关检测芯片MC33993。
其突出优点如下:(1)3.3/5.0V的SPI序列读写(SO,SI,SCLK);
(2)8路可编程开关输入检测(接地或接电源),14路接地开关输入检测,每路开关状态改变均能够产生中断;
(3)开关输入电压从-14V~Vpwr(工作电源),Vpwr最大可达40V;
(4)开关状态改变时的可选择唤醒;
(5)可选择的湿性电流(16mA或2mA);
(6)22对1的模拟量输出;
(7)Vpwr的低功耗电流(standby current)小于100uA,VDD的低功耗电流(standby current)小于10uA。
可见只需要四个CPU口线(SPI序列线和片选),就能够完成22路开关量(其中有8路可编程为对接电源开关)的检测,还可以进行串行和并行的多片MC33993级连。
所谓的湿性电流(wetting current),指的是MC33993内部提供的输入口的上拉和下拉恒流源,可以编程选择为16mA或2mA,这对于保证开关的可靠闭合,去除金属触点的氧化物有着良好的作用。
输入口的恒流源,可以直接驱动MOSFET以及LED。
每一个输入口都可以编程为模拟量输出状态,从而在AMUX引脚输出所选输入口的电压。
利用MC33993恒流源和模拟量输出可以组成线性的传感器检测电路。
ADC芯片选用AD公司生产的并行数据采样集成芯片AD1674。
它从引脚到功能都与AD574/674完全兼容,但内部增加了采样/保持电路,采样频率为100kHZ,并且有全控模式和单一工作模式。
其采样精度可达0.05%,符合高速数据采集的要求。
2.2.6功率器件驱动电路:
汽车车身控制系统需要驱动大功率的用电器件,比如照明信号灯,前后雨刮器电机,电动车窗,电动后视镜等等。
功率驱动器件考虑采用MOTOROLA公司的汽车专用功率器件。
MC33286为汽车电气专用智能的双路控制驱动芯片,与传统的机械继电器相比,自身提供过流和过热保护,响应时间更短,稳定性更高。
MC33286设有两路驱动通道,每路最大工作电流可达15A,通过两路输入端口将CPU引脚电平信号引入,经过内部的逻辑处理模块转换成输出通道的电平变化。
特别适合信号灯以及阻性负载的驱动。
MC33887是带反馈的H桥型驱动芯片,专用来驱动需要正反转的电机负载。
MC33486
与MC33887类似,但内部只有半桥须外加CMOS管以构成全桥驱动电路,稳定输出可达10 A,尤其适用于电动车窗电机之类的大功率并伴有冲击电流的正反相控制要求。
2.3 软件结构
系统的程序结构分为四个部分:CAN通讯程序(包括应用层协议的SJA1000通讯),外围接口程序(所有检测芯片和驱动芯片的驱动),中断服务程序(处理开关信号以及故障报警等消息),主程序(完成系统初始化和任务调度,喂狗等)。
限于篇幅,以下着重介绍 CAN应用层协议:
本系统CAN通讯选用CAN2.0B协议的PeliCAN模式,通信位速率为500Kbps,采用双验收滤波器机制。
为使用及修改方便,通讯协议中标识码设计兼容点对点、一对多及广播通讯模式。
开关量消息通讯时各节点间采用主从结构,子节点的报文只有主节点接收(点对点模式),主节点的报文所有子节点均接收(广播模式)。
模拟量消息通讯时各节点间采用点对点模式。
标识符定义:(如图3所示)
(1)类名:00000100--应答类消息(自检应答、故障诊断);00001000--命令类消息;00010000--调试类消息;00100000--下载类消息;01000000--工作类消息。
(2)保留A:验收滤波器配置预留。
应答类消息中:ID19:1--自检应答消息 0--故障诊断出错消息
ID20:验收滤波器配置预留
工作类消息中:ID19:1--开关量消息 0--模拟量消息
ID20:验收滤波器配置预留
2.4 本章小结
本章主要介绍了CAN总线的性能特点和网络协议的技术规范。
第3章现代汽车电子技术
3.1现代汽车电子技术的发展分几个阶段。
(1)电子管时代:
20世纪50年代,人们开始在汽车上安装电子管收音机,这是电子技术在汽车上应用的雏形。
1959年晶体管收音机问世后,很快在汽车上得到了应用。
晶体管时代:20世纪60年代,汽车上应用了硅整流交流发电机和晶体管调节器,到60年代中期,利用晶体管的放大和开关原理,开始在汽车上采用晶体管电压调节器和晶体管点火装置。
但电子技术更多地应用在汽车上是20世纪70年代以后,主要是为了解决汽车的安全、节能和环保三大问题。
进入70年代后期,电子工业有了长足的发展,特别是集成电路、大规模集成电路和超大规模集成电路技术的飞速发展,使得微控制器在汽车上得到广泛的应用,给汽车工业带来了划时代的变革。
(2)集成电路时代:
20世纪90年代,汽车电子进入了其发展的第三个阶段,这是对汽车工业的发展最有价值、最有贡献的阶段。
集成电路技术所取得的巨大成就使汽车电子前进了一步,更加先进的微控制器使汽车具有智能,能进行控制决策。
这样不仅在节能、排放和安全等方面提高了汽车的性能,同时也提高了汽车的舒适性。
网络化综合技术时代:目前汽车技术已发展到第四代,即包括电子技术、计算机技术、综合控制技术、智能传感器技术等先进汽车电子技术。
以微控制器为核心的汽车电子控制单元已不再是通过传统的线束连接起来的,而是通过汽车电子网络系统连接起来的,实现了通信与控制的网络化管理。
一些汽车专家认为,就像汽车电子技术在20世纪70年代引入集成电路、80年代引入微控制器一样,近十几年来,数据总线技术的引入也将是汽车电子技术发展的一个里程碑。
控制器局域网(CAN)是现代汽车网络通信与控制系统中的重要组成部分,《汽车CAN总线系统原理、设计与应用》全面、系统地介绍了汽车CAN总线的基本原理、应用层协议制定、系统软件和硬件设计,并且通过实例介绍了汽车CAN总线系统的设计方法。
全书共10章,首先介绍了汽车网络通信系统的特点,全面阐述了当今汽车网络系统的结构、类型、应用及其发展趋势,然后着重对CAN总线通信系统的原理和特点、带CAN接口的飞思卡尔微控制器、MSCAN的特点和编程、
基于XGATE的CAN通信方法、CAN总线的收发器、CAN总线应用中的Bootloader、CAN的标定协议、CAN总线系统设计流程等几个方面进行了详细的论述,最后给出了CAN总线系统设计、仿真和测试方法。
3.2 本章小结
本章介绍了现代汽车电子技术发展阶段。
第4章 CAN总线检测与控制系统
CAN (Controller Area Network)总线最初是由德国BOSCH公司为汽车检测与控制系统而设计的。
由于其显著的特点,其应用范围越来越广,已扩大到过程控制、机械工业、纺织机械、农用机械、机器人、数控机床、医疗器械及传感器等领域。
目前,在国际上CAN总线已经成为控制领域的热点,但CAN总线在矿井下等特殊环境下的应用还没有进行系统的研究。
本文针对矿井这种特殊环境设计了本安型CAN总线智能节点适配卡,为CAN总线在矿井下等一些比较恶劣环境下的应用提供了可靠的保证。
4.1 硬件结构
4.1.1 适配卡的功能
CAN 总线与PC机的连接方法有两种:①通过一个转换器与PC机的串行口连接。
该种方式设计简单,但数据转发速度较慢。
②在PC机的扩展槽里插入一块适配卡。
由于使用适配卡所交换的数据量较大,比较适合CAN总线的需求,所以近年来大多使用适
配卡的方式。
适配卡既可以对数据起到转发的作用,即收集CAN总线上各个节点的数据,转发给上位机,并把上位机的命令和数据发给各节点,也可以完成对CAN总线上的用户系统的部分监控和管理工作,故又被称为智能适配卡。
它可以减轻上位机的负担,提高系统的实时性。
这种适配卡需要的硬件条件较高,且需要较多的程序存储器和数据存储器。
作者研制的就是这种智能适配卡。
4.1.2智能适配卡的硬件组成
目前广泛流行的CAN总线器件分为两大类:一类是独立的CAN控制器,如PHILIPS 公司的82c200、SJA1000及Intel公司的 82526/82527等;另一类是带有在片CAN总线的微控制器,如P8xc582、P80C592FFA等。
根据矿井下实际情况的需要,设计了如图1 所示的CAN总线智能适配卡。
它采用P80C592FFA作为CAN控制芯片;使用
CY7C0944PV-AC作为双端口存储器;使用PCA82C250 作为CAN控制器接口芯片。
硬件电路中使用PCA82C250的目的是为了增大通信距离,提高系统的瞬间抗干扰能力。
因为该智能适配卡是在矿井下应用,还必须具有防暴功能,因此使用6N137进行信号隔
离
在图1中,82C250接收总线上所有传输的帧,通过电流和电压隔离后,传送到P80C592的CAN模块,CAN模块比较接收码寄存器和帧的ID码,若相等则接收,并引发一个接收中断。
在接收中断的处理中,P80C592读取码CAN模块接收缓冲区的数据,把它传送到CY7C09449的双口RAM中。
最后PC机通过PCI总线定时读取CY7C09449双口RAM中的数据。
中断申请电路由两个D触发器和一个用来译码的GAL芯片组成。
两边的工作方式相同。
设计中考虑到便于电路调试和处理整体运行时出现的问题,选择三种复位方式。
其硬件构成如图3所示。
(1)上电复位:与PC机上电复位同时复位。
当PC机通过复位时,CAN适配卡也同时复位。
(2)手动复位:当调试中出现问题时,通过手动复位键复位,以便解决调试中出现的问题。
(3)软件复位:在程序运行中出现问题时,不需要关掉PC机,只需启动PC机管理程序中的初始化功能模块即可,它可通过软件指令对CAN适配卡进行复位。
硬件电路设计并不很困难,但也要注意一些事项,否则会事倍功半,功亏一篑。
(1)地线的设计应特别注意,为了减少噪声,模拟信号的地线和数字信号的地线应该分开。
(2)该适配卡的防暴技术主要采用电路隔离技术,同时采用本质安全技术,通过抑制电火花和热效应能量来防爆。
电器设备的最大功率不应超过25W,对于5V电源的设备,它的功率一般要远远低于25W。
开关触电开闭时的放电也应注意,要减少电路的储能器件(如电感和电容),一般要求最大电容小于5μF,最大电感小于20μF。
4.2 软件接口设计
接口软件设计包括单片机上的汇编程序和PC机上的设备驱动程序设计。
两者的纽带是CY7C09449上的双口RAM。
这个双口RAM共有16KB的共享空间0x4000H~0x5FFFH为发送帧空间,0x6000~
0x7FFFH为接收帧空间。
x04E8是主机对本地处理器的邮箱HLDATA的地址,0x4F8是本地处理器对主机的邮箱LHDATA的地址,如图4所示。
对于主机,这些地址都是偏移地址,还得加上PCI配置寄存器ABAR0中的值才是真正的物理地址。
4.3本章小结
本章详细介绍了系统的软、硬件设计与开发过程,首先是对CAN总计设计结构,然后对系统的主要控制芯片进行了介绍,接着详细描述了系统的主控制器电路、CAN通讯模块电路。
第5章 CAN总线系统的抗干扰设计
一个系统要应用到实际中去,其运行就需要极高的可靠性和长期的稳定性。
而汽车电子的工作环境通常很恶劣,其周围充斥着电磁波,电子器件在-40℃--125℃的高温差下工作,并且还需要客观湿热、强振动和干扰信号多且强的恶劣环境。
汽车上有很多噪声源,如刮水器电动机、燃油泵、火花点火线圈、空调起动器、交流发电机线缆连接的间歇切断,以及某些无线电子设备等,这些干扰问题轻则影响电子设备的正常工作,重则损坏相应的电器元件,因此必须采取一定的硬件及软件的抗干扰措施,否则各项电子系统难以稳定、可靠地运行。
5.1硬件抗干扰措施
当电磁兼容问题发生的时候,都必须符合三个条件
(1)存在一定的噪声源;
(2)存在着受干扰的敏感设备
(3)存在着干扰的传播路径。
所以解决电磁兼容问题也应该从这三方面入手,即硬件抗干扰总的设计原则就是抑制干扰源,切断干扰传播路径,提高敏感器件的抗干扰性能。
5.1.1抑制干扰源
抑制干扰源就是尽可能地减小干扰源的du/dt和di/dt,这是抗干扰设计中最优先考虑和最重要的原则,减小干扰源的du/dt主要通过在干扰源两端并联电容实现;减小干扰源的di/dt主要是通过在干扰源回路串联电感或电阻,以及增加续流二极管来实现。
本系统采用的相关抑制干扰源的措施如下:
(1)继电器线圈并联上续流二极管以消除断开线圈时产生的反电动势干扰。
(2)在继电器触点两端并接火花抑制电路,减小电火花的影响。
(3)给电机加滤波电路,并尽量缩短电容、电感的引线。
(4) PCB布线时避免90度的折线,以减少高频噪音辐射。
5.1.2切断干扰传播路径
本系统采用的相关切断干扰传播路径的措施如下:
(1) PCB合理布局,将继电器、电机等噪声元件与单片机尽量远离。
(2)布线时要减小信号线间的交叉干扰;
(3)时钟振荡电路部分用地线包围以来,让周围的电场趋近于零。
(4)在系统的CAN总线通信模块部分采用藕器件实现各CAN节点电气隔离,增强CAN 总线节点的抗干扰能力。
5.1.3 提高敏感器件的抗干扰性能
提高敏感器件的抗干扰性能是指从敏感器件这边考虑尽量减少对干扰噪声的拾取,以及从不正常状态尽快恢复的方法。
本系统采用的相关提高敏感器件抗干扰性能的措施如下:
(1)在PCB布线时尽量减少环路的面积,以降低感应噪声。
(2)电源线和接地线尽量布粗,其中把数字地和模拟地分开接。
(3)布线时把关键信号线(如时钟线)布得尽量粗短,并在两边加上保护地。
(4)在系统中加入掉电保护功能,使用电源监控及看门狗电路。
(5)将芯片中的闲置端通过接地或接电源的方式设置成固定的电平。
(6)每个集成电路都要加上一个去藕电容,去藕电容焊在印刷电路上时引脚尽量短。
5.2 软件抗干扰措施
由于干扰信号产生的原因错综复杂,且具有很大的随机性,尽管我们采取了硬件抗干扰措施,但仍然很难保证系统完全不受干扰,而软件的可靠性对于整个系统的稳定运行时很重要的,尤其当系统受到干扰时,软件要及时处理故障,并自动回到正确运行状态。
软件抗干扰方法具有简单、灵活方便、耗费低等特点,实际的系统设计中通常会采取软件抗干扰技术加以补充,作为硬件抗干扰措施的辅助手段。
系统采用的软件抗干扰方法主要有以下几种。
(1)数字滤波技术
数字滤波是在对模拟信号多采样的基础上,通过软件算法提取最逼近真值数据的过程。
数字滤波的算法灵活,可选择权限参数,其效果往往是硬件滤波电路无法达到的。
为了实现电动车窗的堵转和防夹功能,系统需要利用单片机的A/D模块采集电机工作时的电流值,然后再根据电机的特性来设置其堵转电流的阀值,而此时在软件处理上采用数字滤波技术就可以消除系统可能出现的干扰,从而准确地设置好堵转电流的阀值。
(2)软件看门狗技术
为系统受到干扰而失控,引起程序跑飞时,也可能使程序陷入死循环。
当软件拦截技术不能使失控的程序摆脱死循环的困境时,通常采用看门狗技术,使程序脱离死循环。
为了防止系统受到干扰时使程序跑飞,系统采用了软件看门狗技术,使用时将其中断优先级设定为最高级,在程序正常运行时,及时将定时器的寄存器清零,不让它中断,而一旦发生了中断,则说明程序执行了非法操作,在中断服务子程序中放入一
条转移指令,用出错处理程序来完成善后工作,并用软件方法使程序复位,从而可以使程序恢复到正常工作状态。
5.3本章小结
为保证系统运行的可靠性,本章针对系统设计的干扰因素进行了分析并提出了相应的抗干扰措施。
文章首先介绍了系统的硬件抗干扰措施,然后介绍了系统的软件抗干扰措施。
结论
随着汽车电子技术的不断发展,汽车上的各种电子装置越来越多,电子控制装置之间的通讯也越来越复杂,而汽车上传统的电气系统已远远不能满足汽车愈加复杂的控制系统要求。
针对上述问题,本文将CAN总线系统设计深入研究。
本文的主要研究工作如下:
(1)深入研究了国内外汽车局域网CAN总线的发展现状和发展趋势,通过对CAN 总线的原理和应用进行研究、吸收。
(2)根据汽车上各种电器的功能和布置特点,确定了系统最终的控制方案,对系统各模块进行了规划并对其要实现的功能进行了阐述。
(3)采用模块化的设计思路,对系统的软硬件进行了具体的设计。
(4)为提高系统工作的可靠性和稳定性,对系统的软硬件进行抗干扰设计。
参考文献
[1] 高成.我国汽车电子行业发展新机遇新挑战新思路概述.中国军转民,2003,(9)
[2] 郑伟良.汽车电子在冉冉升起.电子产品世界,2005,(10):26~28
[3] 饶运涛等.现场总线CAN原理与应用技术.北京航空航天大学出版社,2007;20~35
[4] 张正楠.汽车集成电路及其应用. 机械工业出版社,2008:166~261
[5] 邬宽明.CAN总线原理和应用系统设计. 北京航空航天大学出版社,1996,24~52
[6] 冯渊.汽车电子控制技术:机械工业出版社,1999:84~103
[7] 阳宪惠.现场总线技术及其应用.清华大学出版社,2000;76~95。