getComponents

Извлеките компоненты элемента управления SISO из ПИД-регулятора 2-DOF

Описание

пример

[C,X] = getComponents(C2,looptype) анализирует ПИД-регулятор 2-DOF C2 в два компонента элемента управления SISO. Один из компонентов элемента управления, C, ПИД-регулятор 1-DOF. Другой, X, динамическая система SISO. Когда C и X соединяются в циклической структуре, заданной looptype, получившаяся система с обратной связью эквивалентна циклу управления 2-DOF.

Для получения дополнительной информации об архитектурах управления ПИДа 2-DOF, смотрите ПИД-регуляторы с двумя степенями свободы.

Примеры

свернуть все

Разложите ПИД-регулятор 2-DOF на компоненты элемента управления SISO, с помощью каждого feedforward, обратной связи, и отфильтруйте настройки.

Чтобы запуститься, получите ПИД-регулятор 2-DOF. В данном примере создайте модель объекта управления и настройте ПИД-регулятор 2-DOF для него.

G = tf(1,[1 0.5 0.1]);
C2 = pidtune(G,'pidf2',1.5)
C2 =
 
                       1                s    
  u = Kp (b*r-y) + Ki --- (r-y) + Kd -------- (c*r-y)
                       s              Tf*s+1 

  with Kp = 1.12, Ki = 0.23, Kd = 1.3, Tf = 0.122, b = 0.664, c = 0.0136
 
Continuous-time 2-DOF PIDF controller in parallel form.

C2 pid2 объект контроллера, с двумя входными параметрами и одним выходом. Анализируйте C2 в компоненты элемента управления SISO с помощью настройки feedforward.

[Cff,Xff] = getComponents(C2,'feedforward')
Cff =
 
             1            s    
  Kp + Ki * --- + Kd * --------
             s          Tf*s+1 

  with Kp = 1.12, Ki = 0.23, Kd = 1.3, Tf = 0.122
 
Continuous-time PIDF controller in parallel form.


Xff =
 
  -10.898 (s+0.2838)
  ------------------
      (s+8.181)
 
Continuous-time zero/pole/gain model.

Когда отображение показывает, эта команда возвращает ПИД-регулятор SISO Cff как pid объект. Компенсатор feedforward X возвращен как zpk объект.

Анализируйте C2 использование настройки обратной связи. В этом случае также, Cfb pid объект контроллера и компенсатор обратной связи X zpk модель.

[Cfb,Xfb] = getComponents(C2,'feedback');

Анализируйте C2 использование настройки фильтра. Снова, компонентами является pid SISO контроллер и zpk модель, представляющая предварительный фильтр.

[Cfr,Xfr] = getComponents(C2,'filter');

Входные параметры

свернуть все

ПИД-регулятор 2-DOF, чтобы разложиться, заданный как pid2 или pidstd2 объект контроллера.

Циклическая структура для разложения контроллера 2-DOF, заданного как 'feedforward', 'feedback', или 'filter'. Они соответствуют следующим разложениям управления и архитектуре:

  • 'feedforward' C обычный ПИД-регулятор SISO, который берет сигнал ошибки в качестве его входа. X контроллер feedforward, как показано:

    Если C2 непрерывное время, контроллер параллельной формы, затем компонентами дают:

    C(s)=Kp+Kis+KdsTfs+1,X(s)=(b1)Kp+(c1)KdsTfs+1.

    Следующая команда создает систему с обратной связью от r до y для настройки feedforward.

    T = G*(C+X)*feedback(1,G*C);
  • 'feedback' C обычный ПИД-регулятор SISO, который берет сигнал ошибки в качестве его входа. X контроллер обратной связи от y до u, как показано:

    Если C2 непрерывное время, контроллер параллельной формы, затем компонентами дают:

    C(s)=bKp+Kis+cKdsTfs+1,X(s)=(1b)Kp+(1c)KdsTfs+1.

    Следующая команда создает систему с обратной связью от r до y для настройки обратной связи.

    T = G*C*feedback(1,G*(C+X));
  • 'filter' X предварительный фильтр на ссылочном сигнале. C обычный ПИД-регулятор SISO, который берет в качестве его входа различие между отфильтрованной ссылкой и выходом, как показано:

    Если C2 непрерывное время, контроллер параллельной формы, затем компонентами дают:

    C(s)=Kp+Kis+KdsTfs+1,X(s)=(bKpTf+cKd)s2+(bKp+KiTf)s+Ki(KpTf+Kd)s2+(Kp+KiTf)s+Ki.

    Следующая команда создает систему с обратной связью от r до y для настройки фильтра.

    T = X*feedback(G*C,1);

Формулы, показанные выше, принадлежат непрерывному времени, контроллерам параллельной формы. Контроллеры стандартной формы и контроллеры в дискретное время могут быть разложены на аналогичные настройки. getComponents команда работает над всеми объектами ПИД-регулятора 2-DOF.

Выходные аргументы

свернуть все

ПИД-регулятор SISO, возвращенный как pid или pidstd объект контроллера. Форма C соответствует форме входного контроллера C2. Например, если C2 стандартная форма pidstd2 контроллер, затем C pidstd объект.

Точная функциональная форма C зависит от циклической структуры, которую вы задаете с looptype аргумент, как описано во Входных параметрах.

Компонент элемента управления SISO, заданный как нули, полюса и усиление (zpk) модель. Точная функциональная форма X зависит от циклической структуры, которую вы задаете с looptype аргумент, как описано во Входных параметрах.

Введенный в R2015b