基于Matlab的汽车运动控制系统设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于MATLAB的汽车制动系统设计
杨东
(昆明理工大学交通工程学院昆明 650500)
摘要:本课题以汽车制动控制系统的设计为应用背景,利用MATLAB语言并结合制动理论,开发能进行制动系匹配设计进行设计与仿真。
首先对汽车的运动原理进行分析,建立控制系统模型,确定期望的静态指标(稳态误差)和动态指标(超调量和上升时间),最终应用MATLAB环境下的M文件来实现汽车运动控制系统的设计。
其中M文件用step( )语句来绘制阶跃响应曲线,根据曲线中指标的变化进行PID校正。
关键词:PID 校正;制动系;匹配设计;稳态误差;最大超调量
1引言
随着国民经济的快速发展,道路条件得到不断改善,高速公路与日俱增,汽车速度普遍提高。
近年来,由于国内汽车保有量的迅速增长(超过4000万辆),交通事故频繁发生,汽车的安全性能受到普遍重视。
汽车制动系统的结构和性能直接关系到车辆、人员的安全,是决定车辆安全性的主要因素。
进行汽车运动性能研究时.一般从操纵性、稳定性和乘坐舒适性等待性着手。
但近年来.随着交通系统的日趋复杂,考虑了道路环境在内的汽车运动性能开始受到关注。
因此,汽车运动控制系统的研究也显得尤为重要。
在现代控制工程领域中,最为流行的计算机辅助设计与教学工具软件是MATLAB语言。
它是一种通用的科技计算、图形交互系统和控制系统仿真的程序语言。
在可以实现数值分析、优化、统计、自动控制、信号及图像处理等若干领域的计算和图形显示功能[1]。
非常适合现代控制理论的计算机辅助设计。
MTALAB还提供了一系列的控制语句[2,3],这些语句的语法和使用规则都类似FORTRAN、C等高级语言,但比高级语言更加简洁。
它已经成为国际控制界最为流行的计算机辅助设计及教学工具软件,在科学与工程计算领域有着其它语言无与伦比的优势。
2 汽车制动系的匹配设计
2.1确定设计目标
2.1.1车辆类型及整车质量参数
首先要明确设计车辆的类型及相关的整车质量参数,这些内容由总布置给出。
例如某车型定义为座位数为7个用于载客的车辆,根据法规GB/T 15089的规定,属于M1类车辆。
整车的质量参数如下:
空载质量(kg)一一1005
空载质心高度(mm)一一640
空载前轴载荷(kg)一一482
一满载质量(kg)一一1550
满载质心高度(mm)一一690
满载前轴载荷(kg)一一620
明确以上整车质量参数后,计算制动系所用到质心到前、后轴的距离等参数均可推算出来。
整车质量参数的输人语句
如下:
cle
clear
M1=l;%属于M1类车辆填1,否则填0
NI=0;%属于N1类车辆填1,否则填O
OTHER=0;%属于其它类车辆填1,否则填0
ma_k=1005;%空载质量(kg)
ma_m=1550;%满载质量(kg)
s=9.80665:%重力加速度(m/s2)
hg__k=640;%空载质心高(mm)
hg_m=690;%满载质心高(mm)
L=2500:%轴距(mm)
load_f_k=482;%空载前轴负荷
load_f_m---620;%满载前轴负荷
b_k=load_f k*L/ma_k;%空载质心到后轴的距离(mm)
b m=load_f m*L/ma_m;%满载质心到后轴的距离(mm)
a_k=L-b_k;%空载质心到前轴的距离(mm)
a_m=L--b_m:%满载质心到前轴的距离(mm)
G-k=ma-k*g;%空载重力(N)
G-m=ma_m*g;%满载重力(N)
2.1.2满足国家法规要求
目前国内关于制动系统方面有两个强制性标准,一个是GB厂r1267“1999《汽车制动系统结构、性能和试验方法》,在汽车制动系统结构、性能方面的内容在技术上是等效采用ECE 第13号法规。
另一个是GB7258—2004{机动车安全技术条件》中关于制动系统的部分。
2.1.3制动系统的结构配置
根据整车的市场定位、目标价格及供应商配套资源的情况,再加上以往开发经验,选定制动系的配置结构和主要参数。
例如:该车型初选制动系的结构为前盘后鼓、真空助力制动形式,管路布置为Ⅱ型,制动力调节装置采用感载比例阀。
制动系相关参数输入如下:
f=0.7;%路面附着系数
D=20.64; %主缸直径(ram) Dl=50.8; %前轮缸径(ram) D2=20.64; %后轮缸径(ram) CI=0.7; %前轮制动器因数 C2=2.398; %后轮制动器因数
RI=98.5; %前轮制动器作用半径(ram) R2=110; %后轮制动器作用半径(ram) rd=281; %车轮有效半径(mm)
p k=3; %感载比例阀空载拐点液压(MPa) p_m=7.2; %感载比例阀满载拐点液压(MPa) u=O .25; %感载比例阀分配比 ip=4.2; %制动踏板杠杆比 is=3.5; %助力器助力比
np=O .85; %制动踏板和主缸之间的传动效率 Pol=810; %最大助力点输人力(N) Pw=9.31; %真空助力器拐点压力(MPa) 2.3制动性能计算 2.3.1同步附着系数计算
制动力分配曲线上B 线与I 线交点处的附着系数,我们称为同步附着系数汽车在同步附着系数上制动时前、后车轮才能同时抱死,它是由汽车结构参数决定的、反映汽车制动性能的一个参数。
用循环语句for end 计算B 线与I 线方程纵坐标的差值,用条件语句ffend 判断当其小于一定的数值(设定公差)时可认为该点即为B 线与I 线的交点。
以求空载同步附着系数为例,通过以下语句可以实现:d2_k=abs((0.5*(G_k /hg_k*2+4*hg_K*L*m /C_k)'0.5-((c-k*b_k /hg_k+2*m)))-(k2*m+(Fwr_k-k2*lrwLk)));
%d2_k 为设定公差(<o .1),m 值即为交点横坐标(前制动器制动力)
得出m 值之后,通过空载I 线方程即可求出对应的后制动器制动力,根据公式:即可求出空载同步附着系数。
满载同步附着系数亦可通过同样方法求出。
2.3.2最小制动距离计算
由汽车理论,制动距离的计算式为:
S=V/3.6(t a +t s /2)+V 2
/25.92a max (12)
式中:a t —轿车制动系统协调时间a t s
04.0
s t —减速度增长时间s t s 2.0≈
m ax a —最大制动减速度m ax a = E 8.0=r *g*0.8=7.73m s /2
由于GBfrl2676制动性能必须在车轮不抱死的情况下获得。
故B 线与前轮抱死线(f 线)或后轮抱死线(r 线)的交点,即为车轮即将抱死而未抱死时汽车能发挥的最大制动性能点。
该点的在制动力分配曲线上的横、纵座标值即为此时前、后制动器的制动力值。
交点的求法与同步附着系数交点的求法类似,以空载口线与f 线交点为例,可通过以下语句实现:
dfk=abs((o .5*(c k /hg k4(b k*2+4’hg_k+L *fi /G_k)*0.5-(Gj 【+b_k /hg_k*2*G)))-((L-f*hg_k)*fi /(f*hg_k)-G_k*b_k /hg_k));
%d2£-k 为设定公差(<o .1),fi 值即为交点横坐标(前制动器制动力)
得到前、后制动器制动力后,将减速度、制动初速度和制动器作用时间代人式(12)可求出制动距离。
2.3.3制动系其余性能参数的计算
制动系其余性能参数包括管路失效时应急制动的制动距离、制动减速度、管路压力、踏板力,还有驻车制动能力等。
这些参数的计算与上述行车制动性能参数的求法类似,根据相关制动理论。
通过MATLAB 编辑程序得到需要的结果。
这些参数的求法无须赘述。
2.4制动系参数的匹配设计
根据以上计算结果,可得该车型的制动性能参数: 空载同步附着系数 1.0307 空载制动距离(m) 42.2979
空载制动减速度(m/s 2
) 6.58474 空载前轮管压(MPa) 4.5188 空载制动踏板力(N) 121.0022 满载同步附着系数 0.92461 满载制动距离(m) 42.542
满载制动减速度(m /s 2
) 6.5422 满载前轮管压(MPa) 6.2486 满载制动踏板力(N) 167.3219
从表可看出,该车型空、满载同步附着系数较高,在常遇路面制动时,不会出现后轮先抱死的情况。
同时,空、满载制动距离均满足GB/TI12676的规定(制动初速度=80km /h ,制动
距离≤50.7m ,制动减速度≥5.8 m /s 2
),管路压力与制动踏板力均比较小。
从图5也可看出,空、满载利用附着系数与制动强度的关系曲线是在法规界定线之内的,并且曲线较靠近图中的对角线(妒=z)。
利用附着系数越接近制动强度,地面的附着条件发挥得越充分,汽车制动力分配的合理程度越高。
由图上看,该车型的制动力分配还是比较合理的。
从图6可看出,该车型在各种附着系数路面上制动时,附着效率可达65%以上。
对于应急制动及驻车制动的性能亦可通过得到的参数与法规进行比较,看是否满足法规要求。
不再——叙述。
如果制动系统结构配置不合理,就有可能使某些制动性能参数达不到法规要求。
这个时候就需要对制动系进行匹配,通过改变前、后制动器的作用半径、轮缸大小,或者调整感载比例阀的拐点等使制动系的性能满足法规要求。
制动系结构配置参数方案更改后再运行m 文件程序进行计算,就可得到不同的制动性能曲线和性能参数。
这时有可能会出现诸多能够满足法规要求的方案,这些方案的优劣实践上需要权衡各种结构配置的可靠性、成本、产品通用性或现有产品的改动量等进行综合考虑,很多时候还会根据以往开发经验进行判断。
3 汽车运动控制系统分析
考虑图1所示的汽车运行控制系统。
如果忽略车轮的转动惯量,并且假定汽车受到的摩擦阻力大小与运动速度成正比,方向与汽车运动方向相反,则该系统可以简化成简单的质量
阻尼系统[4]。
根据牛顿运动定律,该系统的模型(亦即系统的运动方程)表示为
其中,u 为汽车的驱动力。
假定m=1000kg ,b=50N.s/m ,u=500N 。
下一步讨论控制系统的设计要求。
当汽车的驱动力为500N 时,汽车将在5秒内达到
10m/s 的速度。
由于该系统为简单的运动控制系统,因此将系统设计成8%的超调量和1.8%的稳态误差。
故控制系统的性能指标为:
(1) 上升时间 < 5s; (2) 最大超调量 < 8%; (3) 稳态误差 < 1.8%。
其中,稳态误差为静态指标, 超调量和上升时间为动态指标。
图1 汽车运动示意图
4 汽车运动控制系统模型建立
为了得到控制系统的传递函数,对式(1)进行拉普拉斯变换。
假定系统的初始条件为零,则动态系统的拉普拉斯变换为既然系统输出是汽车的运动速度,用Y(S)替代V(S),得到
msV s +bV s =u(s) (2)
Y s =V(s)
msV s +bY s =U(s) (3)
该控制系统的传递函数为
Y(s)/U(s)=1/ms+b (4)
在此,我们建立好了系统的模型,后面就进行研究系统的校正设计和仿真。
5 汽车运动控制系统PID 控制器的设计
传统的PID 调节器的动作规律是:即PID 控制器的传递函数为
K p +K I /s+K D s=(K D s2+K P s+K I )/s (5)
速度v 加速度
这是典型的按偏差控制的负反馈结构,其中e是偏差,即输出量与设定值之间的差;u 是控制量,作用于被控对象并引起输出量的变化。
Kp是比例系数,其控制效果是减少相应曲线的上升时间及静态误差,但无法做到消除静态误差,因此,单纯的P校正是有差调节,一般不会单独使用。
Ki是积分增益系数,其控制效果是消除静态误差。
I是无差调节,但它会延长过渡过程时间,因此,一般也不会单独使用。
Kd是积分增益系统,其控制效果是增强系统的稳定性,减小过渡过程时间,降低超调量。
Kp,Ki,Kd与系统时间域性能指标之间的关系见下表1。
本表的意义是PID参数增大时各系统性能指标的情况。
当然,各参数与性能指标之间的关系不是绝对的,只是表示一定范围内的相对关系。
因为各参数之间还要相互影响,一个参数变了,另外两个参数之间的控制效果也会改变[4]。
因此,在设计和整定PID参数时,上表只起了一个定性的辅助作用。
下面,我们将更加清晰地了解PID校正的基本功能在MATLAB下实现的方法。
6 PID校正的设计过程
我们从系统的原始状态出发,根据阶跃响应曲线,利用串联校正的原理,以及参数变化对系统响应的影响,对静态和动态性能指标进行具体的分析,最终设计出满足我们需要的控制系统。
具体设计过程如下:
(1)分析未加校正装置的系统阶跃响应
根据前面的分析,我们已经清楚了,系统在未加入任何校正环节时的传递函数,见表达式(4),下面我们绘制原始系统的阶跃响应曲线,相应的程序代码如下:
close all;
clear;
m=1000;
b=50;
num=[1];
den=[m b];
disp('原系统传函为:' )
sys=tf(num,den);
printsys(num,den);
t=0:0.01:120;
%step(sys,t);
step(10*num,den,t);
axis([0 120 0 0.2]);
title( 'System Step Response before CORRECTION');
xlabel('Time-sec');
ylabel('Response-value');
grid;
text(45,0.17,'原系统')
得到的系统阶跃响应如图2所示。
从图2中可以看出,系统的开环响应曲线未产生振荡,属于过阻尼性质。
这类曲线一般响应速度都比较慢。
果然,从图和程序中得知,系统的上升时间约100秒,稳态误差达到98%,远不能满足跟随设定值的要求。
这是因为系统传递函数分母的常数项为50,也就是说直流分量的增益是1/50。
因此时间趋于无穷远,角频率趋于零时,系统的稳态值就等于1/50=0.02。
为了大幅度降低系统的稳态误差,同时减小上升时间,我们希望系统各方面的性能指标都能达到一个满意的程度,应进行比例积分微分的综合,即采用典型的PID校正。
图2 未加入校正装置时系统的阶跃响应曲线
(2) PID校正装置设计
对于本例这种工程控制系统,采用PID校正一般都能取得满意的控制结果。
此时系统的闭环传递函数为:
Y(s)/U(s)=(K D s2+K P s+K I)/(m+K D s2+ b+K P s+K I) (6)
Kp,Ki和Kd的选择一般先根据经验确定一个大致的范围,然后通过MATLAB 绘制的图形逐步校正。
这里我们取Kp=700,Ki=100,Kd=100。
程序代码为:
hold on;
Kp=700;
Ki=100;
Kd=100;
num=[Kd Kp Kd];
den=[m+Kd b+kp Ki];
disp( ‘PID校正后的闭环传函为:’ )
printsys(num,den);
t=0:0.01:50;
step(u*num,den,t);
axis([0 11 0 50]);
title( ‘Syetem Step Response after PID
CRRECTION’ );
xlabel( ‘Time-sec’ );
ylabel( ‘Response-value’ );
grid on;
text(25,9.5, ‘Kp=700 Ki=100 Kd=100’ );
Maxpid=max(c);
disp( ‘PID的超调量为:’ )
Mppid=(Maxpid-10)/10
得到加入PID校正后系统的闭环阶跃响应如图3 所示。
从图3和程序运行结果中可以清楚的知道,系统的静态指标和动态指标,已经很好的满足了设计的要求。
上升时间小于5s,超调量小于8%,约为6.67。
具体值可由程序计算出。
图3 PID校正后系统的闭环阶跃响应曲线
7 总结
从该设计我们可以看到,对于一般的控制系统来说,应用PID控制是比较有效的,而且基本不用分析被控对象的机理,只根据Kp,Ki和Kd的参数特性以及MATLAB绘制的阶跃响应曲线进行设计即可。
在MATLAB环境下,我们可以根据仿真曲线来选择PID参数。
根据系统的性能指标和一些基本的整定参数的经验,选择不同的PID参数进行仿真,最终确定满意的参数。
这样做一方面比较直观,另一方面计算量也比较小,并且便于调整。
参考文献
[1]苏金明阮沈勇 . MATLAB6.1使用指南 [M]. 电子工业出版社 2002, (1)
[2]赵文峰 . MATLAB控制系统设计与仿真 [M]. 西安电子科技大学出版社 2002, (3)
[3]尹明泽丁春利 . 精通MATLAB[M]. 清华大学出版社 2006, (6)
[4]胡书琴严彩忠 . MATLAB下汽车运动控制简化模型的PID校正[J]. 微计算机信息 2007, 23(5)
[5]李智健 . 运用MATLAB进行汽车制动系匹配设计[J]. 装备制造技术 2008, (5)
[6]王锋 . 汽车制动系统的计算机仿真与动态模拟研究[J]. 南京工业大学出版社 2012, (9)
[7]李祖欣 . MATLAB在模糊控制系统设计和仿真的应用[J]. 系统仿真学报 2003, 15(1)
[8]刘航徐杜 . MATLAB在模糊控制系统设计与仿真中的应用[J]. 计算机应用研究 2001, 18(1)
[9]刘美丽 . Matlab汽车运动控制系统设计[J]. 自动化技术与应用 2010, 29(10)
[10]王望予 . 汽车设计第四版[M]. 机械工业出版社 2004, (8)
感谢您的支持与配合,我们会努力把内容做得更好!。