工业通信网络5-2_第1页
工业通信网络5-2_第2页
工业通信网络5-2_第3页
工业通信网络5-2_第4页
工业通信网络5-2_第5页
已阅读5页,还剩58页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

工业通信网络与技术

(现场总线)许勇xuy@Can的应用层在ISO-OSI模型中,CAN协议定义的是物理层及数据链路层规范,而应用层协议定义与实际应用相关的通讯参数,特别是要定义CAN报文中的11/29位标识符、8字节数据的使用。应用层还为网络中每一个有效设备都能够提供一组有用的服务与协议,包括:通讯描述(Communicationprofile):提供配置设备、通讯数据的含义,定义数据通讯方式。设备描述(Deviceproflile):为设备增加符合规范的行为。在基于CAN的自动化和测控应用中,需要开放和标准化:能支持各种N厂商设备,能提供标准的、统一的系统通讯模式,提供设备功能描述方式,执行网络管理功能。常用的通用系统开放标准有CANopen、SAEJ1939等。但也有一些专用的标准,专门用于特定的系统。I.概述CAL协议(CANApplicationLayerCAL由CiA(CANinAutomation)协会负责管理。在实际中不直接使用。CAL提供了4种应用层服务功能:CMS(CAN-basedMessageSpecification):提供基于变量、事件、域类型的对象,以设计和规定一个设备(节点)的功能如何被访问。CMS从MMS(ManufacturingMessageSpecification)继承而来。MMS是OSI为工业设备的远程控制和监控而制定的应用层规范。NMT(NetworkManagemenT):提供网络管理(如初始化、启动和停止节点,侦测失效节点)服务。DBT(DistriBuTor):提供动态分配CANID服务。LMT(LayerManagemenT):

提供修改层参数的服务:一个节点(LMTMaster)可以设置另外一个节点(LMTSlave)的某层参数(如改变一个节点的NMT地址,或改变CAN接口的位定时和波特率)。应用层主要内容包括:信息标识符的分配;

数据交换的方法;

建立信息连接的方法;

网络管理;

设备建模和子协议。

其中信息标识符的分配是系统的主要结构元素,也影响了信息滤波和标识符的使用效率问题。由于标识符分配的方法不同,不同的协议在解决方案已把不同的原则考虑进去。在简单应用中,也可以自定义。II.简单应用层设计1.应用层内容的自定义1)

标识符编码定义CAN总线通过报文标识符实现冲突仲裁。在简单应用中,这29位标识符分为7个部分,其编码格式定义如例所示。标识符编码格式的定义:优先级:2位,用于指示报文的优先级。0为最高级,3为最低级。控制命令优先级为0,控制参数优先级为1。而配置参数、状态信息等非实时信息,定义其优先级为2。功能码:4位,用于指示报文所需实现的功能。接收报文的节点根据报文中的功能码进行相应的处理。保留位:2位,对发送节点,此位清零,用于将来使用。目标地址:8位,用于指示接收报文的目标节点地址。取值为255该报文为广播报文;其余值用于点对点报文。源地址:8位,合法取值范围为0—254,可支持同一网段中最多可挂接255个节点。内部单元号:4位,用于指示从机节点的内部单元。接收报文的节点根据报文中内部单元号对相应的单元进行操作。应答位:1位,用于指示该报文是否需要应答确认。本协议只需要对部分报文作确认,可以根据报文内容选择是否应答确认,进行灵活的应答控制。2)

