2016-11-21 2 views
2

У меня есть завод equation.Say,Как дать дискретный вход в уравнение завода?

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

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

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

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

при Т = 3, а (3) = 0,4100 ... Так on.Then как бы я быть в состоянии получить правильные значения y (t1, a1), y (t2, a2) ....

+0

Используйте Simulink, это позаботится о вас – percusse

+0

@percusse это можно сделать в MATLAB –

+0

Странный вопрос: если ваш ввод начинается с 't = 1', то вывод на' t = 1' очень легко узнать, '0'. Вы не дали системному времени реагировать. Почему вы хотите узнать результат на 't = 1'? –

ответ

0

У вас в основном есть ввод значения 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); 

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

enter image description here

Если вы хотите, чтобы не построить, но, чтобы получить ответ, просто поймать СТЭП выход:

y=step(Plant, t, opt); 
+0

Но, на самом деле, мне нужно сделать, чтобы получить инстинктивное значение из этого растения. Может быть, я не был ясен (из-за недостаточного knwledge: P) На самом деле, я разработал Fuzzy Cntroller (вручную без использования инструментария), который дает выходные данные на каждой итерации до тех пор, пока «завод» не достигнет некоторого заданного значения. Мне нужно получить полный ответ, то есть Suppse, Iteration 1> a = 0.5558> затем значение TF> O/P (числовая матрица) итерация 2> a (вычисленная база по значению «O/P»)> TF> выходное значение (числовое а не матрица) ... хранить все значения O/P, которые были сохранены на каждой итерации. Затем график O/P по времени (или итерации)! –

+0

Значение мгновенного действия при любом 't0', например. 't0 = 1' является' y (t0) ' –

+0

да, это он ... но если я даю вход a (1) = 0,5558 при t = 1, тогда y вычисляется на основе только a (1). Но при t = 2 мой вход равен (2) = 0,4481 (скажем) .... при t = 3, a (3) = 0,4100 ... Итак, как бы я мог получить правильные y (t1, a1), y (t2, a2) ... значения. Надеюсь, я понятен! : '( –

0

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

Смежные вопросы