Revista Ciencias Holguín

Ciencias Holguín / Revista trimestral / Volumen 22, No.1,  enero-marzo,   2016

Diseño y evaluación de un controlador de posición óptimo para electromecanismo multivariable / Design and evaluation of an optimal position controller for multivariable electromechanism

Henry Bory-Prevez(1), Francisco Chang-Mumañ(2), Jorge Esteban Santos-Toural(3)


Contactos de los Autores

Correo:bory@fie.uo.edu.cu(1), fchang@fie.uo.edu.cu(2), santos@fie.uo.edu.cu(3)

Institución: Universidad de Oriente, Santiago de Cuba

País: Cuba


RESUMEN
En este artículo se presenta el diseño de un controlador óptimo lineal cuadrático (LQR) para un sistema electromecánico multivariable. Se comienza modelando matemáticamente al sistema electromecánico obteniéndose una descripción en el espacio de estado. Luego se chequea la condición de controlabilidad del modelo matemático y se diseña el controlador LQR en el que se incrementa en dos el orden del sistema para incluir acción integral con estructura anti-saturación (anti-windup) por cálculo hacía atrás. Los parámetros de sintonía del controlador LQR, matrices Q y R, se determinan empleando Algoritmo Genético usando como función de ajuste la integral de la suma de los valores absolutos de los errores de seguimiento a referencias en formas de escalón. Finalmente se evalúa vía simulación el desempeño del control diseñado ante cambios en la referencia y la utilidad de la estructura anti-saturación.
PALABRAS CLAVE: CONTROL ÓPTIMO; ALGORITMO GENÉTICO; SISTEMAS MULTIVARIABLES; ELECTROMECANISMOS.

ABSTRACT
This paper presents the design of a quadratic lineal optimal controller (LQR) for a multivariable electromechanic system. It starts by mathematically modeling the electromechanical system and a space estate description is obtained. Next the controllability condition of the mathematical model is checked, and the LQR controller is designed, incrementing by two the system order to add integral action with anti-windup structure for backwards calculation. The LQR controller tuning parameters, Q and R matrixes, were calculated employing Genetic Algorithm using as integral the sum of the absolute values of tracking errors as step references. Finally the performance of the controller designed for changes is evaluated via simulation in the reference and the utility of the anti-saturation structure
KEYWORDS: OPTIMAL CONTROL; GENETIC ALGORITHM; MULTIVARIABLE SYSTEMS; ELECTROMECHANICS.

INTRODUCCIÓN
Los requerimientos cada vez más exigentes impuestos a los sistemas electromecánicos han obligado a considerar la complejidad de éstos, como podría mencionarse la interacción existente entre sus componentes, máquinas eléctricas y cargas, para de esta forma diseñar sistemas de control de seguimiento que sean precisos y rápidos. (Szabat, 2008; Smilgevičius, 2006)
Los sistemas multivariables son sistemas más complejos que los de una entrada una salida (SISO), porque los primeros están sometidos a interacciones entre sus variables, por lo que su diseño presenta un reto. Por las facilidades que presenta la descripción de los sistemas en el espacio de estado será utilizada en este trabajo.
Un método de diseño de control moderno es el controlador o regulador óptimo lineal cuadrático, por sus siglas en inglés LQR, éste presenta las siguientes ventajas: permite diseñar un sistema de control óptimo a partir de un índice de desempeño, se utiliza tanto para sistemas SISO como para sistemas multivariables y se obtiene una matriz de ganancia de realimentación óptima. Como desventaja de este método de diseño está la dificultad de la selección de las matrices Q y R, que son parámetros de sintonía del controlador, para cumplir las exigencias del control. (Chen; Hespanha, 2007; Ogata, 2010)
El algoritmo genético es un método de optimización que posee ventajas atractivas: no necesita del cálculo de la derivada para la determinación del extremo y no se queda atrapada en un extremo local. (MatLab, 2010)
El objetivo de este trabajo es diseñar y evaluar mediante simulación un controlador óptimo LQR mediante algoritmo genético para controlar la posición angular de un sistema electromecánico multivariable usando el MatLab.

MATERIALES Y MÉTODOS

  1. Descripción del Sistema Electromecánico

El sistema electromecánico multivariable al cual se le diseñará un controlador LQR es el mostrado en la Fig. 1.
1
Fig. 1. Esquema del sistema electromecánico.

