Conversión de los componentes del controlador PID con retroalimentación de estado en función de transferencia única y forma de espacio de estado discreto

9

He estado luchando con este problema durante aproximadamente una semana, como parte de un proyecto de un año. Estamos diseñando un controlador para un reactor específico basado en un modelo. Después de ver esto por un tiempo, todavía no puedo hacer que esto funcione, así que realmente lo apreciaría si pudiera obtener ayuda.

Una de las revisiones de literatura publicadas en las que nos hemos basado en gran medida incluye un controlador PID en cada componente por separado en lugar de una ecuación combinada, como por ejemplo:

$$ \ begin {cases} P (n) = K_p [G (n) -getget] \\ I (n) = I (n-1) + \ frac {K_p} {T_I} [G (n) -target] \ \ D (n) = K_pT_D \ frac {dG} {dt} (n) \ end {cases} $$

Simplemente combinando los tres componentes en la salida del controlador PID: $$ PID (n) = P (n) + I (n) + D (n) $$

Y desde aquí, el autor agrega una capa adicional de información de estado sobre la señal PID para obtener la salida final del controlador aplicada al sistema.

$$ \ begin {cases} Q (n) = K_0R (n-1) + K_1Q (n-1) -K_2Q (n-2) \\ R (n) = (1+ \ gamma) PID (n) - \ gamma Q (n-1) \ fin {casos} $$

Y R es la "salida del controlador" final. Aquí, \ $ K_p \ $ es la ganancia del proceso, \ $ T_I \ $ y \ $ T_D \ $ son las ganancias integrales y derivadas, \ $ K_0, K_1 \ $ y \ $ K_2 \ $ son "ganancias" optimizadas para la retroalimentación de estado (inmutable) y \ $ \ gamma \ $ es una constante, 0.5. \ $ G (n) \ $ es el estado del sistema, \ $ Q (n) \ $ es un estado estimado que afecta la dinámica del modelo, y \ $ R (n) \ $ es la salida final real que se envía a planta.

Estaba intentando convertir primero todo a una función de transferencia de un solo controlador, pero me dijeron que simplemente no sería correcto agregarlos juntos.

También me encargaron de encontrar una representación de espacio de estado discreto de este controlador. Para esto, traté de cambiar \ $ \ frac {dG} {dt} (n) \ $ en \ $ G (n) -G (n-1) \ $ para deshacerme de ese problema.

A continuación, intenté definir una nueva variable de estado para \ $ Q (n) \ $ para que \ $ Q (n-1) \ $ y \ $ Q (n-2) \ $ puedan convertirse en primer orden.

Luego intenté sustituir los valores en el controlador PID, para obtener \ $ G (n) \ $ como la variable de estado. Todos estos esfuerzos se basaron en las recomendaciones de mi profesor.

Sin embargo, todavía estoy muy atascado, ya que he seguido ciegamente sus instrucciones sin una visión general para trabajar en ello. Pensé que sería una simple cuestión de transformación de Tustin. Oh, cómo me equivoqué ...

Estoy bastante frustrado, ya que después de un esfuerzo de una semana, todavía estoy desconcertado por lo que parece ser un problema simple.

Si es posible, ¿puedo humildemente pedirle ayuda sobre estas dos preguntas específicas?

  1. Convierta este controlador en una función de transferencia de un solo controlador (como se ve normalmente en cualquier representación de la función de transferencia, es decir, \ $ G (s) = \ frac {1} {s + 1} \ $)
  2. ¿Convertir este controlador en una representación de espacio de estado discreto, dejando la tasa de muestreo como una variable?
pregunta John Galt

1 respuesta

1

No es una respuesta completa, pero espero que pueda ser de alguna ayuda.

Puedes reescribir el primer sistema como

$$ \ begin {cases} P (n) = K_P E (n) \\ I (n) = I (n-1) + \ frac {K_P} {T_I} E (n) \ Delta t \\ D (n) = K_P T_D \ frac {E (n) - E (n-1)} {\ Delta t} \ end {cases} $$

Donde \ $ E (n) = G (n) - target (n) \ $ y \ $ \ Delta t \ $ es su intervalo de muestreo. Tenga en cuenta que \ $ T_D \ $ y \ $ T_I \ $ no se definen como ganancias. \ $ K_I = \ frac {K_P} {T_I} \ $ y \ $ K_D = K_P T_I \ $ son respectivamente la ganancia integral y la ganancia derivada.

Ahora puede reescribir el sistema como una sola función del error.

$$ PID (n) = P (n) + I (n) + D (n) $$

$$ I (n-1) = PID (n-1) - P (n-1) - D (n-1) \\ = PID (n-1) - K_P E (n-1) - K_P T_D \ frac {E (n-1) - E (n-2)} {\ Delta t} $$

$$ PID (n) = K_P E (n) + PID (n-1) - K_P E (n-1) - K_P T_D \ frac {E (n-1) - E (n-2)} {\ Delta t} + \ frac {K_P} {T_I} E (n) \ Delta t + K_P T_D \ frac {E (n) - E (n-1)} {\ Delta t} \\ = PID (n-1) + K_P \ left (\ left (1 + \ frac {\ Delta t} {T_I} + \ frac {T_D} {\ Delta t} \ right) E (n) - \ left (1 + 2 \ frac {T_D} {\ Delta t} \ derecha) E (n-1) + \ frac {T_D} {\ Delta t} E (n-2) \ derecha) $$

El segundo es un poco más complejo de reescribir como una sola ecuación, pero puedes hacerlo de una manera similar. El resultado debe ser

$$ R (n) = K_1 R (n-1) - (\ gamma K_0 + K_2) R (n-2) + (1+ \ gamma) (PID (n) - K_1 PID (n-1) + K_2 PID ( n-2)) $$

Ahora solo necesita sustituir la ecuación del PID para obtener la ecuación del regulador en función del error.

    
respondido por el gvgramazio

Lea otras preguntas en las etiquetas