0% encontró este documento útil (0 votos)
62 vistas22 páginas

Control Multivariable

Este documento presenta los resultados obtenidos al aplicar controladores basados en linealización por realimentación y observador de estados a un manipulador robótico de dos grados de libertad. El objetivo principal es profundizar los conocimientos sobre sistemas de control moderno aplicados a sistemas multivariables.

Cargado por

Santiago Velez
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
62 vistas22 páginas

Control Multivariable

Este documento presenta los resultados obtenidos al aplicar controladores basados en linealización por realimentación y observador de estados a un manipulador robótico de dos grados de libertad. El objetivo principal es profundizar los conocimientos sobre sistemas de control moderno aplicados a sistemas multivariables.

Cargado por

Santiago Velez
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Universidad de San Buenaventura Control

Facultad de Ingenierı́a Moderno


Programa de Ingenierı́a Mecatrónica 2020-I

Autor:
Fredy Santiago Vélez Delgado Guia de Laboratorio 3
[email protected]
30000033271
Control Multivariable

Contenido
1. Abstrac 2

2. introducción 2

3. Objetivos 2

4. Modelo matemático del manipulador robótico de dos grados de libertad 3


4.1. Planta no lineal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
4.2. Parámetros de la planta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
4.3. Diseño de trayectorias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
4.4. Linealización a lo largo de la trayectoria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
4.5. Requerimientos del sistema: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

5. Diseño del controlador 10


5.1. Matrices de la planta y controlador: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
5.2. Sintonización del controlador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
5.3. Sintonización del observador de estados clásico . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
5.4. Análisis de robustez aplicado a las 100 planta lineales . . . . . . . . . . . . . . . . . . . . . . . 14
5.5. Desempeño del sistema de control aplicado a la planta no lineal: . . . . . . . . . . . . . . . . . 15

6. Controlador basado en linealización por realimentación 16


6.1. Ley de control: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
6.2. Diseño del observado de estados extendido: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
6.3. Resultados obtenidos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
6.4. Desempeño del sistema de control aplicado a la planta no lineal: . . . . . . . . . . . . . . . . . 19
6.5. Diagrama de bloques del Sistema en lazo cerrado . . . . . . . . . . . . . . . . . . . . . . . . . . 20

7. Comparación numérica entre los controladores 21

8. Conclusiones 22

1
Universidad de San Buenaventura Control
Facultad de Ingenierı́a Moderno
Programa de Ingenierı́a Mecatrónica 2020-I

1. Abstrac
Modern control theory has had a huge impact on current automation systems, providing more efficient
products and services in factories and enterprises, as greenhouse automation or automatic production of any
piece of engineering in a CNC, the system who is going to be controlled is composed by 2 link-robot which have
2 DC motor that control the angular position of the 2 links, the purpose is to stabilize the angular position
of the motor (Theta1 and theta2) according to a specific reference. Currently there are also other elements
within the closed-loop system that can benefit the designer to estimate disturbances that affect the system to
reject them or maybe take decisions in order to modify some aspects of the same controller.

2. introducción
En el presente informe de laboratorio se muestran los resultados obtenidos de aplicar un control de posición
por realimentación de estados con observador en base al modelo lineal de la panta a lo largo de la trayectoria a
seguir y control basado en linealización por realimentación; prácticas de laboratorio como la presente ayudan
a los estudiantes de Ingenierı́a que por el momento atraviesan el curso de control moderno a comprender las
bases en las que descansan muchas máquinas que dependen de la precisión para realizar sus tareas.
A continuación, presentamos algunos casos actuales en donde el uso del control moderno abre las puertas a la
innovación de procesos: 1. Invernaderos Robotizados: Actualmente algunos investigadores proponen obtener
una mayor precisión en la recolección de datos y respuesta ante imprevistos de un invernadero a partir de un
robot diferencial que realiza las tareas del lugar Scasso et al. (2012).

2. maquinas CNC: máquinas que poseen controladores de posición y velocidad se utilizan para determinar
el lugar en el que la máquina retira material para crear cualquier pieza que se desee; otra área en donde se ob-
serva el uso del control moderno es en la robótica, actualmente muchas compañı́as de tecnologı́a e investigación
a nivel mundial se encuentran en una carrera por diseñar máquinas que pueda sustituir trabajos en los que la
vida humana puede correr gran riesgo.Ramesh et al. (2005). Se debe tener en cuenta que la planta a controlar
en el presente laboratorio fue basada en el modelo matemático propuesto en el artı́culo “ A switching-based
collaborative fractional order fuzzy logic controller for robotic manipulators” de los autores Richa Sharma,
Shubhendu Bhasin, Prerna Gaur, Deepak Joshi.
Por lo general muchos sistemas fı́sicos son sistemas multivariados, lo que indica que las diferentes entradas
pueden afectar a todas las salidas de la planta y es en estas ocasiones donde el estudio de controladores puede
abrir una puerta a distintos diseños para un mismo sistema MIMO.
Los sistemas de control que se tratarán en el presente informe de laboratorio corresponden a diseños
estudiados para un curso de pregrado sin embargo, se debe tener presente que a la planta no lineal como la
que se desea controlar, pueden existir diversos enfoques de control a diseñar como el control multivariable por
desacoplo.Morilla et al. (2013).

