发动机ECU匹配标定

发动机ECU匹配标定
发动机ECU匹配标定

发动机ECU匹配标定

基本概述

ECU内部的控制策略是固定的,但其包含的数千个自由参数是可调的。对不同的发动机,不同的车型,这些参数都需要进行调试优化,使得整车通过各种排放法规并满足各种驾驶性能指标。这一调试过程被称之为发动机匹配标定。匹配标定是一个复杂的系统工程。它包括台架试验、可控环境实验室试验、基于数学模型的标定计算、排放试验、功能验证试验等。ECU标定系统的主要类型有:1)ATI VISION CCP 标定系统;

2)ATI VISION M6标定系统;3)ETAS INCA CCP标定系统;

4)ETAS INCA ETK标定系统等。但无论那一种标定系统都离不开软

件和硬件的支持。目前,我公司提供的软件平台主要有:ATI VISION、

ETAS INCA、RA DiagRA MCD.这三种软件各有特色,但均包含项目管

理、标定、数据分析及标定对比等功能。同时,我公司也为广大客户

提供了丰富的硬件支持模块:Therme-Scan SMB/CAN温度采集模块、

Dual-Scan SMB/CAN温度-模拟信号混合采集模块、AD-Scan SMB/CAN

模拟信号数据采集模块、Thermo-Scan Minimcdule CAN温度采集微型模

块、AD-Scan Minimodul CAN 微型模拟信号数据采集工具、ATI EDAQ Modules数据采集模块、Lambda测量仪、Bosch宽域型氧传感器、IGTM-2000点火时间测试仪、SmartTach通用转速测试仪等。而且,基于我们丰富的软硬资源,我们还将根据客户的不同需求搭建起完整的ECU匹配标定平台。

发动机ECU快速开发平台-NO-Hooks技术

NO-Hooks OnTarget 是一项最新的美国专利技术。该产品是一款软件工具,主要用于ECU策略软件开发与标定。这一产品功能强大,价格低廉,无需任何附加硬件。用户可首先用SimulinkR建立新的控制策略开的与标定,EOBD(OBDⅡ)开发,标定及功能验证、对车辆设置某种特定工作状态或进行某种重复试验。该开发系统已被通用汽车公司动力总成部门、德国IA V等公司用于ECU控制的开发过程中。

主要特性:

1、利用SimulinkR能力。支持VISION标定功能

2、不需外硬件,可以方便地实现对控制策略软件的改进、优化与测试

3、自动生成的旁路模型可以实时在ECU的空闲资源上运行不需访问和修

改ECU源代码。只需ECU的标定文件

4、与VISION功能的完全兼容。主控制策略和旁路模型可同步标定

5、可以方便的在主控制策略和旁路模型进行切换对比

典型应用:

ECU开发与标定、故障诊断与校准、车辆运行状态设置以及重复性试验等。

发动机ECU快速开发平台-基于生产ECU控制策略开发技术

电控单元ECU的开发是一个极其复杂的过程。它包括多个步骤新任务;功能概念定义。算法开发。硬件设计。操作系统和驱动程序开发。硬件在线仿真测试,匹配标定及验证。ECU软件灌装等。这些众多步骤在多数情况下相互关联且反复循环。其大量的工作要求学科知识、经验和技能。这就给许多项目产品的开发带来很多困难和不便,美国Moto Tron公司开发的Motosolusion对从ECU产品开发到生产提供了一套完整的解决方案及平台。

MotoHawk—基于ECU的快速开发平台

MotoHawk是一套基于生产ECU的快速开发平台。从控制开发、测试到验证,该平台为研发人员提供了一套完整的解决方案,整个建设过程是以ContronlCore 软件为基础。通过Simulink/stateflow 来完成。与dspace系统或其它平台不同的是。MotoHawk利用生产ECU为硬件平台。从而大大缩短了从开发到生产的周期,而且成本较低。

Moto Tune-ECU标定工具

与ETAS或ATI标定系统一样,MotoTune 标定工具能够实现各种典型的标定功能。工程师可以用它来完成日常的标定工作,而且其界面直观度好,工程师可以做容易地获得ECU中RAM和ROM内的每个相关参数。并对其进行分析、调节或修改。

主要特性:

1、所有的标定参数和测试信号均可以工程单位显示

2、能同时连接多个ECU

3、每个ECU可以连接多个应用程序

4、完善的在线帮助系统

5、用户可自定义快捷键

6、界面友好、操作容易、简单

MotoFlash-ECU软件灌装生产线

ECU软件批量灌装要求整个过程准确无误,且具有条码扫描、输入和测试等功能。MotoFlash为ECU软件灌装提供了一套完整的生产线

