中国汽车工程师之家--聚集了汽车行业80%专业人士 

论坛口号:知无不言,言无不尽!QQ:542334618 

本站手机访问:直接在浏览器中输入本站域名即可 

  • 2967查看
  • 6回复

[结构原理] CAN总线技术的应用探究

[复制链接]

该用户从未签到

发表于 8-11-2013 08:53:18 | 显示全部楼层 |阅读模式

汽车零部件采购、销售通信录       填写你的培训需求,我们帮你找      招募汽车专业培训老师


CAN通信网在汽车中的应用研究
发布时间:2007-05-08 08:04:06  

    CAN通信网在汽车中的应用研究
    1 前言
  控制局域网CAN(Controller Area Network)是德国Bosch公司为解决现代汽车中众多的控制与测试仪器之间的数据交换而应用开发的一种通信协议。在国外,尤其是欧洲,CAN网络已被广泛地应用在汽车上,如BENZ、BMW、PORSCHE、ROLLS ROYCE、JAGUAR等车。
    2 汽车对通信网络的要求
    现代汽车典型的控制单元有电控燃油喷射系统、电控传动系统、防抱死制动系统(ABS)、防滑控制系统(ASR)、废气再循环控制、巡航系统和空调系统,如图1所示。
    图1  汽车通讯网络总线方式拓扑图
    在一个完善的汽车电子控制系统中,许多动态信息必须与车速同步。为了满足各子系统的实时性要求,有必要对汽车公共数据实行共享,如发动机转速、车轮转速、油门踏板位置等。但每个控制单元对实时性的要求是因数据的更新速率和控制周期不同而不同的。例如,一个8缸柴油机运行在2 400 r/min,则电控单元控制两次喷射的时间间隔为6.25 ms。其中,喷射持续时间为30°的曲轴转角(2 ms),在剩余的4 ms内需完成转速测量、油量测量、A/D转换、工况计算、执行器的控制等一系列过程。这就意味着数据发送与接收必须在1 ms内完成,才能达到柴油机电控的实时性要求。这就要求其数据交换网是基于优先权竞争的模式,且本身具有极高的通信速率,CAN现场总线正是为满足这些要求而设计的。不同参数应具有不同的通信优先权,表1列出了几个典型参数允许响应时间。
    表1  典型参数允许响应时间
    典型参数        允许响应时间
    发动机喷油量        10ms
    发动机转速        300ms
    车轮转速        1 s~ 100s
    进气温度        20s
    冷却液温度        1min
    燃油温度        ≈10min
    3 CAN总线的特点及通信协议
    3.1 CAN总线的特点
  CAN作为一种多主总线,支持分布式实时控制的通信网络。其通信介质可以是双绞线、同轴电缆或光纤。在汽车发动机控制部件、传感器、抗滑系统等应用中,总线的位速率最大可达1 Mbit/s。CAN光线具有以下主要特性:
  a.无破坏性的基于优先权竞争的总线仲裁。
  b.可借助接收滤波的多地址帧传送。
  c.具有错误检测与出错帧自动重发送功能。
  d.数据传送方式可分数据广播式和远程数据请求式。
    3.2 CAN总线帧格式
  CAN和OSI七层参考模式,按照IEEE 802.2和IEEE 802.3标准,其通信接口集成了CAN协议的物理层和数据链路层功能,可完成对通信数据的成帧处理,包括位填充、数据块编码、循环冗余检验及优先级别等项工作。在系统中,数据按照携带的信息类型可分为四种帧格式:
    a.数据帧。用于节点间传递数据,是网络信息的主体,其帧格式如图2所示。一个数据帧由7个不同位场构成:帧起始、仲裁场、控制场、数据场、CRC场、ACK场和帧结束。其中数据段长度可编程0~8个字节。
    图2  数据帧格式
  b.远程帧。由在线单元发送,用于请求发送具有相同标识符的数据帧,其帧格式与数据帧基本相同,但没有数据场。
  c.出错帧。出错帧是检测总线出错的一个信号标志,由两个不同场构成。第一场由来自不同节点的错误标志叠加,第二个场为错误界定符。CAN协议采用CRC检验并可提供相应的错误处理功能,保证数据通信的可靠性。
  d.超载帧。由超载标识和超载界定符组成,表明逻辑链路控制层要求的内部超载状态,并将由媒体访问控制层的一些出错条件而被启动发送。用于扩展帧序列的延迟时间。
    3.3 CAN数据链路控制
  系统中,CAN总线以报文为单位进行数据传输,节点对总线的访问采取位仲裁方式。报文起始发送节点标识符分为功能标识符(如转速信号)和地址标识符(如控制单元节点地址)。CAN协议的最大特点是打破了传统的节点地址编码方式,而扩展了对通信数据块进行编码方式。采用这种方法可使不同的节点同时接收到相同的数据。数据块的标识符可用11位或29位二进制表示,即可定义211或229个不同的数据类型。即使对未来更复杂的汽车控制网络其容量也足够了。标识符的值越小,帧数据的优先级越高。通过数据链路控制,每个接收器完成帧接收滤波确定此帧数据是否有效,实际汽车应用中一般采用不冗余的通信线路,而CAN协议提供强大的出错诊断机制,在保证数据通信的可靠性方面起了重要作用。
  电控单元(ECU)连接至总线的电路是通过CAN物理层实现的,在实际应用中ECU的总数将受限于总线上的电气负载。物理层按照网络标准规范模型划分有三种功能:物理信号完成与位表示、定时和同步相关的功能;物理媒体附属装置完成总线发送/接收功能并提供总线故障检测方法;媒体相关接口完成物理层的机械和电气接口。
    4 CAN总线的应用及其接口设计
    4.1 汽车网络设计
    除了命令和清求信息外,汽车的一些基本状态信息(如发动机转速、车轮转速、冷却水温度等)是大部分控制单元必须获取的数据,控制单元采用广播发式向总线发送。如果在同一时刻所有控制单元都向总线发送数据,将发生总线数据冲突,此时,CAN总线协议提出用标识符识别数据优先权的总线仲裁。表2列出了汽车各电控单元产生及发送的数据类型,及其他各单元对这些信息共享地程序。
    表2  汽车各电控单元产生及发送的数据类型
    优先权        信号类型        电控燃油喷射系统        电控传动系统        ABS系统        ASR系统        废气再循环系统        空调系统
    1        实际喷油量        发送        接收        —        —        —        —
    2        发动机转速        发送        接收        接收        接收        —        接收
    3        油量设置        接收        —        —        发送        —        —
    4        车轮转速        接收        接收        发送        接收        —        —
    5        油门踏板位置        发送        接收        接收        接收        —        —
    6        变速比        接收        发送        —        接收        接收        —
    7        怠速设置        接收        —        —        —        发送        发送
    8        冷却液温度        发送        接收        —        —        —        接收
    9        空气温度        发送        —        —        —        —        接收
  由表2看出,油量位置和转速信号具有较高的优先级,是因为它们的实时性要求强,并直接影响发动机的动力性、经济性和排放性能。
    4.2 CAN接口设计
  本研究中,CAN总线被成功地用于电控柴油机标定系统,采用单片机系统与CAN控制器组成CAN标准接口。
  目前,CAN总线芯片有很多种,如PHILIPS SJA1000、INTEL82526、MOTOROLA 68HC05、SIEMENS C167C等。本文电路设计中选用SJA1000作为CAN控制器芯片,ECU的应用层由微处理器提供。连接各种类型微处理器的CAN控制器SJA1000可完成物理层和数据链路层的所用功能,适用于汽车及一般工业环境,不但可以减少导线连接,并能增强诊断和监控能力。
    CAN节点通信接口的硬件设计如图3所示。设计中,分别将微处理器的地址线、数据线和控制线引出,通过地址分配与片选对CAN控制器SJA1000进行操作。总线数据信号采用高速线性光耦6N137隔离,电源信号为+5 V的DC-DC隔离模块,增强系统硬件利用抗干扰措施。图3中82C250是CAN控制器和物理层总线之间的接口,具有抗汽车环境下的瞬间干扰、保护总线的能力。该器件可以提供对总线的差分发送能力和差分接收能力,与ISO/DIS11898标准完全兼容。
    图
    3  图3  CAN接口硬件电路设计
    当通过滤波验收的数据报文被接收后,将有两种操作方式。一种是查询方式,查询接收状态位被置高表示接收缓存器有数据;另一种是中断方式,若接收中断开放位允许,则产生触发中断。由于SJA1000内部具有64 bit接收缓冲器,对总线数据具有一定的缓存能力。通常系统采用主程序查询方式对接收数据进行处理,并用广播方式发送,对特殊数据采用远程帧申请方式,这样更有利于程序对多个任务的结构化管理,其程序流程如图4所示。
    图4  通讯程序流程
    CAN总线具有通信速率高、可靠性高、连接方便和性能价格比高等诸多优势。并且CAN应用系统的设计是依据国际标准(ISO 11898),各生产厂商的控制器有标准的输入/输出接口,所以该网络是一个具有开放性和灵活性的系统,可以在不要求所有节点及其应用层改变任何软件和硬件的情况下,自由地增加或减少控制器节点。
    5 结束语
  为了充分发挥电控单元在汽车控制中的作用,CAN通信网络为全局优化控制提供了条件。通过实际运用表明,CAN总线与其他通信方式相比具有显著的优点:
  a.组网自由,扩展性强,对复杂的汽车网络具有强大的优势;
  b.可根据数据内容确定通信优先权,解决了转速实时性和共享性的问题;
  c.自动的错误界定功能,简化了电控单元对通信的操作。
  d.由于数据通信协议的标准性和开放性,故本文中的接口电路具有一定的推广意义。
  此外,CAN网络还应用于汽车车身检测系统,并且被众多工业控制系统采用,尤其是传输速率较高而对实时性及可靠性要求高的场合,它是一种十分有效的通信方式。

