当前位置:文档之家› 基于LQR控制的主动悬架优化设计

基于LQR控制的主动悬架优化设计

基于LQR 控制的主动悬架优化设计摘要:根据汽车行驶性能的要求,本文以1/4车辆模型为例,建立汽车的动力学模型,利用线性二次最优控制理论对主动悬架的LQG 控制器进行设计,并运用MATLAB/simulink 对汽车动力学模型进行仿真。

结果表明: 具有 LQG 控制器的主动悬架对车辆行驶 平稳性和乘坐舒适性的改善有良好效果。

关键词:主动悬架;被动悬架;LQG 控制器 引言悬架系统是汽车的重要部件, 对于汽车的平顺性、操稳性和 安全性都有着重要的影响, 而主动悬架是悬架发展的必然方向。

控制器的设计对于主动悬架性能的发挥起着重要的作用, 本文中以1/4汽车主动悬架为研究对象,建立汽车动力学模型和设计LQG 控制器算法,应用Matlab/Simulink 进行汽车系统的控制仿真。

1 基于线性二自由度汽车模型的建立 1.1 被动悬架系统的建立车辆悬架系统是一个多输入多数徐彤,为了研究的方便性以及更好地与车辆行驶的情况相吻合,文本一1/4车辆模型为研究对象,车辆模型如图1所示。

图1:被动悬架车辆1/4模型根据图1所示,建立一个被动悬架车辆1/4模型,首先建立运动微分方程:()()()()()b b s b w s b w w w t w g s b w s b w m x K x x C x x m x K x x K x x C x x =----⎧⎪⎨=--+-+-⎪⎩整理得:⎪⎪⎩⎪⎪⎨⎧+--+-+-+-=-+-+-+-=gw t b w t s b w s b w s b w s w b b s b b s w b s b s bx m K x m K K x m K x m C x m C x x m K x m K x m C xb m C x (1) 式中:s C 为悬架阻尼,s K 为悬架刚度。

