Lsim not plotting anything

5 views (last 30 days)
I'm working on simulating a linear dynamical system with both and LQR and an h-infinity controller. With LQR I've gotten it to work and simulated the output, but with my h-infinity setup, when I run the system, there is no plotted output. The matrix dimensions are correct, and the A and C matrices are non-empty (Bcl and Dcl are zeros, but it should still be able to simulate the system).
%% Simulations with H Infinity Controller
sys = ss(Acl,Bcl,Ccl,Dcl);
sys.OutputName = 'θ';
t1 = 0:0.05:15;
x1 = [0 0.5 -0.5 0 0 0 0 0.5 -0.5 0 0 0];
figure(1);
w1 = zeros(length(t1),1);
w(t1>1)=1;
lsim(sys,w1,t1,x1);
title('Small Initial Conditions with Controller');
grid on;
  1 Comment
Nader Babar
Nader Babar on 7 May 2023
Comparing this to when I simulate the system with a different controller:
sys2 = ss(A-B*K1,[],C,0);
sys2.OutputName = 'θ';
t3 = 0:0.05:15;
x3 = [0 0.05 -0.05 0 0 0];
figure(1);
u3 = zeros(length(t3),1);
lsim(sys2,u3,t3,x3);
title('Small Initial Conditions with Controller');
grid on;

Sign in to comment.

Accepted Answer

Venkat Siddarth
Venkat Siddarth on 1 Jun 2023
In the script you have mentioned.I noticed that the variable w1 was passed to the lsim function, which was a zero matrix and therefore not modified. However, I suspect that there may be an error in the code where w was mistaken for w1 in the following line, which should be changing the variable's value.
Please refer to the following code snippet for an illustration:
w1 = zeros(length(t1),1); %%------------>Zero Matrix
w(t1>1)=1;
lsim(sys,w1,t1,x1); %% -----------------> % w1 not modified
I hope this resolves the issue
Regards
Venkat Siddarth V.

More Answers (0)

Categories

Find more on Dynamic System Models in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!