El accionamiento que se muestra en la Fig. 1 está compuesto por dos motores de CD de excitación separada, denominados m1 y m2. El motor m1 tiene el lado izquierdo de su eje unido a un resorte de constante elástica K1= 1.0 Nm/rad, y su lado derecho está acoplado mediante una barra rígida a un cilindro macizo de momento de inercia J1= 0.6 kgm2. El motor m2 tiene el lado derecho de su eje unido a un resorte de constante elástica K2= 2.5 Nm/rad, y su lado izquierdo está acoplado mediante una barra rígida a un cilindro macizo de momento de inercia J2= 1.5 kgm2. Ambos cilindros se acoplan entre sí a través de un amortiguador viscoso de coeficiente viscoso fv= 5.0 Nms/rad. El extremo izquierdo del resorte K1 y el derecho del resorte K2 están unidos a las paredes rígidas P1 y P2 respectivamente. Los arcos discontinuos con flechas indican el sentido positivo de referencia para las posiciones angulares y los pares o torques.

Los datos y parámetros de m1 son: voltaje nominal en los terminales Vtn1= 120 V, corriente nominal de armadura Ian1= 10 A, velocidad nominal wn1= 126 rad/s, potencia nominal Pn1= 1.10 kW, resistencia de armadura Ra1= 0.5 Ω y momento de inercia Jm1= 0.4 kgm2.

Los datos y parámetros de m2 son: voltaje nominal en los terminales Vtn2= 120 V, corriente nominal de armadura Ian2= 15 A, velocidad nominal wn2= 168 rad/s, potencia nominal Pn2= 1.65 kW, resistencia de armadura Ra2= 0.333 Ω y momento de inercia Jm2= 0.5 kgm2.
Para caracterizar completamente a m1 y m2, se calcula cada 2 empleando las siguientes ecuaciones. (Costa, 1989)
3               (1)
4                 (2)
Estos motores son alimentados a través de amplificadores de ganancias Kc1= Kc2= 13. El voltaje de entrada de cada uno de estos convertidores es u1(t) y u2(t), en volt, respectivamente con valor máximo de 10 V y son las entradas al sistema.
Las variables a controlar del sistema son la posición angular del eje de cada motor.

  1. Modelación Matemática y Modelo en el Espacio de Estado

Para modelar matemáticamente al sistema electromecánico se hacen las consideraciones siguientes: el acoplamiento entre el rotor de cada motor y su respectivo cilindro es rígido, lo que permite tratarlos como un único cuerpo; las inductancias de armadura de m1 y m2 son despreciables; los resortes K1 y K2 son lineales y la fricción viscosa es proporcional a la velocidad.
A continuación se determinan las ecuaciones mecánicas de las máquinas, aplicando la segunda Ley de Newton del movimiento rotacional. (Costa, 1989)
5                          (3)

6                         (4)
donde:
7 momento de inercia total en m1.
8 momento de inercia total en m2.
9, 10 posiciones angulares de m1 y m2, rad.
11, 12 velocidades angulares de m1 y m2, rad/s.
13, 14 aceleraciones angulares de m1 y m2, rad/s2.
15, 16 pares electromagnéticos desarrollados por m1 y m2, Nm.
El resto de los parámetros ya han sido definidos.
Las ecuaciones eléctricas de m1 y m2 se obtienen aplicando la Ley de Kirchhoff de los voltajes a sus armaduras. (Costa, 1989)
17                                                  (5)
18                                                  (6)
donde:
19, 20 voltajes instantáneos aplicados en los terminales de armadura de m1 y m2, V.
21, 22 corrientes de armadura de m1 y m2, A.
23, 24velocidades angulares de m1 y m2, rad/s.
La relación, según (Costa, 1989), entre la corriente de armadura y el par electromagnético en cada motor es:
25                                                           (7)
26                                                            (8)
Despejando 27en la ec. (5), sustituyéndola en la ec. (7) y luego sustituyendo la ecuación resultante en ec. (3), se obtiene.
28           (9)
Relacionando el voltaje Vt1(t) con el voltaje de entrada del amplificador, u1(t), dividiendo la ec. (9) por JT1 y organizando los términos se tiene.
29     (10)
Siguiendo un procedimiento similar para m2 se obtiene:
30      (11)
Las ecs. (10) y (11) demuestran que están acopladas, acoplamiento debido al dispositivo de fricción viscosa.
Para describir al accionamiento en el espacio de estado, se definen las variables de estado como: 31, 32, 33 , 34y las salidas como: 35 y 36, con lo cual se obtiene la siguiente ecuación de estado y de salida. (Chen; Hespanha, 2007; Ogata, 2010)
37                                                         (12)

38                                                                    (13)
donde:
394041, T es el operador transpuesta.
42        43,
44

  1. Diseño en el MatLab del Controlador Multivariable LQR mediante algoritmo genético

En esta sección se emplea el MatLab como herramienta para el diseño del controlador LQR multivariable mediante algoritmo genético. (MatLab, 2010)
Introduciendo los parámetros del electromecanismo en MatLab se obtienen los valores numéricos de las matrices de estado, de entrada, salida y de transmisión directa.

A =
 0              1.0000          0             0
