《第9章基于can总线的标定协议》由会员分享,可在线阅读,更多相关《第9章基于can总线的标定协议(9页珍藏版)》请在金锄头文库上搜索。
1、第9章基于can总线的标定协议 汽车车载网络技术及应用第第9章基于CAN总线的标定协议9.1ASAP标准及ASAM标准组织介绍9.2CCP协议介绍9.3CCP命令9.4CCP协议应用实例9.5CCP协议应用实例1汽车车载网络技术及应用2ECU测试与标定测试是指在ECU运行期间通过外围监测设备对控制器中的某些参数进行监测,断以此判断ECU的工作情况,并对控制策略进行评价。 ECU的标定是指在离线或在线的情况下,改通过外围标定设备修改ECU中某些参数的值,以观察不同参数值对运行结果的影响,以调整并优化控制参数。 汽车车载网络技术及应用39.1ASAP标准级ASAM标准组织介绍几家德国汽车制造商联手
2、一些著名的汽车于电子设备制造商于1991年成立了ASAP标准组织,ASAP的英文全称是The workinggroup forthe standardizationof applicationsystems(应用系统标准化工作小组)。 它的目标是使在汽车电子设备研发过程中相关的测试,标定,诊断方法及工具能够兼容并互换。 汽车车载网络技术及应用49.1.1ASAP标准构成自动化系统,测试标定诊断系统MCD(Measurement,Calibration,Diagnosis System)ASAP3数据库ASAP2ECU电子控制单元驱动程序ASAP1bASAP1a汽车车载网络技术及应用5ASAP3
3、和ASAP2ASAP3是应用系统,即测试,标定,诊断系统(MCD Measurement,Calibration,Diagnosis System)到自动化系统的接口规范。 这里的自动化系统可以是一个测量仪器的指示装置或汽车的燃油测量装置等。 自动化系统,测试标定诊断系统MCD(Measurement,Calibration,Diagnosis System)ASAP3数据库ASAP2ECU电子控制单元驱动程序ASAP1bASAP1a ASAP2又称为ASAP描述文件,是电子控制单元内部数据描述文件的规范。 ASAP2文件用来具体描述电子控制单元(ECU)内部的数据信息,包括数据存储的规范,数
4、字量到物理量的转换规范等。 汽车车载网络技术及应用ASAP1ASAP1是电子控制单元(ECU)到到MCD系统的接口规范,ASAP1规范又细分为ASAP1b与与ASAP1a。 ASAP1b接口下包合括一个符合ASAP标准的驱动程序,硬件接口及电子控制单元。 此因此ASAP1b接口规范保证了MCD与ECU之间的通信,不受同所选通信媒介及不同ECU供应商的限制。 中其中ASAP1a是到ECU端的数据通信的物理及逻辑接口规范,包括通过CAN总线对ECU进行标定的协议规范。 6自动化系统,测试标定诊断系统MCD(Measurement,Calibration,Diagnosis System)ASAP3
5、数据库ASAP2ECU电子控制单元驱动程序ASAP1bASAP1a汽车车载网络技术及应用ASAP标准实例7ASAP3ECU电子控制单元ASAP2ASAP1发动机转速5800l/min储存地址转换格式通信方式发动机转速在哪里?是否需要转换?成物理量如何确定ASAP1b?接口的参数自动化系统MCD系统电子控制单元汽车车载网络技术及应用汽车车载网络技术及应用9.1.2ASAM标准组织及其规范1998年年ASAM小组成立,其英文全称是Association forStandardization ofAutomation andMeasuring System(自动化及测量系统标准化小组)。 ASAM标
6、准是ASAP标准的扩展和衍生,的在新的ASAM标准中,ASAP标准变名为ASAM MCD(ASAM Measurement,Calibration andDiagnosis),的原来的ASAP1,ASAP2,ASPA3为规范在新的标准下分别为ASAM-MCD1MC,ASAM-MCD2MC及ASAM-MCD3MC9汽车车载网络技术及应用9.2CCP协议CCP的全称是CAN CalibrationProtocol(CAN标定协议),是是ASAP标准的有机组成部分,于属于ASAP1a规范标准,于是基于CAN总线的ECU标定协议规范。 CCP协议遵从CAN2.0B通信规范,支持11位标准与29位扩展标
7、识符。 10汽车车载网络技术及应用9.2.1CCP通信方式11主设备MCD系统从设备ECU1从设备ECU2从设备ECU3CAN总线逻辑连接地址1地址2地址3汽车车载网络技术及应用汽车车载网络技术及应用Polling模式这种模式可通俗地理解为“一问一答”的通信模式。 在这种模式下,当主设备与某个从设备建立逻辑连接后,主设备与从设备的每次通信都是通过主设备首先发送一条请求命令,请求从设备执行某项操作,或请求其内部数据。 从设备收到命令后,执行相应操作,通过返回一帧消息,提供主设备请求的数据及命令执行情况代码。 这种通信方式实现起来比较简单,占用ECU内存资源少,但效率较低。 13汽车车载网络技术及
8、应用DAQ模式DAQ(Data AcquisitionMode)模式下从设备可以脱开主设备的控制,按一定的通讯周期自主向主设备上传数据。 这种方式数据上传效率高,但实现起来复杂,尤其当所需上传数据量较大时,用会占用ECU较多RAM空间。 14汽车车载网络技术及应用9.2.2CCP消息格式于由于CCP协议遵从CAN通讯规范,因于此基于CCP的通信都是以CAN报文的形式来实现。 为了规范,CCP消息统一采用用8个字节的数据场,所有命令参数及数据都被打包在8个字节数据场中。 CCP支支持持11位标准或29位扩展标识符。 15汽车车载网络技术及应用 1、CCP消息对象CCP协议的实现只依赖两则CAN消
9、息命令接收对象CRO(Command ReceiveObject)和数据传输对象DTO(Data TransmissionObject)。 16主主主主主主主主主主主主主主主DAQ主主主CCP主主主主CROCRM-DTODAQ-DTO主主主主主主主主主汽车车载网络技术及应用命令接收对象CRO17主设备向ECU发送的消息对象,包括命令代码及命令参数。 CMD CTR字节01234567命令参数汽车车载网络技术及应用CRO命令内容第0字节为命令代码CMD(Command Code),CCP协议共规定了28条命令。 到从设备接收到CRO后后,通过相应CMD代码解释收到的命令并执行。 第第27个字节中
10、包含了与命令相关的命令参数。 命令序号CTR(Command Counter)是是CRO命令发送的序号,按发送的先后顺序,每条由主设备发出的CRO命令被分配给命令序号,如第一条发送的CRO其CTR为01,第二条为02,依次类推。 CTR序号的实现是CCP协议的一种通讯保护机制,在在Polling模式中,条每条CRO消息与其对应的反馈DTO消息,两者的CTR序号相同,保证主,从设备“一问一答”的对应关系。 汽车车载网络技术及应用 2、数据传输对象DTO DTO是从设备反馈给主设备的消息。 按按DTO的不同用途,DTO又分为三类?息命令返回消息CRMDTO(Command ReturnMessag
11、e);?事件消息(Event Message-DTO);?DAQ-DTO(Data AcquisitionDTO)。 汽车车载网络技术及应用DTO内容CRM-DTO发生在Polling通信模式下,的是针对主设备发送的CRO的反馈消息。 当则从设备收到主设备发送的一则CRO后后,按CCP规定,则必须反馈一则DTO,则这则DTO就称为CRM-DTO。 事件消息(Event Message-DTO)是当当ECU内部发生错误时,由由ECU自主发送。 类这类DTO不需要事先收到主设备的CRO,旦一旦ECU发生内部错误,会自动向主设备发送一则事件消息,报告内部发生的情况,请求主设备暂停当前工作并进行处理。
12、 汽车车载网络技术及应用DTO结构PID ERRCTR字节01234567参数数据域汽车车载网络技术及应用PID定义当当PID取值范围在00xFD之间,表明该类DTO是DAQ-DTO。 类这类DTO只用于DAQ通信模型,其数据结构略有不同PID字节01234567参数数据域汽车车载网络技术及应用9.2.3DAQ模式下的数据通信DAQ List#1ODT0元素0元素1元素2元素3元素4元素5元素6ODT1.ODTnDAQ List#0ECU013PI D=00123456DAQ-DTO4256对应ODT#0的DAQ-DTO不同地址指向的存储区域DAQ List#1DAQ List#n.汽车车载网
13、络技术及应用DAQ模式通信步骤?取获取ECU内所实现的DAQ列表数目及ODT数目,DAQ列表数目由数据上传的周期决定,ODT列表数由每个周期下所需上传的数据个数及长度决定;?向相应的ODT元素中填入内容,即数据的存储地址和数据长度。 数据将根据其类型及上传周期,被写在不同DAQ列表的不同ODT元素中。 ?根据上传数据的上传周期,的针对不同的DAQ列表赋以事件通道和预分频值。 事件通道与上传周期是一一应的,个同一个DAQ列表中的不同ODT享有同一个事件通道和预分频值,个即同一个DAQ列表中的所有数据的上传周期相同。 通过预分频值可将数据的上传周期成倍扩大。 ?起动DAQ模式,进行数据采集。 汽车
14、车载网络技术及应用DAQ通信模式示例汽车车载网络技术及应用CCP命令代码及ERR代码CCP协议共规定了28条命令,中其中11条为必选命令,17条为可选命令。 由于CCP是开放协议,因此用户可只选其中一部分命令予以实现。 每条命令在CCP协议中均有自己独立的CMD代码,过从设备即通过CRO中的CMD代码来对收到的CCP命令进行解释并执行。 CRM-DTO的ERR代码指示了CRO命令的执行情况,的事件消息中的ERR代码表示ECU内部发生的错误类型。 汽车车载网络技术及应用汽车车载网络技术及应用汽车车载网络技术及应用以下是可选择命令,如果ECU不支持DAQGET_DAQ_SIZE SET_DAQ_P
15、TR WRITE_DAQ START_STOP到如果用到SELECT_CAL_PAGE命令,则需要要GET_ACTIVE_CAL_PAGE。 汽车车载网络技术及应用9.2.5ERR代码列表汽车车载网络技术及应用汽车车载网络技术及应用9.2.6预期运行性能汽车车载网络技术及应用9.3CCP命令?9.3.1连接命令(CONNECT)汽车车载网络技术及应用汽车车载网络技术及应用?例示例:主设备向从设备发送一个带有站点地址0x0200的的CONNECT CRO。 命令计数器序号目前是0x45,则CRO结构从设备返回一个包含认可(0x00)的DTO和CRO的的CTR结构汽车车载网络技术及应用9.3.2交换站点标识(EXCHANGE_ID)?CRO中的数据结构CCP的主从站点交换ID用于自动回话配置。 这也可能包括基于从站点返回ID(即插即用)的数据采集安装文件的自动分配。 以下是预计的返回信息(返回的DTO的内