Как дать дискретный вклад в уравнение завода?

У меня есть уравнение растений. Скажем,

Plant = tf([0 1] ,[1 1],'InputDelay',1);
t = 1:1:100;

Теперь у меня есть входное значение a = 0.0552, в момент времени t = 1. Я хочу вычислить выход растения при t = 1 (что также должно быть числовым значением!) Как это сделать!

Если я задаю вход a (1) = 0,5552 при t = 1, то y (выход) рассчитывается только на основе (1).

Точно так же при t = 2 мой вход является (2) = 0,4481(скажем)....

в момент времени t=3 a(3)=0,4100 ... Итак, как мне получить правильные значения y (t1, a1), y (t2, a2)....

2 ответа

Я нахожу это после долгих поисков.. Вместо использования уравнения в форме Лапласа. Нам нужно использовать дифференциальную форму, с помощью метода runge -kutta это можно решить (то есть, чтобы получить результат в числовом приближенном выражении)

У вас в основном есть шаг ввода значения 0.0552, Вы можете легко использовать функцию step для этого как:

Plant = tf([0 1] ,[1 1],'InputDelay',1);
t = 1:1:100;
opt = stepDataOptions;
opt.StepAmplitude = 0.0552;  
step(Plant, t, opt);

Это создаст следующий сюжет:

введите описание изображения здесь

Если вы хотите не строить график, а получить ответ, просто перехватите вывод шага:

y=step(Plant, t, opt);
Другие вопросы по тегам