Создайте ПИД-регулятор 2-DOF в параллельной форме, преобразуйте в параллельную форму ПИД-регулятор 2-DOF
C2 = pid2(Kp,Ki,Kd,Tf,b,c)
C2 = pid2(Kp,Ki,Kd,Tf,b,c,Ts)
C2 = pid2(sys)
C2 = pid2(___,Name,Value)
pid2 объекты контроллера представляют две степени свободы (2-DOF) ПИД-регуляторы в параллельной форме. Использование pid2 любой, чтобы создать a pid2 объект контроллера от известных коэффициентов или преобразовывать модель динамической системы в a pid2 объект.
Две степени свободы (2-DOF) ПИД-регуляторы включают взвешивание заданного значения на пропорциональных и производных терминах. ПИД-регулятор с 2 степенями свободы может достигнуть быстрого подавления помех без значительного увеличения перерегулирования в отслеживании заданного значения. ПИД-регуляторы 2-DOF также полезны, чтобы смягчить влияние изменений в опорном сигнале на управляющем сигнале. Следующий рисунок показывает типичную архитектуру управления с помощью ПИД-регулятора 2-DOF.

создает непрерывное время ПИД-регулятор 2-DOF с пропорциональным, интегралом, и производная получает C2 = pid2(Kp,Ki,Kd,Tf,b,c)Kp, Ki, и Kd и производная первого порядка фильтрует постоянную времени Tf. У контроллера также есть заданное значение, взвешивающее b на пропорциональном термине и заданном значении, взвешивающем c на производном термине. Отношением между контроллером выход 2-DOF (u) и его двумя входными параметрами (r и y) дают:
Это представление находится в parallel form. Если все коэффициенты с действительным знаком, то получившийся C2 isa pid2 объект контроллера. Если один или несколько из этих коэффициентов является настраиваемым (realp или genmat), затем C2 настраиваемое обобщенное пространство состояний (genss) объект модели.
создает дискретное время ПИД-регулятор 2-DOF с шагом расчета C2 = pid2(Kp,Ki,Kd,Tf,b,c,Ts)Ts. Отношением между контроллером выход и входными параметрами дают:
IF (z) и DF (z) является discrete integrator formulas для интегратора и производного фильтра. По умолчанию,
Чтобы выбрать различные дискретные формулы интегратора, используйте IFormula и DFormula свойства. (См. Свойства для получения дополнительной информации). Если DFormula = 'ForwardEuler' (значение по умолчанию) и Tf ≠ 0, затем Ts и Tf должен удовлетворить Tf > Ts/2. Это требование гарантирует устойчивый производный полюс фильтра.
преобразует динамическую систему C2 = pid2(sys)sys к параллельной форме pid2 объект контроллера.
задает дополнительные свойства как разделенные запятой пары C2 = pid2(___,Name,Value)Name,Value аргументы.
|
Пропорциональная составляющая.
Когда Значение по умолчанию: 1 |
|
Интегральная составляющая.
Когда Значение по умолчанию: 0 |
|
Производное усиление.
Когда Значение по умолчанию: 0 |
|
Постоянная времени производного фильтра первого порядка.
Когда Значение по умолчанию: 0 |
|
Взвешивание заданного значения на пропорциональном термине.
Когда Значение по умолчанию: 1 |
|
Взвешивание заданного значения на производном термине.
Когда Значение по умолчанию: 1 |
|
Размер шага. Создать дискретное время
Значение по умолчанию: 0 (непрерывное время) |
|
Динамическая система SISO, чтобы преобразовать в параллель
|
Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
Используйте Name,Value синтаксис, чтобы установить формулы численного интегрирования IFormula и DFormula из дискретного времени pid2 контроллер, или установить другие свойства объектов, такие как InputName и OutputName. Для получения информации о доступных свойствах pid2 диспетчер возражает, смотрите Свойства.
|
ПИД-регулятор 2-DOF, возвращенный как a
|
|
Веса заданного значения на пропорциональных и производных терминах, соответственно. |
|
Усиления ПИД-регулятора. Пропорциональный, интеграл и производные усиления, соответственно. |
|
Производная постоянная времени фильтра.
|
|
Дискретная формула интегратора IF (z) для интегратора дискретного времени
Когда Значение по умолчанию: |
|
Дискретная формула интегратора DF (z) для производного фильтра дискретного времени
Когда Значение по умолчанию: |
|
Задержка в системе вводится. |
|
Задержка в системе Выход. |
|
Размер шага. Для моделей непрерывного времени, Изменение этого свойства не дискретизирует или передискретизирует модель. Использование Значение по умолчанию: |
|
Модули для переменной времени, шаг расчета
Изменение этого свойства не оказывает влияния на другие свойства, и поэтому изменяет полное поведение системы. Использование Значение по умолчанию: |
|
Введите название канала в виде вектора символов или 2 1 массив ячеек из символьных векторов. Используйте это свойство назвать входные каналы моделей контроллеров. Например, присвойте имена C.InputName = {'setpoint';'measurement'};В качестве альтернативы используйте автоматическое векторное расширение, чтобы присвоить оба входных имени. Например: C.InputName = 'C-input';Входные имена автоматически расширяются до Можно использовать краткое обозначение Входные названия канала имеют несколько использования, включая:
Значение по умолчанию: |
|
Введите модули канала в виде 2 1 массив ячеек из символьных векторов. Используйте это свойство отследить модули входного сигнала. Например, присвойте модули C.InputUnit = {'Volts';'mol/m^3'};
Значение по умолчанию: |
|
Введите группы канала. Это свойство не нужно для моделей ПИД-регулятора. Значение по умолчанию: |
|
Выведите название канала в виде вектора символов. Используйте это свойство назвать выходной канал моделей контроллеров. Например, присвойте имя C.OutputName = 'control';Можно использовать краткое обозначение Входные названия канала имеют несколько использования, включая:
Значение по умолчанию: Пустой символьный вектор, |
|
Выведите модули канала в виде вектора символов. Используйте это свойство отследить модули выходного сигнала. Например, присвойте модуль C.OutputUnit = 'Volts';
Значение по умолчанию: Пустой символьный вектор, |
|
Выведите группы канала. Это свойство не нужно для моделей ПИД-регулятора. Значение по умолчанию: |
|
Имя системы в виде вектора символов. Например, Значение по умолчанию: |
|
Любой текст, который вы хотите сопоставить с системой, сохраненной как строка или массив ячеек из символьных векторов. Свойство хранит, какой бы ни тип данных вы обеспечиваете. Например, если sys1.Notes = "sys1 has a string."; sys2.Notes = 'sys2 has a character vector.'; sys1.Notes sys2.Notes ans =
"sys1 has a string."
ans =
'sys2 has a character vector.'
Значение по умолчанию: |
|
Любой тип данных вы хотите сопоставить с системой в виде любого MATLAB® тип данных. Значение по умолчанию: |
|
Выборка сетки для массивов моделей в виде структуры данных. Для массивов моделей, которые выведены путем выборки одной или нескольких независимых переменных, это дорожки свойства значения переменных, сопоставленные с каждой моделью в массиве. Эта информация появляется, когда вы отображаете или строите массив моделей. Используйте эту информацию, чтобы проследить результаты до независимых переменных. Установите имена полей структуры данных к именам переменных выборки. Установите значения полей к произведенным значениям переменных, сопоставленным с каждой моделью в массиве. Все переменные выборки должны быть числовыми и скаляр, оцененный, и все массивы произведенных значений должны совпадать с размерностями массива моделей. Например, предположите, что вы создаете 11 1 массив линейных моделей, sysarr.SamplingGrid = struct('time',0:10)Точно так же предположите, что вы создаете 6 9 массив моделей, [zeta,w] = ndgrid(<6 values of zeta>,<9 values of w>) M.SamplingGrid = struct('zeta',zeta,'w',w) Когда вы отображаете M M(:,:,1,1) [zeta=0.3, w=5] =
25
--------------
s^2 + 3 s + 25
M(:,:,2,1) [zeta=0.35, w=5] =
25
----------------
s^2 + 3.5 s + 25
...Для массивов моделей, сгенерированных путем линеаризации Simulink® модель в нескольких значениях параметров или рабочих точках, программное обеспечение заполняет Значение по умолчанию: |
Чтобы спроектировать ПИД-регулятор для конкретного объекта, использовать pidtune или pidTuner. Чтобы создать настраиваемый ПИД-регулятор 2-DOF как блок системы управления, использовать tunablePID2.
Повредить контроллер 2-DOF в два компонента элемента управления SISO, такие как контроллер обратной связи и контроллер прямого распространения, использование getComponents.
Создайте массивы pid2 диспетчер возражает:
Определение значений массивов для одного или нескольких коэффициентов Kp, Ki, Kdtf B, и c.
Определение массива динамических систем sys преобразовывать в pid2 диспетчер возражает.
Используя stack создавать массивы из отдельных контроллеров или меньших массивов.
Передача массива моделей объекта управления к pidtune.
В массиве pid2 контроллеры, у каждого контроллера должен быть тот же шаг расчета Ts и дискретные формулы интегратора IFormula и DFormula.
Чтобы создать или преобразовать в контроллер стандартной формы, использовать pidstd2. Стандартная форма описывает действия контроллера в терминах полной пропорциональной составляющей Kp, интегральные и производные времена Ti и Td и делитель фильтра N. Например, отношением между входными параметрами и выходом стандартной формы непрерывного времени ПИД-регулятор 2-DOF дают:
Существует два способа дискретизировать непрерывное время pid2 контроллер:
Используйте c2d команда. c2d вычисляет новые значения параметров для дискретизированного контроллера. Дискретные формулы интегратора дискретизированного контроллера зависят от c2d метод дискретизации вы используете, как показано в следующей таблице.
c2d Метод дискретизации | IFormula | DFormula |
|---|---|---|
'zoh' | ForwardEuler | ForwardEuler |
'foh' | Trapezoidal | Trapezoidal |
'tustin' | Trapezoidal | Trapezoidal |
'impulse' | ForwardEuler | ForwardEuler |
'matched' | ForwardEuler | ForwardEuler |
Для получения дополнительной информации о c2d методы дискретизации, Смотрите c2d страница с описанием. Для получения дополнительной информации о IFormula и DFormula, смотрите Свойства.
Если вы требуете различных дискретных формул интегратора, можно дискретизировать контроллер непосредственно установкой Ts, IFormula, и DFormula к требуемым значениям. (См., Дискретизируют Непрерывное время ПИД-регулятор 2-DOF.) Однако этот метод не вычисляет новое усиление и постоянные значения фильтра для дискретизированного контроллера. Поэтому этот метод может дать к более плохому соответствию между непрерывным - и дискретным временем pid2 контроллеры, чем использование c2d.
pidstd2 | pid | piddata2 | getComponents | make1DOF | pidtune | pidTuner | tunablePID2 | genss | realp