主要特性:

1、通过扫描两个条码启动软件灌装过程

2、程序下载完成后,产品标识可自动打印

3、完善的在线帮助系统

4、用户自定义工具栏

5、界面友好,操作容易、简单

MotoUpdate-售后ECU软件在灌装工具

车辆售出后,有可能需要在修车行或其它现场对其ECU进行控制软件在灌装。MotoUpdate为这一工作提供了有效的解决方案。它由一套MotoUpdate灌装软件和通讯接口组成。

主要特性:

1、软件操作界面简单

2、容易对ECU标定进行升级

3、现场升级ECU软件。省时省费

发动机ECU快速开发平台—柴油机高压共轨

(Flexible Injection Ignition for Rapid Engineering)高压共轨电控系统快速开发平台德国IA V公司的喷油与点火控制单元是进行柴油发动机研发的理想工具。当前大多数标准的控制单元缺少对发动机动机喷油或点火的灵活控制。在一个燃烧周期内,不能对多缸同时产生足够的喷油次数或点火次数。IA V公司的FI克服了这一困难,给用户提供了一个对发动机喷油或点火可进行灵活调节。FI通过精确的控制电流和电压实现喷油或点火正时,从而使发动机的研究开发人员方便的实现自己的设计和算法开发。这是一个进行发动机系统和控制模型快速开发的有力工具。FI在改善排放、燃油经济性、整车性能和NVH等方面具有出色的作

用,同时,FI在替代燃料研究中也大有用途。另外,FI也可以应用在一个没有ECU发动机的启动上,允许发动机动机的各项开发工作同步进行,从调节省时间和费用。FI功能的灵活性不但表现在对驱动的可配置上,而且它可以应用于已工作的发动机上,通过CAN总线对喷油或火花塞点火进行旁路控制。FI可与ECU dspace MicroAutoBox或PC/104,通过CAN总线建成一个控制策略快速开发平台,进行全控或局部旁路控制开发。FI另一个常用的功能是在实验台上进行部件或整机试验,这种试验是在微机控制下的开环操作。这种灵活性使得它在装配生产线上用于对喷油器的测试。

主要特性:

1、适用于喷油发动机(多至12缸)

2、适用于火花塞式发动机(多至8缸,汽油发动机,LPG/ONG发动机)

3、适用于电磁式或压电式喷油器

4、在每缸的一个燃烧周期内可以完成多达5次喷油(柴油发动机)

5、每个燃烧周期内可以完成多达3次点火(汽油发动机)

6、8路模拟信号输入,12路脉宽调制信号输出

7、每个通道允许的最大电流为30A,最大电压为150V

8、输出功效模块的短路保护和高温保护。故障自诊断及安全性的自动校验

9、Motorola MPC555 +DSP芯片用于输入输出控制和同外界通信

典型应用:

1、发动机排放、燃油经济性、动力性能研究

2、新发动机控制系统的快速新建

3、匹配标定

4、NVH优化

5、评估测试非传统性喷油或点火序列

CAN总哉控制信号:

1、起始喷油时间(每缸多至5次喷射)和喷油时间长度

2、起动开启电流和保持电流。电流控制PWM频率

3、阀门关闭时输入电压

EOBD开发测试软件

DiagRA PC Version-EOBD标定测试软件(PC版)

DiagRA-PC是一个EOBD标定测试软件。工程师可以通过一软件读出

ECU中的各种故障诊断数据,使用该软件的前提是具备ECU标定文件,该软件有三个基本功能:

1)OEM特定的维修故障诊断;2)OBDII/EOBD故障诊断;

3)真正开发功能。

支持Windows 95/98/2000/xp/NT.

DiagRA CE Version-EOBD标定测试软件(掌上电脑版)

DiagRA- CE是一个EOBD标定测试软件。工程师可以通过这一软从基于Windows CE的操作系统环境下读出ECU中的各种故障诊断数据。使用该软件前提是具备ECU标定文件,该软件有两个基本功能;OEM特定的维修故障诊断;OBDII/EOBD故障诊断。

UniCAN Professional主要用于故障诊断、错误检测和CAN总线数据采集。

主要特性:

1、UN CAN记录仪用于诊断和分析采集型的数据

2、2G容量的可攥写内存,能与手提电脑进行数据交换

3、可安滤波器和触发条件,经久耐用。结构紧凑,数据安全性高

4、使用温度范围:-40°C-+50°C

5、通过UniCAN Manager操作简单方便。并可与Vector数据库互联

6、可用ETAS或Vector等软件工具进行数据分析

ECU售后故障诊断工具