3. Objetivos
Principal:
Profundizar los conocimientos acerca de los sistemas de control moderno aplicados a sistemas multiva-
riables.

Especı́ficos:

2
Universidad de San Buenaventura Control
Facultad de Ingenierı́a Moderno
Programa de Ingenierı́a Mecatrónica 2020-I

verificar y exponer diferencias entre el controlador basado en la linealización por realimentación con
respecto al controlador basado por realimentación de estados con observador clásico.
Desarrollar criterio analı́tico para reconocer en que ocasiones es mejor implementar controladores de
menor orden y robustez.

Figura 1: Esquema del sistema

4. Modelo matemático del manipulador robótico de dos grados de


libertad
4.1. Planta no lineal

El modelo dinámico de la planta no lineal está descrito en la Ecuación 1, y a su vez las subfunciones que
componen la ecuación general del sistema multivariado se encuentran a continuación:

" #" # " # " # " # " #


S11 S12 θ̈11 P11 f r1 f n1p τf1 p
+ + + = (1)
S21 S22 θ̈22 P21 f r2 f n2p τf2p

3
Universidad de San Buenaventura Control
Facultad de Ingenierı́a Moderno
Programa de Ingenierı́a Mecatrónica 2020-I

2 2 2 2 2
S11 = I1p + I2p + m11 lc1 + m22 l11 + m22 lc2 + 2m22 l11 lc2 cos θ22 + mvp l11 + mvp l22 + 2mvp l11 l22 cos θ22
2 2
S12 = I2p + m22 lc2 + m22 l11 lc2 cos (θ22 ) + mvp l22 + mvp l11 l22 cos (θ22 )
S21 = S12
2 2
S22 = I2p + m22 lc2
+ mvp l22   
P11 = −m22 l11 lc2 2θ̇11 + θ̇22 θ̇22 sin θ22 − mvp l11 l22 2θ̇11 + θ̇22 θ̇22 sin θ22
2 2
P21 = m22 l11 θ̇11 lc2 sin θ22 + mvp l11 θ̇11 l22 sin θ22
f r1 = b1vp θ̇11
f r2 = b2vp θ̇22
f n1p = m11 lc1 g cos (θ11 ) + m22 g (lc2 cos (θ11 + θ22 ) + l11 cos (θ11 )) + mvp g (l22 cos (θ11 + θ22 ) + l11 cos (θ11 ))
f n2p = m22 lc2 g cos (θ11 + θ22 ) + mvp lc2 g cos (θ11 + θ22 )
(2)

4.2. Parámetros de la planta

m11 = 0.3262612
lc1 = 0.0859767
l11 = 0.2057032
I1p = 0.0012685
b1vp = 0.1657493
mvp = 0.4473392
m22 = 0.0970019
lc2 = 0.0807866
l22 = 0.1226456
I2p = 0.0018928
b2vp = 0.3053673
g = 9.81

4.3. Diseño de trayectorias


Para la siguiente sección se desea diseñar una trayectoria suave con el objetivo de que sus derivadas no
cambien de forma brusca; para ello se utilizó el siguiente polinomio de tercer orden Ecuación 3 tanto para el
ascenso como para el descenso; en secciones posteriores se detallará el diagrama de bloques que se construyó
para obtener la trayectoria deseada; se recalca que tanto el ascenso como el descenso dura 3 seg cada uno.

th(t) = a3 ∗ t3 + a2 ∗ t2 + a1 ∗ t + a0 (3)

a0 = th(0)

4
Universidad de San Buenaventura Control
Facultad de Ingenierı́a Moderno
Programa de Ingenierı́a Mecatrónica 2020-I

a1 = 0
3
a2 = ∗ (th(3) − th(0))
t2f
2
a3 = ∗ (th(3) − th(0))
t3f

El ascenso de la trayectoria de TH11 y TH22 es igual y se constituyen de los siguientes coeficientes:

a0 = 0

a1 = 0
a2 = 30
a3 = −6.6667
El descenso de la trayectoria de TH11 se constituyen de los siguientes coeficientes:

a0 = 90

a1 = 0
a2 = −45
a3 = 10
El descenso de la trayectoria de TH22 se constituyen de los siguientes coeficientes:

a0 = 90

a1 = 0
a2 = −30
a3 = 6.6667
Al construir el diagrama de bloques que generará la trayectoria en SIMULINK se obtiene la Figura 2 y su
respuesta es la Figura 3:

th11
Ref (th1)

Ref(th2)
th22

Figura 2: Bloques de trayectorias TH11 y TH22

5
Universidad de San Buenaventura Control
Facultad de Ingenierı́a Moderno
Programa de Ingenierı́a Mecatrónica 2020-I

Figura 3: Trayectorias de TH11 y TH22

4.4. Linealización a lo largo de la trayectoria


Ya que la trayectoria de cada eslabón del manipulador robótico fue especificada previamente, a partir de
estas se realizarán 100 modelos lineales que describan la planta no lineal según sean los puntos de operación
que se seleccione, para ello se hará un mapeo de cada trayectoria y sus derivadas para obtener los 100 puntos
de cada variable de la Ecuación 1; siendo estas posición, velocidad, aceleración y señal de control de cada
eslabón; para ello se utilizará el jacobiano, todo el proceso se realizó en base al siguiente algoritmo de Matlab.

1 % x1 == th11 ; x2 == th11(*) ; x3 == th22