数据编码定义CAN总线数据传输采用短帧结构,每帧数据域最多为8个字节,可以满足控制系统中控制命令、控制参数、状态信息等数据长度要求。同时0—8个字节的数据传输不会占用总线时间过长,从而保证了通信的实时性。在数据打包过程中,对于相关数据可以打包到1帧中,以保证数据的发送效率,充分利用总线带宽。对于需要快速发送的数据如控制命令,数据长度要尽可能短,以确保传输时间足够短,提高数据传输的实时性。在协议中,控制命令和状态信息用1字节二进制数表示。控制参数和配置参数用4字节的单精度浮点数表示。CANopen是在CAL基础上开发的(11位的标识符),定义了基于CAN的分布式工业自动化系统的应用标准以及CAN应用层通信标准。CANopen使用了CAL通讯和服务协议子集,提供了分布式控制系统的一种实现方案。CANopen在保证网络节点互用性的同时允许节点的功能随意扩展。CANopen的核心概念是设备对象字典(OD:ObjectDictionary)。在其它现场总线(Profibus,Interbus-S)系统中也使用这种设备描述形式。(注意:对象字典不是CAL的一部分,而是在CANopen中实现的。)对象字典分为两部分,第一部分包括基本的设备信息,例如设备ID,制造商,通信参数等等。第二部分描述了特殊的设备功能。III.CANopen1.CANopen标识符CAL中CMS将信息标识符定义了8个优先级,每个级别拥有220个ID,范围从1~1760,剩余的标志(0,1761~2031)保留给NMT。CANopen可能访问的节点为128个,保留128个信息标识符作为节点保护。CANopen的标识符分配方案可以供127台设备默认连接到一台主设备上。设备标识符用7位(如图)。通过4位的功能代码可区分16种基本功能:2个数据过程信道的接收和发送、一个点对点信道、节点状态控制、节点保护、紧急情况通报以及接收同步信息和有时间标记的信息。由于信息的优先级由它的功能决定,所以功能代码位于信息标识符的最高几位。2.CANopen对象字典OD(ObjectDictionary)对象字典是一个有序的对象组;每个对象采用一个16位的索引值来寻址,为了允许访问数据结构中的单个元素,同时定义了一个8位的子索引(下图)。一个节点的对象字典的有关范围在0x1000到0x9FFF之间。CANopen网络中每个节点都有一个对象字典。对象字典包含了描述这个设备和它的网络行为的所有参数。设备“应用对象”可以是IO信号,设备参数或功能和网络变量等等。一个节点的对象字典是在电子数据文档(EDS:ElectronicDataSheet)采用ASCII格式描述。实际设备设置通过设备配置文件(DCF-DeviceConfigurationFile)进行。EDS和DCF都可以从Internet上下载,并可存储在设备之中。不必知道一个对象字典中所有参数。节点本身只需要能够提供对象字典中必需的对象(CANopen中必需项实际不多),以及其它可选择的、构成节点部分可配置功能的对象。对象字典通用结构通讯子协议(communicationprofile),描述对象字典的主要形式和对象字典中的通讯子协议区域中的对象,通讯参数。同时描述CANopen通讯对象。这个子协议适用于所有的CANopen设备。设备子协议(deviceprofile),为各种不同类型设备定义对象字典中的对象。如数字和模拟的输入输出模块,驱动设备,操作设备,控制器,可编程控制器或编码器。设备子集定义了不同类型的标准设备及其相应的功能。设备子协议为对象字典中的每个对象描述了它的功能、名字、索引和子索引、数据类型,以及这个对象是必需的还是可选的,这个对象是只读、只写或者可读写等等。CANopen分为两种基本的数据传输机制:通过进程数据对象(PDO)对小型的数据进行高速数据交换以及通过服务数据对象(SDO-ServiceDataObjects)对对象字典进行访问。后者主要用于在设备配置过程中传输参数以及传输大数据块。进程数据对象通常采用事件触发、循环或请求方式发送,作为广播对象,它的上层并没有附加协议。一个PDO最大可传输8字节数据。在连接一个同步报文的时候,整个网络都可以采用同步方式对PDO进行传送和接收(Synchro-nousPDOs)。通过存储在对象字典中的PDO映射(PDOMapping)结构,可以对应用对象到PDO对象的分配(TransmissionObject)进行调整,这可以保证设备可以对不同的应用需求进行调整。通过传输SDO可以实现可靠的数据传输,由两个CAN对象在两个网络节点间通过点对点的通信来实现这一过程。通过传输对象字典的索引以及子索引,可以定位相应的对象字典入口。通过SDO传送报文可以不受长度的限制,但传送SDO报文需要额外的协议开销。标准化的事件触发的高优先级突发报文用于报告设备故障,可以通过中心时钟报文来提供整个系统的系统时钟。准备和协调建立一个分布式的自动化系统所需的功能都适于CAL网络管理(NMT)定义的机制,同样可应用于周期性的节点维护(nodeguarding)。可以选择通过"HeartbeatMessage"来显示CANopen设备的通信能力。PDO和SDO的CAN报文标识符可以直接通过对象字典的数据结构的入口标志符进行分配,或者,在简单的系统中,也可用预定义的标志符。IV.SAEJ1939制订机构:SAE(SocietyofAutomotiveEngineer)-卡车和公共汽车电气电子委员会(Track&BusElectrical&ElectronicsCommittee)-“卡车与大型客车控制和通讯网络附属委员会”(Track&BusControlandCommunicationsNetworkSubcommittee)制订目的:为中重型道路车辆上电子部件间的通讯提供标准体系结构协议内容:物理层——SAEJ1939-11,-13,-15数据链路层——SAEJ1939-21网络层——SAEJ1939-31车辆应用层——SAEJ1939-71应用层-诊断——SAEJ1939-73网络管理协议——SAEJ1939-81目前车辆的ECU大都带SAEJ1939/CAN接口。针对具有SAEJ1939CAN接口的ECU产品,集成实现车辆网络,完成自定义ECU的信息采集和各ECU间的信息交换。J1939协议具有如下特点:(1)以CAN2.0B协议为基础,物理层标准与ISO11898规范兼容并采用符合该规范的CAN控制器及收发器。通讯速率最高可达到250Kbps。终端120Ω电阻。(2)采用PDU传送信息,每个PDU相当于CAN协议中的一帧。由于每个CAN帧最多可传输8个字节数据,因此PDU的传输具有很高的实时性。(3)利用CAN2.0B扩展帧格式的29位标志符定义每一个PDU的含义以及该PDU的优先级。(4)J1939协议主要作为汽车中应用的通讯协议,对汽车中应用到的各类参数都进行了规定。参数的规定符合ISO11992标准。J1939协议是目前在商用车辆、舰船、轨道机车、农业机械和大型发动机中是应用最广泛的应用层协议。通过J1939能够传输测量值和控制数据并配置元件。另外,还能够读或删除单个元件诊断数据,并对单个控制进行校准。比如商用车所有相关变量都要在SAEJ1939中定义值域、分辨率、识别数等等。在SAEJ1939协议中,不仅仅指定了传输类型、报文结构及其分段、流量检查等,而且报文内容本身也做了精确的定义。SAEJ1939在ISO/OSI层模型中的分布根据OSI层模型,但其第5和6层是不需要的,因此没有定义。SAEJ1939的功能被分为如下几层:第一层(物理层)描述在其它事物中与物理媒介的电子接口;第二层(数据链路层)描述基于CAN2.0B规格的CAN数据通信;第三层(网络层)主要描述两个网络部分间针对报文传输的网桥的功能,并且只与J1939网桥实现相关;第四层(传输层)基本上描述的是针对报文申请模式、确认传输和大数据块的分段传输的各种网络服务;第七层(应用层)描述实际的数据(参数或带有值域的网络变量、分辨率、物理单元和传输类型)。每个报文无歧义地对应一个数(参数组数);由于网络管理可以被当作一个分离的单元,能直达硬件(第一层),因此在这个层模型中,该模块是作为右手边的一个独立的功能块。网络管理基本上包括自动分配或决定节点地址(即插即用原则)。1.物理层J1939物理层有三个子协议,基本内容是共同的:采用特征阻抗为120Ω的双绞线,波特率250kbps网段尽可能使用线性拓扑结构其中J1939/11规定了基本内容(采用屏蔽双绞线-3wire),J1939/13主要规定了离线诊断连接器的物理规范(4wire):性能、机械特性和安装要求等;J1939/15是简化的J1939/11协议(采用非屏蔽双绞线-2wire)。J1939/11的基本内容还有:每个网段的ECU数由电气负载决定,最多30个。(在J1939/15中则为最多10个);特征阻抗为120Ω(70-140)差分电压(2.5/2.53.5/1.5)标准对很多技术细节做了规定,比如连接器应有符合要求的锁闭、偏振和保持装置,应用的环境保护措施。连接ECU的“短截线连接器”(stubconnector)和扩展网段的“直通连接器”(throughconnector)的尺寸特性等。标准中还包括线路故障的描述和示例。标准还附有4个资料性附录,分别为:附录A:物理层电路范例附录B:电缆作终端的方法附录C:电缆连接方法附录D:电缆修复方法使用中继器和网桥来延长网段和进行数据的转发和过滤。网桥也可以用来把网络拆解成网络分支以分割网络数据流,这样就可以隔离分支中发生的故障,减少每个网络分支的负载,提高整个网络效率。2.数据链路层

