基于系统的可控性进行配置极点(系统仿真)

基于系统的可控性进行配置极点(系统仿真)
基于系统的可控性进行配置极点(系统仿真)

课程设计报告

学生姓名:王强学号:0907240537 学院: 自动化工程学院

班级: 自动095

题目: 专业方向课程设计

基于系统的可控性进行配置极点

指导教师:姜文娟顾大可职称: 助教副教授

2013年 1月 9日

目录

1题目背景与意义 (2)

2 设计题目介绍 (2)

3设计步骤 (2)

3.1状态空间分析 (2)

3.2状态反馈的极点配置问题 (3)

3.3极点配置问题的算法实现 (3)

4理论计算 (4)

5仿真程序 (5)

5.1 主程序流程图 (5)

5.2 极点配置计算程序流程图 (6)

5.3 仿真程序设计 (7)

5.3.1 矩阵及参数输入 (7)

5.3.2 输入矩阵及参数的合法性判断 (7)

5.3.3 系统能控性判断 (8)

5.3.4 对系统进行极点配置 (8)

6仿真及结果分析 (8)

6.1 MATLAB运行及操作 (8)

6.2 仿真结果 (8)

6.3 程序通用性验证 (9)

结论 (9)

参考文献 (9)

附录 (10)

程序清单 (10)

1题目背景与意义

20世纪50年代后期,控制理论由经典控制理论向现代控制理论转变,现代控制理论是在引入状态空间概念的基础上发展起来的。与经典控制理论一样,现代控制系统中仍然主要采用反馈控制结构,但不同的是,经典控制理论中主要采用输出反馈,而现代控制系统中主要采用内部状态反馈。状态反馈可以为系统控制提供更多的信息反馈,从而实现更优的控制。闭环系统极点的分布情况决定于系统的稳定性和动态品质,因此,可以根据对系统动态品质的要求,规定闭环系统的极点所应具备的分布情况,把极点的配置作为系统的动态品质指标。这种把极点配置在某位置的过程称为极点配置。在空间状态法中,一般采用反馈系统状态变量或输出变量的办法,来实现系统的极点配置。

在系统的分析和综合中,所涉及的计算主要为矩阵运算和矩阵变换,MATLAB 为此提供了一个强有力的工具。利用MATLAB 语言编制实现此算法的通用程序。

2 设计题目介绍

本课程设计以自动控制理论、现代控制理论、MATLAB 及应用等知识为基础,基于系统的可控性进行配置极点,目的是使学生在现有的控制理论的基础上,学会用MATLAB 语言编写控制系统极点校正的设计与性能分析的程序,通过上机实习加深对课堂所学知识的理解,掌握实现极点校正的设计的方法。 1 在理论上对连续系统推导出可控的判定方法和计算公式 2 生成可控性矩阵

3 判别可控性矩阵的秩数(画出计算机实现算法的框图、编写程序并调试和运行)

4 实现极点配置

5 以下面的系统为例,进行计算

????

?????

?--=34

0011

121A ,???

??

?????=100B ,[]111

-=c 。

1)判定系统是否可任意配置极点;

2)若指定其极点在 -3+i ,-3-i ,-5处,求状态反馈矩阵K 。 6 秩数计算选主元精度为ep=0.001

7 程序应具有一定的通用性,对不同参数能有兼容性。

3设计步骤

3.1状态空间分析

对于控制系统Cx y Bu Ax x =+=?

,,式中A 为n ×n 系数矩阵;B 为n ×r

输入矩阵;C 为m ×n 输出矩阵。选择控制信号为:μ=﹣KX

图1 状态反馈闭环控制原理图

求解上式,得到Cx y Bv x BK A x =+-=?

,)(

可以看出,如果系统状态完全可控,K 选择适当,对于任意的初始状态,当t 趋于无穷时,都可以使x(t)趋于0。

3.2状态反馈的极点配置问题

线性系统的动态性能,系统稳定性,间域分析中的超调量、过渡时间等指标,要取决于系统的极点位置。点配置的一般方法可以通过换算(如根轨迹法)和经验估计,具体地加以确定。闭环极点组配置到所希望的位置上,价于使综合得到的线性系统的动态性能达到期望的要求。以证明,定常系统可通过状态变量反馈来任意配置其全部极点的充要条件是该系统为完全能控的,系统是完全能控的,特征值为Ki ,定的闭环系统的n 个所期望的极点是( K*1 , K*2 , , , K*n ) ,有K*i = Ki( A- BK) i = 1, 2, , , n 。

因此,于一个完全能控的线性系统的极点配置问题,际上转化为求解状态反馈增益矩阵K 。

3.3极点配置问题的算法实现

单输入系统极点配置的计算步骤如下:

(1)检查系统的能控性。如果系统能控,则按以下步骤计算状态反馈矩阵。

(2)计算矩阵A 的特征多项式,即0111]det[a s a s a s A sI n n n ++++=--- 。 (3)计算由希望的极点}{2

1

n λλλ

所决定的状态反馈系统特征多项式

*

1*1

1

*21*

)())(()(a

s a s

a

s s s s s a n n n

n ++++=---=-- λλλ。

(4)计算-

k

][11

*

1

1

*0

0*---

---=n n a a

a a

a a k 。 (5)确定变换矩阵P

???????

?????????=---00

1

001011][132

121

1

1

n n n c a a a a a a B A AB B

p (6)计算状态反馈矩阵K

1

1--

=c P k k

注意,这里的变换矩阵1

1-c P 就是将不是能控标准形的状态方程变成能控标准形的变换矩阵。当系统方程为能控标准形的情况,1

1-c P =I ,这时状态反馈矩阵K=-

k 。

在MATLAB 中用rank 指令易的矩阵的秩,用place()函数易得极点配置,但

在本次设计中将不采用这两条语句。这样就需要我们自己设计算法来实现课题需要。

4理论计算

由题目可知如下条件:

????

?????

?--=34

0011

121

A ,???

??

?????=100B ,[]111

-=c ,P=[-3+i ,-3-i ,-5]。

按步骤进行计算: 1) 系统能控性矩阵:Q c =][1

B A AB

B

n -

=????

?

????

?---93

1100

410

经计算矩阵Q c 的秩为3,所以系统能控。

2) 计算矩阵A 的特征多项式:Δ(s)==-]det[A sI s^3 - 5*s^2 + 5*s – 1 3) 希望极点所决定的状态反馈系统特征多项式为:

=

-∏

=3

1

)(i si s s^3 +11*s^2 + 40*s +50

4) 计算-k :-

k =[a*0-a 0 a*1-a 1 a*2-a 2]=[51 35 16] 5)

计算得变换矩阵11-c P =????

????

?

?-----13

2011

010 6) 计算状态反馈矩阵K

1

1--

=c P k k =[-67 -134 16]

5仿真程序

5.1 主程序流程图

图2主程序流程图

5.2 极点配置计算程序流程图

图3极点配置计算程序流程图

5.3 仿真程序设计

5.3.1 矩阵及参数输入

在MATLAB中,从键盘输入数据需要用到input指令,对一个系统进行极点配置,需要输入系统矩阵、输入矩阵、输出矩阵、指定极点。所以程序可写成:

A=input('请输入系统矩阵A = ');

B=input('请输入输入矩阵 B = ');

C=input('请输入输出矩阵C = ');

P=input('请输入指定极点P= ');

5.3.2 输入矩阵及参数的合法性判断

