实验-6-极点配置与全维状态观测器的设计
- 格式:docx
- 大小:32.34 KB
- 文档页数:4
一. 极点配置原理假设原系统的状态空间模型为:⎩⎨⎧=+=Cxy Bu Ax x 若系统是完全可控的,则可引入状态反馈调节器,且:这时,闭环系统的状态空间模型为:()x A BK x Bv y Cx =-+⎧⎨=⎩二. 状态观测器设计原理假设原系统的状态空间模型为:⎩⎨⎧=+=Cxy Bu Ax x 若系统是完全可观的,则可引入全维状态观测器,且:ˆˆ(y y)ˆˆx Ax Bu G y Cx ⎧=++-⎪⎨=⎪⎩设ˆx x x=-,闭环系统的状态空间模型为: ()x A GC x =-解得:(A GC)t(0),t 0x ex -=≥由上式可以看出,在t 0≥所有时间内,如果(0)x =0,即状态估计值x 与x 相等。
如果(0)0x ≠,两者初值不相等,但是()A GC -的所有特征值具有负实部,这样x 就能渐进衰减至零,观测器的状态向量ˆx就能够渐进地逼近实际状态向量x 。
状态逼近的速度取决于G 的选择和A GC -的特征配置。
三. 状态观测的实现为什么要输出y 和输入u 对系统状态x 进行重构。
u Kx v =-+证明 输出方程对t 逐次求导,并将状态方程x Ax Bu =+代入整理,得2(n 1)(n 2)(n 3)21n n y Cxy CBu CAx y CBu CABu CA x y CBu CABu CA Bu CA x-----=⎧⎪-=⎪⎪--=⎨⎪⎪⎪----=⎩将等号左边分别用z 的各分量12,,,n z z z 表示,有121(n 1)(n 2)(n 3)2n n n y C z y CBu CA z z y CBu CABu x Qx z CA y CBu CABu CA Bu -----⎡⎤⎧⎡⎤⎡⎤⎢⎥⎪-⎢⎥⎢⎥⎢⎥⎪⎪⎢⎥⎢⎥⎢⎥==--==⎨⎢⎥⎢⎥⎢⎥⎪⎢⎥⎢⎥⎢⎥⎪⎣⎦⎣⎦⎢⎥⎪----⎩⎣⎦如果系统完全能观,则rankQ n =即1ˆ(Q Q)T Tx Q z -= (类似于最小二乘参数估计) 综上所述,构造一个新系统z ,它是以原系统的输出y 和输入u ,其输出经过变换1(Q Q)T T Q -后得到状态向量ˆx。
基于M A T L A B的状态观测器设计预备知识:极点配置基于状态反馈的极点配置法就是通过状态反馈将系统的闭环极点配置到期望的极点位置上,从而使系统特性满足要求。
1. 极点配置原理假设原系统的状态空间模型为:若系统是完全可控的,则可引入状态反馈调节器,且:这时,闭环系统的状态空间模型为:2. 极点配置的MATLAB函数在MATLAB控制工具箱中,直接用于系统极点配置的函数有acker()和place()。
调用格式为:K=acker(A,C,P) 用于单输入单输出系统其中:A,B为系统矩阵,P为期望极点向量,K为反馈增益向量。
K=place(A,B,P)(K,prec,message)=place(A,B,P)place()用于单输入或多输入系统。
Prec为实际极点偏离期望极点位置的误差;message是当系统某一非零极点偏离期望位置大于10%时给出的警告信息。
3. 极点配置步骤:(1)获得系统闭环的状态空间方程;(2)根据系统性能要求,确定系统期望极点分布P;(3)利用MATLAB极点配置设计函数求取系统反馈增益K;(4)检验系统性能。
已知系统模型如何从系统的输入输出数据得到系统状态?初始状态:由能观性,从输入输出数据确定。
不足:初始状态不精确,模型不确定。
思路:构造一个系统,输出逼近系统状态称为是的重构状态或状态估计值。
实现系统状态重构的系统称为状态观测器。
观测器设计状态估计的开环处理:但是存在模型不确定性和扰动!初始状态未知!应用反馈校正思想来实现状态重构。
通过误差来校正系统:状态误差,输出误差。
基于观测器的控制器设计系统模型若系统状态不能直接测量,可以用观测器来估计系统的状态。
L是观测器增益矩阵,对偏差的加权。
真实状态和估计状态的误差向量误差的动态行为:的极点决定了误差是否衰减、如何衰减?通过确定矩阵L来保证。
也即极点配置问题。
要使得误差衰减到零,需要选取一个适当的矩阵L,使得A-LC是稳定的。
现代控制实验--状态反馈器和状态观测器的设计-CAL-FENGHAI-(2020YEAR-YICAI)_JINGBIAN状态反馈器和状态观测器的设计一、实验设备PC 计算机,MATLAB 软件,控制理论实验台,示波器二、实验目的(1)学习闭环系统极点配置定理及算法,学习全维状态观测器设计法;(2)掌握用极点配置的方法(3)掌握状态观测器设计方法(4)学会使用MATLAB工具进行初步的控制系统设计三、实验原理及相关知识(1)设系统的模型如式所示若系统可控,则必可用状态反馈的方法进行极点配置来改变系统性能。
引入状态反馈后系统模型如下式所示:(2)所给系统可观,则系统存在状态观测器四、实验内容(1)某系统状态方程如下10100134326x x u •⎡⎤⎡⎤⎢⎥⎢⎥=+⎢⎥⎢⎥⎢⎥⎢⎥----⎣⎦⎣⎦[]100y x =理想闭环系统的极点为[]123---.(1)采用 Ackermann 公式计算法进行闭环系统极点配置;代码:A=[0 1 0;0 0 1;-4 -3 -2];B=[1; 3; -6];P=[-1 -2 -3];K=acker(A,B,P)Ac=A-B*Keig(Ac)(2)采用调用 place 函数法进行闭环系统极点配置;代码:A=[0 1 0;0 0 1;-4 -3 -2];B=[1;3;-6];eig(A)'P=[-1 -2 -3];K=place(A,B,P)eig(A-B*K)'(3)设计全维状态观测器,要求状态观测器的极点为[]---123代码:a=[0 1 0;0 0 1;-4 -3 -2];b=[1;3;-6];c=[1 0 0];p=[-1 -2 -3];a1=a';b1=c';c1=b';K=acker(a1,b1,p);h=(K)'ahc=a-h*c(2)已知系统状态方程为:10100134326x x u •⎡⎤⎡⎤⎢⎥⎢⎥=+⎢⎥⎢⎥⎢⎥⎢⎥----⎣⎦⎣⎦[]100y x =(1)求状态反馈增益阵K ,使反馈后闭环特征值为[-1 -2 -3];代码:A=[0 1 0;0 0 1;4 -3 -2];b=[1;3;-6];p=[-1 -2 -3];k=acker(A,b,p)A-b*keig(A-b*k)(2)检验引入状态反馈后的特征值与希望极点是否一致。
基于MATLAB 的状态观测器设计预备知识: 极点配置基于状态反馈的极点配置法就是通过状态反馈将系统的闭环极点配置到期望的极点位置上,从而使系统特性满足要求。
1. 极点配置原理假设原系统的状态空间模型为:⎩⎨⎧=+=Cxy Bu Ax x & 若系统是完全可控的,则可引入状态反馈调节器,且:Kx u input -=这时,闭环系统的状态空间模型为:⎩⎨⎧=+-=Cxy Bu x )BK A (x & 2. 极点配置的MATLAB 函数在MATLAB 控制工具箱中,直接用于系统极点配置的函数有acker()和place()。
调用格式为:K=acker(A,C,P) 用于单输入单输出系统其中:A ,B 为系统矩阵,P 为期望极点向量,K 为反馈增益向量。
K=place(A,B,P)(K,prec,message)=place(A,B,P)place()用于单输入或多输入系统。
Prec 为实际极点偏离期望极点位置的误差;message 是当系统某一非零极点偏离期望位置大于10%时给出的警告信息。
3. 极点配置步骤:(1)获得系统闭环的状态空间方程;(2)根据系统性能要求,确定系统期望极点分布P ;(3)利用MATLAB 极点配置设计函数求取系统反馈增益K ; (4)检验系统性能。
已知系统模型如何从系统的输入输出数据得到系统状态?初始状态:由能观性,从输入输出数据确定。
不足:初始状态不精确,模型不确定。
思路:构造一个系统,输出逼近系统状态称为是的重构状态或状态估计值。
实现系统状态重构的系统称为状态观测器。
观测器设计状态估计的开环处理:但是存在模型不确定性和扰动!初始状态未知!应用反馈校正思想来实现状态重构。
通过误差来校正系统:状态误差,输出误差。
基于观测器的控制器设计系统模型若系统状态不能直接测量,可以用观测器来估计系统的状态。
L是观测器增益矩阵,对偏差的加权。
真实状态和估计状态的误差向量误差的动态行为:的极点决定了误差是否衰减、如何衰减?通过确定矩阵L来保证。
基于M A T L A B的状态观测器设计预备知识:极点配置基于状态反馈的极点配置法就是通过状态反馈将系统的闭环极点配置到期望的极点位置上,从而使系统特性满足要求。
1. 极点配置原理假设原系统的状态空间模型为:若系统是完全可控的,则可引入状态反馈调节器,且:这时,闭环系统的状态空间模型为:2. 极点配置的MATLAB函数在MATLAB控制工具箱中,直接用于系统极点配置的函数有acker()和place()。
调用格式为:K=acker(A,C,P) 用于单输入单输出系统其中:A,B为系统矩阵,P为期望极点向量,K为反馈增益向量。
K=place(A,B,P)(K,prec,message)=place(A,B,P)place()用于单输入或多输入系统。
Prec为实际极点偏离期望极点位置的误差;message是当系统某一非零极点偏离期望位置大于10%时给出的警告信息。
3. 极点配置步骤:(1)获得系统闭环的状态空间方程;(2)根据系统性能要求,确定系统期望极点分布P;(3)利用MATLAB极点配置设计函数求取系统反馈增益K;(4)检验系统性能。
已知系统模型如何从系统的输入输出数据得到系统状态?初始状态:由能观性,从输入输出数据确定。
不足:初始状态不精确,模型不确定。
思路:构造一个系统,输出逼近系统状态称为是的重构状态或状态估计值。
实现系统状态重构的系统称为状态观测器。
观测器设计状态估计的开环处理:但是存在模型不确定性和扰动!初始状态未知!应用反馈校正思想来实现状态重构。
通过误差来校正系统:状态误差,输出误差。
基于观测器的控制器设计系统模型若系统状态不能直接测量,可以用观测器来估计系统的状态。
L是观测器增益矩阵,对偏差的加权。
真实状态和估计状态的误差向量误差的动态行为:的极点决定了误差是否衰减、如何衰减?通过确定矩阵L来保证。
也即极点配置问题。
要使得误差衰减到零,需要选取一个适当的矩阵L,使得A-LC是稳定的。
单级倒立摆系统的极点配置与状态观测器设计14122156杨郁佳(1)倒立摆的运动方程并将其线性化选取小车白^位移 z ,及其速度 z 、摆的角位置及其角速度 作为状态变量,即g T 则系统的状态空间模型为2 2,2设M=2kg ,m =0.2kg, g=9.81m/s ,则单级倒立摆系统的状态方程为x1x4x1x2 0 x3 x4 (2)状态反馈系统的极点配置。
首先,使用MATLAB,判断系统的能控性矩阵是否为满秩。
A=[0 1 0 0; 0 0 -1 0; 0 0 0 1; 0 0 11 0];B=[0; 0.5; 0; -0.5];C=[1 0 0 0];0 0 0 mg 0 1 M x M 0 1 0 (M m)g 11u 0MlMl x1x1x2 x3x3 0.5 u 011 x4 0.5D=0;rct=rank(ctrb(A,B)) [z,p,k]=ss2zp(A,B,C,D)MATLAB程序执行结果如下:»上二。
100:00-]C':0[)01. 0DIL01.B=[0; a. 5; t -0.o]c-ti D 0 Qi ;D=Crct-r Mr; nrt ।;j■ 1 0 Q 0 fl -] C, C T Q 1 0 D 11 0]Mo; o,«; a -0.5:C-[l 0 0 Q]:D-0rct-Yfln)! ctib Ll, E )let> r,z. p, k]-Ts2 sp CA, B- C. D'63. 3班-3.31S?系统能控,系统的极点为1=0 2=0 3=3.3166 4 =-3.3166可以通过状态反馈来任意配置极点,将极点配置在MATLAB程序如下:A=[0 1 0 0; 0 0 -1 0; 0 0 0 1; 0 0 11 0];B=[0; 0.5; 0; -0.5];P=[-3 -4 -5 -6];K=place(A,B,P)MATLAB程序执行结果如下:»A=[Q 1 0 D; 0 0 -1 0; 0 0 0 1; 0 Q H C:;B-[0l- O.a 0 -0-5::-4 -a -6];E=place (A. P)E --72. 0000 -691 4000 332. 0000 -104. 4000因此,求出状态反馈矩阵为K=[-72.0 -68.4 -332.0 -104.4]采用MATLAB/Simulink构造单级倒立摆状态反馈控制系统的仿真模型。
东南大学自动化学院实验报告课程名称:自动控制基础实验名称:状态观测器的设计院(系):自动化学院专业:自动化姓名:吴静学号:********实验室:机械动力楼417室实验组别:同组人员:实验时间:2011年05月13日评定成绩:审阅教师:一、实验目的1. 理解观测器在自动控制设计中的作用2. 理解观测器的极点设置3. 会设计实用的状态观测器二、实验原理如果控制系统采用极点配置的方法来设计,就必须要得到系统的各个状态,然后才能用状态反馈进行极点配置。
然而,大多数被控系统的实际状态是不能直接得到的,尽管系统是可以控制的。
怎么办?如果能搭试一种装置将原系统的各个状态较准确地取出来,就可以实现系统极点任意配置。
于是提出了利用被控系统的输入量和输出量重构原系统的状态,并用反馈来消除原系统和重构系统状态的误差,这样原系统的状态就能被等价取出,从而进行状态反馈,达到极点配置改善系统的目的,这个重构的系统就叫状态观测器。
另外,状态观测器可以用来监测被控系统的各个参量。
观测器的设计线路不是唯一的,本实验采用较实用的设计。
给一个被控二阶系统,其开环传递函数是G (s )12(1)(1)KT s T s ++,12K K K =观测器如图示。
设被控系统状态方程X =A X +B u Y =C X构造开环观测器,X ∧Y ∧为状态向量和输出向量估值X A X +Bu Y XC •∧∧∧∧== 由于初态不同,估值X ∧状态不能替代被控系统状态X ,为了使两者初态跟随,采用输出误差反馈调节,加入反馈量H(Y-Y)∧,即构造闭环观测器,闭环观测器对重构造的参数误差也有收敛作用。
X =A X +Bu+H(Y-Y)Y CX•∧∧∧∧∧=也可写成 X =(A-HC)X +Bu+HY Y CX•∧∧∧∧=只要(A-HC )的特征根具有负实部,状态向量误差就按指数规律衰减,且极点可任意配置,一般地,(A-HC )的收敛速度要比被控系统的响应速度要快。
状态反馈器与状态观测器得设计一、实验设备PC 计算机,MATLAB 软件,控制理论实验台,示波器二、实验目得(1)学习闭环系统极点配置定理及算法,学习全维状态观测器设计法;(2)掌握用极点配置得方法(3)掌握状态观测器设计方法(4)学会使用MATLAB工具进行初步得控制系统设计三、实验原理及相关知识(1)设系统得模型如式所示若系统可控,则必可用状态反馈得方法进行极点配置来改变系统性能。
引入状态反馈后系统模型如下式所示:(2)所给系统可观,则系统存在状态观测器四、实验内容(1)某系统状态方程如下理想闭环系统得极点为、(1)采用 Ackermann 公式计算法进行闭环系统极点配置; 代码:A=[0 1 0;0 0 1;4 3 2];B=[1; 3; 6];P=[1 2 3];K=acker(A,B,P)Ac=AB*Keig(Ac)(2)采用调用 place 函数法进行闭环系统极点配置; 代码:A=[0 1 0;0 0 1;4 3 2];B=[1;3;6];eig(A)'P=[1 2 3];K=place(A,B,P)eig(AB*K)'(3)设计全维状态观测器,要求状态观测器得极点为代码:a=[0 1 0;0 0 1;4 3 2];b=[1;3;6];c=[1 0 0];p=[1 2 3];a1=a';b1=c';c1=b';K=acker(a1,b1,p);h=(K)'ahc=ah*c(2)已知系统状态方程为:(1)求状态反馈增益阵K,使反馈后闭环特征值为[1 2 3]; 代码:A=[0 1 0;0 0 1;4 3 2];b=[1;3;6];p=[1 2 3];k=acker(A,b,p)Ab*keig(Ab*k)(2)检验引入状态反馈后得特征值与希望极点就是否一致。
(3)比较状态反馈前后得系统阶跃响应。
代码:A1=[0 1 0;0 0 1;4 3 2];B1=[1;3;6];C1=[1 0 0];D1=[0];G1=ss(A1,B1,C1,D1);[y1,t1,x1]=step(G1);P=[1 2 3];K=acker(A1,B1,P);abk=A1B1*K;A2=abk;B2=B1;C2=C1;D2=D1;G2=ss(A2,B2,C2,D2);[y2,t2,x2]=step(G2);hold onplot(t1,x1)plot(t2,x2)(4)设计全阶状态观测器,要求状态观测器得极点为[5 6 7]。
1 / 5
实验 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), AB为系统系数矩阵, 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)
-1 2 4
3)讨论状态反馈与输出反馈的关系 , 说明状态反馈为何能进行极点配置 在经典控制理论
中 ,一般只考虑由系统的输出变量来构成反馈律,即输出反馈。在现代控制 理论的状态空间分
析方法中 ,多考虑采用状态变量来构成反馈律,即状态反馈。从状态空间 模型输出方程可以看
出, 输出反馈可视为状态反馈的一个特例。 状态反馈可以提供更多的补 偿信息,只要状态进
行简单的计算再反馈,就可以获得优良的控制性能。
2 / 5
(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);
观察实验结
3 / 5
(2)代码如下:
A=[0 1;-3 -4];
B=[0;1];
C=[2 0];
D=[];
G=ss(A,B,C,D); v=[-12+j,-12-j];
L=(acker(A',C',v))'
K=acker(A,B,v)
I=eye(2);
G2=ss(A-B*K,B,C,D); t=0:0.001:5;
t0=0;
U=stepfun(t,t0);
X0=[0 1]';
T=0:0.001:5; lsim(G,U,T,X0);
hold on ; lsim(G2,U,T,X0);
L =
10
31
142 20
4 / 5
蓝色线为原系统,红色线为观测器
观察实验结果,思考以下问题:
(1)说明反馈控制闭环期望极点和观测器极点的选取原则。
答:线性定常系统的稳定性和动态性能很大程度上是由闭环系统的极点位置决定的, 因此
反馈控制配置极点要使系统具有所期望的性能品质,改善性能指标。而观测器的极点对于 其
性能也有很大影响,首先要保证极点均具有负实部,并通过极点配置应该使观测器具有 期望
的响应速度和抗干扰能力。
(2)说明观测器的引入对系统性能的影响。 答:实际系统的状态变量不可能都是可直接测量
的,从而给状态反馈的实现造成困难。
而通过引入观测器,可实现状态重构,保证观测器的状态可以很快的逼近控制对象的状态, 并
且观测器的状态可以直接得到,可以用其代替实际状态进行状态反馈。
四、实验体会
这次实验讨论了状态反馈和输出反馈的关系, 利用状态反馈进行极点配置, 加深对状态反馈
作用的理解。 利用 MATLAB 仿真设计状态观测器。加深了对课本上知识的理解。