exponenta event banner

make2DOF

Преобразуйте диспетчера PID с 1 финансовым департаментом в диспетчера с 2 финансовыми департаментами

Описание

пример

C2 = make2DOF(C1) преобразует одноуровневый PID-контроллер C1 до двух степеней свободы. Веса уставок b и c контроллера 2-DOF равны 1, а остальные коэффициенты PID не изменяются.

C2 = make2DOF(C1,b) определяет вес уставки для пропорционального члена.

пример

C2 = make2DOF(C1,b,c) определяет вес уставки как для пропорционального, так и для производного члена.

Примеры

свернуть все

Проектирование 1-DOF PID-контроллера для установки.

G = tf(1,[1 0.5 0.1]);
C1 = pidtune(G,'pidf',1.5)
C1 =
 
             1            s    
  Kp + Ki * --- + Kd * --------
             s          Tf*s+1 

  with Kp = 1.12, Ki = 0.23, Kd = 1.3, Tf = 0.122
 
Continuous-time PIDF controller in parallel form.

Преобразование контроллера в две степени свободы.

C2 = make2DOF(C1)
C2 =
 
                       1                s    
  u = Kp (b*r-y) + Ki --- (r-y) + Kd -------- (c*r-y)
                       s              Tf*s+1 

  with Kp = 1.12, Ki = 0.23, Kd = 1.3, Tf = 0.122, b = 1, c = 1
 
Continuous-time 2-DOF PIDF controller in parallel form.

Новый контроллер имеет одинаковые коэффициенты усиления PID и постоянную фильтрацию. Он также содержит новые термины, включающие в себя веса уставок. b и c. По умолчанию b = c = 1. Поэтому в замкнутом контуре с заводом G, контроллер 2-DOF C2 дает тот же ответ, что и C1.

T1 = feedback(G*C1,1);
CM = tf(C2);
T2 = CM(1)*feedback(G,-CM(2));
stepplot(T1,T2,'r--')

Figure contains an axes. The axes contains 2 objects of type line. These objects represent T1, T2.

Новообращенный C1 к контроллеру 2-DOF с различными b и c значения.

C2_2 = make2DOF(C1,0.5,0.75)
C2_2 =
 
                       1                s    
  u = Kp (b*r-y) + Ki --- (r-y) + Kd -------- (c*r-y)
                       s              Tf*s+1 

  with Kp = 1.12, Ki = 0.23, Kd = 1.3, Tf = 0.122, b = 0.5, c = 0.75
 
Continuous-time 2-DOF PIDF controller in parallel form.

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

CM_2 = tf(C2_2);
T2_2 = CM_2(1)*feedback(G,-CM_2(2));
stepplot(T1,T2_2,'r--')

Figure contains an axes. The axes contains 2 objects of type line. These objects represent T1, T2\_2.

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

свернуть все

1-DOF Контроллер PID, указанный как pid объект или pidstd объект.

Вес уставки на пропорциональном члене, определяемый как действительное, неотрицательное, конечное значение. Если не указать b, то C2 имеет b = 1.

Вес уставки на член производной, определяемый как действительное, неотрицательное, конечное значение. Если не указать c, то C2 имеет c = 1.

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

свернуть все

2-DOF Контроллер PID, возвращенный как pid2 объект или pidstd2 объект. C2 в параллельной форме, если C1 в параллельной форме и стандартной форме, если C1 в стандартной форме.

Например, предположим C1 является непрерывной, параллельной формой pid контролер формы:

C1 = Kp + Kis + KdTfs + 1.

Тогда C2 является параллельной формой 2-DOF pid2 контроллер, имеющий два входа и один выход. Отношение между входами, r и y, и выходом u C2 задается:

u = Kp (br y) + Kis (r y) + KdTfs + 1 (cr − y).

PID получает Kp, Ki и Kd, а постоянная Tf времени фильтра остается неизменной. Веса уставки b и c определяются входными аргументами b и c, или 1 по умолчанию. Для получения дополнительной информации о диспетчерах PID с 2 финансовыми департаментами, см. Двух Диспетчеров PID Степени свободы.

Преобразование также сохраняет значения свойств. Ts, TimeUnit, Sampling Grid, IFormula, и DFormula.

Представлен в R2015b