system with time delay

1 view (last 30 days)
Chokri Sendi
Chokri Sendi on 20 Sep 2019
Commented: Chokri Sendi on 24 Sep 2019
I would like to know if there is a command in Matlab to extract matrices of system with time delay, I have a nominal system :
x_dot = A(t)*x(t)+B(t)*u(t)
I would like to simulate the system with time delay t_x and t_u as :
x_dot = A(t)*x(t)+B(t)*u(t) + A_d*x(t-t_x)+B_d(t)*u(t-t_u)
then extract the matrices A_d(t), B_d(t) to use them to design a controller.
your help is appreciated.

Answers (1)

thoughtGarden on 20 Sep 2019
Edited: thoughtGarden on 20 Sep 2019
This answer has been updated to better match the OP.
doc ss %search for "InternalDelay" and "OutputDelay"
% Define Delays
t_x = 0.005;
t_u = 0.001;
% Fill in your system matrix here
A = [1,0; 0, 1];
B = [0; 0.5];
C = [1, 0];
D = 0;
% Create the no delay system
sys =ss(A,B,C,D,'InputDelay',t_x,'OutputDelay',t_u);
Chokri Sendi
Chokri Sendi on 24 Sep 2019
Thank you for your reply, I still dont see how I can use
" sys =ss(A,B,C,D,'InputDelay',t_x,'OutputDelay',t_u),
to write the system as:
x_dot = A(t)*x(t)+B(t)*u(t) + A_d*x(t-t_x)+B_d(t)*u(t-t_u)
in other word since A and B are known how I can find A_d and B_d from "sys" that I just created .

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!