车载诊断标准ISO+157652中文doc.docx
《车载诊断标准ISO+157652中文doc.docx》由会员分享,可在线阅读,更多相关《车载诊断标准ISO+157652中文doc.docx(16页珍藏版)》请在冰点文库上搜索。
车载诊断标准ISO+157652中文doc
ISO15765-2〔20RR
道路车辆控制局域网络诊断
第2局部:
网络层效劳
ISO15765协议,定义了“道路车辆一一局域网控制器〔CAN诊断〞,包含如下几个部
分:
第一局部:
总论。
――第二局部:
网络层效劳。
――第三局部:
统一诊断效劳具体的执行
——第四局部:
排放相关系统的要求
概述
ISO15765-2的协议,定义车载诊断系统网络层要求,提供在CAN数据链路层〔ISO11898定义〕上运行。
虽说它最初设计是用在诊断系统上的,它同样适用于其它需要网络层协议的CAN通信系统上。
为了到达诊断通信要求,ISO15765协议是基于ISO/IEC7498和ISO/IEC10731的开放互联系统根本参考模型建立的。
该模型将通信系统分为七层,ISO15765协议映射到该模型上,分层如下:
――统一的诊断效劳〔第7层〕,在ISO15765-3中定义。
――网络层〔第3层〕,在ISO15765-2中定义。
――CAM艮务层〔第1,2层〕,在ISO11898中定义。
如表1所示,
表1——对应OSI分层,扩展的及法规要求的OBD诊断规定
开放互联系统〔OSI〕分层
汽车生产商扩展的诊断效劳
法规要求的车载诊断系统
〔OBD
诊断应用
用户定义
ISO15031-5
应用层
ISO15765-3
ISO15031-5
表示层
N/A
N/A
会话层
ISO15765-3
N/A
传输层
N/A
N/A
网络层
ISO15765-2
ISO15765-4
数据链路层
ISO11898-1
ISO15765-4
物理层
用户定义
ISO15765-4
应用层效劳是由ISO15765-3按照ISO14229-1和ISO15031-5建立的诊断效劳制定的,但ISO15765-3协议不仅适用于上述的诊断效劳项,也适用于大多数的国际标准及汽车生产商规定的诊断效劳。
网络层效劳由该局部的ISO15765协议定义,并独立于物理层上的操作,物理层仅仅是在法规的OBDt有规定。
道路车辆控制器局域网〔CAN的诊断
第二局部:
网络层
1范围
这局部ISO15765协议描述了在ISO11898定义的控制其局域网中裁剪的网络协议,用于满足基于CAN的车载网络系统。
它是按照ISO14229-1和ISO15031-5建立的诊断效劳制定的,但该局部协议不仅适用于上述的诊断效劳项,还适用于车载内部其它的网络通信。
该协议描述的是未经最后确认的的通信。
2参考的标准
下述的参考文档对于该文档的应用是必不可少的。
ISO11898-1,道路车辆一一控制器局域网〔CAN――第一局部一一数据链路层及物理信号层
ISO/IEC7498〔所有局部〕,技术信息一一开放互联系统一一根本参考模型
3术语,定义和缩略词
为编撰该文档目的,这些术语和定义已在ISO7498中给出,以下缩略词术语同样适用
BS数据块大小
CF连续帧
confirm确认效劳
ECU电子控制单元
FC流控制
FF首帧
FF_DL首帧数据长度
FS流状态
indication指示效劳
MTRpe言息类型
N_AE网络地址扩展
N_AI地址信息
N_Ar网络层时间参数:
Ar
N_As网络层时间参数:
As
N_Br网络层时间参数:
Br
N_Bs网络层时间参数:
Bs
N_ChangeParameter网络层效劳项名称
N_Cr网络层时间参数:
Cr
N_Cs网络层时间参数:
Cs
N_Data网络数据
N_PCI网络协议控制信息
N_PCItRpe网络协议控制信息类型
N_PDl网络协议数据单元
N_SA网络源地址
N_SDl网络效劳数据单元
N_TA网络目标地址
N_TAtRpe网络目标地址类型
N_USData网络层无应答的数据段传输效劳项名称
NWL网络层
request应答效劳
r接收者
s发送者
SF单帧
SF_DL单帧数据长度
SN顺序号
STmin间隔最短时长
4网络层总览
概述
该项主要描述网络层总体的功能。
该局部的ISO15765协议定义了未最后确认的网络层通信协议。
该协议用于网络节点之间数据交互,例如从一个ECU到另一个ECU或外部诊
断设备和一个ECU之间的通信。
如果要传送的数据超过了单个的CAN帧长度,那么需要提供
拆分的方法。
为描述网络层的功能,它提供给高层的效劳项及内部操作必须予以研究。
网络层提供给高层的效劳项
该效劳项接口定义了一些由网络层提供使用效劳项,例如,数据发送、数据接收及协议参数设置。
已定义了两种类型的效劳:
a〕通信效劳项
以下定义的效劳项,使发送者最多能发送4095个字节的数据。
1〕
该效劳项用于请求发送数据。
如果有必要的话,网络层拆分这些数据。
2〕
该效劳项用于通知上层被拆分的信息的首帧的接收。
3〕
该效劳项用于提供接收的数据至上层。
4〕N_USDatafirm
该效劳项用于确认应答给上层,表示请求效劳项已经被执行〔成功执行或不成功执行〕。
b〕协议参数设置效劳项
以下定义的效劳项,使之能够对协议参数动态设置。
1〕
该项效劳用于对特定内部参数的动态设置的请求
2〕N_ChangeParameterfirm
3〕该效劳项用于确认应答给上层,表示修改协议特定项的请求已经被执行〔成功执行或不成功执行〕。
网络层的内部操作
网络层的内部操作为实现对等实体间的通信提供了分段、重组、数据传输流控制方法。
网络层主要的任务是传递一帧或大于一帧的数据信息。
超过一帧的信息被分成多个局部,每一个局部都以一个CAN帧的形式被发送。
图1显示的是未被拆分的信息的传送的例子。
图2显示的是被拆分的信息传送的例子
流控制用来使发送端适应接收端网络层的接收能力。
该流控制策略同样适用于诊断网关和通信子网。
5网络层效劳项
总览
所有的网络层效劳项有统一的结构。
为了定义这些效劳项,三类主要的效劳项说明如下:
――请求效劳,被更高的通信层或应用层使用,用于向网络层传递控制信息及要发送的数据;
――指示效劳,被网络层使用,用于向更高通信层或应用层传递状态信息及接收到的数据;――确认效劳,被网络层使用,用于向更高通信层或应用层传递状态信息。
这些效劳说明没有指定具体的应用程序接口,而只是一些独立于具体实施的主要效劳
项。
所有的网络层效劳项有统一的结构形式,效劳项写成如下的形式:
service.name.tRpe(
parameterA,
parameterB,
parameterC,
)
这里,“service_name〞是指效劳项名称,例如,N_SDU“tRpe〞指示了效劳项的类型,
“parameterA,parameterB,parameterC,…〞那么是N_SDU艮务项传递的值。
效劳项定义了如何使效劳的使用者(例如,诊断应用层)如何与效劳的提供者(例如,网络层)协同运行。
以下效劳项已在国际标准中说明,请求,指示和确认。
使用请求效劳项(service_name.request),效劳使用者向效劳提供者请求一项效劳。
使用指示效劳项(service_name.indication),效劳提供者通知效劳使用者网络层的一个内部事件或者一个对等实体的效劳使用者的效劳请求。
通过确认效劳项(service_name.confirm),效劳提供者通知效劳的使用者,之前效劳使用者请求效劳的结果。
网络层效劳说明
5.2.1
该请求效劳项是请求传递vMessageData数据及字节数,从发送者到到对等实体接收者,通过在N_SA,N_TA,N_TAtRp及N_AE中的地址信息确认。
(参看对参数的定义)。
效劳项每次被启动,网络层应当通过一条N_USData.confirm效劳
通知效劳使用者信息传递的完成情况。
(成功或失败)
N_USData.request(
MtRpe
N_SAN_TAN_TAtRpe
N_AE(可选的)
)
5.2.2N_USData.confirm
N_USData.confirm效劳项由网络层发送,该效劳项用于确定效劳的完成情况,通过在N_SA,N_TA,N_TAtRp及N_AE中的地址信息确认。
参数提供请求效劳项的状态。
〔参看对参数的定义〕
N_USData.confirm〔
MtRpe
N_SA
N_TA
N_TAtRpe
N_AE〔可选的〕
〕
5.2.3N_USData_FF.indication
N_USData_FF.indication效劳项由网络层发送。
该效劳项用于通知相邻上层接收到对等实体首帧数据已经到了。
通过在N_SA,N_TA,N_TAtRp及N_AE中的地址信息确认。
〔参看对参数的定义〕这个指示项发生在接收到拆分数据首帧的时刻。
N_USData_FF.indication〔
MtRpe
N_SA
N_TA
N_TAtRpe
N_AE〔可选的〕
〕
N_USData_FF.indication指示效劳项发送完,网络层应当总是紧跟着发送一个N_UDSData.indication效劳项,指示信息接收的完成情况。
〔成功或失败〕
N_USData_FF.indication指示效劳项应当至友网络层发送指示信息段的首帧是否被正确接收。
如果网络层监测到首帧中任何类型的错误,该信息应当被网络层忽略,并且N_USData_FF.indication指示效劳项不应当被发送至相邻的上层。
如果网络层接收到首帧中数据长度项的值〔FF_DL〕大于接收者缓冲区的数据,这应当被认为是一个错误的条件并且N_USData_FF.indication指示效劳项不应当被发送至相邻的上层。
5.2.4N_USData.indication
N_USData.indication效劳项由网络层发送。
该效劳项指示事件并传递
字节数的^相邻的上层。
这些信息通过同等实体间通过存放于N_SA,N_TA,N_TAtRp及N_AE中标识的地址信息接收过来的。
当值为N_OK寸,vMessageDate及参数信息才有效。
N_USData.indication〔
MtRpe
N_SA
N_TA
N_TAtRpe
N_AE〔可选的〕
〕
N_USData.indication效劳项是在接收到单帧〔SF〕信息或是指示拆分信息接收的完成时发送。
如果网络层检查到单帧中任何类型的错误,该条单帧信息应当被忽略并且N_USData_FF.indication指示效劳项不应当被发送至相邻的上层。
5.2.5
该效劳项用于请求本地实体内部参数的修改。
参数值分配给
参数〔参看对参数的定义〕。
对参数总是可以修改的。
特殊情况是在应用层接收到首帧的指示效劳项〔N_USData_FF.indication〕到接收〔N_USData.indication〕效劳项之间的时刻。
N_ChangeParameters.request〔
MtRpe
N_SA
N_TA
N_TAtRpe
N_AE〔可选的〕
〕这是一个可选效劳项,可被固定的参数值实施代替。
5.2.6N_ChangeParameters.confirm
该效劳项用于确认N_ChangeParameter.Confirmation运用信息的完成情况,这信息通过在N_SA,N_TA,N_TAtRp及N_AE中的地址信息标识。
N_ChangeParameter.Confirm〔
MtRpe
N_SA
N_TA
N_TAtRpe
N_AE〔可选的〕
〕
效劳项数据单元说明
5.3.1MtRpe,MessagetRpe
类型:
枚举类型
范围:
诊断,远程诊断
描述:
参数MtRpe用于确定效劳相中信息参数的类型及范围。
该局部的ISO15765协议指定
了两个值标识这个参数。
文档使用者可通过指定其它的类型,也可通过文档中网络层使用的其它地址信息参数的组合来扩展这些值的范围。
每新定义的一套地址信息,MtRpe应当
赋予新值,标识新的地址信息。
——如果MtRpe*断,N_AI地址信息应当包含参数N_SA,N_TA和N_TAtRpe
——如果MtRpe^程诊断,N_AI地址信息应当包含参数N_SA,N_TA和N_TAtRpe和N_AE5.3.2N_AI,地址信息
5.3.2.1N_AI描述
该参数指的是地址信息。
总的来说,N_AI参数用于确定信息发送者和接收者的源地址〔N_SA,目标地址〔N_TA,也包含确定〔N_TAtRpe〕和可选择地址扩展〔N_AE的通信模式。
网络源地址
类型:
1字节的无符号整数
范围:
00-FF16进制
描述:
N_SA参数代表发送者网络层实体
,网络目标地址
类型:
1字节的无符号整数
范围:
00-FF16进制
描述:
N_SA参数代表接收者网络层实体
5.3.2.4N_TAtRpe,网络目标地址类型
类型:
枚举类型
范围:
物理的,功能的
描述:
N_TAtRpe参数是对N_TA参数的扩展。
它被网络层对等实体使用,代表通信模式。
两种通信模式说明如下:
1对1的通信,称为物理地址,1对多的通信称为功能地址。
――物理地址〔1对1通信〕网络层所有类型的信息都支持。
――功能地址〔1对多通信〕仅仅对单帧的通信支持。
5.3.2.5N_AE,网络地址扩展
类型:
1字节的无符号整数
范围:
00-FF16进制
描述:
N_AE参数用于在大的网络上扩展现行的地址范围,用于子网中发送与接收网络层实体而不是本地网的通信。
假设MtRpe设置为远程诊断时,N_AE仅仅是地址信息的一局部。
5.3.3
类型:
12个bit位
范围:
1-4095
描述:
该参数包含要发送或接收的数据长度。
5.3.4
类型:
字符串范围:
不固定描述:
该参数包含与上层实体所有交互的数据
5.3.5
类型:
枚举类型
范围:
STmin,BS
描述:
该参数确定网络层的参数
5.3.6
类型:
1字节无符号整数
范围:
0-255
描述:
该参数分配给协议参数作为指示效劳。
5.3.7
类型:
枚举类型
范围:
N_OK,N_TIMEOUT_A,N_TIMEOUT_Bs,N_TIMEOUT_Cr,N_WRONG_SN,N_INVALID_FS,N_UNERP_PDI
N_WFT_OVRN,N_BUFFER_OVFLW,N_ERROR
描述:
该参数包含效劳项执行的结果状态。
如果同时产生了两个或以上的错误,网络层应
该使用以下错误指示中首先找到的参数值,发送给高层。
——N_OK
该值表示效劳执行完全正确;它可同时由发送者和接收者发送至效劳的使用者。
——N_TIMEOUT_A
该值在定时器N_Ar/N_As超过了定时值N_AsmaR/N_ArmqR发送给效劳的使用者;它可同
时由发送者和接收者发送至效劳的使用者。
——N_TIMEOUT_Bs
该值在定时器N_Bs超过了定时值N_BsmaR发送给效劳的使用者;它仅能由发送者发送至
效劳的使用者。
——N_TIMEOUT_Cr
该值在定时器N_Bs超过了定时值N_CrmaR发送给效劳的使用者;它仅能由接收者发送至
效劳的使用者。
——N_WRONG_SN
该值在接收到意外的连续的数值〔〕时被发送至效劳使用者;它仅能由接收者
发送至效劳的使用者。
——N_INVALID_FS
该值在从流控〔FC〕N_PDU接收到无效的或未知的流状态值时发送至效劳的使用者;
它仅能由发送者发送至效劳的使用者。
——N_UNERP_PDU
该值在接收到未知协议数据单元时发送给效劳使用者,它仅能由接收者发送至效劳的
使用者。
——N_WFT_OVRN
该值在接收到流控WAIT帧超过最大计数N_WFTma时发送至效劳使用者。
——N_BUFFER_OVFLW
该值在接收到流控〔FCN_PD状态Flow=OVFLV时发送给效劳的使用者。
它用于指示接收者缓冲区无法存储首帧中数据长度〔FF_DL,因此,该拆分数据的传递被丢弃。
它仅能由发送者发送至效劳的使用者。
——N_ERROR
这是一个默认的错误值。
它是当检测到网络层错误并且没有其它更好的参数描述该项错误时使用发送到效劳使用者。
它可同时由发送者和接收者发送至效劳的使用者。
5.3.8<Result_ChangeParameter>
类型:
枚举类型
范围:
N_OK,N_RR_ON,N_WRONG_PARAMETER,N_WRONG_VALUE
描述:
该参数包含效劳执行的结果状态信息
——N_OK
该值表示效劳执行完全正确;它可同时由发送者和接收者发送至效劳的使用者。
——N_RR_ON
该值发送给效劳使用者指示虽然<AI>标识的信息接收到了,但效劳没有执行。
它仅能由接收者发送至效劳的使用者。
——N_WRONG_PARAMETER
该值发送给效劳的使用者表示由于未定义的<Parameter>,效劳没有执行;它可同时由发送者和接收者发送至效劳的使用者。
——N_WRONG_VALUE
改制发送给效劳的使用者表示由于<Parameter_Value>超出范围,效劳没有执行,它可同时由发送者和接收者发送至效劳的使用者。
6网络层协议
协议功能
网络层协议协议有如下功能:
a〕发送/接收最多4095个字节的数据信息
b〕报揭发送/接收完成状态。
单帧发送
〔扩展及混合地址情况下〕最多发送6字节或〔正常地址情况下〕7字节数据,按照N_PDU格式发送信息,称为单帧〔SF〕见图3.
最多6或7字节的接收通过N_PDl制式,图3未拆分数据的例子
多帧发送
长信息的发送通过拆分信息并通过多个N_PDU发送的形式。
长信息的接收通过接受多个N_PDU并通过重组这些接受的数据。
这多个N_PDU包括首帧〔信息中第一个N_PDU及连续帧〔剩下的所有N_PD〕
多N_PDU信息接收者有条件按照它自己的接收能力通过使用流控协议数据单元
〔FCN_PD〕的流控机制调整传输流量。
――一个首帧协议数据单元〔FFN_PD〕包括〔扩展及混合地址情况下〕5字节或〔正常地址情况下〕6字节数据。
――一个多更多连续帧协议数据单元〔CFN_PD〕U包括6或7字节数据。
CFN_PD包括剩