Cannot create H2 controller: Error with h2syn
3 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
I have a linear plant with 12 states, 16 disturbances, 8 control inputs and 32 outputs. There is sensor noise associated with the outputs (so 32 noise) and I want to design a H2 controller that will reject disturbance and noise. The dynamics is:
xdot = A*x + Bd*d + Bn*n + Bu*u
z = Cz*x + Ddz*d + Dnz*n + Duz*u
y = Cy*x + Ddy*d + Dny*n + Duy*u
d = disturbance, n = noise, u = control input. z is the signal I want to minimize, y is the measured output. So my H2 plant looks like this:
G = [A B1 B2; Cz D11 D12; Cy D21 D22]
where B1=[Bd Bn], B2=Bu, D11=[Ddz Dnz], D12=Duz, D21=[Ddy Dny], D22=Duy. In my case, Ddz=0, Dnz=0, Ddy=0, Duy=0 (no direct feedthrough). When I try to create the H2 controller using h2syn command I get the following error:
nu = size(B2,2);
ny = size(Cy,1);
[K,CL,GAM,INFO] = h2syn(h2sys,ny,nu);
Error using -
Matrix dimensions must agree.
Error in lti/h2syn (line 193)
f2 = -d12'*c1 - f2c ; % f2 = -f2a
Error in T2D1Controls (line 71)
[K,CL,GAM,INFO] = h2syn(h2sys,ny,nu);
Any idea why this is happening? I am attaching the plant for reference.
0 Kommentare
Antworten (1)
Hongbing Xiang
am 3 Dez. 2019
hello, is the problelm solved ? I am learning how to design H2 controller, do you have any suggestions ?
0 Kommentare
Siehe auch
Kategorien
Mehr zu State-Space Control Design and Estimation finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!