现代车辆的内置ECU及其它车内电子越来越复杂。如出现故障,人工机械式的维修已无法解决问题。而且,发动机及变速箱ECU内装有先进的故障自诊断系统。如何读取各种错误代码是车辆维修中的一个重要的问题。我公司针对各种电控系统开发出了一套完整的故障诊断工具。本产品是一款软件工具,它可以在PC、PDA或其它掌上电脑之上运行,主要支持ECU电控系统。

主要特点:

1、支持KWP2000、J1850及ISO协议

2、实时监测记录发动机各种参数

3、显示错误代码,清除错误码代码

4、对Injectors、Coils等进行主动测试实验

5、重新设置MIL指示灯

6、标定怠速及喷油参数

7、设置节气门传感器

8、显示系统代码

9、支持多国语言(英制或工制单位)

发动机ECU快速开发平台-基于生产ECU控制策略开发技术

电控单元ECU的开发是一个极其复杂的过程。它包括多个步骤新任务;功能概念定义。算法开发。硬件设计。操作系统和驱动程序开发。硬件在线仿真测试,匹配标定及验证。ECU软件灌装等。这些众多步骤在多数情况下相互关联且反复循环。其大量的工作要求学科知识、经验和技能。这就给许多项目产品的开发带来很多困难和不便,美国Moto Tron公司开发的Motosolusion对从ECU产品开发到生产提供了一套完整的解决方案及平台。

MotoHawk—基于ECU的快速开发平台

MotoHawk是一套基于生产ECU的快速开发平台。从控制开发、测试到验证,该平台为研发人员提供了一套完整的解决方案,整个建设过程是以ContronlCore 软件为基础。通过Simulink/stateflow 来完成。与dspace系统或其它平台不同的是。MotoHawk利用生产ECU为硬件平台。从而大大缩短了从开发到生产的周期,而且成本较低。

Moto Tune-ECU标定工具

与ETAS或ATI标定系统一样,MotoTune 标定工具能够实现各种典型的标定功能。工程师可以用它来完成日常的标定工作,而且其界面直观度好,工程师可以做容易地获得ECU中RAM和ROM内的每个相关参数。并对其进行分析、调节或修改。

主要特性:

1、所有的标定参数和测试信号均可以工程单位显示

2、能同时连接多个ECU

3、每个ECU可以连接多个应用程序

4、完善的在线帮助系统

5、用户可自定义快捷键

6、界面友好、操作容易、简单

MotoFlash-ECU软件灌装生产线

ECU软件批量灌装要求整个过程准确无误,且具有条码扫描、输入和测试等功能。MotoFlash为ECU软件灌装提供了一套完整的生产线

主要特性:

1、通过扫描两个条码启动软件灌装过程

2、程序下载完成后,产品标识可自动打印

3、完善的在线帮助系统

4、用户自定义工具栏

5、界面友好,操作容易、简单

MotoUpdate-售后ECU软件在灌装工具

车辆售出后,有可能需要在修车行或其它现场对其ECU进行控制软件在灌装。MotoUpdate为这一工作提供了有效的解决方案。它由一套MotoUpdate灌装软件和通讯接口组成。

主要特性:

1、软件操作界面简单

2、容易对ECU标定进行升级

3、现场升级ECU软件。省时省费

VISION软件在汽车发动机标定中的应用

一、VISION软件

VISION是一个基于PC机的汽车电子控制单元(ECU)的开发、标定和测量系统的软件。VISION软件与ECU芯片之间的界面是通过LAPcan II和USBcan II 等物理连接、VISION网络集线器和内存仿真器建立。VISION软件与ECU的串行通讯和测量协议由带XCP协议的CAN总线、CAN标定协议或带KWP 2000协议的K-Line提供。VISION软件支持同时对多个ECU或外部模拟信号的数据采集模块的标定和记录测量数据。

二、VISION发动机标定系统

(一)发动机管理系统

发动机管理系统(EMS)是在发动机电子点火和电控汽油喷射系统的基础上发展起来的,集电子控制喷射、排放控制、电子点火、起动、防盗、诊断等功能于一体的集成电路系统。电子控制技术的飞速发展及发动机排放法规的日趋严格,和对汽车发动机性能要求的不断提高促进了EMS的发展,EMS能实现对发动机各系统的精确控制和灵活控制,是改善发动机各项性能指标和排放的主要手段。发动机管理系统都是由微处理器、各种传感器、执行器组成,通过传感器检测各种工作状态和参数,然后由微处理器经过计算、分析、判断后发出指令给各执行器完成各种动作,使发动机在各种工作状况下都能以最佳状态工作。

(二)发动机的标定试验