对系统进行极点配置,所输入的矩阵及指定极点都是有要求的,其中系

统矩阵A必须是方阵,输入矩阵B和系统矩阵A的行数必须相同,指定闭

环极点P的数量必须和A的行数相同,且P的实部应小于0,以及P中的

复数应共轭。这些判断的程序如下:

[nx,na]=size(A);

if na~=nx,

error('A 必须是方阵!')

elseif nx==0,

return

end

[n,m]=size(B);

if nx~=n,

error('B和A的行数必须相同!')

end

if length(P)~=nx,

error('P的数量必须和A的行数相同!')

end

j=0;

for i=1:n,

if(real(P(i))>0),

j=1;

end

end

if j~=0,

error ('P的实部应小于0!')

else

if ~isequal(sort(P(imag(P)>0)),sort(conj(P(imag(P)<0))))

error ('P中复数应共轭!')

end

end

???

?

??

??????????--0001001011132121

n n a a a a a a 5.3.3 系统能控性判断

判断系统能控性,需要先求系统能控性矩阵,在MATLAB 中,使用指令ctrb(A,B)便可方便得到。之后需要确定系统能控性矩阵是否满秩,如果满秩则能控,否则不可控。由于不使用rank 指令求秩,则需要对系统能控性矩阵进行初等行变换,在MATLAB 中可以使用指令rref ,经两次化成最简形后,求矩阵的行列式,如果为0则说明不是满秩,进而得到系统不可控,反之,则系统可控,可以进行极点配置。以上过程实现的程序如下: S=ctrb(A,B); Q=rref(rref(S)')'; if det(Q)==0.000

disp ('系统不可控!不能任意配置极点!') else

disp ( '系统可控,理论上能任意配置极点。') end

5.3.4 对系统进行极点配置

在MATLAB 中用指令place(A,B,P)可以直接进行极点配置,但在本次课程设计中本着探究的目的需要自行设计算法进行实现极点配置。所以这段的设计中,我参照极点配置的常规步骤,按流程用MATLAB 程序语言实现极点配置的过程。计算A 的特征多项式时,直接使用det(s*I-A)便可以实现;在构建P c 1前,需要用for 循环及条件指令,构造一个矩阵,形如:

最后计算K ,直接按照公式1

1--

=c P k k ,在MATLAB 中将之前求得的部分相乘即得。

6仿真及结果分析

6.1 MATLAB 运行及操作

打开MATLAB 软件,在菜单栏里点击File 找到new 之后弹出并点击Script 或者使用快捷键Ctrl+N 新建一个.m 文件,然后按照之前的设计方案将语句输入,之后在工具栏点击Debug 找到Save file and Run ,就可以运行所编的程序。

6.2 仿真结果

在m 文件运行后,按照提示输入如下:

请输入系统矩阵 A = [1,2,-1;1,1,0;0,-4,3] 请输入输入矩阵 B = [0;0;1]

请输入输出矩阵C = [1,-1,1]

请输入指定极点P= [-3+i,-3-i,-5]

之后按回车键,软件开始运算。结果如下:

系统可控,理论上能任意配置极点。

K =

[ -57.0, -74.0, 16.0]

该结果与前边手工计算的结果一样,初步说明该程序具有可行性。

6.3 程序通用性验证

再次运行该程序,输入与课题给出的一组不同的数据,如下:

请输入系统矩阵A = [-6,-11,-6;1,0,0;0,1,0]

请输入输入矩阵B = [1;0;0]

请输入输出矩阵C = [0,0,10]

请输入指定极点P= [-10,-11,-12]

运行结果如下:

系统可控,理论上能任意配置极点。

K =

[ 27.0, 351.0, 1314.0]

经手工计算及使用place指令求得的极点配置结果验证一致,该程序具有一定的通用性。

结论

通过此次的课程设计,使我对MATLAB有了更加深入的了解,在设计过程中,遇到不会的,通过与老师交流及大量参考资料的查找,强化了对MATLAB 及现代控制理论的认识。并且在过程中,我明白了,实现一个同样的结果可以有多种方法,通过抛开MATLAB中的简便函数使用,更加锻炼我的分析能力及编程思维,在大量语句的编写过程,细心是很重要的。出现错误之后,积极寻找可行的解决办法,拓展了对算法的理解。

参考文献

[1]孙增晰.计算机辅助设计.北京:清华大学出版社,1995

[2]郑大钟.线性系统理论.北京:清华大学出版社,2004

[3]姚全珠.软件技术基础.北京:电子工业出版社,2006

[4]王小丹.基于MA TLAB的系统分析与设计.西安:西安电子科技大学出版社,2007

[5] 王正林.MA TLAB/Simulink与控制系统仿真(第2版).电子工业出版社,1998.48-54.

[6]赵景波.MA TLAB控制系统仿真与设计.机械工业出版社,2010-11-1.78-90.

附录

程序清单

A=input('请输入系统矩阵A = ');

B=input('请输入输入矩阵 B = ');

C=input('请输入输出矩阵C = ');

P=input('请输入指定极点P= ');

[nx,na]=size(A); %判断A矩阵是否合法

if na~=nx,

error('A 必须是方阵!')

elseif nx==0,

return

end

[n,m]=size(B); %判断B 矩阵是否合法

if nx~=n,

error('B和A的行数必须相同!')

end

S=ctrb(A,B); % S为能控性矩阵]

B n

