参考借鉴车载诊断标准ISO+157652中文docWord文档格式.docx
《参考借鉴车载诊断标准ISO+157652中文docWord文档格式.docx》由会员分享,可在线阅读,更多相关《参考借鉴车载诊断标准ISO+157652中文docWord文档格式.docx(38页珍藏版)》请在冰豆网上搜索。
——CAN服务层(第1,2层),在ISO11898中定义。
如表1所示,
表1——对应OSI分层,扩展的及法规要求的OBD诊断规定
开放互联系统
(OSI)分层
汽车生产商扩展的诊断服务
法规要求的车载诊断系统
(OBD)
诊断应用
用户定义
ISO15031-5
应用层
ISO15765-3
表示层
N/A
会话层
传输层
网络层
ISO15765-2
ISO15765-4
数据链路层
ISO11898-1
物理层
应用层服务是由ISO15765-3按照ISO14229-1和ISO15031-5建立的诊断服务制定的,但ISO15765-3协议不仅适用于上述的诊断服务项,也适用于大多数的国际标准及汽车生产商规定的诊断服务。
网络层服务由该部分的ISO15765协议定义,并独立于物理层上的操作,物理层仅仅是在法规的OBD上有规定。
道路车辆——控制器局域网(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_PDU网络协议数据单元
N_SA网络源地址
N_SDU网络服务数据单元
N_TA网络目标地址
N_TAtRpe网络目标地址类型
N_USData网络层无应答的数据段传输服务项名称
NWL网络层
request应答服务
r接收者
s发送者
SF单帧
SF_DL单帧数据长度
SN顺序号
STmin间隔最短时长
4网络层总览
4.1概述
该项主要描述网络层总体的功能。
该部分的ISO15765协议定义了未最后确认的网络层通信协议。
该协议用于网络节点之间数据交互,例如从一个ECU到另一个ECU,或外部诊断设备和一个ECU之间的通信。
如果要传送的数据超过了单个的CAN帧长度,则需要提供拆分的方法。
为描述网络层的功能,它提供给高层的服务项及内部操作必须予以研究。
4.2网络层提供给高层的服务项
该服务项接口定义了一些由网络层提供使用服务项,例如,数据发送、数据接收及协议参数设置。
已定义了两种类型的服务:
a)通信服务项
以下定义的服务项,使发送者最多能发送4095个字节的数据。
1)N_USData.request
该服务项用于请求发送数据。
如果有必要的话,网络层拆分这些数据。
2)N_USData_FF.indication
该服务项用于通知上层被拆分的信息的首帧的接收。
3)N_USData.Indication
该服务项用于提供接收的数据至上层。
4)N_USDfirm
该服务项用于确认应答给上层,表示请求服务项已经被执行(成功执行或不成功执行)。
b)协议参数设置服务项
以下定义的服务项,使之能够对协议参数动态设置。
1)N_ChangeParamter.request
该项服务用于对特定内部参数的动态设置的请求
2)N_ChangePfirm
3)该服务项用于确认应答给上层,表示修改协议特定项的请求已经被执行(成功执行或不成功执行)。
4.3网络层的内部操作
网络层的内部操作为实现对等实体间的通信提供了分段、重组、数据传输流控制方法。
网络层主要的任务是传递一帧或大于一帧的数据信息。
超过一帧的信息被分成多个部分,每一个部分都以一个CAN帧的形式被发送。
图1显示的是未被拆分的信息的传送的例子。
图2显示的是被拆分的信息传送的例子
流控制用来使发送端适应接收端网络层的接收能力。
该流控制策略同样适用于诊断网关和通信子网。
5网络层服务项
5.1总览
所有的网络层服务项有统一的结构。
为了定义这些服务项,三类主要的服务项说明如下:
——请求服务,被更高的通信层或应用层使用,用于向网络层传递控制信息及要发送的数据;
——指示服务,被网络层使用,用于向更高通信层或应用层传递状态信息及接收到的数据;
——确认服务,被网络层使用,用于向更高通信层或应用层传递状态信息。
这些服务说明没有指定具体的应用程序接口,而只是一些独立于具体实施的主要服务项。
所有的网络层服务项有统一的结构形式,服务项写成如下的形式:
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网络层服务说明
5.2.1N_USData.request
该请求服务项是请求传递<
MessageData>
数据及<
Length>
字节数,从发送者到到对等实体接收者,通过在N_SA,N_TA,N_TAtRpe及N_AE中的地址信息确认。
(参看5.3对参数的定义)。
N_USData.request服务项每次被启动,网络层应当通过一条N_USData.confirm服务通知服务使用者信息传递的完成情况。
(成功或失败)
N_USData.request(
MtRpe
N_SA
N_TA
N_TAtRpe
N_AE(可选的)
<
5.2.2N_USData.confirm
N_USData.confirm服务项由网络层发送,该服务项用于确定N_USData.request服务的完成情况,通过在N_SA,N_TA,N_TAtRpe及N_AE中的地址信息确认。
参数<
N_Result>
提供请求服务项的状态。
(参看5.3对参数的定义)
N_USData.confirm(
5.2.3N_USData_FF.indication
N_USData_FF.indication服务项由网络层发送。
该服务项用于通知相邻上层接收到对等实体首帧数据已经到了。
通过在N_SA,N_TA,N_TAtRpe及N_AE中的地址信息确认。
(参看5.3对参数的定义)这个指示项发生在接收到拆分数据首帧的时刻。
N_USData_FF.indication(
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_TAtRpe及N_AE中标识的地址信息接收过来的。
当<
值为N_OK时,<
MessageDate>
及<
参数信息才有效。
N_USData.indication(
N_USData.indication服务项是在接收到单帧(SF)信息或是指示拆分信息接收的完成时发送。
如果网络层检查到单帧中任何类型的错误,该条单帧信息应当被忽略并且N_USData_FF.indication指示服务项不应当被发送至相邻的上层。
5.2.5N_ChangeParameters.request
该服务项用于请求本地实体内部参数的修改。
Parameter_Value>
参数值分配给<
Parameter>
参数(参看5.3对参数的定义)。
对参数总是可以修改的。
特殊情况是在应用层接收到首帧的指示服务