CAN总线技术在汽车ECU中的开发

发布者:浅唱清风最新更新时间:2015-05-05 来源: elecfans关键字:CAN  总线技术  汽车ECU 手机看文章 扫描二维码
随时随地手机看文章
CAN是ControlAreaNetwork的缩写,该项技术最早由德国BOSCH公司推出,用于汽车内部测量与执行部件之间的数据通信。其总线规范现已被ISO国际标准组织制订为国际标准。由于得到了Motorola,Intel,Philip,Siemence,NEC等公司的支持,它广泛应用在离散控制领域。由于其高性能、高可靠性、及独特的设计,CAN越来越受到人们的重视。国外已有许多大公司的产品采用了这一技术。现代汽车越来越多地采用电子装置控制,如发动机的定时、注油控制,加速、刹车控制(ASC)及复杂的抗锁定刹车系统(ABS)等。由于这些控制需检测及交换大量数据,采用硬接信号线的方式不但烦琐、昂贵,而且难于解决问题,采用CAN总线上述问题便得到很好的解决。早在80年代,众多国际知名的汽车公司就积极致力于汽车总线技术的研究及应用,如博世的CAN、SAE的J1850、马自达的PALMNET、德国大众的ABUS、美国商用机器的AUTOCAN、ISO的VAN等。目前,国外的汽车总线技术已经成熟,采用总线系统的车辆有BENZ、BMW、RORSCHE、ROLLSROYCE、JAGUAR、VOLVO等。
     目前,在国内还没有我们自己开发研制的基于CAN总线的ECU产品。本文是以一汽大众为合作伙伴,共同开展的基于CAN总线汽车控制系统研究工作的一部分,主要攻克了工程化关键技术,所做的汽车分布式电子控制系统具有完全自主产权。文中对CAN总线的原理及性能进行详细分析的基础上,深入研究了CAN总线控制器SJA1000,并设计了一套由单片机89C52和SJA1000以及82C250等芯片组成的CAN总线系统,该系统模拟了汽车中的仪表盘以及照明系统,各个ECU之间通过CAN总线实现相互通讯,从而达到减少汽车中的线束的目的,证实了CAN总线作为一个局域网应用在汽车中的极大优势。该项研究将对我国汽车工业技术水平的提高起到促进作用。
 
CAN总线技术的优越性
CAN总线与一般的通信总线相比,它的数据通信具有突出的可靠性、实时性和灵活性。其具有以下主要特性:CAN是目前为止唯一有国际标准的现场总线;CAN为多主方式工作,网络上任一节点均可在任意时刻主动的向网络上其他节点发送信息,而不分主从,通信方式灵活,且无需站地址等节点信息;CAN网络上的节点信息分成不同的优先级,可满足不同的实时要求,高优先级的数据最多可在134us内得到传输;CAN采用非破坏性总线仲裁技术,当多个节点同时向总线发送信息时,优先级较低的节点会主动地退出发送,而最高优先级的节点不受影响地继续传输数据,从而大大节省了总线冲突仲裁时间。尤其是在网络负载很重的情况下也不会出现网络瘫痪情况(以太网则可能);CAN只需通过报文滤波即可实现点对点、一点对多点及全局广播等几种方式传送接收数据,无需专门的“调度”;CAN的直接通信距离最远可达10km (速率5kbps以下);通信速率最高可达1Mbps(此时通信距离最长为40m);CAN上的节点数主要取决于总线驱动电路,目前可达成110个。采用短帧结构,传输时间短,受干扰概率低,具有极好的检错效果。CAN的每帧信息都有CRC校验及其他检错措施,保证了数据出错率极低。CAN的通信介质可为双绞线、同轴电缆或光纤,选择灵活。CAN节点在错误严重的情况下具有自动关闭输出功能,以使总线上其他节点的操作不受影响。CAN总线具有较高的性能价格比。它结构简单,器件容易购置,每个节点的价格较低,而且开发过程中,能充分利用现在的单片机开发工具。
 