发动机的标定试验是指在汽车不同的工作状态和气候环境下,对发动机管理系统的参数进行不断调试,找到发动机最佳工作状态下一组参数的测试技术。它通常分为室内台架实验和室外道路实验,室外道路实验要求在汽车试车场进行,另外还要进行“高寒、高温和高海拔”的“3高”试验。发动机标定试验的主要工具是发动机标定软件和发动机标定设备。

通常同一型号的发动机ECU内部的控制算法软件是固定的,但其包含的数千个自由参数是可调的,对于不同的车型这些参数都需要通过发动机匹配标定进行调试优化,使得整车通过各种排放与驾驶性能指标。

(三)VISION标定系统的硬件结构

在VISION标定系统中,通过测量硬件设备连接发动机来测量空气流量、空气温度和节气门位置等数据,然后集线器负贵测量硬件设备积计算机之间的通讯(见图1)。

(四)VISION标定软件系统

完成硬件连接后,在VISION标定软件中,需要通过设备管理器来设置所有集线器和测量硬件设备的工作参数。计算机通过COM、PCMCIA和USB接口与集线器连接,然后集线器再连接模拟测量模块ADScan、压力测量模块BaroScan、通用测量模块DualScan和温度测量模块ThermoScan。

典型的VISION标定软件的工作界面(或称为屏幕文件)见图2,其中有二维

和三维的发动机标定数据,数据可以通过表格的方式编辑,也可以通过图形的方式显示和修改,并且可以在计算机屏幕上用虚拟仪表方式形象地反映标定变量的动态变化。

三、VISION软件在汽车发动机标定中的应用

(一)发动机怠速设置的标定

图3中,横坐标表示发动机温度变量(℃),纵坐标表示发动机怠速变量( r/min ),可以看到在0℃以上时,发动机怠速设置为800r/min。在0℃以下时,由于发动机启动比较困难,所以发动机怠速随着温度的降低而逐步升高,直到-40℃时,发动机怠速设置为1100r/min。

(二)燃油喷射系统的标定

燃油喷射系统的主要控制量是发动机各缸的喷油量和喷油时间,在VISION标定软件中,设计了一个中间变量驾驶员请求喷油量,它是变量加速踏板位置(范围:0~100%)和发动机转速的控制函数。其控制MAP图见图40其中X轴:加速踏板位置(%),Y轴:发动机转速(r/min),Z轴:驾驶员请求喷油量(mg/stroke)。

发动机各缸的喷油量是通过改变喷油器电磁阀的位移来控制的,它是变量加速踏板位置和发动机转速的控制函数,其控制MAP图见图5。其中X轴:驾驶员请求喷油量(mg/stroke),Y轴:发动机转速(r/min),Z轴:喷油器电磁阀的位移(mm)。

喷油时间由曲轴转角控制,它是变量加速踏板位置和发动机转速的控制函数,其控制MAP图见图6。其中X轴:驾驶员请求喷油量(mg/stroke),Y轴:发动机转速(r/min),Z轴:曲轴转角(°)。

四、结语

VISION是目前国内外流行的汽车ECU标定软件,它的系统功能和使用方法有很强的代表性。通过分析VISION软件的开发技术,可以了解当前汽车ECU 的研究和开发的进展情况,因此本文对国内汽车ECU的开发有一定的参考作用。

基于CCP协议利用CANape进行电控单元标定

摘要:采用基于CAN总线的匹配标定协议,对汽车控制器局域网络中的电子控制单元进行匹配标定。分析了CCP协议用于标定的工作机理,讨论了利用CANape 进行基于CCP标定的实现方法,阐述了如何生成CANape与控制器底层程序的软件接口及具体标定流程。实际应用结果表明,这种方法可以快速有效地实现对汽车网络中各控制器的匹配标定。关键词:汽车电控单元CAN总线CCP协议标定CANape

目前基于CAN(Controller Area Network)总线的分布式系统在汽车电子领域得到广泛应用,电子控制单元的标定已成为汽车电子控制装置开发的一个重要环节。CCP(CAN Calibration Protocol)是一种基于CAN总线的ECU(Electronic Control Unit)标定协议[1],已经在许多欧美汽车厂商得到应用,采用CCP协议可以快速而有效地实现对汽车电控单元的标定。

然而基于CCP协议的标定,需要在ECU内部实现支持CCP协议的驱动程序(CCP driver)。目前大多数应用都采用Vector提供的free CCP driver[2]。考虑到ECU底层程序与CAN驱动程序的实现各不相同,将CCP驱动程序结合到ECU中[3]并不是一件一蹴而就的事,这需要对CCP协议本身、标定工具及标定工具与ECU之间的通信有详细和深入的了解。在整个标定系统的开发过程中,大量时间被耗费在前期CCP驱动程序与ECU结合上。本文在简单介绍CCP协议的基础上,提供了一个通用的ECU与CCP驱动程序结合的实例,以帮助缩短整个标定开发周期。