该用户从未签到

发表于 8-11-2013 09:28:38 | 显示全部楼层
现在CAN总线技术几乎应用于大部分车型,国内很多的自主品牌也在使用,楼主有心了,将这么好的东西拿出来分享。谢谢!
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 8-11-2013 19:59:24 来自手机 | 显示全部楼层
好是好,可惜学历太低,很多意思都不能懂。
回复 支持 反对

使用道具 举报

  • TA的每日心情
    开心
    25-4-2016 13:33
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 9-11-2013 23:38:34 | 显示全部楼层
    好东西,协议那里可以查到?
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    20-7-2016 10:00
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 24-2-2014 22:16:43 | 显示全部楼层
    楼主这个真心及时,小弟收藏了哈,多谢
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    27-10-2015 17:56
  • 签到天数: 83 天

    [LV.6]常住居民II

    发表于 21-7-2015 08:41:35 | 显示全部楼层
    看来还是基础知识积累不够,,似懂非懂
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    15-3-2019 11:07
  • 签到天数: 143 天

    [LV.7]常住居民III

    发表于 19-9-2018 14:52:06 | 显示全部楼层
    好东西,领教了。
    回复 支持 反对

    使用道具 举报

    快速发帖

    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    QQ|手机版|小黑屋|Archiver|汽车工程师之家 ( 渝ICP备18012993号-1 )

    GMT+8, 25-4-2024 14:29 , Processed in 0.227088 second(s), 28 queries .

    Powered by Discuz! X3.5

    © 2001-2013 Comsenz Inc.