Создайте ПИД-регулятор в параллельной форме, преобразуйте в параллельную форму ПИД-регулятора
C = pid(Kp,Ki,Kd,Tf)
C = pid(Kp,Ki,Kd,Tf,Ts)
C = pid(sys)
C = pid(Kp)
C = pid(Kp,Ki)
C = pid(Kp,Ki,Kd)
C = pid(...,Name,Value)
C = pid
создает ПИД-регулятор в непрерывном времени с пропорциональным, интегральным и производным коэффициентами усиления C = pid(Kp,Ki,Kd,Tf)Kp, Ki, и Kd и производную первого порядка фильтрации временной константы Tf:
Это представление в parallel form. Если все Kp, Ki, Kd, и Tf являются реальными, тогда получившиеся C является pid объект контроллера. Если один или несколько из этих коэффициентов настраиваются (realp или genmat), затем C - настраиваемое обобщенное пространство состояний (genss) объект модели.
создает ПИД-регулятор в дискретном времени с шагом расчета C = pid(Kp,Ki,Kd,Tf,Ts)Ts. Контроллер:
IF (z) и DF (z) являются discrete integrator formulas для интегратора и производного фильтра. По умолчанию,
Чтобы выбрать различные дискретные формулы интегратора, используйте IFormula и DFormula свойства. (Для получения дополнительной информации см. свойства» IFormula и DFormula). Если DFormula = 'ForwardEuler' (значение по умолчанию) и Tf ≠ 0, затем Ts и Tf должен удовлетворять Tf > Ts/2. Это требование обеспечивает стабильный производный полюс фильтра.
преобразует динамическую систему C = pid(sys)sys в параллельную форму pid объект контроллера.
создает пропорциональный контроллер (P) в непрерывном времени с C = pid(Kp)Ki = 0, Kd = 0, и Tf = 0.
создает пропорциональный и интегральный (PI) контроллер с C = pid(Kp,Ki)Kd = 0 и Tf = 0.
создает пропорциональный, интегральный и производный (ПИД) контроллер с C = pid(Kp,Ki,Kd)Tf = 0.
создает контроллер или преобразует динамическую систему в C = pid(...,Name,Value)pid объект контроллера с дополнительными опциями, заданными одним или несколькими Name,Value аргументы в виде пар.
|
Пропорциональная составляющая.
Когда По умолчанию: 1 |
|
Интегральная составляющая.
Когда По умолчанию: 0 |
|
Производный коэффициент усиления.
Когда По умолчанию: 0 |
|
Временная константа производного фильтра первого порядка.
Когда По умолчанию: 0 |
|
Шаг расчета. Чтобы создать дискретное время
По умолчанию: 0 (непрерывное время) |
|
Динамическая система SISO для преобразования в параллельную
|
Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.
Использование Name,Value синтаксис для установки формул численного интегрирования IFormula и DFormula дискретного времени pid контроллер или задать другие свойства объектов, такие как InputName и OutputName. Для получения информации о доступных свойствах pid объекты контроллера, см. Свойства.
|
ПИД-регулятор, представленный как
|
|
Коэффициент усиления ПИД-регулятора. The |
|
Производная фильтрует постоянную времени. The |
|
Дискретный интегратор формулы IF (z) для интегратора дискретного времени
Когда По умолчанию: |
|
Дискретный интегратор формулы DF (z) для производного фильтра дискретного времени
Когда По умолчанию: |
|
Задержка на системном входе. |
|
Задержка на выходе системы. |
|
Шаг расчета. Для моделей в непрерывном времени, Изменение этого свойства не дискретизирует и не переопределяет модель. Использовать По умолчанию: |
|
Модули измерения для временной переменной, шага расчета
Изменение этого свойства не влияет на другие свойства и, следовательно, изменяет общее поведение системы. Использовать По умолчанию: |
|
Вход канала, заданное как вектор символов. Используйте это свойство, чтобы назвать входной канал моделей контроллеров. Например, присвойте имя C.InputName = 'error';Можно использовать сокращённое обозначение Входные имена каналов имеют несколько применений, включая:
По умолчанию: Пустой символьный вектор, |
|
Входные модули канала, заданные как вектор символов. Используйте это свойство для отслеживания модулей входного сигнала. Например, присвойте модули измерения концентрации C.InputUnit = '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® моделируйте в нескольких значениях параметров или рабочих точках, программное обеспечение заполняет По умолчанию: |
Использовать pid кому:
Создайте pid объект контроллера из известных коэффициентов ПИД и временной константы фильтра.
Преобразуйте a pidstd объект контроллера в стандартную форму pid объект контроллера.
Преобразуйте другие типы моделей динамической системы в a pid объект контроллера.
Чтобы спроектировать ПИД-регулятор для определенного объекта, используйте pidtune или pidTuner. Чтобы создать настраиваемый ПИД-регулятор как блок проекта системы управления, используйте tunablePID.
Создание массивов pid объекты контроллера по:
В массиве из pid контроллеры, каждый контроллер должен иметь одинаковый шаг расчета Ts и дискретные формулы интегратора IFormula и DFormula.
Чтобы создать или преобразовать в контроллер стандартной формы, используйте pidstd. Стандартная форма выражает действия контроллера с точки зрения общей пропорциональной составляющей Kp, интегрального и производного времени Ti и Td, и N делителя фильтра:
Существует два способа дискретизировать непрерывное время pid контроллер:
Используйте 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 к желаемым значениям. (См. Раздел «Дискретизация ПИД-регулятора в непрерывном времени».) Однако этот метод не вычисляет новые значения коэффициентов усиления и фильтрации для дискретизированного контроллера. Поэтому этот метод может привести к более плохому соответствию между непрерывным и дискретным временем pid контроллеры, чем использовать c2d.