选取状态变量和输入向量为:[]w bw b x x x xX = g x U =则可将系统运动方程及路面激励写成状态空间矩阵形式,即:BU AX X+= 其中,A 为状态矩阵,B 为输入矩阵,其值如下:⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎣⎡-----=0010001ws s w s w s w s bs b s b sbsm K K m K m C m C m K m K m C mC A ⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡=000w t m K B 将车身加速度、轮胎动变形、悬架动行程作为性能指标,即:T w b gw b x x x x x Y ][--=将性能指标项写为状态变量以及输入信号的线性组合形式,即:DU CX Y +=其中:⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡---=11001000bb b b m Ks m Ks m Cs m Cs C⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡-=010D 1.2 被动悬架系统的建立如图2所示,图2:被动悬架车辆1/4模型根据图2所示,建立一个主动悬架车辆1/4模型,首先建立运动微分方程:⎪⎩⎪⎨⎧+--=--+-=••••g w b s b b gw g t w b s w w U x x K x m U x x K x x K x m )()()( (3) 此时矩阵状态矩阵为:⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎣⎡---=0010010000w w bb m Ks Kt m Ks m Ks m KsA ⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎣⎡-=0000110w w b m m Ktm B ⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡--=1100100000b b m Ks m Ks C ⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡-=000110b m D1.3 路面模型的建立在分析主动悬架控制过程时,路面输入是一个不可忽略的重要因素,本文利用白噪声信号为路面输入激励,)(2)(2)(000t w U G t x f t x g g ππ+-=•其中,0f 为下截止频率,Hz ;G 0为路面不平度系数,m 3/cycle ;U 0为前进车速,m/sec ;w为均值为零的随机输入单位白噪声。

上式表明,路面位移可以表示为一随机滤波白噪声信号。

这种表示方式来源于试验所测得的路面不平度功率谱密度(PSD )曲线的形状。

我们可以将路面输入以状态方程的形式加到模型中:⎪⎩⎪⎨⎧=+=•XC Y WF X A X road road road road road 1,2,2,000==-==road road road g road C UG B f A x X ππ;D=0;考虑路面为普通路面,路面不平系数G 0=5e-6m 3/cycle ;车速U 0=20m/s ;建模中,路面随机白噪声可以用随机数产生(Random Number )或者有限带宽白噪声(Band-Limited White Noise )来生成。

本文噪声已经由TIN4文件已经给出,运用MATLAB/simulink 建立仿真模型如下:图3: 路面模型2 性能指标的确定LQG 控制设计中的目标性能指数J 即车身加速度、悬架动行程和位移的加权平方和的积分值,表示如下:dt x q x x q x x q TJ Tb w b g w T ⎰••∞→+-+-=0232221])()([1lim为了据此求解状态反馈增益,必须用状态变量以及输入变量来表示上式:dt NU X RU U QX X TJ T T T TT ⎰++=∞→0]21lim其中 Q :对应于状态变量的权重矩阵;R :约束输入信号大小的权重矩阵; N :耦合项。

对于q 1,q 2,q 3表达的性能函数,可以整理为:dt x q x x q x x q TJ Tb w b g w T ⎰••∞→+-+-=0232221])()([1limdt x x x x x Q x x x x x Tw b g w b Tw b gw bT ⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡----=••••∞→⎰00][1lim其中⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=213000000q q q Q 由于DU CX Y +=所以CXQ D U U D Q C X U D Q D U X C Q C X DU CX Q DU CX Y Q Y T T N T T RT T Q T T T T 000000)()(+++=++=式中q 1,q 2,q 3分别为轮胎位移,悬架动行程,车身垂直加速度的加权系数。

因此可以求出Q 、R 、N :⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡--++----+==11122212222222220000000000000000q q q m K q q m K q m K q m K q C Q C Q bSbSbSbST; b T m D Q D R 10==;⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡-=0000s s TK K D Q C N ;利用MATLAB 函数LQR 来计算状态反馈K :),,,,(][N R Q B A lqr E S K =其中,K 为最优状态反馈矩阵;S 为Riccati 方程解;E 为系统特征值。

因此可以得到主动控制力U=-KX 。

)(54321g w b w b x k x k x k x k x k U ++++-=••加权系数的选取决定悬架的性能,如果车身垂直加速度加权系数较大,则可以提高乘坐的舒适性;若轮胎动位移的加权系数较大,则车辆的操纵稳定性较好。

3 仿真分析车辆的各个参数会在附录程序中给出,根据要求建立simulink 模型为:图4:simulink 模型图5:车身加速度对比图6:悬架工作空间对比图7:轮胎位移对比图8:主动悬架与被动悬架的幅频对比4总结本文首先建立了二自由度1/4车体模型。

并运用线性二次最优化理论设计了车辆主动悬架的LQG控制器。

借助MATLAB/Simulink软件进行仿真分析。

分析结果表明,所设计的最优主动悬架显著地降低了车身的垂向振动加速度。

与被动悬架相比,采用LQG控制器的悬架动行程和车轮动位移也都得到了良好的改善。

所以基于线性二次最优控制理论进行的主动悬架LQG控制器的设计是行之有效的。

附录:run TIN4;Mb=320; % 簧上质量Mw=40; % 簧下质量Ks=2*10^4; % 悬架弹簧刚度Kt=10*Ks; % 轮胎等效刚度Cs=1000; % 悬架减振器阻尼G0=16e-6; % 路面不平度系数U0=20; % 车辆速度f0=0.1; % 下截止频率q1=100; % 悬架动行程加权系数q2=1000; % 轮胎动载荷加权系数q3=0.05; % 车身加速度加权系数n0=0.1; %参考空间频率Tin=(0:0.01:100)';wr=[Tin w1];[pb,fsb]=pwelch(wr,[],[],1024,400,'onesided');%生成高斯白噪声功率谱密度%路面输入状态空间A=-2*pi*f0;B=2*n0*pi*sqrt(G0*U0);C=1;D=0;%被动悬架状态空间A1=[-Cs/Mb,Cs/Mb,-Ks/Mb,Ks/Mb;Cs/Mw,-Cs/Mw,Ks/Mw,-(Ks+Kt)/Mw;1,0,0,0; 0,1,0,0];B1=[0;Kt/Mw;0;0];C1=[-Cs/Mb,Cs/Mb,-Ks/Mb,Ks/Mb;0,0,0,1;0,0,1,-1];D1=[0;-1;0];%主动悬架状态空间%A2=[0,0,-Ks/Mb,-Ks/Mb;0,0,-Ks/Mw,-(Kt+Ks)/Mw;1,0,0,0;0,1,0,0];A2=A1;B2=[0,1/Mb;Kt/Mw,-1/Mw;0,0;0,0];%输出三个C2=[0,0,-Ks/Mb,Ks/Mb;0,0,0,1;0,0,1,-1];D2=[0,1/Mb;-1,0;0,0];%数出四个C3=diag([1,1,1,1]);D3=[0,0;0,0;0,0;0,0];%Q、R、NQ0=[q3,0,0;0,q1,0;0,0,q2];Q=[0,0,0,0;0,0,0,0;0,0,Ks*Ks*q3/(Mb*Mb)+q2,-Ks*Ks*q3/(Mb*Mb)-q2;0,0,-Ks*Ks*q3/(Mb*Mb)-q2,Ks*Ks*q3/(Mb*Mb)+q1+q2];R=[q1,0;0,q3/(Mb*Mb)];N=[0,0;0,0;0,-Ks*q3/(Mb*Mb);-q1,Ks*q3/(Mb*Mb)];[K,S,E]=lqr(A2,B2,Q,R,N); K=K(2,:)。

相关主题