piddata2

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

Синтаксис

[Kp,Ki,Kd,Tf,b,c] = piddata2(sys)
[Kp,Ki,Kd,Tf,b,c,Ts] = piddata2(sys)
[Kp,Ki,Kd,Tf,b,c,Ts] = piddata2(sys,J1,...,JN)

Описание

пример

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

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

Если sys не является объектом pid2, то каждым выходным аргументом является соответствующий коэффициент параллельной формы ПИД-регулятор 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

Извлеките коэффициенты от 2D входа, динамическая система с одним выходом, которая представляет допустимый ПИД-регулятор параллельной формы 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х3 контроллеров PI 2-DOF со случайными значениями 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 объект, это должен быть 2D вход, модель с одним выходом, которая представляет допустимый ПИД-регулятор 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