24小时热门版块排行榜    

查看: 1570  |  回复: 4

风尘奇侠888

新虫 (初入文坛)

[求助] 用LMI的求解控制增益矩阵得到的增益K等于O,求大神帮助啊 已有2人参与

代码如下:参数可以自己改变
A=[1 0.1;0.1 0.8];
B=[0.2 0;0.1 -0.1];
C=[-0.41 0.1;0 -0.1];
% CC=C'*C;
D=[0 0;1 0.1];
E1=[0.1 0;0.1 0.1];
E2=[0 0;-0.1 0];
% W=[1;1];
d=0;


T=0.05;
G=ss(A,B,C,d);
Gd=c2d(G,T)

Ad=[1.051  0.00523;0.00523    1.041];

Bd=[0.01027  -1.288e-05;    0.005127   -0.005101];
Gd=c2d(G,T/2)

B0=[0.005066  -3.172e-06; 0.002532   -0.002525];
B1=Bd-B0;
H=Bd*inv(B);
H2=B0*inv(B);
H1=B1*inv(B);
HD=H*D;
H1D=H1*D;
H2D=H2*D;

setlmis([])
a1=lmivar(1,[1 1]);
a2=lmivar(1,[1 1]);
a3=lmivar(1,[1 1]);
a4=lmivar(1,[1 1]);
a5=lmivar(1,[1 1]);
b=lmivar(1,[1 1]);
P=lmivar(1,[2 1]);
Q=lmivar(1,[2 1]);
R=lmivar(1,[2 1]);
K=lmivar(2,[2 2]);

lmiterm([1 1 1 a1],1,1);
lmiterm([1 1 8 K],E2,1);
lmiterm([1 1 9 K],E2,-1);
lmiterm([1 2 2 a2],1,1);
lmiterm([1 2 8 K],B,1);
lmiterm([1 2 9 K],B,-1);
lmiterm([1 3 3 a3],1,1);
lmiterm([1 3 9 K],E2,1);
lmiterm([1 4 4 a4],1,1);
lmiterm([1 4 8 K],E2,1);
lmiterm([1 5 5 a5],1,1);
lmiterm([1 5 7 P],E1,1);
lmiterm([1 6 6 a5],1,HD*HD');
lmiterm([1 6 6 a4],1,H1D*H1D');
lmiterm([1 6 6 a3],1,H2D*H2D');
lmiterm([1 6 6 a2],1,1);
lmiterm([1 6 6 a1],1,1);
lmiterm([1 6 6 P],1,-1);
lmiterm([1 6 7 P],Ad,1);
lmiterm([1 6 8 K],B1,1);
lmiterm([1 6 9 K],B0,1);

lmiterm([1 7 7 Q],1,1);
lmiterm([1 7 7 R],1,1);
lmiterm([1 7 7 P],1,-1);

lmiterm([1 8 8 R],1,-1);
lmiterm([1 9 9 Q],1,-1);

lmiterm([2 1 1 K],1,-1);


lmis=getlmis;

[tmin,xfeas]=feasp(lmis);
PP=dec2mat(lmis,xfeas,P)
QQ=dec2mat(lmis,xfeas,Q)
RR=dec2mat(lmis,xfeas,R)
KK=dec2mat(lmis,xfeas,K)
a11=dec2mat(lmis,xfeas,a1)
a22=dec2mat(lmis,xfeas,a2)
a33=dec2mat(lmis,xfeas,a3)
a44=dec2mat(lmis,xfeas,a4)
a55=dec2mat(lmis,xfeas,a5)
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

风尘奇侠888

新虫 (初入文坛)

那个lmiterm([2 1 1 K],1,-1);这个原文没有这个条件的,可以不要
2楼2014-12-03 16:35:54
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wyq276628

银虫 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
按照你的运算结果不是零啊,KK =

    0.4835    0.0434
    0.0507    0.7595,
这不就是你的K吗?
3楼2014-12-04 06:33:05
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

风尘奇侠888

新虫 (初入文坛)

引用回帖:
3楼: Originally posted by wyq276628 at 2014-12-04 06:33:05
按照你的运算结果不是零啊,KK =

    0.4835    0.0434
    0.0507    0.7595,
这不就是你的K吗?

这个我把代码有的部分给改了,是可以的,这个K求出来之后怎么做系统的初始状态曲线图呢?,网络控制方面的
4楼2014-12-08 15:34:27
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

adcd789

新虫 (初入文坛)

【答案】应助回帖

引用回帖:
4楼: Originally posted by 风尘奇侠888 at 2014-12-08 15:34:27
这个我把代码有的部分给改了,是可以的,这个K求出来之后怎么做系统的初始状态曲线图呢?,网络控制方面的...

请问您是怎么改的代码,我求出的控制器也是零,怎样修改参数才能避免这个问题,谢谢
5楼2015-01-17 11:26:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 风尘奇侠888 的主题更新
信息提示
请填处理意见