Filter löschen
Filter löschen

Using hinfsyn for robust control design

3 Ansichten (letzte 30 Tage)
Drvoljub
Drvoljub am 20 Sep. 2011
Hello
I have a problem with the hinfsyn fucntion. First the code for hin_rock.m:
% H_infinity design for the rocket stabilization system
%
sys_rock
nmeas = 2;
ncon = 1;
gmin = 0.15;
gmax = 1000000;
hin_ic = sel(sys_ic,8:11,8:11);
tol = 0.001;
[K_hin,clp] = hinfsyn(hin_ic,nmeas,ncon,gmin,gmax,tol)
disp(' ')
minfo(K_hin)
disp(' ')
disp('Closed-loop poles')
sp = spoles(clp)
omega = logspace(-3,2,500);
clp_g = frsp(clp,omega);
figure(1)
vplot('liv,lm',sel(vsvd(clp_g),1,1),'m-'), grid
title('Singular Value Plot of clp')
xlabel('Frequency (rad/sec)')
ylabel('Magnitude')
K = K_hin;
and sys_rock
% Generates the open-loop connection for the
% rocket stabilization system
%
% rocket model
mod_rock
% sensor models
wsa_rock
% weighting functions
wts_rock
%
systemnames = ' G_rock Wa Wan Wg Wgn Wm Wp Wu ';
inputvar = '[ pert{7}; ref; noise{2}; control ]';
outputvar = '[ G_rock(1:7); Wp; Wu; 0.4*ref - Wa - Wan; -Wg - Wgn ]';
input_to_G_rock = '[ pert; control ]';
input_to_Wa = '[ G_rock(10) ]';
input_to_Wan = '[ noise(1) ]';
input_to_Wg = '[ G_rock(9) ]';
input_to_Wgn = '[ noise(2) ]';
input_to_Wm = '[ ref ]';
input_to_Wp = '[ G_rock(10) - Wm ]';
input_to_Wu = '[ control ]';
sysoutname = 'sys_ic';
cleanupsysic = 'yes';
sysic;
In fact clp is empty and K_hin is empty too, which is something I dont get. Also: hin_ic = sel(sys_ic,8:11,8:11); is required to be in the code,so there must be a way.
Regards
  1 Kommentar
Özgür
Özgür am 20 Okt. 2011
Actually are you getting any message from matlab window ?
Özgür

Melden Sie sich an, um zu kommentieren.

Antworten (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by