Настраиваемые ПИД-регуляторы с двумя степенями свободы
blk = tunablePID2(name,type)
blk = tunablePID2(name,type,Ts)
blk = tunablePID2(name,sys)
Объект модели для создания настраиваемых ПИД-регуляторов с двумя степенями свободы. tunablePID2
позволяет параметризовать настраиваемый ПИД-регулятор с двумя степенями свободы SISO. Можно использовать этот параметризованный контроллер для исследований параметров или для автоматической настройки с помощью команд настройки, таких как systune
, looptune
, или команда Robust Control Toolbox™ hinfstruct
.
tunablePID2
является частью семейства параметрических блоков Системы управления. Другие параметрические блоки Системы управления включают tunableGain
, tunableSS
, и tunableTF
.
создает ПИД-регулятор непрерывного времени с двумя степенями свободы, описанный уравнением:blk
= tunablePID2(name
,type
)
r - команда уставки, y - измеренный отклик на эту уставку, и u - сигнал управления, как показано на следующем рисунке.
Настраиваемые параметры блока:
Скалярные усиления Kp
, Ki
, и Kd
Фильтрация временных Tf
Скалярные веса b
и c
The type
аргумент устанавливает тип контроллера путем фиксации некоторых из этих значений на нуле (см. «Входные параметры»).
создает ПИД-регулятор в дискретном времени с шагом расчета blk
= tunablePID2(name
,type
,Ts
)Ts
. Уравнение, описывающее этот контроллер:
IF (z) и DF (z) являются дискретными формулами интегратора для интегрального и производного членов, соответственно. Значения IFormula
и DFormula
свойства устанавливают дискретные формулы интегратора (см. «Свойства»).
использует модель динамической системы, blk
= tunablePID2(name
,sys
)sys
, чтобы задать шаг расчета, Ts
, и начальные значения всех настраиваемых параметров. Модель sys
должна быть совместима с уравнением ПИД-регулятора с двумя степенями свободы.
|
ПИД-регулятор- | |||||||||||||||
|
Тип контроллера, заданный как одно из значений в следующей таблице. Установка типа контроллера исправляет до трех параметров ПИД-регулятора.
| |||||||||||||||
|
Шаг расчета, заданный как скаляр. | |||||||||||||||
|
Динамическая система модель, представляющая ПИД-регулятору с двумя степенями свободы. |
|
Параметризация коэффициентов ПИД Следующие поля
| ||||||||||
|
Дискретные формулы интегратора 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® тип данных. По умолчанию: |
Настраиваемый контроллер с двумя степенями свободы с фиксированным параметром
Создайте настраиваемую ПД- контроллера с двумя степенями свободы. Затем инициализируйте значения параметров и исправьте временную константу фильтра.
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.
Контроллер, инициализированный динамической системой
Создайте настраиваемое ПИ-контроллер с двумя степенями свободы. Используйте два входа, один вывод 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
.
Контроллер с именованными входами и выходом
Создайте настраиваемый ПИД-регулятор и присвойте имена входам и выходу.
blk = tunablePID2('pidblock','pid'); blk.InputName = {'reference','measurement'}; blk.OutputName = {'control'};
blk.InputName
- массив ячеек, содержащий два имени, поскольку ПИД-регулятор с двумя степенями свободы имеет два входных параметра.
Можно изменить структуру ПИД, исправив или освободив любой из параметров. Для примера, blk.Tf.Free = false
исправляет Tf
к его текущему значению.
Чтобы преобразовать a tunablePID2
параметрическая модель числовому (nontunable) объекту модели, используйте команды модели, такие как tf
или ss
. Можно также использовать getValue
для получения текущего значения настраиваемой модели.
genss
| looptune
| systune
| tunableGain
| tunablePID
| tunableSS
| tunableTF
| hinfstruct
(Robust Control Toolbox)