2 % x4 == th22(*) ; x5 == th11(**) ; x6 == th22(**)
3
4 syms x1 x2 x3 x4 x5 x6 U1 U2
5
6 s 11 = I1p + I2p + (m11*Lc1ˆ2) + (m22*L11ˆ2) + (m22*Lc2ˆ2) + (2*m22*L11*Lc2*cos(x3)) + ...
(mvp*L11ˆ2) + (mvp*L22ˆ2) + (2*mvp*L11*L22*cos(x3));
7 s 12 = I2p + (m22*Lc2ˆ2) + (m22*L11*Lc2*cos(x3)) + (mvp*L22ˆ2) + (mvp*L11*L22*cos(x3));
8 s 21 = s 12;
9 s 22 = I2p + (m22*Lc2ˆ2) + (mvp*L22ˆ2);
10 P 11 = - (m22*L11*Lc2*(2*x2 + x4)*x4*sin(x3)) - (mvp*L11*L22*(2*x2 + x4)*x4*sin(x3));
11 P 21 = (m22*L11*x2ˆ2*Lc2*sin(x3)) + (mvp*L11*x2ˆ2*L22*sin(x3));
12 f r1 = b1vp*x2;
13 f r2 = b2vp*x4;
14 f n1p = (m11*Lc1*g*cos(x1)) + (m22*g*(Lc2*cos(x1+x3) + L11*cos(x1))) + ...
(mvp*g*(L22*cos(x1+x3) + L11*cos(x1)));
15 f n2p = (m22*Lc2*g*cos(x1 + x3)) + (mvp*Lc2*g*cos(x1 + x3));
16
17 S t = [s 11 s 12;s 21 s 22];
18 P a = [P 11;P 21];
19 f ra = [f r1;f r2];
20 f na = [f n1p;f n2p];
21 U a = [U1;U2];
22 inversa = inv(S t);
23 matriz doble = inversa*(U a - P a - f ra - f na);

6
Universidad de San Buenaventura Control
Facultad de Ingenierı́a Moderno
Programa de Ingenierı́a Mecatrónica 2020-I

24
25 F1 = x2;
26 F2 = matriz doble(1);
27 F3 = x4;
28 F4 = matriz doble(2);
29
30 %% % % % % %JACOBIANO EN TERMINOS DE LAS VARIABLES % % % % % %
31 %columna #1
32 derivA(1,1) = diff(F1,x1);
33 derivA(2,1) = diff(F2,x1);
34 derivA(3,1) = diff(F3,x1);
35 derivA(4,1) = diff(F4,x1);
36 %columna #2
37 derivA(1,2) = diff(F1,x2);
38 derivA(2,2) = diff(F2,x2);
39 derivA(3,2) = diff(F3,x2);
40 derivA(4,2) = diff(F4,x2);
41 %columna #3
42 derivA(1,3) = diff(F1,x3);
43 derivA(2,3) = diff(F2,x3);
44 derivA(3,3) = diff(F3,x3);
45 derivA(4,3) = diff(F4,x3);
46 %columna #4
47 derivA(1,4) = diff(F1,x4);
48 derivA(2,4) = diff(F2,x4);
49 derivA(3,4) = diff(F3,x4);
50 derivA(4,4) = diff(F4,x4);
51
52 %% % % % % %JACOBIANO EN TERMINOS DE LAS ENTRADAS % % % % % %
53 %columna #1
54 derivB(1,1) = diff(F1,U1);
55 derivB(2,1) = diff(F2,U1);
56 derivB(3,1) = diff(F3,U1);
57 derivB(4,1) = diff(F4,U1);
58 %columna #2
59 derivB(1,2) = diff(F1,U2);
60 derivB(2,2) = diff(F2,U2);
61 derivB(3,2) = diff(F3,U2);
62 derivB(4,2) = diff(F4,U2);
63
64 %jacobiano
65 jacA = derivA;
66 jacB = derivB;
67 %%
68 %% % % % % % % % % % % % % % % %EVALUACION
%%% DE LOS PUNTOS DE OPERACION % % % % % % % % % % % %
69 %TRAYECTORIAS
70 %Simulaciones a partir diagramas de bloques
71 puntos th1 = out.R th1; %Posicion th11
72 puntos th1 d = out.R th1 d; %Velocidad th11
73 puntos th1 dd = out.R th1 dd; %Aceleracion th11
74
75 puntos th2 = out.R th2; %Posicion th22
76 puntos th2 d = out.R th2 d; %Velocidad th22
77 puntos th2 dd = out.R th2 dd; %Aceleracion th22
78
79 U 11 = s 11 *x5 + s 12 *x6 + P 11 + f r1 + f n1p;
80 U 22 = s 21 *x5 + s 22 *x6 + P 21 + f r2 + f n2p;
81
82
83

7
Universidad de San Buenaventura Control
Facultad de Ingenierı́a Moderno
Programa de Ingenierı́a Mecatrónica 2020-I

84 for i=1 : 100