-1.0          -6.6660          0             5.0
 0              0                   0             1.0
 0              2.5000        -1.250   -3.2035
B =
     0              0
   23.7302     0
     0              0
     0            13.3611

C =
    1.0000         0             0                  0
    0                  0             1.0000         0
D =
    0             0            
    0             0

A continuación se procede a verificar que la matriz de controlabilidad sea de rango 4, o sea que el sistema sea controlable.
>> rank(ctrb(A,B))
ans = 4  % Esto demuestra que el sistema es controlable.
Demostrado que el sistema es controlable se procede al diseño del controlador para lo cual se amplía el orden del sistema en dos para adicionar dos integradores, xi1 y xi2, del error de seguimiento de cada salida a su respectiva referencia. A este controlador como el valor absoluto máximo de su salida se considera es de 10 V se le adiciona una estructura anti-saturación (anti-windup) por cálculo hacia atrás. Como la ley de control dinámica que se obtendrá para el controlador LQR es definida por la siguiente expresión matemática:
45(14)
Se crea en Simulink el diagrama de bloque del controlador que se muestra en la Fig. 2, en el que el parámetro D del bloque Controlador Continuo contiene las primeras cuatro columnas de la matriz de ganancia de realimentación de estado.


46
Fig. 2 Esquema del controlador LQR multivariable con acción integral y estructura anti-saturación.

En la Fig. 3 se muestra el esquema de simulación del sistema controlado en el que el nombre de cada bloque indica su función. Las salidas del accionamiento, ver Fig. 3, son y1 y y2, visualizadas mediante el bloque Posc, se miden además, la velocidad angular de cada motor y se visualizan con el bloque Vel.

 
47
Fig. 3 Sistema de control a lazo cerrado.

De la Fig. 3 puede observarse el puerto de salida Out1, el cual permite exportar el valor de la integral de la suma de los valores absolutos de los errores, (IAE), de seguimiento a cada referencia, esta será la función de ajuste, Fitness del inglés, que será minimizada por el algoritmo genético. El bloque Display IAE muestra el valor del índice IAE.
Para emplear el algoritmo genético se necesita una función de MatLab que sirva de interface entre el esquema del Simulink y la ventana de comando, para lo cual se elaboró la función que se presenta a continuación.
function J=indcomplqr(w)
%Función para optimizar índice de costo.
global K
Q=blkdiag(w(1),w(2),w(3),w(4),w(5),w(6))
R=blkdiag(w(7),w(8));
Aa=[0 1 0 0 0 0;-1 -6.6660 0 5 0 0;0 0 0 1 0 0;0 2.5 -1.25 -3.2035 0 0;...
    -1 0 0 0 0 0;0 0 -1 0 0 0];
Ba=[0 0;23.7302 0;0 0;0 13.3611;0 0;0 0];
[K,P,E]=lqr(Aa,Ba,Q,R)
[t,x,y]=sim('ControlLQRmultivariableImple');
J=y(end);
A continuación se ejecutaron las siguientes funciones en la ventana de comando.
>> global K
>> opcion=gaoptimset('PopInitRange',[0;1e+6]);
[X,Fval]=ga(@indcomplqr,8,[],[],[],[],[ones(1,8)],[ones(1,4)*20 inf inf 10 10],[],opcion)
Las cuales arrojaron los siguientes resultados:
Optimization terminated: average change in the fitness value less than options.TolFun.
X = 1 1 1 1 1+6 1+6 1 1, Fval = 1.139
La matriz de ganancia de realimentación es:
 K =  73.4752    2.4215    0.9561    0.2278 -999.8845  -15.1995
        -1.4776    0.1283   86.4840    3.5082   15.1995 -999.8845
Los autovalores del sistema a lazo cerrado son:
E =  -33.0664; -25.2165;  -15.5187 +21.8362i;  -15.5187 -21.8362i
       -12.4426 +19.3659i;  -12.4426 -19.3659i

RESULTADOS DEL TRABAJO
En la Fig. 4 se grafican cada señal de referencia con la correspondiente variable de salida, en ésta se observa que se introducen señales en forma de escalón de amplitud 5 rad en el instante 1 s para Y 1Ref y de amplitud -2 rad en el instante 5 s para Y2Ref. En ambas gráficas se nota que las señales de salidas alcanzan luego de un transitorio su respectiva señal de referencia. El sobrepaso máximo en y1 es del 2.58 % en el instante de 1.3392 s, el tiempo de establecimiento de y1 es de 0.37 s. Para y2 el sobrepaso máximo es del 4.65 % en el instante de 5.281 s, con un tiempo de establecimiento de 0.341 s.

1
Fig. 4 Gráficas de: a) señal de referencia y posición angular medida de m1, b) señal de referencia y posición angular medida de m2.

En la Fig. 5 se muestran las ampliaciones realizadas a las gráficas de la Fig. 4, para observar el efecto de la interacción que existe en el sistema electromecánico.

