Saltar al contenido
Control Automático Educación

Control por asignación de polos (RST Incremental)

Hola Controleros y Controleras, hoy vamos a aprender como funciona un Control RST Incremental (acción integral dentro del lazo de control). Recordando que el control RST es un método elegante de como usar una colocación de polos.

Antes de comenzar, podrías darle un vistazo al:

CURSO GRATUITO DE CONTROL DE PROCESOS AVANZADOS

Control RST Incremental

El control RST Incremental es basicamente el mismo control RST posicional visto anteriormente, solo que presenta una pequeña modificación en el lazo de control que altera la ley de control y altera la identidad polinomial de la siguiente manera.

Por eso será importante que veas esa entrada anterior, donde explicamos en detalle que es un RST y mostramos algunos aspectos teoricos del controlador.

A continuación vamos a ver la modificación (adición de una acción integradora) en el modelo de la planta del proceso y en la acción de control:

Planta: 

A(z^{-1})\Delta y(t)=z^{-d}B(z^{-1})\Delta u(t)

Donde:

\Delta=1-z^{-1}\rightarrow \Delta u(t)-u(t-1)

Ley de Control

R(z^{-1})\Delta u(t)=T(z^{-1})y_i(t)-S(z^{-1})y(t)

Con esto, el diagrama de bloques del sistema en lazo cerrado queda de la siguiente manera:

Control RST Incremental

Notese que en el Lazo de control se adiciono un Integrador que acompaña al polinomio R y es denotado como Δ, este termino garantiza que el sistema siga la referencia y también que pueda sobrellevar perturbaciones del sistema como el do(t) que esta ingresando a la salida de la planta.

Identidad:

La identidad polinomial con el ingreso del termino integrador en el controlador RST (Reference Signal Tracking) o simplemente Seguidor de Referencia viene dado por:

A(z^{-1})\Delta R(z^{-1})+z^{-d}B(z^{-1})S(z^{-1})=P_{MF}

Tamaño del Polinomio R

N_R=N_B+d-1

Tamaño del Polinomio S

N_S=N_A

N_B Tamaño del Polinomio B Numerador

N_A Tamaño del Polinomio A Denominador

Proyecto de Control RST Incremental

Acomodando la ley de control con el modelo estimado de la planta se obtiene:

y(t)=\dfrac{z^{-d}BT}{A\Delta R+z^{-d}BS}Y_i(t)=\dfrac{z^{-d}BT}{P_{MF}(z^{-1})}

Para garantizar el seguimiento del set point el polinomio T debe ser igual a la suma de todos los coeficientes del polinomio S

T(1)=S(1)

Para un sistema de Segudo Orden por ejemplo, la identidad polinomial quedaria de la siguiente manera:

Gm(z)=\dfrac{b_0+b_1z^{-1}}{1+a_1z^{-1}+a_2z^{-2}}z^{-1}n_a=2;n_b=1;d=1n_r=n_b+d-1=1+1-1=1\rightarrow (R_0+R_1z^{-1})n_s=n_a=2\rightarrow (S_0+S_1z^{-1}+S_2z^{-2})(1+a_1z^{-1}+a_2z^{-2})(1-z^{-1})(R_0+R_1z^{-1})+z^{-1}(b_0+b_1z^{-1})(S_0+S_1z^{-1}+S_2z^{-2})=(1+p_1z^{-1}+p_2z^{-2})

P1 y P2 son los polos asignados.

Si multiplicamos los terminos del denominador (A) con el integrador (Δ) tenemos:

\bar{A}=A(z^{-1})\Delta=1+\bar{a_1}z^{-1}+\bar{a_2}z^{-2}\bar{A}=A(z^{-1})\Delta=(1+a_1z^{-1}+a_2z^{-2})(1-z^{-1})\bar{A}=A(z^{-1})\Delta=1+(a_1-1)z^{-1}+(a_2-a_1)z^{-2}-a_2z^{-3}\begin{bmatrix} 1 &b_0 &0 &0 \\ \bar{a_1} &b_1 &b_0 &0 \\ \bar{a_2} &0 &b_1 &b_0 \\ \bar{a_3} &0 &0 &b_1 \end{bmatrix}\begin{bmatrix} R_1\\ S_0\\ S_1\\ S_2 \end{bmatrix}=\begin{bmatrix} p_1-\bar{a_1}\\ p_2-\bar{a_2}\\ -\bar{a_3}\\ 0 \end{bmatrix}T=S_0+S_1+S_2

Recordar que R_0=1

Ley de Control

R(z^{-1})\Delta u(t)=T(z^{-1})y_i(t)-S(z^{-1})y(t)(1+R_1)(1-z^{-1})u(t)=TY_i(t)-(S_0+S_1z^{-1}+S_2z^{-2})y(t)

Despejando U y aplicando transformada inversa Z

u(k)=TY_i(k)-S_0y(k)-S_1y(k-1)-S_2y(k-2)-(R_1-1)u(k-1)-R_1u(k-2)

Ejemplo Control RST Incremental

Usando el ejemplo numero 2 visto en la entrada anterior, se hace el mismo tratamiento para un RST incremental usando las ecuaciones anteriormente descritas que son para un sistema de segundo orden. Se presenta entonces el codigo en matlab.

Control RST Incremental

Notese que a los 30 segundos ingresa una perturbación al sistema, y el controlador RST incremental es capaz de reaccionar para volver a llevar la variable al punto de referencia, cosa que no sucedía con el control RST Posicional.

Eso es todo por la entrada del dia de hoy, espero les haya gustado y hayan aprendido algo nuevo. Si te ha servido el contenido de esta entrada, de los videos y los códigos de implementación y deseas apoyar mi trabajo invitandome a un café super barato, puedes hacerlo en el siguiente link:

👉 Invitar a Sergio a un Café ☕️

Que esten muy bien, nos vemos en la siguiente entrada.

Entradas relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Comentarios (4)

Por qué cambió la forma de obtener los polos?

Responder

Como los dos polos son complejos conjugados, se pueden representar en forma rectangular o polar. En la entrada utilicé la representación polar y utilicé 57.3 para convertir el número de radianes a grados. Puedes encontrar esto en un libro de control digital o procesamiento de señales, pero la estructura no cambia. En el código, “za” sería el Vector Radio, y “th” sería el ángulo en grados. Si te resulta extraño, puede usar la siguiente ecuación, que simplemente hace la conversión del plano complejo S al plano complejo Z y obtendrás el mismo resultado:

Sd=[-ep*wn+1i*wn*sqrt(1-ep^2), -ep*wn-1i*wn*sqrt(1-ep^2)]; %Asignación de Polos
polos=exp(Sd*T);

Responder

Estimado Sergio C. se agradece el aporte de este Post, mi consulta es si hay alguna bibliográfica para consultar los términos matemáticos y origen de las formulas.

Responder

[…] 2. Control por asignación de polos (RST Incremental) […]

Responder