CANape[4]是一款ECU标定和测试工具。与CCP协议相结合,不仅能完成对ECU的标定,同时还能在ECU运行期间直接访问内存并进行操作。这使得CANape不仅是一款功能强大的标定工具,也是一款电控单元开发的得力助手。然而在使用方面,CANape的前期配置比较繁琐,目前国内的相关资料较少。本文将介绍CANape,并着眼于如何基于CCP协议使用CANape完成ECU的标定。

1 CCP协议及工作原理

CCP协议是ASAP(Arbeitskreis zur Standardisierung von Applikationssystemen)标志的有机组成部分。ASAP作为一个应用系统标准化工作小组,其目的在于提供通用软、硬件接口标准,以解决由于不同制造商提供的控制器存在的接口不匹配

问题。

1.1 CCP通信方式

基于CCP协议的ECU标定采用主-从通信方式,如图1。主设备通过CAN总线与多个从设备相连,其中主设备是测量标定系统MCS(Measurement Calibration System),从设备是需要标定的ECU,在汽车电子中即为车载控制器。

图1 CCP通信方式

根据CCP协议,主设备首先与其中一个从设备建立逻辑链接,然后通过主设备向从设备发送命令来起始两者间的数据通信。当主设备要访问另一个从设备时,首先断开与当前从设备的逻辑连接,与下一个从设备建立新的逻辑连接后再开始通信。

1.2 CCP协议的工作模式

CCP定义了两种工作模式olling(查询)模式及DAQ(Data Acquisition Command)模式。查询模式下,主设备与从设备间的每一次通信都由主设备发送命令来起始,从设备收到主设备的命令后,执行相应的操作并反馈一帧报文。这种工作模式由于需要主机与从机之间进行“一问一答”的信息交互,工作效率不高,但实现简单,而且占用ECU内存资源较小。DAQ模式使从设备可以脱离主设备的命令控制按一定周期自动向主设备上传数据。DAQ模式下,主设备首先发送一条请求DAQ的命令,从设备收到后,按命令中的参数自行配置并组织需要上传的数据,然后按一定周期自主向主设备上传数据。这种模式由于不需要主机通过命令逐步控制,工作效率高,但实现较复杂,如果需要上传的数据量很大,会占用大量ECU内存空间。

1.3 CCP报文帧结构

基于CCP协议的标定只占用两帧CAN报文,分别是命令接收对象CRO(Command Receive Object)和数据传输对象DTO(Data Transmission Object),如图2所示。CRO由主设备发给从设备,DTO是从设备反馈的报文。两者分别通过一个自己的ID标识符进行标识(CRO_ID与DTO_ID)。

图2 CCP协议主、从设备通信

CRO与DTO的ID标识符由通信协议自行定义,CCP协议只对CRO及DTO 的数据场做了详细定义。按照CCP协议,CRO数据场的第1个字节为命令代码CMD(Command Code),CCP协议共规定了28条命令[1]。从设备通过CMD代码判断主设备请求的是哪条命令。数据场的第2个字节是命令计数器CTR(Command Counter)。剩余6个字节均为命令参数,每条命令有各自对应的命令参数。

从设备反馈的报文称为DTO。按CCP协议,DTO又细分为三类:

?命令返回消息CRM(Command Return Message):由从设备发送,针对CRO的反馈报文。

?事件消息(Event Message):当从设备检测到内部发生错误机制时,由从设备自行向主设备发送,报告其当前的运行状态,并请求主设备暂停当前工作进程以处理发生的错误。

?DAQ-DTO(Data Acquisition-DTO):用在DAQ模式中,由从设备组织,定期向主设备发送。

DTO报文的第1个字节PID(Packet ID)定义了DTO的类型,255代表CRM, 254代表事件消息。第2个字节为命令返回/错误代码ERR(Command Return-/Error Code)。对于CRM,主设备由该字节获知命令的执行情况;对于事件消息,主设备由该位获知从设备内部发生了哪种错误。第3字节CTR是命令计数器,该位数值与其对应的CRO的CTR值相对应。剩余5个字节是数据场,存放主设备请求的数据或信息。

2 基于CCP协议的接口程序实现

基于CCP协议进行标定,需要MCS与ECU的应用程序都能够支持CCP协议,这部分应用程序称为CCP driver。本文采用Vector提供的free CCP driver[2]。由于CCP协议基于CAN总线,因此CCP driver与ECU的结合主要分为与CAN driver及与其他应用程序两方面。