85 x1 = puntos th1(i);
86 x2 = puntos th1 d(i);
87 x3 = puntos th2(i);
88 x4 = puntos th2 d(i);
89 x5 = puntos th1 dd(i);
90 x6 = puntos th2 dd(i);
91
92 punto U1(i) = eval(U 11);
93 punto U2(i) = eval(U 22);
94 end
95 %%
96
97 for i=1 : 100
98 %puntos de operacion:
99 x1 = puntos th1(i);
100 x2 = puntos th1 d(i);
101 x3 = puntos th2(i);
102 x4 = puntos th2 d(i);
103 U1 = punto U1(i);
104 U2 = punto U2(i);
105 A p = eval(jacA);
106 B p = eval(jacB);
107 C p = [1 0 0 0];
108 D p = [0 0];
109 sys = ss(A p,B p,C p,D p);
110 %figure(1)
111 %bode(sys)
112 %grid on
113 %hold on
114 i % iteracion actual
115 end

A continuación, se exponen los resultados obtenido al graficar 100 diagramas de bode que nos brindará
posteriormente información gráfica sobre cuál es la planta óptima por seleccionar que pueda aproximar la
dinámica completa del sistema no lineal a lo largo de la trayectoria.

Bode Diagram
From: In(1) From: In(2)
100

0
To: Out(1)
Magnitude (dB) ; Phase (deg)

-100

-200
360

180
To: Out(1)

-180

-360
10-5 100 10-5 100
Frequency (rad/s)

Figura 4: Diagramas de bodes de TH11 a partir de U1 y U2

8
Universidad de San Buenaventura Control
Facultad de Ingenierı́a Moderno
Programa de Ingenierı́a Mecatrónica 2020-I

En la Figura 4 se puede observar que existe una zona en donde existe más concentración de los diagramas
de bode, por lo que se decidió seleccionar la planta 60 para realizar las pruebas de diseño y construcción del
controlador y observador de estados clásico para satisfacer los requerimientos de diseño.

Bode Diagram
From: In(1) From: In(2)
100

To: Out(1)
Magnitude (dB) ; Phase (deg) 0

-100

-200
540

360
To: Out(1)

180

-180
100 100
Frequency (rad/s)

Figura 5: Diagramas de bodes de TH22 a partir de U1 y U2

4.5. Requerimientos del sistema:


Los requerimientos que se deben satisfacer para el presente Laboratorio son:
Error de posición cero.
Rechazo de perturbaciones tipo paso.
Dinámica de lazo cerrado con tiempo de estabilización y sobre nivel porcentual adecuados para seguir lo
más cerca posible la trayectoria deseada.
A causa de que tanto el ascenso como el descenso de los eslabones dura 3 seg cada uno, se estableció
un tiempo de estabilización de aproximadamente 0.97 seg, esto a partir de los siguientes polos deseados:
(s+7)(s+14)(s+15)(s+16)(s+17)(s+18); cabe recalcar que se seleccionan 6 polos deseados porque la planta
posee 4 estados y ya que es un sistema multivariable de dos eslabones se requiere una integral por cada uno.

Las matrices resultantes de la planta seleccionada son las siguientes:


 
0 1 0 0
 52.0894 −7.7019 0.7787 13.0573 
Ap =  (4)
 

 0 0 0 1 
−45.3832 11.5212 16.1326 −49.0127
 
0 0
 38.1128 −46.7513
Bp =  (5)
 

 0 0 
−46.7513 165.4007

9
Universidad de San Buenaventura Control
Facultad de Ingenierı́a Moderno
Programa de Ingenierı́a Mecatrónica 2020-I

!
1 0 0 0
Cp = (6)
0 0 1 0
!
0 0
Dp = (7)
0 0

5. Diseño del controlador


5.1. Matrices de la planta y controlador:
Para la construcción del controlador se debe seguir la estructura de diseño por realimentación de estados
asumiendo que todos los estados de la planta son medibles; partiendo desde los parámetros que se deben
satisfacer por el controlador, ya especificados los polos del sistema y la cantidad de integrales necesarias para
satisfacer el error cero ante entrada paso y rechazo de perturbaciones tipo paso, se plantea el controlador en
espacio de estados.

Xc(s) 1
= (8)
e(s) s
Aplicando la transformada inversa de Laplace se obtiene:

˙ = e(t)
Xc(t) (9)

˙ = r(t) − Cp ∗ X(t)
Xc(t) (10)
las matrices del controlador son las siguientes
 
Ac = 0 (11)

 
Bc = 1 (12)
 
Cc = 1 (13)
 
Dc = 0 (14)

5.2. Sintonización del controlador


Con el objetivo de sintonizar las ganancias del controlador e inyectar la ley de control(lazo cerrado) se
procede a construir el sistema aumentado que contiene los estados de la planta y del control.

Xac˙ (t) = Aac ∗ Xac (t) + Bac ∗ U (t) + B1ac ∗ d(t) + Fac ∗ r(t) (15)
!
X(t)
Xac (t) = (16)
Xc (t)

10
Universidad de San Buenaventura Control
Facultad de Ingenierı́a Moderno
Programa de Ingenierı́a Mecatrónica 2020-I

!
Ap 0
Aac =
−Cp 0
!
Bp
Bac =
0
!
Bd
B1ac =
0
!
0
Fac =
1
 
Cac = Cp 0
!
0 0
Dp =
0 0
La ley de control planteada se puede observar en la Ecuación 17 y es la que se inyectará en el sistema aumentado
para encontrar las ganancias de realimentación del controlador.

U (t) = −K ∗ X(t) + Kc ∗ Xc (t)


 
U (t) = − K −Kc ∗ Xac (t) = −Ka ∗ Xac(t) (17)

