汽车前照灯CAN总线多路传输系统的研究与设计

发布者:黑白之间最新更新时间:2011-07-25 关键字:汽车前照灯  CAN总线  多路传输系统 手机看文章 扫描二维码
随时随地手机看文章

        为代替传统繁杂的汽车线束, 汽车CAN 总线应运而生。以CAN 总线为基础, 结合51 系列单片机技术, 研究开发了汽车前照灯的CAN 总线多路传输系统。按照整体结构进行了CAN 总线传输节点的软件设计, 设计出并口CAN 适配卡, 通过编写动态链接库( DLL) ,向上层应用软件提供读/ 写函数接口, 实现了上位机与下位机的通信。该设计使得传统线束大大简化, 可靠性得到了极大提高,有效节约了线束安装空间。

0 引言

  CAN( Cont ro ller Ar ea Netw ork) 数据总线是一种适用于汽车环境的汽车局域网。它属于多路传输系统中的一种, 是由德国博世( Bosch) 公司在20 世纪80 年代初为解决现代汽车中众多的控制单元与测试仪器之间的数据交换而应用开发的一种串行通信协议。目前,在汽车设计领域中, CAN 几乎成了一种必须采用的技术手段, 尤其是在欧洲, 如奔驰、宝马、保时捷等都采用CAN 总线实现汽车内部控制系统与各检测和执行机构间的数据通信。此外, 美国汽车厂也将控制器联网系统逐步由Class2 过渡到CAN。CAN 国际标准只定义了物理层和数据链路层, 实际应用中, 一些厂家和公司又定义了相应的应用层规范, 使CAN 的应用更加广泛和可靠。

  CAN 信号传输介质为普通双绞线, 通信速率最高可达1 Mbps/ 40 m, 直接传输距离可达10 km/ 5 Kbps。

  CAN 的信号传输采用短帧结构, 每一帧的有效字节数为8 个, 因而传输时间短, 受干扰的概率低, 由于其采用CRC16 的校验方式, 误码率仅为3 10- 5 。当节点严重错误时, 具有自动关闭的功能, 以切断该节点与总线的联系,使通信线上的其他节点机通信不受影响, 具有较强的抗干扰能力。控制器局部网( CAN) 属于现场总线范畴,它是一种有效支持分布式控制或实时控制的串行通讯网络。

  CAN 作为汽车环境中的微控制器通讯, 在车载各电子控制装置ECU 之间交换信息, 形成汽车电子控制网络。比如: 发动机管理系统、变速箱控制器、仪表装备、电子主干系统中, 均嵌入CAN 控制装置。但是CAN 总线多路传输系统还没有实际应用到汽车前照灯。传统的汽车系统布线工作量很大, 一旦线路发现故障, 诊断工作十分困难,同时由于数据传输线很长, 导致传输速度下降,可靠性、实时性差等问题。CAN 总线技术作为最有前途的现场总线之一, 依靠其可靠性高,适应环境能力强, 纠错能力突出, 性价比高等特点成为解决这一问题的新选择。正是基于这种研究背景, 本文研究并开发出了基于CAN 总线的汽车前照灯多路传输系统。