:数据链路层在物理层之上提供了可靠的数据传输功能,实现了应用层报文的数据交换。通过数据链路层的组织,实现了发送数据帧必须具有的同步、顺序控制、错误控制和流控制等功能。和物理层一样,J1939的数据链路层也兼容CAN规范。但J1939协议引入协议数据单元PDU(ProtocolDataUnit)的概念,对扩展帧ID做了重新定义。CAN帧ID中前11位ID被划分为3位优先权域、1位保留位、1位数据页位(DP)和6位协议数据单元格式域(PDU)高6位,后18位扩展ID被划分为2位协议数据单元格式域(PDU)低2位、8位特定PDU域(PS)和8位源地址域(SA)。J1939的PDU图

1939的PDU与CAN帧的关系示意图其中:PRIORTY(P):表示优先级。从0到7,优先级从高到低。(默认值:控制-3;其它-6)DATAPAGE(DP-数据页位):用来选择附加参数组目录。PDUFORMAT(PF):8b,属于J1939PGN一部分,用来标识和定义请求,应答,拒绝应答等命令及数据。PDUSPECIFIC(PS-扩展单元):8b,如果PF<240,则PS代表目的地;如果PF>=240,则PS是扩展组GE的值。采用这种格式的参数组只能作为全局消息进行通信DestinationAddress(DA):255是全局地址。SOURCEADDRESS(SA):8b,CAN标识符的唯一性。DataField:8字节数据。如数据超过8字节,则需分成几个数据包发送。用数据域第一个字节作报文序号。传输协议功能一个9字节及以上的字符串参数组无法用单个CAN数据帧来装载。它们必须被拆分为若干个小的数据包。第一个数据传送包包含序列编号1和字符串的头7个字节,其后的7个字节跟随序列编号2存放在另一个CAN数据帧中,再随后的7个字节与编号3一起,直到原始信息中所有的字节都被存放到CAN数据帧中并被传送。1)CAN的传输协议功能是数据链路层的一部分,它可再细分为两个主要功能:消息的拆装和重组以及连接管理。“发送者”(originator)指那些发出请求发送消息(RTS)的电控单元或设备。“响应者”(responder)指那些发出应答发送消息(CTS)的电控单元或设备。序列编号是在数据拆装时分配的,每个数据包分配一个从1到255的序列编号。接收方利用这些编号把数据包重组成原始信息。含序列编号1和字符串的头7个字节,其后的7个字节跟随序列编号2存放在另一个CAN数据帧中,再随后的7个字节与编号3一起,直到原始信息中所有的字节都被存放到CAN数据帧中并被传送。传送的每个数据包(除了传送队列中的最后一个数据包)都装载着原始数据中的7个字节。这样:一个数据包的数据域的8个字节包含:数据包的序列编号和参数组至少一个字节的数据,余下未使用的字节全部设置为“FF16”。2)