1 % Construccion del controlador


2
3 polos=[-7 -14 -15 -16 -17 -18];
4
5 A = A p;
6 B = B p;
7 C = [1 0 0 0;0 0 1 0];
8
9 % sist. Aumentado
10 Aa = [A(1,1) A(1,2) A(1,3) A(1,4) 0 0; %X1
11 A(2,1) A(2,2) A(2,3) A(2,4) 0 0; %X2
12 A(3,1) A(3,2) A(3,3) A(3,4) 0 0; %X3
13 A(4,1) A(4,2) A(4,3) A(4,4) 0 0; %X4
14 -C(1,1) -C(1,2) -C(1,3) -C(1,4) 0 0; %XC1
15 -C(2,1) -C(2,2) -C(2,3) -C(2,4) 0 0]; %Xc2
16
17 Ba = [B(1,1) B(1,2);B(2,1) B(2,2);B(3,1) B(3,2);B(4,1) B(4,2);0 0;0 0];
18
19 %Constantes para sintonizar el controlador
20 K = place(Aa,Ba,[polos(1) polos(2) polos(3) polos(4) polos(5) polos(6)]);

El resultado obtenido de utilizar el comando PLACE en Matlab es la siguiente matriz 6x2; en donde la
primera fila corresponde a las ganancias del controlador 1 para construir la señal de control 1 y la segunda fila
corresponde a las ganancias del controlador 2 que construye la señal de control 2.

11
Universidad de San Buenaventura Control
Facultad de Ingenierı́a Moderno
Programa de Ingenierı́a Mecatrónica 2020-I

!
28.04007 1.615919 13.004500 0.641913 −128.67136 −77.98392
Kac =
8.52116 0.55387 7.55364 0.14874 −43.2264 −39.78045

5.3. Sintonización del observador de estados clásico


En la siguiente subsección se desarrollará el observador que estima los estados de la planta no medidos
como lo son la velocidad angular de th11 y th22, para posteriormente realimentarlos y completar el diseño del
controlador; se debe tener en cuenta que la dinámica del observador debe ser más rápida que la dinámica del
sistema en lazo cerrado. Para el diseño del observador de estados clásico se empleó una dinámica de seguimiento
que posea cero sobre paso y tiempo de estabilización de 0.18 seg (5 veces más rápido), los polos deseados del
observador son: (s+49)(s+50)(s+51)(s+52).

La estructura del observador es la siguiente:


˙
X̂(t) = Ap ∗ X̂(t) + Bp ∗ U (t) + Bd ∗ d(t) + L(Y (t) − Ŷ (t)) (18)

Ŷ (t) = Cp ∗ X̂(t) (19)

˙
X̂(t) = (Ap − L ∗ Cp ) ∗ X̂(t) + Bp ∗ U (k) + L ∗ Y (k) (20)
!
1 0 0 0
Cp = (21)
0 0 1 0
 
L1 L2
L3 L4
L= (22)
 

L5 L6
L7 L8
 
93.76974682 7.41308597
2051.569730 332.34205 
L= (23)
 

11.38206545 51.515653 
469.9976495 102.55896
Para calcular las variables de la matriz L Ecuación 23 se utilizó el mismo código en MATLAB sin embargo,
se deben transponer las matrices Ap y Cp para continuar con la misma estructura del programa.

1 %construccion del observador


2 %matricies de la planta real
3 A = A p;
4 B = B p;
5 C = [1 0 0 0;0 0 1 0];
6 D = [0 0;0 0];
7
8 %polos deseados
9 polos3=[-49 -50 -51 -52];
10

12
Universidad de San Buenaventura Control
Facultad de Ingenierı́a Moderno
Programa de Ingenierı́a Mecatrónica 2020-I

11 L=place(A',C',[polos3(1) polos3(2) polos3(3) polos3(4)])';


12
13 %matrices del observador
14
15 Aobs=(A - L*C);
16 Bobs=[B L];
17 Cobs=[0 1 0 0;0 0 0 1];
18 Dobs=[0 0 0 0;0 0 0 0];

Luego de encontrar los valores de la matriz L se construye el observador en espacio de estados como se observa
en la Ecuación 20 y el diagrama de bloques que constituye todo el sistema compuesto por control y observador
se demuestra en la Figura 6:

[TH11]

[TH11_d]
[TH11]

[TH_22]

[TH_22_d]
[Ref_1]

Ref (th1) [Ref_1]


th11
[U_1]
th11 [TH11]
U1
th11_d

th22 [TH_22]
U2
th22_d
Ref(th2) [Ref_2]
[U_2] Manipulador robótico
[Ref_2]

[U_1]
[TH11]

[U_2]
[TH11_d] [TH11_d]
[TH_22]
[TH11]
[TH_22]
[TH_22_d]

[TH_22]
[TH_22_d]

Figura 6: Diagrama de bloques del sistema completo

A continuación, se evidencia la respuesta obtenida con el controlador y observador diseñado anteriormente


Figura 7 y Figura 8; se puede observar que todos los requerimientos de diseño fueron exitosamente satisfechos,
ya que como se observa en ambos gráficos el sistema tiene error cero ante entrada paso, su tiempo de estabili-
zación es de 0.97 seg aproximadamente y rechaza perturbaciones tipo paso como se observa en ambas figuras
a los 3.5 seg.