[1B

AB

A

Q=rref(rref(S)')'; %初等行变换化行最简形

if det(Q)==0.000 %判断系统是否可控

disp ('系统不可控!不能任意配置极点!')

else

disp ( '系统可控,理论上能任意配置极点。')

end

if length(P)~=nx, %判P(系统指定闭环极点)是否合法error('P的数量必须和A的行数相同!')

end

j=0;

for i=1:n,

if(real(P(i))>0),

j=1;

end

end

if j~=0,

error ('P的实部应小于0!')

else

if ~isequal(sort(P(imag(P)>0)),sort(conj(P(imag(P)<0))))

error ('P中复数应共轭!')

end

end

syms s; %定义符号变量

???????

????????

?--00

1001011132121

n n a a a a a a I=eye(n); %创建单位阵

Det=det(s*I-A); %计算A 的特征多项式

aq=fliplr(sym2poly(Det)); %取A 的特征多项式系数,并反转

ah=fliplr(poly(P)); %取由P 构成的特征多项式的系数,并反转 k=ah-aq; k=k(1:n);

%计算-

k

a=aq(2:n);

%以下循环构建矩阵:

A1=[]; for i=1:n,

for j=1:n,

if(j<=n-i), if i>j,

A1(i,j)=a(i); else

A1(i,j)=a(j); end else if(j==n-i+1),

A1(i,j)=1; else

A1(i,j)=0; end

end end end

Pc1=S*A1; %构建Pc1 digits(6)

K=vpa(k*inv(Pc1))

%1

1--

=c P k k

实验 6 极点配置与全维状态观测器的设计(优.选)

实验 6 极点配置与全维状态观测器的设计 一、实验目的 1. 加深对状态反馈作用的理解。 2. 学习和掌握状态观测器的设计方法。 二、实验原理 在MATLAB 中,可以使用acker 和place 函数来进行极点配置,函数的使用方法如下:K = acker(A,B,P) A,B为系统系数矩阵,P为配置极点,K为反馈增益矩阵。 K = place(A,B,P) A,B为系统系数矩阵,P为配置极点,K为反馈增益矩阵。 [K,PREC,MESSAGE] = place(A,B,P) A,B为系统系数矩阵,P为配置极点,K为反馈增益矩阵,PREC 为特征值,MESSAGE 为配置中的出错信息。 三、实验内容 1.已知系统 (1)判断系统稳定性,说明原因。 (2)若不稳定,进行极点配置,期望极点:-1,-2,-3,求出状态反馈矩阵k。 (3)讨论状态反馈与输出反馈的关系,说明状态反馈为何能进行极点配置? (4)使用状态反馈进行零极点配置的前提条件是什么? 1. (1) (2) 代码: a=[-2 -1 1;1 0 1;-1 0 1]; b=[1,1,1]'; p=[-1,-2,-3]'; K=acker(a,b,p) K = -1 2 4 (3)讨论状态反馈与输出反馈的关系, 说明状态反馈为何能进行极点配置?

在经典控制理论中,一般只考虑由系统的输出变量来构成反馈律,即输出反馈。在现代控制理论的状态空间分析方法中,多考虑采用状态变量来构成反馈律,即状态反馈。从状态空间模型输出方程可以看出,输出反馈可视为状态反馈的一个特例。状态反馈可以提供更多的补偿信息,只要状态进行简单的计算再反馈,就可以获得优良的控制性能。 (4)使用状态反馈配置极点的前提是系统的状态是完全可控的。 2.已知系统 设计全维状态观测器,使观测器的极点配置在12+j,12-j 。 (1)给出原系统的状态曲线。 (2)给出观测器的状态曲线并加以对比。(观测器的初始状态可以任意选取)观察实验结果,思考以下问题: (1)说明反馈控制闭环期望极点和观测器极点的选取原则。 (2)说明观测器的引入对系统性能的影响。 (1)A=[0 1;-3 -4]; B=[0;1]; C=[2 0]; D=[]; G=ss(A,B,C,D); x=0:0.001:5; U=0*(x<0)+1*(x>0)+1*(x==0); X0=[0 1]'; T=0:0.001:5; lsim(G,U,T,X0);

倒立摆状态空间极点配置控制实验实验报告

《现代控制理论》实验报告 状态空间极点配置控制实验 一、实验原理 经典控制理论的研究对象主要是单输入单输出的系统,控制器设计时一般需要有关被控对象的较精确模型,现代控制理论主要是依据现代数学工具,将经典控制理论的概念扩展到多输入多输出系统。极点配置法通过设计状态反馈控制器将多变量系统的闭环系统极点配置在期望的位置上,从而使系统满足瞬态和稳态性能指标。 1.状态空间分析 对于控制系统X = AX + Bu 选择控制信号为:u = ?KX 式中:X 为状态向量( n 维)u 控制向量(纯量) A n × n维常数矩阵 B n ×1维常数矩阵 求解上式,得到 x(t) = (A ? BK)x(t) 方程的解为: x(t) = e( A?BK )t x(0) 状态反馈闭环控制原理图如下所示: 从图中可以看出,如果系统状态完全可控,K 选择适当,对于任意的初始状态,当t趋于无穷时,都可以使x(t)趋于0。 2.极点配置的设计步骤 1) 检验系统的可控性条件。 2) 从矩阵 A 的特征多项式 来确定 a1, a2,……,an的值。 3) 确定使状态方程变为可控标准型的变换矩阵 T:T = MW 其中 M 为可控性矩阵, 4) 利用所期望的特征值,写出期望的多项式 5) 需要的状态反馈增益矩阵 K 由以下方程确定: 二、实验内容 针对直线型一级倒立摆系统应用极点配置法设计控制器,进行极点配置并用Matlab进行仿真实验。 三、实验步骤及结果 1.根据直线一级倒立摆的状态空间模型,以小车加速度作为输 入的系统状态方程为: 可以取1 l 。则得到系统的状态方程为: 于是有:

直线一级倒立摆的极点配置转化为: 对于如上所述的系统,设计控制器,要求系统具有较短的调整时间(约 3 秒)和合适的阻尼(阻尼比? = 0.5)。 2.采用四种不同的方法计算反馈矩阵 K。 方法一:按极点配置步骤进行计算。 1) 检验系统可控性,由系统可控性分析可以得到,系统的状态完全可控性矩阵的秩等于系统的状态维数(4),系统的输出完全可控性矩阵的秩等于系统输出向量y 的维数(2),所以系统可控。 倒立摆极点配置原理图 2) 计算特征值 根据要求,并留有一定的裕量(设调整时间为 2 秒),我们选取期望的闭环极点s =μi (i = 1,2,3,4) ,其中: 其中,μ 3,μ 4 使一对具有的主导闭环极点,μ 1 ,μ 2 位于 主导闭环极点的左边,因此其影响较小,因此期望的特征方程为: 因此可以得到: 由系统的特征方程: 因此有 系统的反馈增益矩阵为: 3) 确定使状态方程变为可控标准型的变换矩阵 T:T = MW 式中: M = 0 1.0000 0 0 1.0000 0 0 0 0 0.7500 0 5.5125 0.7500 0 5.5125 0 W = 0 -7.3500 -0.0000 1.0000 -7.3500 -0.0000 1.0000 0 -0.0000 1.0000 0 0 1.0000 0 0 0 于是可以得到: T = -7.3500 -0.0000 1.0000 0 0 -7.3500 -0.0000 1.0000 0 -0.0000 0.7500 0 -0.0000 0 -0.0000 0.7500 T’= -7.3500 0 0 -0.0000 -0.0000 -7.3500 -0.0000 0 1.0000 -0.0000 0.7500 -0.0000 0 1.0000 0 0.7500

7状态空间设计法极点配置观测器解析

第7章线性定常离散时间状态空间设计法 7.1引言 7.2状态反馈配置极点 7.3状态估值和状态观测器 7.4利用状态估值构成状态反馈以配置极点 7.5扰动调节 7.6无差调节

7.1 引言 一个被控对象: (1)()()()() ():1,():1,:,:,:x k Fx k Gu k y k Cx k x k n u k m F n n G n m C r n +=+?? =?????? 7.1 当设计控制器对其控制时,需要考虑如下各因素: ● 扰动,比如负载扰动 ● 测量噪声 ● 给定输入的指令信号 ● 输出 如图7.1所示。 给d L (k )扰动 图7.1 控制系统示意图 根据工程背景的不同,控制问题可分为调节问题和跟踪问题,跟踪问题也称为伺服问题。 调节问题的设计目标是使输出迅速而平稳地运行于某一平衡状态。包括指令变化时的动态过程,和负载扰动下的动态过程。但是这二者往往是矛盾的,需要折衷考虑。 伺服问题的设计目标是对指令信号的快速动态跟踪。 本章研究基于离散时间状态空间模型的设计方法。 7.2研究通过状态变量的反馈对闭环系统的全部特征值任意配置——稳定性与快速线。 7.3考虑当被控对象模型的状态无法直接测量时,如何使用状态观测器对状态进行重构。 7.4讨论使用重构状态进行状态反馈时闭环系统的特征值。 7.5简单地讨论扰动调节问题。 7.6状态空间设计时的无差调节问题。