连接管理为在两个节点间传送长消息,需要先建立虚拟连接。连接管理就用于处理节点间虚拟连接的打开、使用和关闭。。如果连接是一点到多点,则无数据流控制和关闭功能。(如果某节点要广播多包消息,要先发送广播公告消息(BAM),包含长消息参数组编号、消息大小和被拆装的数据包的数目。然后,使用PGN=60160发送)。连接初始化:节点传送请求发送消息(RTS)给一个目标地址,包含消息字节数,消息包数,响应一个CTS能发送的最大数据包数,以及传送信息的参数组编号。接到请求节点如果选择接收,发送CTS消息,包含可接收数据包的数目,和要接收的第一个数据包的序列编号。如果选择拒绝连接,响应者将发送一条放弃连接消息。在响应者成功传送了对一个RTS消息响应的CTS消息后,就可以认为响应者的连接已经建立了。数据传输正式开始。(有一种例外的情况,就是当节点发送了“广播公告消息”后开始数据传输,不需要使用CTS)。用于数据传输的PGN将包含在每个数据包的CAN标识符域。数据域首字节将存放数据包的序列编号。响应者负责调整节点间数据流控制。如果响应者想停止已开始的数据流,必须使用CTS把要接收数据包数目设置为零。关闭连接有两种情形:连接到全局目标地址时,接收完数据后没有关闭连接的操作连到接指定目标地址,发送者或者响应者都可以在任何时候使用“放弃连接”消息(TP.CM_Abort)来终止连接。响应者则可以发送一个消息结束应答(TP.CM_EndOfMsgAck)给消息的发送者,来释放连接,以供其他设备使用。传输协议—连接管理消息(TP.CM)这种消息类型是用于建立和关闭连接,以及控制数据流。传输协议提供了以下5种传输协议连接管理消息:连接模式下的请求发送-(TP.CM_RTS)连接模式下的准备发送-(TP.CM_CTS)消息结束应答-(TP.CM_EndofMsgAck)放弃连接-(TP.CM_Abort),广播公告消息-(TP.CM_BAM)。传输协议—数据传送消息(TP.DT)TP.DT消息用于与同一个参数组相关的数据通信。它是多包消息传送中的单个数据包。例如,通信时,一条长消息为了被分割成5个数据包,就有5个TP.DT消息。附录D列举了TP.DT消息使用的例子。TP.DT消息只能由发送者发送网络上的每个节点每次可以发起一个给定目标地址的指定目标地址连接传送。这是因为TP.DT消息只包含要传送数据的源地址和目标地址,而非PGN值。在一个指定时刻,一个发送者只能发送一个多包BAM消息。这是因为TP.DT消息不包含目前的PGN值或者连接标识符。但是,响应者(例如,本例中的接收设备)必须能识别来自多个不同发送者的多包消息,接收时不能搞混。一个节点必须能够支持同时来自于同一个源地址的一个RTS/CTS会话和一个BAM会话。响应者必须用这两种传输协议消息的目标地址来区分。其中一种传输协议消息使用全局目标地址,另一种消息使用指定目标地址。因为TP.DT消息不包含目前的PGN值和连接标识符,所以只能通过目标地址来区分这两种消息。不管一个节点能不能够支持多个同时发生的传输协议会话(RTS/CTS与/或BAM),它都必须确保来自同一源地址但带有不同目标。传输协议的使用制定传输协议是为了传送数据在9字节或以上的PGN提供一种机制。对于一个定义为多包的PGN消息,在特殊情况下要传送少于9个字节的消息,就应该使用一个DLC被设为8的单个CAN数据帧来发送。一些特定的PG可能当它们少于或等于8个字节时,会使用非传输协议的形式来发送,而当它们大于8个字节时,则使用传输协议的形式来发送。也有可能同一PG的两种形式同时进行发送。需要注意的是,使用非传输协议形式的PGN不是会话,所以发送该类消息不会关闭同一个使用传输协议形式的PGN消息的发送。3.网络层多个网段存在时需网络互联ECU,功能包括报文转发、报文过滤、报文地址转换、报文重组及数据库管理:中继器:用来延长网络距离的互连设备,可以连接不同的媒体。但数据传输率,数据链路协议和地址空间是相同的。网桥:数据的转发和过滤。可以把网络拆解成网络分支、分割网络数据流,隔离分支中发生的故障,这样就可以减少每个网络分支的负载,提高整个网络效率;路由器:可以使网络段具有独立的地址空间和不同的数据传输率和媒介。网关:可以在不同的协议和数据设置的网段之间传送数据。子网:包括牵引机构,拖车机构,执行机构和刹车系统。子网由网桥,路由和网关来划分,以使各个段上的总线冲突降到最小。4.传送应用层