CAN控制器与单片机的接口电路
SJA1000可以与不同类型的单片微型计算机接口,再加上收发器就组成了一个CAN应用系统的核心。系统硬件连接,硬件电路的设计主要是CAN通信控制器与微处理器之间和CAN总线收发器与物理总线之间的接口电路的设计。CAN通信控制器是CAN总线接口电路的核心,主要完成CAN的通信协议,而CAN总线收发器的主要功能是增大通信距离,提高系统的瞬间抗干扰能力,保护总线,降低射频干扰(RFI),实现热防护等。微控制器的时钟采自SJA1000的振荡器。通过SJA1000的时钟分频寄存器CDR,它决定了SJA1000的CLKOUT 脚的输出和它的工作方式。SJA1000的AD0- AD7 连接到89C52的P0口,CS片选信号连接到89C51 的P2. 7。P2. 7 为0时CPU片外存储器地址可选中SJA1000,CPU通过这些地址可对SJA1000执行相应的读/写操作。SJA1000的RD、WR、ALE分别与89C52的对应引脚相连,INT接89C52的P3. 2(INTO),89C52
 
也可以通过中断方式访问SJA1000。82C250与CAN总线的接口部分也采用了一定的安全和抗干扰措施。82C250的CANH和CANL引脚各自通过一个5Ω的电阻与CAN总线相连,电阻可起到一定的限流作用,保护82C250免受过流的冲击。CANH和CANL与地之间并联了两个30pF的小电容,可以起到滤除总线上的高频干扰和一定的防电磁辐射的能力。另外,在两根CAN总线输入端与地之间分别接了一个防雷击管,当两输入端与地之间出现瞬变干扰时,通过防雷击管的放电可起到一定的保护作用。瞬变干扰(Transient Interference)是电磁兼容领域中主要的一种干扰方式,特别是雷击浪涌波,由于持续时间短,脉冲幅值高,能量大,给电子电气设备的正常运行带来极大的威胁。82C250的Rs脚上接有一个斜率电阻,电阻大小可根据总线通信速度适当调节,一般在16—140kΩ之间。
 
软件设计
本文主要设计了汽车的舒适系统,其中包括了车门系统和车灯系统以及仪表盘之间通过CAN总线的通讯,用来实现各个节点之间的相互控制。,当仪表盘上的钥匙门启动时,仪表盘上的点火指示灯会亮起来,同时车门系统和车灯系统的ECU分别在总线上接到这个信息,也分别让各自的电源指示灯亮起来,这就表示各个系统在钥匙门打开的同时已经都准备好了,等待总线发出命令,以便做出相应的动作。当车门要打开时,仪表盘上的车门指示灯亮;当大灯打开时,仪表盘上的大灯指示亮;当转向灯开关打开时,转向灯亮;当双闪开关打开时,左右转向灯同时闪动。
 
模拟实验
本论文采用了VectoR公司生产的CANoe软件对CAN总线进行了实时监控。通过一个CAN卡--CANcardX (PCMCIA接口卡)以及一根CANcabs-CANcardX总线驱动电缆,可以把系统中的CAN总线数据通过计算机编程采集出来。下位机与上位机设定相同的通讯波特率(本论文中设定为100kbps),通过建立相应的数据库,就可以互相通讯了。
 
根据实际测量的结果,可以看出总线负载符合要求,没有接收到出错帧,接受状态处于激活中,接收到数据帧,总线工作状态正常。从总线上测得的数据表明,对于每个ECU节点发送的ID码以及数据与预定的ID码及数据相同,总线接收和发送正常、准确,完全符合预期研究的目标。该模拟系统可以随意向总线上正确的发送数据帧、远程帧,而且一旦某个ECU节点出现故障,总线会进行自动处理(在单片机软件中进行处理),如果该节点一直在向总线发送错误标志,总线就会自动中断该节点,其他节点也会检测到错误条件,停止向给节点发送数据,这样就可以避免总线瘫痪。所以某个ECU节点出现错误,不会影响其他节点的正常工作,不会造成整个总线的瘫痪。
 
