这篇文章是我学习AVL 的的ISAC文档的整理总结
我们用的现在是ISAC 414系统,中间的0是指内燃机台架,1是指电机台架。最后的0是指只有发动机或电机,1是指加变速器,2是指再加上差速器
但是文章中是没有写更多最后面的3和4是什么意思,我暂且认为是3电机台架和4驱台架吧
先不讨论
在路上有各式各样的车,但是主要的特性如下所示
车辆性能参数 |
---|
最高车速 |
最大扭矩 |
功率 |
空气阻力系数 |
加速性能 |
最高转速 |
车重 |
不同驾驶风格的驾驶员有不同的驾驶方式,主要如下所示
驾驶员行为 |
---|
驾驶速度和周围环境感知 |
开车的省油意识 |
换挡的平顺程度和速度 |
加速度和减速度(非刻意的剧烈驾驶) |
因此车辆的运动形式和下面两个因素强相关
因素 | 方式 |
---|---|
车辆 | 车辆的机械结构,取决于车辆是如何设计的,这些因素在驾驶的时候是不能改变的 |
驾驶员 | 驾驶员的驾驶表现,驾驶员的行为还受限于交通法规,但是也不是标准的, |
通常车辆的运动方式还收其他因素影响,比如坡度,空气系数,路面状况等,这些我们后面讨论
下面的图表展示了在同样的交通状况的情况下的两种不同驾驶风格和其对应的车辆的表现,这两种风格是运动风格和柔和风格,我们在本章中将使用“运动风格”和“柔和风格”来代表这两种驾驶风格
驾驶风格 | 描述 |
---|---|
运动风格 | 这种风格通常发生在大功率,非常Sport的车上,而且驾驶员的驾驶方式是很激烈的:烧胎,高速,剧烈的换挡等 |
柔和风格 | 这种风格通常发生在舒适的,小功率的车上,而且驾驶员开车的方式很温柔:慢慢的额加速减速,柔和的换挡等 |
对发动机,变速器和传动系进行仿真对主机厂进行产品开发提供了的非常大的帮助
仿真点 | 描述 |
---|---|
在台架上进行发动机测试 | 发动机在日常工作中承受各种不同的应力,因此,提前的发现发动机的应力变化是很有必要的,还在开发原型的时候,发动机台架是理想的开发环境,ISAC 400 就是为了这个目的产品 |
传统的发动机台架负载测试主要包括(在车上测试):
配备先进的驾驶员和道路模拟功能的测试台架
配备先进驾驶员和道路模拟功能且配备传动系的台架
ISAC产品 | 描述 |
---|---|
ISAC 400 | 发动机台架; 带一个发动机的高动态的测功机; 仿真点:曲轴输出 |
ISAC 401 | 传动系台架; 带一个发动机,变速器,离合器和一个高性能测功机; 仿真点:变速器输出轴 |
ISAC 402 | 驱动轴台架;带一个发动机,离合器,变速器,差速器和两个高性能测功机;仿真点:轮子 |
ISAC 403 | 有四个轮子的驱动轴台架;带发动机,离合器,变速器,传动轴,差速器,分动箱和四个高性能测功机;仿真点:轮子 |
标准功能 | 可选项 |
---|---|
动态驾驶表现 | 台架离合器 |
道路阻力和道路坡度 | 自动传动系模拟 |
监控 | CVT模拟 |
车辆和驾驶员模拟 | 台架仿真 |
发动机启动模拟 | |
发动机点火 | |
发动机熄火 | |
手动变速器仿真 | |
控制模式仿真 |
标准功能 | 可选项 |
---|---|
动态驾驶表现 | |
道路阻力和道路坡度 | |
监控 | |
车辆和驾驶员模拟 | |
发动机启动模拟 | |
发动机点火 | |
发动机熄火 | |
手动变速器仿真 | |
控制模式仿真 |
标准功能 | 可选项 |
---|---|
动态驾驶表现 | 车轮打滑模拟 |
道路阻力和道路坡度 | |
监控 | |
车辆和驾驶员模拟 | |
发动机启动模拟 | |
发动机点火 | |
发动机熄火 | |
控制模式模拟 | |
传动系和离合控制 | |
熄火制动控制 | |
转向模拟 |
标准功能 | 可选项 |
---|---|
动态驾驶表现 | 车轮打滑模拟 |
道路阻力和道路坡度 | |
监控 | |
车辆和驾驶员模拟 | |
发动机启动模拟 | |
发动机点火 | |
发动机熄火 | |
控制模式模拟 | |
传动系和离合控制 | |
熄火制动控制 | |
转向模拟 |
简称 | 描述 |
---|---|
SYS | System Parameters 系统参数 |
BSQ | Block Sequence Editor 编辑快编辑器 |
CORRECTT | Dyno Torque Correction Controller 测功机扭矩修正控制器 |
EMCON | Engine Monitoring and Control 发动机监控和控制 |
ENPAC | Engine Progressive Adaptive Controlle 发动机渐进自适应控制 |
DRV | Driver Parameters 驾驶员蚕食 |
F-FEM | Fast Front End Module 快速终端模块 |
FTP | Federal Test Procedure 联合测试程序 |
VEH | Vehicle- and Driveline Parameters 车辆驾驶链参数 |
ISAC | Inertia Simulation And Control 惯性模拟和控制 |
PAM | Parameter Manager 参数管理器 |
POI | PUMA Operator Interface PUMA接口 |
UUT | Unit Under Test Parameters UUT参数 |
SSQ | Step Sequence Editor 测试步骤编辑器 |
TST | Test Parameters 测试参数 |
VEE | Enhanced Vehicle Parameter Editor 增强型车辆参数编辑器 |
GSM | Gearshift Map Editor 换挡Map编辑器 |
GSV | Gearshift Map Editor/Vehicle Speed 基于车速的换挡Map编辑器 |
PICONT | Proportional Integral Controller 比例积分控制器 |
ISAC 4xy PMM/KIWI box还有车轮打滑模拟功能的PUMA
PAM(Parameter Manager)中有很多的加载表,加载表如下:
简称 | 描述 |
---|---|
ECT | Engine Description 发动机描述 |
EMP | Engine Map and Full Load Curves 发动机Map图和油耗曲线 |
MTS | Manual Transmission (simulated) 模拟的手动变速器 |
MTR | Manual Transmission (real) 真实的手动变速器 |
ATR | Automatic Transmission (real) 真实的自动变速器 |
UCV | UUT Curves UUT曲线 |
VEH | Vehicle and Driveline Parameters 车辆和驱动链参数 |
UCP | Engine Control Parameters 发动机控制参数 |
SCP | Dyno Controller Parameters 测功机控制器参数 |
在AVL 浏览器中的内容:
简称 | 描述 |
---|---|
DCV | Driver Curves 驾驶曲线 |
MSD | Manual Shift Definitions 手动变速器定义 |
MST | Manual Shift Thresholds 手动变速器阈值 |
在POI中的内容:
简称 | 描述 |
---|---|
VEE | Enhanced Vehicle Parameter Editor 先进车辆参数编辑器 |
GSM | Gearshift Map Editor 换挡Map编辑器 |
这份手册阐述了如何操作ISAC 400的台架,出于这个目的,车辆和驾驶员的模拟必须通过PUMA OPEN操作系统
T_cardan 是根据发动机的扭矩和传动比计算的(在使用ISAC400配置的时候的发动机的扭矩),如果不考虑变速器的效率的情况下,车辆的加速的扭矩是由车轮产生的,这个扭矩时由发动机的扭矩,变速器的减速比,还有传动轴的减速比还有他们的传动效率决定的。
车速和发动机的转速不是完全挂钩的,还需要考虑车辆的悬架单元,取决于模拟的传动系的固有频率和阻尼系数,车速和转速的差异还根据外在负载的变化而变化(比如给油门和收油门的时候)
比如:
在节气门打开的时候,转速会上升,但是车辆并不会立刻运动,扭矩首先加载到车辆上的弹性单元,换句话说是这个扭矩是模拟的车辆的车速增加。
在车辆的模拟中,PUMA Open系统通过数学模型模拟了真实世界中所有的负载,在测试运行的时候,发动机的负载通过高性能的测功机来提供,下面的几个负载是测功机必须要模拟的
道路阻力是车辆行驶过程中抵抗的阻力的和,台架使用ISAC模拟的阻力包含
道路阻力由滚动阻力和空气阻力组成,可以由以下公式计算
**注意:**如果 A0 < 1 将遵循第二个公式(在PIO的接口窗口中)
道路阻力计算的是离线定义的,还有一个在线的计算接口
在PUMA中可以使用车速道路阻力表和公式计算的两种方式来定义道路阻力,但是这一章中我们只讨论公式计算的方法。
道路阻力由滚动阻力和道路阻力构成,滚动阻力由下面的内容来描述
Case1: |A0| >= 1.0
滚动阻力 = A0+B0v+C0v2
常数项A0表示车辆前进的阻力,这个值可以从车辆制造商或者轮胎制造商处获得
Case2: |A0| < 1.0
滚动阻力 = mfgcosα+B0v+C0*v²
其中:
提示:
不必用到公式的所有的系数来计算道路阻力,基于滑行测试的结果,可以确定是否用到公式的一次项或者多次项来计算滚动阻力
风阻 FAir 可以有下面的公式来描述
其中:
在PAM中定义参数(非在线参数),在VEH模块中定义定义参数
坡道阻力的模拟值是通过道路坡度仿真获得的,坡道阻力是车辆试图上坡时克服的阻力
下面的公式来计算坡道阻力
使用POI或者PAM来设置道路阻力参数
注意:
只有在两种模式下可以使用坡度模式
在车辆仿真过程中,为了得到真实的仿真结果,还需要考虑各个零部件的惯量距
虽然发动机已经安装在台架上了,但是还是需要单独制定发动机的惯量( = 发动机惯量+飞轮惯量+离合器)
提示:
你也许思考为什么发动机都完整的安装在台架上了但是还需要输入惯量值,原因是需要这些值来帮助下面三个值的仿真数据
在400台架中是没有变速器的,所以需要模拟变速器的惯量,包输入输出轴,离合片等
为了仿真变速器的惯量,首先在VEH模块中需要选择传动系的类型
注意:
在ISAC 400台架上只能模拟手动变速器
在ISAC 400系统中不需要配置真实的变速器,在换挡过程中的驱动链的表现是可以模拟出来的,主要是模拟扭矩和转速的变化
选择 Functions | Simulation | Manual Transmission (simulated)
其中:
在换挡过程中的传动系的震动和共振情况(主要是离合器在工作的时候)扭矩和转速会发生震动,阻尼参数的设置来定义这些震动的振幅(相对时间的振幅衰减等)
由于 ISAC 400台架中没有真实的半轴,则需要进行模拟,包括传动系输出的所有的旋转件(在车轮和变速器之间),由于在401和402台架中有真实的半轴,所以不需要再这两个台架中设置
由于在台架上没有真实的车轮,很有必要来模拟他们,包括所有的车轮部件:车轮,制动盘,半轴,驱动桥部件
车轮的半径和两个值有关
比如:
195/65 R15
数据 | 描述 |
---|---|
195 | 胎宽 |
65 | 轮胎高度(H) = 195mm * 65% |
R15 | 轮辋直径 |
由于在台架上没有真实的车辆,很有必要来模拟他们,我们只需要轮胎半径和车重参数,下面是仿真使用的数学公式
公式中是将车重转化成一个轮子的转动惯量,其中:
因为在ISAC台架上没有真实的离合器,有必要对其进行发仿真,离合器的仿真主要通过参数 最大扭矩 和 扭矩/位移 在MTS模块中设定,在401和402台架中不需要设置该参数
在驾驶员仿真中,我们使用ISAC来模拟真实的驾驶行为,模拟生效在UUT上,在高性能测功机的帮助下,在发动机台架上主要模拟一下两个行为:
下面几个图描述了以下几个驾驶行为:
注意:
在ISAC 400的标准包中只有手动变速器可以模拟,在 ISAC 401/402/404系统中,变速器一定是真实存在的,在ISAC 401/402/404系统中肯定包含手动或自动变速器控制
ISAC模拟过程中的一个任务是模拟两种不同的驾驶风格,当我们在本手册中提到两种驾驶风格的时候,也会提到这两种驾驶风格的影响
ISAC的一个任务是在台架上执行规定的测试循环,在这些测试循环中,被试样件在台架上按照指定的规则进行测试,通过ISAC,动态的驾驶循环(启动,升档,降档)都要模拟
比如,下面两图就展示了不同的驾驶风格的曲线
我们从图中可以看出以下区别
运动风格 | 省油风格 |
---|---|
快速换挡 | 慢速换挡 |
换挡前收油很快 | 换挡前慢慢的收油 |
换挡后快速给油和升档 | 换挡后慢慢的给油和升档 |
换挡的时候还在加速 | 换挡完成后才开始加速 |
在这个阶段中,我们需要模拟如下一系列行为:
当启动的时候,车辆是静止的,你需要打开引擎并开始换如1挡,然后你在离合的帮助下控制车辆前进
在ISAC中,启动阶段将做如下的事情
启动发动机,车辆位于空挡,脱开离合器,换入1挡,慢慢接合离合器并控制离合器使之达到预定转速
在ISAC中,升档阶段将做如下的事情:
发动机出于适当的转速,加速踏板放开,脱开离合器,升入下一个挡位,离合器接合,操作节气门开度直至达到目标转速
在ISAC中,降档阶段将做如下的事情:
发动机出于低速范围,松开加速踏板,打开离合器,降档,然后离合器接合,操作油门开度直至达到目标转速
典型的降档动机如下:
这一章主要包含以下信息:
真实世界上的升档步骤如下:
打开离合器阶段
升档的过程
离合接合的阶段
给油门阶段
油门模型用在换挡过程中“收油门”和“开油门”的过程,主要有如下几个油门模型
在这个阶段之前,发动机运行在一个预先定义的转速范围内,当这个阶段开始的时候,发动机先进入怠速转速,然后根据预先定义的开启油门的时间和各个控制曲线运行,最后达到最大油门位置
结束位置:最大的油门位置
下面的例子代表了绝对油门模型下升档的过程,升档后的油门最大开度定为40%
如果出于RG/Alpha模式,油门将会回到之前的开度
如果出于其他的控制模式,油门将会按相应的控制参数进入指定开度
在这个阶段开始之前,发动机运行在定义的转速范围内,当这个阶段开始的时候,发动机将会按照预先设定的参数首先进入到怠速转速,各个控制桉树按照预先定义的参数运行,最终的油门位置如下
结束点:达到相关阶段的油门位置的%多少
下面的例子展示了相对油门模型下,升档阶段的过程
//不解释了,暂时用不到
注意:
在油门的关闭阶段,是和升档降档不同的,这个阶段主要从发动机关闭阶段开始,详细描述如下
在升档或降档阶段,发动机首先进入怠速转速,同时控制离合来完成升档和降档过程
在开始停顿阶段过程中,发动机首先进入怠速转速,从预先定义的节气门开启时刻点开始,控制发动机转速到到预先定义的转速点,随后结束“从静止阶段开始”的过程
注意:
在这个过程中,一个斜率控制器和一个速度调整期参与此控制
在EMCON400的配置中,发动机的转速是由RAPMGEN(Block 52)和ENPAC-N(Block 53)两个部分来控制
在EMCOM 4xy的配置中,发动机的转速是由RAPMGEN(Block 80)和ENPAC-N(Block 81)两个部分来控制
这些模块都是可以在PUMA Open中设定的,如果需要的话,基本参数设置是EMCON的数据库的一部分
在升档和降档接单,下一个挡位的离合器的同步速度用作作为发动机转速控制的设定值
在“从静止阶段开始”中,转速的设定值是由驾驶员参数定义的(在ECT模块中的最大油门开度部分)
在EMCON CFG中有两个功能是通过 参数 ADB_OPT_THROTTLEMODEL_CLOSEDLOOP 设定的
//到此为止
此模式用来和预先定义的转速阈值来同步离合器的动作
这个例子展示0油门模式
在换挡过程中,各个阶段相互独立,共同构成一个换挡过程,如果一个参考值(比如油门和离合器的位置)到达一个预定的阈值之内,则开始启动下一个阶段
下面的图片展示了事件转换过程
这些事件监测的参考值是目标值和实际值的 AND/OR 的逻辑组合,EMCOM 的选项 DD_OPT_EVENTDETECTION 来定义需要用哪些变量,和这些变量如何取值
在EMCON CFG 中如下设置
为了驾驶员模拟,换挡行为的表现和换挡阈值的参数都是可以自定义的
//暂时到此为止
//设定换挡阶段的离合油门曲线,有很多的参数表,暂时不用,到此为止
//设定每个档位的阈值,有很多参数表,暂时不用,到此为止
//这部分主要写了如何使用脚本,或者AVL里面的对话框,以及参数表来选择/设定家属参数,先知道有这个东西,到此为止
看本章需要有对ISAC的基本知识(上满的1-4章)
提示:
这一章主要在 RG/V模式
为了实现车速控制,我们需要用到下面的控制/斜率生成器
项目 | 描述 |
---|---|
RAMPGEN | 斜率生成器 |
ENPAC | 比如车速控制器 |
BRAKE | 车辆制动控制器 |
这些控制器和斜率生成器都集成在Engine
Controller Parameters 窗口中
在 Functions | Engine | Controller Parameters 里
斜率生成器的任务是在接近目标值的过程中将超调和欠调最最小化,如果请求值突然发生变化,则斜率生成器将会尽可能的去尽快的贴近目标值
可用的斜率生成器
下面是几个斜率生成器额详细描述
** RAMPGENV**
road gradient/velocity模式使用这个生成器
关于这个控制器的输入输出:
一些术语解释:
比如我们想阐述如果RAMPGENV控制器使用的时候 max.d/dt 是如何起作用的
ENPAC (ENgine Progressive Adaptive Controller)是用来控制台架上的发动机的,他们都是基于PI控制器,ENPAC控制器有两个输入和一个输出,可以被两个参数中的任何一个参数所影响,输出的参数通常用来控制油门
ENPAC控制器是AVL的调试工程师在试运转的过程中调好的,通常在台架正式运行的时候也可以对它进行调整,ENPAC控制器包含一个积分环节和比例环节
对于自动变速器,变量1-5取决于车辆的速度,因为无法分配齿轮比
制动控制在车辆的请求车速低于实际车速且当前油门为0的时候起作用,制动控制器用来模拟车辆的制动,包含一个积分环节和比例环节
关于输入和输出
最大的制动的扭矩受限于:
Max. brake torque = μBrake * g * mVehicle * rTire
g: 重力加速度
mVehicle: 车重
rTire: 轮胎半径
μBrake: 滑动摩擦系数(在ISAC中 μBrake = 5.0)
//这里写了发动机台架上,测功机模拟实际换挡过程中扭矩和转速的变化,到此为止
//这部分很长,基本上都是如果操作面板和使用PUMA来编写测试程序,先知道它是干什么的,到此为止
监控功能用来保护被试样件损坏,有一系列的模块来定义这些:GWA,SAL,TBM
//主要包括在线监控功能和连接轴保护功能,本章主要写如何设定这些参数,到此为止
//写了如何设置
//轴的共振速度是正负力矩之差最大时的速度,本章中写了一个确定最大共振速度的方法,大概是使用FFS测量最大的震动的转速和扭矩,先知道是什么,到此为止
//这一章写了如何手动/自动/使用发动机拖转/使用启动电机启动的方法,先知道是什么,到此为止
//定义了关闭发动机的流程
//写了如何操作滑行模式和如何设置滑行模式
不同的仿真模型(使用不同的控制器)支持仿真车辆,驾驶员,道路阻力,道路坡度等等,下面的是这些仿真模型和控制器的基本介绍
台架上需要仿真很多的车辆参数,用户在PUMA/ISAC上提供这些设置,或者将他们作为目标值来设置
这张图展示了在RG/V模式下的车辆仿真中,各个控制器和各个参数是如何相互影响的
下图展示了道路阻力模拟模型,参考数字的含义与前一个数字相同。
PUMA Open/ISAC系统提供了一系列的控制器,比如发动机的过程自适应控制器engine progressive adaptive controllers (ENPAC),斜率生成器 ramp generators (RAMPGEN),和PI控制器 PI controllers。
//这里只写了有什么
为了提高性能和简化参数, ENPACN,ENPACT,ENPACX控制的控制架构可以理解成是继承于ENPAC。ENPAC控制架构首次在PUMA Open V1.4.1中公布,它提供了更简单的参数化配置来控制一系列的控制程序,比如发动机转速和车速控制,扭矩控制等
通用的ENPAC控制器的架构可以看做是带有非线性参数的PI控制器,这些非线性的参数可以看做是基于时序变量的误差调度的函数,从控制器的性能角度来看,时序变量可以理解成为一个有时序变量决定的比例和积分增益的动态适应。在这个实现中,时序变脸被选为故障信号的过滤版本,因此,控制器增益可以看做是误差项
ENPAC架构如下所示
//这里我将 Scheduling variable 翻译为时序变量,不知道用什么词来翻译
参数如下解释
下面是控制器中的积分环节的用法
If_lin
非线性函数 FInt 是通过参数 If_lin 来设定的,函数 FInt 是非线性函数 FQ = error * |error| 和线性函数 FL = KL * error的融合,当时序变量在由 If_lin 定义的控制环中, FInt 是一个显性函数 FL,否则 FInt 是一个非线性函数 FQ (看上图),增益 KL 会自动计算,确保FL和FQ切换的平顺性
If_lin 可以设置在0 到 1之间
0: 禁用
1: 在整个范围线性相关
max.dAlpha/dt
积分环节控制的最大的变化率
变化率限制器施加在积分环节中输入信号的限制,它限制积分器的输出变化,即积分部分的变化率是有限的,使用变化率显示器可以帮助减少超调
变化率可以限制设置在 0 - 100[%/s]
Ti = 1
Ti = 1 代表积分器
标准格式保证了不同类型发动机控制器设置的兼容性,在这种情况下,很多变量都使用他们标准值,当发动机更换后,控制器就不需要更换了,控制参数将会自动根据新发动机的设定参数而重新设定控制器参数,通常来讲,标准参数是发动机指定的标准参数,可以从发动机的铭牌中读到
需要说明额是标准的参数没有物理值单位,推荐ENPAC控制器的标准格式对ENPAC控制器进行性能调优,当参数需要实际的物理值的时候,下面的公式可以用来计算标准格式的参数
当ENPAC 用来作为发动机转速控制器的时候,下面的参数将作为输入和输出值
//类似,需要再看,到此为止
当 ENPAC用来控制车速的的时候,输入输出如下
输入1:车速请求值
输入2:车速实际值
输出:油门位置请求值
和控制发动机转速一样
Torque Correction Controller (CORRECTT) 用来控制测功机的扭矩输出
//先知道是什么,到此为止
//定义了扭矩是如何控制的,到此为止
PI控制器用来用来最小化请求值和实际值的差异,PI控制器提供两个输入,P和I根据实际请求值,有 K_red_act 值降低
下面的描述了该控制器的参数
对于PI控制器,标准格式是控制器的使用数量,没有物理单位,但是已经和先关的车辆或发动机参数关联了。
标准格式确保确保控制器设置的箭筒,当更换发动机的时候,可以使用相同的控制参数
下面的参数用到了标准格式的PI控制器
如果实际转速和请求转速相差过大,你需要调整控制器,建议遵循以下步骤
在 ISAC 400中有如下的斜率生成器