piddata2

Коэффициенты доступа параллельной формы 2-DOF ПИД-регулятора

Описание

пример

[Kp,Ki,Kd,Tf,b,c] = piddata2(sys) возвращает коэффициенты ПИД Kp, Ki, Kd, временная константа фильтра Tfи заданные веса b и c параллельной формы 2-DOF ПИД-регулятора представленной динамической системой sys.

Если sys является pid2 объект контроллера, тогда каждый выходной аргумент является соответствующим коэффициентом в sys.

Если sys не является pid2 object, тогда каждый выходной аргумент является соответствующим коэффициентом 2-DOF ПИД-регуляторов параллельной формы, который эквивалентен sys.

Если sys является массивом динамических систем, тогда каждый выходной аргумент является массивом тех же размерностей, что и sys.

пример

[Kp,Ki,Kd,Tf,b,c,Ts] = piddata2(sys) также возвращает значение шага расчета Ts. Для дискретных sys это не является pid2 объект, piddata2 вычисляет значения коэффициентов с помощью функции по умолчанию ForwardEuler дискретная формула интегратора для обоих IFormula и DFormula. См. pid2 Страница с описанием для получения дополнительной информации о дискретных формулах интегратора.

пример

[Kp,Ki,Kd,Tf,b,c,Ts] = piddata2(sys,J1,...,JN) извлекает данные для подмножества записей в sys, где sys является N-мерным массивом динамических систем. Индексы J задайте элемент массива, который нужно извлечь.

Примеры

свернуть все

Обычно вы извлекаете коэффициенты из контроллера, полученного из другой функции, такой как pidtune или getBlockValue. В данном примере создайте 2-DOF ПИД-регуляторы, которая имеет случайные коэффициенты.

rng('default');    % for reproducibility
C2 = pid2(rand,rand,rand,rand,rand,rand);

Извлеките коэффициенты ПИД, постоянную времени фильтра и веса уставки.

[Kp,Ki,Kd,Tf,b,c] = piddata2(C2);

Создайте 2-DOF ПИД-регуляторы в стандартной форме.

C2 = pidstd2(2,3,4,10,0.5,0.5)
C2 =
 
                       1      1                      s      
  u = Kp * [(b*r-y) + ---- * --- * (r-y) + Td * ------------ * (c*r-y)]
                       Ti     s                  (Td/N)*s+1 

  with Kp = 2, Ti = 3, Td = 4, N = 10, b = 0.5, c = 0.5
 
Continuous-time 2-DOF PIDF controller in standard form

Вычислите коэффициенты эквивалентного ПИД-регулятора параллельной формы.

[Kp,Ki,Kd,Tf,b,c] = piddata2(C2);

Проверьте некоторые коэффициенты, чтобы подтвердить, что они отличаются от коэффициентов стандартной формы.

Ki
Ki = 0.6667
Kd
Kd = 8

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

Следующие матрицы A, B, C и D формируют модель пространства состояний в дискретном времени, которая представляет 2-DOF ПИД-регуляторы.

A = [1,0;0.09975,0.995];
B = [0.00625,-0.00625;0.1245,-0.1241];
C = [0,4];
D = [2.875,-5.75];
sys = ss(A,B,C,D,0.1)
sys =
 
  A = 
            x1       x2
   x1        1        0
   x2  0.09975    0.995
 
  B = 
             u1        u2
   x1   0.00625  -0.00625
   x2    0.1245   -0.1241
 
  C = 
       x1  x2
   y1   0   4
 
  D = 
          u1     u2
   y1  2.875  -5.75
 
Sample time: 0.1 seconds
Discrete-time state-space model.

Извлеките коэффициенты ПИД, постоянную времени фильтрации и уставки модели.

[Kp,Ki,Kd,Tf,b,c,Ts] = piddata2(sys);

Для системы в дискретном времени piddata2 вычисляет значения коэффициентов с помощью функции по умолчанию ForwardEuler дискретная формула интегратора для обоих IFormula и DFormula.

Как правило, вы получаете массив контроллеров с помощью pidtune на массиве моделей объекта управления. В данном примере создайте массив 2-DOF ПИ-контроллеров 2 на 3 со случайными значениями Kp, Ki, и b.

rng('default');
C2 = pid2(rand(2,3),rand(2,3),0,0,rand(2,3),0);

Извлеките все коэффициенты из массива.

[Kp,Ki,Kd,Tf,b,c] = piddata2(C2);

Каждый из выходов сам является массивом 2 на 3. Например, исследуйте Ki.

Ki
Ki = 2×3

    0.2785    0.9575    0.1576
    0.5469    0.9649    0.9706

Извлеките только коэффициенты входа (2,1) в массиве.

[Kp21,Ki21,Kd21,Tf21,b21,c21] = piddata2(C2,2,1);

Каждый из этих выходов является скаляром.

Ki21
Ki21 = 0.5469

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

свернуть все

2-DOF ПИД-регуляторы в параллельной форме, заданной как pid2 объект контроллера, модель динамической системы или динамической системы массив. Если sys не является pid2 объект контроллера, это должна быть модель с двумя входами, с одним выходом, которая представляет допустимую 2-DOF ПИД-регуляторы, которая может быть записана в параллельной форме.

Индексы входа для извлечения из массива моделей sys, заданный как положительные целые числа. Предоставьте столько индексов, сколько измерений массива в sys. Например, предположим sys - массив 4 на 5 (двумерный) из pid2 контроллеры или динамическая система модели, которые представляют 2-DOF ПИД-регуляторы. Следующая команда извлекает данные для входа (2,3) в массив.

[Kp,Ki,Kd,Tf,b,c,Ts] = piddata2(sys,2,3);

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

свернуть все

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

Если sys является pid2 объект контроллера, затем Kp является Kp значение sys.

Если sys не является pid2 объект, затем Kp - пропорциональная составляющая 2-DOF ПИД-регуляторов параллельной формы, которая эквивалентна sys.

Если sys - массив динамических систем, затем Kp - массив тех же размерностей, что и sys.

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

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

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

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

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

Шаг расчета pid2 контроллер, динамическая системная sys, или динамический системный массив, возвращенный как скаляр.

См. также

| |

Введенный в R2015b