1 CAN 控制器SJA1000

  1. 1 SJA1000 的硬件结构和功能

  CAN 的通信协议主要由CAN 控制器完成。CAN控制器主要由实现CAN 总线协议部分和微控制器接口部分组成。不同型号的CAN 总线通信控制器, 实现CAN 协议部分电路的结构和功能大都相同,而与微控制器接口部分的结构及方式存在一些差异。SJA1000是一种独立CAN 控制器, 是PHILIPS 公司首推新一代控制器。支持CAN 2. 0B 协议。

  SJA1000 的主要特性如下:

  器件管脚和电器特性均和PCA82C200 兼容; 时钟频率24 MHz; 支持CAN 协议2. 0 标准位速率可达1 Mb/ s;同时支持11 位标识符和29 位标识符; 扩展的接收缓冲器( 增至64 B, PCA82C200 只有20 个字节) ; 对不同微处理器的接口; 可编程的CAN 驱动器输出。

  SJA1000 具有两种工作模式: 基本模式和Peli 模式。其中基本模式符合CAN 协议2. 0A 标准, 和PCA82C200 兼容。设置时钟分频器( CDR: Clock divider Reg ister) 的最高位模式选择位( CDR. 7) ,可在基本模式和Peli 模式之间切换。

  1. 2 CAN 收发器82C250 的硬件结构和功能

  82C250 是CAN 控制器与物理总线间的接口, 最初主要应用于汽车高速控制场合。它向总线提供了差动的发送能力, 向CAN 控制器提供了差动的接收能力。

  82C250 主要特性如下: 与ISO/ DIS11898 标准兼容; 高速( 最高可达1 Mb/ s) ; 具有抗汽车环境下的瞬间干扰, 保护总线能力; 降低射频干扰( Radio FrequencyInterference, RFI) 的斜率( slope) 控制; 热防护; 防护电池与地之间发生短路; 低电流待机方式; 某一个节点掉电不会影响总线; 可有110 个节点相连接。

2 系统硬件电路图设计

  2. 1 汽车前照灯线路示意图

  汽车前照灯传统供电线路示意图和汽车前照灯多路总线传输系统示意图如图1, 图2 所示。

 


图1 汽车前照灯传统供电线路示意图

 


图2 汽车前照灯多路总线传输系统示意图[page]

  2. 2 系统硬件电路原理图

  CAN 智能节点电路图的设计是本系统的核心, 下面给出详细的CAN 节点硬件电路设计。

  图3 是汽车汽车前照灯的CAN 总线多路传输系统的硬件电路原理图。从图中可以看出,电路主要由三大块组成。第一块是前照灯的开关电路部分, 主要包括微控制器89C51 单片机、独立CAN 通信控制器SJA1000, CAN 总线收发器82C250; 第二块是上位机,包括CAN 总线适配卡以及数据显示部分; 第三块是前照灯的用电器电路部分,主要包括的也是微控制器89C51 单片机、独立CAN 通信控制器SJA1000, CAN总线收发器82C250。需要说明一点的是,本系统用4 个发光二极管来代替具体的汽车前照灯中的近光灯,远光灯, 示宽灯, 雾灯。

 


图3 系统硬件电路原理图

        微处理器89C51 负责SJA1000 的初始化, 通过控制SJA1000 实现数据的接收和发送等通信任务。

  SJA1000 的AD0 ~ AD7 连接到89C51 的P0 口,SJA1000 的连接到89C51 的P2. 0, P2. 0 为0 时,CPU 片外存储器地址可选中SJA 1000, CPU 通过这些地址可对SJA1000 执行相应的读/ 写操作。SJA1000的ALE 分别与89C51 的引脚相连, 接89C51 的, 89C51 也可以通过中断方式访问SJA1000。

  82C250 与CAN 总线的接口部分采用了一定的安全和抗干扰措施。82C250 的CANH 和CANL 引脚各自通过一个5 的电阻与CAN 总线相连, 电阻可起到一定的限流作用, 保护82C250 免受过流的冲击。

  CANH 和CANL 与地之间并联了2 个30 pF 的小电容, 可以起到滤除总线上的干扰和一定的防电磁辐射的能力。82C250 的Rs 脚上接有一个斜率电阻, 电阻大小可以根据总线通信速度适当调整, 一般在16~ 140 k 。

  2. 3 微处理器的选择

  汽车电子控制系统的实时性是建立在微处理器的高速运算功能上的, 因此微处理器的选择是系统设计的重要环节, 与一般的电子设备相比较,汽车电子控制系统的微处理器特点在于经常处理大量的输入和输出信号, 而且要实现高精度和实时控制,因此必须能够同时进行多种独立的操作。为了满足这些要求,微处理器必须具有高速计算、高速实时输入和输出以及多种中断响应等特性。由于通用电子计算机电子控制系统的控制功能较为简单,所以大多数电子控制单元( ECU ) 中主要使用8 位微处理器。在选择微处理器上, 不仅要注重满足技术要求,还要综合考虑成本和实用因素, 不应片面追求微处理器的高速和高位数。

  本研究是对按钮开关的逻辑信号进行处理, 对微处理器的控制核心CPU 的要求不高, 选用AT89C51 即可满足要求。

