一级倒立摆的建模与控制分析.docx
《一级倒立摆的建模与控制分析.docx》由会员分享,可在线阅读,更多相关《一级倒立摆的建模与控制分析.docx(11页珍藏版)》请在冰豆网上搜索。
一级倒立摆的建模与控制分析
研究生《现代控制理论及其应用》课程小论文
一级倒立摆的建模与控制分析
学院:
机械工程学院
班级:
机研131
姓名:
尹润丰
学号:
201321202016
2014年6月2日
1.问题描述及状态空间表达式建立-1-
1.1问题描述-1-
1.2状态空间表达式的建立-1-
1.2.1直线一级倒立摆的数学模型-1-
1.2.2直线一级倒立摆系统的状态方程-5-
2.应用MATLAB分析系统性能-6-
2.1直线一级倒立摆闭环系统稳定性分析-6-
2.2系统可控性分析-7-
2.3系统可观测性分析-8-
3.应用matlab进行综合设计-8-
3.1状态反馈原理-8-
3.2全维状态反馈观测器和simulink仿真-9-
4.应用Matlab进行系统最优控制设计-.11-
5.总结-13-
1」可题描述及状态空间表达式建立
1.1问题描述
倒立摆是机器人技术、控制理论、计算机控制等多个领域、多种技术的有机结合,其被控系统本身乂是一个绝对不稳定、高阶次、多变量、强耦合的非线性系统,可以作为一个典型的控制对象对其进行研究。
倒立摆系统作为控制理论研究中的一种比较理想的实验手段,为自动控制理论的教学、实验和科研构建一个良好的实验平■台,以用来检验某种控制理论或方法的典型方案,促进了控制系统新理论、新思想的发展。
下对丁倒立摆系统,经过小心的假设忽略掉一些次要的因素后,它就是一个典型的运动的刚体系统,可以在惯性坐标系内应用经典力学理论建立系统的动力学方程。
下面采用其中的牛顿一欧拉方法建立直线一级倒立摆系统的数学模型。
1.2状态空间表达式的建直
1.2.1直线一级倒立摆的数学模型
图1.1直线一级倒立摆系统
本文中倒立摆系统描述中涉及的符号、物理意义及相关数值如表1.1所示
表L1直线一级倒立摆系统参数
符号
意义
实际数值
M
小车质量
L096kg
in
摆杆质量
0.109腰
f
小车摩擦力
0.1N/in/sec
1
摆杆转动轴心到杆质心的氏度
025m
I
摆杆惯量
0.00223kg*m*m
图1.2是系统中小车的受力分析图。
其中,NOP为小车与摆杆相互作用力的水平■和垂直方向的分量。
图1.2系统中小车的受力分析图
图1.3是系统中摆杆的受力分析图。
Fs是摆杆受到的水平方向的干扰力,Fh是摆杆受
到的垂直方向的干扰力,合力是垂直方向火角为a的干扰力Fg
分析小车水平方向所受的合力,可以得到以下方程:
Mx=F-fx-Nii
设摆杆受到与垂直方向火角为a的干扰力Fg,可分解为水平方向、垂直方向的干扰力,所产生的力矩可以等效为在摆杆顶端的水平干扰力FS垂直干扰力Fh产生的力矩。
FS=Fgsin:
Fh=Fgcos:
1-2
对摆杆水平■方向的受力进行分析可以得到下面等式:
d.
N「FS=m—7xlsin
1-3
Sdt2
即:
2・.一・
N=mxmlcosn-mHsin「Ffsin:
1_4
-Pmg入=m^l-lcos-
1-5
对图1.3摆杆垂直方向上的合力进行分析,可以得到下面方程:
2-
-PmgFgcos:
-mksinmkcosu
1-6
力矩平■衡方程如下:
1-7
Falsin:
cos^FalcossinPlsinNlcos^H-0
gg
代入PffiN,得到方程:
2Fglsin^co殂+2Fglcostsine+(I+mlcos29+mglsin日一ml282sin2+mXco由=0(1-8)
设8=兀+*,(4是摆杆杆与垂直向上方向之间的火角,单位是弧度),代入上式。
假设4<<1,则可进行近似处理:
cos=1,sin=,\—=0,cos2=1,sin2=
dt,,
忽略干扰力后,直线一级倒立摆系统是单输入二输出的四阶系统,考虑干扰力后,
直线一级倒立摆系统是二输入二输出的四阶系统。
其内部的4个状态量分别是小车的
位移x、小车的速度x、摆杆的角度9、摆杆的角速度e'o系统输出的观测量为小车的位移x、摆杆的角度90其控制量为小车的加速度e
将微分方程(1-12)化为关丁加速度输入量和角度输出量的传递函数:
1-13
亦_3
Rss2-29.4
1.2.2直线一级倒立摆系统的状态方程
实验所使用的直线一级倒立摆系系统是加速度X作为系统的控制输入,所以根据式
(1-12)建立系统的状态方程为:
整理后得到系统状态方程:
1ooOoooO-
-
■j•X•X.Ek,
将实际参数代入得到一级倒立摆系统的状态空间方程为:
10
00
00
029.4
x_100
户|001
2.1直线一级倒立摆闭环系统稳定性分析
构建如图1.4所示闭环系统,则系统的闭环极点为(-5.1381)、(5.1381)
R⑴3如)
图1.4闭环系统结构图
由丁有实部为正的极点,所以闭环系统不稳定,必须设计控制器使系统稳定。
可以通过MATLABSimulink中对其进行仿真,判断其稳定性。
构建图1.4所示系统的仿真程序e1,加入1m/s2的阶跃信号
由上图也能活楚的知道一级倒立摆系统是不稳定的
2.2系统可控性分析
系统的可控性可根据秩判据进行可控性判断。
线性定常连续系统完全可控的充
分必要条件是:
rank(BAB…An^B)=n,其中n为系统矩阵A的阶次,
M=(BAB…An」B)为系统的可控性矩阵。
matlab程序及运行结果如下:
>>A=[0100;0000;0001;0029.40];
>>B=[0;1;0;3];
>>T=ctrb(A,B);
>>rank(T)
ans=
4
由丁rank(Ic)=4,可见该系统是完全可控的。
2.3系统可观测性分析
系统的可控性可根据秩判据进行可控性判断。
线性定常连续系统完全可控的充
分必要条件是:
一c〕
CA
rankM—rank—n/rank(△广/AA广\—n
rankn—rank—niaiik(cac(a)c(a)c)—n
:
CAn」_j
其中n为系数矩阵A的阶次。
matlab程序及运行结果如下:
>>A=[0100;0000;0001;0029.40];
>>C=[1000;0010];
>>T0=obsv(A,C);
rank(T0)
ans=
4
由丁rank(T0)=4,故该系统是可观测的。
3.应用matlab进行综合设计
3.1状态反馈原理
设n维线性定常系统:
x=AxBu,y=Cx
其中x,u,y分别是n维、p维、q维向量;ABk院别是n*n维,n*p维,n*q维实数矩
阵。
状态反馈系统的控制量u取为状态x的线性函数:
u=v-Kx
其中,v为p参考输入向量,K为p*n维实反馈增益矩阵。
加入状态反馈后系统的结构图如图3.1所示:
图3.1系统的全状态反馈结构图
则系统状态反馈的动态方程为:
x=A「BKxBv,y=Cx
3.2全维状态反馈观测器和simulink仿真
状态反馈的的实现是利用状态反馈使系统的闭环极点位丁所希望的极点位置。
而状态反馈任意配置闭环极点的充分必要条件是被控系统可控。
直线一级倒立摆系统是可控的。
设系统期望极点为孔\\&]=匚2-3-4+3i-4-3i】,则系统期望特征多
项式为:
a*si=!
s-'£.1s-%s-^3s-%
列写状态反馈系统的特征多项式:
detSI-ABK
令两个特征多项式各项系数对应相等,则可解出K阵。
由matlab求出状态反馈矩阵
K,编程如下:
A=[0100;0000;0001;0029.40];
>>B=[0;1;0;3];
>>K=acker(A,B,[-2-3-4+3i-4-3i])
K=
-5.1020-5.884435.16736.2948
系统加入0.1m/s2的阶跃输入,在构成的状态反馈调节器控制下,MATLAB进行系统的阶跃响应仿真,编程如下:
A=[0100
0000
0001
0029.40];
B1=[0103];
C=[1000
0100
0010
0001];
D1=[0000]';
dt=0.005;
ieof=801;
fori=1:
ieof;
U(:
i)=[0.1];
T(i)=i*dt;
end;
%%?
散化
op=[-2%期望极点
-3
-4+3i
-4-3i];
K=place(A,B1,op)
Ak0=[(A-B1*K)];
Bk0=[B1];
Ck0=[C];
Dk0=[D1];
lqrop=eig(Ak0);
x=[0000]';
dt=0.005;%离散时
[dA,dB]=c2d(Ak0,Bk0,dt);%经离散化得到离散状态方程
Ak1=[(A-B1*K)];
Bk1=[B1];
Ck1=[C];
Dk1=[D1];
sys=ss(Ak1,Bk1,Ck1,Dk1);
[Y,X]=lsim(sys,U,T);
plot(T,-Y),
grid;
legend('Cart','VCart','single','Vs');
图3.2极点配置为[-2-3-4+3i-4-3i]时的全状态反馈仿真图
横轴时间单位秒,从图中可以看出,系统稳定。
4.应用Matlab进行系统最优控制设计
最优控制问题就是寻找一个控制系统的最优控制方案或最优控制规律,使系统能最优地达到预期的目标。
对丁线性连续系统,提出二次型目标函数:
J=1xT(tf)Sx(tf)£:
XTtQtxtuTtRtutdt
22t0
其中,R(t)正定,S及Q(t)半正定,且设它们为对称矩阵,t0,tf固定。
当tf趋近无穷时,在y(t)=x(t)情况下,该问题即为无限时间输出调节器问题。
此时稳态误差项趋丁零,在此题目中假设二次型最优控制性能指标为:
O0
J=j[xTQxuTRu]dt
0
500
0
0
01
0
30
0
0
其中:
Q=
0
0
50
0
0
0
0
10一
R=1
Matlab编程如下:
A=[0100;0000;0001;0029.40];
B=[0;1;0;3];
C=[1000;0100;0010;0001];
D=[0000];
Q=[500000;03000;00500;00010];
R=1;
>>[K,P,e]=lqr(A,B,Q,R)
K=
-22.3607-17.469770.104113.2462
在simulink下进行仿真模型的建立,如图4.1:
图4.1LQR仿真模型
将K输入后,进行仿真,结果如图4.2:
由图可见,在二次型最优控制下系统稳定性得到明显改善。
5.总结
通过对一级倒立摆的分析可知,在开环情况下,倒立摆的平衡系统是不稳定的的;通过秩判据可知,其系统是可控可观测的;通过状态反馈对极点进行配置后,使极点都位丁虚轴左侧,则经过极点配置的倒立摆稳定,乂进行了LQRS法对倒立
摆进行控制,也可以使系统稳定。
以上都是利用MATLABt机器人进行分析和设计,对其系统进行了稳定性、可控性、可观测性分析,以及极点配置和最优控制设计,从中我们可以看出,MATLA虾为一种交互式计算分析软件,其强大的运算分析功能,集科学计算、程序设计和可视化丁一体的高度集成化软件环境,为控制系统的分析设计,特别是高阶系统综合设计,提供了一种方便可靠的途径。