7.2 状态反馈配置极点 工程被控对象如式7.1,考虑状态反馈 ()()()u k v k Lx k =+ 7.2 如图7.2所示。式7.2带入式7.1,得 (1)()()()() ()()()x k Fx k Gu k y k Cx k u k v k Lx k +=+?? =??=+? 7.3 整理得 ()(1)()() ()()x k F GL x k Gv k y k Cx k +=++?? =? 7.4 (k ) v (k ) 图7.2 状态反馈任意配置闭环系统的极点 闭环系统的特征方程为 []det ()0zI F GL -+= 7.5 问题是在什么情况下式7.5的特征根是可以任意配置的?即任给工程上期望的n 个特征根λ1, λ2, ..., λn ,有 []1det ()()0n i i zI F GL z λ=-+=-=∏ 7.6 定理:状态反馈配置极点

控制器极点配置方法

控制器极点配置方法 如果已知系统的模型或传递函数,通过引入某种控制器,使得闭环系统的极点可以移动到指定的位置,从而使系统的动态性能得到改善。这种方法称为极点配置法。 例6-12 有一控制系统如图6-38,其中,要求设计一个控制器,使系统稳定。 图6-38 解:(1)校正前,闭环系统的极点: > 0 因而控制系统不稳定。 (2)在控制对象前串联一个一阶惯性环节,c>0,则闭环系统极点: 显然,当,时,系统可以稳定。但此对参数c 的选择依赖于 a 、b 。因而,可 选择控制器,c 、d ,则有特征方程: 当,时,系统稳定。 本例由于原开环系统不稳定,因而不能通过简单的零极点相消方式进行控制器的设计,其原因在于控制器的参数在具体实现中无法那么准确,从而可能导致校正后的系统仍不稳定。 例6-13 已知一单位反馈控制系统的开环传递函数:

要求设计一串联校正装置Gc(s) ,使校正后系统的静态速度误差系统,闭环主导极点在 处。 解:首先,通过校正前系统的根轨迹可以发现,如图6-39所示,其主导极点为: 。 图6-39 为使主导极点向左偏移,宜采用超前校正装置。 (2)令超前校正装置,可采用待定系数法确定相关参数: 又

其中、、、为待定系数。 进一步可得: 即 将代入式子可以得到:,,,。进一步可得超前校正装置的传递函数: 校正后系统的根轨迹如图6-39所示。 该校正装置与例6-7中由超前装置获取的校正装置结果基本相同,说明结果是正确的。 在matlab中,亦有相应的命令可进行极点配置,主要有三个算法可实现极点配置算法:Bass-Gura算法、Ackermann 算法和鲁棒极点配置算法。这些算法均以状态空间进行表征,通过设定期望极点位置,获取状态反馈矩阵K。下面通过示例介绍其中的一种算法。 例6-14 考虑给定的系统,其状态方程模型如下:

状态反馈与极点配置报告

自 动 控 制 原 理 (课程设计)

一、题目 用MATLAB创建用户界面,并完成以下功能: (1)由用户输入被控系统的状态空间模型、闭环系统希望的一组极点; (2)显示未综合系统的单位阶跃响应曲线; (3)显示采用一般设计方法得到的状态反馈矩阵参数; (4)显示闭环反馈系统的单位阶跃响应曲线; (5)将该子系统嵌入到寒假作业中程序中。 分别对固定阶次和任意阶次的被控系统进行设计。分别给出设计实例。 二、运行结果 界面:如图 由用户输入被控系统的状态空间模型、闭环系统希望的一组极点 例如,输入 010 001 034 A ?? ?? =?? ?? -- ?? , 1 B ?? ?? =?? ?? ?? ,[] 2000 C=,0 D=,闭环系统 希望的一组极点:22j -+、22j --、5 -如图所示:

被控系统的单位阶跃响应曲线 闭环系统的单位阶跃响应曲线

状态反馈矩阵显示 三、讨论 该闭环控制系统的状态反馈与极点配置设计系统可用于任意阶次的控制系统。在此之前,我还做了一个固定阶次的控制系统状态反馈与极点配置的Matlab 控制台程序(见附录二)。 该系统的利用状态反馈进行极点任意配置所采用的方法为一般方法,其步骤如下: ①判断受控系统是否完全能控; ②由给定的闭环极点要求确定希望的闭环特征多项式的n个系数 ~ i a; ③确定原受控系统的特征多项式系数i a; ④确定系统状态反馈矩阵 ~ ~~ ~ [,,,] 12n f f f F=的诸元素~~1 1i i i f a a - =- -; ⑤确定原受控系统化为能控标准形的变换阵的逆1 P-, ⑥确定受控系统完成闭环极点配置任务的状态反馈阵 ~ 1 F F P-=。 四、参考文献 [1]黄家英.《自动控制原理》.高等教育出版社,2010.5 [2]唐向红,郑雪峰.《MATLAB及在电子信息类》.电子工业出版社,2009.6 [3]吴大正,高西全.《MATLAB新编教程》.机械工业出版社,2008.4 五、附录 function varargout = tufeiqiang(varargin) %TUFEIQIANG M-file for tufeiqiang.fig % TUFEIQIANG, by itself, creates a new TUFEIQIANG or raises the existing % singleton*. % % H = TUFEIQIANG returns the handle to a new TUFEIQIANG or the handle to % the existing singleton*. % % TUFEIQIANG('Property','Value',...) creates a new TUFEIQIANG using

基于极点配置的控制器设计与仿真

计算机控制理论与设计作业 题目:基于极点配置方法的直流调速系统的控制器设计

摘要 本文目的是用极点配置方法对连续的被控对象设计控制器。基本思路是对连续系统进行数学建模,将连续模型进行离散化,针对离散的被控对象,用极点配置的方法分别在用状态方程和传递函数两种描述方法下设计前馈和反馈控制器,并用MATLAB仿真。文中具体以直流调速系统作为研究对象,对直流调速系统的组成和结构进行了分析,把各个部分进行数学建模,求出其传递函数,组成系统结构框图,利用自控原理的知识对结构图化简,求出被控对象的传递函数和状态方程,进一步得将其离散化。第一种是通过极点配置设计方法的原理,用状态方程设计被控对象的控制律,因为直流调速系统存在噪声,实际状态不可测,故选择了全阶的观测器,又因为采样时间小于计算延时,所以选择了预报观测器。利用所学知识对此闭环系统设计前馈和反馈控制器[1]。第二种利用传统的离散传递函数,从代数多项式的角度进行复合控制器的设计,在保证系统稳定的情况下,分析系统的可实现性,稳定性,静态指标,动态指标,抗干扰等方面性能研究前馈反馈相结合控制器设计。重点是保证被控对象的不稳定的零极点不能被抵消。最后利用MATLAB的Simulink进行仿真,观察系统的输出的y和u和收敛性,并加入扰动看其抗干扰性能,得出结论。 经研究分析,对于直流调速系统,基于极点配置设计的前馈反馈相结合的控制器,具有良好的稳定性能和抗干扰性能。运行结果符合实际情况。 关键词:极点配置;状态方程;直流调速系统;代数多项式;Matlab;

