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

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

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

  • 4542查看
  • 2回复

CAN数据传输系统的原理与故障诊断

[复制链接]

  • TA的每日心情
    开心
    14-6-2015 17:59
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 15-7-2008 20:02:06 | 显示全部楼层 |阅读模式

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


    在动力传动系统和舒适系统中装用了两套CAN数据传输系统,本文将对此系统加以介绍。
    1.CAN数据传输系统概述
    (1)为什么要采用数据总线
        我们知道,汽车两块电脑之间的信息传递,有几个信号就要有几条信号传输线(信号传输线的接地端可以采用公共回路),例如,宝来轿车发动机电控单元J220与自动变速器电控单元J217之间就需要有5条信号传输线。如果传递信号项目多还需要更多的信号传输线,这样会导致电控单元针脚数增加、线路复杂、故障率增多及维修困难。
    (2)什么是数据总线
        一辆汽车不管有多少块电控单元,不管信息容量有多大,每块电控单元都只需引出两条线共同接在两个节点上,这两条导线就称作数据总线。以前各电控单元之间好比有许多人骑着自行车来来往往,现在是这些人乘坐公共汽车,公共汽车可以运输大量乘客,故数据总线亦称BUS线。
    (3)什么是CAN协议
        电子计算机网络用电子语言来说话,各电控单元必须使用和解读相同的电子语言,这种语言称“协议”,汽车电脑网络常见的传输协议有数种。宝来车装用博世公司产品,数据总线采用CAN协议,这个协议是由福特、Internet与博世公司共同开发的高速汽车通信协议。CAN是Controller Area Network(控制单元区域网络)的缩写,意思是控制单元通过网络交换数据。
    (4)CAN数据传输系统的优点
        数据总线与其他部件组合在一起就成为数据传输系统,CAN数据传输系统的优点是:
    ①将传感器信号线减至最少,使更多的传感器信号进行高速数据传递。
    ②电控单元和电控单元插脚最小化应用,节省电控单元的有限空间。
    ③如果系统需要增加新的功能,仅需软件升级即可。
    ④各电控单元的监测对所连接的CAN总线进行实时监测,如出现故障该电控单元会存储故障码。
    ⑤CAN数据总线符合国际标准,以便于一辆车上不同厂家的电控单元间进行数据交换。



    2.CAN数据传输系统构成及工作原理
    (1)CAN数据传输系统构成
        CAN数据传输系统中每块电脑的内部增加了一个CAN控制器,一个CAN收发器;每块电脑外部连接了两条CAN数据总线。在系统中作为终端的两块电脑,其内部还装有一个数据传递终端(有时数据传递终端安装在电脑外部)。
    (2)各部件功能
    ①CAN控制器作用是接收控制单元中微处理器发出的数据,处理数据并传给CAN收发器。同时CAN控制器也接收收发器收到的数据,处理数据并传给微处理器。
    ②CAN收发器 是一个发送器和接收器的组合,它将CAN控制器提供的数据转化成电信号并通过数据总线发送出去,同时,它也接收总线数据,并将数据传到CAN控制器。
    ③数据传递终端 实际是一个电阻器,作用是避免数据传输终了反射回来,产生反射波而使数据遭到破坏。
    ④CAN数据总线 用以传输数据的双向数据线,分为CAN高位(CAN-high)和低位(CAN—low)数据线。数据没有指定接收器,数据通过数据总线发送给各控制单元,各控制单元接收后进行计算。为了防止外界电磁波干扰和向外辐射,CAN总线采用两条线缠绕在一起,两条线上的电位是相反的,如果一条线的电压是5V,另一条线就是0V,两条线的电压和总等于常值。通过该种办法,CAN总线得到保护而免受外界电磁场干扰,同时CAN总线向外辐射也保持中性,即无辐射。
    (3)数据传递过程
        例如:发动机电脑向某电脑CAN收发器发送数据,该电脑CAN收发器接收到由发动机电脑传来的数据,转换信号并发给本电脑的控制器。CAN数据传输系统的其他电脑收发器均接收到此数据,但是要检查判断此数据是否是所需要的数据,如果不是将忽略掉。


    3.动力CAN数据传输系统
    (1)动力CAN数据传输系统的组成
        动力CAN数据总线连接3块电脑,它们是发动机、ABS/EDL及自动变速器电脑(动力CAN数据总线实际可以连接安全气囊、四轮驱动与组合仪表等电脑)。总线可以同时传递10组数据,发动机电脑5组、ABS/EDL电脑3组和自动变速器电脑2组。数据总线以500kbit/s速率传递数据,每一数据组传递大约需要0.25ms,每一电控单元7~20ms发送一次数据。优先权顺序为ABS/EDL电控单元→发动机电控单元→自动变速器电控单元。
        在动力传动系统中,数据传递应尽可能快速,以便及时利用数据,所以需要一个高性能的发送器,高速发送器会加快点火系统间的数据传递,这样使接收到的数据立即应用到下一个点火脉冲中去。CAN数据总线连接点通常置于控制单元外部的线束中,在特殊情况下,连接点也可能设在发动机电控单元内部。
    (2)CAN数据传输系统故障码查询
        可以使用V.A.G1551、V.A.G1552或VAS5051电脑诊断仪,分别进入01、02、03地址,对发动机、ABS/EDL和自动变速器电控单元进行自诊断,再进入功能码02查询三块电控单元是否储存CAN数据传输故障码。
    举例:宝来1.8T车AUM发动机控制单元CAN数据传输故障码
    ①SAE码P1626、V.A.G码18034——数据总线缺少来自自动变速器控制单元的信息。
    ②SAE码P1636、V.A.G码18004——数据总线缺少来自安全气囊控制单元的信息。
    ③SAE码P1648、V.A.G码18056——数据总线损坏。
    ④SAE码P1649、V.A.G码18057——数据总线缺少来自ABS/EDL控制单元的信息。
    ⑤SAE码P1650、V.A.G码18058——数据总线缺少来自组合仪表控制单元的信息。

    ⑥SAE码P1682、V.A.G码18090——数据总线中来自ABS/EDL控制单元的信号不可靠。
    ⑦SAE码P1683、V.A.G码18091——数据总线中来自安全气囊控制单元的信号不可靠。
    ⑧SAE码P1683、V.A.G码18261——数据总线中来自ABS/EDL控制单元的信号不可靠。
    (3)CAN数据传输系统故障诊断
    ①诊断条件 已查询出CAN数据总线的一个故障码。
    ②必备工具仪表:检测盒V.A.G1598/31、万用表V.A.G1526、成套辅助接线V.A.G1594和电路图。
    ③诊断步骤 关闭点火开关,拔开发动机控制单元插头,将V.A.G1598/31插到控制单元,此时不要连接线束插头。使用万用表测量58针与60针之间的电阻,这是数据传递终端的电阻值,规定值为60—72欧姆,如不符合规定应更换发动机控制单元,如符合规定应按照电路图测量数据总线的故障点。
    4.舒适CAN数据传输系统
    (1)舒适CAN数据传输系统的组成
        舒适CAN数据总线连接五块控制单元,包括中央控制单元及四个车门的控制单元。舒适CAN数据传递有五个功能:中央门锁、电动窗、照明开关、后视镜加热及自诊断功能。控制单元的各条传输线以星状形式汇聚一点,这样做的好处是,如果一个控制单元发生故障,其他控制单元仍可发送各自的数据。
        该系统使经过车门的导线数量减少,线路变得简单。如果线路中某处出现对地短路,对正极短路或线路间短路,CAN系统会立即转为应急模式运行或转为单线模式运行。四个车门控制单元都是由中央控制单元控制,只需较少的自诊断线。



        数据总线以62.5kbit/s速率传递数据,每一组数据传递大约需要lms,每个电控单元20ms发送一次数据。优先权顺序为:中央控制单元→驾驶员侧车门控制单元→前排乘客侧车门控制单元→左后车门控制单元→右后车门控制单元。由于舒适系统中的数据可以用较低的速率传递,所以发送器性能比动力传动系统发送器的性能低。
    (2)CAN数据传输系统故障码查询
        可以使用V.A.G1551、V.A.G1552或VAS5051,进入地址码46,对舒适系统控制单元进行自诊断,进入功能码02查询舒适系统中央控制单元是否储存故障码。
    举例:宝来舒适系统中央控制单元CAN数据传输故障码:
    ①V.A.G码01328——舒适系统数据总线或控制单元存在故障。
    ②V.A.G码01329——舒适系统数据总线处于紧急模式。
    (3)CAN数据传输系统故障诊断。
    ①诊断条件 已查询出CAN数据总线的一个故障码。
    ②必备工具仪表 万用表V.A.G1526和电路图。
    

    该用户从未签到

    发表于 15-7-2008 20:02:20 | 显示全部楼层
    1.两个控制单元组成的双线式数据总线系统的检测
    检测时,关闭点火开关,断开两个控制单元(图1)。检查数据总线是否断路、短路或对正极/地短路。如果数据总线无故障,更换较易拆下(或较便宜)的一个控制单元试一下。如果数据总线系统仍不能正常工作,更换另一个控制单元。

    图1  两个控制单元组成的双线式数据总线系统
    2三个或更多控制单元组成的双线式数据总线系统的检测
    检测时,先读出控制单元内的故障代码。如图2所示,如果控制单元1与控制单元2和控制单元3之间无通讯。关闭点火开关,断开与总线相连的控制单元,检查数据总线是否断路。如果总线无故障,更换控制单元1。如果所有控制单元均不能发送和接收信号(故障存储器存储“硬件故障”),则关闭点火开关,断开与数据总线相连的控制单元,检测数据总线是否短路,是否对正极/地短路。

    图2三个控制单元组成的双线式总线系统
    如果数据总线上查不出引起硬件损坏的原因,检查是否某一控制单元引起该故障。断开所有通过CAN数据总线传递数据的控制单元,关闭点火开关,接上其中一个控制单元,连接VAG 1551或VAG 1552,打开点火开关,清除刚接上的控制单元的故障代码。用功能06来结束输出,关闭并再打开点火开关,打开点火开关10 s后用故障阅读仪读出刚接上的控制单元故障存储器内的内容。如显示“硬件损坏”,则更换刚接上的控制单元;如未显示“硬件损坏”,接上下一个控制单元,重复上述过程。
    

    该用户从未签到

    发表于 15-7-2008 20:02:29 | 显示全部楼层
    CAN总线的特点及J1939协议通信原理、内容和应用
        众多国际知名汽车公司早在20世纪80年代就积极致力于汽车网络技术的研究及应用。迄今已有多种网络标准,如专门用于货车和客车上的SAE的J1939、德国大众的ABUS、博世的CAN、美国商用机器的AutoCAN、ISO的VAN、马自达的PALMNET等。
        在我国的轿车中已基本具有电子控制和网络功能,排放和其他指标达到了一定的要求。但货车和客车在这方面却远未能满足排放法规的要求。计划到2006年,北京地区的货车和客车的排放要满足欧Ⅲ标准。因此,为了满足日益严格的排放法规,载货车和客车中也必须引入计算机及控制技术。采用控制器局域网和国际公认标准协议J1939来搭建网络,并完成数据传输,以实现汽车内部电子单元的网络化是一种迫切的需要也是必然的发展趋势。
    1 CAN总线特点及其发展
    控制器局域网络(CAN)是德国Robert bosch公司在20世纪80年代初为汽车业开发的一种串行数据通信总线。CAN是一种很高保密性,有效支持分布式控制或实时控制的串行通信网络。CAN的应用范围遍及从高速网络到低成本底多线路网络。在自动化电子领域、发动机控制部件、传感器、抗滑系统等应用中,CAN的位速率可高达1Mbps。同时,它可以廉价地用于交通运载工具电气系统中,如灯光聚束、电气窗口等,可以替代所需要的硬件连接。它采用线性总线结构,每个子系统对总线有相同的权利,即为多主工作方式。CAN网络上任意一个节点可在任何时候向网络上的其他节点发送信息而不分主从。网络上的节点可分为不通优先级,满足不同的实时要求。采用非破坏性总线裁决技术,当两个节点(即子系统)同时向网络上传递信息时,优先级低的停止数据发送,而优先级高的节点可不受影响地继续传送数据。具有点对点、一点对多点及全局广播接收传送数据的功能。
        随着CAN在各种领域的应用和推广,对其通信格式的标准化提出了要求。1991年9月Philips Semiconductors制定并发布了CAN技术规范(Versio 2.0)。该技术包括A和B两部分。2.OA给出了CAN报文标准格式,而2.OB给出了标准的和扩展的两种格式。1993年11月ISO颁布了道路交通运输工具-数据信息交换-高速通信局域网(CAN)国际标准ISO11898,为控制局域网的标准化和规范化铺平了道路。美国的汽车工程学会SAE于2000年提出的J1939,成为货车和客车中控制器局域网的通用标准。
    2.J1939协议通信原理及内容
    (1)J1939与CAN
    J1939是一种支持闭环控制的在多个ECU之间高速通信的网络协议冈。主要运用于载货车和客车上。它是以CAN2.0为网络核心。表1介绍了CAN2.0的标准和扩展格式,及J1939协议所定义的格式。表2则给出了J1939年的一个协议报文单元的具体格式。可以看出,J1939标识符包括RIORTY(优先权位);R(保留位);DP(数据页位);PDU FORMAAT(协议数据单元);PDU SPECIFIC(扩展单元)和SOURCE ADDRESS(源地址)。而报文单元还包括64位的数据场。
    表1  CAN2.0的标准和扩展格式及J1939协议所定义的格式
    CAN扩展帧格式        SOF        11位标识符        SRR        IDE        18位扩展标识符
    J1939帧格式        帧起始位        优先权3位        R位(保)        数据页DP        PF格式6位        SRR位        扩展标识        PF        PS格式(8位)        源地址(8位)
    CAN        1        2~4        5        6        7~12        13        14        15 16        17~24        25~32
    帧位置                28~26        25        24        23~18                        17 16        15~8        7~0

    表2  J1939协议报文单元的具体格式
    一个J1939协议报文单元
    PRIORITY        R        DP        PDU FORMAT        PDU SPECIFIC        SOURCE ADDRESS        DATA FIELD
    3        1        1        8        8        8        0~64
    (2)数据传转协议
        J1939通信中的核心是负责数据传输的传输协议。它的功能分为两部分:
        (1)数据的拆分打包和重组。一个J1939的报文单元只有8个字节的数据场。因此如果所要发送的数据超过了8字节,就应该分成几个小的数据包分批发送。数据场的第一个字节从1开始作为报文的序号,后7个字节用来存放数据。所以可以发送255×7=1785个字节的数据。报文被接收以后按序号重新组合成原来的数据。
        (2)连接管理。主要对节点之间连接的建立和关闭,数据的传送进行管理。其中定义了5种帧结构:发送请求帧、发送清除帧、结束应答帧、连接失败帧以及用来全局接收的广播帧。节点之间的连接通过一个节点向目的地址发送一个发送请求帧而建立。在接收发送请求帧以后,节点如果有足够的空间来接收数据并且数据有效,则发送一个发送清除帧,开始数据的传送。如果存储空间不够或者数据无效等原因,节点需要拒绝连接,则发送连接失败帧,连接关闭。如果数据接收全部完成。则节点发送一个结束应答帧,连接关闭。
    (3)J1939的参数格式
        J1939中还定义了参数的具体格式,如标识符、优先级、数据长度、参数的范围等。参数又划分为状态参数和测量参数。状态参数表示具有多态信号的某一种状态,如发动机刹车使能/禁能、巡航控制激活/关闭,扭矩/速度控制超载模式、错误代码等。而测量参数则表示所接收到的信号的值的具体大小,如缸内爆发压力、最大巡航速度、发动机转速等。
    3.J1939协议的应用
    (1)J1939应用于网络构建
        J1939网络层中定义了如何构建网络及连接的功能。网络层的功能包括数据的过滤、重新打包和转发。分别由以下各部分实现。
        a.中继器。可以增强数据信号,使数据传输更远的距离。
        b.网桥。数据的转发和过滤。它可以把网络拆解成网络分支、分割网络数据流,隔离分支中发生的故障,这样就可以减少每个网络分支的数据信息流量而使每个网络更有效,提高整个网络效率。
        c.路由。可以使网络段具有独立的地址空间不同的数据传输率和媒介。
        d.网关。可以在不同的协议和数据设置的网段之间传送数据。图1为典型的汽车网络连接。
    (2)J1939应用于故障诊断
        J1939包括在线故障诊断功能,由诊断应用层定义。诊断应用层面向以下几方面。
        a.安全。在数据链路层上定义一个安全的框架,使得符合工业标准的开发工具执行必要的诊断任务。包括获取诊断信息,获取节点配置信息,标定控制模式。但对非开放型的数据加密。
        b.连接。建立J1939网络节点与开发工具之间的连接。连接器的设计也必须符合J1939协议。
        c.诊断状态数据支持。提供一系列的数据格式。包括读取出错数据、清除错误数据、监测通信参数、获取节点的配置以及其他的一些信息。
    d.诊断测试支持。可以使开发工具把各种控制节点放到具体的测试模式中以正确设计子网体系。诊断工具通过连接器与其他节点进行通信以获取诊断数据。因此所有的控制节点都应该具备以下功能:读取诊断故障代码、清除诊断故障代码、获取实时信息。而诊断故障代码记载了出错的参数及所在的节点等主要信息。



















    图1  典型汽车网络连接
    4.节点设计及数据通信
        最小化节点的主控制芯片采用51系列的单片机,控制器采用PHILIPS公司的SJA1000,控制器接口采用82c250。
    为了构建CAN总线局域网络,采用了研华公司生产的双端口CAAN控制卡PCL-841,每块PCL-841卡集成了两块PHILIPS的SJA1000控制器和82c250控制器接口。这样两块控制卡就有四个端□,相当于四个独立的节点,用数据线连接起来,就组成了基本的CAN局域网。如图2所示。














    图2  CAN局域网
        软件的编写主要包括对寄存器的配置、硬件初始化、中断调用、数据通信几大模块。中断调用中包括数据中的中断接收、中断发送,以及错误处理、报警等模块。通信模块又分为数据的发送、接收、请求等。
        综上所述,J1939通信协议解决了如下问题。
        (I)优先权问题。如自动换挡要求减油门,巡航控制同时要求增油,而ASR则要求减油门以维持驱动轴的低扭矩。根据重要程度,则应确定换挡优先,协议能定义各个子系统的优先权顺序。
        (2)灵活性问题。因为各个子系统都是不同类型的控制系统,网络应具备将各个子系统有机地融合在一起的能力。
        (3)可扩展性。即需要增加新的子系统时,不需要对基本系统作修改。
        (4)独立性。每个子系统都可以独立工作,某个子系统出现故障时并不影响其他系统的正工作。
        (5)为满足不同控制系统的要求,应具有高的数据传输速率带宽,具有通用的故障诊断接口诊断协议。

    快速发帖

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

    本版积分规则

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

    GMT+8, 25-7-2025 06:19 , Processed in 0.594609 second(s), 36 queries .

    Powered by Discuz! X3.5

    © 2001-2013 Comsenz Inc.