应用层分为传送应用层和故障诊断应用层。传送应用层定义了参数的具体格式,如标识符,优先级,数据长度,参数的范围等。定义针对车辆应用的信号(参数)和报文(参数组-与某ECU相关的多个参数)。定义针对车辆应用的信号(参数)和报文(参数组-与某ECU相关的多个参数)。和应用层通信相关的还有ECU(CA)的名称与地址分配。参数又划分为:状态参数和测量参数。状态参数表示具有多态信号的某一种状态,如:发动机刹车使能/禁能,巡航控制激活/关闭,扭矩/速度控制超载模式,错误代码等;测量参数则表示所接受到的信号的值的具体大小。如:缸内爆发压力,最大巡航速度,发动机转速等。。1)可疑参数编号(SPN)应用层通过参数描述信号,给每个参数分配了一个19位的可疑参数编号(SPN)。SPN用来标识与ECU相关的故障诊断元素、部件或参数组中参数。分配SPN:参数组里每一个参数都有SPN不在参数组里的故障信号与部件SPN用于多种目的,专用于诊断的有:1)用于识别可修复的失效最小子系统;2)用于识别子系统或集成部件可能并无严重故障,但存在运行不正常;3)识别一个将要告知的专门事件或情况;以及4)用于报告部件和非标准的故障模式。SPN需要通过控制模块的地址编码来确定故障诊断信息是由网络上的哪个控制器来执行诊断的。初始的511个SPN是预置SPN,并将使用与在SAEJ1587中使用的参数标志符(PID-ParameterIdentifier)完全相同的编号。所有其他的SPN将从512开始继续编号。生产厂可自定义可疑参数,编号自520192至524287,多达4096个。1939/73的附录F中列出了自定义可疑参数的一些规则。2)参数组和PGN参数组:在一消息(报文)中传送参数的集合。参数组包括:命令、数据、请求、应答和否定应答等。不论是单包消息还是多包消息,参数组都被看作数据。因为参数组与源地址无关,因此可以从任何源地址发送任意的参数组。参数组编号ParameterGroupNumber(PGN)参数组编号PGN用来唯一标识一个特定参数组。除已分配的参数和参数组外,用户还可通过分配未使用的SPN给自定义参数和定义专有报文对应用层进行补充。其中:DATAPAGE(DP-数据页位):用来选择附加参数组目录。PDUFORMAT(PF):8b,已经定义两种专有PGN,使用PDU1支持点对点通信,而大部分用PDU2格式广播)。专有信息的解释因制造商而异。制造商A的专用通信极可能与制造商B不同。)PDUSPECIFIC(PS-扩展单元):8b,如果PF<240,则PS代表目的地;如果PF>=240,则PS是扩展组GE的值。采用这种格式的参数组只能作为全局消息进行通信DestinationAddress(DA):255是全局地址。SOURCEADDRESS(SA):8b,CAN标识符的唯一性。其中:GroupExtension(GE):如果PF>=240(即PF最高4位被置1,则值为:128+64+32+16=240)则PS场的值就是GE.