CAN总线技术,是工业控制与计算机网络两者边缘的产物。无论是从网络的结构、协议、实时性、还是适应性、灵活性、可靠性乃至成本等,工业控制的底层都有它的特殊性,特别是汽车工业中,要传输的信息帧都短小,要求实时性很强、可靠性高。因此,CAN总线在汽车ECU中的研究具有进一步推广应用的价值和良好的开发前景。 
关键字:CAN  总线技术  汽车ECU 引用地址:CAN总线技术在汽车ECU中的开发

上一篇:汽车网线与CAN总线的标准
下一篇:CAN总线优点

推荐阅读最新更新时间:2024-05-02 23:39

PROFIBUS-DP总线技术在焦炉车辆中的应用
0 引言   焦炉车辆由于受到现场环境的限制,其整体结构紧凑,且是多层布置,尤其是电器室由于受机械部分制约分布更加分散,往往被分割为多个且布置在不同的平台上。炼焦车辆结构复杂,动作多样,动力回路与控制回路遍布车上的各个部分,为了适应电器室的分布,减少安装空间,减少硬线布线、减少故障点,降低故障率、使故障诊断更加方便、简单、准确和直观,提高抗干扰能力和提高控制精度,广泛采用现场总线技术显得十分必要。   ProfiBus-DP是fieldBus应用于高速设备分散控制或自动化控制的现场级总线,具有严格的认证规范、开放的标准、众多厂商的支持和不断发展的应用行规,现已得到广泛的运用,几乎所有的常用变频器都支持该总线通讯。 1 系统组成  
[嵌入式]
【FDCAN】STM32G0B1+FDCAN+HAL库调试记录
前言 本文是本人以STM32G0B1为平台,记录下调试总结,仅供参考,若有不对的地方,还劳烦指正。 一、实验环境? 1)MCU:STM32FG0B1VCT6 2)CAN工具:广成CAN总线分析仪双通道can转usb模块USBCAN调试解析工具can卡 3)CAN收发器:TCAN1042DRQ1 4)STM32CubeMX版本:V6.3.0 5)固件版本:STM32Cube FW_G0 V1.5.0 6)仿真器:ST-LINK V2 7)MDK: V5.30.0.0 二、CAN和FDCAN区别 1.介绍 CAN:1986 年德国电气商博世公司开发出面向汽车的CAN 通信协议. CAN_FD:随着人们对数据传输带宽
[单片机]
【FD<font color='red'>CAN</font>】STM32G0B1+FD<font color='red'>CAN</font>+HAL库调试记录
现场总线技术与DCS系统有什么联系
  现场总线技术的发展体现在两个方面,一个是高速现场总线技术的发展,另外一个是低速现场总线领域的继续完善和发展。   就现在而言,现场总线产品主要针对的是低速总线产品,用于运行速率较低的领域,对网络的性能要求不高。而高速现场总线主要应用于互联控制网、连接控制计算机、处理速度快的设备以及实现低速现场总线网间的连接,是充分实现系统的全分散控制结构所必须的。但是目前高速现场总线这一环节还相对薄弱。   总体来说,自动化系统与设备将向现场总线体系的结构改变,并且向着趋于开放统一的方向发展。同时,在单独的现场总线体系下不可能只容纳单一的标准,加上商业利益的驱使,各种现场总线技术都在十分激烈的市场竞争环境中求得发展。所以有理由认为,在将来的
