我想合成一个 H_infinity 控制系统,我想以这种形式的通用控制配置的形式定义它。首先,我定义了块之间的关系:
s=tf('s');
w_1=makeweight(100,10,0.5); % Weight for performance
w2_2=eye(2); % Weight for avoiding over qualify
w3=0;
G=[(0.806*s+0.264)/(s^2+1.15*s+0.202) -
(15*s+1.42)/(s^3+12.8*s^2+13.6*s+2.36);
(1.95*s^2+2.12*s+0.49)/(s^3+9.15*s^2+9.39*s+1.62)
(7.14*s^2+25.8*s+9.35)/(s^4+20.8*s^3+116.4*s^2+111.6*s+18.8)]; % a 2*2 Plant
systemnames='G w_1 w2_2 w3';
inputvar='[u1;u2]';
outputvar='[w_1;w2_2;w3;u1-G]';
input_to_G='[u2]';
input_to_w_1='[u1-G]';
input_to_w2_2='[u2]';
sysoutname='P';
sysic;
创建P后,下面的函数将用于合成控制系统:
[k1,cl1,Gam1,Info1]=hinfsyn(P,1,1);
但是代码面临这个错误:Error using sysic (line 175) There are an contrast number of signals in '+u1-G' part of OUTPUTVAR。
如何解决错误?是否有标准方法以控制系统框图的形式可视化代码中定义的块?