CCP driver与CAN driver的结合如图3,主要分为以下两方面:

图3 CCP标定程序接口

?发送端TO通过CAN driver的发送子函数以CAN报文的格式上传给MCS。

?接收端:主设备发送的命令以CAN报文的格式首先进入CAN driver的接收子函数,由其判断为CRO后,进一步交给命令处理器处理。

命令处理器作为CCP driver的一个主要组成部分,负责将接收到的CRO,通过其CRM代码进行命令解释,执行相应操作,组织反馈数据并调用CAN发送子函数。DAQ处理器支持DAQ工作模式,当命令处理器判断收到的命令为DAQ请求后,进一步将数据传给DAQ处理器,由DAQ处理器组织数据并直接调用CAN 发送子函数,以DAQ-DTO的形式定期向主设备上传。

基于CCP协议的基本CAN通信流程如图4所示。ECU接收到报文后,转入CAN接收子函数,在常规接收流程后,对报文的ID标识符进行判断,如为CRO_ID,则将CCP标志位(Ccp_indicator)置位。由于采用中断方式接收报文,为了避免占用过多中断时间而影响其他函数或中断级别较低的程序运行,在对ID标识符进行判断后,并不直接在函数中调用CCP driver的命令处理器。命令处理器的调用会在主函数中进行。

图4 接口程序基本流程图

主函数通过判断标志位的状态,调用CCP driver的ccpCommand()子函数。该函数是命令处理器的主要组成部分,也是命令处理器与CAN driver的接口函数,它负责解释并执行收到的CRO命令,调用CCP driver中的其他函数,进行数据处理并组织需要反馈的数据。

ccpCommand()通过调用CAN driver中的CCP发送子函数ccpSend()发送一帧DTO。ccpSend()须在CAN driver中实现,由CCP driver调用。按实际情况,将CAN发送子函数直接以ccpSend()的形式实现,或在保留原有发送子函数的基础上添加一个ccpSend()子函数,在其中调用CAN发送子函数,以完成DTO的发送。

CCP协议为确保主设备与ECU之间正常通信,每次发送后,程序必须通过调用CCP driver中的ccpSendCallback()子函数检查刚才的DTO是否已经发送,否则不能发送下一帧报文。针对不同的CAN driver实现,该函数调用的位置不同。最后主函数将CCP标志位清空,等待下一条CRO命令。

一个完整的CCP driver 接口还包括与ECU其他应用程序的接口。每次单片机初始化后,主函数调用一次CCP driver的CCP初始化子函数ccpInit(),将上次标

定残留在ECU内存中的数据清空,为下次标定与测量做准备。

CCP协议共定义了28条命令,每条命令在CCP driver中都对应一组相应的子函数,代表不同的功能,如EEPROM标定、DAQ工作模式等。用户可根据实际需要,选择实现其中部分或全部功能。每增加一个新的功能,必须在底层程序中添加开放该项功能的程序接口[3]。如对EEPROM标定,首先ECU应用程序中应包含EEPROM模块子函数,同时还需实现命令处理器与EEPROM模块之间的调用接口。

3 利用CANape实现基于CCP的标定

CANape[4]是德国Vector公司出品的一款基于ASAP标准的ECU测试和标定工具。它通过一个控制器硬件接口与ECU相连,两者之间常用的物理连接是基于CCP协议的CAN总线。只有控制器的底层程序中有支持CCP协议的程序接口, CANape才能与控制器通信。

CANape提供了多种功能:在线数据评估、离线评估、数据管理、FLASH编程、参数标定及ASAP2数据编辑器等。此外,测试过程中由CAN总线上传的数据还可以通过CANape在计算机显示和保存,以进行离线标定和数据评估。

3.1 ASAP2控制器描述文件及ASAP2编辑器

CANape与控制器间的通信需要一个描述文件支持,这个文件称为ASAP2控制器描述文件[4]。CANape对控制器的参数标定和数据测量都是基于这个文件,该文件记录了控制器中各参数的详细信息,如标定参数和测量变量在控制器中的存储地址、存储结构、数据类型和转换公式等。在CANape中,每个标定参数和测量数据都会有一个变量名,如发动机温度、冷却水温度。当CANape需要访问某个变量,就在ASAP2描述文件中根据变量名,找到该变量在控制器中的存储地址、数据长度等信息,然后进行操作,如图5。

图5 ASAP2控制器描述文件

为了方便用户对ASAP2文件进行维护和修改,CANape集成了一个ASAP2数据库编辑器,用以生成和修改ASAP2控制器描述文件。所有的信息都能通过对话框的形式进行设置和修改。该数据库编辑器还能工作在独立模式下,以生成一个ASAP2格式的控制器描述文件。