13
Universidad de San Buenaventura Control
Facultad de Ingenierı́a Moderno
Programa de Ingenierı́a Mecatrónica 2020-I

Posición del eslabón 1 vs ref 1


TH11 (ref)
1.5 TH11 (salida)

Posición (rad) 1

0.5

-0.5

-1
0 2 4 6 8 10
Tiempo(seg)

Figura 7: Respuesta de la trayectoria del eslabón 1

Posición del eslabón 2 vs ref 2

TH22 (salida)
TH22 (ref)
1.5
Posición (rad)

0.5

0 2 4 6 8 10
Tiempo (seg)

Figura 8: Respuesta de la trayectoria del eslabón 2

5.4. Análisis de robustez aplicado a las 100 planta lineales


Otro punto de vista para verificar de forma teórica el funcionamiento del control sobre el sistema no lineal
es analizar la robustez al verificar los márgenes de fase y ganancia del sistema en lazo cerrado; para ello se
obtendrá el diagrama de bode de ambas salidas a partir de la planta lineal seleccionada.

En la Figura 9 el margen de fase es de 72.2 grados y su margen de ganancia es de 20.2 dB.

14
Universidad de San Buenaventura Control
Facultad de Ingenierı́a Moderno
Programa de Ingenierı́a Mecatrónica 2020-I

Bode Diagram

Magnitude (dB)
De Ref 1 hasta th1

-50

-100

Phase (deg) -90

-135

-180

-225

-270
100 101 102 103
Frequency (rad/s)

Figura 9: Margenes de fase y ganancia desde e1 a th1

En la Figura 10 el margen de fase es de 72.2 grados y su margen de ganancia es de 20.2 dB.

Bode Diagram

0
Magnitude (dB)

De Ref 2 hasta th2

-50

-100

-90
Phase (deg)

-135

-180

-225

-270
100 101 102 103
Frequency (rad/s)

Figura 10: Margenes de fase y ganancia desde e2 a th2

Si se evalúa el diagrama de bode obtenido en la Figura 4 y Figura 5, se puede concluir que los márgenes de
fase y ganancia previamente mencionados logran tolerar las variaciones dinámicas de la planta no lineal que
surgen debido a la trayectoria que se desea seguir y como se mencionó en secciones pasadas se optar por el
modelo dinámico del medio para que el controlador pueda surtir efecto sobre los 100 puntos de operación.

5.5. Desempeño del sistema de control aplicado a la planta no lineal:


en la Tabla 3 se detalla los ı́ndices de desempeño del seguimiento y en la Tabla 4 se exponen los ı́ndices de
desempeño a la señal de control.

15
Universidad de San Buenaventura Control
Facultad de Ingenierı́a Moderno
Programa de Ingenierı́a Mecatrónica 2020-I

e. pos1 e. vel1 e. ace1 e. jerk1 e. pos2 e. vel2 e. ace2 e. jerk2

e2 (t)dt 9.8543*104 3.5117*104


R
0.1524 27.34 36.656 0.0485 5.8258 6.5698

t.e2 (t)dt 4.9629*105 1.9764*105


R
0.5667 28.528 34.58 0.1392 18.2121 11.7787

máx |x|, ( %) 1.561 3.1245 17.56 318.7 1.5654 2.22 6.588 318.7

Tabla 1: Resultados de desempeño del control multivariado por realimentación de estados

U1 U2

u2 (t)dt
R
11.0402 0.9346

t.u2 (t)dt
R
27.9737 2.2303

máx |x|, ( %) 2.906 0.7555

Tabla 2: Resultados de desempeño de la señal de control multivariable

6. Controlador basado en linealización por realimentación


En esta sección se diseñó un controlador basado en linealización por realimentación en donde se sintonizaron
las ganancias K1 y K0 de cada eslabón de acuerdo con un tiempo de estabilización deseado.
se debe recortar que para realizar un controlador por este método se debe llegar a una estructura estándar
como se describe en la Ecuación 25:
¨
θ̂(t) = ξ + U (24)
Sin embargo, ya que todo el sistema es multivariado y su dinámica completa está representada por 2
ecuaciones principales Ecuación 1, el procedimiento para obtener el modelo de la Ecuación 25 es el siguiente.
" # " # " #−1 " #
θ̈11 (t) ξ1 S11 S12 U1
=− + ∗ (25)
θ̈22 (t) ξ2 S21 S22 U2
En donde el vector de perturbación está compuesto por:
" # " #−1 " " # " # " # #
ξ1 S11 S12 P11 f r1 f n1p
= ∗ + +
ξ2 S21 S22 P21 f r2 f n2p
Con el objetivo de eliminar la matriz que acompaña el vector de señales de control (U) se pre multiplicará
por la inversa de la misma matriz, obteniendo la ley de control que a su vez está acompañada de errores de
seguimientos y sus constantes correspondientes.

16
Universidad de San Buenaventura Control
Facultad de Ingenierı́a Moderno
Programa de Ingenierı́a Mecatrónica 2020-I

6.1. Ley de control:


Al cancelar los términos previamente mencionados y añadir las constantes y errores se obtiene la Ecua-
ción 26:
" # " # " " # " # " # " # #
U1 S11 S12 ξˆ1 r̈1 θ̇11 − ṙ11 θ11 − r11
= ∗ + − ∗ K1 − ∗ K0 (26)
U2 S21 S22 ξˆ2 r̈2 θ̇22 − ṙ22 θ22 − r22
Al inyectar la ley de control en la Ecuación 25, el resultado es la Ecuación 27:
" # " # " # " # " # " # " #
θ̈11 (t) r̈1 θ̇11 − ṙ11 θ11 − r11 ξ1 ξˆ1 0
− + ∗ K1 + ∗ K0 + − ˆ = (27)
θ̈22 (t) r̈2 θ̇22 − ṙ22 θ22 − r22 ξ2 ξ2 0
definiendo el error1 como theta menos la referencia y el error2 como la salida menos la salida estimada, se
obtiene que:

ˆ
e¨1 (t) + K1 ∗ e˙1 (t) + K0 ∗ e1 (t) = K1 ∗ e˙2 (t) + (ξ − ξ)
Para encontrar el valor de las constantes K1 y K0 se asume que los términos del lado izquierdo de la ecuación
anterior son igual a cero con el fin de igualar su valor a un polinomio de segundo orden deseado y ubicar los
polos deseados (s+10)(s+50) para satisfacer el tiempo de estabilización.

(S 2 + K1 ∗ S + K0 ) ∗ e1 (t) = 0
K1 = 60
K0 = 500

6.2. Diseño del observado de estados extendido:


Ya que algunos de los términos que aparecen en la ley de control no son medidos(vel. th11, vel th22, zhita1
y zhita2), se diseñará un observador que estime todas las variables no medidas.

x1(t) = θ11 (t)

x2(t) = θ11˙(t)
x3(t) = θ22 (t)
x4(t) = θ22˙(t)
x5(t) = ξ1 (t)
x6(t) = ξ2 (t)

 
0 1 0 0 0 0
0 0 0 0 1 0
 
 
0 0 0 1 0 0
Aaumentada =
0
 (28)
 0 0 0 0 1
0 0 0 0 0 0
 

0 0 0 0 0 0

17
Universidad de San Buenaventura Control
Facultad de Ingenierı́a Moderno
Programa de Ingenierı́a Mecatrónica 2020-I

 
0 0
1 1
 
 
0 0
Baumentada =
1
 (29)
 1

0 0
 

0 0
!
1 0 0 0 0 0
Caumentada = (30)
0 0 1 0 0 0

El cálculo de los valores de la matriz L se desarrollaron bajo el mismo principio aplicado en secciones anteriores;
los polos seleccionados para sintonizar el observador extendido son (s+40)(s+50)(s+55)(s+60)(s+65)(s+70).
 
0.0028 −0.0003
 0.2565 −0.0533
 
 
5 −0.0003 0.0029 

L = 10 ∗  
−0.0549 0.2708 

 7.7451 −2.7430
 

−2.8283 8.4820
ya que el objetivo del observador de estados extendidos es estimar las variables no medidas de la ley de control
la matriz C es:  
0 1 0 0 0 0
0 0 0 1 0 0
Cobs extendido =  (31)
 

0 0 0 0 1 0
0 0 0 0 0 1

6.3. Resultados obtenidos


en la Figura 11 y Figura 15 se puede apreciar la respuesta del sistema cuando se implementa el control
anteriormente diseñado.

Algunos aspectos se pueden tener en cuenta, al momento de detallar las respuestas, como el seguimiento
que posee en toda su trayectoria con un error constante causado por que el observador solamente se le incluyó
un aniquilador de primer orden por el motivo de que al intentar diseñar un observador más robusto comandos
como el PLACE de MATLAB ya no eran posibles utilizarlos.

18
Universidad de San Buenaventura Control
Facultad de Ingenierı́a Moderno
Programa de Ingenierı́a Mecatrónica 2020-I

Seguimiento de la trayectoria del eslabón 1

Salida de Th11
1.5 Referencia Th11

Posición (rad)
0.5

-0.5

-1

0 1 2 3 4 5 6

Offset=0
Tiempo (seg)

Figura 11: Salida del eslabón 1 respecto a su trayectoria

Seguimiento de la trayectoria del eslabón 2


Salida de Th22
Referencia Th22
1.5
Posición (rad)

0.5

0 1 2 3 4 5 6
Offset=0
Tiempo (seg)

Figura 12: Salida del eslabón 2 respecto a su trayectoria

6.4. Desempeño del sistema de control aplicado a la planta no lineal:


en la Tabla 3 se detalla los ı́ndices de desempeño del seguimiento y en la Tabla 4 se exponen los indices de
desempeño a la señal de control.

e. pos1 e. vel1 e. ace1 e. jerk1 e. pos2 e. vel2 e. ace2 e. jerk2

e2 (t)dt 4.2955*1025 1.0315*1025


R
0.0557 0.1291 29.3636 0.1407 0.0489 4.3201

t.e2 (t)dt 1.9764*1026 6.1663*1025


R
0.1972 0.1088 4.6494 0.5921 0.0952 16.043

máx |x|, ( %) 1.5822 1.297 32.3 7.56*1011 1.6428 0.7387 28.785 1.122*1012

Tabla 3: Resultados de desempeño del control multivariado basado en linealizacion por realimentación

19
Universidad de San Buenaventura Control
Facultad de Ingenierı́a Moderno
Programa de Ingenierı́a Mecatrónica 2020-I

U1 U2

