Main Content

Controladores proporcionales, integrales y derivativos (PID) de tiempo discreto

Todos los tipos de objeto del controlador PID (pid, pidstd, pid2 y pidstd2) pueden representar controladores PID en tiempo discreto.

Representaciones del controlador PID de tiempo discreto

Los controladores PID de tiempo discreto se expresan con las siguientes fórmulas.

FormaFórmula
Paralela (pid)

C=Kp+KiIF(z)+KdTf+DF(z),

donde:

  • Kp = ganancia proporcional

  • Ki = ganancia integral

  • Kd = ganancia derivativa

  • Tf = tiempo del filtro derivativo

Estándar (pidstd)

C=Kp(1+1TiIF(z)+TdTdN+DF(z)),

donde:

  • Kp = ganancia proporcional

  • Ti = tiempo integral

  • Td = tiempo derivativo

  • N = divisor del filtro derivativo

Paralela de 2-DOF (pid2)

La relación entre la salida del controlador de 2-DOF (u) y sus dos entradas (r e y) es:

u=Kp(bry)+KiIF(z)(ry)+KdTf+DF(z)(cry).

En esta representación:

  • Kp = ganancia proporcional

  • Ki = ganancia integral

  • Kd = ganancia derivativa

  • Tf = tiempo del filtro derivativo

  • b = ponderaciones de puntos de referencia en término proporcional

  • c = ponderaciones de puntos de referencia en término derivativo

Estándar de 2-DOF (objeto pidstd2)

u=Kp[(bry)+1TiIF(z)(ry)+TdTdN+DF(z)(cry)].

En esta representación:

  • Kp = ganancia proporcional

  • Ti = tiempo integral

  • Td = tiempo derivativo

  • N = divisor del filtro derivativo

  • b = ponderaciones de puntos de referencia en término proporcional

  • c = ponderaciones de puntos de referencia en término derivativo

En todas estas expresiones, IF(z) y DF(z) son las fórmulas del integrador discreto para el filtro integral y derivativo respectivamente. Utilice las propiedades IFormula y DFormula de los objetos del controlador para establecer las fórmulas IF(z) y DF(z). La siguiente tabla muestra las fórmulas disponibles para IF(z) y DF(z). Ts es el tiempo de muestreo.

IFormula o DFormulaIF(z) o DF(z)
ForwardEuler (valor predeterminado)

Tsz1

BackwardEuler

Tszz1

Trapezoidal

Ts2z+1z1

Si no especifica un valor para IFormula, DFormula o ambos cuando crea el objeto del controlador, ForwardEuler se utiliza de forma predeterminada. Para obtener más información sobre cómo establecer y cambiar las fórmulas del integrador discreto, consulte las páginas de referencia para los objetos del controlador pid, pidstd, pid2 y pidstd2.

Crear un controlador PID de forma estándar de tiempo discreto

Este ejemplo muestra cómo crear un controlador proporcional, integral y derivativo (PID) de tiempo discreto de forma estándar que tiene Kp = 29.5, Ti = 1.13, Td = 0.15 N = 2.3 y un tiempo de muestreo Ts 0.1:

C = pidstd(29.5,1.13,0.15,2.3,0.1,...
             'IFormula','Trapezoidal','DFormula','BackwardEuler')

Este comando crea un modelo pidstd con IF(z)=Ts2z+1z1 y DF(z)=Tszz1.

Puede establecer las fórmulas del integrador discreto para un controlador de forma paralela de la misma manera con pid.

Controlador PI de 2-DOF de tiempo discreto en forma estándar

Cree un controlador PI de 2-DOF de tiempo discreto en forma estándar, con la fórmula de discretización trapezoidal. Especifique la fórmula con la sintaxis Name,Value.

Kp = 1;
Ti = 2.4;
Td = 0;    
N = Inf; 
b = 0.5;   
c = 0;      
Ts = 0.1;
C2 = pidstd2(Kp,Ti,Td,N,b,c,Ts,'IFormula','Trapezoidal')
C2 =
 
                       1     Ts*(z+1)
  u = Kp * [(b*r-y) + ---- * -------- * (r-y)]
                       Ti    2*(z-1) 

  with Kp = 1, Ti = 2.4, b = 0.5, Ts = 0.1
 
Sample time: 0.1 seconds
Discrete-time 2-DOF PI controller in standard form

Establecer Td = 0 especifica un controlador PI sin término derivativo. Como muestra la pantalla, los valores de N y c no se utilizan en este controlador. La pantalla también muestra que la fórmula trapezoidal se utiliza para el integrador.

Consulte también

| | |

Ejemplos relacionados

Más acerca de