当ECU底层程序修改后,一些标定参数和测量数据的内存地址可能发生变动,CANape虽然仍能进行标定,但修改的已不是原来需要标定的参数,而是程序变动后原先地址下当前存放的某个新的未知数据。为了简化手工修改地址的繁琐,防止因为随意修改某个数据而破坏程序的正常运行,CANape支持通过linker map 文件自动更新ASAP2文件里的信息。Map文件是ECU底层程序在编译时由编译器生成的一种映射文件,通过Map文件可以自动更新ASAP2文件。

3.2 CANape使用配置

每个需要标定的ECU都要在CANape中进行配置。

CANape共定义了28条命令,用以实现不同的功能,在配置页面里均有复选框与其对应。控制器的配置必须与CCP Driver在ECU底层程序的具体实现相匹配,只有对某个功能的程序接口已经开放,才能在CANape中选择使用该项功能

[2][5]。

3.3 CANape中的参数标定

在CANape中,需要标定的变量称为标定参数,CANape将标定定义为修改驻扎在ECU内存中的变量的内容。CANape支持多种标定方法。这里标定方法指如何对标定参数所在的内存区域进行初始化、数据改写及保存。根据标定参数所在不同地址空间(ROM、FLASH或EEPROM),CANape规定了不同的标定方法。

当标定参数需要存放在FLASH或ROM中时,在ECU上电初始化后,程序首先将标定参数的初始值复制到RAM中,在CANape中该段用来存放标定参数的RAM称为Calibration RAM。标定过程中,CANape修改Calibration RAM中的参数值。标定全部结束后,再将该段RAM中的内容复制回FLASH或ROM中。

当标定参数存放在EEPROM中,有两种标定方法。第一种与上述方法相同,首先将标定参数复制到RAM中,标定结束后再将RAM中的数据覆盖到EEPROM。此外,也可对EEPROM中的参数直接进行改写,实现这种方法需要对EEPROM进行频繁擦写操作,但不占用额外的RAM空间。

由于汽车电子网络系统已开始得到广泛的使用,基于网络连接的电子控制单元的匹配标定和传统的匹配标定方法已有了很大的不同,特别是基于CAN总线的匹配标定技术,目前已成为研究和应用的重点。

采用CANape进行基于CCP的匹配标定,实现了标定工具和内容的统一。根

据这种方法能够快速有效地进行汽车电子控制单元的匹配标定,在实际开发应用中取得了良好的效果。

摘要:CCP协议是一种基于CAN总线的匹配标定协议。该协议具有通信可靠、传输速度快、通用性好等特点。本文讨论了一种基于CCP协议的汽车ECU 标定系统,并详细介绍了该系统的工作原理、数据采集机制以及实现方式。

关键词:CCP协议; CAN总线;标定系统

前言

随着汽车电子技术的发展,电子控制单元(ECU)的标定已成为汽车电子控制装置开发的一个重要环节。大多数ECU都需要经过匹配标定的过程,从而确定其运行参数和控制参数。目前国内还没有成熟的基于CCP的ECU标定系统,已有的一些系统主要是采用Vector提供的free CCP Driver,或者基于MATLAB的相关工具包,在此基础上作自己的应用软件,并没有独立的CCP 驱动;国外的产品功能强大,但价格昂贵。因此,研究、掌握CCP的核心技术,开发针对不同用户需求提供不同的定制功能,并能适应PCI、USB等不同主机接口的ECU标定软件就具有非常重要的意义。

CCP协议简介

CCP协议的通信方式

基于CCP协议的ECU标定采用主-从通信方式,主设备通过CAN总线与多个从设备相连,如图1所示。其中主设备测量标定系统MCS(Measurement Calibration System),从设备是需要标定的ECU。根据CCP协议,主设备首先与其中一个从设备建立逻辑连接。建立逻辑连接后,主、从机之间所有的数据传递均由主机控制,从机执行主机命令后返回包含命令响应值或错误代码等信息的报文。任何一个从机都可以定时地根据由主机通过控制命令所设置的列表来传递内部的数据。所以说数据的传递是由主机初始化,由从机来执行,并且是由固定的循环采样频率或事件触发的。

图1 CCP通信结构图

CCP协议定义了两种工作模式:一种是Polling(查询)模式,另一种是DAQ(数据采集)模式。在本文所设计的标定系统中,根据实际需求情况,采用了DAQ模式。CCP协议的通信数据对象

CCP协议只采用了两个CAN报文对象,且每个对象根据其数据流向,都有一个唯一的ID标识符进行标识:

(1)命令接收对象(主机一从机):简称CRO。CRO用于传递指令代码和内部功能码或主、从机之间交换的存储区数据。

(2)数据传输对象(从机一主机):简称DTO。DTO指由从设备反馈的报文。

根据报文PID的不同,DTO又可以分为三种形式:

?命令返回消息CRM(PID=255) : 由从设备发送, 针对CRO 的反馈报文。

?事件消息(PID=254): 当从设备检测到内部发生错误机制时, 由从设备自行向主设备发送, 报告其当前的运行状态, 并请求主设备暂停当前工作进程以处理发生的错误。

?DAQ- DTO(0≤PID≤254): 用在DAQ 模式中, 由从设备组织, 定期向主设备发送。

图2 标定系统工作原理图

基于CCP的ECU

标定系统实现

标定系统工作原理

基于CCP的ECU标定系统工作原理如图2所示,对部分控制参数进行调整后,通过一个USB转CAN的驱动模块就可以将数据送到发动机ECU当中,ECU收到控制信号后,通过内部处理又会由驱动模块返回ECU内部重要的数据到平台上显示,标定软件与发动机ECU的通信符合CCP标定协议。

CCP通信部分调用CCP Driver,为标定软件实现与ECU的通信,包括将用户指

定的标定参数下载到ECU、接收ECU的测量数据供数据显示子窗口使用。

图3 数据描述表

标定系统的数据采集机制

本文采用的是DAQ模式,从而可以实现从设备按照指定的周期将需要监视的数据上传。

DAQ传送的数据由一系列表来组织,这些表被称为ODT(Object Descriptor Tables)。每个ODT表含7 个元素,可描述7 个ECU 内部参数的相对地址及数据长度等属性。这些被ODT 描述的参数,就是需要从设备用DAQ - DTO 帧周期发送给主设备的被监视数据;而这些属性被称为“参数描述”,它们可帮助从设备DAQ 处理代码确定该参数的当前值,如图3所示。ODT 中描述的参数,及各参数的“参数描述”由主设备通过CRO 命令写入。当从设备的DAQ机制被启动时,从设备按主设备要求的周期,将每个ODT 表描述的ECU 参数当前值顺次放入相应的DAQ-DTO 帧中,并发送给主设备。

图4 标定软件运行示意图

标定系统DAQ模式的软件实现

标定系统的软件设计主要分为两个部分:CAN Drvier和CCP Driver。本方案的ECU采用MC9S12Dg128,因此可以直接应用芯片CAN模块提供的接口发送CAN 数据。CCP Driver是标定系统的核心部分,它主要通过调用CAN Driver实现与上位机标定软件的通信,从而进行对ECU的在线标定。

标定系统的实现过程如下:

1.上层标定软件部分定义List的数目、每个List中的ODT数目、每个ODT中的元素数目。

2. ECU按照上层的定义,确定自己的数据结构。即上下层都定义一个三维的数

组(List,ODT,Element),用来存放映射关系。

3.上层通过协议命令初始化ODT。首先,上层发送GET_DAQ_SIZE命令(参数为List号),得到指定的List大小(number of ODT in this list),并得到该List中DTO的第一个PID号。然后,上层发送SET_DAQ_PTR命令(参数为List号、ODT号、ODT中的元素号),指定需要初始化的参数单元。最后,上层根据SET_DAQ_PTR命令设置的具体元素,发送WRITE_DAQ命令(参数为DAQ元素的byte大小,DAQ元素的地址),反复通过SET_PTR和WRITE_DAQ两条命令,初始化完一个具体的ODT表,然后初始化完一个具体的List表,最后初始化完所有的List表格。至此,初始化ODT工作结束。

4.开始和停止DAQ数据的传输。上层发送START_STOP命令,指定的ODT数据开始上传。ODT将其中的每个元素复制到其对应的DTO(8个字节,1个PID 号,7个存放数据)中,然后以Data Acquisition Message的形式返回给上层的标定系统。DAQ模式到此为止。

结语

ECU标定软件运行情况如图4所示,经过多次不断的调试,此标定系统运行稳定可靠,能够对汽车系统中的ECU进行在线标定, 并可以针对不同用户需求提供不同的定制功能。

这个采用CCP协议的汽车发动机标定系统具有符合国际通用标准、通用性好、对不同硬件与不同需求适应性强的特点,因此有很好的开发应用前景。■

参考文献

1.陶恒燕,田江学,屈卫东. 基于MC68736的CCP软件程序设计. 测控技术,2005,3:49-52

2.李雅博,张俊智. 基于CCP协议的HEV用ECU标定系统设计. 汽车工程,2004,26-4

相关主题
相关文档
最新文档