u2 (t)dt
R
11.0155 1.0386

t.u2 (t)dt
R
26.3791 2.2049

máx |x|, ( %) 4.39 1.45

Tabla 4: Resultados de desempeño la señal de control basada en linealizacion por realimentación

6.5. Diagrama de bloques del Sistema en lazo cerrado


En la Figura 13 se detalla la secuencia e implementación realizada sobre la planta no lineal.

[th11_d_r] [th11]

[th11_d] [th11__r]

[zhita1] [th11__r]
[th22]

[th11_dd_r]
[th11] [th22__r]
Ref (th1) [th11__r]
th11

Ref (th1)d [th11_d_r] [U1_s]


th11_d th11 [th11]
U1
Ref (th1)dd [th11_dd_r] [th22] th222
th11_dd U_11 th11_d
U111
th22 [th22]
U_22
U222
Ref(th2) [th22__r] U2
th22 th22_d
[U2_s]
Ref (th2)d [th22_d_r] Manipulador robótico
th22_d
[th11_d] [U1_s]
Ref (th2)dd [th22_dd_r]
th22_dd [th22_dd_r] [th22]
[th22_d] [U2_s]
[zhita2]
[th22__r]
[zhita1] [th11]
[th22_d]
[zhita2]
[th22]
[th22_d_r]

Figura 13: Diagrama de bloques del Control basado en linealización por realimentación

20
Universidad de San Buenaventura Control
Facultad de Ingenierı́a Moderno
Programa de Ingenierı́a Mecatrónica 2020-I

7. Comparación numérica entre los controladores


Para dar una breve introducción sobre la comparación de ambos controladores, primero se debe mencionar
que aunque la planta a controlar en ambos casos sigue lo más de cerca a la referencia, siempre se presentaron
errores de seguimiento causados por el orden del controlador diseñado.
Al analizar las tablas de los ı́ndices de desempeño para ambos controladores se logra apreciar que el controlador
basado en linealización por realimentación conserva un mejor desempeño hasta las aceleración sin embargo, en
el jerk el valor tanto del ISE como el ITSE aumentan hasta llegar a 10 elevado a la (25 o 26), a su vez también
conociendo la trayectoria que debe seguir cada eslabón se concluye que el controlador 2 logra obtener cambios
(derivadas) más controladas hasta las aceleración, pero su jerk al igual que en los ı́ndices tiene valores muy
altos a comparación del controlador 1.
Con el fin de brindar una respuesta numérica y objetiva sobre las razones por las cuales el controlador por reali-
mentación de estados(el primero) sea menos eficiente que el control basado en linealización por realimentación
es debido a que aunque el control posea un margen de fase y ganancia que logren toleran las variaciones de la
planta, el observador fue diseñado bajo unos puntos de operación en especı́fico (planta 60) es por ello que al
analizar y comparar la velocidad del sistema vs las velocidad estimada ocurren grandes errores de estimación.

Comparación de variables reales vs estimaciones


Velocidad Th1 real
3 Velocidad Th1 estimada
Velocidad ang. (rad/s)

-1

0 1 2 3 4 5 6
Tiempo (seg)

Figura 14: Comparación de la velocidad th1 vs estimación

Comparación de variables reales vs estimaciones


1 Velocidad Th2 real
Velocidad Th2 estimada
0.5
Velocidad ang. (rad/s)

-0.5

-1

-1.5

-2

-2.5
0 1 2 3 4 5 6
Tiempo (seg)

Figura 15: Comparación de la velocidad th2 vs estimación

21
Universidad de San Buenaventura Control
Facultad de Ingenierı́a Moderno
Programa de Ingenierı́a Mecatrónica 2020-I

8. Conclusiones
El estudio de controladores a sistemas no lineales tiene un gran impacto sobre los sistemas dinámicos
reales, tal como se confirmó en las tablas de desempeño la linealización por realimentación puede cubrir
grandes zonas de operación, sin depender de la selección correcta de un punto de operación intermedio
para el diseño de los controladores y observadores de estado.

Se concluyó que aunque el sistema pierda rechazo y seguimiento de entradas o perturbaciones de orden
superior para casos como el que la planta debe seguir una trayectoria que varı́a siempre es recomendable
diseñar con controladores de bajo orden para conservar márgenes de fase y ganancia que pueda tolerar
variaciones del sistema no lineal.
Aumentar el ancho de banda de un sistema puede ayudar a cubrir zonas en donde existan errores de
seguimiento, esto se puede verificar al evaluar el lı́mite del error cuando el tiempo tiende a infinito; este
método se utilizó en el diseño del control basado en linealización por realimentación cuando se decidió
sintonizar la ley de control con valores grandes en K1 y K0.

Referencias
Morilla, F., Garrido, J., and Vázquez, F. (2013). Control multivariable por desacoplo. Revista Iberoamericana
de Automática e Informática industrial, 10(1):3–17.
Ramesh, R., Mannan, M., and Poo, A. (2005). Tracking and contour error control in cnc servo systems.
International Journal of Machine Tools and Manufacture, 45(3):301–326.

Scasso, M., Garro, R., Ordinez, L., and Alimenti, O. (2012). Diseño e implementación de un sistema embebido
de control moderno: una experiencia práctica. In Congreso Argentino de Sistemas Embebidos, pages 170–175.

22

También podría gustarte