1绪论 1.1论文的背景及意义 在工业生产和日常生活中,自动控制系统分为确定性系统和不确定性系统两类,确定性系统是指系统的结构和参数是确定的,确定的输入下,输出也确定的一类系统。确定性系统相对于不确定性系统而言的。在确定的系统中所用的变量都可用确切的函数关系来描述,系统的运动特性可以完全确定。以确定性系统为研究对象的控制理论称为确定性控制理论。本文以直流调速系统为研究对象,利用极点配置的设计方法,包括利用状态空间模型和传递函数模型分别描述线性系统,采用闭环极点为指标的控制器设计的理论和方法,设计出前馈和反馈控制器,组建闭环控制系统,用Matlab进行仿真可以逼真地还原出实际系统。 1.2 论文的主要内容 本文直流电机的调速系统的模型作为研究对象,利用线性系统极点配置的设计方法,设计前馈反馈控制器。论文研究的主要内容: (1)阅读学习国内外期刊文献,研究了极点配置的基本原理和Matlab的实现方法。 (2)系统的说明直流电机的系统结构和工作原理并分析,建立直流调速系统的数学模型,将其进行离散化,并讨论其传递函数与状态方程之间的关系。 (3)分析极点配置控制器的设计原理,利用状态方程设计控制器。 (4)将被控对象的传递函数离散化,利用传递函数模型设计控制器。 (4)在MATLAB中建立闭环直流调速系统的模型,根据闭环极点配置的设计步骤编写程序,用Simulink搭建仿真系统,对闭环直流调速系统的输出进行仿真分析。 (5)对仿真结果分析。将仿真结果与实际直流调速系统的阶跃响应的各项参数相比较,得出结论。

控制系统的极点配置设计法

控制系统的极点配置设计法 一、极点配置原理 1.性能指标要求 2.极点选择区域 主导极点: 2 11 1 cos tan ξ βξ ξ -- - == 图3.22 系统在S平面上满足 时域性能指标的范围 n s t ζω 4 = ;当Δ=0.02时,。 n s t ζω 3 = 当Δ=0.05时,

3.其它极点配置原则 系统传递函数极点在s 平面上的分布如图(a )所示。极点s 3距虚轴距离不小于共轭复数极点s 1、s 2距虚轴距离的5倍,即n s s ξω5Re 5Re 13=≥(此处ξ,n ω对应于极点s 1、s 2) ;同时,极点s 1、s 2的附近不存在系统的零点。由以上条件可算出与极点s 3所对应的过渡过程分量的调整时间为 135 1 451s n s t t =?≤ ξω 式中1s t 是极点s 1、s 2所对应过渡过程的调整时间。 图(b )表示图(a )所示的单位阶跃响应函数的分量。由图可知,由共轭复数极点s 1、s 2确定的分量在该系统的单位阶跃响应函数中起主导作用,即主导极点。因为它衰减得最慢。其它远离虚轴的极点s 3、s 4、s 5 所对应的单位阶跃响应衰减较快,它们仅在极短时间内产生一定的影响。因此,对系统过渡过程进行近似分析时。可以忽略这些分量对系统过渡过程的影响。 n x o (t) (a ) (b ) 系统极点的位置与阶跃响应的关系

二、极点配置实例 磁悬浮轴承控制系统设计 1.1磁悬浮轴承系统工作原理 图1是一个主动控制的磁悬浮轴承系统原理图。主要由被悬浮转子、传感器、控制器和执行器(包括电磁铁和功率放大器)四大部分组成。设电磁铁绕组上的电流为I0,它对转子产生的吸力F和转子的重力mg相平衡,转子处于悬浮的平衡位置,这个位置称为参考位置。 (a)(b) 图1 磁悬浮轴承系统的工作原理 Fig.1 The magnetic suspension bearing system principle drawing 假设在参考位置上,转子受到一个向下的扰动,转子就会偏离其参考位置向下运动,此时传感器检测出转子偏离其参考位置的位移,控制器将这一位移信号变换成控制信号,功率放大器又将该控制信号变换成控制电流I0+i,控制电流由I0增加到I0+i,因此,电磁铁的吸力变大了,从而驱动转子返回到原来的平衡位置。反之,当转子受到一个向上的扰动并向上运动,此时控制器使得功率放大器的输出电流由I0,减小到I0-i,电磁铁的吸力变小了,转子也能返回到原来的平衡位置。因此,不论转子受到向上或向下的扰动,都能回到平衡状态。这就是主动磁轴承系统的工作原理。即传感器检测出转子偏移参考点的位移,作为控制器的微处理器将检测到的位移信号变换成控制信号,然后功率放大器将这一控制信号转换成控制电流,控制电流在执行磁铁中产生磁力从而使转子维持其悬浮位置不变。悬浮系统的刚

倒立摆系统的状态空间极点配置控制设计

摘要:为实现多输入、多输出、高度非线不稳定的倒立摆系统平衡稳定控制,将倒立摆系统的非线性模型进行近似线性化处理,获得系统在平衡点附近的线性化模型。利用牛顿—欧拉方法建立直线型一级倒立摆系统的数学模型。在分析的基础上,基于状态反馈控制中极点配置法对直线型倒立摆系统设计控制器。由MATLAB仿真表明采用的控制策略是有效的,设计的控制器对直线型一级倒立摆系统的平衡稳定性效果好,提高了系统的干扰能力。 关键词:倒立摆、极点配置、MATLAB仿真 引言:倒立摆是进行控制理论研究的典型试验平台,由于倒立摆本身所具有的高阶次、不稳定、非线性和强耦合性,许多现代控制理论的研究人员一直将他视为典型的研究对象,不断从中发掘出新的控制策略和控制方法。控制器的设计是倒立摆系统的核心内容,因为倒立摆是一个绝对不稳定的系统,为使其保持稳定并且可以承受一定的干扰,基于极点配置法给直线型一级倒立摆系统设计控制器 1.数学模型的建立 倒立摆系统其本身是自不稳定的系统,实验建模存在着一定的困难。在忽略掉一些次要的因素之后,倒立摆系统就是一典型的运动的刚体系统,可以在惯性坐标系中应用经典力学理论建立系统动力学方程。下面采用牛顿-欧拉方法建立直线型一级倒立摆系统的数学模型。 1.1微分方程的数学模型 在忽略了空气阻力和各种摩擦力之后,可将直线一级倒立摆系统抽象成小车和匀质杆组成的系统,如图1所示:

图1:直线一级倒立摆模型 设系统的相关参数定义如下: M:小车质量 m:摆杆质量 b:小车摩擦系数 l:摆杆转动轴心到杆质心的长度 I:摆杆质量 F:加在小车上的力 x:小车位置 Φ:摆杆与垂直方向上方向的夹角 θ:摆杆与垂直方向下方向的夹角(摆杆的初始位置为竖直向下) 如下图2所示为小车和摆杆的受力分析图。其中,N和P为小车与摆杆相互作用力的水平和垂直方向的分量。

基于极点配置方法的直流电机转速控制系统设计

摘要 建模、控制与优化是控制理论要解决的主要问题。在这些问题中,广泛采用了现代数学方法,使得控制理论的研究不断深入,取得了丰硕的成果。建模是控制理论中所要解决的第一个问题。控制理论中的建模方法主要有两种,一是经验建模,二是根据物理规律建模。所研究的对象主要是动态模型,一般用微分方程或差分方程来描述。设计控制系统是控制理论的核心内容。在线性系统中,我们所用到的数学工具是拓扑、线性群。在非线性系统中,我们用到了微分几何。可以说微分几何是非线性控制理论的数学基础。优化是控制的一个基本目的,而最优控制则是现代控制理论的一个重要组成部分。例如庞特里亚金的极大值原理、贝尔曼的动态规划,都是关于优化和最优控制问题的。 本报告首先介绍了直流电动机的物理模型, 并测量计算了它的具体参数。然后根据牛顿第二定律和回路电压法分别列写运动平衡方程式和电机电枢回路方程式,从而通过一些数学变换抽象出了以电压为输入、转速为输出、电流和转速为状态变量的数学模型。通过对抽象出来的模型进行性能分析,确定需要使用状态观测器来修正系统。继而借助MATLAB软件对转速环进行了状态反馈控制器的设计,使系统的阶跃响应达到了设计指标。 关键词:建模控制理论设计控制系统直流电动机转速状态反馈控制器