规定每个数据页4096个参数组。这4096个参数组只能使用PDU2格式。另外,每个数据页中有240个参数组只能使用PDU1格式。综上,使用这两个数据页一共可以定义8672个参数组。这样使用J1939协议可用参数组的总数目为:

[240+(16X256)]X2=8672个不同的标识符。图

参数组示例参数组示例3)

ECU和CA网络上的ECU包括标准(设备)ECU、网络ECU和诊断开发工具。各自功能不同。J1939通信网络中表示功能模块的是CA(ControlledApplication-控制器应用程序)来代表。一个多功能ECU可以包括多个CA。网络管理的具体规定在J1939/81中。具体规定了节点命名和地址分配、声明等。为了能够在J1939网络上进行通信,每个CA都必须有一个地址以及一个和它联系在一起的名字。每个CA在开始正常的网络通信之前,必须有一个名称并且成功声明了一个地址。地址声明消息包括地址和名字,用于把名字和网络中的某个地址关联在一起。有时在一个网络内ECU过多时,在有拖车等时需要组成多网段系统。CA的名字是一个64位的标识符,由10个域组成。其中有6个域的值由标委会分配给出。其余4个域的值或者根据网络特性以及汽车架构给出,或者由生产厂商直接给出。与CA相关联的名字则主要用于识别网络上的CA及其功能。利用网络管理协议中的地址管理程序,在单个源地址与CA的名字之间建立联系,并在网络上进行声明。声明地址成功,然后才能向网络发送,如果CA按地址声明过程失败,必须设置其地址为空地址254,且向总线发送地址声明失败的消息。当多个CA试图声明同一个地址时,CA名字用于仲裁,这样网络上的每个CA依次得到一个唯一的地址,名字用于表示CA功能描述,如发动机1、发动机2、变速箱1、ABS1和用于地址仲裁。ECU制造商和网络集成商必须保证所有在一个网络上传输消息CA的名字唯一。图重型卡车发动机ECU的名字示例图CA名字格式CA的地址8位。以下控制器或模块地址均按照SAEJ1939-2010标准定义:CanID,PGN和PDU区别:例:玉柴等发动机厂家的报文用CanID标识符EEC1Tx0x0CF00400EEC2Tx0x0CF00300。。。EngRetCfgPACKTx0x18EBFF0FEngTempTx0x18FEEE00其中:0x

