0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

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

电子工程师 来源: 《长春理工大学学报(自然 作者:王凌云;臧景峰;王 2021-04-06 12:10 次阅读

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总线作为一个局域网应用在汽车中的极大优势。该项研究将对我国汽车工业技术水平的提高起到促进作用。

pIYBAGBr3ZOAAXVIAADHVx0jxQg827.png

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。

pIYBAGBr3emASo0ZAAEVq1H59G4391.png

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),通过建立相应的数据库,就可以互相通讯了。

o4YBAGBr3cGAM5j1AAFLTfUuqHg727.png

根据实际测量的结果,可以看出总线负载符合要求,没有接收到出错帧,接受状态处于激活中,接收到数据帧,总线工作状态正常。从总线上测得的数据表明,对于每个ECU节点发送的ID码以及数据与预定的ID码及数据相同,总线接收和发送正常、准确,完全符合预期研究的目标。

该模拟系统可以随意向总线上正确的发送数据帧、远程帧,而且一旦某个ECU节点出现故障,总线会进行自动处理(在单片机软件中进行处理),如果该节点一直在向总线发送错误标志,总线就会自动中断该节点,其他节点也会检测到错误条件,停止向给节点发送数据,这样就可以避免总线瘫痪。所以某个ECU节点出现错误,不会影响其他节点的正常工作,不会造成整个总线的瘫痪。

结语

CAN总线技术,是工业控制与计算机网络两者边缘的产物。无论是从网络的结构、协议、实时性、还是适应性、灵活性、可靠性乃至成本等,工业控制的底层都有它的特殊性,特别是汽车工业中,要传输的信息帧都短小,要求实时性很强、可靠性高。因此,CAN总线在汽车ECU中的研究具有进一步推广应用的价值和良好的开发前景。

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 电阻
    +关注

    关注

    86

    文章

    5464

    浏览量

    171615
  • CAN
    CAN
    +关注

    关注

    57

    文章

    2714

    浏览量

    463328
  • ecu
    ecu
    +关注

    关注

    14

    文章

    880

    浏览量

    54395
  • 工业控制
    +关注

    关注

    37

    文章

    1441

    浏览量

    85779
收藏 人收藏

    评论

    相关推荐

    CAN总线技术的未来趋势

    CAN总线技术自1980年代末期推出以来,已经成为汽车和工业控制系统不可或缺的通信标准。随着物联网(IoT)、自动驾驶
    的头像 发表于 11-21 10:37 95次阅读

    CAN总线数据传输速率 CAN总线汽车的应用

    CAN总线数据传输速率 CAN总线(Controller Area Network)是一种用于实时应用的串行通讯协议总线,其设计目标是
    的头像 发表于 11-21 10:20 80次阅读

    CAN总线应用领域 CAN总线协议解析

    、医疗设备等领域。 CAN总线的应用领域 1. 汽车电子 CAN总线最初是为汽车电子系统设计的,
    的头像 发表于 11-21 10:15 65次阅读

    CAN总线数据传输速率设置

    数据传输速度的指标,以每秒传输的位数(bps)来表示。 1. CAN总线概述 CAN总线由Bosch公司1980年代
    的头像 发表于 11-12 10:03 167次阅读

    使用CAN总线进行汽车电控系统设计

    Area Network,控制器局域网)总线是德国Bosch公司20世纪80年代初为解决汽车众多的控制与测试仪器之间的数据交换而开发
    的头像 发表于 11-12 09:58 180次阅读

    CAN总线工业自动化的应用

    CAN总线作为一种高效的现场总线系统,已经工业自动化领域得到了广泛的应用。 1. 引言 随着工业自动化技术的快速发展,对通信系统的要求也越
    的头像 发表于 11-12 09:45 213次阅读

    CAN总线基础知识汇总#CAN #CANoe #汽车总线

    CAN总线
    北汇信息POLELINK
    发布于 :2024年11月04日 13:35:54

    什么是CAN时钟?#CAN #汽车CAN总线  #CANoe

    CAN总线
    北汇信息POLELINK
    发布于 :2024年10月29日 12:23:36

    汽车CAN总线的特点和应用

    汽车CAN总线是一种连接汽车各种控制单元的通信协议和数据传输标准,它对于现代汽车的发展具有重要意义。以下是对
    的头像 发表于 09-30 11:31 403次阅读

    技术小课堂 | CAN总线应用常见问题(1)

    总线通过差模信号传输使得总线具有良好的抗干扰性能。由于总线具有实时性强、抗干扰能力强等特点,轨道交通、汽车电子等行业得到广泛的应用。伴随着
    的头像 发表于 07-25 08:37 560次阅读
    <b class='flag-5'>技术</b>小课堂 | <b class='flag-5'>CAN</b><b class='flag-5'>总线</b>应用常见问题(1)

    CAN总线的数据帧结构

    CAN(Controller Area Network)总线是一种用于汽车和工业自动化领域的通信协议。它具有高可靠性、实时性和灵活性,广泛应用于各种电子控制单元(ECU)之间的通信。
    的头像 发表于 07-24 15:06 715次阅读

    如何使用示波器检测CAN总线上的信号

    CAN总线(Controller Area Network)是一种用于汽车和工业领域的通信协议,广泛应用于各种电子控制单元(ECU)之间的数据交换。示波器是一种电子测量仪器,用于观察和
    的头像 发表于 06-16 10:03 2109次阅读

    CAN总线错误帧及其排查方法简单介绍#汽车CAN总线 

    CAN总线汽车电子
    北汇信息POLELINK
    发布于 :2024年03月15日 14:14:40

    CAN总线汽车领域的应用及挑战

    作为一种串行通讯协议,CAN总线初期专为汽车电子设备间的通信而开发。借助其高度可靠、实时响应及灵活应用等特质,该总线
    发表于 02-15 14:46 1117次阅读

    电动汽车ECU进入休眠后,目前有3种唤醒模式,CAN总线和AC电压的唤醒设计原理是什么?

    电动汽车ECU进入休眠后,目前有3种唤醒模式,我想知道CAN总线和AC电压的唤醒设计原理是什么?
    发表于 02-02 06:19