3 汽车前照灯CAN 总线多路传输系统的软件设计

  多路传输系统的软件设计包括CAN 节点的初始化、CAN 报文的发送和接收、PC 机与CAN 适配卡的通信。

  3. 1 初始化

  系统节点初始化包括: 自检、CAN 通讯初始化、A/ D初始化、各种系统标志初始化以及看门狗初始化等。其中89C51 的CAN 控制器初始化流程如图4所示。

 


 图4 CAN 初始化流程图。

  3. 2 CAN 子节点收发软件设计

  子节点主要功能是实现对按键信号进行采集, 并响应主控节点命令, 通过CAN 总线向主控节点发送检测点信息。在软件设计上,子节点采取命令应答方式, 即等待命令—分析命令类型—发回相应数据。

  系统中子节点在上电复位后主要工作为:

  ( 1) 对系统进行初始化;( 2) 向主控节点发出加入请求;( 3) 主控节点接受请求, 并给该子节点一个网络编号;( 4) 等待主控节点命令;( 5) 根据命令将监测点的相关数据通过CAN 总线发送给主控节点。

  因此, 子节点的主要流程如图5 所示。

 

 

[page]

3. 3 主控节点软件设计

  主控节点软件采用事件驱动方式, 事件信号由各种中断信号产生; CPU 在进入中断处理程序后, 仅仅判断事件类型,设置相应的事件标志位, 并不对事件做任何处理; 主控节点主程序将循环读取事件标志, 并转入相应的事件处理程序。

  主控节点具有两种工作模式。一种是系统中存在上位机, 上位机作为命令发出点, 主控节点处于被动控制模式。此时,主控节点的工作是通过RS 232 接收上位机的命令, 分析命令的目的节点, 并将命令通过CAN网络发送给目的节点; 同时,主控节点检测CAN 网络上的节点数据, 将节点发出的数据通过RS 232 发送给上位机; 重复以上流程直到工作方式发生改变。在这种方式下主控节点的主要工作流程如图6 所示。

 


图6 被动控制状态流程。

  当系统中不存在上位机或上位机发出脱离系统命令后, 主控节点进入主动控制工作模式。在这种状态中, 命令发送者为主控节点,主控节点可通过定时器事件轮循查询各节点工作状态; 响应键盘事件, 并根据用户输入的命令向目标节点发出命令或响应相应子节点的数据; 通过LED 灯显示子节点工作状态。

  两种工作模式间可以通过上位机发出命令、用户通过键盘输入命令以及主控节点查询上位机工作状态异常( 如在被动状态中,上位机长时间没有命令) 等几种方式切换。

  3. 4 上位机监控系统设计

  上位机监控系统基于C+ + 设计, 可以实现同时对多路数据进行采集、存储, 并设计了图形化的监控显示。监控系统功能包括:

  ( 1) 向主控节点发出联机或脱机命令, 切换节点工作状态;( 2) 定时发送节点查询命令, 查询子节点工作状况,更新系统节点表;( 3) 根据用户需要, 定时向监控节点发送读取命令, 取得节点的监控数据, 并保存数据, 形成监控数据文件;( 4) 以图形化的方式显示监控曲线。

  上位机系统中还包含了数据分析功能, 其中设计了算法接口; 系统用户可编写自己的算法库,系统可调用用户算法库对采集的原始数据进行进一步的分析。