18FEEE000x–16进制18–11000(优先级6);0C-01100(优先级3);1C-11100(优先级7)FEEE-1111111011101110(65262),PGN00-CA地址4.J1939故障诊断应用层简介

现在的汽车维修检测依靠计算机进行,利用软件进行判断。在电子控制系统设计阶段,也必须增设系统故障自诊断功能和故障运行功能。大多数发动机ECU都有自诊断能力。每种类型的故障或错误都指定一个故障代码DTC。自诊断功能利用ECU监视电子控制系统各部分,发现故障后启动故障处理程序。以保证发动机在有故障的情况下可以继续行驶,而且还可以通过诊断消息DM向驾驶员和维修人员提供故障情况。车辆故障诊断结果通过仪表板灯闪烁代码或直接显示在CRT屏幕上。厂家和售后服务公司都有用来监测车辆电子元件的诊断仪器。1)诊断故障代码DTC(DiagnosticTroubleCode)J1939故障诊断主要采用诊断故障代码DTC来识别故障类型、相关故障模式以及它的发生次数。诊断故障代码DTC由4个独立部分构成,共用4个字节:-可疑参数的编号(SPN)19位;-故障模式标志(FMI)5位:该

FMI定义了为SPN所识别的子系统中发现的故障类型;-发生次数(OC)7位;-可疑参数编号的转化方式(CM)1位,这个指与SPN发送的格式有关。这些独立的参数不是一个单独的数,而是一组4个字节的描述故障的信息。诊断测试工具通过控制模块地址和名字,确定诊断信息的来源。故障模式标志(FMI)的说明:FMI=0:数据有效但超出了正常操作的范围-最严重水平FMI=1:数据有效但低于正常操作的范围-最严重水平FMI=2:数据不稳定,断断续续的,或者不正确FMI=3:电压高于正常值,或者与高端短路FMI=4:电压低于正常值,或者与低端短路FMI=5:电流低于正常值或断路FMI=6:电流高于正常值或电路接地FMI=7:机械系统不响应或者无法调节FMI=8:非正常的频率或脉冲宽度或是周期诊断故障代码DTC实例:已知:油压预滤器参数,可疑参数数值(SPN=1208)

