2020/5/191一.诊断实施UDSONCAN1ECU分类用于诊断通信的所有数据链路,应直接连接到车辆OBD诊断接口.依据对故障自检测结果不同的处理方式,电控单元可分为两类:A类电控单元:该类电控单元根据自检测结果判断是否产生故障,并存储相应的故障信息;B类电控单元:该类电控单元根据自检测结果判断是否产生故障,并将故障的状态信息通过总线发送给A类电控单元。A类电控单元视为B类电控单元的主节点。故障信息的存储由主节点完成。依此策略,BCM规划为A类,挂接在其LINBUS上的ECU可可为B类.2020/5/192二.UDSONCAN诊断协议2诊断协议A类电控单元应支持可与测试工具交互的诊断通信协议。诊断通信协议推荐采用基于CAN总线的统一诊断服务(UDSonCAN)。有关基于CAN总线的统一诊断服务的要求,参考ISO15765-3.B类电控单元,可以不支持诊断通信协议。接入LIN网络的主节点,应为A类电控单元;接入LIN网络的从节点,应为B类电控单元。接入多路CAN总线的电控单元,应选择速率最高的CAN总线进行诊断通信。但是对于此项目,BCM作为网关,连接了多个网段的ECU,外部设备只能通过其中一个网段对该ECU进行诊断操作,推荐选择路由工作量较低的网段.2020/5/193三.诊断需求定义说明3.1自诊断需求所有ECU都应持续地进行故障自诊断,以监控运行状态下的异常事件(错误)。故障自诊断包括两种:初始化阶段自诊断及持续运行时的自诊断。3.2故障自诊断范围故障自诊断的范围,应包含但不限于如下所列内容:ECU内部异常情况;网络通信异常情况;输入/输出线路的开路或短路情况;超出线路正常运行范围的错误信号;迫使系统以失效安全模式运行的情况。3.3故障记录当ECU检测到一个故障时,其将在存储器中存储对应的一个代码,此代码被称为诊断故障代码。除诊断故障代码外,ECU还可能存储与此故障相关的故障状态、快照信息及扩展信息。3.4故障类型-故障代码格式诊断故障代码由3个字节组成:故障代码高字节、故障代码低字节及故障代码失效类型。前两个字节代表发生故障的对象,而第三个字节代表故障失效类型信息。有关故障代码组成的详细定义,请参考ISO15031-6.所有法规相关的故障代码必须符合此标准的定义。3.5故障自恢复策略,具体的故障自恢复策略应在ECU的诊断文件描述3.6当检测到某个可能引起危险的故障时,ECU必须采取必要的措施以保证部件及整车安全,具体采取的措施(危险警报声光提示等)及其激活/关闭准则需在ECU的诊断文件中描述.2020/5/1943.7支持的UDS服务DIAGNOSTICSERVICEsession@APPLICATIONSOFTWAREsession@BOOTLOADERSERVICENAMESIDDEFAULTEXTENDEDDEFAULTPROGRAMMINGPHYSFUNCPHYSFUNCPHYSFUNCPHYSFUNCDiagnosticSessionControl$10√×√√√√√√EcuReset$11√√√√√√√√SecurityAccess$27××√×××√×CommunicationControl$28××√√××××TesterPresent$3E√√√√√√√√ControlDTCSetting$85××√√××××ReadDataByIdentifier$22√√√√√×√×WriteDataByIdentifier$2E××√×××√×ClearDiagnosticInformation$14√√√√××××ReadDTCInformation$19√√√√××××InputOutputControlByIdentifier$2F××√×××××RoutineControl$31××√×××√×RequestDownload$34××××××√×RequestUpload$35××××××××TransferData$36××××××√×RequestTransferExit$37××××××√×2020/5/1953.8支持的DTCMASKBitField位场BitDescription描述BitStateDefinition位状态定义SupportedbyECU1ECU支持1Remarks备注0Testfailed测试失效0=False1=TrueM1Testfailedthisoperationcycle本运行周期测试失效0=False1=TrueU2PendingDTC等待DTC0=False1=TrueM3ConfirmedDTC确认DTC0=False1=TrueM4Testnotcompletedsincelastclear上次清零后测试未完成0=False1=TrueU5Testfailedsincelastclear上次清零后测试失效0=False1=TrueU6Testnotcompletedthisoperationcycle本运行周期测试未完成0=False1=TrueU7Warningindicatorrequested警告指示位请求0=False1=TrueU2020/5/196四-1可诊断的功能-ECU内部异常情况№诊断失效功能SubtypeDescriptionDTC1EEPROM读写失效0x9001462ECUPIN未编程0x9002513板上继电器对电源短路或者开路0x90??154板上继电器对地短路0x90??115雨量传感器内部故障0x90B0966光传感器内部故障0x90B1962020/5/197四-2:输入/输出线路的开路或短路情况№诊断失效功能SubtypeDescriptionFailureTypeByteDTCFailureSubtype1组合开关灯光手柄开关故障0x9008082组合开关雨刮手柄开关故障0x9009083其它轻触开关卡滞故障0x900?084外置继电器对电源短路或者开路0x90??115外置继电器对地短路0x90??966外置继电器端子脱落或者继电器内部故障0x90??047灯泡/电机负载/损坏0x900?018灯泡/电机负载开路0x900?139灯泡/电机负载对地短路故障0x900?122020/5/198四-3:超出线路正常运行范围的错误信号№诊断失效功能SubtypeDescriptionFailureTypeByteDTCFailureSubtype1电池电压过低(7v)0X9005162电池电压过高(17v)0X9005172020/5/199四-4网络通信异常情况№诊断失效功能SubtypeDescriptionFailureTypeByteDTCFailureSubtype1LINbusofffailureLIN总线通信故障0xC01?882LostcommunicationwithECU与某ECU失去通信0xC02?873CANNMlimphomeindication0xC030874CAN总线通信故障CANbusofffailure0xC040882020/5/1910五.NetworkLayer(ISO15765-2)参数Symbol符号Min最小值Max/Timeout最大值/超时时间Unit单位P2Server050msP2*Server02000msS3Server——5000msParameterBootloaderApplicationOBDN_As25ms(timeout)70ms(timeout)25ms(timeout)N_Ar25ms(timeout)70ms(timeout)25ms(timeout)N_Bs75ms(timeout)150ms(timeout)75ms(timeout)N_Br(N_Br+N_Ar)50ms(N_Br+N_Ar)70ms(N_Br+N_Ar)25msN_Cs(N_Cs+N_As)50ms(N_Cs+N_As)70ms(N_Cs+N_As)50msN_Cr150ms(timeout)150ms(timeout)150ms(timeout)Blocksize(BS)080STmin=1ms30ms30msN_WFTmax005支持上述服务的数据流,一般选择NormalAddressing模式,参考SO15765-2