2
Fig. 5 Ampliación de la señal de referencia y de la posición angular: a) de m1, b) de m2.

En la Fig. 5 a) se aprecia que la variable y1 se desvía de su referencia, esto se debe a que el rotor de m2 gira para seguir el cambio en su referencia y este movimiento se trasmite al rotor de m1 a través del amortiguador viscoso, de modo análogo le sucede al rotor de m2, ver Fig. 5 b), que luego de alcanzar la referencia, se desvía de ésta porque el amortiguador viscoso le trasmite el movimiento que adquiere el rotor de m1 para alcanzar su referencia. De la Fig. 5 se nota que a pesar de la interacción existente en el accionamiento, el controlador LQR multivariable logra que cada salida alcance a su respectiva referencia, como lo demuestra la Fig. 6 en la que se grafican los errores de seguimiento, diferencia entre cada señal de referencia y su respectiva salida.

3
Fig. 6 Gráfica de los errores de seguimiento.

En la Fig 7, se grafican las señales de control. En la Fig. 7 a) se observa que u1 se satura en el instante en que se produce el escalón en la referencia y la duración de esta saturación es de 0.192 s. De forma análoga sucede con u2, ver Fig. 7 b), que se satura al cambiar la referencia Y2Ref, durante 0.102 s. Es importante notar que a pesar de la saturación del controlador multivariable LQR, éste no pierde control sobre la planta debido a la estructura anti-saturación implementada. Para demostrar de forma gráfica la utilidad de la estructura anti-saturación se simulará nuevamente el esquema de la Fig. 2 en la que el único cambio realizado es eliminar la anti-saturación y se grafica la salida del sistema en la Fig. 8. 

4
Fig. 7 Gráficas de: a) señal de control u1, b) señal de control u2.

5
Fig. 8 Gráficas de señal de referencia y de posición angular: a) de m1, b) de m2.

En la Fig. 8 se demuestra mediante las gráficas que al eliminar la estructura anti-saturación el sistema a lazo cerrado se vuelve inestable. Una medida numérica de la importancia de implementar la anti-saturación es dada por el índice IAE, que al eliminar la anti-saturación éste toma el valor de 211.3 para un tiempo de simulación de 10 s. 

 CONCLUSIONES

  1. Se diseña un controlador óptimo LQR multivariable mediante algoritmo genético con acción integral y una estructura anti-saturación.
  2. El controlador obliga a que cada salida siga a su respectiva señal de referencia a pesar de la interacción del sistema electromecánico lográndose tiempo de establecimiento y sobrepasos máximos inferiores a 0.37 s y 4.7 % respectivamente para cambios en la referencia en forma de escalón.
  3. La estructura anti-saturación se utiliza para evitar la inestabilidad del sistema.

BIBLIOGRÁFIA

  1. Smilgevičius, A., Rinkevičienė, R., Savickienė, Z. (2006) Operation of Electric Motor with Elastic Load, 6(70), 15-18.
  2. Chen, Introducción al Control Óptimo. Disponible en: http://www.eng.newcastle.edu.au/~jhb519/teaching/caut2/clases/Cap9.pdf. [consultado 25/5/ 2014]
  3. Hespanha, J. P. (2007). Undergraduate Lecture Notes on LQG/LQR controller design.
  4. Ogata, K. (2010). Ingeniería de Control Moderna. España: Pearson Educación, S.A.
  5. Ayuda del MatLab 7.10. 2010.
  6. Costa, A., Bonne, F. (1989). Principios Fundamentales de Accionamiento Eléctrico. La Habana: Editorial Pueblo y Educación.
  7. González-Segura, F. (2015). Uso de matlab (rtw) para controles de motores de corriente directa [versión electrónica], Ciencias Holguín, 21(1). Disponible en: http://www.ciencias.holguin.cu/index.php/cienciasholguin/article/view/715/587. [consultado 12/4 2015]

 

Síntesis curricular de los Autores

MSc. Ing. Henry Bory-Prevez, bory@fie.uo.edu.cu  Departamento de Control Automático Universidad de Oriente, Santiago de Cuba
DrC. Ing. Francisco Chang-Mumañ, fchang@fie.uo.edu.cu Departamento de Control Automático Universidad de Oriente, Santiago de Cuba,
MSc. Ing. Jorge Esteban Santos-Toural, jsantos@fie.uo.edu.cu Departamento de Telecomunicaciones Universidad de Oriente, Santiago de Cuba

Institución de los autores.
Universidad de Oriente, Santiago de Cuba



Fecha de Recepción: 06 de julio 2015
Fecha de Aprobación: 18 de octubre de 2015
Fecha de Publicación: 29 de enero de 2016

Enlaces refback

  • No hay ningún enlace refback.