4 结 语

  由于CAN 总线具有极强的抗干扰能力, 系统在使用现场数据通讯非常可靠, 并且通过CAN 中继器可以进一步提高通讯质量和距离。随着CAN 总线芯片性能的提高、价格的降低, 逐渐应用到普通轿车上,也为其在农业机械上的应用提供了条件。研究CAN 总线在拖拉机等农业机械上的应用, 对于提高农机性能和经济性, 促进我国农业机械化发展,具有重要意义。

 

 

 

关键字:汽车前照灯  CAN总线  多路传输系统 引用地址:汽车前照灯CAN总线多路传输系统的研究与设计

上一篇:一种用于汽车电磁阀质量测试电源的设计
下一篇: 汽车显示器接口设计关键技术分析

推荐阅读最新更新时间:2024-05-02 21:30

基于CAN总线的家庭控制器的设计与实现
    摘要: CAN总线是一种新型网络协议,是一种有效支持分布式控制和实时控制的串行通信网络,它具有传输速度快、自动解决总线竞争、实时性好、可靠性高、纠错能力强等特点,目前已成为一种国际总线标准。本文介绍一种基于CAN总线的家庭控制器的实现方案。     关键词: CAN总线 家庭控制器 引言 CAN(Controller Area Network)总线是德国Bosch公司为解决现代汽车中众多的控制与测试仪器之间的数据交换而开发的一种串行数据通信协议,它是一种多主总线,通信介质可以是双绞线、同轴电缆或光导纤维,通信速率可达1Mbps,通信距离可达10km,CAN协议的一个最大特点是废除了传统的站地址编码
[传感技术]
CAN总线汽车行驶记录仪中的应用
    汽车行驶记录仪(vehicle traveling data recorder)是安装在车辆上,能够记录、存储、显示、打印车辆运行速度、时间、里程以及有关车辆行驶的其他状态信息,并可通过接口实现数据输出的数 字式电子记录装置,俗称汽车黑匣子。汽车行驶记录仪的使用对遏制疲劳驾驶、车辆超速等交通违章、约束驾驶人员的不良驾驶行为、保障车辆行驶安全以及道路交 通事故的分析鉴定具有重要的作用。     汽车行驶记录仪(以下简称记录仪)由汽车行驶记录仪的主机部分和计算机终端的数据分析软件部分构成。主机部分是记录仪的核心,主要完成车辆行驶数据的采 集、记录和存储。传统的汽车行驶记录仪由于采样信号很多,信号采集很复杂,需要很多连接线,为了保
[嵌入式]
基于CAN总线和PIC单片机的汽车开关电器盒设计
  0 引 言   随着现代汽车工业技术的不断发展进步,车上安装的电子设备在不断增加,从而使汽车综合控制系统中,有大量控制信号需要进行实时交换。CAN 总线作为一种可靠的汽车计算机网络总线,已经被广泛地推广到汽车控制系统的各个应用领域。将CAN 总线技术应用到汽车开关电器盒中,可使得各汽车计算机控制单元能够通过CAN 总线得到开关电器盒中的工作数据,又能对开关电器盒的各个继电器进行精准的控制,从而达到减少汽车线束、提高通信可靠性、降低系统成本、避免系统功能重复、提高系统工作效率的目的。   1 汽车开关电器盒设计方案   本开关电器盒采用的是基于Microchip 公司生产的PIC18F45K80 芯片作为主芯片的设计方案。