1 系统的物理模型、参数及设计要求 -------------------- 4 1.1 系统模型 ------------------------------------- 4 1.2 系统参数 ------------------------------------- 5 1.3 设计要求 ------------------------------------- 5 2 系统模型的建立------------------------------------ 6 2.1 模型抽象 ------------------------------------- 6 2.2 所建模型的性能分析 --------------------------- 7 3 系统状态观测器的设计----------------------------- 11 3.1 期望配置的极点的确定以及状态观测器的设计----- 11 3.1.1 第一组极点配置-------------------------- 11 3.1.2 第二组极点配置-------------------------- 11 3.2 状态观测器的设计 ---------------------------- 12 3.2.1 第一组极点------------------------------ 12 3.2.2 第二组极点------------------------------ 14 3.3 状态观测器的仿真图 -------------------------- 16 3.4 原系统加了状态观测器后的仿真结果图及分析----- 17 3.4.1 第一组极点------------------------------ 17 3.4.2 第二组极点------------------------------ 18 4 状态观测器极点配置与PID方法的比较 --------------- 20 4.1 直流电机转速、电流PID控制的设计------------- 20 4.2 两种方法的比较 ------------------------------ 21

状态空间设计与分析

状态空间分析及设计 姓名:周海波 学号:200740297(15) 班级:自控实验0701班 日期:2010-5-2

目录 一.系统能控性和能观性判定 二.主导极点法进行状态反馈极点配置 三.对称根轨迹法(SRL)进行状态反馈极点配置 四.主导极点法和SRL状态反馈极点配置对比 五.全维观测器设计和分析 1.观测器设计 2.分离定理验证 六.带全维观测器的状态反馈与直接状态反馈对比 七.降阶观测器和带降阶观测器的状态反馈系统的设计和分析八.全维观测器的状态反馈与降阶观测器的状态反馈对比 1.抗过程干扰能力 2.抗测量噪声能力 九.采用内模原则设计状态反馈系统 1.跟踪性能分析 2.抗干扰性能分析

状态空间分析及设计 有以下系统 122201101011x x μ ???????????=?+?????????????i []100y x =要求:对系统设计状态反馈使得系统闭环阶跃响应的超调量小于5%,且在稳态误差值为1%范围内的调节时间小于4.6s. 一.系统能控性和能观性判定 由系统能控性判别矩阵: 224001013115rank B AB A B rank ???????==????????? 由系统能观性判别矩阵:21001223142C rank CA rank CA ????????=???=????????????? 所以系统既是能控的又是能观的。 二.主导极点法进行状态反馈极点配置1.当 4.61% 4.6s n t s ζω?== <%5%e πζσ?=<解得:0.691n ζζω>??>?取0.75 2n ζω==则:2222340 n n s s s s ζωω++=++=所以1,2 1.5 1.323s j =?±,取非主导极点38s =?,则期望特征多项式为: 232(34)(8)112832 s s s s s s +++=+++设[]123K k k k =又

系统稳定性分析 、利用MATLAB 实现极点配置、设计状态观测器

实验报告 实验名称系统稳定性分析、利用MATLAB实现极点配置、设计状态观测器系专业班 姓名学号授课老师 预定时间实验时间实验台号 一、目的要求 掌握系统稳定性的概念。学会使用MATLAB确定线性定常系统和非线性定常系统的稳定性。 掌握状态反馈和输出反馈的概念及性质。 掌握利用状态反馈进行极点配置的方法。学会用MATLAB求解状态反馈矩阵。 掌握状态观测器的设计方法。学会用MATLAB设计状态观测器。 熟悉分离定理,学会设计带有状态观测器的状态反馈系统。 二、原理简述 函数eig()的调用格式为V=eig(A)返回方阵A的特征值。 函数roots()的调用格式为roots(den),其中den为多项式的系数行向量。计算多项式方程的解。 函数pole()的调用格式为pole(G),其中G为系统的LTI对象。计算系统传递函数的极点。 函数zpkdata()的调用格式为[z,p,k]=zpkdata(G,’v’),其中G为系统LTI对象。返回系统的零点、极点和增益。 函数pzmap()的调用格式为pzmap(G),其中G为LTI对象。绘制系统的零点和极点。 对于线性定常连续系统x Ax,若A是非奇异矩阵,则原点是其唯一的平衡状态。统在原点处大范围渐近稳定的充分条件是:存在李氏函数v(x)x T px,且v(x)正定,v(x)负定。 如果SISO线性定常系统完全能控,则可通过适当的状态反馈,将闭环系统极点配置到 任意期望的位置。 MATLAB提供的函数acker()是用Ackermann公式求解状态反馈阵K。 MATLAB提供的函数place()也可求出状态反馈阵K。 如果线性定常系统完全能观测,则可构造全维(基本)观测器。全维(基本) 状态观测器的状态方程为观测器的反馈矩阵L为 其中为系统的能观测矩阵。 其中为期望的状态观测器的极点。观测器设计是极点配置的对偶问题,故可利用函数acker()和place()进行求解。

系统的能控性与能观性分析及状态反馈极点配置

