Как поставить функцию передачи, которую я получаю от ПИД-тюнера в Matlab в Simulink? - PullRequest
1 голос
/ 05 мая 2019

Я использовал ПИД-тюнер, чтобы получить функцию передачи из реальных данных.

Я получил это: Plant1 = Модель процесса с передаточной функцией:
Kp
G (s) = -------------------------------- * exp (-Td * s) / (1 + 2 * Дзета Tw s + (Tw * s) ^ 2) (1 + Tp3 * s)

     Kp = 50.717                                  
     Tw = 4.3132                                  
   Zeta = 0.63476                                 
    Tp3 = 0.10473                                 
     Td = 2.521    

Как мне напрямую поместить это в функцию передачи simulink?

1 Ответ

1 голос
/ 05 мая 2019

Вы не можете, блок Transfer Function предназначен только для линейных моделей, не зависящих от времени, без задержки.

Вам нужно разделить свою передаточную функцию на две части.

Часть задержки exp(-Tds) реализована с использованием Транспортная задержка , где ваша задержка составляет Td. Обратите внимание, что это приближается во время моделирования (с точностью, зависящей от размера буфера блока), поэтому вы не получите точно 2.521 секунд.

Тогда оставшаяся часть вашей модели - это LTI, и поэтому ее можно реализовать тривиально, используя один или два блока Transfer Fcn . (Один, если вы умножите члены числителя; два, если вы хотите разделить их.)

...