FMI=3

(电压高于正常值,或与高端短路)发生次数OC=10

CM=0,表示所有的诊断故障代码域以英特尔格式传送(最小有效字节优先)十进制十六进制二进制SPN12084B81600000000100101110002FMI3316000112OC10A1600010102(7位)CM02DTC实际传输次序:2)诊断信息DM(DiagnosticMessage)诊断信息DM即诊断参数组。其定义,格式应满足

OBDⅡ的要求下面是常用的DM系列:DM1诊断信息1,当前故障码(PGN=65226)DM2诊断信息2,历史故障码(PGN=65227)DM3诊断信息3,历史故障码的清除/复位(PGN=。。。)DM4诊断信息4,停帧参量DM5诊断信息5,诊断准备就绪DM6诊断信息6,持续监视系统测试结果DM7诊断信息7,指令非持续监视测试DM8诊断信息8,非持续监视系统测试结果DM9诊断信息9,氧传感器测试结果DM10诊断信息10,非持续监视系统测试标志符识别支持DM11诊断信息11,当前故障码清除/复位DM12诊断信息12,发送排放相关的当前故障码……诊断信息DM1:当前故障码(PGN=65226)数据长度:可变数据页面:

0PDU格式:

254PDU指定:

202默认优先值:

6、、参数组数编号:

65226(00FECA16)8~6位

SPN,有效位中的高3位(最高有效位为第8位)5~1位

FMI(最高有效位为第5位)字节:

38位可疑参数编号的转化方式7~1位发生次数字节4字节:

68~1位

SPN,

SPN的第2个字节(最高有效位为第8位)8~7位故障指示灯状态6~5位红色停止灯状态4~3位琥珀色警告灯状态2~1位保护灯状态字节:

1字节:

2(预留)字节:

58~1位

SPNSPN的低8位有效位(最高有效位为第8位)(参考:OBD故障码SAE-J2012)第三位表示出现故障的部件信息:Px1xx燃油计量和空气计量Px2xx燃油计量和空气计量Px3xx点火系统Px4xx辅助废气调节Px5xx车速调节(GAR)和怠速调节Px6xx计算机信号和输出信号Px7xx变速器第四和第五位表示部件/系统的标识代码。第一位是个字母,它表示系统类型:Pxxxx动力系统Bxxxx车身Cxxxx底盘Uxxxx网路连接相关的系统OBDII上只使用P-代码。第二位表示标准代码:P0xxx由SAE统一制定的故障码。P1xxx由厂家各自制定的与废气排放有关的故障代码,这些代码必须报送给立法者。车辆网络拓扑结构具有SAEJ1939/CAN接口的ECU产品接上仪表板连成网络,为了使自定义ECU对外通信尽量不影响ECU产品间的通信,整个网络分为两个网段(必要时可合并成一个网段)。网段A包含信息交互ECU,发动机ECU,变速器及其缓速器ECU,ABSECU;网段B包括信息交互ECU,发动机外围、I桥及II桥ECU,分动器ECU,III桥及IV桥ECU。信息交互ECU用两个CAN端口分别与两个网段连接,具有报文转发功能。在多轴(桥)驱动的汽车,为了将输出的动力分配给各驱动桥设有分动器共享-利用网络进行悬架控制

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论