实 验 报 告 课程 自动控制原理 实验日期 12 月26 日 专业班级 姓名 学号 实验名称 系统的能控性与能观性分析及状态反馈极点配置 评分 批阅教师签字 一、实验目的 加深理解能观测性、能控性、稳定性、最小实现等观念,掌握状态反馈极点配置方法,掌握如何使用MATLAB 进行以下分析和实现。 1、系统的能观测性、能控性分析; 2、系统的最小实现; 3、进行状态反馈系统的极点配置; 4、研究不同配置对系统动态特性的影响。 二、实验内容 1.能控性、能观测性及系统实现 (a )了解以下命令的功能;自选对象模型,进行运算,并写出结果。 gram, ctrb, obsv, lyap, ctrbf, obsvf, mineral ; (b )已知连续系统的传递函数模型,18 2710)(23++++= s s s a s s G , 当a 分别取-1,0,1时,判别系统的能控性与能观测性;

(c )已知系统矩阵为??????????--=2101013333.06667.10666.6A ,?? ??? ?????=110B ,[]201=C ,判别系统的能控性与能观测性; (d )求系统18 27101 )(2 3++++=s s s s s G 的最小实现。 2.实验内容 原系统如图1-2所示。图中,X 1和X 2是可以测量的状态变量。 图1-2 系统结构图 试设计状态反馈矩阵

,使系统加入状态反馈后其动态性能指标满足给定的要求: (1) 已知:K=10,T=1秒,要求加入状态反馈后系统的动态性能指标为: σ%≤20%,ts≤1秒。 (2) 已知:K=1,T=0.05秒,要求加入状态反馈后系统的动态性能指标为: σ%≤5%,ts≤0.5秒。 状态反馈后的系统,如图1-3所示:

极点配置自适应控制器的设计

具有抑制噪声性质的极点配置自校正控制器设计 摘要:本文首先介绍了极点配置自校正控制器设计中的一些不足之处,然后提 出了一种极点配置自校正控制算法.它具有以下三个特点:(1)除了配置系统的闭环极点外,还可抑制噪声对系统输出的干扰;(2)与其他极点配置自校正控制算法相比,本算法所需的计算量大为减少;(3)理论上可得到算法的收敛性结果.该算法已在实际系统中得到了成功的应用。 关键字:极点配置 自校正 仿真 一、前言 极点配置自校正控制器在最近几年里得到了很大的发展,出现了许多自校正算法,但现有的各种自校正控制算法还存在一些不够完善之处。首先,由于这种控制器的控制目的是配置系统的闭环极点,所以,在控制器的设计过程中,对如何减少噪声对系统输出的干扰这个问题没有特别加以考虑;第二,计算量比较大,难以实时控制;第三,理论上不够完善,如现有的各种算法都没有收敛性证明。所以说,极点配置自校正控制器的理论和应用都不太成熟,有待于进一步发展。 二、算法 设所研究的系统由下面方程描述。 (1) )e (t )C (q )u (t )(q q (t))(-1-1-k 1-+=B y q A 其中(t)y 为输出量,(t)u 为控制量,(t)e 为零均值白噪声且与t 时刻以前(不包括 t 时刻)的控制(t) u 无关。 c c b b a a n n n n n n q c q c q C q b q b b q B q a q a A -1 -11--1 -101 --1 -11 -1)()(1)q (+???++=+???++=+???++= )(1 -q A ,)(1 -q C 为稳定多项式,0 0≠b ,1-q 为延后一步算子。 对上述系统如采用如下控制律 ) () () ()() F(q ) G(q -(t)1 1111 --1t y q F q G t y u r --+ = (2) 其中(t)r y 为参考输入,)(1-q G ,)(1-q F ,)(1-1q G ,)(q -11F 为四个适当次数的多项。则可得闭环方程 (4) (t )u (t )u u (t )(3) (t )(t )y (t )2121+=+=y y

综合性实验 极点配置全状态反馈控制指导书

综合性实验极点配置全状态反馈控制 一、实验目的 1.学习并掌握用极点配置方法设计全状态反馈控制系统的方法。 2.用电路模拟与软件仿真方法研究参数对系统性能的影响。 二、实验内容 1.设计典型二阶系统的极点配置全状态反馈控制系统,并进行电路模拟与软件仿真研究。 2.设计典型三阶系统的极点配置全状态反馈控制系统,并进行电路模拟与软件仿真研究。 三、实验前准备工作 1 推导图1的数学模型(状态空间表达式),分析系统的能控性。 2 若系统期望的性能指标为:超调量,峰值时间,求出期望的极点值。根据以上性能指标要求设计出状态反馈控制器。 3 推导图2的数学模型(传递函数),求出其单位阶跃响应的动态性能指标(超调量、调节时间、静态速度误差系数)。 4 推导图4的数学模型(状态空间表达式),分析系统的能控性。 5考虑系统稳定性等要求,选择理想极点为:S1=-9,S2 =-2+j2,S3=-2-j2, 根据以上性能指标要求思考如何设计状态反馈控制器。 6 推导图7的数学模型(传递函数)。 四、实验步骤 1.典型二阶系统 (1)对一已知二阶系统(见图1)用极点配置方法设计全状态反馈系数。 (2)见图2和图3,利用实验箱上的电路单元U9、U11、U12和U8,按设计参数设计并连接成系统模拟电路,测取阶跃响应,并与软件仿真结果比较。 (3)改变系统模拟电路接线,使系统恢复到图1所示情况,测取阶跃响应,并与软件仿真结果比较。 (4)对实验结果进行比较、分析,并完成实验报告。 2.典型三阶系统 (1)对一已知三阶系统(见图4)用极点配置方法设计全状态反馈系数。 (2)见图5和图7,利用实验箱上的电路单元U9、U11、U12、U15和

控制系统的极点配置实验报告

课程名称: 控制理论乙 指导老师: 姚唯 成绩: 实验名称: 控制系统的极点配置 实验类型: 同组学生姓名: 郁明非 一、实验目的和要求(必填) 二、实验内容和原理(必填) 三、主要仪器设备(必填) 四、操作方法和实验步骤 五、实验数据记录和处理 六、实验结果与分析(必填) 七、讨论、心得 一、实验目的和要求 1.掌握全状态反馈系统的极点配置方法 2.在Simulink 仿真环境中,研究极点配置对系统特性的影响 二、实验内容和原理 (一)实验内容 1.一被控对象,其传递函数为 ) 3)(2)(1(10 )(+++= s s s s G 设计反馈控制器u=-kx ,使闭环系统的极点为3221j +-=μ,3222j --=μ,103-=μ。 2. 在Simulink 仿真环境下,用基本环节组成经过极点配置后的系统,通过图形观察环节,观察系统的各点响应。 (二)实验原理 对一给定控制系统如果其状态完全可控,则可进行任意极点配置即通过设计反馈増益K 使闭环系统具有期望的极点。极点配置有二种方法:第一种方法是采用变换矩阵T ,使系统具有期望的极点,从而求出矩阵K ;第二种方法基于Caylay-Hamilton 理论,通过矩阵多项式φ(a),可求出K (这种方法称为Ackermann 公式)。在MATLAB 中,利用控制系统工具箱函数place 和acker 进行极点配置设计。 三、主要仪器设备 一台PC 电脑,matlab 仿真软件,simulink 仿真环境 四、实验源代码及实验结果

function jidianpeizhi num=[10]; den=[1,6,11,6]; [A,B,C,D]=tf2ss(num,den); J=[-2-j*2*sqrt(3),-2+j*2*sqrt(3),-10]; K=place(A,B,J); K sys=ss(A-B*K,[0;0;0],eye(3),0); t=0::4; X=initial(sys,[1;0;0],t); x1=[1,0,0]*X'; x2=[0,1,0]*X'; x3=[0,0,1]*X'; subplot(3,1,1); plot(t,x2); grid on; title('Reponse to initial condition'); ylabel('x1'); subplot(3,1,2); plot(t,x2); grid on; ylabel('x2'); subplot(3,1,3); plot(t,x3); grid on; ylabel('x3'); xlabel('t(sec)');

直线一级倒立摆系统的状态空间极点配置控制设计详细实验报告

一、直线一级倒立摆建模 根据自控原理实验书上相关资料,直线一级倒立摆在建模时,一般忽略掉系统中的一些次要因素.例如空气阻力、伺服电机的静摩擦力、系统连接处的松弛程度等,之后可将直线一级倒立摆系统抽象成小车和匀质杆组成的系统,如下图所示: 倒立摆系统是典型的机电一体化系统,其机械部分遵循牛顿的力学定律,其电气部分遵守电磁学的基本定理.因此,可以通过机理建模方法得到较为准确的系统数学模型,通过实际测量和实验来获取系统模型参数.无论哪种类型的倒立摆系统,都具有3个特性,即:不确定性、耦合性、开环不稳定性. 直线型倒立摆系统,是由沿直线导轨运动的小车以及一端固定于小车上的匀质长杆组成的系统. 小车可以通过传动装置由交流伺服电机驱动. 小车导轨一般有固定的行程,因而小车的运动范围是受到限制的。 虽然倒立摆的形式和结构各异,但所有的倒立摆都具有以下的特性: 1) 非线性 倒立摆是一个典型的非线性复杂系统,实际中可以通过线性化得到系统的近似模型,线性化处理后再进行控制。也可以利用非线性控制理论对其进行控制。倒立摆的非线性控制正成为一个研究的热点。 2) 不确定性 主要是模型误差以及机械传动间隙,各种阻力等,实际控制中一般通过减少各种误差来降低不确定性,如通过施加预紧力减少皮带或齿轮的传动误差,利用滚珠轴承减少摩擦阻力等不确定因素。 3) 耦合性 倒立摆的各级摆杆之间,以及和运动模块之间都有很强的耦合关系,在倒立摆的控制中一般都在平衡点附近进行解耦计算,忽略一些次要的耦合量。 4) 开环不稳定性 倒立摆的平衡状态只有两个,即在垂直向上的状态和垂直向下的状态,其中垂直向上为绝对不稳定的平衡点,垂直向下为稳定的平衡点。由于机构的限制,如运动模块行程限制,电机力矩限制等。为了制造方便和降低成本,倒立摆的结构尺寸和电机功率都尽量要求最小,行程限制对倒立摆的摆起影响尤为突出,容易出现小车的撞边现象。 由此,约束限制直线型一级倒立摆系统的实际控制要求可归结为3点: (1)倒立摆小车控制过程的最大位移量不能超过小车轨道的长度; (2)为保证倒立摆能顺利起立,要求初始偏角小于20°;

