这篇文章是我学习AVL 的的ISAC文档的整理总结
文章目录
- 1 写到首章
- 2 ISAC配置
- 3 车辆仿真
- 4 驾驶员仿真
- 5 使用ISAC
- 5.4 制动控制
- 6 关于台架
- 7 仿真模型和控制器
1 写到首章
我们用的现在是ISAC 414系统,中间的0是指内燃机台架,1是指电机台架。最后的0是指只有发动机或电机,1是指加变速器,2是指再加上差速器
但是文章中是没有写更多最后面的3和4是什么意思,我暂且认为是3电机台架和4驱台架吧
1.1 ISAC的使用环境
先不讨论
1.1.1 整车模型
在路上有各式各样的车,但是主要的特性如下所示
车辆性能参数 |
---|
最高车速 |
最大扭矩 |
功率 |
空气阻力系数 |
加速性能 |
最高转速 |
车重 |
不同驾驶风格的驾驶员有不同的驾驶方式,主要如下所示
驾驶员行为 |
---|
驾驶速度和周围环境感知 |
开车的省油意识 |
换挡的平顺程度和速度 |
加速度和减速度(非刻意的剧烈驾驶) |
因此车辆的运动形式和下面两个因素强相关
因素 | 方式 |
---|---|
车辆 | 车辆的机械结构,取决于车辆是如何设计的,这些因素在驾驶的时候是不能改变的 |
驾驶员 | 驾驶员的驾驶表现,驾驶员的行为还受限于交通法规,但是也不是标准的, |
通常车辆的运动方式还收其他因素影响,比如坡度,空气系数,路面状况等,这些我们后面讨论
1.1.2 不同风格的驾驶模式和车辆表现
下面的图表展示了在同样的交通状况的情况下的两种不同驾驶风格和其对应的车辆的表现,这两种风格是运动风格和柔和风格,我们在本章中将使用“运动风格”和“柔和风格”来代表这两种驾驶风格
驾驶风格 | 描述 |
---|---|
运动风格 | 这种风格通常发生在大功率,非常Sport的车上,而且驾驶员的驾驶方式是很激烈的:烧胎,高速,剧烈的换挡等 |
柔和风格 | 这种风格通常发生在舒适的,小功率的车上,而且驾驶员开车的方式很温柔:慢慢的额加速减速,柔和的换挡等 |
1.1.3 模拟的优势
对发动机,变速器和传动系进行仿真对主机厂进行产品开发提供了的非常大的帮助
仿真点 | 描述 |
---|---|
在台架上进行发动机测试 | 发动机在日常工作中承受各种不同的应力,因此,提前的发现发动机的应力变化是很有必要的,还在开发原型的时候,发动机台架是理想的开发环境,ISAC 400 就是为了这个目的产品 |
传统的发动机台架负载测试主要包括(在车上测试):
- 在转鼓上测试,带一个驾驶机器人
- 在转股上测试,用真实驾驶员
- 在测试场测试
配备先进的驾驶员和道路模拟功能的测试台架
- 在开发阶段就具备真实的道路阻力
- 发动机不需要装在车上
- 对发动机更多的参数测量
- 重复性测试
- 降低测试人员的操作意外
- 可以模拟所有驾驶风格的驾驶员
- 可以在台架上进行常规的法规测试
- 完善的开发文档节省开发费用
- 模拟能力取决于发动机的原型设计
配备先进驾驶员和道路模拟功能且配备传动系的台架
- 不必在车上增加传动系了
- 重复性测试
- 全自动测试
- 即使原型还没有开发出来,也可以进行测试
1.1.4 ISAC的产品
- 仿真点:汽车零部件和台架的过渡点,也是台架需要模拟的位置点
ISAC产品 | 描述 |
---|---|
ISAC 400 | 发动机台架; 带一个发动机的高动态的测功机; 仿真点:曲轴输出 |
ISAC 401 | 传动系台架; 带一个发动机,变速器,离合器和一个高性能测功机; 仿真点:变速器输出轴 |
ISAC 402 | 驱动轴台架;带一个发动机,离合器,变速器,差速器和两个高性能测功机;仿真点:轮子 |
ISAC 403 | 有四个轮子的驱动轴台架;带发动机,离合器,变速器,传动轴,差速器,分动箱和四个高性能测功机;仿真点:轮子 |
1.1.4.1 ISAC400功能描述
标准功能 | 可选项 |
---|---|
动态驾驶表现 | 台架离合器 |
道路阻力和道路坡度 | 自动传动系模拟 |
监控 | CVT模拟 |
车辆和驾驶员模拟 | 台架仿真 |
发动机启动模拟 | |
发动机点火 | |
发动机熄火 | |
手动变速器仿真 | |
控制模式仿真 |
1.1.4.2 ISAC401功能描述
标准功能 | 可选项 |
---|---|
动态驾驶表现 | |
道路阻力和道路坡度 | |
监控 | |
车辆和驾驶员模拟 | |
发动机启动模拟 | |
发动机点火 | |
发动机熄火 | |
手动变速器仿真 | |
控制模式仿真 |
1.1.4.3 ISAC 402功能描述
标准功能 | 可选项 |
---|---|
动态驾驶表现 | 车轮打滑模拟 |
道路阻力和道路坡度 | |
监控 | |
车辆和驾驶员模拟 | |
发动机启动模拟 | |
发动机点火 | |
发动机熄火 | |
控制模式模拟 | |
传动系和离合控制 | |
熄火制动控制 | |
转向模拟 |
1.1.4.4 ISAC 404功能描述
标准功能 | 可选项 |
---|---|
动态驾驶表现 | 车轮打滑模拟 |
道路阻力和道路坡度 | |
监控 | |
车辆和驾驶员模拟 | |
发动机启动模拟 | |
发动机点火 | |
发动机熄火 | |
控制模式模拟 | |
传动系和离合控制 | |
熄火制动控制 | |
转向模拟 |
1.2 使用说明
1.2.1 简称
简称 | 描述 |
---|---|
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 比例积分控制器 |
2 ISAC配置
2.1 测试单元
通常一个测试单元包括(以发动机台架为例):
- 高性能测功机
- 内燃机
- 传动轴
- 离合器
- F-FEM
- AVL台架控制柜(可选)
- 油耗仪(可选)
2.2 ISAC的PUMA Open硬件
ISAC 400 APA 100
- EMCON/ISAC 的操作面板(通过COM1连接PUMA)
- 一个或两个 FFEMCON接口
- KIWI 接口用来连接测功机到PUMA
- FEM 总线
- 拓展箱或者多连接板(集成在PUMA中)
- PUMA电脑
ISAC 4xy PMM/KIWI box还有车轮打滑模拟功能的PUMA
- EMCON/ISAC 的操作面板(通过COM1连接PUMA)
- 3个FFEMCON
- KIWI,比如 EMCON/ISAC 404有4个测功机然后需要4个KIWI盒子,EMCON/ISAC 400/401有一个测功机然后就需要1个KIWI盒子
- 电脑操作台
- KIWI盒子的配置:1…2 x dSPACE 1006 CPU 1…2 x AVL 6860
- 拓展箱或者多连接板(集成在PUMA中)
- PUMA电脑
- 换挡操作器
2.3 PUMA Open中ISAC的软件
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编辑器 |
2.4 基本参数程序
这份手册阐述了如何操作ISAC 400的台架,出于这个目的,车辆和驾驶员的模拟必须通过PUMA OPEN操作系统
2.5 ISAC的使用建议
T_cardan 是根据发动机的扭矩和传动比计算的(在使用ISAC400配置的时候的发动机的扭矩),如果不考虑变速器的效率的情况下,车辆的加速的扭矩是由车轮产生的,这个扭矩时由发动机的扭矩,变速器的减速比,还有传动轴的减速比还有他们的传动效率决定的。
车速和发动机的转速不是完全挂钩的,还需要考虑车辆的悬架单元,取决于模拟的传动系的固有频率和阻尼系数,车速和转速的差异还根据外在负载的变化而变化(比如给油门和收油门的时候)
比如:
在节气门打开的时候,转速会上升,但是车辆并不会立刻运动,扭矩首先加载到车辆上的弹性单元,换句话说是这个扭矩是模拟的车辆的车速增加。
3 车辆仿真
在车辆的模拟中,PUMA Open系统通过数学模型模拟了真实世界中所有的负载,在测试运行的时候,发动机的负载通过高性能的测功机来提供,下面的几个负载是测功机必须要模拟的
- 道路阻力
- 道路坡度
- 运动元件的惯性模拟
3.1 道路阻力仿真
道路阻力是车辆行驶过程中抵抗的阻力的和,台架使用ISAC模拟的阻力包含
- 滚动阻力
- 空气阻力
平直路面上的道路阻力
3.2 PUMA Open中的道路阻力
道路阻力由滚动阻力和空气阻力组成,可以由以下公式计算
**注意:**如果 A0 < 1 将遵循第二个公式(在PIO的接口窗口中)
3.2.1 使用POI来定义道路阻力
道路阻力计算的是离线定义的,还有一个在线的计算接口
- Select Functions | Simulation | Vehicle & Driveline Parameters, to open the window.
- Select the Road Load tab.
在PUMA中可以使用车速道路阻力表和公式计算的两种方式来定义道路阻力,但是这一章中我们只讨论公式计算的方法。
3.2.1.1 滚动阻力
道路阻力由滚动阻力和道路阻力构成,滚动阻力由下面的内容来描述
Case1: |A0| >= 1.0
滚动阻力 = A0+B0v+C0v2
常数项A0表示车辆前进的阻力,这个值可以从车辆制造商或者轮胎制造商处获得
Case2: |A0| < 1.0
滚动阻力 = mfgcosα+B0v+C0*v²
其中:
- f 为滚动阻力系数,轮胎的直径越小,则轮胎的滚动阻力系数越大,同时,轮胎的滚动阻力系数随着轮胎负载和车速的增大而增大,随着胎压的降低而增大。
- 摩擦系数B0[N/(m/s)]是车速相关的一次项系数,这个值是在车辆的滑行测试中确定的,可以从车辆或轮胎制造商获得,这个系数和胎压,轮胎直径,负载和车速有关
- v 这个值是模拟的车速值,这个值是由ISAC模拟的
提示:
不必用到公式的所有的系数来计算道路阻力,基于滑行测试的结果,可以确定是否用到公式的一次项或者多次项来计算滚动阻力
- 阻力系数 C0[N/(m/s)^n] 是在车辆的滑行测试中确定的
3.2.1.2 风阻(拖拽)
风阻 FAir 可以有下面的公式来描述
其中:
- A[m^2] 是车辆的前迎风面积,这个值可以由车辆制造商获得
- Cd 是风阻系数可以在车辆制造商获得
- Rho[kg/m^3] 是空气的密度
3.2.2 在PAM中设置道路阻力
在PAM中定义参数(非在线参数),在VEH模块中定义定义参数
3.3 道路坡度模拟
坡道阻力的模拟值是通过道路坡度仿真获得的,坡道阻力是车辆试图上坡时克服的阻力
下面的公式来计算坡道阻力
3.4 在PUMA Open中的坡道阻力
使用POI或者PAM来设置道路阻力参数
3.4.1 使用POI来定义
其中:
- 车重只有输入了车重才可以计算坡道阻力
- 坡度角度是由坡度系数计算的: 坡度角度=arctan(坡度系数),具体的坡度角度是由用户在实际操作中输入的
注意:
只有在两种模式下可以使用坡度模式
- Road Gradient/Velocity
- Road Gradient/Alpha
3.4.2 在PAM中定义坡道阻力
3.5 惯量模拟
在车辆仿真过程中,为了得到真实的仿真结果,还需要考虑各个零部件的惯量距
- 发动机惯量
作为台架中的测试样件,发动机的惯量同样需要表现在台架上 - 非实际存在的惯量
非实际存在的惯量是由ISAC模拟的,然后使用高性能的测功机添加在台架上
ISAC模拟的车辆零部件的惯性矩如下所示:
- 真实的台架上的发动机
- 传动系
- 万向轴
- 车轮
- 车辆
- 非存在的车辆零部件的惯性矩,归结为1个值
3.6 发动机惯量
虽然发动机已经安装在台架上了,但是还是需要单独制定发动机的惯量( = 发动机惯量+飞轮惯量+离合器)
3.6.1 使用POI来定义发动机惯量
- Select Functions | Engine | Desc, Limits, Param
- 发动机惯量
这个值可以厂商获得或者使用ISAC来定义
提示:
你也许思考为什么发动机都完整的安装在台架上了但是还需要输入惯量值,原因是需要这些值来帮助下面三个值的仿真数据
- 0惯量模拟
- 模拟传动链和发动机的共振
- 在使用411/412台架中来模拟发动机
3.6.2 使用PAM来定义发动机的惯量
- 双击 UUT 中的ECT 模块,打开发动机描述窗口
- 设置发动机的惯量
3.7 变速箱惯量
在400台架中是没有变速器的,所以需要模拟变速器的惯量,包输入输出轴,离合片等
3.7.1 选择传动系的类型
为了仿真变速器的惯量,首先在VEH模块中需要选择传动系的类型
- 传动系类型
MTR:手动变速器 ATR:自动变速器 VTR:混合变速器
注意:
在ISAC 400台架上只能模拟手动变速器
3.7.2 使用POI来定义变速器的惯量
3.7.3 使用PAM来定义变速器的惯量
3.8 台架上的传动系参数
在ISAC 400系统中不需要配置真实的变速器,在换挡过程中的驱动链的表现是可以模拟出来的,主要是模拟扭矩和转速的变化
- 换挡后的扭矩仿真
- 换挡后的转速仿真
3.8.1 使用POI来定义传动链参数
选择 Functions | Simulation | Manual Transmission (simulated)
其中:
- 传动比:
从厂家获取传动比 - 效率:
从厂家获取传动效率 - Damping(d)阻尼:
这个设置来模拟在换挡的时候的传动系的震动,由于在 ISAC 400台架中没有真实的驱动链,很有必要设置这个参数。
在换挡过程中的传动系的震动和共振情况(主要是离合器在工作的时候)扭矩和转速会发生震动,阻尼参数的设置来定义这些震动的振幅(相对时间的振幅衰减等)
- Nat.Frequ. (f0)
自然频率这次数用来仿真驱动链在震动的时候的自然频率(特定的挡位和特定的驾驶工况,比如换挡和节气门打开的时候)
3.9 半轴的惯量
由于 ISAC 400台架中没有真实的半轴,则需要进行模拟,包括传动系输出的所有的旋转件(在车轮和变速器之间),由于在401和402台架中有真实的半轴,所以不需要再这两个台架中设置
3.10 车轮的惯量
由于在台架上没有真实的车轮,很有必要来模拟他们,包括所有的车轮部件:车轮,制动盘,半轴,驱动桥部件
3.10.1 在POI中定义车轮的惯量
关于几个参数:
- Rear wheel inertia
后轮的转动惯量[kgm^2]可以从制造商获得 - No.wheels rear
后轮的数量 - Tyre radius rear
车轮的滚动半径
3.10.1.1 如何计算轮胎的半径
车轮的半径和两个值有关
- 轮胎的高度(H)[mm]
- 轮辋的半径[mm]
这两个值可以通过制造商数据来计算
- 轮胎的扁平比(H/W)[%]
- 轮辋的直径
比如:
195/65 R15
数据 | 描述 |
---|---|
195 | 胎宽 |
65 | 轮胎高度(H) = 195mm * 65% |
R15 | 轮辋直径 |
3.10.2 在PAM中定义车轮的惯量
在UUT里面
3.11 车辆的惯量
由于在台架上没有真实的车辆,很有必要来模拟他们,我们只需要轮胎半径和车重参数,下面是仿真使用的数学公式
公式中是将车重转化成一个轮子的转动惯量,其中:
- m:车重[kg]
- rTire: 车轮半径[m]
3.12 离合器的仿真
因为在ISAC台架上没有真实的离合器,有必要对其进行发仿真,离合器的仿真主要通过参数 最大扭矩 和 扭矩/位移 在MTS模块中设定,在401和402台架中不需要设置该参数
3.12.1 定义离合器曲线
定义一个离合器位移和传递最大扭矩的曲线
3.12.2 使用POI来定义离合器仿真
3.12.3 使用PAM来定义离合器仿真
4 驾驶员仿真
在驾驶员仿真中,我们使用ISAC来模拟真实的驾驶行为,模拟生效在UUT上,在高性能测功机的帮助下,在发动机台架上主要模拟一下两个行为:
- 操作离合器
- 踩油门
下面几个图描述了以下几个驾驶行为:
- 升档
- 降档
- 离合器脱开
- 离合器接合
- 油门变化
- 直线代表节气门开度变化
- 点横线代表离合开度变化
注意:
在ISAC 400的标准包中只有手动变速器可以模拟,在 ISAC 401/402/404系统中,变速器一定是真实存在的,在ISAC 401/402/404系统中肯定包含手动或自动变速器控制
ISAC模拟过程中的一个任务是模拟两种不同的驾驶风格,当我们在本手册中提到两种驾驶风格的时候,也会提到这两种驾驶风格的影响
- 离合器的接合过程
在真实的车辆中,离合器的接合可以分为两个部分,一个部分半离合过程,在实际的车上,此过程是磨损离合器片的。
第二个部分是实际的接合过程,在仿真过程中,系统在离合器曲线的网格点之间进行直线插值,利用折线来模拟接合过程。
4.1 驾驶循环
ISAC的一个任务是在台架上执行规定的测试循环,在这些测试循环中,被试样件在台架上按照指定的规则进行测试,通过ISAC,动态的驾驶循环(启动,升档,降档)都要模拟
比如,下面两图就展示了不同的驾驶风格的曲线
我们从图中可以看出以下区别
运动风格 | 省油风格 |
---|---|
快速换挡 | 慢速换挡 |
换挡前收油很快 | 换挡前慢慢的收油 |
换挡后快速给油和升档 | 换挡后慢慢的给油和升档 |
换挡的时候还在加速 | 换挡完成后才开始加速 |
在这个阶段中,我们需要模拟如下一系列行为:
- 加速开始的时间
- 离合接合的时间
- 不同的油门位置
- 换挡时机
- 换挡的时候的转速,车速,速度等
- 速度控制
4.1.1 启动阶段
当启动的时候,车辆是静止的,你需要打开引擎并开始换如1挡,然后你在离合的帮助下控制车辆前进
在ISAC中,启动阶段将做如下的事情
启动发动机,车辆位于空挡,脱开离合器,换入1挡,慢慢接合离合器并控制离合器使之达到预定转速
4.1.2 升档阶段
在ISAC中,升档阶段将做如下的事情:
发动机出于适当的转速,加速踏板放开,脱开离合器,升入下一个挡位,离合器接合,操作节气门开度直至达到目标转速
4.1.3 降档阶段
在ISAC中,降档阶段将做如下的事情:
发动机出于低速范围,松开加速踏板,打开离合器,降档,然后离合器接合,操作油门开度直至达到目标转速
典型的降档动机如下:
- 驾驶员想使车辆减速,
- 驾驶员希望增加扭矩输出,同时还希望车辆增加或保持,比如超车的时候
- 驾驶员想想离开一个特殊的转速区间,比如在交通拥堵的时候,高档位低速行驶
4.2 升档程序
这一章主要包含以下信息:
- 升档程序
- 油门模型
- 这一阶段的状态监测
4.2.1 升档程序
真实世界上的升档步骤如下:
- 收油
- 开离合
- 降档
- 接合离合到半离合状态
- 接合离合到正常状态
- 给油
下图描述升档过程
收油阶段
- 曲线模型:曲线描述了收油阶段
- 最大位置:定义的油门曲线的最大的位置
- 曲线长度:从收油开始到油门完全关闭的事件
- 打开离合器的位置点
打开离合器阶段
- 曲线:曲线描述了打开离合的过程
- 曲线长度:打开离合的过程长度
- 换挡位置:开始换挡的位置
升档的过程
- 离合器打开保持打开的时间段
离合接合的阶段
- 速度和最大扭矩:接合离合的过程(直线)
- 曲线模型:描述了关闭离合的第二过程
- 曲线长度:关闭离合的持续时间
- 最大的速度差:离合完全接合的时间点
- 给油门的时间点
给油门阶段
- 曲线模型:描述了开油的过程
- 曲线长度:开油过程持续的时间
- 结束位置:油门最大开度到达的事件点
4.2.2 油门模型
油门模型用在换挡过程中“收油门”和“开油门”的过程,主要有如下几个油门模型
- 绝对(Absolute)油门模型
- 相对(Relative)油门模型
- 关闭阶段(Closed Loop)油门模型
- 归零阶段(Throttle Zero)油门模型
4.2.2.1 绝对油门模型
在这个阶段之前,发动机运行在一个预先定义的转速范围内,当这个阶段开始的时候,发动机先进入怠速转速,然后根据预先定义的开启油门的时间和各个控制曲线运行,最后达到最大油门位置
结束位置:最大的油门位置
下面的例子代表了绝对油门模型下升档的过程,升档后的油门最大开度定为40%
- 升档阶段
- 升档阶段的最后的油门位置
- 开始升档阶段,发动机进入怠速转速
- 离合器保持打开的时间段,在这个时间段中,发动机保持怠速运行
- 升档阶段的最大油门位置
如果出于RG/Alpha模式,油门将会回到之前的开度
如果出于其他的控制模式,油门将会按相应的控制参数进入指定开度
4.2.2.2 相对油门模型
在这个阶段开始之前,发动机运行在定义的转速范围内,当这个阶段开始的时候,发动机将会按照预先设定的参数首先进入到怠速转速,各个控制桉树按照预先定义的参数运行,最终的油门位置如下
结束点:达到相关阶段的油门位置的%多少
下面的例子展示了相对油门模型下,升档阶段的过程
//不解释了,暂时用不到
4.2.2.3 关闭阶段(Closed Loop)油门模型
注意:
在油门的关闭阶段,是和升档降档不同的,这个阶段主要从发动机关闭阶段开始,详细描述如下
在升档或降档阶段,发动机首先进入怠速转速,同时控制离合来完成升档和降档过程
在开始停顿阶段过程中,发动机首先进入怠速转速,从预先定义的节气门开启时刻点开始,控制发动机转速到到预先定义的转速点,随后结束“从静止阶段开始”的过程
注意:
在这个过程中,一个斜率控制器和一个速度调整期参与此控制
在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 设定的
- 默认表现
ADB_OPT_THROTTLEMODEL_CLOSEDLOOP : MODEL_DEFAULT (value = 0) - 在ISAC 200中定义功能
ADB_OPT_THROTTLEMODEL_CLOSEDLOOP : MODEL_ISAC200 (value = 1)
//到此为止
4.2.2.4 0油门模式
此模式用来和预先定义的转速阈值来同步离合器的动作
这个例子展示0油门模式
- 完成“接合离合器到半联动点”的时候,驾驶员将等待发动机转速低于设定转速阈值的点,然后进入“从离合器半联动状态到完全接合点”状态
- 如果发动机转速已经低于阈值了,驾驶员将轻点油门直到转速高于阈值
- 驾驶员收油门到0直到发动机转速低于阈值
4.2.3 在各个阶段转换中的事件监测
在换挡过程中,各个阶段相互独立,共同构成一个换挡过程,如果一个参考值(比如油门和离合器的位置)到达一个预定的阈值之内,则开始启动下一个阶段
下面的图片展示了事件转换过程
- 断开离合器点
- 开始换挡点
- 给油门点
这些事件监测的参考值是目标值和实际值的 AND/OR 的逻辑组合,EMCOM 的选项 DD_OPT_EVENTDETECTION 来定义需要用哪些变量,和这些变量如何取值
在EMCON CFG 中如下设置
- 使用请求值(默认表现)
DD_OPT_EVENTDETECTION, clutch_SET_alpha_SET (value = 0) - 使用实际值
DD_OPT_EVENTDETECTION, clutch_ACT_alpha_ACT (value = 1) - 使用离合请求值和油门实际值
DD_OPT_EVENTDETECTION, clutch_SET_alpha_ACT (value = 2) - 使用离合实际值和有么请求值
DD_OPT_EVENTDETECTION, clutch_ACT_alpha_SET (value = 3)
4.3 关于参数化的总体介绍
为了驾驶员模拟,换挡行为的表现和换挡阈值的参数都是可以自定义的
4.3.1 使用AVL Explorer来设定
// 到此为止
4.3.2 使用POI来设定
//暂时到此为止
4.4 换挡定义的参数
//设定换挡阶段的离合油门曲线,有很多的参数表,暂时不用,到此为止
4.5 换挡阈值定义参数
//设定每个档位的阈值,有很多参数表,暂时不用,到此为止
4.6 通过脚本或激活的对象来访问驾驶员参数
//这部分主要写了如何使用脚本,或者AVL里面的对话框,以及参数表来选择/设定家属参数,先知道有这个东西,到此为止
5 使用ISAC
看本章需要有对ISAC的基本知识(上满的1-4章)
5.1 车速控制
提示:
这一章主要在 RG/V模式
为了实现车速控制,我们需要用到下面的控制/斜率生成器
项目 | 描述 |
---|---|
RAMPGEN | 斜率生成器 |
ENPAC | 比如车速控制器 |
BRAKE | 车辆制动控制器 |
这些控制器和斜率生成器都集成在Engine
Controller Parameters 窗口中
在 Functions | Engine | Controller Parameters 里
5.2 斜率生成器
斜率生成器的任务是在接近目标值的过程中将超调和欠调最最小化,如果请求值突然发生变化,则斜率生成器将会尽可能的去尽快的贴近目标值
可用的斜率生成器
- RAMPGENV (vehicle speed)
- RAMPGENS (engine speed)
- RAMPGENT (engine torque)
- RAMPGENA (engine alpha)
- RAMPGENX (engine x)
下面是几个斜率生成器额详细描述
** RAMPGENV**
road gradient/velocity模式使用这个生成器
关于这个控制器的输入输出:
- 输入:P400的操作面板或者自动程序的请求值
- 输出:后续控制器的实际需求值,这个值需要满足定义的上下或下限,比如不能超过指定的发动机转速或者测功机转速
一些术语解释:
- 格式(Format)
默认斜率生成器使用英制单位
如果祖安泽标准格式,则这个斜率生成器(比如 max.d/dt 值)是和标准值相关的,在 RAMPGENV 中,参数 Max.vehicle speed[km/h] 在参数组 VEH 中
关于标准参数的描述在后续章节 - max.d/dt
指最大的写斜率,定义了请求值的最大斜率,该斜率决定了每秒需要增加(或减少)的实际值的请求值单位的数量
有意义的值的范围(0 ≤ n ≤ 50000 [unit/s])
比如我们想阐述如果RAMPGENV控制器使用的时候 max.d/dt 是如何起作用的
5.2.1 其他斜率生成器的标准格式
可以在UUT的ETC模块中定义
其他控制器的默认参考值
- RAMPGENS
Norm.speed[rpm]是参考值的标准值 - RAMPGENT
Norm.Torque[Nm]是参考值的标准值 - RAMPGENA
Start throttle postion[%]是参考值的标准值 - RAMPGENX
Norm.load quantitly 是参考值的标准值
5.3 ENPAC 控制器
ENPAC (ENgine Progressive Adaptive Controller)是用来控制台架上的发动机的,他们都是基于PI控制器,ENPAC控制器有两个输入和一个输出,可以被两个参数中的任何一个参数所影响,输出的参数通常用来控制油门
5.3.1 ENPAC控制器控制车速
ENPAC控制器是AVL的调试工程师在试运转的过程中调好的,通常在台架正式运行的时候也可以对它进行调整,ENPAC控制器包含一个积分环节和比例环节
- 输入量1:车速请求值
- 输入量2:当前的实际车速
5.3.1.1 更多ENPAC控制器的车速控制的参数
对于自动变速器,变量1-5取决于车辆的速度,因为无法分配齿轮比
5.4 制动控制
制动控制在车辆的请求车速低于实际车速且当前油门为0的时候起作用,制动控制器用来模拟车辆的制动,包含一个积分环节和比例环节
关于输入和输出
- 输入1:当前车速的请求值
- 输入2:当前车速的实际值
- 输出:附加制动扭矩的设定值
最大的制动的扭矩受限于:
Max. brake torque = μBrake * g * mVehicle * rTire
g: 重力加速度
mVehicle: 车重
rTire: 轮胎半径
μBrake: 滑动摩擦系数(在ISAC中 μBrake = 5.0)
5.4.1 积分部分
- Ti
积分作用时间:积分环节用来提高控制器的特性,只要实际值和请求值有差异,积分环节就一直改变实际设定值,如果Ti太大,积分环节的作用会变小,Ti约小,实际值接近目标值的速度越快
有效值范围:0 ≤ n ≤ 5000 [ms]
5.4.2 比例环节
- Kp
比例环节,任何在请求值和实际值之间的差别都会导致设定值正比于这个差异,更大的比例系数导致控制器对实际和请求值之间的差异反应越强烈
有效值范围:0 ≤ n ≤ 1000
5.5 换挡阶段的表现模拟
//这里写了发动机台架上,测功机模拟实际换挡过程中扭矩和转速的变化,到此为止
5.6 ISAC的操作
//这部分很长,基本上都是如果操作面板和使用PUMA来编写测试程序,先知道它是干什么的,到此为止
6 关于台架
6.1 监控功能
监控功能用来保护被试样件损坏,有一系列的模块来定义这些:GWA,SAL,TBM
//主要包括在线监控功能和连接轴保护功能,本章主要写如何设定这些参数,到此为止
6.2 在线半轴监控功能(选装)
6.3 半轴监控
//写了如何设置
6.4 发动机启动前的准备工作
6.4.1 检查半轴长度
6.4.2 确定共振速度
//轴的共振速度是正负力矩之差最大时的速度,本章中写了一个确定最大共振速度的方法,大概是使用FFS测量最大的震动的转速和扭矩,先知道是什么,到此为止
6.5 启动发动机
//这一章写了如何手动/自动/使用发动机拖转/使用启动电机启动的方法,先知道是什么,到此为止
6.5.1定义启动参数
6.5.2 不用启动电机启动
6.5.3 使用启动电机启动
6.6 关闭发动机
//定义了关闭发动机的流程
6.7 台架零惯量模拟
6.8 模拟传动系的震动
6.9 如何设置自然频率
6.10 “阻尼”设置
6.11 滑行模式
//写了如何操作滑行模式和如何设置滑行模式
7 仿真模型和控制器
不同的仿真模型(使用不同的控制器)支持仿真车辆,驾驶员,道路阻力,道路坡度等等,下面的是这些仿真模型和控制器的基本介绍
7.1 关于车辆仿真和发动机测试台架的基本信息
台架上需要仿真很多的车辆参数,用户在PUMA/ISAC上提供这些设置,或者将他们作为目标值来设置
- 油门请求值,如果在RG/Alpha模式下,这个值是用户设定的,如果在RG/V模式下,这个值是ENPAC车速控制器计算的
- 测功机扭矩的请求值,这个值是PUMA/ISAC计算的
- 当前半轴的扭矩
- 当前发动机的转速
- 当前的油门位置
- 进气压力
- 测功机转速
- 测功机的电磁转矩
7.1.1 在RG/V模式下的车辆的仿真模型
这张图展示了在RG/V模式下的车辆仿真中,各个控制器和各个参数是如何相互影响的
- 道路坡度的目标值,是由 P400设定的,或者PUMA设定
- RAMPGENDG 控制器((ramp generator for the road gradient)
- RLS软件进程,计算带坡道阻力的道路阻力,风阻等
- VEHICLE软件进程,仿真车辆的惯量
- DRV软件进程,设定传动比和传动效率
- PIL软件进程,仿真发动机和车辆之间的扭矩传递阻尼(6a是FCTGEN软件进程,来进行离合模拟)
- 道路阻力
- 车辆加速度(和制动请求值)
- 轮速
- 车轮力(从发动机的驱动扭矩中得出)
- 当前车速
- 模拟发动机转速
- 发动机的驱动扭矩
- 当前台架的转速
- 离合位置
- 传动系扭矩
- 传动轴扭矩控制的请求值
下图展示了道路阻力模拟模型,参考数字的含义与前一个数字相同。
7.2 在PUMA/ISAC系统中控制器的用法
PUMA Open/ISAC系统提供了一系列的控制器,比如发动机的过程自适应控制器engine progressive adaptive controllers (ENPAC),斜率生成器 ramp generators (RAMPGEN),和PI控制器 PI controllers。
//这里只写了有什么
7.3 ENPAC控制器
为了提高性能和简化参数, ENPACN,ENPACT,ENPACX控制的控制架构可以理解成是继承于ENPAC。ENPAC控制架构首次在PUMA Open V1.4.1中公布,它提供了更简单的参数化配置来控制一系列的控制程序,比如发动机转速和车速控制,扭矩控制等
通用的ENPAC控制器的架构可以看做是带有非线性参数的PI控制器,这些非线性的参数可以看做是基于时序变量的误差调度的函数,从控制器的性能角度来看,时序变量可以理解成为一个有时序变量决定的比例和积分增益的动态适应。在这个实现中,时序变脸被选为故障信号的过滤版本,因此,控制器增益可以看做是误差项
ENPAC架构如下所示
//这里我将 Scheduling variable 翻译为时序变量,不知道用什么词来翻译
- 滤波
- 比例环节
- 积分环节
- 时序变量过滤
7.3.1 滤波
- fg
这是一个二阶低通滤波器,可以过滤不想要的噪声
这个值值此滤波器的截止频率
对于扭矩滤波,通常在15Hz左右,速度滤波一般设置为0
7.3.2 比例部分
参数如下解释
- Kp
比例增益
比例增益的目的是补偿误差,更大的比例增益,反应越剧烈
kp的值可以咋0 - 1000之间 - min. Kp factor
比例增益的折算系数
增益衰减可以看做是 Kp * Min.KP 系数而且它只在时序变量在范围内起作用,这个范围可以在 Progression limit 设置
衰减系数通常设置在0 - 1之间
比如
Min. KP factor = 0.0; Kp is reduced to 0
Min. KP factor = 0.2; Kp is reduced to 20%.
Min. KP factor = 1.0; no reduction
- Progression limit
这个值设定了增益衰减生效的范围,这个范围之外,增益衰减不起作用
progression limit设置为输入范围的百分比,输入烦恼为是由控制变量的最大最小值决定的,比如在最大发动机转速和0之间
例:
假设发动机的转速控制的progression limit设置为5%
这种情况下, progression limit 代表5% 的最大发动机转速,当请求值和实际值都在5以下的时候,比例增益 Kp 将转化为 Kp * Min. KP
增益衰减在小值的时候是很有用的,在实际应用中,增益衰减提升稳态状态的表现,合理设置Min. KP factor 和progression limit可以有效的减少超调
progression limit 通常设置为 0-10%之间
如果设置为0,增益衰减就不会启动
7.3.3 积分环节
下面是控制器中的积分环节的用法
-
If
控制器对的积分增益
下面解释积分增益乘以非线性函数 FInt
-
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 代表积分器
7.3.4 时序变量滤波器 Scheduling Variable Filter
- Schedule fg
时序变量滤波器定义了时序变量的滤波程度
在这个实现中,误差信号作为时序变量,时序滤波器决定了误差的变化如何影响在比例和积分环节中非线性函数
通常来讲,时序变量应该慢慢变化的,因此,时序变量滤波器的截止频率 fg 应该在 1-5 Hz,如果 fg设置为0,则时序变量的截止频率将会设置为25Hz
7.3.5 ENPAC控制器的标准格式
标准格式保证了不同类型发动机控制器设置的兼容性,在这种情况下,很多变量都使用他们标准值,当发动机更换后,控制器就不需要更换了,控制参数将会自动根据新发动机的设定参数而重新设定控制器参数,通常来讲,标准参数是发动机指定的标准参数,可以从发动机的铭牌中读到
需要说明额是标准的参数没有物理值单位,推荐ENPAC控制器的标准格式对ENPAC控制器进行性能调优,当参数需要实际的物理值的时候,下面的公式可以用来计算标准格式的参数
7.3.6 ENPAC作为发动机转速控制
当ENPAC 用来作为发动机转速控制器的时候,下面的参数将作为输入和输出值
- 输入1:发动机转速请求值
- 输入2:发动机的实际转速
- 输出:油门位置设定值
7.3.6.1 推荐的打开ENPAC 发动机转速控制器的方式
- 设置If_lin,If,progression limit为0
- 设置max.dAlpha/dt为100
- 一步一步的增加Kp直到控制变量开始震荡
- 找到 progression limit 的上限:通过增加progression limit来使闭环控制响应变得稳定
- 找到 progression limit 的下限:通过降低progression limit 在低阶极限时,控制回路又开始振荡
- 设置 progression limit,在上下限的中间位置
- 如果需要的话,重新调整 Kp
- 逐步增加 If直到控制回路开始稳定
- 通过降低 max.dAlpha/dt 使控制回路变得稳定
10.增加 If_lin 来移除稳态阶段的误差
7.3.7 ENPAC作为发动机的扭矩控制
//类似,需要再看,到此为止
7.3.8 ENPAC作为发动机的外特性控制器
7.3.9 ENPAC作为车速控制器
当 ENPAC用来控制车速的的时候,输入输出如下
输入1:车速请求值
输入2:车速实际值
输出:油门位置请求值
7.3.9.1 调整ENPAC控制车速的方法
和控制发动机转速一样
7.4 CORRECT 控制器
Torque Correction Controller (CORRECTT) 用来控制测功机的扭矩输出
7.4.1 CORRECT控制器的参数
//先知道是什么,到此为止
7.4.2 CORRECT的标准格式
//定义了扭矩是如何控制的,到此为止
7.5 PI控制器
PI控制器用来用来最小化请求值和实际值的差异,PI控制器提供两个输入,P和I根据实际请求值,有 K_red_act 值降低
下面的描述了该控制器的参数
- 输入1:测功机转速的请求值
- 输入2:当前测功机的实际值
- 输出:测功机扭矩的设定值
7.5.1 PI控制器的参数
- Kp
比例增益
任何请求值和实际值的差异值都会造成与此差异有比例关系的设定值,Kp越大,控制器应对请求值和实际值之间的差异的表现越大
有效的值: 0.0 ≤ n ≤ 50.0 - K_red
最小折算系数
有效的值:0.0 ≤ n ≤ 1.0 - Ti
积分时间
积分环节用来提升控制器的性能,积分环节只要请求值和实际值有差异的时候就会一直起作用,如果Ti 太大了,积分环节的作用就会变小,Ti对的时间越小,实际值达到目标值的事件越短
有效的值: 1 ≤ n ≤ 1000 [ms] - N_red
下降速度限制
在N_red以上不会reduction,在reduction一半到reduction范围内,reduction保持增加
7.5.2 PI控制器的标准格式
对于PI控制器,标准格式是控制器的使用数量,没有物理单位,但是已经和先关的车辆或发动机参数关联了。
标准格式确保确保控制器设置的箭筒,当更换发动机的时候,可以使用相同的控制参数
下面的参数用到了标准格式的PI控制器
- For BRAKE controller
Norm_input: DYT, Nominal speed [rpm]
Norm_output: DYT, Nominal torque [Nm]
Norm_input: VEH, Max. vehicle speed [km/h]
Norm-output: VEH, Max. brake torque [Nm]
7.5.3 如何调整 PI控制器
如果实际转速和请求转速相差过大,你需要调整控制器,建议遵循以下步骤
- 设置一个较高的Ti时间,保证积分表现不会有太大的作用
- 设置 K_red 为 1.0,N_red 为 10 rpm
- 增加请求值的同时慢慢的一步步的增加 Kp,通常Kp从1开始增加
- 增肌 Kp 直到控制循环开始稳定
- 降低 Kp 到刚刚的稳定值的70%的位置,一个好的积分环节的值通常在控制器输出稳定并且在高频的频率中
- 降低积分时间 Ti 直到达到你想要的响应
- 设置 K_red 的值小于1来使当实际值达到目标值的时候曲线保持平滑
7.5.3 典型的PI控制器
- PICONTN:Dyno Speed
- PICONTS:Dyno Stop
- PICONTH:Dyno Hard Shutdown
- PICONTS:Dyno Speed Synch
- PICONTL:Road Grade
7.6 RAMPGEN 斜率生成器 Ramp Generators
在 ISAC 400中有如下的斜率生成器
- RAMPGENDN:RAMP Dyno Speed
- RAMPGENDT:RAMP Dyno Torque
- RAMPGENDS:RAMP Dyno Stop
- RAMPGENDH:RAMP Dyno Hard Shutdown
- RAMPGENDG:RAMP Road Grade
- RAMPGENS:RAMP Engine Speed
- RAMPGENT:RAMP Engine Torque
- RAMPGENA:RAMP Engine Alpha
- RAMPGENX:RAMP Engine x
- RAMPGENV:RAMP Vehicle Speed