一级倒立摆分析

一级倒立摆的极点配置及仿真

摘要

倒立摆系统是一个复杂的、高度非线性的、不稳定的高阶系统,是学习和研究现代控制理论最合适的实验装置。倒立摆的控制是控制理论应用的一个典型范例,一个稳定的倒立摆系统对于证实状态空间理论的实用性是非常有用的。

本文主要研究的是一级倒立摆,首先应用动力学方程建立一级倒

立摆的非线性数学模型,采用小偏差线性化的方法在平衡点附近局部线性化得到线性化的数学模型。然后通过输入单位阶跃信号分析系统的开环稳定性,由线性化得到的状态方程判断系统的能控性和能观性,结合系统的稳定性条件、调整时间以及超调量找到合适的极点,运用极点的配置方法(Matlab的acker函数)算出状态反馈增益矩阵K,运用状态空间分析方法,采用状态反馈为倒立摆系统建立稳定的控制律,并判断加入反馈矩阵K后的能观性和能控性是否改变。最后应用Matlab中的Simulink建立相应框图,得到输出变量水平位置和角度随时间的变化曲线,验证加入反馈矩阵K后一级倒立摆系统的稳定性。

关键词:一级倒立摆 状态反馈极点配置 Matlab Simulink

目录

1、一级倒立摆系统简介 ................................................................ 3 2、一级倒立摆系统的数学模型 ...................................................... 4 2.1、数学模型的建立 ............................................................... 4 2.2、运动分析 .......................................................................... 5 2.2.1、沿水平方向运动(直线运动) .................................. 5 2.2.2、绕轴线的转动(旋转运动) ..................................... 7 3、状态空间极点配置 .................................................................... 9 3.1、系统开环稳定性分析 ........................................................ 9 3.2、开环系统的能控性分析 ................................................... 10 3.3、开环系统的能观性分析 ................................................... 12 3.4、系统极点配置 ................................................................. 13 3.5、闭环系统的能控性和能观性分析 ..................................... 16 4、一级倒立摆系统Matlab仿真 .................................................. 17 4.1、系统开环Simulink搭建及仿真 ....................................... 17 4.2、系统极点配置后的Simulink仿真 .................................... 20 5、 总结 ..................................................................................... 24 6、 参考文献 .............................................................................. 25

1、一级倒立摆系统简介

倒立摆系统是一种很常见的又和人们的生活密切相关的系统,它

深刻揭示了自然界一种基本规律,即自然不稳定的被控对象,通过控制手段可使之具有良好的稳定性。倒立摆系统是一个非线性,强耦合,多变量和自然不稳定的系统。它是由沿导轨运动的小车和通过转轴固定在小车上的摆杆组成的。在导轨一端装有用来测量小车位移的电位计,摆体与小车之间由轴承连接,并在连接处安置电位器用来测量摆的角度。小车可沿一笔直的有界轨道向左或向右运动,同时摆可在垂直平面内自由运动。直流电机通过传送带拖动小车的运动,从而使倒立摆稳定竖立在垂直位置。

图1一级倒立摆装置简图

由图1中可以看到,倒立摆装置由沿导轨运动的小车和通过转轴固定在小车上的摆体组成。导轨的一端固定有位置传感器,通过与之共轴的轮盘转动可以测量出沿导轨由图中可以看到,倒立摆装置由沿导轨运动的小车和通过转轴固定在小车上的摆运动的小车位移;小车通过轴承连接摆体,并在小车与摆体的连接处固定有共轴角度传感

器,用以测量摆体的角度信号;并通过微分电路得到相应的速度和角速度信号;导轨的另一端固定有直流永磁力矩电机,直流电机通过传送带驱动小车沿导轨运动,在小车沿导轨左右运动的过程中将力传送到摆杆以实现整个系统的平衡。倒立摆的种类很多,有悬挂式倒立摆、平行式倒立摆、和球平衡式倒立摆;倒立摆的级数可以是一级,二级,乃至更多级。控制方法也是多种,可以通过模糊控制,智能控制,PID控制,LQR控制等来实现倒立摆的动态平衡,本文介绍的是状态反馈极点配置方法来实现一级倒立摆的控制。

2、一级倒立摆系统的数学模型

2.1、数学模型的建立

一级倒立摆系统示意图如下图所示,系统由小车、小球和轻质杆组成。倒摆通过转动关节安装驱动小车上,杆子的一端固定在小车上,另一端可以自由地左右倒下。通过对小车施加一定的外部驱动力,使倒摆保持一定的姿势。

图2 一级倒立摆系统示意图

一级倒立摆系统所用到的各变量的取值及其意义如下表1所示:

2.2、运动分析

假设轨道是光滑的,忽略摆杆的质量,系统所受的外力包括小球受到的重力和小车水平方向的驱动力 u。 x(t)和(t)分别表示小车的水平坐标和倒摆偏离垂直方向的角度。由此分析可知一级倒立摆有两个运动自由度:一个是沿水平方向运动(直线运动);另一个是绕轴线的转动(旋转运动)。

2.2.1、沿水平方向运动(直线运动)

通过受力分析,由牛顿第二运动定律,系统的运动满足下面的方程:

图3 倒立摆系统水平方向受力分析图

X轴方向:

Md2d2

dt2xmdt2xGu 小球的重心坐标满足:



xGxlsin

yGlcos

将小球的重心坐标代入①式得:

d2

dtxmd2

M2dt2(xlsin)u 联立①②③式得:

(Mm)x..

ml(sin).2

ml(cos)..

u

② ③

2.2.2、绕轴线的转动(旋转运动)

小球的力矩平衡方程:

(Fxcos)l(Fysin)l(mgsin)l

④式中Fx、Fy分别为:

Fmd2.

m[x..l(sin)2

l(cos)..x2xG]dtFmd2.

2

..ydt2yGm[l(cos)l(sin)]

将⑤式代入④式整理得:

mx..cosml..

mgsin

最后得到倒立摆系统的动力学方程为:

.)x..(Mmml(sin)2

ml(cos)..

u

..

xcosmlm..mgsin

显然该系统为明显的非线性系统。但是对小车施加驱动力的目的是要保持小球在垂直方向的姿态,因此,我们关注的是小球在垂直方向附近的动态行为变化,为此将系统在该参考位置(=0)附近进行线性化处理。

2.3、模型转化(微分方程→状态方程)

由倒摆系统的动力学模型⑥式,取如下状态变量:

Zx Z4xZ3 Z1 Z2Z1 3

.

.

..

可得到倒摆系统的状态方程:

z2

2

ucosz(Mm)gsinzml(coszsinz)z11112.

mlcos2z1(Mm)ldd

zdtdtxz4

.uml(sinz)z2mgcoszsinz

1211x2

Mmmcosz1

2.4、状态方程的线性化

采用Jacobian 矩阵线性化模型,最终得到系统的线性化状态方程为:

0

(Mm)gdzMl

0dt

mg

M

10000000

0

010

Mluz1001

M

假定系统的输出为倒摆的角度和小车的x轴坐标,则系统的输出

方程为:

.

1000yxCZ001

3、状态空间极点配置

3.1、系统开环稳定性分析

由状态方程的标准形式:

X

AXBuYCXDu

结合表1中各变量的值可得:

0

10A20.60100

0000.4905

000B10

0.5

C1000

0010 0x

x.0010

0D0

上面已经得到系统的状态方程式,对其进行阶跃响应分析,在MATLAB 指令区中键入以下命令:

A=[0 1 0 0;20.601 0 0 0;0 0 0 1;-0.4905 0 0 0 ]; B=[0 ;-1; 0;0.5 ]; C=[1 0 0 0;0 0 1 0]; D=[0;0]; step(A,B,C,D);

图5 系统稳定性仿真图

可以看出,在单位阶跃响应作用下,小车位置(x)和摆杆角度(θ)都是发散的。即系统是不稳定的。

3.2、开环系统的能控性分析

采用状态反馈对系统进行任意配置极点的充要条件是系统完全

能控,因此本小节对所建立的系统状态方程运用Matlab进行能控性的分析。

系统的能控性是指系统的输入能否控制状态的变化。对于n阶线性定常系统:

.

x(t)Ax(t)Bu(t)y(t)Cx(t)Du(t)

能控性矩阵为

UcBABA2B...An1B

当rankUc=n时,系统状态完全能控,否则系统不能控。在Matlab中,可利用ctrb()函数直接求出能控性矩阵,从而确定系统的状态能控性,它的调用格式为:Uc=ctrb(A,B)。 在MATLAB 指令区中键入以下命令:

A=[0 1 0 0;20.601 0 0 0;0 0 0 1;-0.4905 0 0 0 ]; B=[0 ;-1; 0;0.5 ]; Uc=ctrb(A,B); n=4;

if(n==rank(Uc)) disp('系统能控')

End



其结果为:系统能控。可以看出,系统的状态完全可控性矩阵的秩等于系统的状态变量维数,系统的输出完全可控性矩阵的秩等于系统输出向量y 的维数,所以系统可控,因此可以对系统进行控制器的设计,使系统稳定。

3.3、开环系统的能观性分析

控制系统大多数采用反馈控制形式。在现代控制理论中,其反馈信息是由系统的状态组合而成。但并非所有的系统的状态变量在物理上能侧取到,于是提出能否通过对输出的测量获得全部状态变量的信息,这便是系统的观测问题。

对于n阶线性定常系统:

.

x(t)Ax(t)Bu(t)y(t)Cx(t)Du(t)

能观测性矩阵为:

C

CA

Vcn1CA

当rankVc=n时,系统的状态完全能观测,否则系统状态不能观测。

在Matlab中,可利用obsv()函数直接求出能观性矩阵,从而确定系统的状态能观测性,它的调用格式为:Vc=obsv(A,C)。

在MATLAB 指令区中键入以下命令:

A=[0 1 0 0;20.601 0 0 0;0 0 0 1;-0.4905 0 0 0 ]; C=[1 0 0 0;0 0 1 0]; Vc=obsv(A,C); n=4;

if(n==rank(Vc)) disp('系统能观')

End

其结果为:系统能观。系统的状态完全能观性矩阵的秩等于系统的状

态变量维数,系统的输出完全能控性矩阵的秩等于系统输出向量y 的维数,所以系统能观。

3.4、系统极点配置

下面采用极点配置的方法计算反馈矩阵。 1、检验系统可控性

由上节的系统可控性分析可以得到,系统的状态完全可控性矩阵的秩等于系统的状态维数4,系统的输出完全可控性矩阵的秩等于系统输出向量的维数2,所以系统可控。 2、计算特征值

综合指标为:输出超调量 p5%;超调时间 tp0.5s; 系统频宽 b10; 跟踪误差 ep0(对阶跃),ev0.2(对速度)。

确定希望的极点:显然,希望的极点n=3,选其中一对为主导极点s1

和s2,另一个为远极点,并且认为系统的性能主要是由主导极点决定的,远极点只有微小的影响。

根据二阶系统的关系式,先定出主导极点。

pe



2

tp

n2

bn*(2224244)

式中和n为此二阶系统的阻尼比和自振频率。 可以导出:

①由pe

2

5%,可得



2

3.14,从而有

1

0.707,于是2

选0.707. ②由tp0.5s得:

nn

2

n

129

0.5

0.50.707

③由b10和已选的

1

得n10,②的结果比较可取n10。这2

样便定出了主导极点为:

s1,2njn2

远极点应选择得使它的实部大于5倍的主极点的实部,现取Res34=5Res2,因此根据要求,并留有一定的裕量(设调整时间为2秒),我们选取期望的闭环极点: suii1,2,3,4

其中u1=-35,u2=-35,u3=-7.07-7.07j,u4=-7.07+7.07j,u1,u2是一对具有

1

n10的主导极点,u3,u4位于主导极点的左侧,2

因此其影响较小所以,可满足快速性和阻尼的要求。

同理,取0.5,将带入tp0.5s得到n4,远极点应选择得使它的实部大于5倍的主极点的实部,现取Rex34=5Rex2,得到另一组期望的闭环极点:

s1xi(i1,2,3,4)

其中x1=-10,x2=-10,x3=-2-23j,x4=-2+23j,x1,x2是一对具有0.5 n4的主导极点,x3,x4位于主导极点的左侧,因此其影

响较小所以,可满足快速性和阻尼的要求。

其中主导极点决定系统的性能,远极点只有微小的影响,根据系统的综合指标关系式可以先定出主导极点,远极点应选择得使它的实部大于5倍的主极点的实部。

3、计算反馈矩阵K

通过Maltalb的控制系统工具箱中的单变量系统极点配置函acker(),该函数的调用格式为:

K=acker(A,b,P)

式中,P为给定极点;K为状态反馈矩阵。 当取极点为:

u1=-35,u2=-35,u3=-7.07-7.07j,u4=-7.07+7.07j

在MATLAB 指令区中键入以下命令:

A=[0 1 0 0;20.601 0 0 0;0 0 0 1;-0.4905 0 0 0 ]; B=[0 ;-1; 0;0.5 ];

P=[-35;-35;-7.07-7.07*j;-7.07+7.07*j]; k=acker(A,B,P)

得到K1的结果为:

K1= -8577 -1324 -12483 -2479

所以,反馈控制输入为:

u1K1z8577z11324z212483z32479z4

同理,当取极点为:

x1=-10,x2=-10,x3=-2-23j,x4=-2+2j

在MATLAB 指令区中键入以下命令:

A=[0 1 0 0;20.601 0 0 0;0 0 0 1;-0.4905 0 0 0 ]; B=[0 ;-1; 0;0.5 ];

P=[-10;-10;-2-2*sqrt(3)*j;-2+2*sqrt(3)*j]; k=acker(A,B,P)

得到K2的结果为:

K2= -298.1504 -60.6972 -163.0989 -73.3945

所以,反馈控制输入为:

u2K2z298.1504z160.6972z2163.0989z373.3945z4

这是一个调节器系统。期望的角θ总为零,且期望的小车的位置x也总为零。因此,参考输入为零。

3.5、闭环系统的能控性和能观性分析

引入状态反馈矩阵K构成闭环后,可能使传递函数发生零极点相消而破坏系统的能控性与能观性,因此本节分析加入反馈矩阵k后的闭环系统的能控性和能观性是否发生改变。

在MATLAB 指令区中键入以下命令:

%引入反馈矩阵K1的能控能观判断%

A=[0 1 0 0;20.601 0 0 0;0 0 0 1;-0.4905 0 0 0 ]; B=[0 ;-1; 0;0.5 ]; C=[1 0 0 0;0 0 1 0];

k =[ -8577 -1324 -12483 -2479]; a=A+B*k; Uc=ctrb(a,B); Vc=obsv(a,C); n=4;

if(n==rank(Uc)) if(n==rank(Vc))

disp('系统即能控又能观') end End

%引入反馈矩阵K2的能控能观判断%

A=[0 1 0 0;20.601 0 0 0;0 0 0 1;-0.4905 0 0 0 ]; B=[0 ;-1; 0;0.5 ]; C=[1 0 0 0;0 0 1 0];

k =[ -298.1504 -60.6972 -163.0989 -73.3945]; a=A+B*k; Uc=ctrb(a,B); Vc=obsv(a,C); n=4;

if(n==rank(Uc)) if(n==rank(Vc))

disp('系统即能控又能观') end End

其结果为:系统即能控又能观。说明加入反馈矩阵k1、k2后并没有破坏原系统的能控性和能观性。

4、一级倒立摆系统Matlab仿真

4.1、系统开环Simulink搭建及仿真

首先点击Simulink Library Browser,点击File新建model,打开Simulink模型编辑窗口,如图6:

图6 Smulink打开画面

在模型编辑窗口上建立一级倒立摆的系统开环模型如图7:

图7系统开环模型搭建

点击Scope和Scope1,可以看到两输出变量位置(x)和角度(θ)随时间的变化,如图8和图9:

图8系统开环下角度的变化

图9系统开环下位置的变化

由图8和图9可以看出系统开环下角度和位置随时间变化都是发散的,所以系统的开环不稳定的。

4.2、系统极点配置后的Simulink仿真

用Matlab的Simulink搭建倒立摆系统,并加上通过极点配置方法计算的反馈矩阵K,在倒立摆的开环系统下加上反馈增益。检验在配置极点后系统是否达到所设定的指标。

由系统的状态方程可以得到:

1z2z

z20.6012

3z4 zz40.4905z10.5u

可由系统的状态方程得到系统的框图,如图

10

图10系统的框图

在原开环系统的基础上加上反馈增益K1如图11:

图11加上反馈增益K1的系统框图

点击Scope和Scope1,可以看到两输出变量位置(x)和角度(θ)随时间的变化,如图12和图13:

图12反馈矩阵为K1系统角度的变化

图13反馈矩阵为K1系统位置的变化

由图12可以看出一阶倒立摆系统的角度θ在1s时受到外部干扰后,系统在2s左右又重新回到0的平衡位置,调整时间为1s左右。

由图13可以看出一阶倒立摆系统的水平位置在1s时受到外部干扰后,系统在1.5s之内基本上可以由x=0稳定到新的平衡位置x=-0.7。调整时间为1s左右。

同理,在Simulink下仿真,加上由另一组得到的反馈矩阵K2后的两输出变量位置(x)和角度()随时间的变化,如图14和图15:

图14反馈矩阵为K2系统角度的变化

图15反馈矩阵为K2系统位置的变化

由图14可以看出一阶倒立摆系统的角度θ在1s时受到外部干扰后,系统在4s左右又重新回到0的平衡位置,调整时间为3s左

右。

由图13可以看出一阶倒立摆系统的水平位置在1s时受到外部干扰后,系统在4s时基本上可以由x=0稳定到新的平衡位置x=-6。调整时间为3s左右。

综上所述,由于选择了不同的和n,从而得到了两组不同的

主导极点,对于第一组极点的取的为0.707,n取的为10,而第二

组极点取的为0.5,n取的为4。不同的导致两组的超调量不同,

由图12和图14可以看出后者的超调量明显大于前者。不同的和n导致调整时间的不同,由图13和图15可以看出前者的超调时间ts为1s,后者的超调时间ts为3s。

系统的调整时间和超调量都达到了提前所设的指标,可知通过通过反馈重新配置系统的极点,能达到所期望的性能,系统由开环的不稳定通过极点的配置,增加状态反馈矩阵后达到稳定。

5、总结

传统的非线性系统分析方法需要非线性系统的精确模型,而实际中存在的大量复杂的多变量非线性系统则表现为参数的不确定性和结构的不确定性。本文用现代控制理论的极点配置方法对直线一级倒立摆控制进行了分析,通过不同的、n得到两组不同的主导极

点并分别用Simulink进行了倒立摆的系统仿真,其仿真结果达到了期望的指标。

通过这次大作业,将在现代控制理论中所学到的状态空间表达式

的建立、系统稳定性分析、系统能控性的判定和极点配置的方法以及状态反馈的建立运用到一级倒立摆的模型中,让我更加理解所学的知识,对所学的知识有了更深刻的认识,对MATLAB的应用更加熟练,加强了我运用知识解决问题的能力。

6、参考文献

[1]刘豹 唐万生 现代控制理论(第三版).北京:机械工业出版社,2006.

[2]夏德钤 翁贻方 自动控制理论(第4版).北京:机械工业出版社,2012.

[3]李国勇 程永强 计算机仿真技术与CAD—基于MATLAB的控制系统(第三版).北京:电子工业出版社,2012.

[4]易杰 俞斌 倒立摆系统的状态空间极点配置控制设计[J].电子测试.2008.8

[5]李国辉 基于simulink的单级倒立摆仿真[J]. 大连交通大学学报.2008.2

一级倒立摆的极点配置及仿真

摘要

倒立摆系统是一个复杂的、高度非线性的、不稳定的高阶系统,是学习和研究现代控制理论最合适的实验装置。倒立摆的控制是控制理论应用的一个典型范例,一个稳定的倒立摆系统对于证实状态空间理论的实用性是非常有用的。

本文主要研究的是一级倒立摆,首先应用动力学方程建立一级倒

立摆的非线性数学模型,采用小偏差线性化的方法在平衡点附近局部线性化得到线性化的数学模型。然后通过输入单位阶跃信号分析系统的开环稳定性,由线性化得到的状态方程判断系统的能控性和能观性,结合系统的稳定性条件、调整时间以及超调量找到合适的极点,运用极点的配置方法(Matlab的acker函数)算出状态反馈增益矩阵K,运用状态空间分析方法,采用状态反馈为倒立摆系统建立稳定的控制律,并判断加入反馈矩阵K后的能观性和能控性是否改变。最后应用Matlab中的Simulink建立相应框图,得到输出变量水平位置和角度随时间的变化曲线,验证加入反馈矩阵K后一级倒立摆系统的稳定性。

关键词:一级倒立摆 状态反馈极点配置 Matlab Simulink

目录

1、一级倒立摆系统简介 ................................................................ 3 2、一级倒立摆系统的数学模型 ...................................................... 4 2.1、数学模型的建立 ............................................................... 4 2.2、运动分析 .......................................................................... 5 2.2.1、沿水平方向运动(直线运动) .................................. 5 2.2.2、绕轴线的转动(旋转运动) ..................................... 7 3、状态空间极点配置 .................................................................... 9 3.1、系统开环稳定性分析 ........................................................ 9 3.2、开环系统的能控性分析 ................................................... 10 3.3、开环系统的能观性分析 ................................................... 12 3.4、系统极点配置 ................................................................. 13 3.5、闭环系统的能控性和能观性分析 ..................................... 16 4、一级倒立摆系统Matlab仿真 .................................................. 17 4.1、系统开环Simulink搭建及仿真 ....................................... 17 4.2、系统极点配置后的Simulink仿真 .................................... 20 5、 总结 ..................................................................................... 24 6、 参考文献 .............................................................................. 25

1、一级倒立摆系统简介

倒立摆系统是一种很常见的又和人们的生活密切相关的系统,它

深刻揭示了自然界一种基本规律,即自然不稳定的被控对象,通过控制手段可使之具有良好的稳定性。倒立摆系统是一个非线性,强耦合,多变量和自然不稳定的系统。它是由沿导轨运动的小车和通过转轴固定在小车上的摆杆组成的。在导轨一端装有用来测量小车位移的电位计,摆体与小车之间由轴承连接,并在连接处安置电位器用来测量摆的角度。小车可沿一笔直的有界轨道向左或向右运动,同时摆可在垂直平面内自由运动。直流电机通过传送带拖动小车的运动,从而使倒立摆稳定竖立在垂直位置。

图1一级倒立摆装置简图

由图1中可以看到,倒立摆装置由沿导轨运动的小车和通过转轴固定在小车上的摆体组成。导轨的一端固定有位置传感器,通过与之共轴的轮盘转动可以测量出沿导轨由图中可以看到,倒立摆装置由沿导轨运动的小车和通过转轴固定在小车上的摆运动的小车位移;小车通过轴承连接摆体,并在小车与摆体的连接处固定有共轴角度传感

器,用以测量摆体的角度信号;并通过微分电路得到相应的速度和角速度信号;导轨的另一端固定有直流永磁力矩电机,直流电机通过传送带驱动小车沿导轨运动,在小车沿导轨左右运动的过程中将力传送到摆杆以实现整个系统的平衡。倒立摆的种类很多,有悬挂式倒立摆、平行式倒立摆、和球平衡式倒立摆;倒立摆的级数可以是一级,二级,乃至更多级。控制方法也是多种,可以通过模糊控制,智能控制,PID控制,LQR控制等来实现倒立摆的动态平衡,本文介绍的是状态反馈极点配置方法来实现一级倒立摆的控制。

2、一级倒立摆系统的数学模型

2.1、数学模型的建立

一级倒立摆系统示意图如下图所示,系统由小车、小球和轻质杆组成。倒摆通过转动关节安装驱动小车上,杆子的一端固定在小车上,另一端可以自由地左右倒下。通过对小车施加一定的外部驱动力,使倒摆保持一定的姿势。

图2 一级倒立摆系统示意图

一级倒立摆系统所用到的各变量的取值及其意义如下表1所示:

2.2、运动分析

假设轨道是光滑的,忽略摆杆的质量,系统所受的外力包括小球受到的重力和小车水平方向的驱动力 u。 x(t)和(t)分别表示小车的水平坐标和倒摆偏离垂直方向的角度。由此分析可知一级倒立摆有两个运动自由度:一个是沿水平方向运动(直线运动);另一个是绕轴线的转动(旋转运动)。

2.2.1、沿水平方向运动(直线运动)

通过受力分析,由牛顿第二运动定律,系统的运动满足下面的方程:

图3 倒立摆系统水平方向受力分析图

X轴方向:

Md2d2

dt2xmdt2xGu 小球的重心坐标满足:



xGxlsin

yGlcos

将小球的重心坐标代入①式得:

d2

dtxmd2

M2dt2(xlsin)u 联立①②③式得:

(Mm)x..

ml(sin).2

ml(cos)..

u

② ③

2.2.2、绕轴线的转动(旋转运动)

小球的力矩平衡方程:

(Fxcos)l(Fysin)l(mgsin)l

④式中Fx、Fy分别为:

Fmd2.

m[x..l(sin)2

l(cos)..x2xG]dtFmd2.

2

..ydt2yGm[l(cos)l(sin)]

将⑤式代入④式整理得:

mx..cosml..

mgsin

最后得到倒立摆系统的动力学方程为:

.)x..(Mmml(sin)2

ml(cos)..

u

..

xcosmlm..mgsin

显然该系统为明显的非线性系统。但是对小车施加驱动力的目的是要保持小球在垂直方向的姿态,因此,我们关注的是小球在垂直方向附近的动态行为变化,为此将系统在该参考位置(=0)附近进行线性化处理。

2.3、模型转化(微分方程→状态方程)

由倒摆系统的动力学模型⑥式,取如下状态变量:

Zx Z4xZ3 Z1 Z2Z1 3

.

.

..

可得到倒摆系统的状态方程:

z2

2

ucosz(Mm)gsinzml(coszsinz)z11112.

mlcos2z1(Mm)ldd

zdtdtxz4

.uml(sinz)z2mgcoszsinz

1211x2

Mmmcosz1

2.4、状态方程的线性化

采用Jacobian 矩阵线性化模型,最终得到系统的线性化状态方程为:

0

(Mm)gdzMl

0dt

mg

M

10000000

0

010

Mluz1001

M

假定系统的输出为倒摆的角度和小车的x轴坐标,则系统的输出

方程为:

.

1000yxCZ001

3、状态空间极点配置

3.1、系统开环稳定性分析

由状态方程的标准形式:

X

AXBuYCXDu

结合表1中各变量的值可得:

0

10A20.60100

0000.4905

000B10

0.5

C1000

0010 0x

x.0010

0D0

上面已经得到系统的状态方程式,对其进行阶跃响应分析,在MATLAB 指令区中键入以下命令:

A=[0 1 0 0;20.601 0 0 0;0 0 0 1;-0.4905 0 0 0 ]; B=[0 ;-1; 0;0.5 ]; C=[1 0 0 0;0 0 1 0]; D=[0;0]; step(A,B,C,D);

图5 系统稳定性仿真图

可以看出,在单位阶跃响应作用下,小车位置(x)和摆杆角度(θ)都是发散的。即系统是不稳定的。

3.2、开环系统的能控性分析

采用状态反馈对系统进行任意配置极点的充要条件是系统完全

能控,因此本小节对所建立的系统状态方程运用Matlab进行能控性的分析。

系统的能控性是指系统的输入能否控制状态的变化。对于n阶线性定常系统:

.

x(t)Ax(t)Bu(t)y(t)Cx(t)Du(t)

能控性矩阵为

UcBABA2B...An1B

当rankUc=n时,系统状态完全能控,否则系统不能控。在Matlab中,可利用ctrb()函数直接求出能控性矩阵,从而确定系统的状态能控性,它的调用格式为:Uc=ctrb(A,B)。 在MATLAB 指令区中键入以下命令:

A=[0 1 0 0;20.601 0 0 0;0 0 0 1;-0.4905 0 0 0 ]; B=[0 ;-1; 0;0.5 ]; Uc=ctrb(A,B); n=4;

if(n==rank(Uc)) disp('系统能控')

End



其结果为:系统能控。可以看出,系统的状态完全可控性矩阵的秩等于系统的状态变量维数,系统的输出完全可控性矩阵的秩等于系统输出向量y 的维数,所以系统可控,因此可以对系统进行控制器的设计,使系统稳定。

3.3、开环系统的能观性分析

控制系统大多数采用反馈控制形式。在现代控制理论中,其反馈信息是由系统的状态组合而成。但并非所有的系统的状态变量在物理上能侧取到,于是提出能否通过对输出的测量获得全部状态变量的信息,这便是系统的观测问题。

对于n阶线性定常系统:

.

x(t)Ax(t)Bu(t)y(t)Cx(t)Du(t)

能观测性矩阵为:

C

CA

Vcn1CA

当rankVc=n时,系统的状态完全能观测,否则系统状态不能观测。

在Matlab中,可利用obsv()函数直接求出能观性矩阵,从而确定系统的状态能观测性,它的调用格式为:Vc=obsv(A,C)。

在MATLAB 指令区中键入以下命令:

A=[0 1 0 0;20.601 0 0 0;0 0 0 1;-0.4905 0 0 0 ]; C=[1 0 0 0;0 0 1 0]; Vc=obsv(A,C); n=4;

if(n==rank(Vc)) disp('系统能观')

End

其结果为:系统能观。系统的状态完全能观性矩阵的秩等于系统的状

态变量维数,系统的输出完全能控性矩阵的秩等于系统输出向量y 的维数,所以系统能观。

3.4、系统极点配置

下面采用极点配置的方法计算反馈矩阵。 1、检验系统可控性

由上节的系统可控性分析可以得到,系统的状态完全可控性矩阵的秩等于系统的状态维数4,系统的输出完全可控性矩阵的秩等于系统输出向量的维数2,所以系统可控。 2、计算特征值

综合指标为:输出超调量 p5%;超调时间 tp0.5s; 系统频宽 b10; 跟踪误差 ep0(对阶跃),ev0.2(对速度)。

确定希望的极点:显然,希望的极点n=3,选其中一对为主导极点s1

和s2,另一个为远极点,并且认为系统的性能主要是由主导极点决定的,远极点只有微小的影响。

根据二阶系统的关系式,先定出主导极点。

pe



2

tp

n2

bn*(2224244)

式中和n为此二阶系统的阻尼比和自振频率。 可以导出:

①由pe

2

5%,可得



2

3.14,从而有

1

0.707,于是2

选0.707. ②由tp0.5s得:

nn

2

n

129

0.5

0.50.707

③由b10和已选的

1

得n10,②的结果比较可取n10。这2

样便定出了主导极点为:

s1,2njn2

远极点应选择得使它的实部大于5倍的主极点的实部,现取Res34=5Res2,因此根据要求,并留有一定的裕量(设调整时间为2秒),我们选取期望的闭环极点: suii1,2,3,4

其中u1=-35,u2=-35,u3=-7.07-7.07j,u4=-7.07+7.07j,u1,u2是一对具有

1

n10的主导极点,u3,u4位于主导极点的左侧,2

因此其影响较小所以,可满足快速性和阻尼的要求。

同理,取0.5,将带入tp0.5s得到n4,远极点应选择得使它的实部大于5倍的主极点的实部,现取Rex34=5Rex2,得到另一组期望的闭环极点:

s1xi(i1,2,3,4)

其中x1=-10,x2=-10,x3=-2-23j,x4=-2+23j,x1,x2是一对具有0.5 n4的主导极点,x3,x4位于主导极点的左侧,因此其影

响较小所以,可满足快速性和阻尼的要求。

其中主导极点决定系统的性能,远极点只有微小的影响,根据系统的综合指标关系式可以先定出主导极点,远极点应选择得使它的实部大于5倍的主极点的实部。

3、计算反馈矩阵K

通过Maltalb的控制系统工具箱中的单变量系统极点配置函acker(),该函数的调用格式为:

K=acker(A,b,P)

式中,P为给定极点;K为状态反馈矩阵。 当取极点为:

u1=-35,u2=-35,u3=-7.07-7.07j,u4=-7.07+7.07j

在MATLAB 指令区中键入以下命令:

A=[0 1 0 0;20.601 0 0 0;0 0 0 1;-0.4905 0 0 0 ]; B=[0 ;-1; 0;0.5 ];

P=[-35;-35;-7.07-7.07*j;-7.07+7.07*j]; k=acker(A,B,P)

得到K1的结果为:

K1= -8577 -1324 -12483 -2479

所以,反馈控制输入为:

u1K1z8577z11324z212483z32479z4

同理,当取极点为:

x1=-10,x2=-10,x3=-2-23j,x4=-2+2j

在MATLAB 指令区中键入以下命令:

A=[0 1 0 0;20.601 0 0 0;0 0 0 1;-0.4905 0 0 0 ]; B=[0 ;-1; 0;0.5 ];

P=[-10;-10;-2-2*sqrt(3)*j;-2+2*sqrt(3)*j]; k=acker(A,B,P)

得到K2的结果为:

K2= -298.1504 -60.6972 -163.0989 -73.3945

所以,反馈控制输入为:

u2K2z298.1504z160.6972z2163.0989z373.3945z4

这是一个调节器系统。期望的角θ总为零,且期望的小车的位置x也总为零。因此,参考输入为零。

3.5、闭环系统的能控性和能观性分析

引入状态反馈矩阵K构成闭环后,可能使传递函数发生零极点相消而破坏系统的能控性与能观性,因此本节分析加入反馈矩阵k后的闭环系统的能控性和能观性是否发生改变。

在MATLAB 指令区中键入以下命令:

%引入反馈矩阵K1的能控能观判断%

A=[0 1 0 0;20.601 0 0 0;0 0 0 1;-0.4905 0 0 0 ]; B=[0 ;-1; 0;0.5 ]; C=[1 0 0 0;0 0 1 0];

k =[ -8577 -1324 -12483 -2479]; a=A+B*k; Uc=ctrb(a,B); Vc=obsv(a,C); n=4;

if(n==rank(Uc)) if(n==rank(Vc))

disp('系统即能控又能观') end End

%引入反馈矩阵K2的能控能观判断%

A=[0 1 0 0;20.601 0 0 0;0 0 0 1;-0.4905 0 0 0 ]; B=[0 ;-1; 0;0.5 ]; C=[1 0 0 0;0 0 1 0];

k =[ -298.1504 -60.6972 -163.0989 -73.3945]; a=A+B*k; Uc=ctrb(a,B); Vc=obsv(a,C); n=4;

if(n==rank(Uc)) if(n==rank(Vc))

disp('系统即能控又能观') end End

其结果为:系统即能控又能观。说明加入反馈矩阵k1、k2后并没有破坏原系统的能控性和能观性。

4、一级倒立摆系统Matlab仿真

4.1、系统开环Simulink搭建及仿真

首先点击Simulink Library Browser,点击File新建model,打开Simulink模型编辑窗口,如图6:

图6 Smulink打开画面

在模型编辑窗口上建立一级倒立摆的系统开环模型如图7:

图7系统开环模型搭建

点击Scope和Scope1,可以看到两输出变量位置(x)和角度(θ)随时间的变化,如图8和图9:

图8系统开环下角度的变化

图9系统开环下位置的变化

由图8和图9可以看出系统开环下角度和位置随时间变化都是发散的,所以系统的开环不稳定的。

4.2、系统极点配置后的Simulink仿真

用Matlab的Simulink搭建倒立摆系统,并加上通过极点配置方法计算的反馈矩阵K,在倒立摆的开环系统下加上反馈增益。检验在配置极点后系统是否达到所设定的指标。

由系统的状态方程可以得到:

1z2z

z20.6012

3z4 zz40.4905z10.5u

可由系统的状态方程得到系统的框图,如图

10

图10系统的框图

在原开环系统的基础上加上反馈增益K1如图11:

图11加上反馈增益K1的系统框图

点击Scope和Scope1,可以看到两输出变量位置(x)和角度(θ)随时间的变化,如图12和图13:

图12反馈矩阵为K1系统角度的变化

图13反馈矩阵为K1系统位置的变化

由图12可以看出一阶倒立摆系统的角度θ在1s时受到外部干扰后,系统在2s左右又重新回到0的平衡位置,调整时间为1s左右。

由图13可以看出一阶倒立摆系统的水平位置在1s时受到外部干扰后,系统在1.5s之内基本上可以由x=0稳定到新的平衡位置x=-0.7。调整时间为1s左右。

同理,在Simulink下仿真,加上由另一组得到的反馈矩阵K2后的两输出变量位置(x)和角度()随时间的变化,如图14和图15:

图14反馈矩阵为K2系统角度的变化

图15反馈矩阵为K2系统位置的变化

由图14可以看出一阶倒立摆系统的角度θ在1s时受到外部干扰后,系统在4s左右又重新回到0的平衡位置,调整时间为3s左

右。

由图13可以看出一阶倒立摆系统的水平位置在1s时受到外部干扰后,系统在4s时基本上可以由x=0稳定到新的平衡位置x=-6。调整时间为3s左右。

综上所述,由于选择了不同的和n,从而得到了两组不同的

主导极点,对于第一组极点的取的为0.707,n取的为10,而第二

组极点取的为0.5,n取的为4。不同的导致两组的超调量不同,

由图12和图14可以看出后者的超调量明显大于前者。不同的和n导致调整时间的不同,由图13和图15可以看出前者的超调时间ts为1s,后者的超调时间ts为3s。

系统的调整时间和超调量都达到了提前所设的指标,可知通过通过反馈重新配置系统的极点,能达到所期望的性能,系统由开环的不稳定通过极点的配置,增加状态反馈矩阵后达到稳定。

5、总结

传统的非线性系统分析方法需要非线性系统的精确模型,而实际中存在的大量复杂的多变量非线性系统则表现为参数的不确定性和结构的不确定性。本文用现代控制理论的极点配置方法对直线一级倒立摆控制进行了分析,通过不同的、n得到两组不同的主导极

点并分别用Simulink进行了倒立摆的系统仿真,其仿真结果达到了期望的指标。

通过这次大作业,将在现代控制理论中所学到的状态空间表达式

的建立、系统稳定性分析、系统能控性的判定和极点配置的方法以及状态反馈的建立运用到一级倒立摆的模型中,让我更加理解所学的知识,对所学的知识有了更深刻的认识,对MATLAB的应用更加熟练,加强了我运用知识解决问题的能力。

6、参考文献

[1]刘豹 唐万生 现代控制理论(第三版).北京:机械工业出版社,2006.

[2]夏德钤 翁贻方 自动控制理论(第4版).北京:机械工业出版社,2012.

[3]李国勇 程永强 计算机仿真技术与CAD—基于MATLAB的控制系统(第三版).北京:电子工业出版社,2012.

[4]易杰 俞斌 倒立摆系统的状态空间极点配置控制设计[J].电子测试.2008.8

[5]李国辉 基于simulink的单级倒立摆仿真[J]. 大连交通大学学报.2008.2


相关文章

  • 直线一级倒立摆PID控制实验报告
  • 直线一级倒立摆PID 控制实验报告 一.实验目的 本实验的目的是让实验者理解并掌握 PID 控制的原理和方法,并应用于直线一级倒立摆的控制,PID 控制并不需要对系统进行精确的分析,因此我们采用实验的方法对系统进行控制器参数的设置. 二.实 ...查看


  • 倒立摆实验报告
  • 机电实验一级倒立摆实验报告 学院:机械工程学院 班级:车辆工程 姓名:甘立鹏 学号: 112班 119054038 一 实验目的: 通过倒立摆系统实验来验证所学 的控制理论和算法,非常的直观.简便,在轻松的实验中对所学课程加深了理解.通过倒 ...查看


  • 重庆大学自动控制课程设计
  • 自动控制理论课程设计 倒立摆系统的控制器设计 学生姓名: 陆源 指导教师: 班 级: 重庆大学自动化学院 二O 一一年十二月 课程设计指导教师评定成绩表 指导教师评定成绩: 指导教师签名: 年 月 日 重庆大学本科学生课程设计任务书 目录 ...查看


  • 倒立摆实验
  • 直线倒立摆.正摆实验报告 实验采用固高科技倒立摆系统,通过控制器设计使倒立摆系统稳定运行(摆角保持零度附近).倒立摆系统以及正摆系统的控制器的设计,使得系统能够满足一定的性能指标. 1 倒立摆系统分析 倒立摆系统分析包括倒立摆的数学模型的建 ...查看


  • 倒立摆建模与控制
  • 2 倒立摆系统的模型建立 2.1 倒立摆特性 ● 非线性 倒立摆是一个典型的非线性复杂系统,实际中可以通过线性化得到系统的近似线性模型,线性化处理后再进行控制.也可以利用非线性控制理论对其进行控制. ● 不确定性 模型误差以及机械传动间隙, ...查看


  • 倒立摆MATLAB建模
  • 线控大作业 如图所示的倒立摆系统.图中,倒立摆安装在一个小车上.这里仅考虑倒立摆在图面内运动的二维问题. 图 倒立摆系统 假定倒立摆系统的参数如下. 摆杆的质量:m=0.1g 摆杆的长度:2l =1m 小车的质量:M=1kg 重力加速度:g ...查看


  • 关于一级倒立摆的模糊控制
  • 关于一级倒立摆的模糊控制 班级:12级电气工程及其自动化2班 学号:[1**********]39 姓名:吕杰 1.倒立摆模糊控制的研究 倒立摆一般有两种起始状态的控制.一种是在摆杆自然下垂,竖直向下为起始状态,通过不断的摆动,最终使其稳定 ...查看


  • 本科生毕业设计手册
  • 中国石油大学胜利学院 本科生毕业设计(论文)手册 题目学生姓名学号专业班级指导教师 2016年3月4日 目录 本科生毕业设计(论文)任务书................................................... ...查看


  • 单级倒立摆
  • 评分:_________ SHANGHAI UNIVERSITY 课程论文 COURSE PAPER 单级倒立摆 学 院 机自学院 专 业 电气工程及其自动化 学 号 12121696 学生姓名 王龙康 课程 现代控制理论 打印日期 目 录 ...查看


热门内容