[单片机]
基于<font color='red'>CAN总线</font>和PIC单片机的<font color='red'>汽车</font>开关电器盒设计
LPC2000系列的CAN总线验收滤波器应用
CAN(Controller Area NetWork)总线,即控制器局域网总线,是由德国Bosch公司于1982年开发和推出的最早用于汽车内部测量与执行部件之间的数据通信协议。在20多年的历史中,CAN总线在许多领域得到了应用,是到目前为止唯一有国际标准的现场总线。 CAN现场总线按照国际标准化组织ISO提出的"开放系统互联(OSI)"参考模式,实现其中的物理层、数据链路层和应用层。CAN控制器用来实现CAN总线协议。CAN控制器芯片分为两类:一类是独立的控制器芯片,如SJA1000;另一类是和微控制器做在一起,如Philips公司的LPC2000系列32位ARM微控制器。两类控制器都提供了报文标识过滤的验收滤波器。但独立C
[嵌入式]
CAN总线几种正常的“异常”波形
工程师们通常使用示波器观察CAN总线的信号质量,一般主要关注CAN总线差分信号的幅值、最小位宽、边沿情况等。相信不少工程师都看到过一条报文数据的波形上高高低低存在多个幅值,心里可能会变得忐忑不安,幅值不统一是不是波形出现畸变了呢?其实并非如此,今天就把CAN总线上的幅值“异常”归归类。 一、CAN-bus信号产生原理 众所周知,一个标准CAN节点由微处理器、控制器、收发器构成。多个节点成总线型架构挂在一起,两个端节点上并有终端电阻。其结构简图如下图所示。 图1 CAN-bus节点网络结构 可以看出,与总线直接相连的是CAN节点的收发器,起内部电路等效如下图所示,CAN-H、CAN-L直接由三极管驱动,近似可
[嵌入式]
基于CAN总线的电工实验指导系统设计
引 言 在生产现场控制系统中,智能设备与常规电气设备的安装、调试与维护需要相当数量的电气技术人员,如何高效、批量、规范地培养高级电气操作人员是教仪厂商急需解决的问题。它要求设备具备 通信 功能,让教师能掌握训练过程的动态指标,从而了解学员的实际实验情况,可对实验过程进行控制,实现分类指导。 本文通过对CAN( 控制器局域网 )协议及其应用的研究,利用CAN通信控制器、CAN收发器以及增强型微控制器等元器件,研制并开发一种基于CAN总线的应用系统--电工实验指导系统,在电工实验室开出网络化实验教学课程,从而改变常规教学方法的不足,让学生更加自主、灵活地完成其实验任务,并可根据自己的情况进行扩展实验,为建立开放性实验实训设施基地打下良
[单片机]
基于<font color='red'>CAN总线</font>的电工实验指导系统设计
CAN总线成互联汽车安全漏洞 Karamba推出新方案提升安全性
据外媒报道,Karamba Security设计了一款网络防护方案。由于缺乏认证、数据加密或简单的真实性检查,控制器局域网路总线(CAN bus)有时会成供黑客们发动网络攻击的漏洞。一旦攻击者获得其访问权限,就可以自行操控各电控制器,包括:在全速行驶时激活制动或接管车辆的转向控制(对于配置电驱动转向装置的车辆而言)。 不幸的是,对于外部的侵袭,CAN总线不太会采取抵抗措施,这主要受限于其带宽及灵活性,难以在信息内建立其他的数据字段或增加认证功能。 为此,Karamba设计了新方案:该公司研发了一款软件库(software library),实现电控单元与控制器局域网路总线的网络互联,对总线内传输的数据包进行加密,从而启用认证方
[汽车电子]
CAN总线转换器设计与应用
CAN总线协议的诞生原本就是汽车电子生产厂商的发起,后来CAN协议成为国际标准,CAN总线与一般的通信总线相比,CAN总线的数据通信具有突出的可靠性、实时性和灵活性。由于其良好的性能及独特的设计,CAN总线越来越受到人们的重视。 同时,由于CAN总线本身的特点,其应用范围目前已不再局限于汽车行业,例如在工业自动控制、安防/消防网络、煤矿远程通讯及等领域发展。CAN已经形成国际标准,并已被公认为几种最有前途的现场总线之一。 CAN转换器(CAN-232)可以无缝地联接CAN-bus网络和其它通讯网络,比如RS-232、RS-485串行总线、Ethernet以太网、光纤网路等,已经支持多种标准协议的网络互连。由于PC机无CAN
[嵌入式]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

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

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