状态反馈极点配置基本理论与方法

第2章 状态反馈极点配置设计基本理论 2.1引言 大多数的控制系统的基本结构是由被控对象和反馈控制器构成的闭环系统。反馈的基本类型包括状态反馈和输出反馈。其中状态反馈能够提供更加丰富的状态信息。 状态反馈是将系统的每一个状态变量乘相应的反馈系数,然后反馈到输入端与参考输入相加形成的控制规律,作为被控系统的控制输入。图2.1是一个多输入多输出线性时不变系统状态反馈的基本结构: 图2.1 多输入-多输出系统的状态反馈结构图 其中受控系统的状态空间表达式为: x Ax Bu y Cx =+=& (2.1) 由图2.1可知,加入状态反馈后,受控系统的输入为: u Fx v =+ (2.2) 其中v 为参考输入,F 为状态反馈增益阵,因此可以得到状态反馈闭环系统的状态空间表达式: ()x A BF x Bv y Cx =++=& (2.3) 闭环系统的传递函数矩阵: ()()1 s W s C sI A BF B -=-+???? (2.4) 由此可见,引入状态反馈后,通过F 的选择,可以改变闭环系统的特征值,是系统获得所要求的性能。 2.2极点配置方法的选择 对于一个线性时不变系统进行状态反馈极点配置,一般有四种方法: (1) 传统方法—将系统转化为一个或多个单输入单输出系统。 (2) 直接法—使用稳定的酉矩阵,将这种系统转化为标准型。 (3) 矩阵方程法—对矩阵F ,直接解方程 AX X BG -Λ= (2.5a) FX G = (2.5b)

(4) 特征向量法—先找到特征向量x j (等式(2.5)中矩阵X 的列向量),然后利用等式(2.5b)求解F 。 方法(1)一般难以应用或者数值不稳定。方法(3)需要解(2.5a)方程,并且对于系统矩阵A 的特征值不能再分配。最有效并且数值稳定的方法是方法(2)和方法(4)。其中方法(4)通过使用一系列的迭代算法找到最优解,所以比较复杂。对于方法(2),当系统的输入多于一个信号输入时,不能确定系统的鲁棒性。 本文结合以上方法提出了一种新的设计方法:首先通过酉变换将状态方程化为一种控制规范形,然后利用最小二乘法解方程(2.5)的得到最佳的状态反馈矩阵。 2.3状态方程的规范形 将线性时不变多变量完全能控系统记为: x Ax Bu =+& (2.6) 其中x 和u 分别是n 维和m 维的实向量,A 和B 是合适阶次的恒定实矩阵。 极点配置是要求找到一个实反馈矩阵F ,使闭环系统矩阵A+BF 的特征值等于 ,L 是一个复共轭的集合。已知如果方程(2.6)定义的系统是完全 能控的,就可以进行极点配置。 极点配置问题转化为寻找矩阵X 和G ,使等式(2.5a)中的矩阵Λ满足 。如果X 是可逆的,根据方程(2.5b)求解F 。方程(2.5a)可以转化为等价 的形式: T T T T T P AP P XQ P XQ Q Q P B GQ ?-?Λ=? (2.7) 其中P 和Q 是正交矩阵,表示转置,使用正交矩阵可以保证方程(2.5a) 的数值稳定性不变。 选择P 使(A ,B)可以转换为: ()11 121,11,21,11,,1 ,2 ,1 ,00000T T k k k k k k k k k k k k k A A P AP P B A A A A A A A A B ------?? ? ? ?= ? ? ??? L M O O O M M M O O O M L L (2.8) 此外,非对角线上的块A i,i+1选择满秩的下三角型:

线性系统状态反馈与极点配置

实验报告 课程名称:现代控制理论 实验名称:线性系统状态反馈与极点配置

一、实验目的 1. 学习并掌握利用MATLAB编程平台进行控制系统设计与仿真的方法。 2. 通过仿真实验,研究并总结线性定常系统状态反馈对系统控制性能影响的规律。 3. 通过仿真实验,研究并总结状态反馈对状态不完全能控系统控制性能影响的规律。 二、实验内容 (一)实验任务: 1. 自行选择一个状态完全能控型SISO系统模型及参数,并设定系统控制性能指标,根据性能指标要求计算期望的极点并进行极点配置,设计MatLab实验程序(或SimuLink模拟图)及实验步骤,仿真研究状态反馈矩阵对系统控制性能的影响; 2. 自行选择一个状态不完全能控型SISO系统模型及参数,并设定系统控制性能指标,根据性能指标要求进行极点配置,设计MatLab实验程序(或SimuLink模拟图)及实验步骤,仿真研究状态反馈矩阵对系统控制性能的影响;根据实验结果,总结各自的规律。 三、实验设计 1.实验条件 1.利用本学期所学的现代控制理论的知识为基础。 2.笔记本电脑,matlab 四、实验过程 1.设计状态完全能控型SISO系统模型及参数: a)首先判断系统的能控性 = ,是Rack([B AB]) = 2,因此此系统为可控的系统。可以进行任意极点配置。则期望极点配置二重根1。

b)再求状态反馈阵: = c)根据给定的极点,得到期望特征多项式: d)比较和各对应项系数,可解得: e)即状态反馈控制器:u=-K*x 状态反馈闭环系统空间表达式x=A-B*K*x A1 = A – B*K = [0 1;1 -2] 2.设计状态不完全能控型SISO系统模型及参数: a)首先判断系统的能控性 = , Rank([B AB]) = 1,因此系统是不完全能控的,不能进行任意极点配置。 b)再求状态反馈阵: c)将期望极点配置二重根1,则: d)比较和各对应项系数,可解得: 任意值(设) e)即状态反馈控制器:u=-K*x 状态反馈闭环系统空间表达式x=A-B*K*x A1 = A – B*K = [0 1;1 1] 五、实验结果(曲线、数据等) 1.状态完全能控型SISO系统模型: a)配置极点前的波形: A=[0 1; 0 1]

相关文档
最新文档