[嵌入式]
CAN总线测试内容
           CAN总线测试内容可以分为单节点测试和总线系统集成测试两部分。在每个节点连接到CAN总线网络之前都需要进行单节点测试,用以确定节点工作正确并且不会干扰总线的正常通讯。总线系统集成测试则是将各个节点都连接形成完整的CAN总线系统,对系统进行测试以验证系统运行的完整性及正确性、系统的通讯鲁棒性、电器鲁棒性以及系统的容错自恢复功能等。   进行CAN总线测试过程,首先需要制定测试规范,然后根据该测试规范编写测试案例,构建测试环境,并进行测试实现,最终将测试所得的数据进行分析,形成测试报告。    由于CAN总线基本协议的灵活性,目前并没有一个统一的完整覆盖CAN总线各个通讯层次的测试规范,而作为CAN总线技术使用最广
[嵌入式]
如何进行汽车CAN总线开发?
  CAN总线和基于CAN总线的诊断完全不是一个概念,CAN总线的硬件也不一定是OBD的硬件。至于“多去4S店问问技师,车厂的人大部分的人都不一定比这些人懂的多”,你让这些技师给我写个能用的ECU CAN接口出来?   以下开始正式答题。   首先,请看这份恒润工程师写的论文《CAN总线系统测试技术》。   里面基本描述了CAN总线开发的流程,但主要侧重于CAN总线的测试,不过也能让你有所了解。   根据你的描述,假设你的要求是:能够基于某嵌入式平台(最好该平台在汽车ECU开发中被广泛使用),根据给定的通信协议(一般由通信矩阵描述),编写CAN接口代码,并能通过相关设备进行简单测试。   推荐的学习步骤为:   
[嵌入式]
STM32速成笔记(14)—CAN通信
一、CAN通信简介 1.1 CAN简介 CAN全称是Controller Area Network,控制器局域网络,是ISO国际标准化的串行通信协议。CAN是国际上应用最广泛的现场总线之一。 CAN通信只有两根信号线,分别是CAN_H和CAN_L,CAN 控制器根据这两根线上的电位差来判断总线电平。总线申平分为显性电平和隐性申平,二者必居其一。发送方通过使总线电平发生变化,将消息发送给接收方。 • 2.0V---------逻辑0------显性电平 • 0 V-----------逻辑1------隐性电平 CAN总线遵从“线与”机制, 显性电平可以覆盖隐性电平 。这就导致 只有所有节点都发送隐形电平时总线才处于隐性状
[单片机]
STM32速成笔记(14)—<font color='red'>CAN</font>通信
TI推出支持集成型电源管理与 CAN 接口的电机驱动器系列
高森美公司(Microsemi Corporation)为其抗辐射(radiation-hardened)解决方案产品组合增添两款用于航天、商业航空和国防应用的全新超低压降(Ultra-low dropout, ULDO)线性负载点(POL)调节器。MHL8701和MHL8705调节器是其中的首批器件,带有一个集成式单粒子效应(SEE)过滤器,防止通常出现在航空和航天应用中的重离子引起的软错误,新型调节器还可以与公司的耐辐射(radiation-tolerant) SoC和FPGA解决方案共用。 这些密封调节器具有航天或军事等级,新器件正在生产并付运至一家世界领先的航天技术公司,用于新的太空总线架构方案。 美高森美公司高可靠性产
[嵌入式]
基于FPGA的CAN总线控制器设计
0 引言     CAN(控制器局域网)是一种先进的串行通信协议,由德国BOSCH公司开发,并最终成为国际标准(ISO11898),是国际上使用最广泛的现场总线之一。目前世界上已有20多家CAN总线控制器生产商,110多种CAN总线控制器芯片和集成CAN总线控制器的微处理器芯片。     由于定制的CAN总线控制器芯片不能嵌入到SoC(片上系统)中,而采用分立元器件实现CAN总线接口,使得系统中器件数量增加,同时也增大了系统面积,本文所介绍的CAN总线控制器正是由Verilog HDL语言描述,既可以作为一个独立的设备,也可以作为一个模块集成到FPGA中。     虽然目前国内外已有很多人研究或设计了CAN总线控制器IP核,但其中大
[嵌入式]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
更多每日新闻
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved