Está en la página 1de 114

UNIVERSIDAD NACIONAL AUTNOMA

DE MXICO


FACULTAD DE INGENIERA




DISEO, FABRICACIN Y CONTROL
DE UN PNDULO DOBLE





TESIS PROFESIONAL

QUE PARA OBTENER EL TTULO DE:


INGENIERO MECNICO


PRESENTA:

JUAN CARLOS ALBARRN CASTRO






Director de tesis:
Dr. Edmundo Gabriel Rocha Czatl


CIUDAD UNIVERSITARIA, MXICO, D.F. 2009








Dedicatoria




A mis padres, Marta y Juan Carlos, que son mi fortaleza y mi inspiracin. A mis
hermanos, Edgar y Bere, quienes siempre me han brindado su apoyo y comprensin, y
a la pequea Aranxa cuya presencia ha iluminado nuestras vidas.































Agradecimientos

A mis padres y hermanos, por su amor y apoyo incondicional.

Al Dr. Edmundo Rocha, por su paciencia y dedicacin a este proyecto.

A la Universidad Nacional Autnoma de Mxico, a la Facultad de Ingeniera y a mis
profesores por haberme brindado las herramientas para mi formacin acadmica.

Al Departamento de Ingeniera Mecatrnica, y al Ing. Serafin Castaeda por las
facilidades brindadas durante el desarrollo de este trabajo.

A mis sinodales quienes me ofrecieron valiosos comentarios al revisar gentilmente este
escrito.

A mis compaeros y amigos por brindarme su invaluable amistad.















i
ndice general
1. Introduccin 1
2. Modelado del sistema Pndulo Doble 4
2.1. Modelo matemtico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.1.1. Descripcin general . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.1.2. Ecuaciones dinmicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.2. Descripcin del modelo en variables de estado . . . . . . . . . . . . . . . . . . . . . . . 11
2.3. Linealizacin del modelo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3. Fabricacin del sistema Pndulo Doble y validacin del modelado 20
3.1. Construccin del mecanismo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.1.1. Eslabones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.1.2. Base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.2. Validacin del modelo matemtico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
4. Control 36
4.1. Asignacin de Polos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
4.1.1. Frmula de Ackerman . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.2. Observador de estados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
4.3. Simulaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
4.3.1. Validacin del sistema de control . . . . . . . . . . . . . . . . . . . . . . . . . . 50
4.3.2. Simulacin para la obtencin de los parmetros del diseo mecnico de los
eslabones del pndulo doble y determinacin de los polos del controlador y del
observador. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
4.3.3. Simulacin para la validacin del modelo matemtico . . . . . . . . . . . . . . 59
5. Implementacin 62
5.1. Cdigo en LabVIEW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
5.2. Etapa de potencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
5.3. Anlisis del estado observado y del controlador del sistema . . . . . . . . . . . . . . . 74
6. Conclusiones 82
A. Parmetros 84
A.1. Parmetros del sistema pndulo doble . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
A.2. Parmetros del actuador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
ii
A.3. Modelo del sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
A.4. Parmetros del controlador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
A.5. Parmetros del observador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
B. Control discreto 86
B.1. Control mediante asignacin de polos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
B.2. Observador de estados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
C. Conexiones 90
D. Planos de fabricacin 92
Bibliografa 107
1
Captulo 1
Introduccin
Desde su desarrollo a mediados del siglo XX, la teora de control moderna ha estado presente
en muchos mbitos de la actividad humana, sus aplicaciones son tan variadas que se pueden encontrar
innidad de ejemplos en reas tan distantes entre s como lo son la ingeniera aeroespacial y la
ingeniera de manufactura y fabricacin. En el mbito acadmico es comn que la teora de control
moderna se utilice para controlar mecanismos sencillos como muestra de una aplicacin prctica a
sistemas inestables. Entre estos mecanismos est el pndulo invertido.
El pndulo invertido es un sistema mecnico ampliamente utilizado porque es muy til para
la demostracin de conceptos de control, tanto lineal y como no lineal (Verde et al., 1996; strm y
Furuta, 2000; Acosta et al., 2001; Iwase et al., 2006). Existen distintas conguraciones del pndulo
invertido, la ms comn est constituda por un brazo articulado a un carro que se mueve libremente
en direccin horizontal sobre un riel (Mori et al., 1976; Salas et al., 2003). Sin embargo, tambin
los hay doblemente articulados (Furuta et al., 1980; Graichen K. et al., 2006), rotatorios (Furuta,
1991; Misawa et al., 1995), etc. En este trabajo se tratar la conguracin denominada pndulo doble
(Craig et al., 2002), la cual consiste en dos brazos articulados entre s, uno al extremo del otro; ambos
brazos pueden girar libremente, sin embargo, uno de ellos est acoplado por un extremo a un motor
de corriente directa, el cual permite su actuacin. Este sistema mecnico, inherentemente presenta
cuatro puntos de equilibrio, uno estable y tres inestables. El punto de equilibrio estable corresponde
al estado en que ambos brazos se sitan en posicin vertical hacia abajo; en ausencia de cualquier
fuerza el sistema regresar naturalmente a este estado. Uno de los puntos de equilibrio inestable
corresponde al estado en que los dos brazos se sitan en posicin vertical hacia arriba, para mantener
esta posicin se requiere la aplicacin de fuerzas externas sobre el sistema. Esta ltima conguracin
2
es la ms atractiva para nes de control y es la que se elige como punto de operacin. Por lo tanto,
el objetivo de control para el sistema pndulo doble es mantener la posicin de equilibrio inestable
cuando el sistema se inicializa en la posicin vertical hacia arriba (Craig y Awtar, 2002).
En este documento se presenta el diseo y fabricacin del pndulo doble, as como la des-
cripcin del trabajo hecho para controlar su posicin en el punto de equilibrio inestable cuando el
sistema se inicializa cerca de su posicin vertical hacia arriba, lo cual se realiza mediante un contro-
lador lineal diseado mediante la tcnica de asignacin de polos; la implementacin de este sistema
de control se realiza mediante una computadora a travs de una tarjeta de adquisicin de datos y del
programa LabVIEW
R
.
En otras palabras, los objetivos principales a desarrollar en este trabajo son:
Disear y fabricar el sistema mecnico denominado pndulo doble
Controlar la posicin del pndulo doble en su punto de equilibrio inestable cuando el sistema
se inicializa cerca de tal posicin.
El propsito es contar con un mecanismo didctico que pueda ser usado para la realizacin
de prcticas demostrativas en las asignaturas de control que se imparten en el Departamento de
Ingeniera Mecatrnica de la Facultad de Ingeniera.
Para cumplir con los objetivos antes mencionados, el primer punto a considerar es la ob-
tencin del modelo matemtico que describe el comportamiento dinmico del pndulo doble. En el
captulo 2 se aplican las leyes de la mecnica clsica para obtener el modelo matemtico no lineal
del sistema mediante el mtodo de Euler-Lagrange. Enseguida se presenta la linealizacin de este
modelo, el cual es utilizado posteriormente para contruir la descripcin en variables de estado del
sistema.
En el captulo 3 se presenta el diseo propuesto para la fabricacin del pndulo doble y se
mencionan tambin los procesos de manufactura elegidos para su fabricacin. Adems, se describe
el proceso empleado para la seleccin de los parmetros fsicos de los componentes del mecanismo,
el cual est basado en las simulaciones del modelo matemtico del sistema. Finalmente, se realiza la
validacin del modelo matemtico del pndulo doble mediante la confrontacin de los datos obtenidos
del modelo matemtico con datos reales obtenidos a patir de pruebas experimentales realizadas al
mecanismo construido.
El captulo 4 comienza con la descripcin de la tcnica de control lineal utilizada para el
diseo del sistema de control del pndulo doble, presentndose despus la aplicacin de esta tcnica
3
al sistema bajo estudio. Posteriormente se presenta el diseo de un estimador de estados de orden
completo que se implementa al sistema. A continuacin, se evala el comportamiento del controlador
diseado al ser implementado ste en simulacin en conjunto con el modelo no lineal del sistema.
Adems, en este captulo se presentan y describen los diagramas de bloques en SIMULINK
R
que se
utilizan para determinados propsitos durante el desarrollo de este trabajo.
En el captulo 5 se presenta y describe el cdigo programado en LabVIEW
R
para la imple-
mentacin del sistema de control y del estimador de estados diseados en el captulo 4. Se presenta
tambin, el circuito elctrico propuesto para el acondicionamiento de la seal de control analgica,
generada por una tarjeta de adquisicin de datos, a la magnitud de potencia adecuada para el actu-
ador del sistema. Por ltimo, se hace un anlisis del comportamiento que presentan el controlador y
el estimador de estados diseados.
Finalmente en el captulo 6 se resumen las conclusiones de este trabajo.
4
Captulo 2
Modelado del sistema Pndulo Doble
En este captulo se describe el procedimiento empleado para obtener el modelo matemtico
no lineal del sistema denominado pndulo doble, el cual est basado en el mtodo de Euler-Lagrange.
Se presenta tambin un modelo linealizado del sistema en un punto de equilibrio inestable y la
descripcin en variables de estado de ambos modelos.
2.1. Modelo matemtico
2.1.1. Descripcin general
El pndulo doble es un mecanismo de dos grados de libertad, compuesto bsicamente por
dos pndulos simples acoplados entre s a travs de una articulacin. Como se muestra en la Figura
2.1, el primer pndulo est acoplado a un actuador el cual permite controlar los movimientos de dicho
elemento, el segundo pndulo est unido al extremo del primero mediante una articulacin rotacional,
es por esto que este segundo componente del sistema slo puede ser controlado mediante la accin
de control que se aplica al primer pndulo. El actuador de este sistema mecnico es un motor de
corriente directa y los dos sensores que registran las posiciones angulares de cada pndulo son dos
decodicadores pticos (encoder) de tipo incremental. En adelante se usar la palabra eslabn en
vez de pndulo para nombrar a los elementos que conforman el pndulo doble con el n de utilizar la
palabra slo en referencia al nombre del sistema y no a los componentes del mismo. En la Figura 2.2
se presenta un esquema con los componentes que conforman al sistema pndulo doble y enseguida
una tabla con la descripcin de dichos elementos.
5
Figura 2.1: Sistema pndulo doble.
6
Figura 2.2: Componentes del sistema pndulo doble.
Elemento Descripcin
1 Actuador del sistema (Motor CD)
2 Eslabn 1 (Pndulo 1)
3 Rodamiento de bolas - Articulacin Rotacional
4 A Sensor de posicin angular del eslabn 1
4 B Sensor de posicin angular del eslabn 2
5 Eje - Articulacin rotacional
6 Eslabn 2 (Pndulo 2)
2.1.2. Ecuaciones dinmicas
Considere un mecanismo de dos grados de libertad como el mostrado en la Figura 2.3. El
mecanismo est formado por dos cuerpos rgidos (articulados en 1 y en 2) de longitudes |
1
y |
2
,
y masas :
1
y :
2
respectivamente. Los grados de libertad estn asociados a los ngulos 0
1
y 0
2
que se miden desde la posicin vertical hacia abajo, siendo ambos positivos en sentido contrario al
movimiento de las manecillas del reloj. Las articulaciones 1 y 2 son rotacionales simples, por tanto,
7
los desplazamientos del pndulo se llevarn a cabo en el plano r j mostrado en la Figura 2.3.
Figura 2.3: Esquema del pndulo doble.
Las componentes de posicin del centro de masa del eslabn 1 expresadas en el plano x-y
mostrado son
r
1
= |
c1
:c:0
1
j
1
= |
c1
cos 0
1
El vector velocidad
1
del centro de masa de dicho eslabn tiene en consecuencia las
componentes

r
1
= |
c1
_
0
1
cos 0
1

j
1
= |
c1
_
0
1
:c:0
1
8
Por lo tanto, la rapidez al cuadrado del centro de masa resulta ser

2
1
=
_
_ r
2
1
+ _ j
2
1
_

2
1
= |
2
c1
_
0
2
1
cos
2
0
1
+ |
2
c1
_
0
2
1
:c:
2
0
1
empleando la identidad trigonomtrica cos
2
(c) + :c:
2
(c) = 1 se obtiene nalmente

2
1
= |
2
c1
_
0
2
1
(2.1)
Por otro lado, las coordenadas del centro de masa del eslabn 2 expresadas en el plano rj
son
r
2
= |
1
:c:0
1
+ |
2
:c:0
2
j
2
= |
1
cos 0
1
|
2
cos 0
2
El vector velocidad
2
del centro de masa de dicho eslabn tiene en consecuencia las
componentes

r
2
= |
1
_
0
1
cos 0
1
+ |
2
_
0
2
cos 0
2

j
2
= |
1
_
0
1
:c:0
1
+ |
2
_
0
2
:c:0
2
Por lo tanto, empleando las identidades trigonomtricas cos
2
(c)+:c:
2
(c) = 1 y cos (c c) =
cos(c) cos(c) ( :c:(c):c:(c) se obtiene nalmente la rapidez al cuadrado del centro de masa del
eslabn 2

2
2
=
_
_ r
2
2
+ _ j
2
2
_

2
2
=
_
|
1
_
0
1
cos 0
1
+ |
2
_
0
2
cos 0
2
_
2
+
_
|
1
_
0
1
:c:0
1
+ |
2
_
0
2
:c:0
2
_
2

2
2
= |
2
1
_
0
2
1
_
cos
2
0
1
+ :c:
2
0
1
_
+ |
2
2
_
0
2
2
_
cos
2
0
2
+ :c:
2
0
2
_
+ 2|
1
|
2
_
0
1
_
0
2
(cos 0
1
cos 0
2
+ :c:0
1
:c:0
2
)

2
2
= |
2
1
_
0
2
1
+ |
2
2
_
0
2
2
+ 2|
1
|
2
_
0
1
_
0
2
cos (0
1
0
2
) (2.2)
La energa cintica para este mecanismo puede descomponerse en la suma de dos partes
T = T
1
+T
2
, donde T
1
y T
2
son las energas cinticas asociadas a las masas :
1
y :
2
respectivamente.
La energa cintica correspondiente al movimiento del eslabn 1 es T
1
=
1
2
:
1

2
1
y la energa cintica
que corresponde al movimiento del segundo eslabn es T
2
=
1
2
:
2

2
2
, de tal forma que
T =
1
2
:
1
|
2
c1
_
0
2
1
+
1
2
:
2
_
|
2
1
_
0
2
1
+ |
2
2
_
0
2
2
+ 2|
1
|
2
_
0
1
_
0
2
cos (0
1
0
2
)
_
(2.3)
9
De forma similar, la energa potencial puede descomponerse como la suma de dos partes,
\ = \
1
+\
2
donde \
1
y \
2
son las energas potenciales asociadas a las masas :
1
y :
2
respectivamente.
Se tiene entonces que \
1
= :
1
qj
1
y \
2
= :
2
qj
2
, por lo tanto la energa potencial del sistema queda
denida por lo siguiente
\ = :
1
q|
c1
cos 0
1
:
2
q|
1
cos 0
1
:
2
q|
2
cos 0
2
(2.4)
Si se dene la ecuacin Lagrangiana o Lagrangiano 1 como1 = T \
donde
T = Energa cintica
\ = Energa potencial
y se toman en cuenta las ecuaciones (2.3) y (2.4) se tiene que
1 =
1
2
:
1
|
2
c1
_
0
2
1
+
1
2
:
2
_
|
2
1
_
0
2
1
+ |
2
2
_
0
2
2
+ 2|
1
|
2
_
0
1
_
0
2
cos (0
1
0
2
)
_
+ (2.5)
+:
1
q|
c1
cos 0
1
+ :
2
q|
1
cos 0
1
+ :
2
q|
2
cos 0
2
Teniendo denido el Lagrangiano, las ecuaciones dinmicas que modelan el pndulo doble
se obtienen aplicando las ecuaciones de Euler-Lagrange (2.6)
d
dt
_
01
0 _
i
_

_
01
0
i
_
+
_
01
i
0 _
i
_
= Q
i
, i = 1, 2, ..., : grados de libertad (2.6)
donde

i
: Son las coordenadas generalizadas del sistema mecnico
1 : Lagrangiano
Q
i
: Fuerzas externas
1
i
: Funcin de disipacin de Rayleigh.
La funcin de disipacin 1
i
involucra las fuerzas amortiguadoras o de rozamiento, las cuales
absorben la energa del sistema durante el movimiento. Dichas fuerzas amortiguantes son propor-
cionales a las velocidades. La funcin de disipacin 1
i
es denida como sigue 1
i
=
1
2
/
i
_
2
i
; donde _
i
es
la velocidad generalizada, es decir, la derivada respecto al tiempo de las coordenadas generalizadas
y /
i
es una constante de disipacin.
Para este caso existen dos grados de libertad y por tanto las coordenadas generalizadas
1
y
2
corresponden a 0
1
y 0
2
, mientras que la fuerza externa Q
1
esta representada por t que es el
par aplicado al primer eslabn por el actuador y para Q
2
no se tiene componente ya que el segundo
10
eslabn no recibe un par externo (no est accionado por ningn motor). Las constantes de disipacin
son representados por /
1
y /
2
, que son los coecientes de friccin viscosa correpondientes al primer
y segundo eslabn respectivamente. En resumen

1
= 0
1
, Q
1
= t , 1
1
=
1
2
/
1
_
0
2
1

2
= 0
2
, Q
2
= 0 , 1
2
=
1
2
/
2
_
0
2
2
por lo tanto, para 0
1
la ecuacin de Euler-Lagrange queda denida por
d
dt
_
01
0
_
0
1
_

_
01
00
1
_
+
_
01
1
0
_
0
1
_
= t (2.7)
Desarrollando los trminos de la ecuacin (2.7) se obtiene lo siguiente
01
0
_
0
1
= :
1
|
2
c1
_
0
1
+ :
2
|
2
1
_
0
1
+ :
2
|
1
|
2
_
0
2
cos (0
1
0
2
)
d
dt
_
01
0
_
0
1
_
= :
1
|
2
c1

0
1
+ :
2
|
2
1

0
1
:
2
|
1
|
2
_
0
2
_
_
0
1

_
0
2
_
:c:(0
1
0
2
) + (2.8)
+:
2
|
1
|
2

0
2
cos (0
1
0
2
)
_
01
00
1
_
= :
2
|
1
|
2
_
0
1
_
0
2
:c:(0
1
0
2
) :
1
q|
c1
:c:0
1
:
2
q|
1
:c:0
1
(2.9)
01
1
0
_
0
1
= /
1
_
0
1
(2.10)
Finalmente, sustituyendo los trminos arriba desarrollados, ecuaciones (2.8), (2.9) y (2.10)
en (2.7) se obtiene

0
1
(|
2
c1
:
1
+|
2
1
:
2
)+:
2
|
1
|
2
_
0
2
2
:c:(0
1
0
2
)+:
2
|
1
|
2

0
2
cos(0
1
0
2
)+:
1
q|
c1
:c:0
1
+:
2
q|
1
:c:0
1
+/
1
_
0
1
= t
(2.11)
El desarrollo para la coordenada restante 0
2
se hace de manera homloga a lo hecho para 0
1
teniendo presente que el trmino Q
2
de la ecuacin (2.6) vale cero; por lo tanto para 0
2
la ecuacin
de Euler-Lagrange queda como a continuacin se muestra
d
dt
_
01
0
_
0
2
_

_
01
00
2
_
+
01
2
0
_
0
2
= 0 (2.12)
Desarrollando los trminos en (2.12) se llega a la ecuacin (2.13).
01
0
_
0
2
= :
2
|
2
2
_
0
2
+ :
2
|
1
|
2
_
0
1
cos (0
1
0
2
)
11
d
dt
_
01
0
_
0
2
_
= :
2
|
2
2

0
2
+ :
2
|
1
|
2

0
1
cos (0
1
0
2
) :
2
|
1
|
2
_
0
1
_
_
0
1

_
0
2
_
:c:(0
1
0
2
)
01
00
2
= :
2
|
1
|
2
_
0
1
_
0
2
:c:(0
1
0
2
) :
2
q|
2
:c:0
2
01
2
0
_
0
2
= /
2
_
0
2
:
2
|
2
_
|
2

0
2
+ |
1

0
1
cos (0
1
0
2
) |
1
_
0
2
1
:c:(0
1
0
2
) + q:c:0
2
_
+ /
2
_
0
2
= 0 (2.13)
Las ecuaciones (2.11) y (2.13) son las ecuaciones dinmicas del sistema, las cuales son un
conjunto de ecuaciones diferenciales no lineales simultneas para las coordenadas generalizadas 0
1
y
0
2
.
2.2. Descripcin del modelo en variables de estado
Entre las formas de representar el modelo matemtico de un sistema se encuentra la repre-
sentacin en variables de estado. Un modelo matemtico se puede considerar una relacin matemtica
entre las salidas y las entradas del sistema. En particular, la representacin en variables de estado
relaciona matemticamente las salidas con las entradas a travs de las variables de estado como paso
intermedio.
La forma general de representacin por variable de estado de un sistema continuo est dada
por dos ecuaciones; la primera que dene los cambios de las variables de estado en funcin de estas
mismas variables, las entradas y el tiempo; y la segunda que dene la salida en funcin de las variables
de estado, las entradas y el tiempo. As se tiene:
_ r(t) = ) r(t), n(t), t (2.14)
j(t) = q r(t), n(t), t (2.15)
Aqu se considera que r, j y n son vectores de :, j y : componentes respectivamente. Esta
forma de representacin es vlida para los sistemas continuos no lineales y variantes en el tiempo en
forma general.
Si el sistema es invariante en el tiempo, las funciones ) y q dejan de depender explcitamente
del tiempo
_ r(t) = ) r(t), n(t)
j(t) = q r(t), n(t)
12
Si el sistema representado por las ecuaciones (2.14) y (2.15), es un sistema lineal, la depen-
dencia de _ r e j pasa a ser lineal y se tiene entonces:
_ r(t) = r(t) + 1n(t) (2.16)
j(t) = Cr(t) + 1n(t) (2.17)
donde es una matriz de dimensin :x:, 1 es una matriz de dimensin :x:, C es una matriz de
dimensin jx:, y 1 una matriz de dimensin jx:.
As la ecuacin general en variables de estado para un sistema dinmico lineal e invariante
en el tiempo descrito por un conjunto de ecuaciones diferenciales de :-simo orden, con una sola
entrada (m=1), est dado por:
_

_
_ r
1
_ r
2
.
.
.
_ r
n
_

_
=
_

_
a
11
a
12
a
1n
a
21
a
22
a
2n
.
.
.
.
.
.
a
n1
a
n2
a
nn
_

_
_

_
r
1
r
2
.
.
.
r
n
_

_
+
_

_
/
1
/
2
.
.
.
/
n
_

_
n (2.18)
_

_
j
1
j
2
.
.
.
j
p
_

_
=
_

_
c
11
c
12
c
1n
c
21
c
22
c
2n
.
.
.
.
.
.
c
n1
c
n2
c
nn
_

_
_

_
r
1
r
2
.
.
.
r
n
_

_
+
_

_
d
1
d
2
.
.
.
d
p
_

_
n (2.19)
donde para la ecuacin (2.18) : es el nmero de variables de estado y r
1
, r
2
, ... , r
n
representa
el conjunto de stas que denen el vector de estados, a
ij
y /
i
son los coecientes constantes de las
matrices y 1 respectivamente y n es la seal de entrada. Por otro lado, en la ecuacin (2.19) j es el
nmero de salidas del sistema y los coecientes c
ij
y d
i
son los coecientes constantes que conforman
las matrices C y 1, respectivamente.
Para obtener la descripcin del sistema pndulo doble en variables de estado a partir de las
ecuaciones de movimiento obtenidas anteriormente, se tienen que realizar algunos reacomodos de los
trminos presentes en dichas ecuaciones. As se tiene lo siguiente.
Si se despeja

0
2
de la ecuacin (2.13) se obtiene la ecuacin que a continuacin se muestra:

0
2
=
|
1
_
_
0
2
1
:c:(0
1
0
2
)

0
1
cos(0
1
0
2
)
_
q:c:0
2

/
2
_
0
2
:
2
|
2
|
2
(2.20)
13
Sustituyendo ahora la ecuacin (2.20) en (2.11) y despejando de sta ltima a la variable

0
1
se obtiene:

0
1
=
_

_
t /
1
_
0
1
:
2
|
1
|
2
_
0
2
2
:c:(0
1
0
2
) :
2
|
2
1
_
0
2
1
:c:(0
1
0
2
) cos(0
1
0
2
)+
+:
2
|
1
q:c:0
2
cos(0
1
0
2
) :
1
|
c1
q:c:0
1
:
2
|
1
q:c:0
1
+
|
1
/
2
_
0
2
cos(0
1
0
2
)
|
2
_

_
:
1
|
2
c1
+ :
2
|
2
1
|
2
1
:
2
cos
2
(0
1
0
2
)
(2.21)
Ahora si se despeja

0
1
de la ecuacin (2.11) se llega a

0
1
=
t :
2
|
1
|
2
_
0
2
2
:c:(0
1
0
2
) :
2
|
1
|
2

0
2
cos(0
1
0
2
) :
1
q|
c1
:c:0
1
:
2
q|
1
:c:0
1
/
1
_
0
1
:
1
|
2
c1
+ :
2
|
2
1
(2.22)
Por ltimo, sustituyendo la ecuacin (2.22) en (2.13) y despejando la variable

0
2
de la
ecuacin se obtiene:

0
2
=
(:
1
|
2
c1
+ :
2
|
2
1
)
_

_
:
2
|
1
|
2
_
0
2
1
:c:(0
1
0
2
) :
2
q|
2
:c:0
2
/
2
_
0
2
+
+
:
2
2
|
2
1
|
2
2
_
0
2
2
:c:(0
1
0
2
) cos(0
1
0
2
)
:
1
|
2
c1
+ :
2
|
2
1

:
2
|
1
|
2
cos(0
1
0
2
)t
:
1
|
2
c1
+ :
2
|
2
1
+
+
:
2
|
1
|
2
/
1
_
0
1
cos(0
1
0
2
)
:
1
|
2
c1
+ :
2
|
2
1
+
:
1
:
2
|
1
|
2
|
c1
q:c:0
1
cos(0
1
0
2
)
:
1
|
2
c1
+ :
2
|
2
1
+
+
:
2
2
|
2
1
|
2
q:c:0
1
cos(0
1
0
2
)
:
1
|
2
c1
+ :
2
|
2
1
_

_
:
2
|
2
2
_
:
1
|
2
c1
+ :
2
|
2
1
:
2
|
2
1
cos
2
(0
1
0
2
)
(2.23)
Se ha transformado el sistema (2.11) y (2.13) en las ecuaciones (2.21) y (2.23), de manera
tal que se han expresado las segundas derivadas de la posicin de los eslabones que conforman el
sistema en trminos de las coordenadas generalizadas y de sus primeras derivadas. Con base en estas
expresiones se puede construir el modelo de estados deniendo el vector de estados como:
r
1
= 0
1
; Posicin angular del eslabn 1
r
2
=
_
0
1
; Velocidad angular del eslabn 1
r
3
= 0
2
; Posicin angular del eslabn 2
r
4
=
_
0
2
; Velocidad angular del eslabn 2.
Si denimos al torque aplicado por el actuador como la entrada n del sistema se tiene
entonces que n = t.
14
Por lo que se obtiene a partir de las ecuaciones (2.21) y (2.23) la siguiente representacin:
_ r
1
= r
2
= /
1
(r) (2.24)
_ r
2
=
_
_
n /
1
r
2
:
2
|
1
|
2
r
2
4
:c:(r
1
r
3
) :
2
|
2
1
r
2
2
:c:(r
1
r
3
) cos(r
1
r
3
)+
+:
2
|
1
q:c:r
3
cos(r
1
r
3
) :
1
|
c1
q:c:r
1
:
2
|
1
q:c:r
1
+
l
1
b
2
x
4
cos(x
1
x
3
)
l
2
_
_
:
1
|
2
c1
+ :
2
|
2
1
|
2
1
:
2
cos
2
(r
1
r
3
)
= /
2
(r, n)
_ r
3
= r
4
= /
3
(r)
_ r
4
=
(:
1
|
2
c1
+ :
2
|
2
1
)
_

_
:
2
|
1
|
2
r
2
2
:c:(r
1
r
3
) :
2
q|
2
:c:r
3
/
2
r
4
+
+
m
2
2
l
2
1
l
2
2
x
2
4
sen(x
1
x
3
) cos(x
1
x
3
)
m
1
l
2
c1
+m
2
l
2
1

m
2
l
1
l
2
cos(x
1
x
3
)u
m
1
l
2
c1
+m
2
l
2
1
+
+
m
2
l
1
l
2
b
1
x
2
cos(x
1
x
3
)
m
1
l
2
c1
+m
2
l
2
1
+
m
1
m
2
l
1
l
2
l
c1
gsenx
1
cos(x
1
x
3
)
m
1
l
2
c1
+m
2
l
2
1
+
+
m
2
2
l
2
1
l
2
gsenx
1
cos(x
1
x
3
)
m
1
l
2
c1
+m
2
l
2
1
_

_
:
2
|
2
2
_
:
1
|
2
c1
+ :
2
|
2
1
:
2
|
2
1
cos
2
(r
1
r
3
)
= /
4
(r, n)
Como se mencion anteriormente la entrada n del sistema corresponde al torque aplicado
por el motor al primer eslabn del pndulo doble, conocer el torque que se necesita entregar al sistema
para cambiar la posicin de los eslabones es muy til, sin embargo, para este caso resulta de mayor
utilidad saber cul es el voltaje que se necesita suministrar al motor para que ste aplique dicho
torque al sistema, es por lo anterior que se requiere en este punto agregar al modelo del sistema
pndulo doble el modelo del motor, el cual se muestra enseguida
t =
/
a
1
~ n
/
a
/
b
1
.
donde
/
a
= Constante de par, relaciona el par del motor y la corriente
/
b
= Constante de velocidad, relaciona la FCEM y la velocidad angular
1 = Resistencia
~ n = Voltaje aplicado
. = Velocidad angular.
Para este caso, debido a que el acoplamiento entre el motor y el primer eslabn del sistema
es un acoplamiento directo, es decir, no hay elementos mecnicos adicionales para la transmisin de
potencia del motor al sistema, la velocidad del motor ser igual a la velocidad del primer eslabn,
en otras palabras, . = r
2
. Teniendo sto presente, es posible reescribir el modelo del motor de la
siguiente forma:
t =
/
a
1
~ n
/
a
/
b
1
r
2
(2.25)
15
Ahora es posible cambiar la entrada al sistema de torque a voltaje simplemente sustituyendo
el modelo del motor, ecuacin (2.25), en las ecuaciones (2.24). Con esto, la representacin en variables
de estado del modelo no lineal del pndulo doble con una seal de voltaje como entrada es la siguiente:
_ r
1
= r
2
(2.26)
_ r
2
=
_
_
ka
R
~ n
kak
b
R
r
2
/
1
r
2
:
2
|
1
|
2
r
2
4
:c:(r
1
r
3
) :
2
|
2
1
r
2
2
:c:(r
1
r
3
) cos(r
1
r
3
)+
+:
2
|
1
q:c:r
3
cos(r
1
r
3
) :
1
|
c1
q:c:r
1
:
2
|
1
q:c:r
1
+
l
1
b
2
x
4
cos(x
1
x
3
)
l
2
_
_
:
1
|
2
c1
+ :
2
|
2
1
|
2
1
:
2
cos
2
(r
1
r
3
)
_ r
3
= r
4
_ r
4
=
(:
1
|
2
c1
+ :
2
|
2
1
)
_

_
:
2
|
1
|
2
r
2
2
:c:(r
1
r
3
) :
2
q|
2
:c:r
3
/
2
r
4
+
+
m
2
2
l
2
1
l
2
2
x
2
4
sen(x
1
x
3
) cos(x
1
x
3
)
m
1
l
2
c1
+m
2
l
2
1

kam
2
l
1
l
2
cos(x
1
x
3
)~ u
R(m
1
l
2
c1
+m
2
l
2
1
)
+
+
kak
b
m
2
l
1
l
2
cos(x
1
x
3
)x
2
R(m
1
l
2
c1
+m
2
l
2
1
)
+
m
2
l
1
l
2
b
1
x
2
cos(x
1
x
3
)
m
1
l
2
c1
+m
2
l
2
1
+
+
m
1
m
2
l
1
l
2
l
c1
gsenx
1
cos(x
1
x
3
)
m
1
l
2
c1
+m
2
l
2
1
+
m
2
2
l
2
1
l
2
gsenx
1
cos(x
1
x
3
)
m
1
l
2
c1
+m
2
l
2
1
_

_
:
2
|
2
2
_
:
1
|
2
c1
+ :
2
|
2
1
:
2
|
2
1
cos
2
(r
1
r
3
)

Una de las limitaciones de la teora clsica de sistemas de control es el hecho de que no puede
manejar fcilmente los sistemas con no linealidades fuertes, sobre todo en el caso de incertidumbres en
los parmetros del modelo. Sin embargo, en el caso del modelo del pndulo doble, ecuaciones (2.24),
dado que las no linealidades son del tipo suave, :c:(r), cos(r), cos
2
(r), r
2
, es posible linealizar el
modelo para emplearlo en el diseo de la ley de control del sistema. Por lo tanto en la siguiente
seccin se presenta la tcnica empleada para obtener un modelo lineal aproximado sobre un punto
de funcionamiento del sistema (2.24).
16
2.3. Linealizacin del modelo
Si se considera que el sistema opera con pequeas variaciones cerca de un punto de fun-
cionamiento, entonces es posible obtener un modelo lineal en donde las desviaciones del estado con
respecto al punto de operacin son ahora las que denen el vector de estados; para ello las ecua-
ciones se desarrollarn alrededor de un punto de operacin (r
0
, n
0
) por medio de una serie de Taylor
truncada despus del trmino de primer grado. En particular, debido a que el objetivo del control es
lograr que la posicin de los dos eslabones del pndulo doble se mantengan en posicin vertical hacia
arriba, se selecciona el siguiente punto de operacin:
r
0
=
_

0
_

_
, n
0
= 0
el cual se toma como base para las variaciones r y n.
Para pequeas desviaciones del sistema se tiene que la ecuacin (2.24) se aproxima mediante
_ r -
0/
0r
[
x
0
;u
0
r +
0/
0n
[
x
0
;u
0
n (2.27)
donde / =
_

_
/
1
/
2
/
3
/
4
_

_
lo cual puede escribirse de manera ms compacta como
_ r = r + 1n (2.28)
donde
=
0/
0r
[
x
0
;u
0
1 =
0/
0n
[
x
0
;u
0
De las funciones que componen /, las nicas dos que no son lineales son /
2
y /
4
, por lo
tanto la ecuacin (2.27) para estas dos funciones queda denida por lo siguiente
/
2L
=
0/
2
0r
i
[
x
0
;u
0
r
i
+
0/
2
0n
[
x
0
;u
0
n, i = 1, 2, ..., : variables de estado (2.29)
17
/
4L
=
0/
4
0r
i
[
x
0
;u
0
r
i
+
0/
4
0n
[
x
0
;u
0
n, i = 1, 2, ..., : variables de estado (2.30)
donde /
2L
y /
4L
corresponden a los modelos linealizados de /
1
y /
2
en torno al punto de operacin
(r
0
, n
0
) .
El desarrollo de las ecuaciones anteriores es
/
2L
=
0/
2
0r
1
[
x
0
;u
0
(r
1
r
1
0
) +
0/
2
0r
2
[
x
0
;u
0
(r
2
r
2
0
) +
0/
2
0r
3
[
x
0
;u
0
(r
3
r
3
0
) +
+
0/
2
0r
4
[
x
0
;u
0
(r
4
r
4
0
) +
0/
2
0n
[
x
0
;u
0
(n n
0
)
/
4L
=
0/
4
0r
1
[
x
0
;u
0
(r
1
r
1
0
) +
0/
4
0r
2
[
x
0
;u
0
(r
2
r
2
0
) +
0/
4
0r
3
[
x
0
;u
0
(r
3
r
3
0
) +
+
0/
4
0r
4
[
x
0
;u
0
(r
4
r
4
0
) +
0/
4
0n
[
x
0
;u
0
(n n
0
)
Calculando las derivadas indicadas para obtener /
2L
y /
4L
se tiene
0/
2
0r
1
[
x
0
;u
0
=
(:
1
|
c1
+ :
2
|
1
)q
|
2
c1
:
1
0/
4
0r
1
[
x
0
;u
0
=
q|
1
(:
1
|
c1
+ :
2
|
1
)
|
2
|
2
c1
:
1
0/
2
0r
2
[
x
0
;u
0
=
/
1
|
2
c1
:
1
0/
4
0r
2
[
x
0
;u
0
=
/
1
|
1
|
2
c1
|
2
:
1
0/
2
0r
3
[
x
0
;u
0
=
:
2
|
1
q
|
2
c1
:
1
0/
4
0r
3
[
x
0
;u
0
=
(:
1
|
2
c1
+ :
2
|
2
1
)q
|
2
|
2
c1
:
1
0/
2
0r
4
[
x
0
;u
0
=
/
2
|
1
|
2
c1
|
2
:
1
0/
4
0r
4
[
x
0
;u
0
=
/
2
_
:
1
|
2
c1
+ :
2
|
2
1
_
|
2
2
|
2
c1
:
1
:
2
0/
2
0n
[
x
0
;u
0
=
1
|
2
c1
:
1
0/
4
0n
[
x
0
;u
0
=
|
1
|
2
c1
|
2
:
1
Sustituyendo ahora dichas derivadas, se llega nalmente a
/
2L
=
_
(m
1
l
c1
+m
2
l
1
)g
l
2
c1
m
1
_
(r
1
) +
_
b
1
l
2
c1
m
1
_
r
2
+
_
m
2
l
1
g
l
2
c1
m
1
_
(r
3
) + (2.31)
+
_
b
2
l
1
l
2
c1
l
2
m
1
_
r
4
+
_
1
l
2
c1
m
1
_
n
/
4L
=
_
gl
1
(m
1
l
c1
+m
2
l
1
)
l
2
l
2
c1
m
1
_
(r
1
) +
_
b
1
l
1
l
2
c1
l
2
m
1
_
r
2
+
_
(m
1
l
2
c1
+m
2
l
2
1
)g
l
2
l
2
c1
m
1
_
(r
3
) + (2.32)
+
_
b
2(m
1
l
2
c1
+m
2
l
2
1
)
l
2
2
l
2
c1
m
1
m
2
_
r
4
+
_
l
1
l
2
c1
l
2
m
1
_
n
18
Si ahora se denen cuatro nuevas variables como sigue
~ r
1
= r
1

~ r
2
= r
2
~ r
3
= r
3

~ r
4
= r
4
y se sustituyen en las ecuaciones (2.31) y (2.32) se tendr entonces la siguiente representacin
/
2L
=
_
(m
1
l
c1
+m
2
l
1
)g
l
2
c1
m
1
_
~ r
1
+
_
b
1
l
2
c1
m
1
_
~ r
2
+
_
m
2
l
1
g
l
2
c1
m
1
_
~ r
3
+ (2.33)
+
_
b
2
l
1
l
2
c1
l
2
m
1
_
~ r
4
+
_
1
l
2
c1
m
1
_
n
/
4L
=
_
gl
1
(m
1
l
c1
+m
2
l
1
)
l
2
l
2
c1
m
1
_
~ r
1
+
_
b
1
l
1
l
2
c1
l
2
m
1
_
~ r
2
+
_
(m
1
l
2
c1
+m
2
l
2
1
)g
l
2
l
2
c1
m
1
_
~ r
3
+ (2.34)
+
_
b
2(m
1
l
2
c1
+m
2
l
2
1
)
l
2
2
l
2
c1
m
1
m
2
_
~ r
4
+
_
l
1
l
2
c1
l
2
m
1
_
n
Considerando la ecuacin (2.25), reagrupando trminos y teniendo en consideracin que
~ r
2
= r
2
stas ltimas ecuaciones se convierten en
/
2L
=
_
(m
1
l
c1
+m
2
l
1
)g
l
2
c1
m
1
_
~ r
1
+
_
Rb
1
kak
b
l
2
c1
m
1
R
_
~ r
2
+
_
m
2
l
1
g
l
2
c1
m
1
_
~ r
3
+ (2.35)
+
_
b
2
l
1
l
2
c1
l
2
m
1
_
~ r
4
+
_
ka
l
2
c1
m
1
R
_
~ n
/
4L
=
_
gl
1
(m
1
l
c1
+m
2
l
1
)
l
2
l
2
c1
m
1
_
~ r
1
+
_
Rb
1
l
1
+l
1
kak
b
l
2
c1
l
2
m
1
R
_
~ r
2
+
_
(m
1
l
2
c1
+m
2
l
2
1
)g
l
2
l
2
c1
m
1
_
~ r
3
+ (2.36)
+
_
b
2(m
1
l
2
c1
+m
2
l
2
1
)
l
2
2
l
2
c1
m
1
m
2
_
~ r
4
+
_
l
1
ka
l
2
c1
l
2
m
1
R
_
~ n
Con esto se obtiene el modelo linealizado del sistema pndulo doble teniendo como entrada
el voltaje aplicado al motor y no el torque como se deni al inicio de este desarrollo.
Ahora la ecuacin (2.28) para este nuevo sistema de ecuaciones queda denida de la siguiente
manera:

~ r = ~ r + 1~ n
donde
=
_

_
0 1 0 0
(m
1
l
c1
+m
2
l
1
)g
l
2
c1
m
1
Rb
1
kak
b
l
2
c1
m
1
R
m
2
l
1
g
l
2
c1
m
1
b
2
l
1
l
2
c1
l
2
m
1
0 0 0 1
gl
1
(m
1
l
c1
+m
2
l
1
)
l
2
l
2
c1
m
1
Rb
1
l
1
+l
1
kak
b
l
2
c1
l
2
m
1
R
(m
1
l
2
c1
+m
2
l
2
1
)g
l
2
l
2
c1
m
1
b
2(m
1
l
2
c1
+m
2
l
2
1
)
l
2
2
l
2
c1
m
1
m
2
_

_
19
1 =
_

_
0
Ka
l
2
c1
m
1
R
0
l
1
ka
l
2
c1
l
2
m
1
R
_

_
El modelo de estados propiamente dicho, no considera cules seales o variables del proceso
son las que se pueden medir. Esta informacin viene dada por medio de la ecuacin de salida. Como
las posiciones angulares de ambos eslabones son las nicas variables de las que se tendr informacin
continua (registros que se realizan con ayuda de dos decodicadores de posicin o encoders), stas
son las nicas salidas del sistema, por lo tanto la ecuacin de salida resulta ser
j = C~ r
con la matrz C dada por
C =
_
_
1 0 0 0
0 0 1 0
_
_
Con esto la descripcin lineal en variables de estado se reduce a

~ r = ~ r + 1~ n (2.37)
j = C~ r
Este modelo linealizado servir posteriormente para el diseo del sistema de control para el
pndulo doble.
20
Captulo 3
Fabricacin del sistema Pndulo Doble
y validacin del modelado
En este captulo se presenta el diseo propuesto para la fabricacin del mecanismo pndulo
doble. Se describe el proceso realizado para la obtencin de los parmetros de diseo, los cuales estn
basados en resultados obtenidos de la simulacin del modelo matemtico del sistema en MATLAB
R
.
Se mencionan tambin los procesos de manufactura elegidos para la fabricacin del mecanismo.
Finalmente, con el propsito de validar el modelo matemtico obtenido en el captulo 2, se confrontan
los datos generados a partir de la simulacin del modelo matemtico con los datos experimentales
obtenidos de diversas pruebas realizadas al mecanismo contrudo.
3.1. Construccin del mecanismo
Uno de los objetivos de este trabajo es construir el mecanismo pndulo doble, para cumplir
con este objetivo es necesario, en principio, realizar el diseo mecnico de los componentes del sistema
para posteriormente dar paso a la manufactura de las piezas diseadas. El diseo y fabricacin de los
eslabones que conforman al pndulo doble es una parte fundamental para el diseo del mecanismo,
sin embargo, no es lo nico indispensable, tambin es necesario disear y fabricar la base donde ser
montado el sistema. En esta seccin se presenta el proceso realizado para el diseo y fabricacin de
estos dos elementos. A continuacin se describe a detalle el procedimiento empleado para el diseo y
fabricacin de los eslabones del pndulo doble y enseguida se presenta lo correspondiente a la base
del sistema.
21
3.1.1. Eslabones
El diseo mecnico de los eslabones est basado en un proceso iterativo. El objetivo de
este proceso es determinar las magnitudes de ciertos parmetros de las piezas a disear que puedan
satisfacer un criterio de seleccin. Bajo este esquema se parte de un diseo preliminar hecho a partir
de los requerimientos mecnicos de las piezas, los parmetros de este primer diseo son los que se
evalan repetidamente hasta determinar los que cumplan con el criterio de seleccin. Para este caso
los parmetros de inters son la longitud, la ubicacin del centro de masa y la masa de los eslabones,
el criterio de discriminacin es referente a las capacidades de potencia del actuador del sistema, y
la evaluacin de los parmetros propuestos se hace a travs de la simulacin del modelo matemtico
que los considera.
Diseo mecnico preliminar
El diseo mecnico deber cumplir los siguientes requerimientos:
Eslabones con dimensiones apropiadas para una mesa de laboratorio
Bajo peso
Centros de masa ubicados preferentemente en los extremos opuestos de los ejes de giro (el
propsito de esto es cumplir con la suposicin del modelado)
Primer eslabn sucientemente robusto para sostener al segundo sin presentar exiones o de-
formaciones
Geometra simple de fcil manufactura.
Con base en estas especicaciones se hizo mediante un programa CAD el diseo preliminar
de los eslabones. El programa CAD usado en este diseo fue UNIGRAPHICS NX3 cuyo uso adems
de facilitar la elaboracin del diseo mismo, permiti generar un prototipo virtual de las piezas, con
lo cual fue posible descartar errores de diseo como por ejemplo interferencias entre eslabones. Otro
punto a destacar acerca de la utilidad de usar un programa CAD en esta tarea es que ste facilit en
gran medida el desarrollo de la etapa de Proposici on, que es la siguiente etapa en este proceso de
seleccin de parmetros.
22
Proposicin
En esta etapa se proponen las longitudes, masas y ubicacin de los centros de masa de
ambas piezas. En realidad, como la geometra del diseo preliminar es invariable, el nico parmetro
a proponer es la longitud total de los eslabones (l
1
y l
2T
); un cambio en las longitudes implica la
modicacin del volumen del eslabn y por consiguiente un cambio en su masa y en su centro de
masa. Con esto, al proponer un valor para la longitud del eslabn, las dems magnitudes afectadas
por tal cambio se obtuvieron del programa CAD, de esta manera fue posible generar ecientemente
las distintas versiones a evaluar del diseo preliminar.
Una vez obtenidos los parmetros a evaluar (propuestos y calculados) se sustituyeron stos
en las ecuaciones (2.21) y (2.23) para obtener el correpondiente modelo matemtico. Ya con el modelo
matemtico denido, fue posible comenzar la etapa de Selecci on.
Seleccin
En la etapa de Seleci on se evalu el modelo matemtico mediante su simulacin y se aplic
el criterio de seleccin. As, si el modelo evaluado no satisfaca dicho criterio se regresaba a la etapa de
Proposici on para comenzar otra vez con nuevos parmetros, por el contrario, si el modelo propuesto
cumpla con el criterio de seleccin se consideraba para una nueva discriminacin. Debido a que varias
combinaciones de parmetros cumplieron con el primer criterio de seleccin, fue necesario elegir de
entre estas conguraciones la que mejor se adecu a los requerimientos de voltaje del actuador,
ponderando adems el objetivo inicial de contar con eslabones de dimensiones reducidas, acordes
a las dimensiones de una mesa de laboratorio. As, una vez que se eligieron los parmetros de los
eslabones fue posible comenzar con la etapa de Fabricaci on.
Cabe destacar que el criterio de discriminacin entre diseos fue el voltaje de entrada al
motor, pues se busc que para determinadas condiciones iniciales de los estados ste no excediera de 24
volts, que es el voltaje nominal del actuador del sistema. Por otro lado, las simulaciones realizadas en
esta etapa para la evaluacin de los distintos modelos propuestos se hicieron mediante el programa
SIMULINK
R
de MATLAB
R
. Este paquete permite simular el sistema de inters por medio de
diagramas de bloques, sin necesidad de programar el algoritmo de integracin. Ms adelante, en el
captulo 4 se dar ms detalle del diagrama de bloques utilizado para este proceso de seleccin.
23
Fabricacin
En esta estapa se realizaron los planos de fabricacin de ambos eslabones y se eligi el
proceso de manufactura con el cual se fabricaron las piezas. Esta fue la ltima etapa del proceso de
diseo llevado a cabo para fabricar los eslabones y concluye con la manufactura de las piezas.
Los planos de fabricacin de las piezas diseadas a travs de este proceso iterativo se pre-
sentan en el Apndice D del presente trabajo.
En cuanto a la manufactura de las piezas es importante destacar que la eleccin de los
procesos de manufactura mediante los cuales se fabrican las piezas se hace con base en las especica-
ciones dimensionales, la precisin dimensional y el acabado supercial de la pieza. Para el caso de los
eslabones los procesos de manufactura elegidos son dos procesos de corte: el fresado y el torneado.
El material que se eligi para fabricar el eslabn 1 del pndulo doble fue Nylamid tipo M.
Se eligi este material principalmente por su baja densidad y por su alta maquinabilidad, adems de
que en general presenta buenas propiedades mecnicas. El proceso utilizado para la manufactura de
este eslabn fue el fresado, se utiliz un equipo de control numrico para el maquinado de la pieza,
con lo cual se fabric una pieza con excelente precisin dimensional.
En el caso del eslabn 2, la necesidad de concentrar la mayor parte de la masa de dicho
componente en el extremo contrario a su eje de giro oblig a fabricar un eslabn compuesto por
piezas de distinto material. Como puede verse en la Figura 3.1, son tres piezas las que integran este
componente del pndulo doble, las piezas 1 y 2 conforman el cuerpo del eslabn y fueron fabricadas de
Nylamid tipo M y Aluminio, respectivamente. Se eligieron estos materiales debido a su baja densidad
y su buena resistencia a la exin, pues se busc que dichas piezas contribuyeran con menos del 30 %
de la masa total del eslabn para que la mayora se concentrara en el extremo opuesto y que adems
fueran capaces de no deformarse ni exionarse durante el movimiento del pndulo doble. La pieza
nmero 3 es un pequeo cilindro fabricado en acero al carbono (Acero 1015) que se monta sobre el
cuerpo del eslabn y que concentra en s mismo el 73 % de la masa total del eslabn. Se eligi acero
1015 para fabricar esta ltima pieza bsicamente por su alta densidad, porque un objetivo primordial
para este elemento era concentrar tal cantidad de masa en un volumen adecuado para mantener las
dimensiones de la pieza en proporcin con el resto de los componentes del eslabn, y as mantener
una esttica agradable, esto sin dejar de lado su principal funcin que es ubicar el centro de masa del
eslabn 2 en la posicin deseada. La fabricacin de estas piezas se realiz mediante dos procesos de
manufactura: fresado y torneado. El proceso de fresado se utiliz para la pieza marcada con el nmero
1 en la Figura 3.1 y la pieza nmero 3 se fabric mediante torneado. Debido a que las geometras de
24
las piezas mencionadas estn basadas en guras geomtricas simples se utilizaron para su fabricacin
maquinas herramienta convencionales. Para la fabricacin de la pieza nmero 2 se utiliz un tubo de
Aluminio de dimensiones comerciales (6.35 [mm] de dimetro y espesor de pared de 0.635 [mm]) que
simplemente se adecu a las dimensiones especicas del diseo.
En la Figura 3.1 se muestra el diseo nal de los dos eslabones que conforman el pndulo
doble, y en las Figuras 3.2 y 3.3 se muestran las fotografas de los eslabones fabricados.
Parmetros nales
Los parmetros del diseo mecnico de los eslabones que se obtuvieron despus del pro-
ceso de simulacin y manufactura descrito en esta seccin son los siguietes: l
1
= 0.15[m]; l
c1
=
0.113[m]; m
1
= 0.065[kg]; l
2
= 0.173[m]; l
2T
= 0.235[m] ,m
2
= 0.025[kg].
Figura 3.1: Diseo de los eslabones que conforman el sistema pndulo doble.
25
Figura 3.2: Fotografa - eslabn 1.
Figura 3.3: Fotografa - eslabn 2.
26
3.1.2. Base
Otro punto importante en cuanto a la construccin del mecanismo pndulo doble es el
diseo y fabricacin de la base donde debe montarse el pndulo y el actuador del sistema. El diseo
de este componente no se basa en un proceso iterativo como fue el caso de los eslabones, pues en
este componente no se tiene la necesidad de cumplir con un parmetro invariable como sucedi con
el voltaje nominal del actuador del sistema en la seccin anterior. Por lo cual, el diseo mecnico de
la base se hace considerando nicamente los requerimienos mecnicos del componente; as, una vez
satisfechos tales requerimientos se fabrican las piezas que conforman la base del mecanismo.
Diseo mecnico
Para realizar el diseo mecnico de la base se tomaron en cuenta los siguientes requerim-
ientos:
Base robusta capaz de no presentar desplazamientos por la accin del movimiento del pndulo
doble
Geometras simples de fcil manufactura
Pocos componentes y fcil ensamble.
Con base en estos requerimientos se disearon cuatro componentes, los cuales son fcilmente
ensamblados mediante once tornillos, como se muestra en la Figura 3.4.
Fabricacin
El material del que se fabricaron los componentes de la base fue Nylamid tipo M a excepcin
de la pieza donde se monta el actuador del sistema, que fue fabricado de Aluminio, esto se hizo con
un objetivo estrictamente esttico, pues se busc tener en esta pieza un acabado similar al pulido
espejo. Las piezas de la base se fabricaron mediante operaciones de fresado y torneado. Debido a que
las geometras de estas piezas no son complejas, no fue necesario usar mquinas de control numrico
pues con mquinas herramienta convencionales fue posible maquinar piezas de muy buena calidad.
En la Figura 3.4 se muestra un esquema de los componentes de la base del sistema pndulo
doble y en la Figura 3.5 se presenta una fotografa de la base que se fabric.
Los planos de fabricacin de los componentes diseados para la base del sistema pndulo
doble se muestran en el Apndice D de este trabajo.
27
Figura 3.4: Dibujo isomtrico y ensamble en explosin de la base del sistema pndulo doble.
Figura 3.5: Fotografa - base del sistema pndulo doble.
28
En la Figura 3.6 se muestra un dibujo del sistema pndulo doble diseado en esta seccin
y en las Figuras 3.7 y 3.8 se presentan dos fotografas del mecanismo construido.
Figura 3.6: Dibujo isomtrico del sistema pndulo doble.
29
Figura 3.7: Fotografa - vista frontal del sistema pndulo doble.
Figura 3.8: Fotografa - vista lateral del sistema pndulo doble.
30
3.2. Validacin del modelo matemtico
En el captulo 2 se obtuvieron las ecuaciones dinmicas que modelan el sistema pndulo
doble, en esta seccin se comprobar que dichas ecuaciones son representativas del comportamiento
real del sistema.
La validacin de un modelo matemtico consiste en vericar que los datos obtenidos a
partir de ste sean semejantes a los datos obtenidos del sistema real. El objetivo es vericar que el
modelo matemtico predice de manera adecuada el comportamiento real del sistema. Tal vericacin
es importante porque si sta es positiva se tendrn mayores posibilidades de que los controladores
que se desarrollen a nivel simulacin sean exitosos al momento de ser implementados en forma fsica.
Para este caso la validacin del modelo matemtico se realizar mediante la comparacin de dos
conjuntos de datos, el primer conjunto es formado por los datos obtenidos de la simulacin del
modelo matemtico y en el segundo conjunto se tienen datos experimentales obtenidos a partir de
pruebas realizadas al modelo fsico del sistema. Estos ltimos fungen como una referencia, as, si los
datos del modelo son semejantes a los datos experimentales se puede tener plena conanza en que el
modelo matemtico es capaz de reproducir el comportamiento que presentara el sistema real.
Para el caso bajo estudio, los datos experimentales del movimiento se obtendrn de una
prueba aplicada al sistema que se ha construido. La prueba consiste en dejar evolucionar al sistema
en respuesta libre, es decir, jar los eslabones en una determinada posicin inicial y posteriormente
liberar al sistema de dicha posicin, el objetivo es medir las posiciones angulares que los eslabones
van describiendo desde la posicin inicial hasta que el sistema alcanza el reposo. Las condiciones de
inicializacin para esta prueba son:
1
= 30

(0.5236[rad]) y
2
= 0

(Ver Figura 3.9). La medicin


de la posicin angular de los eslabones se realiza mediante dos decodicadores (encoder) de tipo
incremental de 1200 pulsos por revolucin, con lo cual se tiene una resolucin de 0.3

. Finalmente,
es importante destacar que la adquisicin de datos se hace con un tiempo de muestreo de 5 [ms].
Por otro lado, las predicciones del modelo matemtico se obtienen a partir de la simulacin
del modelo en SIMULINK
R
. Se simula el modelo no lineal del sistema bajo las mismas condiciones
iniciales que se jaron para la prueba real y se almacenan los datos correspondientes a las posiciones
angulares de los dos eslabones. Estos datos son gracados con respecto al tiempo y se comparan con
las curvas generadas a partir de los datos obtenidos con el experimento sobre el sistema fsico antes
descrito.
31
Figura 3.9: Posicin de los eslabones para la prueba de adquisin de datos experimentales. a) Posicin
inicial del sistema
1
= 30

;
2
= 0: b) Posicin nal del sistema
1
= 0;
2
= 0:
0 5 10 15
-0.3
-0.2
-0.1
0
0.1
0.2
0.3
0.4
0.5
0.6
s
r
a
d
Datos experi mental es
Model o matemti co
Figura 3.10: Evolucin de la posicin angular del eslabn 1 (
1
):
32
0 5 10 15
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
s
r
a
d
Datos Experi mental es
Model o matemti co
Figura 3.11: Evolucin de la posicin angular del eslabn 2 (
2
):
En las Figuras 3.10 y 3.11 se puede apreciar la comparacin de los resultados de las pruebas
descritas. En la Figura 3.10 se comparan los resultados obtenidos para
1
y en la Figura 3.11 para

2
. Para ambas grcas se puede separar la respuesta del sistema en dos perodos, un perodo inicial
de respuesta transitoria que comprende los primeros tres segundos del movimiento, y otro perodo
nal denominado de estado permanente que se inicia despus de los tres segundos iniciales y termina
hasta que el ngulo toma un valor constante, en este caso 0

.
Para analizar las similitudes y diferencias de las gracas experimental y terica es necesario
comparar dos magnitudes bsicas de dichas curvas: la amplitud y el perodo de oscilacin.
En general, la amplitud de una curva indica la magnitud que existe entre el punto de
equilibrio y el valor mximo de cresta o el valor mnimo de valle. Para este caso, la amplitud muestra
las posiciones angulares que los eslabones van describiendo a lo largo del movimiento. El conocer
estas posiciones angulares permite observar la prdida de energa que presenta el sistema conforme
transcurre el movimiento. Es importante recordar que el punto de equilibrio es 0 [rad], ya que es la
posicin naturalmente estable del sistema.
Como se observa en las Figuras 3.10 y 3.11, la amplitud de la curva experimental y la curva
terica para las posiciones angulares de ambos eslabones son prctiamente las mismas en la parte
inicial del movimiento, esto indica que el modelo matemtico simula el desarrollo inicial del sistema
de manera adecuada. Tambin se observa que conforme evoluciona el sistema, la amplitud de la curva
33
experimental disminuye gradualmente, lo cual muestra que la energa del sistema se va perdiendo
debido a efectos disipativos; al observar la curva terica durante el perodo inicial es posible notar que
el modelo matemtico es capaz de reproducir adecuadamente esta prdida de energa manteniendo
en el mismo orden de magnitud la amplitud de la curva terica. Sin embargo, despus de los primeros
tres segundos la amplitud de la curva experimental decrece ms rpido que la curva terica, esto
evidenca que el sistema real pierde mayor energa en cada instante que lo predicho por el modelo
matemtico concluyendo el movimiento del sistema real en menor tiempo.
Las diferencias entre las curvas experimentales y tericas antes descritas, muestran que en
el modelo fsico del sistema existen trminos disipativos que no se contemplan en el modelado. Se
tiene la hiptesis de que la diferencia entre los resultados experimentales y los de la simulacin es
debida al efecto combinado de trminos de friccin inherentes a los componentes del sistema, como es
el caso del actuador que presenta trminos de friccin de coulomb. Estos parmetros de friccin que
intervienen en el sistema no siempre son sencillos de determinar y es por esto que en este trabajo se
ha simplicado su comportamiento con el n de facilitar su anlisis e implementacin en simulacin.
El perodo de oscilacin de una curva es el tiempo transcurrido entre dos crestas o valles
sucesivos. Del anlisis del perodo de oscilacin hecho para las curvas del movimiento del pndulo
doble se observ que el perodo de oscilacin es variable durante todo el movimiento, lo cual es muestra
de la naturaleza no lineal del sistema. Para el caso de la posicin angular experimental del primer
eslabn (Figura 3.10), se determin que durante los tres segundos iniciales la respuesta del sistema
consta de cuatro oscilaciones cuyos perodos de oscilacin aumentan y disminuyen alternativamente
como se presenta en la tabla siguiente (donde se muestran los perodos de oscilacin presentes en el
movimiento de ambos eslabones durante el perodo inicial). Despus de los tres segundos iniciales, el
perodo de oscilacin tiende a incrementarse ligeramente, mantenindose entre 1.0007[s] y 1.098[s].
En el caso del segundo eslabn (Figura 3.11), se observa que al inicio del movimiento la respuesta
del sistema tiene tres oscilaciones, al igual que lo observado en el primer eslabn en este segundo
se presenta un incremento y decremento alternante del perodo de oscilacin. A partir de los tres
primeros segundos del desarrollo del sistema, se tiene un continuo aumento del perodo de oscilacin
que se mantiene entre 1.088[s] y 1.098[s], posteriormente, el perodo de oscilacin tiende a disminuir,
registrndose al nal del movimiento el perodo de oscilacin mnimo que es de 0.876 [s]
34
Oscilacin Perodo de oscilacin del eslabn1 [s] Perodo de oscilacin del eslabn2 [s]
1 0.4983 1.075
2 0.6471 1.124
3 0.4544 1.088
4 0.9810 -
La importancia de estos resultados radica en que al compararlos con los resultados obtenidos
a partir del anlisis hecho a las curvas tericas, se encuentran similitudes muy importantes en la
magnitud del perodo de oscilacin, sobre todo al inicio del movimiento. Para ejemplicar lo antes
expuesto, se presentan a continuacin dos tablas que muestran los perodos de oscilacin correspon-
dientes a las oscilaciones presentes al inicio del movimiento.
Eslabn1
Oscilacin Perodo de oscilacin experimental [s] Perodo de oscilacin terico[s]
1 0.4983 0.4933
2 0.6471 0.6399
3 0.4544 0.4440
4 0.9810 0.8998
Eslabn 2
Oscilacin Perodo de oscilacin experimental [s] Perodo de oscilacin terico[s]
1 1.075 1.087
2 1.124 1.115
3 1.088 1.055
Como puede verse en las tablas mostradas, las magnitudes del perodo de oscilacin al inicio
del movimiento son prcticamente iguales para ambas curvas (experimental y terica), lo cual, aunado
a la evidente similitud en cuanto a la amplitud existente entre las curvas terica y experimental (para
ambos eslabones) demuestra que durante el perodo inicial el modelo matemtico no slo reproduce
las posiciones angulares que describe el sistema real, sino que tambin es capaz de reproducir el tiempo
en que stas suceden. Cabe sealar, que despus de los primeros tres segundos del movimiento, los
perodos de oscilacin de la curva terica no son tan parecidos a los de la respuesta experimental,
presentando en general la respuesta terica perodos de oscilacin menores a los reales. Sin embargo,
las tendencias del aumento y decremento del perodo de oscilacin que se manifestaron en el anlisis
del movimiento experimental se mantienen presentes en el modelo terico, lo cual es indicativo de un
comportamiento aceptable.
Se ha observado hasta aqu que despus de los tres segundos iniciales, la respuesta terica
del sistema no predice muy bien la respuesta real. Sin embargo, este hecho no es tan relevante si se
35
considera que en realidad durante el control del pndulo en su posicin vertical hacia arriba, nunca
se llegar a un estado permanente, sino que se estarn corrigiendo los pequeos errores que lleguen a
existir, es decir, el sistema va a estar siempre en movimiento, por lo cual el hecho de que la respuesta
al inicio se parezca a la real permite la hiptesis de que el control que se construya con base en ese
modelo funcionar correctamente.
Se concluye que, si bien el comportamiento que exhibe el modelo matemtico no es idntico
al comportamiento experimental a lo largo de todo el movimiento, s es posible comprobar con base en
el anlisis de las amplitudes y perodos de oscilacin hecho a las respuestas experimentales y tericas,
que el modelo matemtico no lineal desarrollado en el captulo 2 es representativo del sistema real
y por tanto capaz de reproducir adecuadamente la evolucin del movimiento del sistema pndulo
doble.
36
Captulo 4
Control
En el captulo 2 (seccin 2.3) se obtuvo el modelo lineal del sistema pndulo doble, el cual
puesto en su representacin de variables de estado permitir en este captulo disear el controlador
del sistema mediante la tcnica de asignacin de polos. Este captulo comienza con la descripcin
del mtodo de diseo utilizado, para posteriormente aplicarse al sistema pndulo doble. Enseguida
se presenta el diseo de un estimador (observador) de todas las variables de estado del sistema.
Con la nalidad de analizar la validez del sistema de control, se compara el comportamiento del
controlador cuando se implementa en conjunto con el modelo no lineal del sistema con respesto
al comportamiento que presenta ste cuando funciona con el modelo lineal, esto se hace con base
en la simulacin de ambos modelos bajo el esquema de retroalimentacin de estados. Finalmente,
se presentan y describen los diagramas de bloques en SIMULINK
R
que han sido utilizados para
cumplir con determinados propsitos en este y en el anterior captulo.
4.1. Asignacin de Polos
Una de las caractersticas importantes en un sistema dinmico es el tipo de respuesta transi-
toria que ste posee, la cual depende fundamentalmente de los polos del sistema (los polos del sistema
son los puntos, en el plano s, donde la funcin de transferencia del sistema tiende a innito; cuando se
trabaja con el modelo de variables de estado, los polos del sistema son los valores propios de la matriz
de la ecuacin de estados). Cuando la respuesta no es adecuada de acuerdo a ciertos requerimien-
tos (estabilidad, desempeo, etc.), la dinmica del sistema puede modicarse, por ejemplo, mediante
una retroalimentacin de los estados a travs de una matriz de ganancias de retroalimentacin. La
37
tcnica de asignacin de polos permite colocar los polos de ese sistema retroalimentado (polos en lazo
cerrado) en cualquier posicin deseada.
Para poder aplicar esta tcnica es necesario vericar que el sistema es controlable. Considere
un sistema dinmico lineal e invariante en el tiempo con una sola entrada como el mostrado a
continuacin,
_ r = r +1n (4.1)
j = Cr +1n (4.2)
donde r ) vector de estados (vector de dimensin :)
j ) vector de salidas (vector de dimensin j)
n ) seal de entrada (seal de control de dimensin : = 1)
) matriz de coecientes constantes, 2 R
n x n
1 ) matriz de coecientes constantes, 1 2 R
n x m
C ) matriz de coecientes constantes, C 2 R
p x n
1 ) matriz de coecientes constantes, 1 2 R
p x m
Es posible demostrar que el sistema es controlable si y slo si cumple con la condicin
ra:qo[1
.
.
. 1
.
.
.
.
.
.
n1
1] = :
La matriz [1
.
.
. 1
.
.
.
.
.
.
n1
1] se denomina matriz de controlabilidad, por
lo tanto, si la matriz de controlabilidad es de rango :, el sistema es controlable y es posible asignar
arbitrariamente los polos en lazo cerrado del sistema.
La tcnica de diseo empieza con la determinacin de los polos en lazo cerrado a partir de
la respuesta transitoria deseada y de los requisitos en estado permanente. Seleccionando una matriz
de ganancias apropiada para la retroalimentacin de los estados, es posible situar los polos en lazo
cerrado en las posiciones deseadas.
Bajo este esquema de control, la seal de control se selecciona como n = 1r, esto signica
que la seal de control se determina mediante un estado instantneo. Tal conguracin se denomina
retroalimentacin de estados, Figura 4.1. El trmino 1 en la seal de control representa una matriz
de coecientes constantes la cual depende de los polos en lazo cerrado asignados al sistema. As, el
desempeo del sistema retroalimentado depender de la ubicacin (en el plano :) dada a los polos
en lazo cerrado y de contar con mediciones de todas las variables de estado.
38
La eleccin de una seal de control como n = 1r modica la ecuacin del sistema a
_ r = (11)r
la cual, si se dene a

= 11
queda como
_ r =

r
Figura 4.1: Diagrama de bloques del sistema de control en lazo cerrado con n = 1r.
El esquema de retroalimentacin de estados requiere que se tengan mediciones de todas las
variables de estado, es decir, requiere que el vector de estados sea conocido por completo. Cuando
este vector no se puede medir completamente en el sistema real, las variables de estado faltantes
pueden ser estimadas por algoritmos adicionales llamados observadores, los cuales se describirn
posteriormente. Por ahora se asume que, en principio, todas las variables de estado son medibles
39
y conocidas. Entonces, el diseo del control consiste en determinar los coecientes de la matriz
de retroalimentacin 1 de tal manera que los polos en lazo cerrado del sistema retroalimentado,
_ r = ( 11)r, se ubiquen en puntos especcos del semiplano izquierdo del plano s, o dicho en
otras palabras, consiste en determinar los coecientes de la matriz de retroalimentacin 1 de tal
manera los valores propios de la matriz 11 se ubiquen en puntos especcos del semiplano
izquierdo del plano s.
4.1.1. Frmula de Ackerman
Existe un mtodo muy difundido para la determinacin de los coecientes de la matriz de
retroalimentacin 1, conocido como frmula de Ackerman. Este mtodo es ampliamente utilizado
porque puede ser fcilmente programado, reduciendo as el tiempo de diseo del controlador. Sin
embargo, presenta un inconveniente que limita su uso: slo puede ser aplicado a sistemas con una
sola entrada. Es importante destacar que la frmula de Ackerman no es el nico mtodo existente
para el clculo de la matriz 1, pero su algoritmo de clculo es relativamente ms sencillo que el de
otros mtodos.
Para el caso del sistema pndulo doble, la frmula de Ackerman puede ser perfectamente
aplicada, pues el sistema tiene una sola entrada y es controlable, por lo tanto, a continuacin se
obtiene la frmula de Ackerman para un sistema con cuatro variables de estado (: = 4).
Considrese el modelo de estados descrito por la ecuacin (4.1), suponga tambin que ste
es controlable y que los polos en lazo cerrado deseados se localizan en : = j
1
, : = j
2
, : = j
3
y
: = j
4
.
Recordando que debido a la seal de control la ecuacin del sistema se modica a
_ r =

r
la ecuacin caracterstica deseada ser
j :1

j=j :1 +11 j= (: j
1
)(: j
2
)(: j
3
)(: j
4
)
= :
4
+c
1
:
3
+c
2
:
2
+c
3
: +c
4
= 0
Ahora, tomando en cuenta el teorema de Cayley-Hamilton, el cual expresa que una matriz
cuadrada 1 de dimension r satisface su propia ecuacin caracterstica o bien, que 1
r
+ a
1
1
r1
+
. . . +a
r1
1 +a
r
1 = 0, se tiene que
40
c(

) =

4
+c
1

3
+c
2

2
+c
3

+c
4
1 = 0 (4.3)
Considerando las siguientes identidades:
1 = 1

= 11

2
= (11)
2
=
2
11 11

3
= (11)
3
=
3

2
11 11

11

4
= (11)
4
=
4

3
11
2
11

11

2
11

3
La ecuacin (4.3) queda como sigue
c(

) = c
4
1 +c
3

+c
2

2
+c
1

3
+

4
(4.4)
c(

) = c
4
1 +c
3
(11) +c
2
(
2
11 11

) +c
1
(
3

2
11 11

11

2
) +
+(
4

3
11
2
11

11

2
11

3
)
c(

) = c
4
1 +c
3
+c
2

2
+c
1

3
+
4
c
3
11 c
1
11

2
11

3
c
2
11

c
2
11
c
1
11

11

2
c
1

2
11
2
11

3
11
Tomando en cuanta nuevamente la ecuacin (4.3) ahora para la matriz , se tiene
c() = c
4
1 +c
3
+c
2

2
+c
1

3
+
4
6= 0
Sustituyendo esta ltima ecuacin en la ecuacin (4.4), se obtiene
c(

) = c() c
3
11 c
1
11

2
11

3
c
2
11

c
2
11
c
1
11

11

2
c
1

2
11
2
11

3
11
Como c(

) = 0, se tiene entonces
41
c() = 1(c
3
1 +c
1
1

2
+c
2
1

+1

3
) +1(c
2
1 +c
1
1

+1

2
) +
+
2
1(c
1
1 +1

) +
3
1(1)
c() = [1
.
.
. 1
.
.
.
2
1
.
.
.
3
1]
2
6
6
6
6
6
6
4
c
3
1 +c
1
1

2
+c
2
1

+1

3
c
2
1 +c
1
1

+1

2
c
1
1 +1

1
3
7
7
7
7
7
7
5
Como se puede observar la primera matrz de la ecuacin anterior corresponde a la matriz
de controlabilidad para : = 4, por lo tanto, como el sistema es controlable la inversa de la matriz
de controlabilidad [1
.
.
. 1
.
.
.
2
1
.
.
.
3
1] existe. Entonces, si se premultiplican ambos lados de esta
ltima ecuacin por la inversa de la matriz de controlabilidad, se obtiene
[1
.
.
. 1
.
.
.
2
1
.
.
.
3
1]
1
c() =
2
6
6
6
6
6
6
4
c
3
1 +c
1
1

2
+c
2
1

+1

3
c
2
1 +c
1
1

+1

2
c
1
1 +1

1
3
7
7
7
7
7
7
5
Premultiplicando ahora ambos miembros de la ecuacin por [0 0 0 1], se llega a lo siguiente
[0 0 0 1][1
.
.
. 1
.
.
.
2
1
.
.
.
3
1]
1
c() = [0 0 0 1]
2
6
6
6
6
6
6
4
c
3
1 +c
1
1

2
+c
2
1

+1

3
c
2
1 +c
1
1

+1

2
c
1
1 +1

1
3
7
7
7
7
7
7
5
que puede reescribirse como
1 = [0 0 0 1][1
.
.
. 1
.
.
.
2
1
.
.
.
3
1]
1
c() (4.5)
Esta ltima ecuacin corresponde a la frmula de Ackerman para un sistema con cuatro
variables de estado (: = 4) y una sola entrada, la cual calcula la matriz de retroalimentacin del
estado 1 deseada.
Para cualquier entero positivo : la ecuacin (4.5) queda como sigue
1 = [0 0 0 1][1
.
.
. 1
.
.
.
.
.
.
n1
1]
1
c() (4.6)
42
La ecuacin (4.6) se conoce como frmula de Ackerman para la determinacin de la matriz
de ganancias de retroalimentacin del estado 1.
Aplicacin al sistema pndulo doble
El sistema pndulo doble est denido por el siguiente modelo en variables de estado (este
modelo se obtiene de la sustitucin de los parmetros de los eslabones, obtenidos en el captulo
anterior, en las ecuaciones (2.37); para mayores detalles a este respecto, se recomienda consultar el
Apndice A).

~ r =
2
6
6
6
6
6
6
4
0 1 0 0
130.7362 2.7302 44.1875 0.2089
0 0 0 1
113.3551 2.3672 94.8447 0.4485
3
7
7
7
7
7
7
5
~ r +
2
6
6
6
6
6
6
4
0
5.6522
0
4.9007
3
7
7
7
7
7
7
5
~ n
j =
2
4
1 0 0 0
0 0 1 0
3
5
~ r
Los polos en lazo cerrado del sistema se desea estn ubicados en :
1
= 5 +i, :
2
= 5 i, :
3
= 14,
:
4
= 15, (ya que son los valores que en la simulacin del sistema retroalimentado presentaron un
buen desempeo).
Considerando las siguientes identidades,
[1
.
.
. 1
.
.
.
2
1
.
.
.
3
1]
1
=
2
6
6
6
6
6
6
4
0.5924 0.7065 0.2524 0.6108
0.7037 0.0066 0.6055 0.0076
0.0099 0.0032 0.0125 0.0037
0.0031 0.000015 0.0036 0.000017
3
7
7
7
7
7
7
5
c() =
2
6
6
6
6
6
6
4
82598.55 5961.21 28146.97 1449.77
943685.93 62891.59 400914.68 26251.32
72205.92 2552.66 64012.95 6128.95
1028473.63 50728.35 694094.60 60731.06
3
7
7
7
7
7
7
5
es posible calcular la matriz 1 mediante la frmula de Ackerman, ecuacin (4.5). Con lo cual,
nalmente se obtiene la matriz de retroalimentacin
1 = [6.0425 9.4958 149.1708 18.2612] .
43
Esta ltima matriz coloca los polos en lazo cerrado del sistema en la posicin deseada del
plano :.
4.2. Observador de estados
En el mtodo de asignacin de polos para el diseo del sistema de control, se supuso que
todas las variables de estado estaban disponibles para su retroalimentacin. Sin embargo, en la
prctica es muy comn que no sea posible conocer todas las variables de estado, ya sea por el costo
de los sensores o porque stos no existen fsicamente. Entonces, se necesita estimar las variables
de estado que no estn disponibles. La estimacin de variables de estado no medibles se denomina
tambin observacin y el dispositivo o programa que realiza dicha funcin es nombrado observador de
estados. Un observador de estados reconstruye las variables no medibles basandose en la informacin
de las seales medibles de la planta (se nombra planta al dispositivo fsico que se busca controlar,
como la dinmica de dicho dispositivo es descrita por el modelo de estados (ecuacin 4.1), ste se
considera la planta del sistema).
El uso de los observadores de estado es siempre posible si y slo si el sistema es observable.
Un sistema como el descrito por las ecuaciones (4.1) y (4.2) es observable si la matriz (: x :j)
O =
2
6
6
6
6
6
6
4
C
C
.
.
.
C
n1
3
7
7
7
7
7
7
5
es de rango : o tiene : vectores linealmente independientes. Esta matriz ,O, se denomina matriz de
observabilidad.
A continuacin se describir brevemente un observador de orden completo, el cual estima
todas las variables de estado del sistema sin importar si algunas de ellas estn disponibles para su
medicin directa. En adelante se utilizar la notacin ^ r para designar el vector de estados observado.
El modelo matemtico del observador es bsicamente el mismo que el de la planta, salvo que
se incluye un trmino adicional que comprende el error de observacin, dicho error de observacin es
la diferencia entre la salida medida y la salida estimada. De esta forma se dene el modelo matemtico
del observador de estados como
44

^ r = ^ r +1n +1(j C^ r) (4.7)


= (1C)^ r +1n +1j
donde ^ r es el estado estimado y C^ r es la salida estimada. Las entradas al observador son la salida j
y la entrada o seal de control n, como se observa en la Figura 4.2. La matriz 1, que se llama matriz
de ganancias del observador, es una matriz de ponderacin al trmino de correccin que involucra
la diferencia entre la salida medida (j) y la salida estimada (C^ r). Este trmino corrige de forma
continua el estimado ^ r, por lo tanto, la matriz 1 desempea un papel muy importante en el diseo
del observador pues de sta depende el comportamiento dinmico del mismo, para analizar este hecho
es necesario conocer la ecuacin de error entre el estado medido y el estimado, la cual se presenta
enseguida.
Figura 4.2: Diagrama de bloques del sistema y del observador de estado de orden completo.
45
La ecuacin de error se obtiene al restar el modelo del observador (ecuacin (4.7)) al modelo
de estados del sistema, ecuacin (4.1), es decir,
_ r

^ r = r +1n ^ r 1n 1(Cr C^ r) (4.8)
= r ^ r 1(Cr C^ r)
= (1C)(r ^ r)
Se dene la diferencia entre r y ^ r como el vector de error c, o bien c = r ^ r. Entonces la
ecuacin (4.8) se convierte en
_ c = (1C)c (4.9)
A partir de esta ltima ecuacin se observa que el comportamiento dinmico del vector de
error est determinado por los valores propios de la matriz 1C. Si la matriz 1C es estable, el
vector de error converger a cero para cualquier vector de error inicial c(0). Es decir, ^ r(t) converger
a r(t) sin tomar en cuenta los valores de r(0) y ^ r(0). Si se eligen los valores propios de la matriz
1C de tal forma que el comportamiento dinmico del vector de error sea asintticamente estable y
sucientemente rpido, entoces cualquier vector de error tender a cero con una velocidad adecuada.
Si el sistema es observable, se puede demostrar que es posible seleccionar una matriz 1 tal
que la matriz 1C tenga los valores propios arbitrariamente deseados. As, el problema de disear
un observador de orden completo est en determinar la matriz de ganancias del observador 1 de
forma tal que la dinmica de error sea asintticamente estable con una velocidad de respuesta mayor
a la del sistema en lazo cerrado. Por lo tanto, el problema es el mismo que en el caso de asignacin de
polos para la obtencin de la matriz 1 de retroalimentacin de estados. Entonces, la matriz 1 puede
obtenerse usando las tcnicas existentes para el clculo de la matriz de retroalimentacin de estados,
considerando que ahora se resuelve el sistema descrito por las ecuaciones (4.10), denominado sistema
dual, suponiendo que la seal de control es = 1
obs
..
_ . =
T
. +C
T
(4.10)
n = 1
T
.
Por lo tanto, obteniendo la matriz de ganancias de retroalimentacin 1 para el sistema dual
es posible determinar la matriz de ganancias del observador a partir de la siguiente relacin
46
1 = 1
T
obs
Es importante destacar que los valores propios deseados para la matriz 1C son los polos
que se utilizan para el clculo de la matriz 1
obs
para el nuevo sistema (tales valores propios tambin
se nombran polos del observador) y que las matrices , 1 y C, son exactamente iguales a las de la
planta.
Como ya se mencion en el captulo 2, las variables de estado de las que se contar con
informacin continua son las posiciones angulares de ambos eslabones, es decir, las variables de
estado r
1
y r
3
, por lo tanto se consideran estas dos variables de estado como las salidas del sistema.
La importancia de este hecho es que, como se ha mencionado, la entrada al observador son las salidas
del sistema y la seal de control, es decir, el observador de estados contar con tres entradas, lo cual
imposibilita la aplicacin de la tcnica de Ackerman para la obtencin de la matriz de ganancias del
observador 1. Es por esta razn que para el clculo de la matriz 1 se utilizar un mtodo aplicable
a sistemas con ms de una entrada. Dicho mtodo se nombrar en este trabajo como C/c:' 11
en referencia al autor del libro de donde se tom este mtodo. A continuacin se presenta el mtodo
C/c:' 11 aplicado al sistema pndulo doble. Para ms detalles acerca del mtodo se recomienda
consultar [4] (p. 345).
El sistema pndulo doble est denido por el siguiente modelo en variables de estado

~ r =
2
6
6
6
6
6
6
4
0 1 0 0
130.7362 2.7302 44.1875 0.2089
0 0 0 1
113.3551 2.3672 94.8447 0.4485
3
7
7
7
7
7
7
5
~ r +
2
6
6
6
6
6
6
4
0
5.6522
0
4.9007
3
7
7
7
7
7
7
5
~ n
j =
2
4
1 0 0 0
0 0 1 0
3
5
~ r
A partir del modelo anterior se obtienen las matrices
n
y 1
n
como sigue

n
=
T
=
2
6
6
6
6
6
6
4
0 130.7362 0 113.3551
1 2.7302 0 2.3672
0 44.1875 0 94.8447
0 0.2089 1 0.4485
3
7
7
7
7
7
7
5
47
1
n
= C
T
=
2
6
6
6
6
6
6
4
1 0
0 0
0 1
0 0
3
7
7
7
7
7
7
5
Ahora, se toman la primer y segunda columna de la matriz 1
n
y se nombran dichos vectores
como /
n1
y /
n2
/
n1
=
2
6
6
6
6
6
6
4
1
0
0
0
3
7
7
7
7
7
7
5
; /
n2
=
2
6
6
6
6
6
6
4
0
0
1
0
3
7
7
7
7
7
7
5
con base en los vectores anteriores se construye ' como sigue
' = [/
n1

n
/
n1
/
n2

n
/
n2
]
' =
2
6
6
6
6
6
6
4
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1
3
7
7
7
7
7
7
5
Ahora, se denen los vectores '
2
y '
4
correspondientes al segundo y cuarto rengln de la
matriz ' para construir la matriz 1
'
2
=
h
0 1 0 0
i
'
4
=
h
0 0 0 1
i
1 =
2
6
6
6
6
6
6
4
'
2
'
2

n
'
4
'
4

n
3
7
7
7
7
7
7
5
=
2
6
6
6
6
6
6
4
0 1 0 0
1 2.7302 0 2.3672
0 0 0 1
0 0.2089 1 0.4485
3
7
7
7
7
7
7
5
Usando la matriz 1 se obtienen las matrices
T
y 1
T
48

T
= 1
n
1
1
=
2
6
6
6
6
6
6
4
0 1 0 0
130.7362 2.7302 113.3551 2.3672
0 0 0 1
44.1875 0.2089 94.8447 0.4485
3
7
7
7
7
7
7
5
1
T
= 11
n
=
2
6
6
6
6
6
6
4
0 0
1 0
0 0
0 1
3
7
7
7
7
7
7
5
Se dene ahora, la matriz 1
T
, la cual es una matriz de coecientes en pricipio desconocidos
1
T
=
2
4
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
3
5
Para conocer los coecientes de 1
T
es necesario obtener la matriz

Tobs
=
T
1
T
1
T
la cual, debe igualarse a
2
6
6
6
6
6
6
4
0 1 0 0
/ a 0 0
0 0 0 1
0 0 d c
3
7
7
7
7
7
7
5
donde a,/, c y d son los coecientes de los polinomios caractersticos obtenidos a partir de los valores
propios deseados para el observador. Para el caso bajo anlisis, se tienen dos pares de valores propios
(o polos del observador), con cada par de polos se obtendr un polinomio caracterstico de segundo
orden, de los cuales a y c son los coecientes del trmino en :; / y d son los trminos independientes
de ambos polinomios, es decir
(: j
1
)(: j
3
) = :
2
+a: +/
(: j
4
)(: j
5
) = :
2
+c: +d
Los polos deseados para el observador se seleccionaron en : = 95, : = 96, : = 97,
: = 98, por lo tanto, los polinomios caractersticos resultan ser
49
(: + 95)(: + 96) = :
2
+ 191: + 9120
(: + 97)(: + 98) = :
2
+ 195: + 9506
De estos polinomios se obtiene que a = 191, / = 9120, c = 195, y d = 9506. Por lo tanto, se
obtienen las siguientes matrices

Tobs
=
2
6
6
6
6
6
6
4
0 1 0 0
130.7362 |
1
2.7302 |
2
113.3551 |
3
2.3672 |
4
0 0 0 1
44.1875 |
5
0.2089 |
6
94.8447 |
7
0.4485 |
8
3
7
7
7
7
7
7
5
=
2
6
6
6
6
6
6
4
0 1 0 0
9120 191 0 0
0 0 0 1
0 0 9506 196
3
7
7
7
7
7
7
5
Igualando trmino a trmino los coecientes de estas ltimas matrices se obtiene la matriz
1
T
1
T
=
2
4
9250.7362 188.2698 113.3551 2.3672
44.1875 0.2089 9600,8447 194.5515
3
5
Finalmente, la matriz 1
obs
se dene como
1
obs
= 1
T
1
1
obs
=
2
4
188.2698 8737.2241 2.3672 331.2538
0.2089 4.1098 194.5515 9514.0917
3
5
Recordando ahora, que la matriz 1 se obtiene a partir de 1
obs
con la relacin 1 = 1
T
obs
,
entonces la matriz 1 para el sistema pndulo doble resulta ser
1 =
2
6
6
6
6
6
6
4
188.2698 0.2089
8737.2241 4.1098
2.3672 194.5515
331.2538 9514.0917
3
7
7
7
7
7
7
5
50
Esta ltima matriz es la matriz de ganancias del observador que permite colocar los valores
caractersticos de la matriz 1C en las posiciones 95, 96, 97 y 98 del plano :. La seleccin
de estas posiciones se hizo mediante la simulacin del observador de estados funcionando en conjunto
con el sistema retroalimentado.
4.3. Simulaciones
La simulacin de un modelo terico permite conocer el comportamiento de dicho modelo ante
diferentes condiciones y conforme evoluciona el sistema. Al tener la computadora hoy en da una alta
velocidad de procesamiento de datos, se usa sta en conjunto con ciertos paquetes computacionales
como medio para ejecutar simulaciones.
Para simular el sistema pndulo doble se emplea en este trabajo el paquete MATLAB
R
con SIMULINK
R
. Este paquete permite simular el sistema de inters por medio de diagramas de
bloques, sin necesidad de programar el algoritmo de integracin. Por medio de la simulacin de estos
diagramas se puede observar la operacin de modelos lineales y no lineales de manera fcil y rpida.
En esta seccin se presentan y describen a detalle los diagramas de bloques utilizados a lo
largo de este trabajo para cumplir con determinados propsitos, como por ejemplo, la determinacin
de los parmetros del diseo mecnico de los eslabones del pndulo y la validacin del modelo
matemtico, por mencionar algunos. Enseguida se presenta una comparacin entre los modelos lineal
y no lineal del sistema bajo el esquema de retroalimentacin de estados, la cual se realiza mediante
la simulacin de ambos modelos y cuyo objetivo es comprobar si el sistema de control funciona tan
bien con el modelo no lineal como sucede con el modelo lineal del sistema.
4.3.1. Validacin del sistema de control
La validacin del sistema de control consiste en comparar el comportamiento del modelo
no lineal con respecto del modelo linealizado cuando ambos se conguran bajo el esquema de retro-
alimentacin de estados. El objetivo es determinar si el controlador diseado con base en el modelo
linealizado funciona tan bien para el modelo no lineal como sucede con el modelo linealizado. Esta
vericacin es necesaria porque si al presentar el controlador un comportamiento adecuado funcio-
nando en conjunto con el modelo no lineal, se tendrn mayores probabilidades de que el desempeo
del sistema de control sea el correcto cuando se implemente en el sistema fsico, ya que se considera
que el modelo no lineal representa mejor el comportamiento real del sistema.
51
Figura 4.3: Bloque de SIMULINK que representa una conguracin en variables de estado.
La comparacin se realizar de manera grca mediante la simulacin de ambos modelos.
Para esto, se construyen diagramas de bloques que representan los dos modelos, partiendo ambos
de los mismos parmetros de inicializacin y visualizando los resultados en grcas que describen la
evolucin en el tiempo de variables importantes del sistema. A continuacin se explica detalladamente
el proceso de simulacin.
El diagrama de bloques que se emplea para simular el comportamiento del modelo no lineal
se contruye a partir de las ecuaciones (2.21) y (2.23) obtenidas en el captulo 2 y el modelo lineal
se representa mediante un slo bloque denominado en SIMULINK
R
como "State-Space"(espacio
de estados), en donde se denen las matrices , 1, C, 1 del modelo linealizado (seccin 2.3), en la
Figura 4.3 se muestra el bloque utilizado.
En la Figura 4.4 se presenta el diagrama de bloques programado para simular y comparar
los modelos matemticos del sistema. En l se muestran bsicamente dos diagramas de bloques, el
primero de ellos representa el modelo no lineal y est formado principalmente por dos bloques. El
primero es el bloque denominado 'odc|o :o |i:ca|, a este bloque se le han programado internamente
las ecuaciones (2.21) y (2.23) del modelo no lineal, el segundo es el bloque Co:tro| que representa la
matriz de retroalimentacin 1, obteniendo con esto el esquema de retroalimentacin de estados; el
diagrama de bloques programado dentro del bloque 'odc|o :o |i:ca| se presenta en la Figura 4.5. El
segundo diagrama representa el modelo lineal, ste es formado por el mismo bloque de control Co:tro|
presente en el primer diagrama ms el bloque denominado 'odc|o |i:ca|, el cual internamente tiene
programada una conguracin en variables de estado y slo requiere se le sean denidas las matrices
, 1, C, 1 del modelo linealizado.
Es importante destacar que cuando se obtuvo la linealizacin del modelo matemtico del
sistema, se realiz un cambio de variable en donde el vector de estados r fue transformado en el
vector ~ r, con esto se busc que el modelo linealizado dependiera de los estados ~ r con objeto de que
52
Figura 4.4: Diagrama de bloques para la validacin del sistema de control.
el modelo funcione alrededor del punto ~ r = 0. Este hecho provoca un cambio al tratar de comparar
los modelos lineal y no lineal, pues el modelo no lineal es dependiente del vector de estados r, por
lo cual, para poder realizar la comparacin buscada es necesario incluir el mismo cambio de variable
hecho para el modelo lineal (seccin 2.3) dentro de la programacin del bloque 'odc|o :o |i:ca|.
Esto se logra sumando a las posiciones de los eslabones, es decir, restando radianes a los estados
r
1
y r
3
como se muestra en la Figura 4.5. Con este cambio de variable se busca que ambos sistemas
trabajen con el mismo vector de estados ~ r.
La programacin interna del bloque 'odc|o :o |i:ca| (mostrada en la Figura 4.5) est
estructurada por cuatro bloques de integracin denominados integradores. El primer bloque de inte-
gracin, nombrado 1:tcqrador, tiene como entrada la aceleracin angular del eslabn 1, es decir

0
1
( _ r
2
), esta seal es integrada en 1:tcqrador y entrega como salida la velocidad angular
_
0
1
(r
2
), esta
ltima seal es integrada nuevamente en 1:tcqrador1 y como salida se obtiene la posicin angular
53
Figura 4.5: Programacin interna del bloque Modelo no lineal.
54
0
1
(r
1
). En 1:tcqrador2 la entrada es la aceleracin angular del segundo eslabn, es decir

0
2
( _ r
4
),
a la salida del bloque se obtiene la velocidad angular
_
0
2
(r
4
), esta seal es integrada nuevamente en
1:tcqrador3 obtenindose nalmente la posicin angular del segundo eslabn 0
2
(r
3
). Estas cuatro
seales (0
1
,
_
0
1
, 0
2
,
_
0
2
) son llevadas junto con la seal de entrada al bloque (n) a un multiplexor de
seales donde son juntadas en una sola seal, de ah son enviadas a cuatro bloques funcin denomi-
nados en la Figura como 1c:; en estos bloques se encuentran programadas las ecuaciones (2.21) y
(2.23) de la siguiente manera: en los bloques 1c: y 1c:1 se tienen respectivamente programados el
numerador y el denominador de la ecuacin (2.21) y en los bloques 1c:3 y 1c:4 se han programado
el numerador y el denominador de la ecuacin (2.23). Finalmente, las seales de salida de los bloques
1c: y 1c:1 son divididas en el bloque 1c:2, obtenindose a la salida la seal de

0
2
que es la entrada
del bloque 1:tcqrador. En cuanto a las salidas de los bloques 1c:3 y 1c:4, stas son divididas en el
bloque 1c:5 cuya salida es la aceleracin angular

0
2
, la cual es la entrada del bloque 1:tcqrador2. El
bloque 'odc|o :o |i:ca| tiene como salida el vector de estados ~ r, como se puede apreciar en la Figura
4.5, las seales correspondientes a los estados r
1
y r
3
son tomados de los bloques de integracin y
enviados a su respectivo sumador donde se les resta una contante de magnitud , con esto lo que se
obtiene a la salida del sumador son los estados ~ r
1
y ~ r
3
, los cuales son llevados junto con los estados
restantes (~ r
2
y ~ r
4
) a un multiplexor y despus a la salida del bloque. Es importante destacar que
este bloque tiene dos salidas, en la primera de ellas, ont1, salen nicamente los estados ~ r
1
y ~ r
3
, y en
la salida ont2, la salida es el vector completo de estados, es decir, ~ r
1
, ~ r
2
, ~ r
3
, ~ r
4
. Esto ser til cuando
se simule el observador de estados.
Los parmetros de simulacin fueron los siguientes: mtodo numrico de integracin 1n:qc
1ntta de cuarto orden, tiempo de integracin 0.001[s], tiempo de paro 10 [s]. La inicializacin de los
estados es: ~ r
1
0
= 0.08726 [rad] = 5[

], ~ r
2
0
= ~ r
3
0
= ~ r
4
0
= 0 [rad], estos valores de inicializacin
indican que la posicin del primer eslabn del pndulo slo se ha movido 5 [

] de la posicin deseada,
el segundo eslabn se encuentra en la posicin deseada y ninguno de ellos est rotando. Cabe men-
cionar que aunque la inicializacin de las variables de estado ~ r
1
y ~ r
2
se elige arbitrariamente sta
debe ser cercana al punto de operacin del sistema. Para esta simulacin se eligi una posicin del
primer eslabn de -5[

] porque es una posicin que se encuentra en la vecindad del punto de operacin


y que permite observar claramente de los resultados.
Los resultados de la simulacin se muestran independientemente para cada estado ~ r en las
Figuras 4.6, 4.7, 4.8 y 4.9.
Como se puede observar en los resultados de la simulacin (Figuras 4.6, 4.7, 4.8, 4.9 ) no
55
Figura 4.6: Comportamiento del estado ~ r
1
.
Figura 4.7: Comportamiento del estado ~ r
2
.
56
Figura 4.8: Comportamiento del estado ~ r
3
.
Figura 4.9: Comportamiento del estado ~ r
4
.
57
Figura 4.10: Diagrama de bloques utilizado para la determinacin de los parmetros de diseo de los
eslabones del sistema.
existen en ningn caso diferencias importantes entre las curvas generadas por los modelos lineal
y no lineal, salvo en las zonas donde la curva comienza a decrecer o cuando comienza a tener un
comportamiento creciente, pero debido a que estas variaciones son de muy pequea magnitud se
puede armar que el sistema de control diseado mediante la tcnica de asignacin de polos funciona
para el sistema no lineal tan bien como para el lineal, por lo tanto se espera que ste funcione
adecuadamente cuando sea implementado en el sistema fsico.
4.3.2. Simulacin para la obtencin de los parmetros del diseo mecnico de los
eslabones del pndulo doble y determinacin de los polos del controlador
y del observador.
En el captulo 3 (seccin 3.1), se habl acerca de la determinacin de los parmetros de
diseo de los dos eslabones que conforman el pndulo doble. Se mencion que los parmetros como
la longitud y masa de cada eslabn, fueron el resultado de la simulacin de distintas variantes del
modelo matemtico del sistema basadas en la variacin de los parmetros mencionados; eligindose
al nal de este proceso los parmetros que mejor se adecuaron a las especicaciones del actuador. En
la Figura 4.10 se presenta el diagrama de bloques utilizado para la realizacin de esta tarea.
El diagrama de bloques mostrado en la Figura 4.10 corresponde a la parte no lineal del
diagrama de bloques de la Figura 4.4, usado en la validacin del sistema de control en la seccin
anterior, cabe destacar que se utiliza el modelo no lineal con el propsito de hacer esta simulacin
58
Figura 4.11: Diagrama de bloques utilizado para la determinacin de los polos del observador.
ms representativa de la realidad, ya que se considera que el modelo no lineal describe mejor el
comportamiento real del sistema.
Este diagrama de bloques tambin se utiliz para la determinacin de los polos del con-
trolador. Para esto, se simularon distintas combinaciones de dichos polos y de los parmetros de
diseo antes mencionados y se eligi la combinacin que ofreci un buen comportamiento del sistema
retroalimentado y que, adems, cumpli con un criterio de seleccin referente al voltaje nominal del
actuador del sistema.
En la Figura 4.11 se presenta diagrama de bloques utilizado para la determinacin de los
polos del observador. Este diagrama es prcticamente el mismo que se describi en el pararrafo
anterior y simplemente se agreg un bloque que corresponde al observador de estados diseado en
la seccin 4.2. En este caso se toma la salida 1 (out1) del bloque 'odc|o :o |i:ca| como entrada al
observador junto con la seal de control del sistema. Se toma dicha salida porque sta slo contiene
la informacin de las variables de estado que estarn disponibles mediante su medicin directa en el
sistema real.
Es importante destacar que el bloque Observador se contruye a partir de un bloque "otatc
ojacc" asignando de la siguiente manera las matrices A,B,C y D que son requeridas para la denicin
del sistema dentro del bloque. La matriz A del bloque se obtiene de la diferencia entre la matriz A
del sistema y la matriz obtenida del producto de las matrices L y C, la matriz B del bloque es una
59
Figura 4.12: Diagrama de bloques utilizado para la validacin del modelo matemtico.
combinacin de las matrices B y L, la matriz C del bloque es una matriz identidad de orden cuatro
y nalmente la matriz D del bloque es una matriz de ceros de 4x3. En resumen se tiene lo siguiente:

Obs
= 1C
1
Obs
= [1 1]
C
Obs
= 1
4
1
Obs
= 0
4x3
4.3.3. Simulacin para la validacin del modelo matemtico
En la seccin 3.2 del tercer captulo de este trabajo se describi el proceso realizado para
la validacin del modelo matemtico obtenido en el captulo 2. Se dijo que la validacin consisti
en la comparacin de datos experimentales y datos tericos generados a partir de la simulacin del
modelo matemtico del sistema. En la Figura 4.12 se presenta el diagrama de bloques utilizado
para la simulacin y obtencin de los datos tericos usados en la comparacin antes mencionada.
En l se observa bsicamente un slo elemento correspondiente al bloque 'odc|o :o |i:ca|, como
puede observarse ste no presenta entradas, esto es porque el objetivo del experimento simulado fue
simplemente observar la evolucin del sistema partiendo de una posicin inicial determinada hasta
alcanzar su posicin naturalmente estable.
La salida del bloque se lleva al bloque ocojc, este bloque permite visualizar la seal de
salida y guardar los datos generados durante la simulacin.
En la Figura 4.13 se muestra el diagrama de bloques programado dentro del boque 'odc|o
:o |i:ca|. Este bloque prcticamente es el mismo que se ha descrito ya en la seccin 4.3.1 a excepcin
de los cambios de variable que en este caso se han eliminado, pues no son necesarios ya que lo que se
busca es adquirir los datos de las posiciones angulares que exhiben los estados r
1
y r
3
.
60
Figura 4.13: Diagrama de bloques interno del bloque Modelo no lineal.
61
Para esta simulacin, al igual que en los dos incisos anteriores se hace uso del mtodo
numrico de integracin 1n:qc 1ntta de cuarto orden. El tiempo de integracin utilizado es de
0.001[s], durante 15 [s].
62
Captulo 5
Implementacin
En este captulo se presenta y describe el cdigo programado en LabVIEW
R
mediante el
cual se implement el controlador y el observador de estado diseados en el captulo 4. Tambin
se presenta el circuito elctrico con el cual se acondiciona la seal de control al nivel de potencia
adecuado para el actuador del sistema. Finalmente, se hace un anlisis del comportamiento que
presentan el observador y el controlador que se han diseado una vez que stos han sido incorporados
mediante LabVIEW
R
al sistema fsico.
5.1. Cdigo en LabVIEW
LabVIEW
R
es un software ampliamente utilizado en los mbitos cientco, acadmico e
industrial para el desarrollo de tareas como adquisicin de datos, diseo de control, instrumentacin
virtual, y automatizacin industrial, entre muchas otras.
El lenguaje de programacin de LabVIEW
R
se conoce como lenguaje G, lo cual indica que
es un lenguaje grco, esto quiere decir que los cdigos programados en LabVIEW
R
prcticamente
se dibujan, no se escriben como sucede con la mayora de los lenguajes de programacin. Un cdigo en
LabVIEW
R
se estructura de manera similar a un diagrama de bloques; los bloques en LabVIEW
R
se
denominan VIs (Instrumentos Virtuales), stos son dispositivos preprogramados que realizan tareas
especcas a cuyo cdigo se puede acceder y ser modicado, as se puede concretar una tarea distinta
sin necesidad de programar un bloque por completo. Existe otro tipo de bloques que al igual que los
VIs realizan tareas concretas, sin embargo, stos no pueden ser modicados; esta clase de bloques se
conocen como funciones. Tambin se cuenta con lo que en LabVIEW
R
se denominan estructuras,
stas son instrucciones que permiten ejecutar un cdigo de forma condicional o repetirlo cierto nmero
63
de veces, estas estructuras encierran en su interior el cdigo al que afectan. LabVIEW
R
tiene una
gran coleccin de bloques con una extensa gama de VIs, funciones y estructuras, que resultan ser
muy tiles para el usuario, ya que es posible hacer programas relativamente complejos sin necesidad
de conocer a fondo el software. Adems, esto ayuda a reducir el tiempo requerido para la creacin
de un proyecto.
La mayora de los lenguajes de programacin se basan en una programacin imperativa, la
cual es simplemente una sucesin de operaciones. El lenguaje G no usa una programacin de este
tipo sino una ejecucin basada en el ujo de datos. Un programa en Labview consiste bsicamente en
una serie de bloques (funciones y VIs) unidos mediante "cables". Los datos uyen por los "cables",
as una funcin o VI slo se ejecuta cuando tiene disponibles todos los datos que le sirven como
entrada. Esta forma de ejecutar un programa favorece el paralelismo, lo cual permite la ejecucin
simultanea de varios cdigos. Esta particularidad de LabVIEW
R
ser de gran utilidad en el cdigo
programado para la implementacin del pndulo doble, pues como se ver ms adelante se tendrn
dos estructuras ejecutndose simultneamente.
Uno de los principales usos que se le da a LabVIEW
R
es la adquisicin y generacin de
seales, esta clase de tareas se llevan a cabo a travs de tarjetas de adquisicin de datos. En el sistema
pndulo doble ser necesario adquirir y generar seales, pues es imperativo adquirir las seales de
las posiciones angulares de ambos eslabones y generar la seal de control, por lo tanto ser necesario
utilizar una tarjeta de adquisicin de datos. La tarjeta que se utilizar es una PCI-6221 de National
Instruments; algunas de las caractersticas relevantes de esta tarjeta son: 2 salidas analgicas de 16
bits con una velocidad de 833[kS/s] (kilo Samples per second), rango de 10 [V]; 24 lneas digitales
entrada/salida TTL/CMOS; 16 entradas analgicas con resolucin de 16 bits a 250 [KS/s] con rangos
de entrada programables.
En la Figura 5.1 se presenta el cdigo programado en LabVIEW
R
para la implementacin
del pndulo doble. El cdigo est dividido en tres secciones, una seccin de denicin, otra de adquisi-
cin y una ltima de control. La etapa de denicin es un Sub VI donde se denen las matrices del
modelo matemtico lineal del sistema, y se calculan con base en los polos del controlador y del
observador (denidos por el usuario) las matrices de coecientes constantes K y L respectivas. Las
etapas de adquisicin y control se encuentran programadas dentro de dos estructuras While loop o
ciclos While, los cuales se encuentran sincronizados para ejecutarse simultneamente. La funcin del
ciclo de adquisicin es interpretar las seales provenientes de los sensores que registran los datos de
posicin angular que describen los eslabones del pndulo doble. Estos datos despus son enviados
64
Figura 5.1: Diagrama de bloques en LabVIEW usado para la implementacin del sistema.
al ciclo de control, donde con el modelo del observador del sistema y la matriz de ganancias del
controlador (K) obtenidos en la etapa de denicin, se calculan las variables de estado observadas y
posteriormente con base en este estado observado se calcula la seal de control. Cada una de estas
partes de cdigo se observan en la Figura 5.1 y se pueden distinguir por la etiqueta que, en el caso
de los ciclos While se encuentra en la parte superior izquierda; por otro lado, el Sub V I Definici on
se localiza a la izquierda del segundo ciclo While.
Para explicar claramente cmo est estructurado el cdigo y qu tareas se realizan en cada
seccin del mismo, es importante hacerlo de acuerdo al ujo de ejecucin, por lo tanto, es importante
comenzar describiendo las tareas que se realizan en la seccin de denicin (Sub V I Definici on)
cuyo diagrama de bloques se muestra en la Figura 5.2.
En la parte superior del cdigo (Figura 5.2) se denen las matrices A, B, C y D del modelo
linealizado del sistema. El bloque CD Construct State Space Model V I construye a partir de
estas matrices el modelo en variables de estado del sistema (o modelo en el espacio de estados) .
Es importante destacar que la adquisicin de los datos de la posicin angular de los eslabones no se
realiza de manera continua, sino discreta, por lo cual para poder obtener los resultados esperados es
65
necesario utilizar un modelo discreto del sistema. El bloque CD Convert Continuous to Discrete
V I transforma el modelo continuo en un modelo discreto utilizando el tiempo de muestreo. Para
mayores detalles acerca de sistemas discretos se recomienda consultar el Apndice B.
El sub V I Adquisici on requiere se le sean asignados los polos del controlador, los polos
del observador y el tiempo de muestreo, los controles de donde LabVIEW
R
toma estos datos se
encuentran debajo de la denicin de las matrices A,B,C y D. Del bloque Polos Controlador se
toman los polos del controlador y se transforman a discretos mediante la transformacin e
T Pc
,
donde P
c
representa el vector de polos del controlador y T corresponde al tiempo de muestreo; estos
polos discretizados junto con el modelo discreto del sistema son tomados por el bloque CD Pole
Placement V I para calcular la matriz de ganancias K del controlador.
El bloque CD State Estimator V I contruye el modelo del observador con base en el modelo
continuo del sistema y la matriz de ganancias del observador L. Este modelo es llevado a un bloque
CD Convert Continuous to Discrete V I donde es transformado en un modelo discreto, obtenindose
nalmente el modelo discreto del observador ("Discrete Estimator Model"). El clculo de la matriz
L se realiza con base en el mtodo ChenM II (seccin 4.2), el cual est programado en la parte
inferior del cdigo de la Figura 5.2. Lo que se realiza en esta parte del cdigo es lo siguiente: del bloque
Polos Observador se toma el vector que contiene los cuatro polos deseados del observador, dichos
polos se separan en pares para ser llevados (cada par) al bloque Create Polynomial From Roots V I
donde se genera un polinomio de segundo grado con cada par de polos, posteriormente se separan los
coecientes de ambos polinomios para calcular los coeciente l
1
; l
2
; l
7
y l
8
de la matriz L
T
; una vez
que se tienen todos los coecientes de L
T
, stos se agrupan para formar la matriz; posteriormente en
el bloque AxB V I se multiplican las matrices L
T
y P obtenindose de este producto la matriz K
obs
,
la cual nalmente se transpone en Transpose Matrix V I para obtener la matriz L. Las salidas de
este bloque son el modelo discreto del observador y la matriz K.
El ciclo de adquisicin inicia su ejecucin simultanemente con el Sub V I Definici on y
contina ejecutndose durante todo el tiempo de ejecucin, por lo tanto ahora se describir el cdigo
interno del dicho ciclo. En la parte superior de la Figura 5.1 se sita el ciclo de adquisicin, en
el cdigo de este ciclo se tienen dos bloques de adquisicin de datos, stos estn congurados de
acuerdo a las especicaciones de los sensores (encoders). El bloque DAQ Assistant adquiere los
datos correspondientes a la posicin angular del primer eslabn (
1
) y el bloque DAQ Assistant2
adquiere la posicin angular del segundo eslabn, sin embargo, la posicin que entrega este bloque
no es realmente el ngulo
2
, pues debido a la ubicacin de este segundo sensor en el sistema fsico,
66
Figura 5.2: Cdigo interno del Sub VI Denicin.
67
Figura 5.3: Medicin del ngulo
2
.
el ngulo que se mide es el ngulo del segundo eslabn respecto al primero, es decir el ngulo como
se muestra en la Figura 5.3. Por lo tanto para obtener
2
es necesario sumar los ngulos
1
y .
Una vez obtenidos ambos ngulos (
1
y
2
) se les restan [rad] para generar las variables de estado
~ x
1
y ~ x
3
. Por ltimo, los ngulos adquiridos se transforman a grados para ser mostrados al usuario
mediante los bloques Eslab on 1 y Eslab on 2.
Un punto a destacar sobre los ciclos de adqusicin y control es referente a la sincronizacin
del inicio de su ejecucin. La ejecucin del ciclo de control comienza cuando el ciclo de adquisicin le
notica que ya puede iniciar su ejecucin pues ya ha adquirido los datos que se requieren para ejecutar
su cdigo. Esta sincronizacin entre ciclos se realiza mediante los bloques noticadores, stos no slo
envan el aviso del inicio de ejecucin sino que adems tienen la capacidad de mandar mensajes de
un ciclo a otro. Para este caso, el ciclo de adquisicin adems de enviar la noticacin de inicio
de ejecucin enva un mensaje con las posiciones angulares ya adquiridas. Una vez que se inicia la
ejecucin del ciclo de control, ste contina ejecutndose hasta que el usuario detiene la ejecucin
del programa, con esto, ambos ciclos se ejecutan simultneamente durante el resto del tiempo de
ejecucin. Los datos que recibe el ciclo de control se actualizan cada 5 milisegundos que es el tiempo
que debe transcurrir entre cada iteracin del ciclo de adquisicin ( que corresponde al tiempo de
muestreo, y que se especica con el bloque Wait ubicado en la parte superior derecha de dicho ciclo).
68
Sin embargo, las iteraciones del ciclo de control no se realizan cada 5 milisegundos, pues en este ciclo
no se especica un tiempo de espera, de esta manera una iteracin del ciclo comienza inmediatamente
despus de terminada la iteracin anterior, con esto el ciclo de control realiza ms de una iteracin
antes de recibir nuevos datos. El propsito de utilizar dos ciclos para concretar la observacin y el
control del sistema es utilizar de manera eciente los recursos de la computadora para no alterar el
desempeo real del sistema, pues de lo contrario, si todo este proceso se realizara en un slo ciclo,
concluir una iteracin tomara mayor tiempo, adems, el sistema no podra adquirir nuevos datos
hasta que la iteracin terminara por completo, lo cual indudablemente alterara los resultados.
Como se ha mencionado, la ltima parte del cdigo en comenzar con su ejecucin es el
ciclo de control. Este ciclo realiza tres tareas fundamentales, la primera de ellas es la observacin del
vector de estados, la segunda es el clculo de la seal de control y la ltima es la generacin de la
seal de control de forma analgica. La observacin del vector de estados la realiza el bloque Discrete
StateSpace, este bloque ejecuta las operaciones de un sistema en variables de estado y slo requiere
le sea denido el modelo del sistema, que en este caso es el modelo discreto del observador que se
obtuvo en el bloque Sub V I Definici on; las entradas del bloque son las dos variables de estado
obtenidas en el ciclo de adquisicin y la seal de control calculada en la iteracin i 1 (la cual es
cero para la primer iteracin). La salida del bloque es el vector de estado observado, ste es llevado
al bloque CD State Feedback Controller V I donde se calcula la seal de control u = Kx con base
en la matriz K obtenida en el bloque Sub V I Definici on. La seal de control u obtenida es llevada
a una estructura Case, sta tiene el propsito de habilitar o deshabilitar la seal de control, de esta
manera, si es necesario, el programa puede estar en ejecucin y no generar seales de salida (lo cual
es muy til cuando se inicializa el sistema pues es necesario colocarlo en el punto de trabajo antes
de comenzar a controlarlo). Esta estructura es habilitada o deshabilitada por el usuario mediante
un Switch (control booleano) en el panel frontal del programa. La estructura tiene dos casos, uno
funciona cuando el Switch est activado y la otra cuando no lo est; en el primer caso la seal de
control se multiplica por la unidad y en el segundo se multiplica por cero, de esta manera se simula la
activacin o desactivacin del ciclo de control. Ya que la seal ha pasado por la estructura Case, sta
es llevada a una estructura MathScript Node donde se tiene escrito un cdigo de forma condicional
que limita la magnitud de dicha seal a 24 [V] (que es el voltaje nominal del actuador del sistema),
as si el valor de la seal es mayor a 24 [V] o menor a -24[V] la salida siempre ser 24 [V] o -24 [V]
segn sea el caso. Despus de limitar la seal de control, sta es dividida entre 3 para poder tener una
seal con magnitud mxima de 8 [V], pues cabe recordar que la tarjeta utilizada para este proyecto
69
slo permite generar seales analgicas con magnitud mxima de 10 [V]; posteriormente en la
etapa de potencia la seal de control es nuevamente multiplicada por 3 para recuperar su magnitud
original. El bloque DAQ Assistant3 realiza el ltimo paso de este ciclo de control, que es convertir
la seal de control en una seal analgica, la cual ser tomada va la tarjeta de adquisicin de datos
para poder ser acondicionada en la etapa de potencia antes de ser enviada al actuador del sistema.
En un programa en LabVIEW
R
, el diagrama de bloques es slo la mitad de todo el progra-
ma, la otra mitad la compone el panel frontal, que es la parte que el usuario ve cuando el programa
est en ejecucin. Mediante el panel frontal el usuario puede observar resultados, denir y variar los
parmetros necesarios para la ejecucin del programa, habilitar o deshabilitar eventos del programa
etc. Todo se puede hacer de forma grca o numrica, con esto, una vez programado un proyecto es
muy fcil que ste sea utilizado por el usuario pues es muy intuitivo. El panel frontal del programa
del pndulo doble se muestra en la Figura 5.4, en l bsicamente se presentan resultados, aunque
tambin se tienen en la parte izquierda tres controles que liberan eventos en el programa, por ejem-
plo, se tiene un botn de inicializacin que cuando est encendido hace cero las entradas del bloque
Discrete StateSpace, el Switch nombrado "CONTROL" activa o desactiva la seal de control, y el
botn "STOP" detiene la ejecucin del programa. Como puede verse en la Figura 5.4, los resultados
mostrados en el panel frontal son las posiciones angulares de ambos eslabones, el estado observado,
las entradas del observador y de forma grca se presentan la seal de control generada y la seal
que se enva a la etapa de potencia va la tarjeta de adquisicin de datos.
El bloque Sub VI Denicin tambin tiene su panel frontal, ste se muestra en la Figura 5.5.
En este panel el usuario debe escribir los polos del controlador, los polos del observador y el tiempo
de muestro deseados en las cajas de texto respectivas, con base en estos parmetros el sistema clcula
las matrices K y L, las cuales tambin son mostradas en el panel frontal
70
Figura 5.4: Panel frontal del programa usado para la implementacin del pndulo doble.
Figura 5.5: Panel frontal del Sub V I Definici on.
71
5.2. Etapa de potencia
En la seccin anterior se dijo que la seal de control analgica generada en la tarjeta de
adquisicin de datos tuvo que ser escalada a un tercio de su amplitud original debido a las especi-
caciones de dicha tarjeta, esta situacin imposibilita usar la seal directamente en el actuador del
sistema, ya que antes de esto es necesario regresar la seal de control a su magnitud real, adems, es
imprescindible tambin tener una ganancia en corriente en dicha seal, es decir, es necesario acondi-
cionar dicha seal a niveles de potencia congruentes con los requerimientos del propio actuador. A
este paso intermedio donde se realiza el acondicionamiento de la seal de control se denomina etapa
de potencia.
La etapa de potencia tiene tres propsitos fundamentales, el primero de ellos es amplicar
la seal de salida de la tarjeta de adquisicin de datos por un factor de tres para reconstruir la seal
de control real (calculada en LabVIEW
R
); el segundo es proveer a dicha seal con una ganancia en
corriente que permita cumplir con las especicaciones de potencia del actuador del sistema; el tercer
punto es aislar la tarjeta de adquisicin de datos de la propia etapa de potencia para no manipular
directamente la seal generada en la tarjeta de adquisicin de datos, sino una replica de la misma
generada a partir de una alimentacin externa, el propsito de esto es evitar sobrecargar la seal
original y por consiguiente evitar daos en la tarjeta de adquisicin de datos.
En la Figura 5.6 se presenta el circuito elctrico utilizado en la etapa de potencia. En l
se tienen tres componentes, cada uno de stos cumple con uno de los propsitos descritos en el
prrafo anterior. Observando el circuito de izquierda a derecha se tiene que el primer componente
del circuito es un amplicador inversor con ganancia unitaria, ste amplicador realiza la funcin de
aislar la tarjeta de adquisicin de datos de la etapa de potencia, esto es gracias a las propiedades
del amplicador operacional ya que al tener ste una impedancia de entrada muy grande extrae una
corriente despreciable de la fuente de seal, es decir de la tarjeta de adquisicin de datos, evitando
una sobrecarga de la seal de control y por consiguiente daar la tarjeta de adquisicin de datos.
La seal de salida de este amplicador tiene la misma amplitud que la de la seal de entrada pero
con la polaridad (o fase) invertida. La seal de salida del amplicador inversor es alimentada a la
entrada del siguiente componente, el cual tambin es un amplicador inversor pero su factor de
amplicacin es de tres, este amplicador escala la seal al triple de su valor de entrada e invierte
su polaridad nuevamente, por lo tanto a la salida de ste se obtiene nalmente la seal de control
originalmente calculada en LabVIEW
R
. El ltimo componente es un amplicador de potencia, el
72
Figura 5.6: Circuito elctrico de la etapa de potencia.
cual es denominado amplicador contrafsico o amplicador Push-pull. Este amplicador reproduce
a la salida la seal de entrada pero con una ganancia signicativa en corriente, de tal manera que se
incrementa la potencia que la seal de control puede entregar al actuador del sistema.
El amplicador contrafsico se compone de dos transistores bipolares complementarios,
esto quiere decir que utiliza un transistor PNP y un transistor NPN con idnticas caractersticas
elctricas. En esta clase de amplicador los transistores conducen en medios ciclos opuestos de la
seal de entrada, es decir, conducen durante fases contrarias, as, el transistor NPN conduce la fase
positiva de la seal y el transistor PNP la fase negativa, de tal manera que a la salida del amplicador
contrafsico la carga recibe el ciclo completo de la seal de entrada.
Cabe mencionar que la corriente mxima que el motor (actuador del sistema) demandar
de la etapa de potencia es de 1.5 [A] (corriente a rotor bloqueado y voltaje nominal), y el voltaje
mximo que se podr aplicar a las terminales del motor es el voltaje nominal, 24 [V]; por lo tanto, la
etapa de potencia debe satisfacer dichos requerimientos. La capacidad de entrega de corriente de la
etapa de potencia est determinada por las caractersticas de los transistores que componen el ampli-
cador contrafsico. Los transistores elegidos para este propsito son los transistores TIP31 (NPN)
y TIP32(PNP), los cuales son capaces de entregar hasta 3 [A] de forma continua y pueden trabajar
con voltajes mximos de 40 [V], con lo cual se cumple fcilmente con el requerimiento de corriente
del motor. Para congurar los amplicadores inversores de la etapa de potencia, se utilizaron dos
amplicadores operacionales de alto voltaje MC1436C; estos amplicadores operacionales permiten
un voltaje de alimentacin de 30 [V], por lo tanto son capaces de entregar a la salida seales con
73
amplitudes mayores a +22 [V] y menores a 22 [V] (lo cual es imposible lograr con amplicadores
operacionales convencionales cuya alimentacin mxima generalmente es 22 [V] y por lo tanto su
salida es inferior a 22 [V]), de esta manera es posible reconstruir la seal de control con su mxima
amplitud de 24 [V] sin limitacin alguna.
Es importante sealar que la alimentacin del circuito es de 27 [V], sto se hace para
compensar las cadas de voltaje presentes en los componentes del circuito. Debido a la composicin
interna de los amplicadores operacionales y los transistores, stos consumen energa. Estas prdidas
de energa son compensadas gracias a la retroalimentacin de los amplicadores inversores, tomando
la energa requerida para tal compensacin de las fuentes de alimentacin. Sin embargo, cuando
la alimentacin no es capaz de proveer la energa necesaria para compensar dichas prdidas, no es
posible obtener a la salida la seal requerida; de esta manera al aumentar el voltaje de alimentacin
tres volts respecto a la salida mxima esperada se logra asegurar que a la salida de la etapa de
potencia se obtenga la seal deseada.
En las Figuras 5.7 y 5.8 se presentan las fotografas de la etapa de potencia implementada
y de su montaje dentro de la base del pndulo doble respectivamente.
Figura 5.7: Etapa de potencia.
74
Figura 5.8: Montaje de la etapa de potencia.
5.3. Anlisis del estado observado y del controlador del sistema
Cuando se disea un observador de estados de orden completo, es muy comn que en la
prctica se utilice el vector de estado observado ^ x en la retroalimentacin del estado para generar
la seal de control deseada, como se muestra en la Figura 5.9. Es por esta razn que resulta muy
importante contar con una buena estimacin del vector de estados, pues de sto depende el buen
desempeo del sistema de control. Este es el caso del sistema pndulo doble y en esta seccin se
comprueba que el observador de estado de orden completo diseado en el captulo anterior estima
correctamente las variables de estado.
Figura 5.9: Diagrama de bloques del sistema de control retroalimentado con el estado observado.
75
Para analizar las estimaciones del observador, se comparan las variables de estado medidas y
las observadas correspondientes a las posiciones angulares de ambos eslabones, es decir, se comparan
~ x
1
con
^ s
x
1
y ~ x
3
con
^ s
x
3
. Los datos se generaron a partir de una prueba hecha al sistema real cuyo
objetivo fue que ambos eslabones del pndulo doble se mantuvieran en posicin vertical hacia arriba.
En las Figuras 5.10 y 5.11 se observan los resultados del experimento completo, el cual tuvo una du-
racin de aproximadamente 56 segundos. Sin embargo, para apreciar mejor los resultados obtenidos,
se presenta en las Figuras 5.12 y 5.13 slo una parte del experimento que comprende un perodo de
10 segundos.
0 10 20 30 40 50
-0.3
-0.25
-0.2
-0.15
-0.1
-0.05
0
0.05
0.1
0.15
0.2
t [s]
[
r
a
d
]
Estado medi do
Estado observado
Figura 5.10: Comparacin entre la posicin angular medida (~ x
1
) y observada (
^ s
x
1
) del primer eslabn.
De las guras se obseva que el comportamiento de las variables de estado estimadas es muy
parecido al que presentan las variables medidas. Principalmente se aprecian pequeas diferencias en
las zonas de las crestas y valles de las grcas (representan cambios de sentido en el movimiento). No
obstante, estas diferencias no son realmente signicativas, pues como se aprecia en las Figuras 5.14
y 5.15 correspondientes al error de estimacin (se dene como el valor absoluto de la diferencia entre
las variables de estado medidas y las observadas) la magnitud de stas en promedio es muy pequea.
De las grcas de error se observa que en promedio el error presente en ambas variables de
estado estimadas es menor a 0.005 [rad]. En realidad el error de estimacin promedio es de 0.0038
[rad] para
^ s
x
1
y de 0.0034 [rad] para
^ s
x
3
, esto signica que en promedio la diferencia entre las variables
de estado medidas (~ x
1
y ~ x
3
) y sus respectivas variables de estado estimadas es de 0.21 [

] y 0.19[

]
76
0 10 20 30 40 50
-0.2
-0.15
-0.1
-0.05
0
0.05
0.1
0.15
0.2
t [s]
[
r
a
d
]
Estado medi do
Estado observado
Figura 5.11: Comparacin entre la posicin angular medida (~ x
3
) y observada (
^ s
x
3
) del segundo
eslabn.
4 5 6 7 8 9 10 11 12 13 14
-0.18
-0.16
-0.14
-0.12
-0.1
-0.08
-0.06
-0.04
-0.02
0
0.02
t [s]
[
r
a
d
]
Estado medido
Estado observado
Figura 5.12: Comparacin entre la posicin angular medida (~ x
1
) y observada (
^ s
x
1
) del primer eslabn
(periodo de 10 segundos).
77
4 6 8 10 12 14
-0.05
-0.04
-0.03
-0.02
-0.01
0
0.01
0.02
0.03
0.04
t [s]
[
r
a
d
]
Estado medi do
Estado observado
Figura 5.13: Comparacin entre la posicin angular medida (~ x
3
) y observada (
^ s
x
3
) del segundo eslabn
(periodo de 10 segundos).
0 10 20 30 40 50
0
0.01
0.02
0.03
0.04
0.05
0.06
t [s]
[
r
a
d
]
Figura 5.14: Error de estimacin de la posicin angular observada del primer eslabn.
78
0 10 20 30 40 50
0
0.005
0.01
0.015
0.02
0.025
0.03
0.035
0.04
t [s]
[
r
a
d
]
Figura 5.15: Error de estimacin de la posicin angular observada del segundo eslabn.
respectivamente, lo cual considerando la magnitud de las posiciones angulares que van adquiriendo
dichas variables de estado a lo largo del movimiento, resultan ser tales diferencias muy pequeas
y por tanto no son signicativas. Si bien al comienzo del experimento se presentaron errores ms
grandes que los observados durante el resto del movimiento, stos principalmente se debieron al
posicionamiento inicial del sistema.
El posicionamiento inicial del sistema consisti en colocar al inicio del experimento los
eslabones del pndulo en posicin vertical hacia arriba que es la posicin descrita por el punto
de operacin (~ x = 0), donde es valida la linealizacin del modelo matemtico. Idealmente, ambos
eslabones deberan colocarse exactamente en dicha posicin, sin embargo, tal exactitud difcilmente
es posible, pues el posicionamiento se realiza de forma manual; obtenindose a menudo una ubicacin
real de los eslabones cercana a tal posicin pero no exactamente en ella. Esto fue lo que sucedi en
este experimento y fue la causa por la cual se gener un pequeo error en el posicionamiento inicial.
Lo anterior es relevante en este experimento porque el observador considera como vector
de inicializacin el punto de operacin del sistema (~ x = 0), esto signica que al inicio del proceso
de observacin, el observador supone que los eslabones del pndulo doble se localizan en la posicin
descrita por el punto de operacin, es decir en ~ x
1
= 0 y ~ x
3
= 0. Por lo tanto, al encontrarse el pndulo
ligeramente alejado de tal posicin, y al ser denido el error de estimacin como el valor absoluto
de la diferencia entre el estado medido y el observado, se produjo al inicio del experimento el error
de estimacin ms grande de todo el movimiento. Este error de estimacin inicial es corregido por
79
el observador durante los tres segundos iniciales del experimento, sin embargo, como consecuencia
de sto, se presentan durante este perodo los errores de estimacin de mayor magnitud de todo el
experimento.
Con base en lo anteriormente expuesto, se puede dividir la respuesta del observador en dos
perodos. Un perodo transitorio (comprende los tres segundos iniciales del experimento) durante el
cual la respuesta del observador es ligeramente alterada a causa de un error en el posicionamiento
inicial del sistema y un perodo permanente en el que la respuesta del observador es debida nicamente
a los parmetros de diseo del mismo.
Como se ha mencionado anteriormente, durante el perodo transitorio se presentan las dife-
rencias ms grandes del estado observado respecto al estado medido, pero al nal de ste la magnitud
de dichas diferencias disminuye considerablemente. Esto pone de maniesto que durante dicho pero-
do se corrigen por completo las alteraciones presentes en el estado observado y que stas son causadas
exclusivamente por el desajuste en el posicionamiento inicial del sistema. Aun cuando los errores de
estimacin presentes durante este perodo son mayores en comparacin con el resto del experimen-
to, stos no son signicativamente relevantes, ya que en promedio durante este perodo se tiene un
error de estimacin de 0.0069 [rad] (0.39[

]) para
^ s
x
1
y de 0.0051 [rad] (0.31[

]) para
^ s
x
3
. Adems,
este primer perodo es slo una transicin hacia el perodo permanente que es donde el sistema se
mantiene funcionando bajo condiciones normales y el desempeo del observador presenta aun mejor
comportamiento. De este mismo perodo, tambin se observa que la rapidez de respuesta del obser-
vador es sucientemente buena para evitar que los eslabones alcancen posiciones angulares fuera del
rango de linealizacin, logrando de esta manera mantener al sistema funcionando alrededor del punto
de operacin, y por tanto manteniendo al pndulo doble en posicin vertical durante este perodo; por
supuesto, este hecho tambin depende en gran medida del desempeo del controlador pero la base
para un correcto funcionamiento de un sistema de control basado en la retroalimentacin del estado
observado se sustenta en una buena estimacin de las variables de estado, lo cual evidentemente se
logra durante este perodo del experimento.
Evidencias ms claras acerca del correcto funcionamiento del observador de estados se pre-
sentan durante el perodo permanente. Como se observa en las Figuras 5.14 y 5.15, durante el perodo
permanente las diferencias del estado observado respecto al estado medido son menores que las ob-
servadas durante el perodo transitorio, obtenindose en promedio durante dicho perodo un error de
estimacin de 0.0034 [rad] (0.19 [

]) en el caso de la posicin angular del primer eslabn (


^ s
x
1
) y de
0.0031 [rad] (0.18 [

]) para la posicin angular del segundo eslabn (


^ s
x
3
). Estos resultados demuestran
80
que se tiene una buena observacin de las variables de estado medibles, lo cual permite suponer que
la observacin de las variables no medibles tambin se lleva a cabo de forma adecuada. Esta ltima
suposicin se torna en una armacin al observar las Figuras 5.10 y 5.11 donde se puede notar que
durante el perodo permanente ambos eslabones se mantienen cercanos a la posicin cero radianes (0
[rad]), esto quiere decir que el sistema se mantiene en posicin vertical durante el todo este perodo,
lo cual difcilmente sera posible sin una buena estimacin de todas las variables de estado.
Hasta aqu se han analizado algunos resultados numricos que demuestran que el observador
de estados es capaz de estimar todas las variables de estado de manera adecuada. Sin embargo, una
evidencia concluyente a este respecto, es el hecho de que el sistema se mantiene en la posicin deseada
durante toda la prueba. Por supuesto, el hecho de tener una buena observacin de las variables de
estado no es una condicin suciente para lograr mantener el sistema en la posicin deseada, pues
es necesario cumplir con un segundo requerimiento, pero s es una condicin necesaria para cumplir
con tal tarea. La segunda condicin para cumplir con dicho propsito es el correcto funcionamiento
del sistema de control.
Se ha mencionado hasta ahora, que para cumplir con el objetivo de control del sistema
pndulo doble es necesario satisfacer dos condiciones, la primera es conocer por completo el vector
de estado, es decir, tener una correcta estimacin de todas las variables de estado y la segunda es que
el desempeo del controlador sea adecuado a los requerimientos del sistema. Como ya se ha visto,
durante la prueba mostrada en las Figuras 5.10 y 5.11 se cumple en todo momento el objetivo de
control (mantener el pndulo en posicin vertical hacia arriba), y adems, con base en los resultados
obtenidos de dicha prueba, se ha podido demostrar que la observacin del vector de estado se lleva
a cabo de manera satisfactoria. Por lo tanto, ahora se puede armar que el controlador presenta
un comportamiento adecuado ante los requerimientos del sistema; no obstante, es conveniente hacer
notar algunas caractersticas relevantes del desempeo del sistema de control que se pueden observar
a partir de los datos que se han venido analizando.
El primer punto a destacar es referente a la rapidez en la respuesta del controlador; como
puede verse en las Figuras 5.10 y 5.11, ambos eslabones exhiben movimientos de pequea amplitud
con valores altos en frecuencia, este comportamiento revela claramente que el sistema de control
responde con gran rapidez a los requerimientos del sistema para corregir los pequeos errores presentes
en busca de la posicin deseada; lo cual es muy conveniente, pues esto mantiene al sistema movindose
muy cerca del punto de operacin, reduciendo as la posibilidad de que el sistema salga del intervalo
de linealizacin, hecho que ocasionara la prdida de la posicin vertical.
81
El segundo punto a destacar est estrechamente relacionado con lo mencionado en el p-
rrafo anterior, y es referente a la seal de control. Cuando se disea un controlador basado en la
retroalimentacin del estado, resulta muy importante elegir adecuadamente la ubicacin de los polos
en lazo cerrado del sistema (polos de control) pues de stos dependen las caractersticas dinmicas
del mismo. As, si se colocan los polos de control en el semiplano izquierdo del plano s pero cercanos
al eje imaginario, el control tendr una respuesta ms lenta en comparacin a que si se colocaran
dichos polos ms alejados del mencionado eje; as, entre ms alejados del eje imaginario se encuentren
ubicados los polos de control ms rpida ser la respuesta del controlador. Una respuesta rpida del
sistema de control implica magnitudes grandes en la seales de control, as, cuanto ms rpida sea
la respuesta del controlador ms grande ser la seal de control. Esto es una limitante al momen-
to de disear un controlador, ya que se podra pensar que un controlador con una respuesta muy
rpida representara el mejor comportamiento del sistema, sin embargo, no siempre es conveniente
tener seales de control muy grandes pues en ocasiones resulta imposible generar sicamente tales
seales, ya sea porque no se cuenta con etapas de potencia adicionales capaces de proveer la energa
necesaria al actuador, o simplemente porque el actuador no es apto para trabajar con seales de
tal magnitud, como sera el caso de un motor de corriente directa, donde la seal de control se ve
limitada por los valores nominales de voltaje y corriente de ste. Para el caso bajo anlisis, el tener
movimientos cortos de los eslabones para corregir los pequeos desviaciones en la posicin como se
ha mencionado en el prrafo anterior, permite observar que la seal de control no es muy grande
bajo condiciones normales de operacin, y por tanto la seal de control nunca satura al actuador del
sistema. Esto muestra que pese a que el sistema de control diseado no es un sistema robusto, s es
capaz de absorber ligeras perturbaciones externas, hecho que conrma que se dise un controlador
con un desempeo sobresaliente.
Con base en todo lo antes mencionado, ahora es posible concluir que el sistema de control
y el subsistema de observacin diseados en el captulo 4, son capaces de cumplir ecientemente con
los objetivos de control y observacin dispuestos para su respectivo diseo, permitiendo con esto,
cumplir satisfactoriamente con uno de los objetivos principales de este trabajo, mantener el sistema
en posicin vertical hacia arriba.
82
Captulo 6
Conclusiones
Los objetivos planteados al inicio de este trabajo fueron:
Disear y fabricar el sistema mecnico denominado pndulo doble
Controlar la posicin del pndulo doble en su punto de equilibrio inestable cuando el sistema
se inicializa cerca de tal posicin.
Con respecto al primero de ellos se puede armar que se dise y fabric un mecanismo de
dimensiones adecuadas para ser fcilmente instalado en una mesa de laboratorio, adems por haber
sido fabricado en su mayor parte en Nylamid result ser un mecanismo muy ligero, lo cual permitir,
si as se requiriera, llevar el mecanismo al aula de clase para realizar una demostracin prctica
del pndulo doble. Al dispositivo ya fabricado, se podrn agregar ms unidades, de acuerdo a las
necesidades del departamento, ya que los planos de fabricacin se incluyen al nal de este documento.
Se comprob la utilidad del procedimiento usado para la determinacin de los parmetros
dimensionales de los eslabones del pndulo doble, pues los resultados obtenidos por las simulaciones
hechas durante este proceso se vericaron al poner en marcha el mecanimo construido, de esta
manera fue posible depurar virtualmente el diseo mecnico de las piezas involucradas sin necesidad
de fabricar prototipos de todas las combinaciones dimensionales propuestas, lo cual contribuy a
disminuir el tiempo invertido al desarrollo de esta etapa del diseo mecnico. Con esto se puede
armar que este procedimiento de diseo puede ser perfectamente aplicado en diseos donde se
requiera cumplir con ciertas restriccines o cuando se necesite modicar el diseo ya existente de
algn componente de un sistema mecnico dado.
Con respecto al segundo objetivo se puede armar que el modelo matemtico obtenido re-
produce adecuadamente el comportamiento dinmico que describe en la realidad el pndulo doble,
83
pues se comprob que las simplicaciones hechas en el modelado, referentes principalmente a los tr-
minos disipativos, no afectaban considerablemente las predicciones del modelo matemtico. Tambin
fue posible comprobar, tanto en simulacin como en el sistema real, la validz del modelo linealizado
cuando se trabaja en la vecindad del punto de operacin, lo cual muestra la utilidad de los modelos
linealizados cuando se trabaja con sistemas no lineales cuyo comportamiento es de mayor inters en
puntos de operacin especcos.
Un punto importante para poder cumplir con el segundo objetivo, fue el diseo de un
observador de estados. A este respecto es posible decir que se demostr la utilidad, conabilidad y
conveniencia de estos subsistemas cuando no es posible contar con mediciones de todas las variables de
estado involucradas. Con respecto al sistema de control se pudo comprobar que un controlador lineal
como el diseado en este trabajo puede cumplir satisfactoriamente con los requerimientos de control
de un sistema mecnico cuyo comportamiento dinmico sea descrito por un modelo matemtico no
lineal. Con esto se concluye que se dise e implement un sistema de control y un subsistema de
observacin de estados capaces de mantener la posicin del pndulo doble en su punto de equilibrio
inestable, permitiendo as cumplir satisfactoriamente con el segundo objetivo de este trabajo.
Por ltimo, es importante destacar la importancia de haber utilizado un programa como
LabVIEW
R
para la implementacin del controlador del sistema, pues al ser el cdigo del programa
estructurado mediante diagramas de bloques resulta ser muy intuitivo y fcilmente compresible, as,
considerando que este mecanismo ser utilizado para el desarrollo de prcticas en las asignaturas de
control, el alumno podr interpretar rpidamente las funciones que realiza cada parte del cdigo, lo
cual brinda la posibilidad de que el alumno pueda tomar como ejemplo a seguir lo desarrollado en este
trabajo para desarrollar e implementar sus propios proyectos. Otro punto a considerar con respecto
a LabVIEW
R
, es la capacidad que presenta este programa para implementar cualquier clase de
controlador, lo cual brinda posibilidad de implementar otro tipo de controladores y/o observadores de
estados que permitan depurar el desempeo actual del sistema. Con esto queda abierta la posibilidad
para que en trabajos futuros se puedan realizar mejoras al sistema ya sea en el diseo del controlador
y del observador del sistema o en el cdigo de LabVIEW
R
aqu presentado.
84
Apndice A
Parmetros
A.1. Parmetros del sistema pndulo doble
A continuacin se enlistan los parmetros del sistema.
Parmetro Magnitud
m1: Masa del eslabn 1 0.065 [kg]
m
2
: Masa del eslabn 2 0.025 [kg]
l
1
: Longitud total del eslabn 1 0.15 [m]
l
c1
: Distancia del eje de rotacin del eslabn 1 a su c.m. 0.113 [m]
l
2
: Distancia del eje de rotacin del eslabn 2 a su c.m. 0.173 [m]
b
1
: Coeciente de friccin referente al eslabn 1 0.002 [N s / m]
b
2
:Coeciente de friccin referente al eslabn 2 0.0002 [N s / m]
g : Aceleracin de la gravedad 9.78 [m/s]
A.2. Parmetros del actuador
Los parmetros del actuador del sistema son los siguientes:
Parmetro Magnitud
k
a
: Constante de par 0.07467 [N m / A]
k
b
: Constante de velocidad 0.0567 [V s / rad]
R : Resistencia 15.917 []
Voltaje nominal 24 [V]
Corriente a rotor bloqueado 1.5 [A]
A.3. Modelo del sistema
Con base en las tablas anteriores se obtiene la representacin lineal continua en variables
de estado del pndulo doble sustituyendo los valores de los parmetros en las ecuaciones 2.37. Las
matrices del sistema se presentan a continuacin:
85
A =
2
6
6
6
6
6
6
4
0 1 0 0
130.7362 2.7302 44.1875 0.2089
0 0 0 1
113.3551 2.3672 94.8447 0.4485
3
7
7
7
7
7
7
5
B =
2
6
6
6
6
6
6
4
0
5.6522
0
4.9007
3
7
7
7
7
7
7
5
C =
2
4
1 0 0 0
0 0 1 0
3
5
A.4. Parmetros del controlador
Para el clculo de la matriz de retroalimentacin K, realizado en el captulo 4, los polos
deseados fueron :
Pc = [5 + i; 5 i; 14; 15]
con lo cual la matriz de retroalimentacin result ser:
K = [6;0425 9;4958 149;1708 18;2612]:
A.5. Parmetros del observador
Los polos deseados del observador fueron :
Po = [95; 96; 97; 98]
por lo tanto la matriz de ganancias del observador calculada es:
L =
2
6
6
6
6
6
6
4
188.2698 0.2089
8737.2241 4.1098
2.3672 194.5515
331.2538 9514.0917
3
7
7
7
7
7
7
5
86
Apndice B
Control discreto
Como se mencion en el captulo 5, la implementacin del sistema de control se realiza me-
diante una computadora, el paquete de computo LabVIEW
R
y una tarjeta de adquisicin de datos.
Esto es importante porque signica que las seales involucradas en el sistema son seales digitales
y por tanto el sistema de control es un controlador digital. Debido a esto, se requiere tranformar el
modelo en variables de estado del sistema a su respectivo modelo discreto. Esta transformacin del
sistema se realiza fcilmente en LabVIEW
R
con ayuda de un bloque; sin embargo, es importante
conocer como se realiza esta transformacin.
En un sistema controlado mediante un sistema de control digital la seal de control u(t)
slo se modica en los instantes nT de tiempo, es decir u(t) es constante para (n 1)T t nT,
donde T es el tiempo de muestreo.
La versin en tiempo discreto de un sistema dinmico lineal e invariante en el tiempo como
el descrito por las ecuaciones (2.16) y (2.17) se escribe como
x((k + 1)T) = A
D
(T) x(kT) + B
D
(T) u(kT) (B.1)
y(kT) = C x(kT) + D u(kT) (B.2)
donde
A
D
(T) = e
AT
B
D
(T) =
Z
T
0
A
D
(T)B dT
87
y las matrices C y D no se modican.
Anlogamente al caso continuo los valores propios del sistema discretizado,
Di
, se calculan
a partir de la ecuacin caracterstica del sistema discreto
j zI A
D
j= 0
En particular, si los valores propios,
i
, del sistema continuo se conocen, los valores propios
del sistema discretizado se pueden obtener por medio de la transformacin

Di
= e
T
i
B.1. Control mediante asignacin de polos
Del mismo modo que en el caso continuo, la dinmica de un sistema en tiempo discreto
puede modicarse asignando arbitrariamente los polos en lazo cerrado del sistema mediante una
retroalimentacin de los estados a travs de una matriz de ganancias de retroalimentacin, es decir,
mediante la eleccin de una seal de control del tipo
u(kT) = Fx(kT)
Anlogamente al caso continuo, para poder asignar arbitrariamente los polos en lazo cerrado
del sistema, ste debe ser controlable, es decir debe cumplir con la condicin
rango[B
D
.
.
. A
D
B
D
.
.
.
.
.
. A
n1
D
B
D
] = n
Si la condicin de controlabilidad es satisfecha por el sistema en tiempo discreto, el diseo del
control consiste en determinar los coecientes constantes de control de la matriz de retroalimentacin
F de tal manera que los polos del sistema en lazo cerrado (A
D
B
D
F) se ubiquen en puntos especcos
del crculo unitario centrado en cero del plano z.
Cabe destacar que la descripcin del sistema (B.1) en lazo cerrado est dada por
x((k + 1)T) = (A
D
B
D
F) x(kT)
y(kT) = (C DF) x(kT)
88
De igual forma a lo presentado para el clculo de la matriz K en el caso continuo, el clculo
de la matriz de retroalimentacin F se puede realizar mediante la frmula de Ackerman. La frmula
de Ackerman para un sistema discreto est denida como sigue
F = [0 0 0 1][B
D
.
.
. A
D
B
D
.
.
.
.
.
. A
n1
D
B
D
]
1
(A
D
)
donde (A
D
) es la ecuacin caracterstica deseada del sistema en lazo cerrado (A
D
B
D
F) evaluada
en A
D
.
B.2. Observador de estados
Cuando en el sistema real no todas las variables de estado estn disponibles para su medicin
directa es necesario estimar las variables no disponibles, para esto se recurre a los observadores de
estado, los cuales reconstruyen las variables de estado no medibles basndose en la informacin de
las seales medibles de la planta.
El uso de observadores de estados es siempre posible si y slo si el sistema es observable, es
decir, si cumple con la condicin
rango
2
6
6
6
6
6
6
4
C
CA
D
.
.
.
CA
n1
D
3
7
7
7
7
7
7
5
= n
En seguida se describe brevemente un observador de orden completo, el cual estima todas
las variables de estado del sistema sin importar si algunas de ellas estn disponibles para su medicin
directa. En adelante se usar la notacin ^ x(kT) para denotar el vector de estado observado.
Un observador de estados de orden completo se describe como un sistema dinmico con la
ecuacin en diferencias
^ x((k + 1)T) = A
D
^ x(kT) + B
D
u(kT) + F
B
(y(kT) C^ x(kT)) (B.3)
= (A
D
F
B
C)^ x(kT) + B
D
u(kT) + F
B
y(kT)
El observador de estados dado por la ecuacin (B.3) se llama observador de prediccin,
pues el estimado x(k + 1) est un perodo de muestreo adelante de la medicin y(kT). Los valores
caractersticos de A
D
F
B
C se conocen como polos del observador.
89
De igual forma a lo presentado para el caso continuo, la ecuacin de error del observador se
obtiene restando la ecuacin de estado del sistema en tiempo discreto (B.1) de la ecuacin (B.3)
x((k + 1)T) ^ x((k + 1)T) = (A
D
F
B
C)(x(kT) ^ x(kT)) (B.4)
Si se dene el error, e(kT), como la diferencia entre x(kT) y ^ x(kT)
e(kT) = x(kT) ^ x(kT)
Entonces la ecuacin (B.4) se modica a
e((k + 1)T) = (A
D
F
B
C)e(kT)
De esta ltima ecuacin se observa que la dinmica del error est determinada por los
valores caractersticos de la matriz A
D
F
B
C. Si la matriz A
D
F
B
C es estable, el vector de error
e(kT) tender a cero para cualquier error inicial e(0). Por lo tanto, el vector de error tender a cero
si y slo si los valores propios de la matriz A
D
F
B
C estn localizados dentro del circulo unitario
centrado en cero del plano z.
Si el sistema es observable, es posible seleccionar una matriz F
B
tal que la matriz A
D
F
B
C
tenga los valores propios arbitrariamente deseados. As, el problema de disear un observador de orden
completo est en determinar la matriz de ganancias del observador F
B
de forma tal que el error e(kT)
tienda a cero con una velocidad de respuesta mayor a la del sistema en lazo cerrado. Por lo tanto,
el problema es el mismo que en el caso de asignacin de polos para la obtencin de la matriz F de
retroalimentacin de estados. As, la matriz F
B
puede obtenerse usando las tcnicas existentes para
el clculo de la matriz de retroalimentacin de estados.
90
Apndice C
Conexiones
Las conexiones que se deben hacer para poner en funcionamiento el pndulo doble son
bsicamente dos. La primera de ellas se realiza entre el sistema y la tarjeta de potencia (que es la
tarjeta donde se tiene montada la etapa de potencia del sistema), es decir, se requiere la conexin
de los decodicadores o encoders que miden la posicin angular de los eslabones y la conexin de
la seal de control (la cual es acondicionada en la etapa de potencia) al actuador del sistema. La
conexin de los encoders a la tarjeta de potencia se realiza mediante cuatro cables de colores, dos de
ellos se utilizn para las seales de los canales A y B, y los dos restantes son la alimentacin. Cabe
sealar que las seales de los encoders no son alteradas en la tarjeta de potencia, slo se agrupan
para ser enviadas a la tarjeta de adquisicin de datos.
La segunda conexin se realiza entre la tarjeta de potencia y la tarjeta de adquisicin de
datos, sta se realiza mediante un cable multiconductor de siete vas, las cuales se distinguen por
colores. Las seales que se envan a la tarjeta de adquisicin de datos son los canales A y B de ambos
decodicadores y la conexin a tierra, con esto se hace uso de cinco de las siete vas, las dos restantes
se usan para tomar la seal de control.que se acondiciona en la etapa de potencia. A continuacin se
presenta el diagrama de conexin.
91
Figura C.1: Diagrama de conexiones.
Figura C.2: Diagrama del conector de la tarjeta de adquisicin de datos PCI 6221 (NI).
92
Apndice D
Planos de fabricacin
T

t
u
l
o
E
s
l
a
b

n

1
D
i
b
.
A


C


J


C
R
e
v
.
E


G


R


C
M
a
t
.
N
y
l
a
m
i
d

M
T
o
l
.
0
.
0
2
5
N
o
.

P
l
.
E
s
c
.
A
c
o
t
.
m
m
1

:

2
1
/
1
4
2
5
0
3
2
7
0
1
P
l
.

O
r
i
g
e
n
1
5
0
O
5
0
O
6
.
3
5
O
3
.
1
8
R
1
0
8.2
5
14.4
10
O
1
2
.
7
H
7
(



)
0
+
0
.0
1
8
93
T

t
u
l
o
E
s
l
a
b

n

2

p
a
r
t
e

s
u
p
e
r
i
o
r
D
i
b
.
A


C


J


C
R
e
v
.
E


G


R


C
M
a
t
.
A
c
e
r
o

1
0
1
5
T
o
l
.
0
.
0
2
5
N
o
.

P
l
.
E
s
c
.
A
c
o
t
.
m
m
5

:

1
2
/
1
4
2
5
0
3
2
7
0
2
P
l
.

O
r
i
g
e
n
O
6
.
3
5
H
8
O
1
2
.
7
1
4
1
9
5
R
5
(



)
0
+
0
.0
2
2
94
T

t
u
l
o
E
s
l
a
b

n

2

C
u
e
r
p
o
D
i
b
.
A


C


J


C
R
e
v
.
E


G


R


C
M
a
t
.
A
l
u
m
i
n
i
o
T
o
l
.
0
.
0
2
5
N
o
.

P
l
.
E
s
c
.
A
c
o
t
.
m
m
1

:

1
3
/
1
4
2
5
0
3
2
7
0
2
P
l
.

O
r
i
g
e
n
2
1
3
O
5
.
2
5
6.35 O
95
T

t
u
l
o
E
s
l
a
b

n

2

a
c
o
p
l
a
m
i
e
n
t
o
D
i
b
.
A


C


J


C
R
e
v
.
E


G


R


C
M
a
t
.
N
y
l
a
m
i
d

M
T
o
l
.
0
.
0
2
5
N
o
.

P
l
.
E
s
c
.
A
c
o
t
.
m
m
2

:

1
4
/
1
4
2
5
0
3
2
7
0
2
P
l
.

O
r
i
g
e
n
2
2
12
10
O
6
.
3
5
H
7
O
6
.
3
5
H
7
O
2
.
3
8
O
2
.
3
8
9
3
7
5
5
5
6
6
(



)
0
+
0
.0
1
5
(



)
0
+
0
.0
1
5
96
T

t
u
l
o
E
j
e

A
r
t
i
c
u
l
a
c
i

n
D
i
b
.
A


C


J


C
R
e
v
.
E


G


R


C
M
a
t
.
N
y
l
a
m
i
d

M
T
o
l
.
0
.
0
2
5
N
o
.

P
l
.
E
s
c
.
A
c
o
t
.
m
m
2

:

1
5
/
1
4
2
5
0
3
2
7
0
2
P
l
.

O
r
i
g
e
n
1
2
1
9
1
2
3.175 O g 6
O
4
.
7
6
2
5
h

5
6.35 O g 6
( ) -0.014
-0.005
( ) -0.012
-0.004
(



)
-
0
.0
0
5

0
97
Ttulo
Tapa inferior
Dib. A C J C Rev. E G R C
Mat. Nylamid M
Tol. 0.025
No. Pl.
Esc. Acot. mm 1 : 2 6/14
25032702 Pl. Origen
A
A
SECTION A-A
140
1
4
.
4
60 60 10
2
7
4
1
7
8
1
2
12 116
5
8
4
X

O
4
.
5
4
X

O
3
0
O 3.2
3X
98
Ttulo
Tapa superior
Dib. A C J C Rev. E G R C
Mat. Nylamid M
Tol. 0.025
No. Pl.
Esc. Acot. mm 1 : 2 7/14
25032702 Pl. Origen
A
A
SECTION A-A
2
8
0
.
3
5
140
14.4
1
7
8
1
2
12 116
8
4

X

O
4
.
5
4

X

O
99
T

t
u
l
o
S
o
p
o
r
t
e
D
i
b
.
A


C


J


C
R
e
v
.
E


G


R


C
M
a
t
.
N
y
l
a
m
i
d

M
T
o
l
.
0
.
0
2
5
N
o
.

P
l
.
E
s
c
.
A
c
o
t
.
m
m
2

:

1
8
/
1
4
2
5
0
3
2
7
0
2
P
l
.

O
r
i
g
e
n
6
5
.
6
O
1
2
.
7
4
.
5
M

X


0
.
7
5
2
0
2
0
4
.
5
M
X


0
.
7
5
100
T

t
u
l
o
P
l
a
c
a

f
r
o
n
t
a
l
D
i
b
.
A


C


J


C
R
e
v
.
E


G


R


C
M
a
t
.
A
l
u
m
i
n
i
o
T
o
l
.

0
.
0
2
5
N
o
.

P
l
.
E
s
c
.
A
c
o
t
.
m
m
1
:

1
9
/
1
4
2
5
0
3
2
7
0
2
P
l
.

O
r
i
g
e
n
1
4
0
14.4
50 30
6
0
6
0
O
1
3
O
3
.
1
7
5
2

X
1
2
.
4
1
2
1
2
.
4
1
2
6
.
3
5
3
.
1
8
A A
S
E
C
T
I
O
N

A
-
A
60
O
7.5
O
4
O
1
0
101
T

t
u
l
o
T
o
r
n
i
l
l
o

a
u
t
o
r
o
s
c
a
n
t
e
D
i
b
.
A


C


J


C
R
e
v
.
E


G


R


C
M
a
t
.
A
c
e
r
o
T
o
l
.
N
o
.

P
l
.
E
s
c
.
A
c
o
t
.
m
m
5

:

1
1
0
/
1
4
2
5
0
3
2
7
0
2
P
l
.

O
r
i
g
e
n
2
8
60
4
M X 0.9
O
7
102
T

t
u
l
o
T
o
r
n
i
l
l
o

A
l
l
e
n

d
e

c
a
b
e
z
a

c
i
l

n
d
r
i
c
a
D
i
b
.
A


C


J


C
R
e
v
.
E


G


R


C
M
a
t
.
A
c
e
r
o
T
o
l
.
N
o
.

P
l
.
E
s
c
.
A
c
o
t
.
m
m
5

:

1
1
1
/
1
4
2
5
0
3
2
7
0
2
P
l
.

O
r
i
g
e
n
2
5
.
4
O
7
.
9
4
4.5
M X 0.75
103
Ttulo
Ensamble en explosin de los eslabones
Dib. A C J C Rev. E G R C
Mat.
Tol.
No. Pl.
Esc. Acot. 1 : 2 12/14
25032702 Pl. Origen
3
6
8
1
4
5
2
7
Nmero Elemento Cantidad
1 Eslabn 1 1
2 Rodamiento (D= 1/2", d= 3/16") 2
3 Eje de articulacin 1
4 Eslabn 2 Acoplamiento 1
5 Tornillo prisionero 2
6 Eslabn 2 Cuerpo 1
7 Eslabn2 Parte superior 1
8 Encoder (Modelo E4, US Digital) 1
104
T

t
u
l
o
E
n
s
a
m
b
l
e

e
n

e
x
p
l
o
s
i

n

d
e

l
a

B
a
s
e
D
i
b
.
A


C


J


C
R
e
v
.
E


G


R


C
M
a
t
.
T
o
l
.
N
o
.

P
l
.
E
s
c
.
A
c
o
t
.
m
m
1

:

3
1
3
/
1
4
2
5
0
3
2
7
0
2
P
l
.

O
r
i
g
e
n
1
2
43
5
6
N

m
e
r
o
E
l
e
m
e
n
t
o
C
a
n
t
i
d
a
d
1
T
a
p
a

i
n
f
e
r
i
o
r
1
2
P
l
a
c
a

F
r
o
n
t
a
l
1
3
T
a
p
a

s
u
p
e
r
i
o
r
1
4
S
o
p
o
r
t
e
4
5
T
o
r
n
i
l
l
o

a
l
l
e
n

d
e

c
a
b
e
z
a

c
i
l

d
r
i
c
a
8
6
T
o
r
n
i
l
l
o

a
u
t
o
r
o
s
c
a
n
t
e
3
105
T

t
u
l
o
E
n
s
a
m
b
l
e

e
n

e
x
p
l
o
s
i

n

d
e
l

p

n
d
u
l
o

d
o
b
l
e
D
i
b
.
A


C


J


C
R
e
v
.
E


G


R


C
M
a
t
.
T
o
l
.
N
o
.

P
l
.
E
s
c
.
A
c
o
t
.
1

:

3
1
4
/
1
4
2
5
0
3
2
7
0
2
P
l
.

O
r
i
g
e
n
106
107
Bibliografa
[1] Beer F.P., Johnston E.R. Mecnica vectorial para ingenieros Dinmica. Sexta edicin.
McGraw-Hill. Mxico, 1997.
[2] Boylestad R.L., Nashelsky L. Electrnica: Teora de circuitos. Sexta edicin. Prentice Hall.
Mxico, 1997.
[3] Coughlin R.F., Driscoll F. Amplicadores operacionales y circuitos integrados lineales.
Quinta edicin. Prentice Hall. Mxico, 1999.
[4] Chi-Tsong Chen. Linear System Theory and design. Second edition. Oxford University
Press. USA, 1984.
[5] Dailey D.J. Operational Ampliers and linear integrated circuits: Theory and aplica-
tions. McGraw-Hill. USA, 1989.
[6] Kelly M.R., Santibez V. Control de movimiento de robots manipuladores. Prentice
Hall - Pearson Espaa, 2003.
[7] Lajara Vizcano J.R., Pelegr Sebasti J. LabVIEW. Entorno grco de programacin.
Alfaomega. Mxico 2007.
[8] Ogata Katsuhiko. Ingeniera de control moderna. Cuarta edicin. Prentice Hall - Pearson.
Espaa, 2003.
[9] Ogata Katsuhiko. Sistemas de control en tiempo discreto. Segunda edicin. Prentice Hall
Latinoamericana. Mxico, 1995.
[10] Riley K. F., Hobson, M. P., Bence, S. J. Mathematical methods for physics and engineer-
ing. Third edition. Cambridge University Press. USA, 2006.
108
[11] Acosta R. J, Aracil S. J., Gordillo A.F (2001). Comparative study of nonlinear control strategies
for the furuta pendulum. Proceedings of the International Conference on Measurement and Con-
trol. International Conference on Measurement and Control. Pittsburgh, Pennsylvania (USA).
ISBN: 0-88986-279-6, pp. 18-23.
[12] strm K.J., Furuta K. (2000). Swinging up a pendulum by energy control. Automatica, Volume
36, Number 2 (February 2000), pp. 287-295(9).
[13] Castaos F., Carrera R. (2004). Levantamiento y control de un pndulo invertido con un esquema
de control recongurable. XI Congreso Latinoamericano de Control Automtico. Ciudad de La
Habana, Cuba, Mayo 2004.
[14] Craig K.C., Awtar S. (2002). Inverted pendulum systems: rotary and arm-driven, a mechatronic
system design case study. Mechatronics, Volume 12, Number 2 (February 2002), pp. 357-370.
[15] Furuta K., Kajiwara H, Kosuge K. (1980). Digital control of a double inverted pendulum on an
inclined rail. International Journal of Control, Volume 32, Issue 5 (November 1980), pp. 907 -
924.
[16] Furuta K., Yamakita M, Kobayashi S, Nishimura M. (1991). A new inverted pendulum apparatus
for education. IFAC Symposium on Advances in Control Education. Boston, MA (USA), pp.
191-194.
[17] Graichen K., Treuer M, Zeitz M. (2007). Swing-up of the double pendulum on a cart by feed-
forward and feedback control with experimental validation. Automatica, Volume 43, Issue 1
(January 2007), pp. 1-190.
[18] Iwase M., strm K.J., Furuta K., kesson, J. (2006). Analysis of safe manual control by using
Furuta pendulum. Proceedings of the IEEE International Conference on Control Applications,
pp. 568-572.
[19] Misawa E.A., Arrington M.S., Ledgerwood T.D. (1995). Rotational inverted pendulum: a new
control experiment. Proceedings of the 1995 American Control Conference. Seattle, WA (USA).
Volume 1, pp. 29 - 33.
[20] Mori S., Nishihara H., Furuta K. (1976). Control of unstable mechanical system: Control of a
pendulum. International Journal of Control, Volume 23, Issue 5 (May 1976), pp. 673 - 692.
109
[21] Salas G.F., Aracil S. J., Gordillo A.F. (2003).Control de un pndulo Invertido usando mtodos
de diseo no lineales. XXIV Jornadas de Automtica. Jornadas de Automtica. Num. 24. Len,
Espaa. Universidad de Len. ISBN: 84-931846-7-5.
[22] Verde C., Ramos J., Barrera R. (1996). Experiments for Analysis and Design of Robust Con-
trollers: the inverted pendulum case. The 13th World Congress of IFAC. San Francisco, CA.
(USA), Volume E, pp. 53-58.

También podría gustarte