diagnostic specification for BMS.docx
《diagnostic specification for BMS.docx》由会员分享,可在线阅读,更多相关《diagnostic specification for BMS.docx(36页珍藏版)》请在冰豆网上搜索。
diagnosticspecificationforBMS
BasicDiagnosticspecificationforBMS
修改人
变更内容
版本
时间
V1.0
2014.06.11
目录
1引言2
1.1范围2
1.2术语和定义2
1.3缩略语3
2诊断通信5
2.1车辆拓扑结构5
2.2通信速率5
2.3网络层参数6
2.3.1PW-CAN参数7
2.3.2诊断层参数7
2.4通信失败10
2.4.1意外的消息10
2.4.2丢失消息10
2.5消息填充10
2.6寻址模式10
2.6.1物理寻址模式10
2.6.2功能寻址模式11
3诊断需求11
3.1BMS诊断方法11
3.2故障记录11
3.3DTC状态12
3.4DTC结构13
4诊断服务13
4.1诊断服务列表13
4.2诊断和通信管理服务16
4.2.1开启诊断会话服务16
4.2.2ECU重设服务17
4.2.3停止诊断会话服务18
4.2.4安全访问服务19
4.2.5通信控制服务22
4.2.6诊断仪保活24
4.3数据传输功能单元25
4.3.1由本地标识符读取数据25
4.3.2由公共标识符读取数据27
4.3.3由本地标识符写数据28
4.3.4由公共标识符写数据29
4.4存储的数据的传输功能单元31
4.4.1读取故障代码31
4.4.2由状态读取故障代码32
4.4.3读取故障代码的状态34
4.4.4清除诊断消息35
4.5程序远程激活控制单元35
4.5.1由本地标识符开启程序35
4.5.2由本地标识符停止程序37
4.6上传下载单元38
4.6.1请求下载38
4.6.2传送数据39
4.6.3传送退出40
5参考标准41
6附件42
1引言
本技术规范定义了电动汽车电池管理系统(BMS)的诊断需求、诊断通信协议及诊断服务。
其中,在本技术规范中未定义的诊断服务可遵循ISO14229:
2006,ISO14230-3:
1996和ISO15765-3:
2004中的诊断服务相关规定做扩展。
1.1范围
在本技术规范中,有以下几种诊断操作:
a基本的诊断功能
b在线诊断功能
c下线诊断功能
1.2术语和定义
下线诊断即车辆与诊断仪之间的通信,应符合ISO14229的诊断规范。
在线诊断即车辆各控制器之间的通信,其中各控制器需具备自我诊断和保存故障码功能。
下图即可表示下线与在线诊断的区域。
图1在线与下线诊断的区域划分
1.3缩略语
CANControllerAreaNetwork控制器局域网络
DTCDiagnosticsTroubleCode诊断故障代码
DIDDataIdentifier数据标志符
PIDParameterIdentifier参数标志符
EOBDEuropeanOnBoardDiagnostic欧洲在线诊断
ISOInternationalOrganizationforStandardization国际标准化组织
SAESocietyofAutomotiveEngineers汽车工程师学会
SIDServiceIdentifier服务标志符
MCDMeasurementCalibrationanddiagnostic测量校准和诊断
LINLocalInternetNetwork局部互联网络
UDSUnifiedDiagnosticServices统一的诊断服务
ODXOpenDiagnosticDataExchange开放的诊断数据交换
BSBlocksize块大小
CFConsecutiveFrame后续帧
ECUElectronicControlUnit电子控制单元
FCFlowControl流控制
FFFirstFrame首帧
FSFlowStatus流状态
TANetworkTargetAddress网络对象地址
TPTransportProtocol传输协议
SFSingleFrame单帧
SNSequenceNumber序列号
DLCDataLengthCode数据长度代码
PDUProcessDataUnit数据处理单元
MMandatory强制性的
UUserConditional用户条件
CConditional有条件的
OOptional可选
2诊断通信
2.1车辆拓扑结构
图2网络拓扑结构
此拓扑结构包含四路CAN:
PW-CAN、AC-CAN、E/E-CAN、D-CAN。
其中D-CAN为诊断CAN。
BMS挂接在PW-CAN上,遵循PW-CAN的通信协议。
2.2通信速率
PW-CAN的通信速率为500kbps,D-CAN的通信速率为500kbps。
2.3网络层参数
对于CAN协议,一帧CAN数据可传输的最大数据包限制为8字节。
如果超出了8字节,则需要根据ISO15765-2的规定来进行。
图3流控制过程
N_As-TimefortransmissionoftheCANframeonthesenderside
N_Ar-TimefortransmissionoftheCANframeonthereceiverside
N_Br-TimeuntiltransmissionofthenextFC
N_Bs-TimeuntilreceptionofthenextFC
N_Cs-TimeuntiltransmissionofthenextCF
N_Cr-TimeuntilreceptionofthenextCF
STmin-TheminimumtimethesenderistowaitbetweenthetransmissionsoftwoCF
2.3.1PW-CAN参数
Parameter
Symbol
Timeout
PerformanceRequirement
Uint
TimeuntilCANmessagehastobetransmitted
N_As/N_Ar
70
n/a
ms
TimefortransmittingofthenextFC
N_Br
n/a
<70
ms
TimeforreceptionforthenextFC
N_Bs
150
n/a
ms
TimefortransmissionofthenextCF
N_Cs
n/a
<70
ms
TimeuntilreceptionofthenextCF
N_Cr
150
n/a
ms
表1整车CAN通信参数
2.3.2诊断层参数
参数
描述
类型
最大
最小
超时
单位
P2client
成功传送请求消息和开始回应消息之间客户端的等待时间
定时器重新载入值
n/a
n/a
150
ms
P2server
接收到请求消息和开始回应消息之间的服务器执行时间要求
执行要求
50
0
n/a
ms
P2*client
接收到代码78h的否定回应消息和开始回应消息之间客户端的扩展等待时间
定时器重新载入值
n/a
n/a
5000
ms
P2*server
传送了代码78h的否定回应消息和开始回应消息之间服务器的执行时间要求
执行要求
2000
0
n/a
ms
P3client_phys
没有要求回应消息时,成功传送了的物理寻址消息后,客户端等待传送下一个物理寻址请求消息的最小时间
定时器重新载入值
n/a
P2server
n/a
ms
P3client_func
没有回应消息或者请求的数据只是被功能请求的部分服务器所支持的情况下,成功传送了功能寻址请求消息后,客户端等待传送下一个功能寻址请求消息的最小时间
定时器重新载入值
n/a
P2server_max
n/a
ms
表2默认诊断会话参数定义
参数
描述
类型
最大
最小
超时
单位
S3server
会话超时,返回一个默认会话
定时器重新载入值
n/a
n/a
5000
ms
S3client
当没有接收到任何诊断请求消息时,BMS能保持非默认诊断会话激活的时间
定时器重新载入值
2000
0
4000
ms
表3非默认诊断会话参数定义
2.4通信失败
2.4.1意外的消息
任何节点对于接收到的意外消息或非法格式的消息都是采取忽视
2.4.2丢失消息
诊断仪请求期间,如果BMS自动检测到一个通讯失败,那么BMS应取消这个请求并且不发送回应消息。
2.5消息填充
CAN诊断消息帧必须是全部填满8个字节的,所以空余的字节必须用“填充数据”填满。
不足8字节的诊断帧将被忽略。
定义填充数据位:
0x00。
2.6寻址模式
2.6.1物理寻址模式
所有物理寻址消息都是以BMS的物理地址来接收的。
当用物理寻址模式来做出请求时,BMS可以执行激活的诊断会话所支持的服务。
而来自BMS的回应则在诊断仪的地址上接收。
2.6.2功能寻址模式
在诊断仪请求的消息不是在特定的某个模块的情况时,请求消息应以功能寻址模式来做出请求。
3诊断需求
3.1BMS诊断方法
电动汽车BMS诊断的途径主要有两种:
车辆在启动状态下(BMS激活)读取实时故障信息;通过诊断仪读取BMS的历史故障记录。
3.2故障记录
发生故障时,BMS需能把以下信息记录存储:
DTC码、快照记录、DTC状态、扩展记录和环境信息。
其中DTC码存储时按照ISO15031规定的格式进行存储,即用3个字节的格式进行存储。
故障记录时如果发生溢出现象,新的DTC码就会覆盖掉优先级低的DTC码,而优先级定义如下表:
DTC优先级
描述
0
最高级;此故障发生,车辆的安全性受影响
1
建议立即维修
2
尽快安排维修
3
影响汽车驾驶的舒适度,不需要采取维修行为
4—6
保留
7
无效值
表4DTC优先级
3.3DTC状态
表5DTC状态表
3.4DTC结构
表6DTC结构表
4诊断服务
4.1诊断服务列表
BMS诊断服务要包含以下服务,但不限于此列表。
诊断单元
诊断服务中文列表
诊断服务英文列表
请求服务标志符
诊断和通信管理
开启诊断会话
StartDiagnosticSession
10h
ECU重设服务
ECUResetservice
11h
停止诊断会话
StopDiagnosticSession
20h
安全访问服务
SecurityAccessservice
27h
通信控制服务
Communticationcontrol
28h
诊断仪保活
TesterPresentservice
3Eh
读取ECUID服务
ReadECUIdentificationservice
1Ah
数据传输功能单元
由本地标识符读取数据
ReadDataByLocalIdentifier
21h
由公共标识符读取数据
ReadDataByCommonIdentifier
22h
由本地标识符写数据
WriteDataByLocalIdentifier
3Bh
由公共标识符写数据
WriteDataByCommonIdentifer
2Eh
存储的数据的传输功能单元
读取诊断故障代码
ReadDiagnosticTroubleCodes
13h
由状态读取诊断故障代码
ReadDiagnosticTroubleCodeByStatus
18h
读取诊断故障代码的状态
ReadStatusOfDiagnosticTroubleCode
17h
清除诊断信息
ClearDiagnosticInformation
14h
程序远程激活控制单元
由本地标识符开启程序
StartRoutingByLocalIdentifier
31h
由本地标识符停止程序
StopRoutineByLocalIdentifier
32h
由本地标识符请求程序结果
RequestRoutineResultsByLocalIdentifier
33h
上传下载单元
请求下载
RequestDownload
34h
传送数据
TransferData
36h
传送退出
TransferExit
37h
表7诊断服务列表
4.2诊断和通信管理服务
4.2.1开启诊断会话服务
开启诊断会话服务的功能是激活了ECU所支持的诊断会话模式,只有在激活了诊断会话后,ECU才能在激活的诊断会话模式下执行它所支持的服务。
参数“诊断模式”定义了默认会话模式、ECU扩展的会话模式和ECU编程模式三种诊断会话模式。
默认会话模式是开启一个新的诊断模式的默认模式;ECU扩展和ECU编程是用户定义的模式。
具体参数表如下:
大小(字节)
描述
数值
1
默认会话模式
81h
1
ECU编程模式
83h
1
ECU扩展的会话模式
87h
表8诊断模式参数表
当诊断仪开启一个新的诊断模式时,首先诊断仪会向ECU发送请求服务的消息,此消息格式如下:
诊断仪发送到ECU的请求
字节
内容
数值
0
服务标识符
10h
1
诊断模式
xxh
表9请求消息格式
ECU反馈给诊断仪的有两种消息格式:
肯定回应和否定回应。
消息格式如下:
ECU发给诊断仪(肯定回应)
字节
内容
数值
0
肯定回应服务标识符
50h
1
诊断模式
xxh
表10肯定回应消息格式
ECU发给诊断仪(否定回应)
字节
内容
数值
0
否定回应服务标识符
7Fh
1
请求服务标识符
10h
2
回应代码
xxh
表11否定回应消息格式
4.2.2ECU重设服务
ECU重设服务即请求ECU按照重设服务重新执行一次ECU的设置。
“重设模式”的参数定义如下表:
数值
描述
01
硬件重设
02
切断重设
03
软件重设
04
快速关闭电源
05
快速关闭电源无效
表12重设模式参数表
诊断仪发送给ECU的消息格式如下:
诊断仪发送给ECU的请求
字节
内容
数值
0
ECU重设请求服务标识符
11h
1
重设模式
xxh
表13请求消息格式
ECU发给诊断仪的两种消息格式如下:
ECU发给诊断仪(肯定回应)
字节
内容
数值
0
ECU重设肯定回应标识符
51h
表14肯定回应消息格式
ECU发给诊断仪(否定回应)
字节
内容
数值
0
否定回应服务标识符
7fh
1
请求服务标识符
11h
2
回应代码
xxh
表15否定回应消息格式
4.2.3停止诊断会话服务
停止诊断会话服务即停止ECU和诊断仪之间的会话通信。
其服务标识符为20h。
肯定回应的消息格式如下表:
ECU发给诊断仪(肯定回应)
字节
内容
数值
0
肯定回应服务标识符
60h
表16肯定回应消息格式
否定回应的消息格式如下表:
ECU发给诊断仪(否定回应)
字节
内容
数值
0
否定回应服务标识符
7fh
1
请求服务标识符
20h
2
回应代码
xxh
表17否定回应消息格式
4.2.4安全访问服务
安全访问服务即通过诊断仪来更改安全等级,获取执行被ECU锁定的服务的权利。
更改安全等级一般有两步:
第一步,诊断仪请求seed,ECU回应seed;
第二步,诊断仪根据华晨提供的转换算法发送Key,如果key有效,ECU就会发送一个肯定回应消息,同时安全等级被更改。
安全访问需要定义的参数“安全模式”如下表:
字节
内容
数值
1
请求安全等级1的seed
01h
1
发送安全等级1的key
02h
1
请求安全等级2的seed
03h
1
发送安全等级2的key
04h
表18“安全模式”参数表
安全访问需要定义的参数“安全状态”如下表:
字节
内容
数值
1
安全访问运行
34h
表19“安全状态”参数表
步骤1请求消息格式如下表:
诊断仪发给ECU
字节
内容
数值
0
服务标识符
27h
1
xx=01请求安全等级1
xx=03请求安全等级2
xxh
表20步骤1请求消息格式
步骤1肯定回应消息格式如下表:
ECU发给诊断仪(肯定消息)
字节
内容
数值
0
肯定回应服务标识符
67h
1
xx=01请求安全等级1
xx=03请求安全等级2
xxh
2…5
Seed(4各字节)
xxxxxxxxh
表21步骤2肯定回应消息格式
步骤2请求消息格式如下表:
诊断仪发给ECU
字节
内容
数值
0
服务标识符
27h
1
安全模式-发送key
xxh
2…5
Key
xxxxxxxxh
表22步骤2请求消息格式
步骤2肯定回应消息格式如下表:
ECU发给诊断仪(肯定回应)
字节
内容
数值
0
肯定回应服务标识符
67h
1
安全模式-发送key
02h
2
安全访问状态
34h
表23步骤2肯定回应消息格式
步骤2否定回应消息格式如下表:
ECU发给诊断仪(否定回应)
字节
内容
数值
0
否定回应服务标识符
7fh
1
请求服务标识符
27h
2
回应代码
xxh
表24步骤2否定回应消息格式
4.2.5通信控制服务
通信控制服务是指控制CAN帧的传送或接收。
它包含两种类型:
控制类型和通讯类型。
控制类型参数包含的信息是关于ECU如何调整通讯类型。
参数定义如下表:
控制类型
Hex(0--6)
描述
名称
00
使指定的通讯类型可以接收和发送数据
EnableRxAndTx
01
使指定的通讯类型可以接收数据不可以发送数据
EnableRxAndDisableTx
02
使指定的通讯类型不可以接收数据但可以发送数据
DisableRxAndEnableTx
03
使指定的通讯类型不可以接收数据不可以发送数据
DisableRxAndTx
注:
该参数是一个字节大小,位7不在此表定义。
表25控制类型参数表
通讯类型是指定要控制的通讯类型。
该参数是个位编码数值,允许同时控制多种通讯类型。
参数定义如下表:
通讯类型
位1-0(二进制)
描述
名称
00
保留
01
所有与应用相关的通讯
NomalCommunicationMessages
10
所有网络相关的通讯
NetworkManagementCommunicationMessages
andNomalCommunicationMessages
11
以上都有
注:
该参数是一个字节大小,只定义了第0和第1位
表26通讯类型参数表
请求消息格式如下表:
诊断仪发给ECU
字节
内容
数值
0
服务标识符
28h
1
控制类型参数
xxh
2
通讯类型参数
xxh
表27请求消息格式
肯定回应消息格式如下表:
ECU发给诊断仪(肯定回应)
字节
内容
数值
0
肯定回应服务标识符
68h
1
控制类型参数
xxh
表28肯定回应消息格式
否定回应消息格式如下表:
ECU发给诊断仪(否定回应)
字节
内容
数值
0
否定回应服务标识符
7fh
1
请求服务标识符
3eh
2
回应代码
xxh
表29否定回应消息格式
4.2.6诊断仪保活
诊断仪保活是指诊断仪发送请求使ECU保持在当前的诊断会话中,从而诊断服务或通讯保持激活。
诊断仪发给ECU的请求消息格式如下:
诊断仪发给ECU
字节
内容
数值
0
服务标识符
3Eh
1
回应要求:
要求回应:
01h
没有要求回应:
02h
xxh
表30请求消息格式
ECU接到请求消息后,会发送肯定消息或否定消息,相应的格式如下:
ECU发送到诊断仪(肯定消息)
字节
内容
数值
0
肯定回应服务标识符
7eh
表31肯定回应消息格式
ECU发送到诊断仪(否定消息)
字节
内容
数值
0
否定回应服务标识符
7fh
1
请求服务标识符
3eh
2
回应代码
xxh
表32否定回应消息格式
4.3数据传输功能单元
4.3.1由本地标识符读取数据
由本地标识符读取数据使指使用定义的本地标识符去请求来自ECU的当前数据,此数据包括模拟输入和输出信号,数字输入和输出信号,内部数据和系统状态信息。
诊断仪发给ECU的请求消息格式如下:
诊断仪发给ECU(请求消息)
字节
内容
数值
0
服务标识符
21h
1
记录本地标识符
xxh
表33请求消息格式
ECU发给诊断仪的肯定回应和否定回应消息格式如下:
ECU发到诊断仪(肯定回应)
字节
内容
数值
0
肯定回应服务标识符
61h
1
Local标识符#1
xxh
2
数据记录#1字节1(MSB)
xxh
…
…
2+r
数据记录#1字节r(LSB)
xxh
表34肯定回应消息格式
ECU发到诊断仪(否定回应)
字节
内容
数值
0
否定回应服务标识符
7fh
1
请求服务标识符
21h
2
回应代码
xxh
表35否定回应消息格式
4.3.2由公共标识符读取数据
“由公共标识符读取数据”是指用定义好的公共标识符读取ECU数据。
诊断仪发给ECU的请求消息格式如下:
诊断仪发给ECU(请求消息)
字节
内容
数值
0
服务标识符
22h
1
公共标志符#1(MSB)
xxh
2
公共标志符#1(LSB)
xxh
表36请求消息格式
ECU发给诊断仪的肯定和否定回应消息格式如下:
ECU发给诊断仪(肯定回应)