状态空间与simulink仿真
考虑以下系统
⎡-1-2-2⎤⎡2⎤⎢⎥⎢⎥X =⎢0-11⎥x +⎢0⎥u
⎢1⎢1⎥0-1⎥⎣⎦⎣⎦
y =[100]x
对系统设计一个状态反馈控制器使得闭环阶跃响应的超调量小于5%,且在稳态值1%范围的调节时间小于4.6S 。 1主导二阶极点方法配置极点 ○
分析:
超调量小于5%,即
-ξπ
e
1-ξ2
≤5%
算得ξ≥0. 69
稳态值1%范围的调节时间小于4.6S ,即
t s =
4. 6
σ
≤4. 6
σ≥1
下面首先对系统的能控性进行判断,以编程方式实现 a=[-1 -2 -2;0 -1 1;1 0 -1];
b=[2;0;1]; %输入a ,b 矩阵 q=[b a*b a^2*b] rank(q)
计算结果为
⎡2-40⎤⎢⎥q =⎢010⎥
⎢11-5⎥⎣⎦
q 的秩为3
因此该系统为完全能控型系统,在满足系统要求的前提下,理论上能任意配置期望极点
下面根据具体的求解思路进行编程求解反馈控制器k
g=poly(a); %求原系统的特征方程
a2=g(2);a1=g(3);a0=g(4); w=[1 0 0;a2 1 0;a1 a2 1]; q1=[a^2*b a*b b];
p=q1*w; %求解转换矩阵 deta=1; zeta=0.75;
wn=deta/zeta; %输入满足条件的ζ和δ
den=conv([1 4],[1 2*deta wn^2]); %输入期望极点(-4,-1±0.88i ) aa2=den(2);aa1=den(3);aa0=den(4); k=[aa0-a0 aa1-a1 aa2-a2];
k1=k*(inv(p)) %输出配置矩阵k
得到k 1=[1. 47781. 64440. 0444] 下面对系统进行验证,是否满足条件 ahat=a-b*k1; bhat=b; chat=[1 0 0]; dhat=0;
sys=ss(ahat,bhat,chat,dhat); step(sys,'r'); sys1=ss(a,b,c,d); hold on; grid on;
step(sys1,'.-');
(其中sys1为未加控制器的原系统)
由图可知,系统在进行配置之前并未满足系统要求,在增加控制器之后,系统要求得到满足。
2对称根轨迹(SRL )方法配置极点 ○
将SRL 方程写成标准的根轨迹形式 1+ρ
N (-s ) N (s )
=0
D (-s ) D (s )
由此,我们需要先将上面的状态空间形式转换为传递函数形式,编程实现如下: a=[-1 -2 -2;0 -1 1;1 0 -1]; b=[2;0;1]; c=[1 0 0];
d=0; [num,den]=ss2tf(a,b,c,d)
num=[ 0 2.0000 2.0000 -2.0000] den=[1.0000 3.0000 5.0000 5.0000]
下面再画出根轨迹图,寻找满足条件的ρ
num1=conv([2 2 -2],[2 -2 -2]); %此处计算的参数根据num(s)和num (-s) den1=conv([1 3 5 5],[-1 3 -5 5]); %此处计算的参数根据den(s)和den (-s) sys1=tf(num1,den1);
rlocus(sys1); %画根轨迹图
grid on;
根据系统要求ξ≥0. 69 和 σ≥1
如图所示,配置的极点将满足系统要求,现选取两组进行验证 1. ρ=2
p1=[-2.09 -1.42+0.845*1i -1.42-0.845*1i]; k1=acker(a,b,p1)
得k1=[ 0.7079 0.1931 0.5143]
如上题所写程序画出响应图(其中sys1为未加控制器的原系统)
2. ρ=3
得k1=[ 0.9271 0.2769 0.6857]
作出响应图如下(其中sys1为未加控制器的原系统)
将两个不同的ρ值阶跃响应图进行对比(sys2为ρ=3,sys 为ρ=2)
有比较可知:较小的ρ值的响应速度较慢,较大的ρ值响应速度快。
3全阶观测器的设计 ○
首先检验系统的是否完全能观 a=[-1 -2 -2;0 -1 1;1 0 -1]; c=[1 0 0];
q=[c;c*a;c*a*a] rank(q)
⎡100⎤⎢⎥q =⎢-1-2-2⎥
⎢-142⎥⎣⎦
rank(q)=3
说明系统是完全能观的
下面就是观测器期望极点选择,一般为了考虑观测器的响应速度要比闭环系统快,又要考虑干扰抑制,一般极点为闭环极点的2---5倍。
根据主导二阶极点方法所配置的极点为s1=-4 s2,3=-1±0.88i 选择观测器极点为s1=-12 s2,3=-3±0.88i
由此可进一步求出观测器增益矩阵l a=[-1 -2 -2;0 -1 1;1 0 -1]; c=[1 0 0];
pe=[-12;-3+0.88*i;-3-0.88*i]; lt=acker(a',c',pe); l=lt'
求得l=[15;1.872;-25.2592];
可得全维观测器的方程为
⎡-18. 9556⎢ =(a -bk -lc ) x x ~~+bu +ly =⎢-1. 872⎢24. 7814⎣
-5. 2888-1-1. 6444
⎡2⎤⎡⎤-2. 0888⎤15⎥⎢⎥⎢⎥-1⎥x ~+⎢0⎥u +⎢1. 872⎥y
⎢1⎥⎢-25. 2592⎥-1. 0444⎥⎦⎣⎦⎣⎦
下面可依据上式构建simulink 图,据此观察观测器的跟踪能力
跟踪效果图如下 X1
X2
X3
据此发现观测器跟踪效果较好。
4降阶控制系统设计 ○
从输出方程可以看出,此系统输出就等于第一个状态,即变换矩阵P 为单位阵,而最小阶观测器的阶次为2。
=a =b
=c =d
最小阶观测器的期望特征根选为-3±0.88i
=-1
=2
=1
⎡0⎤ ⎡0⎤ ⎡-11⎤
21=⎢⎥22=⎢2=2=[00]⎥⎢⎥
⎣1⎦⎣0-1⎦⎣1⎦
=[-2-2]
x x n -q +(21-l ) y +(2-l ) u +l y ~n -q =(22-l )
据此求观测器增益
a22=[-1 1;0 -1]; a12=[-2 -2];
pe=[-3+1i*2*7^(1/2)/3;-3-1i*2*7^(1/2)/3]; lt=acker(a22',a12',pe); l=lt'
⎡1. 5556⎤
求得l =⎢⎥
⎣-3. 5556⎦ 得到
n -q =⎢⎡2. 1112
⎡1. 5556⎤⎡-3. 1112⎤⎡1. 5556⎤4. 1112⎤
+y +u +⎥n -q ⎢⎥⎢⎥⎢⎥y
⎣-7. 1112-8. 1112⎦⎣-2. 5556⎦⎣8. 1112⎦⎣-3. 5556⎦
⎡1. 5556⎤
⎥y
⎣-3. 5556⎦
引入中间变量
η=x ~n -q -ly =x ~n -q -⎢
得最小阶观测器的状态方程为
=⎢η
⎡2. 1112
⎡-9. 778⎤⎡-3. 1112⎤4. 1112⎤η+y +⎥⎢⎥⎢⎥u
⎣-7. 1112-8. 1112⎦⎣15. 2224⎦⎣8. 1112⎦
⎡y ⎤⎢⎥x ~=⎢η1+2y ⎥
⎢η2+4y ⎥⎣⎦
下面可依据上式构建simulink 图,据此观察观测器的跟踪能力
X2
X3
由上面可见,观测器跟踪能力较好。
5带反馈观测系统的设计 ○
由分离定理可知,观测器与反馈可单独设计,互不影响。
反馈k =[1. 47781. 64440. 0444]
l=[15;1.872;-25.2592]
=(a -lc -bk ) x x ~~+bv +lcx
下面可依据上式构建simulink 图,据此观察观测器的跟踪能力
其中Gain7为增益调整设计
a=[-1 -2 -2;0 -1 1;1 0 -1];
b=[2;0;1];k1=[1.4778 1.6444 0.0444];
y=a-b*k1;
c=[1 0 0];
d=0;
k=1/dcgain(y,b,c,d)
k=-3.5554
或使用书本上的参考输入法计算k
⎡-1-2-2⎢⎡N x ⎤0-11⎢=⎢⎥⎢10-1⎣N u ⎦⎢00⎣12⎤⎥0⎥⎡0⎤⎢⎥ 1⎥⎣1⎦⎥0⎦-1
N U =-2. 5
N X ⎡1⎤⎢⎥ =⎢-1. 5⎥⎢-1. 5⎥⎣⎦
N =N U +KN X =3. 5554
结果相同
下面看一下系统输出对阶跃的跟踪曲线
一开始出现较大误差,但还是能跟踪上阶跃。
下面再看看系统对白噪声干扰的抑制能力
由上图可见,系统的抗干扰能力一般。
6积分控制器的设计 ○
积分控制相当于增加了额外状态,状态方程变为
i ⎤⎡x ⎡0c ⎤⎡x i ⎤⎡0⎤⎡1⎤⎡0⎤=+u -r +⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥ω x 0a x b 0⎣⎦⎣⎦⎣⎦⎣⎦⎣⎦⎣b ⎦
由题意可知
原系统可等价于
⎡01⎡0⎤⎡1⎤00⎤⎢⎥⎢⎥⎢⎥ i ⎤⎡x ⎡⎤0-1-2-2x 2⎢⎥i +⎢⎥u -⎢0⎥r =⎢⎥⎥⎢00-11⎥⎢⎢0⎥ ⎦⎣x ⎣x ⎦⎢0⎥⎢⎥⎢⎥⎢⎥010-11⎣⎦⎣⎦⎣0⎦
积分控制器的极点配置为s1=-12 s2,3=-3±0.88i s4=-4
利用编程求出k
a=[0 1 0 0;0 -1 -2 -2;0 0 -1 1;0 1 0 -1];
>> b=[0;2;0;1];
>> pe=[-12;-3+0.88*i;-3-0.88*i;-4];
>> k=acker(a,b,pe)
K=[-234.5856 -77.4275 77.3805 173.8550]
构建simulink 图有
分别加入两个阶跃,先加step1,阶跃图有
再加入step, 响应图有
在一起加step 和step1,响应如图
由此可见,积分控制系统对于干扰有很好的抑制作用,并且具有很好的跟踪效果,动态特性也相对于简单的参考输入设计有了一定的改善。
总结
从以上的设计可总结出状态空间的控制器的设计思路。
1. 首先对观测器的能观性与能控性进行判断;
2. 如果完全能观或能控,则进行以下分析;如果不是,可以进行能控与能观分解出来;
3. 如果使用原系统状态反馈,可以根据系统要求进行极点配置,进而设计出控制器;如果还需要设计观测器,可合理配置观测器极点,进而设计整个系统。
4. 如果使用观测器状态反馈,由于分离定理,观测器与反馈可分别设计,所以设计过程基本和上面一样;
5. 对于以上系统都存在较大的余差,故需设计参考输入,或者采取积分控制器都可以很好的消除稳态余差。