Настраиваемый двухстепенный PID-контроллер
blk = tunablePID2(name,type)
blk = tunablePID2(name,type,Ts)
blk = tunablePID2(name,sys)
Объект модели для создания настраиваемых PID-контроллеров с двумя степенями свободы. tunablePID2 позволяет параметризовать настраиваемый контроллер SISO с двумя степенями свободы PID. Этот параметризованный контроллер можно использовать для анализа параметров или для автоматической настройки с помощью таких команд настройки, как systune, looptuneили команда «Надежное управление Toolbox™» hinfstruct.
tunablePID2 входит в семейство параметрических управляющих блоков проектирования. Другие параметрические блоки проектирования элементов управления включают tunableGain, tunableSS, и tunableTF.
создает двухстепенный ПИД-контроллер непрерывного времени, описанный уравнением:blk = tunablePID2(name,type)
Kds1 + Tfs (cr − y).
r - команда уставки, y - измеренный отклик на эту уставку, u - управляющий сигнал, как показано на следующей иллюстрации.
![]()
Настраиваемые параметры блока:
Скалярные коэффициенты усиления Kp, Ki, и Kd
Постоянная времени фильтра Tf
Скалярные веса b и c
type задает тип контроллера, фиксируя некоторые из этих значений равными нулю (см. Input Arguments).
создает дискретный PID-контроллер с временем выборки blk = tunablePID2(name,type,Ts)Ts. Уравнение, описывающее этот контроллер:
+ DF (z) (cr − y).
IF (z) и DF (z) - дискретные интеграторные формулы для интегрального и производного членов соответственно. Значения IFormula и DFormula свойства задают дискретные формулы интегратора (см. Свойства).
использует динамическую модель системы, blk = tunablePID2(name,sys)sys, для установки времени выборки, Tsи начальные значения всех перестраиваемых параметров. Модель sys должен быть совместим с уравнением контроллера PID с двумя степенями свободы.
|
PID-контроллер | |||||||||||||||
|
Тип контроллера, указанный как одно из значений в следующей таблице. При указании типа контроллера фиксируются до трех параметров контроллера PID.
| |||||||||||||||
|
Время выборки, указанное как скаляр. | |||||||||||||||
|
Динамическая модель системы, представляющая контроллер PID с двумя степенями свободы. |
|
Параметризация коэффициентов усиления PID Следующие поля
| ||||||||||
|
Дискретные интеграторные формулы IF (z) и DF (z) для интегрального и производного членов соответственно указаны как одно из значений в следующей таблице.
По умолчанию: | ||||||||||
|
Время выборки. Для моделей непрерывного времени Изменение этого свойства не дискретизирует и не выполняет повторную выборку модели. По умолчанию: | ||||||||||
|
Единицы измерения для переменной времени, времени выборки
Изменение этого свойства не влияет на другие свойства и, следовательно, изменяет общее поведение системы. Использовать По умолчанию: | ||||||||||
|
Имя входного канала, определяемое как символьный вектор или массив ячеек 2 на 1 из символьных векторов. Это свойство используется для присвоения имени входным каналам модели контроллера. Например, присвойте имена C.InputName = {'setpoint';'measurement'};Либо используйте автоматическое векторное расширение для назначения обоих входных имен. Например: C.InputName = 'C-input';Имена вводимых данных автоматически расширяются до Можно использовать сокращенную нотацию Имена входных каналов имеют несколько применений, в том числе:
По умолчанию: | ||||||||||
|
Единицы входного канала, заданные как массив ячеек 2 на 1 символьных векторов. Это свойство используется для отслеживания единиц входного сигнала. Например, присвойте единицы измерения C.InputUnit = {'Volts';'mol/m^3'};
По умолчанию: | ||||||||||
|
Группы входных каналов. Это свойство не требуется для моделей контроллеров PID. По умолчанию: | ||||||||||
|
Имя выходного канала, указанное как символьный вектор. Это свойство используется для присвоения имени выходному каналу модели контроллера. Например, присвойте имя C.OutputName = 'control';Можно использовать сокращенную нотацию Имена входных каналов имеют несколько применений, в том числе:
По умолчанию: Пустой символьный вектор, | ||||||||||
|
Единицы выходного канала, заданные как символьный вектор. Это свойство используется для отслеживания единиц выходного сигнала. Например, присвойте единицу измерения C.OutputUnit = 'Volts';
По умолчанию: Пустой символьный вектор, | ||||||||||
|
Группы выходных каналов. Это свойство не требуется для моделей контроллеров PID. По умолчанию: | ||||||||||
|
Имя системы, указанное как символьный вектор. Например, По умолчанию: | ||||||||||
|
Любой текст, который требуется связать с системой, хранится в виде строки или массива ячеек символьных векторов. Свойство хранит данные любого типа. Например, если 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 ®. По умолчанию: |
Настраиваемый контроллер с двумя степенями свободы с фиксированным параметром
Создайте настраиваемый контроллер PD с двумя степенями свободы. Затем инициализируйте значения параметров и исправьте постоянную времени фильтра.
blk = tunablePID2('pdblock','PD'); blk.b.Value = 1; blk.c.Value = 0.5; blk.Tf.Value = 0.01; blk.Tf.Free = false; blk
blk =
Parametric continuous-time 2-DOF PID controller "pdblock" with equation:
s
u = Kp (b*r-y) + Kd -------- (c*r-y)
Tf*s+1
where r,y are the controller inputs and Kp, Kd, b, c are tunable gains.
Type "showBlockValue(blk)" to see the current value and "get(blk)" to see all
properties.
Контроллер, инициализированный динамической моделью системы
Создайте настраиваемый PI-контроллер с двумя степенями свободы. Использовать два входа, один выход tf для инициализации параметров и других свойств.
s = tf('s'); Kp = 10; Ki = 0.1; b = 0.7; sys = [(b*Kp + Ki/s), (-Kp - Ki/s)]; blk = tunablePID2('PI2dof',sys)
blk =
Parametric continuous-time 2-DOF PID controller "PI2dof" with equation:
1
u = Kp (b*r-y) + Ki --- (r-y)
s
where r,y are the controller inputs and Kp, Ki, b are tunable gains.
Type "showBlockValue(blk)" to see the current value and "get(blk)" to see all
properties.
blk принимает начальные значения параметров из sys.
Если sys является дискретно-временной системой, blk принимает значение свойств, таких как Ts и IFormula, от sys.
Контроллер с именованными входами и выходами
Создайте настраиваемый контроллер PID и присвойте имена входам и выходам.
blk = tunablePID2('pidblock','pid'); blk.InputName = {'reference','measurement'}; blk.OutputName = {'control'};
blk.InputName - массив ячеек, содержащий два имени, поскольку контроллер PID с двумя степенями свободы имеет два входа.
Структуру PID можно изменить, зафиксировав или освободив любой из параметров. Например, blk.Tf.Free = false фиксирует Tf к его текущему значению.
Преобразование tunablePID2 параметрическая модель к числовому (не настраиваемому) объекту модели, используйте команды модели, такие как tf или ss. Также можно использовать getValue для получения текущего значения настраиваемой модели.
genss | looptune | systune | tunableGain | tunablePID | tunableSS | tunableTF | hinfstruct (инструментарий надежного управления)