instituto politecnico nacional -...

82
INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERIA MECANICA Y ELECTRICA UNIDAD PROFESIONAL “ADOLFO LÓPEZ MATEOS” “CONTROL DE UN PÉNDULO INVERTIDO MEDIANTE OBSERVADORES EMPLEANDO FILTRO DE KALMAN” PROYECTO DE INVESTIGACIÓN QUE PARA OBTENER EL TÍTULO DE: INGENIERO EN CONTROL Y AUTOMATIZACIÓN PRESENTAN: ARTURO AGUILAR FAUSTINO JOSÉ ALBERTO CALDERÓN GUTIÉRREZ ALFONSO SÁNCHEZ REYES ASESORES: DR. JUAN EDUARDO VELÁZQUEZ VELÁZQUEZ DRA. BLANCA MARGARITA OCHOA GALVÁN MÉXICO, D.F. 2011

Upload: dokhanh

Post on 01-Oct-2018

243 views

Category:

Documents


0 download

TRANSCRIPT

INSTITUTO POLITÉCNICO NACIONAL

ESCUELA SUPERIOR DE INGENIERIA MECANICA Y ELECTRICA

UNIDAD PROFESIONAL “ADOLFO LÓPEZ MATEOS”

“CONTROL DE UN PÉNDULO INVERTIDO MEDIANTE OBSERVADORES EMPLEANDO FILTRO DE KALMAN”

PROYECTO DE INVESTIGACIÓN

QUE PARA OBTENER EL TÍTULO DE:

INGENIERO EN CONTROL Y AUTOMATIZACIÓN

PRESENTAN:

ARTURO AGUILAR FAUSTINO JOSÉ ALBERTO CALDERÓN GUTIÉRREZ

ALFONSO SÁNCHEZ REYES

ASESORES:

DR. JUAN EDUARDO VELÁZQUEZ VELÁZQUEZ DRA. BLANCA MARGARITA OCHOA GALVÁN

MÉXICO, D.F. 2011

INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELECTRICA

UNIDAD PROFESIONAL "ADOLFO LÓPEZ MATEOS"

TEMA DE TESIS

QUE PARA OBTENER EL TITULO DE INGENIERO EN CONTROL Y AUTOMATIZACIÓN

POR LA OPCIÓN DE TITU LACIÓN PROYECTO DE INVESTIGACIÓN SIP20101173 DEBERA(N) DESARROLLAR

C. ARTURO AGUILAR FAUSTINO C. JOSÉ ALBERTO CALDERÓN GUTIÉRREZ C. ALFONSO SÁNCHEZ REYES

"CONTROL DE UN PÉNDULO INVERTIDO MEDIANTE OBSERVADORES EMPLEANDO FILTRO D'E KALMAN"

CONTROL DE UN PÉNDULO INVERTIDO CON VALORES DE ESTADO NO MENSURABLES EN INTERVALOS DE TIEMPO POR MEDIO DE OBSERVADORES DE ESTADO IMPLEMENTANDO ALGORITMOS DE FILTRO DE KALMAN.

MÉXICO D. F., A 19 DE MAYO DE 2011.

•:. INTRODUCCIÓN. •:. ANTECEDENTES• •:. CONSTRUCCIÓN DEL PÉNDULO INVERTIDO. •:. FILTRO DE KALMAN. •:. DISEÑO DE CONTROLADORES Y SIMULACIÓN .:. CONCLUSIONEES y TRABAJOS FUTUROS

t. (v--1f-\.~ C>u~ t:; .. DR. JUAN EDUARDO VELÁZQUEZ VELÁZQUE DRA. BLANCA MARGARITA OCHOA GALVAN

~A

\,fliIUI~ •. ~~\~~\DOS~

!~.~... -j , ~

JEFE ARTAMENTO ADEMICO D~~ ,'S INGEN N CONTROL Y AUTOMATIZACIÓN IPN CA

JEFATURA I

Índice general

1. Introducción 11.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.2. Problemática . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

1.3. Justi�cación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

1.4. Objetivo general . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.5. Organización del trabajo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

2. Antecedentes 52.1. Obtención del modelo del péndulo invertido . . . . . . . . . . . . . . . . . . 5

2.2. Modelo dinámico del péndulo invertido . . . . . . . . . . . . . . . . . . . . . 9

2.3. Observadores de estado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

2.3.1. Observador de orden completo . . . . . . . . . . . . . . . . . . . . . . 15

2.3.2. Diseño de observadores de orden completo . . . . . . . . . . . . . . . 17

2.3.3. Observador de orden reducido . . . . . . . . . . . . . . . . . . . . . . 19

2.3.4. Diseño de observadores de orden reducido . . . . . . . . . . . . . . . 21

2.3.5. Observador para sistemas MIMO . . . . . . . . . . . . . . . . . . . . 23

3. Construcción del péndulo invertido 243.1. Construcción mecánica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

3.1.1. Base de mecanismo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

3.1.2. Plataforma de carro guía . . . . . . . . . . . . . . . . . . . . . . . . . 26

3.1.3. Carro guía y péndulo . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

3.2. Construcción electrónica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

3.2.1. Adquisición de la posición del péndulo . . . . . . . . . . . . . . . . . 29

3.2.2. Adquisición y posicionamiento del carro guía . . . . . . . . . . . . . . 30

3.2.3. Comunicación de datos con PC . . . . . . . . . . . . . . . . . . . . . 32

i

3.2.4. Logica de funcionamiento de la plataforma experimental . . . . . . . 34

3.2.5. Alimentación eléctrica del dispositivo . . . . . . . . . . . . . . . . . . 37

4. Filtro de Kalman 394.1. Filtro de Kalman . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

4.2. Algoritmo general del �ltro de Kalman . . . . . . . . . . . . . . . . . . . . . 41

4.3. Filtro de Kalman Bucy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

5. Diseño de controladores y simulación 495.1. Control PID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

5.1.1. Control proporcional . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

5.1.2. Control integral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

5.1.3. Control derivativo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

5.1.4. Sintonización de un controlador PID por el método de Ziegler y Nichols 54

5.1.5. Diseño y simulación de un controlador PID para el péndulo invertido 55

5.2. Observadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

5.2.1. Estructura general de control con retroalimentación de

estados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

5.2.2. Diseño y simulación de un controlador basado en observadores de es-

tado para el péndulo invertido . . . . . . . . . . . . . . . . . . . . . . 62

5.2.3. Análisis de estabilidad por plano de fase . . . . . . . . . . . . . . . . 66

5.3. Filtro de Kalman . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

5.3.1. Diseño y simulación de un controlador por observadores de estado basa-

do en el �ltro de Kalman para el péndulo invertido . . . . . . . . . . 69

6. Conclusiones y trabajos futuros 74

ii

Dedicatoria

A nuestros padres

A quienes debemos todo porque siempre han estado con nosotros apoyándonos en todo

momento sin importar las circunstancias.

Así mismo la dedicamos a nuestros hermanos

Ya que los mayores han sido un gran ejemplo a seguir e invitamos a nuestros hermanos

menores que tomen esto como ejemplo de superación y de que si se pueden lograr las cosas

sólo basta que quieras hacerlo.

No menos importante dedicamos esta tesis a nuestras personas

Ya que esta es fruto de nuestro esfuerzo y dedicación la cual hemos mostrado durante todos

estos años de estudio y ahora se ve recompensada con esto.

Arturo Aguilar Faustino

Jos�e Alberto Calder�on Guti�errez

Alfonso S�anchez Reyes

iii

Agradecimientos

En primera instancia queremos agradecer a esta gran institución educativa que es el

Instituto Politécnico Nacional, en especial a la Escuela Superior de Ingeniería Mecánica y

Eléctrica, Unidad Zacatenco, por permitirnos formarnos como profesionistas en sus aulas

y permitirnos realizar este sueño, así mismo gracias por proporcionarnos la preparación

adecuada para desarrollarnos como ingenieros y así poder ayudar al crecimiento de nuestro

amado país.

A nuestros profesores, ya que día a día tiene como misión transmitirnos sus conocimientos

y experiencias con el �n de que nosotros aprendamos de ellos y los aprovechemos al máximo

para llegar a ser excelentes profesionistas y seres humanos.

A nuestros padres, una vez más porque es gracias a ellos y a nuestro esfuerzo es que-

podemos estar en esta instancia de nuestra vida, gracias por su apoyo, por su cariño y por

todo lo que nos han dado a lo largo de nuestra vida.

Al programa de investigaciones PIFI por ser de gran ayuda y apoyo para poder llevar a

cabo el proyecto de investigación SIP 20101173 que desembocó en esta tesis.

Al Dr. Juan Eduardo Velázquez Velázquez, por permitirnos formar parte de su proyecto

de investigación y aceptar ser nuestro asesor en esta tesis, poniendo siempre todo de su parte

para proporcionarnos conocimientos y experiencias por medio de observaciones para mejorar

nuestro trabajo, gracias a su esfuerzo, dedicación y profesionalismo.

A la Dra. Blanca Margarita Ochoa Galván, por aceptar asesorarnos en la realización de

esta tesis y proporcionarnos sus observaciones precisas acerca de nuestro trabajo para así

poder mejorarlo y llevarlo a cabo de la mejor forma posible.

A Dios y a la vida, por permitirnos llegar hasta aquí.

Arturo Aguilar Faustino

Jos�e Alberto Calder�on Guti�errez

Alfonso S�anchez Reyes

iv

Capítulo 1

Introducción

1.1. Introducción

El modelo del péndulo invertido es un ejemplo clásico en la literatura de control, ver [3],

[7] y [6], el cual tiene diversas aplicaciones para soluciones a problemas reales presentes en

nuestro entorno, por mencionar algunos basta recordar la marcha, el balance y la postura

humana, con esto se resuelve uno de los grandes paradigmas de la ingeniería biomédica, el cual

es crear un modelo que ejempli�que al cuerpo humano es decir que pueda simular procesos

como caminar o hasta correr, como lo menciona [9], estos modelos son muy importantes para

poder implementar mejoras en la calidad de vida de las personas con capacidades diferentes,

por ejemplo la realización de una prótesis. Ocurre lo mismo para cuando se desea mantener

el control de un cohete en el espacio ya que se debe mantener una posición vertical y de

esto se encargan los mandos del cohete análogamente es lo que hace el cerebro cuando se

camina, mantener un balance para una posición vertical deseada, no se puede dejar de lado

que este tipo de modelo es muy utilizado para poder simular cómo se comporta un edi�cio

en presencia de ciertas perturbaciones que en este caso en particular son el aire que lo azota

y/o algún sismo que puede presentarse y afectar dicha construcción y lo ideal es que este

edi�cio se mantenga estable ante estos fenómenos. Uno de los usos frecuentes del péndulo

invertido es el del posicionamiento de un satélite con respecto a la tierra, en éste caso el

satélite esta en movimiento y las antenas que se encuentran en la tierra no pueden dejar que

se desplace libremente, ya que se corre el riesgo de salir del rango de comunicación entre

ellos. Es así como podríamos decir que están sujetos estos dos cuerpos satélite y antena por

un vector virtual el cuál en la parte de la tierra se encuentra �jo y la parte en movimiento

1

en el espacio, haciendo así la función del péndulo invertido.

1.2. Problemática

Existen diversas técnicas de control para el péndulo invertido, sin embargo en algunas

circunstancias no es posible medir directamente todos los elementos debido a la construcción

del propio sistema o la complejidad de éste para la implantación del más adecuado método

de control siendo el que mejor se adapte a las necesidades de proceso reduciendo costos de

operación, diseño y construcción que es uno de los aspectos más importantes que busca la

ingeniería. El análisis y observación de partes de dichos sistemas es realizado empleando

herramientas matemáticas y tecnológicas de las cuales necesitamos conocer su estado, pero

por alguna circunstancia nos es difícil o imposible medir el valor de la variable que deseamos

conocer en cierto intervalo del proceso, por ello existen los observadores de estado con los

cuales es posible estimar los valores, siendo de gran ayuda para el análisis del proceso para

su mejor control.

En concreto la problemática presentada en el trabajo es el control de un péndulo invertido

con valores de estado no mensurables en intervalos de tiempo.

La propuesta que aquí se pretende es utilizar un algoritmo de �ltro de Kalman conjun-

tamente con los observadores de estado que al tratarse de un método recursivo, permite

obtener una estimación de mínima varianza del estado partiendo de observadores utilizando

para integrar las medidas del sistema.

1.3. Justi�cación

Actualmente existen diferentes técnicas para controlar un péndulo invertido, ver [19],

[18] y [17], en este trabajo en especí�co se plantea el control por medio de observadores de

estado basados en el �ltro de Kalman, el por qué es debido a que presenta ventajas sobre

otros métodos ya que para sistemas no lineales no existe un �ltro de dimensiones �nitas que

resuelva el problema del �ltrado óptimo de manera similar al �ltro de Kalman en el caso

lineal Gaussiano y el método de aproximación más simple al problema del �ltrado no lineal

es precisamente el �ltro de Kalman extendido, ver [15]. En éste sistema es muy importante el

�ltrado con una buena estimación de los estados no mensurables del sistema para así poder

implementar adecuadamente el lazo de control.

2

Esta medición se lleva a cabo de forma indirecta utilizando la medición de algunas vari-

ables del proceso y el modelo del mismo para estimar las variables complicadas de medir o el

estado completo de ellas. El �ltro de Kalman se utiliza generalmente para sistemas estocás-

ticos y que utiliza observaciones hasta el tiempo en que el estado del sistema dinámico es

estimado este método permite calcular el estado de un sistema dinámico lineal, perturbado

por señales ruidosas, utilizando mediciones que se relacionan linealmente con el estado, pero

que están contaminadas con este tipo de señales. Este estimador es óptimo desde el punto

de vista estadístico ya que se obtiene de la solución de un problema cuadrático lineal.

El �ltro de Kalman linealizado, tiene problemas porque a medida que el tiempo transcurre

se produce una desviación entre la trayectoria real y la trayectoria nominal. Esta desviación

hace que la aproximación lineal, despreciando los términos de alto orden, ya no sea válida y

se produzcan errores en el cálculo.

Por tal razón la propuesta del presente trabajo es emplear el �ltro de Kalman, el cual

para mejorar la estimación que se realiza sobre la linealización alrededor de la trayectoria,

empleando el uso de observadores de estado.

El modelo del péndulo invertido tiene distintas aplicaciones con nuestro entorno, siendo de

vital importancia para la comunidad relacionada con el control y anexos para que cuenten con

una herramienta para visualizar con un mejor enfoque los aspectos referentes a un péndulo

invertido y así realizar pruebas físicas con esta plataforma para de esta manera realizar el

análisis de ciertos temas de control ya que muchos se pueden integrar con este sistema para

el desarrollo e implantación de diversas técnicas de control.

1.4. Objetivo general

Se desea el desarrollo de control de un péndulo invertido con valores de estado no men-

surables en intervalos de tiempo por medio de observadores de estado implementando algo-

ritmos de �ltro de Kalman.

Las metas particulares son:

Construcción de un sistema físico de péndulo invertido simple

Obtención de un controlador por �ltros de Kalman con el uso de observadores de estado

para el sistema de péndulo invertido simple.

3

Crear una interfaz para la adquisición de señales de retroalimentación en el controlador

así como la aplicación de señales de manipulación al sistema físico.

Realizar el circuito electrónico para la obtención de señales de retroalimentación del

sistema.

1.5. Organización del trabajo

El presente trabajo está conformado de la siguiente manera:

Primeramente en el capítulo uno es presentado el desarrollo matemático del modelo

del péndulo invertido, también se brindan las de�niciones, conceptos básicos y diseño de

observadores de estado.

En el capítulo dos, se detalla la construcción del dispositivo físico del péndulo invertido,

así como de la plataforma que simula el comportamiento del sistema.

Posteriormente en el capítulo tres se presentan los conceptos básicos concernientes al

�ltro de Kalman y el �ltro de Kalman Bucy, las ventajas de uno con respecto a otro son

mencionadas en el mismo.

Diversos tipos de estrategias de control son presentadas en el capítulo cuatro, con la

�nalidad de comparar y validar los resultados obtenidos mediante el control de Filtro de

Kalman, así mismo se mencionan los resultados del análisis de estabilidad por el método de

plano de fase

Finalmente, las conclusiones y trabajos futuros son presentados en el capítulo cinco.

4

Capítulo 2

Antecedentes

En éste capítulo se desarrolla el modelo matemático del péndulo invertido, así como se

brindan de�niciones y conceptos básicos para el entendimiento del mismo. Primeramente em-

pleando el método de Euler Lagrange, se obtiene un modelo, el cual es linealizado. Posterior-

mente se analiza la estabilidad del sistema y �nalmente se de�nen conceptos de observadores

de estado, así como diseño de los mismos.

2.1. Obtención del modelo del péndulo invertido

El procedimiento por el cual se obtiene el modelado en variables de estado del péndulo

invertido simple será a través del método de Euler Lagrange donde nos re�ere que el péndulo

invertido es un sistema de fuerza independiente conociéndose como un sistema subactuado,

ver [8]; teniendo el sistema en sus puntos de equilibrio inestables debido a su naturaleza

misma a menos que se aplique alguna acción de control la cual forcé al sistema a mantenerse

en los puntos de equilibrio deseados, esta acción de control se debe aplicar al carro el cual

tendrá un movimiento lineal sobre el eje de las x para mantener en los puntos de equilibrio

deseados, siendo necesario la descripción de la dinámica del sistema, ver más [2].

5

Considere el sistema mostrado en la siguiente imagen:

Imagen 2.1. Diagrama de un péndulo invertido

En el sistema mostrado por la imagen 2.1 la energía potencial de cada articulación, está

dada por

ui = mig�i + uref (2.1)

donde:

mi es la masa del eslabón i-ésimo,

g es la fuerza de gravedad,

�i es donde se localiza la posición del centro de masa de la articulación i-ésima, con

respecto al nivel de referencia de energía potencial cero

uref es una referencia de energía potencial cero.

Seleccionando la constante de referencia de manera que la energía potencial siempre sea

positiva, la expresión (2.1) se puede rescribir como

ui = mig�i

6

la energía potencial total del sistema es la suma de la energía de cada articulación, es decir

U =

nXi=1

mig�i: (2.2)

En el caso del péndulo presenta dos articulaciones �1 y d2, y la referencia en la cual la

energía potencial es cero, por lo tanto las ecuaciones que representan la energía potencial

están dadas por:

u1 = m1gl1 sin(�1) +m1l1g;

u2 = m2gd2 sin(�1) +m2gd2m�ax;

la energía potencial U total está dada por:

U = u1 + u2;

= g sin(�1)(m1l1 +m2d2) + g(m1l1 +m2d2m�ax):

A continuación se muestran las ecuaciones para la energía cinética, la cual está dada por:

ki =1

2miv

2i ; (2.3)

donde:

vi representa la velocidad del movimiento del eslabón i-ésimo

ki indica la energía cinética debido a la velocidad lineal de la masa de la articulación

i-ésima

la energia cinética total del sistema es la suma de la energía individual de cada articu-

lación, es decir:

K =

nXi=1

ki (2.4)

Considerando que la energía cinética de la ecuación (2.3) está de�nida por la velocidad

del movimiento del eslabón i-ésimo se rescribe como

K(�; _�) =1

2_�TM(�) _�;

con:

M(�) es la matriz de la masa del sistema, tal que M(�) =M(�)T > 0, � 2 Rn

� representa el vector de posiciones angulares de las articulaciones del sistema.

7

La expresión (2.3) de la energía cinética de cada eslabón está dada por:

k1 =1

2m1l

21_�2

i ;

k2 =1

2m2(d

22_�2

1 +_d22);

la energía cinética total es:

K = k1 + k2

=1

2_�2

1(m1l21 +m2d

22) +

1

2m2

_d22:

Vale la pena resaltar que los términos de inercia que afecten al sistema fueron omitidos, ya

que el péndulo invertido se trata de un sistema subactuado.

Las ecuaciones (2.2) y (2.4) se usan para calcular el Lagrangiano ver más [8], el cual se

de�ne como la diferencia entre la energía cinética y la energía potencial del sistema, es decir

L(�; _�) = k(�; _�)� u(�);

con_� =

d

dt�;

de esta manera nos proporciona un medio para obtener las derivadas de las ecuaciones del

sistema, con respecto a las variables del mismo obteniendo las ecuaciones en función de su

posición velocidad y aceleración, dada por

d

dt

�@L

@ _�

�� @L@�

= � ; (2.5)

esta expresión representa las ecuaciones diferenciales de movimiento del sistema, con lo que

es posible expresar las ecuaciones diferenciales en arreglos vectoriales como

M(�)�� + C(�; _�) _� +G(�) = �

con:

� es el vector de torque aplicado al sistema, de esta manera al tomar la ecuación

n-articulaciones o grados de libertad

C(�; _�) 2 Rnxn es la matriz de fuerzas centrifugas y de coriolis del sistema.G(�) es el vector de gravedad del sistema, G(�) 2 Rnx1:

8

2.2. Modelo dinámico del péndulo invertido

En el siguiente sección se realiza la obtención del modelo no dinámico del péndulo inver-

tido, usando el procedimiento de Euler Lagrange. En la imagen 2.2 se muestra el diagrama

esquemático del sistema.

Imagen 2.2.Diagrama esquematico del

péndulo invertido

donde:

M es la masa del carrito en kilogramos (kg),

m representa la masa del péndulo en kilogramos (kg),

l es el longitud del péndulo en metros (m),

g nos indica la aceleración gravitacional en metros por segundo2 (m=s2),

q1 es la medición de la posición del carro en metros (posición articular 1),

q2 es la medición de la posición angular del péndulo en radianes (posición articular 2) y

u es la fuerza aplicada en Newton (N) la entrada de control.

9

Para el análisis de las energías se considera un modelado de masa puntual como se ve en

la imagen 2.3.

Imagen 2.3 Modelo de masa puntual del péndulo

invertido

En la imagen anterior se muestra la propuesta para el modelo de masa puntual, donde x

es la referencia de energía potencial cero.

Con la referencia de energía potencial en cero que se marca en la imagen 2.3 la energía

potencial del carro es UM = 0; y la energía potencial del péndulo se representa por Um =

mgl cos q2; por lo que la energía potencial del sistema es

U = UM + Um

= mgl cos q2:

La energía cinética del carro se calcula como:

KM =1

2M _q21; (2.6)

donde:

_q1 =ddtq1; es la velocidad lineal del carro, la energía cinética del péndulo se obtiene por medio

10

de la siguiente ecuación:

Km =1

2m[V 2x + V

2y ]

=1

2m[ _C2x + _C2y ];

con:

Cx = q1 + _q2l cos q2 (2.7)

y

Cy = l cos q2: (2.8)

Los términos de las ecuaciones (2.7) y (2.8) se obtienen directamente de la �gura 1.3,

sustituyendo (2.7) y (2.8) en (2.6) se obtiene la energía cinética del péndulo

Km =1

2m�( _q21 + _q2l cos q2)

2 + (� _q2l sin q2)2�;

=1

2m[ _q21 + 2 _q1 _q2l cos q2 + l

2 _q22];

la energía cinética total del sistema es la suma de las energías individuales del carro y el

péndulo, es decir:

K = KM +Km

=1

2M _q21 +

1

2m[l2 _q22 + 2 _q1 _q2l cos q2 + _q21]:

Con la energía cinética y potencial del sistema se obtiene el Lagrangiano por medio de la

siguiente ecuación

L = K � U;

de esta manera se tiene que el Lagrangiano es:

L =1

2M _q21 +

1

2m[l2 _q22 + 2 _q1 _q2l cos q2 + _q21]�mgl cos q2;

contemplando esto obtenemos la ecuación del movimiento al realizar la derivada del la-

grangiano:d

dt

�@L

@ _q

�� @L@q

= � (2.9)

La ecuación del movimiento se obtiene al realizar la derivada del langrangiano donde:

@L

@ _q=

"@L@ _q1@L@ _q2

#=

"M _q1 +ml _q2 cos q2 +m _q1

ml2 _q2 +ml _q1 cos q2

#; (2.10)

11

d

dt

�@L

@ _q

�=

"M �q1 �ml _q22 sin q2 +ml�q2 cos q2 +m�q1ml2�q2 +ml _q1 _q2 sin q2 +ml�q1 cos q2

#, (2.11)

@L

@q=

"@L@q1@L@q2

#=

"0

�ml _q1 _q2 sin q2 +mql sin q2

#: (2.12)

Finalmente sustituyendo (2.11) y (2.12) en (2.9), se obtienen las ecuaciones que describen

la dinámica del sistema:"M _q1 �ml _q22 sin q2 +ml�q2 cos q2 +m�q1

ml2�q2 �ml _q1 _q2 sin q2 +ml�q1 cos q2 +ml _q1 _q2 sin q2 �mgl sin q2

#=

"u

0

#agrupando, se tiene

M(q)�q + C(q; _q) _q +G(q) = � ; (2.13)

reescribiendo la ecuación anterior como"M +m ml cos q2

ml cos q2 ml2

#"�q1

�q2

#+

"0 �ml _q2 sin q20 0

#"_q1

_q2

#+

"0

�mgl sin q2

#=

"u

0

#;

(2.14)

la ecuación (2.14) representa el modelo del péndulo invertido no linealizado descrita por la

ecuación (2.13).

A continuación se linealiza el sistema del péndulo invertido mediante series de Taylor.

Las ecuaciones no lineales del péndulo invertido son las siguientes:

(M +m) �q1 +ml��q2 cos q2 � _q22 sin q2

�= u (2.15)

l�q2 + �q1 cos q2 = g sin q2: (2.16)

Obteniendo de la ecuación (2.16) una expresión para �q2; se tiene

�q2 =g sin q2 � �q1 cos q2

l; (2.17)

sustituyendo (2.17) en la ecuación (2.15), obteniendo

(M +m) �q1 +mg sin q2 cos q2 �m�q1 cos2 q2 �ml _q22 sin q2 = u

con lo que �q1, está dada por

�q1 =u�mg sin q2 cos q2 +ml _q22 sin q2

(M +m)�m cos2 q2(2.18)

12

sustituyendo (2.18) en (2.16), se tiene

l�q2 +u cos q2 �mg sin q2 cos2 q2 +ml _q22 sin q2 cos q2

(M +m)�m cos2 q2= g sin q2

obteniendo una nueva expresión para �q2

�q2 =(M +m) g sin q2 � u cos q2 �ml _q22 sin q2 cos q2

l [(M +m)�m cos2 q2]; (2.19)

igualando las expresiones (2.18) y (2.19),

�q1�m cos2 q2 � (M +m)

�= mg sin q2 cos q2 � u�ml _q22 sin q2

se obtiene una expresión para �q1

�q1 =mg sin q2 cos q2 � u�ml _q22 sin q2

m cos2 q2 � (M +m): (2.20)

La linealización del modelo del péndulo invertido de las ecuaciones (2.15) y (2.16) son

obtenidas mediante linealización por series de Taylor, considerando variaciones pequeñas de

q2 alrededor del punto de equilibrio, cuando el péndulo está en la posición superior, así como

los términos de orden superior son despreciados.

La linealización del modelo puede ser expresada en su correspondiente representación de

espacio de estados como sigue, para conocer más ver [10] y [4].

�x = Ax+Bu

y = Cx;

donde:

x =hq1 q2

�q1

�q2

iTy =

hq1 q2

iy las matrices A;B y C están dadas por:

A =

2666640 0 1 0

0 0 0 1

0 (ml)2g(M+m)+mMl2

0 0

0 (M+m)mgl(M+m)+mMl2

0 0

377775 ; B =

2666640

0(ml)2

(M+m)+mMl2

ml(M+m)+mMl2

377775 y C =

"1 0 0 0

0 1 0 0

#: :

13

Observe que el polinomio característico del sistema linealizado está dado por

1

M +m+Ml2m

�Ms4 +ms4 �Mglms2 +Ml2ms4 � glm2s2

�;

dado que las masas, la longitud y la gravedad no pueden ser negativas y aplicando el Criterio

de Routh Hurwitz, es evidente que el sistema es inestable.

El sistema no puede ser compensado por técnicas de control clásico puro cabe mencionar

que existen otras técnicas para compensar el sistema tal es el caso de hacer uso de retroali-

mentación de estados para estabilizar el sistema y posteriormente realizar acciones de control

tales como la proporcional, la integral o la derivativa, según sea el caso.

2.3. Observadores de estado

Los observadores de estado, son herramientas virtuales, que permiten estimar las variables

o estados de un sistema con base en mediciones de las señales de salida y señales de control.

Estos observadores permiten enviar información estimada acerca del valor que toman dichos

estados, permitiendo conocer un aproximado del valor real, además cuentan con muy poco

margen de diferencia o error.

Se le considera una herramienta virtual, puesto que se desarrolla como software o pro-

grama dentro de una computadora.

Existen dos tipos de observadores de estado, si el observador de estado estima todas

las variables de estado del sistema, independientemente de si algunas variables de estado se

encuentran disponibles para medición directa, se denomina observador de estado de orden

completo. Hay ocasiones en que esto no es necesario ya que sólo se requiere observar las

variables de estado no medibles. Por ejemplo, como las variables de salida son observables y

están relacionadas con las variables de estado, no se necesitan observar todas las variables de

estado, sino sólo observar n�m variables de estado, donde n es la dimensión del vector de

estado y m es la dimensión del vector de salida. El observador, que sólo estima las variables

de estado de orden mínimo se denomina observador de estado de orden reducido.

A continuación se detallan estos tipos de observadores, así como su ecuación característica

y los métodos de diseño más comúnmente empleados para su realización.

14

2.3.1. Observador de orden completo

Dado el sistema:

_x = Ax+Bu

y = Cx+Dx

donde:

x Vector de estado (n� 1)

u Señal de control (escalar)

y Señal de salida (escalar)

A Matriz (n� n)

B Matriz (n� 1)

C Matriz (1� n)

D Matriz (escalar)

De los cuales se puede estimar sus estados mediante la siguiente expresión:

�x = A�x+BuL(y � �y)

donde:

L Vector de ganancias que permiten la observación de estados (1� n)

�x Vector de estados estimados

�y Salida estimada

A continuación se muestra un diagrama a bloques en la imagen 2.3.1 de un sistema

retroalimentado por un observador de estado de orden completo, donde se observan todas

15

las variables y su con�guración.

Imagen 2.3.1. Diagrama a bloques de un sistema retroalimentado por un

observador de estados de orden completo

Debe notarse que las matrices A, B, C y D son las mismas tanto para un sistema real

como para el sistema estimado. Para los cálculos siguientes se asume que el valor de D es

cero.

La diferencia existente entre x y �x se denomina error de observación, y el término L(y��y)se denomina factor de corrección.

Para determinar el error de observación restamos _x, así tenemos:

_x���x = (Ax+Bu)� (A�x+Bu+ L(y � �y))= Ax� A�x� L(y � �y)

sustituyendo y = Cx;

_x���x = A(x� �x)� LC(x� �x)

o bien,

_x���x = (A� LC)(x� �x):

16

El error está de�nido como la diferencia entre el estado real y el estado estimado, entonces

se tiene:

e = x� �x_e = _x�

��x

_e = (A� LC) � e

A partir de esta expresión se puede conocer el comportamiento dinámico y la estabilidad

del sistema. Si la matriz [A� LC] es estable y dada cualquier condición inicial en el sistemael error tiende a cero, entonces el observador cumple su objetivo.

La elección de valores correctos para el vector de observabilidad L, permite que el com-

portamiento dinámico del vector de error sea asintóticamente estable y lo su�cientemente

rápido para tender a un valor de cero.

La estabilidad asintótica y la velocidad de respuesta de la dinámica del error se determina

mediante los auto valores de la matriz [A� LC] , dados por el polinomio característicojsI � A+ LCj.A lo que debe considerarse que existe una condición necesaria, la cual consiste en que el

sistema obtenido sea estable, completamente controlable y observable.

2.3.2. Diseño de observadores de orden completo

Existen diversos métodos para el diseño de observadores de orden completo, en la siguiente

sección se detallan de forma concisa los métodos más comúnmente utilizados para este �n.

Método de diseño abreviado

Los valores que toman L1 y L2 están sujetos por las raíces del polinomio, las cuales a su

vez están condicionadas por las características a cumplir por el sistema, por tanto es posible

elegir raíces tales que controlen la respuesta del sistema en lazo cerrado.

Asignando valores para dichas raíces, a los que denotaremos por �1 y �2 de modo tal

que el polinomio tenga una respuesta estable, posteriormente por igualación de términos se

hallan los valores de las incógnitas.

17

Método de diseño por la fórmula de Ackerman

La fórmula de Ackerman aplicada al diseño de observadores de estado, está dada por:

L = �(A)

266664C

CA...

CAn�1

377775�1 266664

0

0...

1

377775 ;donde �(A) es equivalente a �(s), que es el polinomio característico deseado, pero en lugar

de la s se coloca la matriz A.

Método de diseño completo

Determinar la controlabilidad del sistema y la observabilidad

Controlabilidad:

Wc = [B AB : : : An�1B]

Observabilidad:

Wo =

266664C

CA...

CAn�1

377775�1

Calcular el polinomio característico original jsI � Aj, el cual será:

jsI � Aj = sn + a1sn�1 + a2sn�2 + : : :+ an�1s + an = 0

Es conveniente trabajar con las ecuaciones de estado en su forma canónica observable,

si no se encuentra en esta forma, se debe determinar una matriz de transformación

para llevarla a esta forma, la cual se de�ne como:

Q = (W �Wo)�1

Donde Wo es la matriz de observabilidad, y W se de�ne como:

W =

26666664an�1 an�2 � � � a1 1

an�2 an�3 � � � 1 0...

.... . .

......

a1 1 � � � 1 0

1 0 � � � 0 0

3777777518

con a1; a2; : : : an�2; an�3, como coe�cientes del polinomio característico original jsI � Aj.

Se determina el polinomio característico deseado a partir de (s��1)(s��2)(s��3)(s��n), donde i es un polo deseado, obteniéndose:

sn + b1sn�1 + b2sn�2 + : : :+ bn�1s + bn

Finalmente el vector L se encuentra a partir de la siguiente expresión:

L = Q�

26666664bn � an

bn�1 � an�1bn�2 � an�2

...

b1 � a1

37777775 :

2.3.3. Observador de orden reducido

En la práctica no todas las variables necesitan ser observadas, habrá algunas que se

podrán medir directamente y con buena precisión, por tanto no será necesario un observador

que estime todos los estados, sino más bien sólo algunos de ellos.

Si se cuenta con un vector de estados X de dimensión (n� 1) del cual m estados pueden

ser medibles, se tendrá que el orden del observador será (n�m� 1):

A continuación se muestra un diagrama a bloques como se observa en la imagen 2.3.3

de un sistema retroalimentado por un observador de estado de orden reducido, donde se

observan todas las variables y su con�guración.

19

Imagen 2.3.3.Diagrama a bloques de un sistema

retroalimentado por un observador de estados de orden

reducido

El vector X puede ser dividido en dos vectores:

Xa que corresponde a los estados medidos, de orden (m� 1)

Xb que corresponde a los estados observados, de orden (n�m� 1)

X =

2666666666666664

x1

x2...

xm

xm+1

xm+2...

xn

3777777777777775n�1

X1 : : : Xm !Estados conocidos o mediblesXm+1 : : : Xn !Estados no conocidos que requieren ser observadosObteniéndose: "

_Xa_Xb

#=

"Aaa Aab

Aba Abb

#"Xa

Xb

#+

"Ba

bb

#u

Y =hCa Cb

i " XaXb

#

20

Las dimensiones de las sub-matrices son:

Aaa �! m�mAab �! m� n�mAba �! n�m�mAbb �! n�m� n�mBa �! m� 1Bb �! n�m� 1Ca �! 1�mCb �! 1� n�m

El sistema queda reducido a la siguiente expresión:

_Xa = Aaa �Xa+ Aab �Xb+Ba � u_Xb = Aba �Xa+ Abb �Xb+Bb � u

2.3.4. Diseño de observadores de orden reducido

En el diseño de observadores de orden completo, el sistema era descrito por

_x = Ax+Bu

y = Cx+Dx

En cambio para el diseño de observadores de orden reducido el sistema es descrito por la

Ecuación de Estado:_XbAba �Xa+ Abb �Xb+Bb � u;

y por la Ecuación de Salida:

_Xa� Aaa �Xa�Ba � u = Aab �Xb:

De estos dos sistemas se pueden establecer una serie de equivalencias:

Observador de orden completo Observador de orden reducido�X �Xb

A Aab

B � u Aba �Xa+Bb � uY _Xa� Aaa �Xa�Ba � u�Y Aab � �XbC Aa

21

Cabe mencionar que se busca encontrar un vector de observadores L, de orden (n�m�1)En el diseño de observadores de orden completo se determinó la siguiente ecuación:

��x = A�x+BuL(y � �y)

La cual puede llevarse a su correspondiente equivalencia para el caso de observadores de

orden reducido, obteniéndose la siguiente representación:

��Xb = (Abb� L � Aab) �

��Xb+ Aba �Xa+Bb � u+ L � ( _Xa� Aaa �Xa�Ba � u)

y la Ecuación del Error es:

_e = (Abb� L � Aab) � e:

La Ecuación Característica para el observador es la siguiente:

jsI � Abb+ LAabj = si + a1si�1 + a2si�2 + : : :+ ai�1s+ ai = 0

donde i equivale al orden de L, es decir (n�m):La deducción de esta expresión puede encontrarse en la referencia [6]

Metodología de diseño

Se pueden aplicar los mismos métodos usados para hallar los observadores de orden

completo, pero tenemos que hacer una variación la cual consiste en reemplazar los índices en

lugar de considerar el índice n, se debe considerar el índice i. Por ejemplo si un sistema es de

cuarto orden y tiene un estado medible, entonces m = 1, y por tanto el sistema observado

será de tercer orden (n�m = 4� 1 = 3 = i):El otro cambio que hay que hacer es realizar una equivalencia entre las matrices, dada

de la siguiente manera:Aaa �! D

Aab �! C

Aba �! B

Abb �! A

Lo que resta por hacer, es aplicar la misma metodología que para los observadores de

orden completo, considerando el nuevo orden del sistema y las nuevas matrices del sistema

(Abb;Aba;Aab;Aaa).

22

2.3.5. Observador para sistemas MIMO

En el presente trabajo se ha tratado el diseño de observadores para sistemas SISO (single

input, single output), es decir, sistemas que tienen una entrada y una salida. A continuación

se analiza el diseño de observadores para el caso de sistemas con varias entradas y varias

salidas, llamados sistemas MIMO (multiple input, multiple output).

Un sistema MIMO puede ser descrito de la siguiente manera:

_x = Ax+B[u]1�r

y = [C]q�n +D[u]q�r

donde:

x Vector de estado (n� 1)u Señal de control (1� r)y Señal de salida (escalar)

A Matriz (n� n)B Matriz (n� r)C Matriz (q � n)D Matriz (q � r)n Es el orden del sistema (número de estados)

r Es el número de entradas

q Es el número de salidas

En el diseño de observadores, se sabe que el número de entradas que tenga el sistema, no

afectará el diseño del observador, puesto que estos datos no intervienen en los cálculos.

En cambio, el número de salidas con que cuente el sistema si afecta el diseño del obser-

vador. En este caso se aplica el Principio de Separabilidad Lineal, el cual consiste en separar

las salidas y trabajarlas como si fueran provenientes de sistemas distintos.

23

Capítulo 3

Construcción del péndulo invertido

En el presente capítulo se explica la construcción de una plataforma funcional, la cual sim-

ula el comportamiento físico del péndulo invertido aplicando técnicas de control abordadas

en capítulos anteriores y aplicando conocimientos tanto de electrónica como de mecánica.

3.1. Construcción mecánica

La construcción mecánica se encuentra presente en cualquier parte de un prototipo físico,

para poder visualizar el comportamiento del péndulo invertido se requiere de mecanismos

que lleven a cabo la tarea, que el controlador diseñado pretende implementar, a continuación

se detalla la construcción del mecanismo que ayuda a transportar este comportamiento al

proyecto construido.

24

El cual luce como se puede ver en la siguiente imagen 3.1

Imagen 3.1. Proyecto físico.

3.1.1. Base de mecanismo

Para construir el mecanismo de carrera del péndulo se ha reutilizado el mecanismo de

guía de cartuchos de una impresora estándar, desmontándose, la cual fue cubierta de madera

formando una plataforma. El tamaño de dicha plataforma determina en gran parte el dimen-

sionamiento de los elementos restantes que conforman el péndulo, la plataforma se puede ver

en la imagen 3.1.1

Imagen 3.1.1. Base del mecanismo.

25

3.1.2. Plataforma de carro guía

Para el funcionamiento del carro guía se aprovecha el sistema guía de los cartuchos de

una impresora utilizando el motor y la banda para la carrera del mismo, el cual sirve para

mantener �jo el carro a través del espacio de trabajo de la plataforma principal, el carro guía

a su vez soporta el mecanismo del péndulo así como el dispositivo eléctrico para monitoreo

de la posición del péndulo, como se ve en su segmento correspondiente, por lo cual se realizan

las consideraciones pertinentes para modi�car sobre las dimensiones de la plataforma como

se ve en la imagen 3.1.2.

Imagen 3.1.2. Plataforma del carro guía.

De lo anterior se conocen las características eléctricas del motor de C.D. las cuales son:

MODELO VOLTAJE (V) SIN CARGA A PLENA CARGA

RS-385SHRango de op eración Nom inal

6 .24 12

Velo cidad Corriente

RPM A

10000 0.20

Velo cidad Corriente Torque Potencia

RPM A mN*m W

8170 0.89 7.89 6.74

Y las características físicas del mismo son:

26

Características físicas del motor

Es importante resaltar que en la readaptación del dispositivo de carrera de la plataforma

experimental se desconoce la relación de transferencia de velocidad que existe entre el motor

de D.C. y la banda dentada de lo cual resulta en esta la parte la justi�cación del uso de

observadores de estado, de esta manera por medio de los mismos se estima la velocidad del

dispositivo a través del espacio de trabajo.

3.1.3. Carro guía y péndulo

Como se explica en el segmento anterior, se realizan las modi�caciones pertinentes para

ajustar la plataforma a los dispositivos necesarios a instalar, para el funcionamiento libre

del péndulo, se crea el mecanismo el cual se sujeta por el carro guía ajustándose a las

dimensiones que provee el mismo, así como las consideraciones de dimensiones para que

el sistema de péndulo no contenga alguna limitación física en su movimiento, ya sea en

obstrucciones por la plataforma principal o por rozamientos ocasionados por el mecanismo,

como se puede apreciar en la imagen 3.1.3

Así mismo para el monitoreo de la variable de posición que produce el péndulo se coloca

un potenciómetro multivuelta acoplado al eje del péndulo, como se ve en la construcción

eléctrica, se ha optado por un dispositivo multivuelta para así limitar en menor medida

como sea posible el movimiento del péndulo.

El péndulo consta de cierta masa, esta masa produce ciertas variables que afectan la

estructura del mecanismo, como la inercia que se produce por el movimiento, con lo que los

27

materiales deben tener resistencia a las fuerzas y movimientos que produzca el dispositivo,

por lo cual se usan materiales metálicos resistentes a las fuerzas generadas, en el caso de la

guía del péndulo se usa una varilla metálica debido a sus cualidades resistencia del material

así como la capacidad de ajuste de dimensiones de la guía teniendo la posibilidad de ajustar

la distancia del péndulo al eje de la guía, como se ve en la imagen 3.1.3A.

Imagen 3.1.3. Mecanismo del péndulo.

Imagen 3.1.3A Soporte del péndulo.

3.2. Construcción electrónica

El diseño electrónico se ve facilitado por muchos entornos de software. La forma que se

presenta en este segmento es la de subdivisión, es decir dividir el proyecto en partes más

simples y fáciles de implementar, además se realizan por separado la pruebas de cada una

28

de estas partes, de ésta manera si funcionan por si solas, estas funcionarán en conjunto,

para así obtener el proyecto electrónico que se espera; la imagen siguiente muestra el circuito

electrónico.

Imagen 3.2 Circuito electrónico del péndulo.

A continuación se detalla la construcción eléctrica para la puesta en marcha del prototipo

del péndulo invertido, segmentado en varias partes, para su fácil compresión.

3.2.1. Adquisición de la posición del péndulo

El conocer la ubicación inicial del péndulo resulta de vital importancia ya que determina

la acción que debe realizar el controlador. Para determinar la posición angular del péndulo se

ha acoplado el movimiento del eje del péndulo un potenciómetro circular SEN-09074, el cual

produce una señal eléctrica de tipo analógica, señal que determina una posición diferente a

cada valor analógico producido por el variador, este valor es convertido de su señal analógica a

un valor digital de ocho bits, para el cual se de�ne en su rango de 360� la relación matemática

(360x)=255 la que proporciona el valor real de la posición angular del péndulo. Esta señal

una vez procesada es enviada al dispositivo principal de comunicación el pic 18F2550 vía

USB para análisis del controlador.

A continuación se muestra resaltado en la imagen 3.2.1 el circuito para adquisición de

posición del péndulo.

29

Imagen 3.2.1.Diagrama para adquisición de posición angular

3.2.2. Adquisición y posicionamiento del carro guía

Para el sistema físico propuesto es necesario considerar que existen límites físicos, los

cuales nos determinan la información de distancia máxima a recorrer por el carro guía del

péndulo, esta información es retroalimentada por un sensor tipo infrarrojo, sensor de distan-

cia analógico SHARP GP2Y0A21YK. el cual mide la posición del carro mediante una señal

analógica la que retorna al pic 18f2550 y es enviada a través del USB a la interfaz diseñada

en MatlabTM en donde se calcula la posición del carro, ya que el sensor no provee de una

medición lineal se ha medido la señal digital retornada por la tarjeta de adquisición de datos,

así como la distancia del carro, los puntos obtenidos se han extrapolado, obteniéndose:

�0;0007x2 + 0;2847x+ 3;0564

donde x es la variable digital obtenida a través de la comunicación USB-PC.

En el posicionamiento real del carro se utiliza un motor, los componentes antes indicados

se encargan de generar las señales necesarias, pero las características de estas no permiten

conectar directamente a ellos un actuador motor, por lo cual las señales generadas por los

30

componentes una vez más se tratan por una etapa de potencia, con la �nalidad de energizar

el actuador, a continuación se muestra el diagrama en la imagen 3.2.2.

Imagen 3.2.2. Diagrama de etapa de potencia.

Para protección de circuito de control se han integrado opto acopladores a las salidas del

pic 18F2550, pic de posicionamiento, los cuales activan al puente h para proteger el circuito

contra retornos de corrientes, el cual se encarga de mover el carro acoplado al motor para

obtener la respuesta que se desea obtener del sistema.

Una vez comprobado el funcionamiento del circuito se ha creado el circuito físico para la

etapa de potencia aislada de la etapa de control que genera las señales de control, el cual se

muestra a continuación:

Imagen 3.2.3 Etapa de potencia, circuito físico.

31

3.2.3. Comunicación de datos con PC

Para lograr el enlace de la plataforma de MatlabTM en la cual se ha diseñado la in-

terfaz se utilizan las funciones de USB, incorporadas en lenguaje del programa PCW para

programación de pic�s, dichas funciones operan de forma que el ordenador reconozca el dis-

positivo como un dispositivo personalizado. A continuación se describen los pasos a seguir

para establecer la comunicación:

1. Creación del programa para la interfaz en el compilador PCW para pic�s.

2. Compilación y grabado del programa en el pic 18f2550.

3. Ensamblado de los componentes electrónicos, conexión al puerto USB, para el re-

conocimiento del dispositivo, como se puede ver en la imagen la parte resaltada del

diagrama es la parte requerida para este paso.

Imagen 3.2.3 Interfaz para comunicación con Matlab.

4. Obtención de controladores provistos por MicrochipTM .

5. Conexión del dispositivo físico con puerto USB del ordenador.

6. Instalación y ejecución de los controladores provistos por MicrochipTM.

32

7. Comprobación de la correcta instalación en el administrador de dispositivos, de seguirse

los pasos adecuadamente es posible visualizar el controlador como se ve en la siguiente

imagen.

Imagen 3.2.3.1 Ventana de

reconocimiento de controladores.

8. Con�guración del hardware y conexión con la interfaz desarrollada en MatlabTM para

el intercambio de datos.

Imagen 3.2.3.2 Ventana de interfaz

grá�ca del péndulo

9. Comprobación de comunicación entre software y hardware.

33

10. Implementación del controlador diseñado sobre la interfaz.

3.2.4. Logica de funcionamiento de la plataforma experimental

Finalmente de forma general el dispositivo presenta el siguiente comportamiento, el cual

se compone de tres partes de procesamiento de información, las cuales se interpretan como

se ve a continuación.

Lógica de interfaz hombre maquina (alojado en la PC)

Esta parte es un ciclo constante el cual se encarga de recalcular y aplicar la acción de

control constantemente, en principio inicializa la interfaz de comunicación vía USB para

comunicación con el dispositivo físico, a continuación inicia las variables de almacenamiento

de estados y de cálculos, una vez hecho esto se realiza una toma de decisión la cual consiste

de que si el dispositivo físico está conectado se pasa a la siguiente etapa, de no ser así se

espera hasta que el dispositivo esté conectado, la siguiente etapa consta de la obtención de

las variables de posición del dispositivo, a partir de estos se toma la decisión de calcular la

acción de control si el controlador esta activado, si se calcula la acción de control se interpreta

el resultado y se analiza de acuerdo al límite de la velocidad máxima del dispositivo, una

vez convertida al porcentaje de velocidad operable del dispositivo se envía la información

vía USB al dispositivo físico para su aplicación, es importante destacar que a través de la

ejecución y calculo de todo el algoritmo, este interactúa constantemente con el algoritmo de

la interfaz física para actualizar la información y la acción hecha por el dispositivo físico, ver

más [16].

Lógica de Interfaz física de péndulo

Esta parte es a través de la cual mas información pasa ya que este se encarga de comunicar

los datos de las variables de posición en la PC, establecer la comunicación USB con la PC

y a su vez el controlador y también se encarga de ejecutar las acciones calculadas sobre

el actuador (motor). Este algoritmo sigue una lógica estructurada en la que en principio

con�gura el dispositivo (pic) para el tipo de entradas y salidas con las que interactúa, como

son una entrada analógica, una entrada de forma paralelo la cual es suministrada por el

algoritmo de adquisición de posición angular, la cual no es bidireccional lo que implica que

solo recibe información el dispositivo en cuestión, este algoritmo a su vez se encarga de

ejecutar tres salidas digitales para la activación del puente H, y la con�guración para la

34

comunicación vía USB, una vez con�gurado el dispositivo de manera mencionada se procede

a realizar la conversión de la señal analógica en digital, la cual indica la posición del carro

guía a través de la carrera del dispositivo, después de esto se muestrea la señal paralela que

indica la posición angular del péndulo, una vez obtenidas las variables de posición se envía la

información a la PC si la comunicación está disponible, si no se espera a que esté disponible,

una vez envida la información se espera por la recepción de señales de control que retorna vía

USB desde la PC, obtenida esta información se ejecuta sobre el puente actualizando sentido

del motor y porciento de PWM ejecutado sobre el motor, terminado esto se vuelve a ejecutar

el algoritmo sin la necesidad de volver a con�gurar el dispositivo (pic).

Lógica del convertidor de posición angular

Este dispositivo es el encargado de traducir el voltaje producido en un valor digital el

cual puede a través de la conexión paralela realizada con el pic que funge de interfaz con la

PC, en principio se con�gura las entradas del dispositivo (pic) como una entrada analógica

y ocho salidas digitales para transmitir el dato obtenido, una vez hecho esto se muestrea y

convierte la señal analógica que representa la posición angular a un valor digital este se envía

por la conexión paralela al pic 18F2550 y se repite nuevamente el ciclo del algoritmo sin la

necesidad de con�gurar nuevamente el dispositivo, para actualizar constantemente el valor

de la posición angular.

La lógica antes descrita puede visualizarse de forma gra�ca en diagrama de �ujo que se

presenta a continuación en la imagen 3.2.4.

35

Inicio

Inicialización de

Protocolo Interfaz

por USB

Inicialización de

Variables

Recepción de

Variables de

Retroalimentación

Control PID

Activado?

Si

Calculo de

Termino

Proporcional

Calculo de

Termino

Derivativo

Calculo de

Termino

Integrativo

Limites si Variable

es muy Grande o

muy Pequeño

Envió de Señales

de Control

(Sentido y %

PWM)

Dispositivo

Personalizado

Conectado?

Si

No

No

Inicio

Reset del Pic

16f873A

Configuración de

Entradas y salidas

Muestreo de

Voltaje de Entrada

(Posición Angular)

Conversión de

Señal Analógica a

Digital

Envió de Variable

Digital Obtenida a

Salidas por

PORTB

Inicio

Reset del Pic

18F2550

Configuración de

Entradas y Salidas

Configuración de

Terminales para

Comunicación

USB

Muestreo de

Voltaje de Entrada

(Posición de

Carro)

Muestreo de

Entrada en

PORTB (Posición

Angular)

Igualación de

Variables de

Entrada con Buffer

para Envió USB

Comunicación

Disponible

Envió de Datos

Vía USB

Si

No

Recepción de

Datos Vía USB

Igualación de

Buffer con

Variables de

Salida

Colocar % PWM y

Sentido del Motor

Imagen 3.2.4 Diagrama de �ujo general de la plataforma

experimental.

36

3.2.5. Alimentación eléctrica del dispositivo

Para el desarrollo de pruebas es necesario contar con un elemento, el cual suministre

voltaje al circuito, este elemento se conoce como fuente de voltaje.

Debido a la cantidad de componentes y también la con�guración de los mismos se requiere

de tres voltajes diferentes, los cuales son control, potencia y referencias.

(Vcc) Voltaje 5 volts para alimentación de componentes de control como pic�s y dis-

positivos de medición como sensores.

(VDD) Voltaje de 18 volts el cual alimenta la potencia del sistema que se re�ere a la

alimentación para el movimiento del actuador (motor).

(Vss) Voltaje -5 volts que se usa para colocar voltajes de referencias negativas, como

son ampli�cadores operacionales.

Debido a que se requiere alimentar con diferentes voltajes se ha utilizado y creado una

fuente de voltaje, la cual requiere de una conexión de 120 VCA, lo cual hace más fácil tanto

el transporte como el uso del equipo, el circuito correspondiente es el que se puede ver en la

siguiente imagen.

Imagen 3.2.5 Fuente de alimentación.

Una vez probado el circuito y medidos los voltajes de salida es diseñado y construido el

circuito físico, como se puede ver a continuación:

37

Imagen 3.2.5.1 Circuito físico de fuente de voltaje.

38

Capítulo 4

Filtro de Kalman

En este capítulo se presentan los principales resultados sobre algoritmos de �ltro de

Kalman así como el desarrollo de ecuaciones para la implantación del �ltro.

4.1. Filtro de Kalman

El �ltro de Kalman es un método numérico el cual provee una solución recursiva e�ciente

con base al método de mínimos cuadrados, permitiendo calcular un estimador lineal insesgado

y óptimo del estado del sistema o proceso de estudio en todo momento de tiempo con relación

de la información en ese instante y realizar una actualización con la información adicional

obtenida hasta el momento para realizar dichas estimaciones. De esta manera el �ltro de

Kalman tiene como principal �nalidad la estimación de sistemas dinámicos en la forma de

espacio-estado, por lo cual resulta apropiado para el sistema del péndulo invertido.

En el sistema del péndulo invertido existen perturbaciones que afectan al sistema y por

tanto provocan que se alejen del punto de operación deseado, por ello es necesario la im-

plantación de métodos de control para predecir dichas perturbaciones internas o externas

del sistema, consideradas de manera determinística o aleatoria, aunque existen diferentes

métodos para la predicción de estimaciones como es el �ltro de error medio cuadrático o

�ltro de Wiener el cual fue desarrollado por Norbert Wiener en la década de los cuarenta y

publicado en el año de 1949. La �nalidad era ocuparlo en métodos estadísticos para reducir

el ruido que se presenta en la señal de entrada de tal modo que después de utilizarse el �ltro

de Wiener, la salida se aproxime lo más posible a una señal deseada en el sentido cuadrático

medio, la manera en la que se realiza el �ltro de Wiener es tomar la señal de entrada x(t)

39

para obtener un �ltro de esta, en términos frecuenciales comprendido por la transformada

de Fourier para obtener la salida y(t) en sentido de �ltros pasa medias, pasa bandas o pasa

altas que sea lo más parecida a una señal d(n) la cual es denominada set point o punto de

referencia, no obstante un planteamiento lineal del problema obliga a tomar como medida

de parecido el error cuadrático medio entre la salida y la referencia, como se puede ver en la

imagen 4.1.

Imagen 4.1 Diagrama a bloques de Filtro de Wiener

Sin embargo, éste método presenta algunas limitaciones en la utilización de señales disc-

retas y en algunos problemas complejos de múltiples entradas y salidas, por ello en 1960 el

Dr. Rudolph Kalman pública su artículo [13], basado en el �ltro de Wiener para la solución

de diseños de �ltros óptimos, considerando múltiples entradas y salidas, tomando en cuenta

la recursividad mediante el método de espacio estados, el cual implementa el uso de métodos

computacionales lo cual supone un gran aporte. Con base en lo anterior existe la limitante de

que es necesario conocer la entrada del sistema por lo que en 1961 Kalman en conjunto con

Bucy realizan una publicación [14] evocándose al desarrollo del �ltro en tiempo continuo, en

el cual no hay tal limitante y existe una �ltración mas precisa del ruido que se presenta en

el sistema, como se detalla en los siguientes segmentos.

40

4.2. Algoritmo general del �ltro de Kalman

El proceso de estimación que se emplea en el �ltro de Kalman tiene la forma de un control

de retroalimentación, estimando los estados del proceso en tiempo real, y retroalimentándolos

en forma de mediciones.

El objetivo general del �ltro de Kalman se desempeña suponiendo que el sistema puede

ser descrito a través de la obtención de un modelo lineal como en el caso del sistema en el cual

se trabaja en el presente trabajo del péndulo invertido, dicho sistema tiene una naturaleza

no lineal como es el caso de todos los sistemas presentes en nuestro entorno, es por eso que

se procede a su linealización, séase series de Taylor en el presente trabajo, ver más [6] y [5]

para el péndulo invertido.

Para poder emplear el Filtro de Kalman es necesario combinar la información observada

y el conocimiento previo de cómo es que se comporta el sistema por ello es importante desar-

rollar el modelado de éste, para de esta manera ver su comportamiento lo más aproximado a

la realidad, para producir una estimación del error de tal manera que el error sea minimizado

estadísticamente. El término recursivo implica que el �ltro recalcula la información cada vez

que una nueva observación o medida es incorporada al sistema del �ltro.

Debido a que el �ltro de Kalman trabaja con sistemas dinámicos en la forma de espacio

estados es importante tener nuestro sistema descrito en esta forma para la implantación del

Filtro de Kalman, el estado contiene toda la información relativa al sistema a un cierto punto

en el tiempo.

El �ltro de Kalman es tan interesante precisamente a su habilidad para determinar el

estado de un sistema en el pasado, presente y futuro, aún cuando la naturaleza precisa del

sistema modelado es desconocida en ciertos puntos del sistema. En la práctica las variables

de estado individuales de un sistema dinámico no pueden ser exactamente determinadas por

una medición directa. Dicho lo anterior, su medición se realiza por medio de observadores

de estado los cuales se explican en el capítulo uno sección 1.3 de esta tesis para las variables

donde no se puede medir de una manera directa al sistema, compensando estas con sensores

físicos como se ve en el capitulo tres, los cuales nos indican los estados del sistema en un

tiempo t para trabajar en conjunto con el �ltro y obtener la información, para permitir la in-

ferencia del comportamiento pasado del sistema, con el objeto de predecir su comportamiento

futuro.

Para la implantación del �ltro de Kalman podemos derivar las ecuaciones en dos tipos:

Las que actualizan el tiempo o ecuaciones de predicción y

41

Las que actualizan los datos observados o ecuaciones de actualización.

Las primeras son responsables de la proyección del estado al instante t considerando

como referencia el estado en el momento t � 1 y de la actualización intermediaria de lamatriz de covarianza del estado. El segundo grupo de ecuaciones son responsables de la

retroalimentación, incorporan nueva información dentro de la estimación anterior, con ello

se llega a una estimación mejorada del estado.

Por ello, el algoritmo de estimación �nal puede de�nirse como un algoritmo de pronóstico-

corrección para resolver numerosos problemas a toda clase de sistemas de cualquier tipo como

económicos, tal es el caso del Departamento de investigaciones económicas del Banco central

de Costa Rica, [12].El �ltro de Kalman funciona por medio de un mecanismo de proyección

corrección, al pronosticar el nuevo estado y su incertidumbre y corregir la proyección con

una nueva medida como se observa en la imagen 4.2.

Imagen 4.2 El ciclo del Fíltro de Kalman.

Para el problema de la estimación en el Filtro de Kalman se debe de considerar las

siguientes ecuaciones que describen el sistema y sus modelos de medición se considera la

siguiente ecuación del sistema lineal en tiempo discreto como:

x[k + 1] = Ax[k] +Bu[k] + Fv[k]; y[k] = Cx[k] + w[k]; (4.1)

donde v[k] y w[k] son ruido blanco Gaussiano:

Efv[k] = 0; Efw[k]g = 0;

42

Efv[k]vT [j]g =�0 k 6= jRv k = j;

Efw[k]wT [j] =�0 k 6= jRw k = j;

(4.2)

Efv[k]wT [j]g = 0:

Efv[k]g representa el valor esperado de v[k]Efv[k]vT [j]g es la correlación de la matrizRv y Rw son las matrices de covarianza para el proceso de perturbación v y la medición

del ruido w.

Asumiendo que la condición inicial es modelada como una variable Gaussianna aleatoria

con

Efx[0]g = x0; Efx[0]xT [0]g = P0: (4.3)

Para encontrar un estimado x̂[k] que minimice el error cuadrado medioEf(x[k]�x̂[k])(x[k]�x̂[k])Tg dada por las medidas fy() : 0 � � � tg. Considerando un observador en la mismaforma básica como derivado previamente.

x̂[k + 1] = Ax̂[k] +Bu[k] + L[k](y[k]� Cx̂[k]): (4.4)

Lo anterior se resume como sigue a continuación.

Ver mas [13].Considera un proceso aleatorio x[k] con dinámica dada por la ecuación (4.1)

y procesos de ruido y las condiciones iniciales descritas por la ecuación (4.2) y (4.3). La

ganancia del observador que minimiza el error cuadrado medio esta dado por,

L[k] = AP [k]CT (Rw + CP [k]CT )�1; (4.5)

donde

P [k + 1] = (A� LC)P [k](A� LC)T + FRuF T + LRwLT (4.6)

P0 = Efx[0]xT [0]g: (4.7)

43

Antes de probar este resultado, se re�eja en su forma y función. Primero note que el

�ltro de Kalman tiene la forma de un �ltro recursivo: dando como error cuadrado medio

P [k] = Ef(x[k]� x̂[k])(x(k)� x̂[k])Tg en tiempo k que se puede calcular como el estimado ycambio de error. Por lo que no es necesario hacer un seguimiento de los valores de la salida

Además el �ltro de Kalman da la estimación de x[k] y la covarianza del error P [k], para que

se vea que tan con�able es la estimación también puede mostrarse que el �ltro de Kalman

extrae el máximo de información posible sobre los datos de salida Si se forma el residual

entre la salida y la producción estimada podemos ver,

e[k] = y[k]� Cx̂[k]:

Puede verse que para el �ltro de Kalman la matriz de correlación es

e[k] = y[k]� Cx̂[k]:

Re(j; k) = Efe[j]eT [k]g = W [k]�jk; �jk =

�1 j = k

0 j 6= k (4.8)

En otras palabras el error es un ruido blanco de proceso, así que no hay información dinámica

restante contenida en el error.

El �ltro de Kalman es extremadamente versátil y puede ser usada incluso si el proceso,

ruido o perturbaciones no son estacionarios. Cuando el sistema es estacionario y si P [k],

converge entonces la ganancia del observador es constante:

L = APCT (Rw + CPCT );

donde P satisface

P = APAT + FRvFT � APCT (Rw + CPCT )�1CPAT :

Puede verse que la ganancia optima depende tanto del ruido y medida del proceso, pero

de una manera no trivial. Como el uso de LQR para elegir las ganancias del estado de

retroalimentación, el �ltro de Kalman permite una derivación sistemática de las ganancias

del observador dando una descripción de los procesos del ruido. La solución para el caso de

ganancia constante se resuelve por el comando dlqe con la ayuda de MATLAB.

Queremos minimizar el cuadrado medio del error Ef(x[k]� x̂[k])(x[k]� x̂[k])Tg. Se de�neesta cantidad como P [k] y después se muestra que satisface la recursión dada por la ecuación

44

(4.6).

P [k + 1] = Ef(x[k + 1]� x̂[k + 1])(x[k + 1]� x̂[k + 1])Tg= (A� LC)P [k](A� LC)T + FRuF T + LRwLT

= AP [k]AT � AP [k]CTLT � LCP [k]AT + L(Rw + CP [k]CT )LT :

Dejando R� = (Rw + CP [k]CT ), se tiene

P [k + 1] = AP [k]AT � AP [k]CTLT � LCP [k]AT + LR�LT (4.9)

= AP [k]AT + (L� AP [k]CTR�1� )R�(L� AP [k]CTR�1� )T � AP [k]CTR�1� CP T [k]AT :

Para minimizar esta expresión escogemos L = AP [k]CTR�1� , y el teorema es comprobado.

Mediante las ecuaciones obtenidas, se obtiene la forma para el desarrollo del sistema del

Péndulo Invertido para el �ltro de Kalman y así se desarrolla la prueba del controlador en

el simulador MATLAB como se ve en el capítulo cinco sección 5.3.1.

*Para referencia de cómo se obtienen estas ecuaciones ver [20].

4.3. Filtro de Kalman Bucy

Para el caso del �ltro de Kalman-Bucy el proceso aleatorio de tiempo continuo dado por

x(t) y el observador z(t) están dadas por:

_x(t) = F (t)x(t) +G(t)w(t);

z(t) = H(t)x(t) + v(t); (4.10)

Ew(t) = Ev(t) = 0;

Ew(t1)wT (t2) = Q(t)�(t2 � t1); (4.11)

Ev(t1)vT (t2) = R(t)�(t2 � t1); (4.12)

Ew(t)vT (�) = 0; (4.13)

45

donde F (t); G(t); H(t); Q(t); y R(t) son matrices de n � n; n � n; l � n; n � n y l � l;respectivamente. El término �(t2 � t1) representa el delta de dirac y la covarianza de lasmatrices Q y R se de�nen positivas.

El objetivo es encontrar la estimación para el vector de estados x(t) que representamos

por x̂(t), que es una función lineal de las mediciones el cual viene comprendido por un tiempo

�nito z(t); 0 � t � T; que minimiza la ecuación escalar como

E [x(t)� x̂(t)]T M [x(t)� x̂(t)] ; (4.14)

donde M es una matriz simétrica de�nida positiva.

La estimación inicial y la matriz de covarianza son x̂0 y P0.

Se proporciona una derivación formal del estimador de Kalman en tiempo continuo, una

derivación rigurosa pueden ser archivados utilizando el principio de ortogonalidad como en el

caso de tiempo discreto. En vista del objetivo principal que es obtener estimadores e�cientes

y prácticos, se hace hincapié en los estimadores de tiempo continuo.

Para �t se de�ne en un intervalo de tiempo [tk � tk�1], de esta manera obtenemos

�(tk � tk�1) = �k = I + F (tk�1)�t+O(�t2);

donde O(�t2) consiste en un acuerdo con potencias de �t mayor o igual a dos. Para lamedición de ruido se tiene

Rk =R(tk)

�t

y para el ruido del sistema

Qk = G(tk)Q(tk)GT (tk)�t

obteniéndose

Pk(�) = [I + F (t)�t]�I � �Kk�1Hk�1

�Pk�1(�) (4.15)

� [I + F (t)�t]T +G(t)Q(t)GT (t)�t:

La dinámica del ruido esta dada por

46

Pk(�)� Pk�1(�)�t

= F (t)Pk�1(�) + Pk�1(�)F T (t) (4.16)

+G(t)Q(t)GT (t)��Kk�1Hk�1Pk�1(�)

�t�F (t) �Kk�1Hk�1Pk�1(�)F T (t)�t+términos de orden mayor.

La ganancia de Kalman de la ecuación (4.15) se convierte en el límite

l��m�t!0

� �Kk�1

�t

�= l��m

�t!0

nPk�1(�)HT

k�1�Hk�1Pk�1(�)HT

k�1�t+R(t)��1o

(4.17)

= PHTR�1 = �K(t):

Sustituyendo la ecuación (4.17) en (4.16) y obteniendo el límite cuando �t ! 0 se obtiene

el resultado deseado

_P (t) = F (t)P (t) + P (t)F T (t) +G(t)Q(t)GT (t) (4.18)

�P (t)HT (t)R�1(t)H(t)P (t)

Siendo P (t0) la condición inicial. Esto se llama la matriz de la ecuación diferencial de

Ricatti, la cual se puede reescribir mediante el uso de la identidad

P (t)HT (t)R�1(t)R(t)H(t)P (t) = �K(t)R(t) �KT (t)

De esta manera podemos escribir la ecuación (4.18) de la forma

_P (t) = F (t)P (t) + P (t)F T (t) +G(t)Q(t)GT (t)� �K(t)R(t) �KT (t): (4.19)

De la mismamanera, el vector de estado de la ecuación de actualización puede ser derivado

de la ecuación (4.11) y (4.15) mediante la adopción de los límites �t ! 0: Finalmente la

ecuación diferencial para la estimación es la siguiente.

�x̂ = F (t)x̂(t) + �K(t) [z(t)�H(t)x̂(t)] : (4.20)

Con el desarrollo anterior se llega a la forma general para la obtención de un sistema por

el Filtro de Kalman Bucy con lo cual se pretende la mejora de la respuesta del controlador

47

a través de la predicción de ciertos estados como se explica anteriormente, con la expresión

de la formula (4.20).

48

Capítulo 5

Diseño de controladores y simulación

En el presente capítulo se desarrollan diferentes técnicas de control para el péndulo inver-

tido descrito en los capítulos anteriores. Primeramente se desarrolla mediante el enfoque de

control clásico por la técnica de PID con modi�caciones, enfatizando sus ventajas y limita-

ciones, posteriormente se emplea la técnica de control por medio de observadores de estado,

en esta técnica se estiman las variables de estado no medidas. Por último se aplica la técnica

que da el nombre a el presente trabajo, un control para el péndulo invertido empleando obser-

vadores de estado basados en el �ltro de Kalman donde con dicha aplicación se demuestran

los objetivos y resultados que resumen a esta tesis.

Para el diseño y simulación de los controladores se utiliza MatlabTM y su herramienta

SimulinkTM donde se simula el comportamiento del sistema, modelado anteriormente, para

cada una de las técnicas de control nombradas, para conocer más ver [11].

Finalmente se realiza un análisis comparativo de las diferentes técnicas desarrolladas.

5.1. Control PID

La técnica del PID denominada por las siglas de las acciones de control Proporcional,

Integral y Derivativo. Es un controlador realimentado cuyo propósito es hacer que el error en

estado estacionario, entre la señal de referencia y la señal de salida de la planta, sea cero de

manera asintótica en el tiempo, lo que se logra mediante el uso de la acción integral. Además

el controlador tiene la capacidad de anticipar el futuro a través de la acción derivativa que

tiene un efecto predictivo sobre la salida del proceso.

Los controladores PID son su�cientes para resolver el problema de control de muchas

49

aplicaciones en la industria, particularmente cuando la dinámica del proceso lo permite,

en general procesos que pueden ser descritos por dinámicas de primer y segundo orden,

y los requerimientos de desempeño son modestos, es decir limitados a especi�caciones del

comportamiento del error en estado estacionario y una rápida respuesta a cambios en la señal

de referencia, ver [1].

5.1.1. Control proporcional

Las oscilaciones en un sistema son resultado de pequeños cambios en el error los cuales

hacen que la variable manipulada cambie sobre su rango total. Dicho problema se evita con la

acción de control proporcional, donde la característica del controlador es proporcional al error

de control cuando estos son pequeños. De esta forma la acción proporcional se caracteriza

por la siguiente ecuación dependiente del error de control.

u(t) = Kpe(t)

donde:

u(t) es la salida de la señal de control

Kp es la ganancia del controlador y

e(t) es el error respecto al tiempo

Imagen 5.1 Banda proporcional

Cuando la ganancia proporcional es pequeña K = 1 hay un error en estado estacionario

muy grande el cual al ir incrementando la ganancia disminuye pero aumentan las oscilaciones

en la respuesta de forma considerable como se observa en la imagen 5.1.1.

50

Imagen 5.1.1 Respuesta a un cambio en la ganancia

proporcional.

5.1.2. Control integral

El modo de control Integral tiene como propósito disminuir y eliminar el error en estado

estacionario, provocado por el modo proporcional. El control integral actúa cuando hay una

desviación entre la variable y el punto de consigna, integrando esta desviación en el tiempo

y sumándola a la acción proporcional. El error es integrado, lo cual tiene la función de

promediarlo o sumarlo por un período determinado; luego es multiplicado por una constante

I. Posteriormente, la respuesta integral es adicionada al modo Proporcional para formar

el control P + I con el propósito de obtener una respuesta estable del sistema sin error

estacionario.

El control integral se utiliza para obviar el inconveniente del o¤set (desviación permanente

de la variable con respeto al punto de consigna) de la banda proporcional.

Y esta caracterizado por la siguiente ecuación:

u(�) = Ki

tZ0

e(�)d�

donde:

Ki representa la ganancia integral.

51

Los cambios que presenta la respuesta de un sistema a los cambios realizados sobre el

tiempo integral en el caso cuando Ti =in�nito es como si se tuviera un control proporcional

puro, y vemos que cuando se va aumentando el valor de Ti el error en estado estacionario

tiende a corregirse, para valores pequeños de Ti la respuesta es más rápida pero presenta

mayor número de oscilaciones, caso contrario cuando Ti son valores pequeños, la respuesta

del sistema es más lenta deslizándose hasta llegar a la referencia y sin provocar tantas

oscilaciones, como se muestra en la imagen 5.1.2.

Imagen 5.1.2 Respuesta de un sistema a cambios en el tiempo

integral utilizando un control PI con K = 1.

5.1.3. Control derivativo

La acción derivativa se mani�esta cuando hay un cambio en el valor absoluto del error;

si el error es constante, solamente actúan los modos proporcional e integral.

La función de la acción derivativa es mantener el error al mínimo corrigiéndolo propor-

cionalmente con la misma velocidad que se produce; de esta manera evita que el error se

incremente.

Cuando el tiempo de acción derivada es grande, hay inestabilidad en el proceso. Cuando

el tiempo de acción derivada es pequeño la variable oscila demasiado con relación al punto

de consigna. Suele ser poco utilizada debido a la sensibilidad al ruido que mani�esta y a las

complicaciones que ello conlleva.

52

La acción derivativa está dada por la siguiente ecuación:

u(t) = Kdde

dt

donde:

Kd es la ganancia derivativa.

Los cambios que presenta la respuesta de un sistema a los cambios realizados sobre el

tiempo derivativo en el caso cuando Td = 0 es como si se tuviera un control proporcional

integral, y vemos que cuando se va aumentando el valor de Td el amortiguamiento del sistema

aumenta, pero si se aumenta más el valor de Td el amortiguamiento tiende a disminuir, he

allí la importancia de sintonizar correctamente nuestro controlador, como se aprecia en la

siguiente imagen 5.1.3.

Imagen 5.1.3 Respuesta de un sistema a cambios en el tiempo

derivativo utilizando un control PID con K = 3 y Ti = 2

De esta manera implemento las tres acciones de control mencionadas, es como se obtiene

un controlador PID el cual cuenta con las ventajas y desventajas de las acciones por las

cuales es formado, y la ecuación que lo caracteriza es:

u(t) = Kpe(t) +Ki

tZ0

e(�)d� +Kdde

dt

53

lo que podemos expresar de la siguiente forma:

G(s) = K

�1 +

1

Tis+ Tds

En la imagen 5.1.3A se muestra el diagrama en bloques de un control PID.

Imagen 5.1.3A Diagrama a bloques de un controlador PID.

5.1.4. Sintonización de un controlador PID por el método de Zieglery Nichols

Ziegler y Nichols propusieron unas reglas para determinar los valores de la ganancia pro-

porcionalKp, del tiempo integral Ti y del tiempo derivativo Td, con base en las características

de respuesta transitoria de una planta especí�ca. Tal determinación de los parámetros de los

controladores PID o de la sintonización de los controles PID la realizan los ingenieros en el

sitio mediante experimentos sobre la planta, ver [6].

En este caso se utiliza la regla de ganancia crítica, la cual consiste en poner los tiempos

integral y derivativo en cero variando solamente la ganancia proporcional hasta un valor

critico Kcr en donde la salida exhiba oscilaciones sostenidas y junto con el periodo Pcr se

utilizan estos parámetros para la sintonización del controlador siguiendo la tabla 5.1.

54

Tipo de controlador Kp Ti Td

P 0;5Kcr 1 0

PI 0;45Kcr12Pcr 0

PID 0;6Kcr 0;5Pcr 0;125Pcr

(5.1)

Si se desea más información sobre esta y otras reglas de sintonización de Ziegler-Nichols

consultar la referencia [6].

5.1.5. Diseño y simulación de un controlador PID para el pénduloinvertido

Considerando el sistema de péndulo invertido descrito en el capítulo 1, se procede a

diseñar un controlador PID, con los siguientes valores medidos de la plataforma física exper-

imental.

M = 0;11 kg

m = 0;05 kg

g = 9;8 ms�2

l = 0;249 m

Así mismo se debe de tomar en cuenta que se desea que el sobre impulso en la respuesta del

sistema no sea mayor al 25%.

Se procede a realizar el diseño por medio de MatlabTM creando un archivo .m con el mod-

elo matemático del péndulo invertido Considerando los valores antes mencionados medidos

de la plataforma, Utilizando Simulink se crea un diagrama de bloques del sistema y con el

controlador PID el cual ayuda a realizar las simulaciones de la respuesta del sistema a lazo

cerrado.

55

Imagen 5.1.5 Diagrama a bloques del sistema con un

controlador PID

Considerando el set point SP = 90�, Kp = 1, Ti = 1 y Td se llega a la siguiente respuesta

del sistema

Imagen 5.1.5.1 Respuesta del sistema sin

controlar.

Se observa que esta respuesta no es satisfactoria ya que el sistema nunca se estabiliza y

describe una trayectoria exponencial al in�nito.

Por lo tanto es necesario llevar a cabo una correcta sintonización del controlador PID,

para lo cual se utiliza el método de Ziegler-Nichols basado en la ganancia critica, descrito

anteriormente.

Como primer paso se procede a colocar los valores de Td y Ti en cero para así tener sólo

la ganancia proporcional, la cual se varía inde�nidamente hasta obtener como respuesta del

sistema una salida con oscilaciones permanentes.

56

Imagen 5.1.5.2 Respuesta del sistema a una

ganancia proporcional crítica

Se procede a obtener los valores Kcry Pcr necesarios para la sintonización, esto se realiza

de forma grá�ca como se muestra a en la imagen siguiente:

Imagen 5.1.5.3 Obtención de Pcr

Se tiene que Pcr es igual a 0.04 y Kcres 350, aplicando las ecuaciones descritas en la tabla

57

(5.1) se obtienen los valores necesarios para el controlador PID los cuales son:

Kp = 210

Td = 0;005

Ti = 0;02:

La respuesta del sistema se muestra a continuación para estos valores del controlador

PID.

Imagen 5.1.5.4 Respuesta del sistema para,

Kp = 210; Td = 0;005 y Ti = 0;002:

Se observa como el sistema llega a la referencia pero, se presentan demasiadas oscilaciones

durante todo tiempo, por lo tanto se procede a incrementar los valores de Ti para eliminar

el error en estado estacionario y Td para amortiguar el sistema, después de realizar pruebas

se obtiene los siguientes valores para los cuales el sistema responde adecuadamente.

La ganancia proporcional se mantiene siendo Kr = 210, el tiempo derivativo Td aumenta

hasta un valor de 10 para amortiguar al sistema y evitar oscilaciones excesivas manteniendo

el sobre impulso inferior al 25% y al corregir esto el error en estado estacionario aumenta

por lo cual es necesario �jar el tiempo integral Ti en un valor de 250 para que el sistema

puede llegar al valor de la referencia el resultado de la simulación con estos nuevos valores

se muestra en la imagen 5.1.5.

58

Imagen 5.1.5.5 Respuesta del sistema para,

Kp = 210; Td = 10 y Ti = 250:

A continuación se agrega una perturbación al sistema para visualizar su comportamiento

y observar si el controlador PID es capaz de corregir dicha perturbación.

Imagen 5.1.5.6 Diagrama de bloques del sistema agregándole una

perturbación aleatoria

La perturbación es un número aleatorio agregado en el tiempo de muestreo igual a 5

milisegundos cuya respuesta se muestra a continuación:

59

Imagen 5.1.5.7 Respuesta del sistema a una

perturbación aleatoria.

Se observa en la imagen anterior como al agregar una perturbación al sistema en un

tiempo igual a 5 milisegundos la respuesta del mismo se desvía de la referencia de forma

considerable pero gracias a la acción del controlador PID el sistema retoma el camino in-

corporándose nuevamente en el valor deseado teniendo así que dicha técnica de control es

su�ciente mente buena como para corregir las perturbaciones que se puedan presentar en el

péndulo invertido.

5.2. Observadores

En el capítulo 2 se estableció que existen dos tipos de observadores de estado, los de orden

completo y los de orden reducido, los primeros se utilizan para estimar todos los estados de

un sistema mientras que los segundos son utilizados solo para estimar algunos estados. Por lo

tanto en el presente trabajo se utiliza un observador de orden reducido ya que solo se desea

observar un estado del sistema dado que todos los estados son medibles en la plataforma.

5.2.1. Estructura general de control con retroalimentación deestados

Considere el sistema

60

_x = Ax+Bu

y = Cx

El siguiente controlador basado en retroalimentación por observadores de estados fue

tratado en el capítulo 2 del presente

�x̂ = Ax̂+Bu+ L(y � Cx̂)u = �Kx̂+Krr:

Introduciendo los estados x y ~x = x� x̂ el sistema a lazo cerrado puede ser escrito como

" �x�~x

#=

"A�BK BK

0 A� LC

#"x

~x

#+

"BKr

0

#r;

y =hC 0

ix;

El cual es una descomposición de Kalman con dos subsistemasP 0 y

P� 0.El subsis-

temaP 0 con estado x es alcanzable y observable y el

subsistemaP� 0 con estado ~x no es alcanzable pero si es observable.

Es natural que el estado ~x no sea alcanzable a la señal de referencia , ya que no tendría

sentido diseñar un sistema el cual al cambiar la señal de control genere errores de observación.

La relación entre la referencia y la salida y está dada por

�x = (A�BK)x+BKrr;

y = Cx;

La cual es la misma relación para un sistema con retroalimentación de estados completa.

Tomando en cuenta que el controlador del péndulo invertido estará dentro de una

computadora se toma el siguiente diagrama a bloques de una estructura general

de control en una computadora, donde se muestran todos sus componentes.

61

Imagen 5.2.1 Estructura general de control realimentado con

observadores por medio de una computadora

5.2.2. Diseño y simulación de un controlador basado en obser-vadores de estado para el péndulo invertido

Considerando el sistema del péndulo invertido descrito en el capítulo 1, se procede a

diseñar un controlador por medio de observadores de estado tomando en cuenta los siguientes

valores medidos de la plataforma física experimental.

M = 0;11 kg

m = 0;05 kg

g = 9;8 ms�2

l = 0;249 m

Así mismo se debe tomar en cuenta que la posición angular del péndulo es completamente

medible de forma satisfactoria, mientras la posición lineal del carro guía presenta cierto

margen de error debido a las características del sensor utilizado, es por esto que se ha

decidido diseñar un observador de estados de orden reducido para estimar la posición del

carro guía.

Se procede a realizar el diseño por medio de MatlabTM creando un archivo .m con el

modelo matemático del péndulo invertido en variables de estado, tomando en cuenta los

62

valores antes mencionados medidos de la plataforma, se de�nen las matrices A, B, C y D del

sistema y con la implementación del comando eig se obtiene la ubicación de los Eingenvalores

de la matriz A obteniendo el siguiente resultado:

P1 = 0

P2 = 0

P3 = �0;3489P4 = 0;3489

Donde se observa que una de sus raíces se encuentra en el semiplano derecho y dos más se

encuentra en el origen o punto crítico lo cual hace que el sistema sea inestable, para corregir

esto hay que ubicar todas las raíces dentro del semiplano izquierdo, para esto utilizamos el

comando place en MatlabTM.

Se crea una variable K, la cual es la ganancia del controlador por reubicación de polos

y se escoge la nueva ubicación de forma que el sobre impulso sea menor, es por esto que se

escoge la siguiente ubicación:

P1 = �0;5 + 0;5i;P2 = 0;5 + 0;5i;

P3 = �50;P4 = �55:

Estos polos son ubicados gracias al comando place de MatlabTM.

Del mismo modo se obtiene la matriz de observabilidad L escogiendo los siguientes puntos

de operación:

Op1 = �100;Op2 = �101;Op3 = �102;Op4 = �103:

Esta matriz es obtenida con el mismo comando place.

Después de tener las ganancias necesarias se procede a realizar en SimulinkTM el diagrama

63

de bloques que simula el comportamiento del sistema con el observador de estados.

Imagen 5.2.1 Diagrama a bloques del sistema con observador de estados

A continuación se muestra la respuesta del sistema observado, en ella se aprecia que el

comportamiento de ambos estados, tanto la posición angular del péndulo (línea punteada)

como la posición del carro guía, el péndulo llega a la posición angular deseada después de un

breve instante de tiempo y con un sobre impulso mínimo prácticamente despreciable lo que se

traduce en pocas oscilaciones en el sistema mecánico del péndulo evitando así que se pudiera

dañar, para que dicha posición angular sea alcanzada el carro guía realiza un movimiento

muy suave debido a las condiciones iniciales del experimento el carro se mantiene en el plano

64

positivo tomando en cuenta que el centro de la carrera de la guía es cero.

Imagen 5.2.2.1 Respuesta del sistema con el observador

de estados

A continuación se somete el sistema a una perturbación aleatoria utilizando el siguiente

diagrama a bloques en SimulinkTM

Imagen 5.2.2.2 Diagrama a bloques del sistema con

observador de estados y ganancia Kp=50, incluyendo

una perturbación aleatoria

En la siguiente �gura observamos la respuesta a esta perturbación aleatoria, observando

65

que el controlador responde adecuadamente a esta, ya que se desvía en un intervalo muy corto

e inmediatamente regresa al punto de referencia lo cual se traduciría en ligeras oscilaciones

en el sistema físico sin llegar a caer el péndulo de su posición a noventa grados.

Imagen 5.2.2.3 Repuesta del sistema observado y

con ganancia Kp=50, a la presencia de una

perturbación aleatoria

Como se observa esta técnica de control es capaz de corregir las perturbaciones que se

presenten en el sistema de una forma e�caz.

5.2.3. Análisis de estabilidad por plano de fase

El análisis de estabilidad se realizó para el sistema del péndulo invertido linealizado, con

la premisa de que si el sistema lineal es estable en los puntos de equilibrio, el sistema no

lineal también lo es.

El plano de fase se obtuvo mediante la grá�cación de XY de la velocidad contra la

posición el péndulo utilizando el siguiente diagrama a bloques de SimulinkTM

66

Imagen 5.2.3 Diagrama a bloques para la obtención del

plano de fase

En la siguiente �gura se muestra el plano de fase del sistema lineal en el cual se observa

como el sistema es estable alrededor de un punto en el origen o vecindad esto debido a que

se trata de un péndulo invertido.

Imagen 5.2.2.1 Plano de fase del sistema lineal

controlado

67

Ahora se obtiene el plano de fase para el sistema perturbado por señales de ruido aleatorias

utilizando el siguiente diagrama de bloques en SimulinkTM

Imagen 5.2.3.2 Diagrama a bloques para la

obtención del plano de fase del sistema

controlado y perturbado

En la siguiente �gura se muestra el plano de fase del sistema lineal perturbado en el cual

se observa como el sistema sigue siendo estable alrededor de un punto o vecindad a pesar de

las perturbaciones presentes con la diferencia que ya no se muestra un solo ciclo alrededor si

no que el plano de fase se muestra en forma de espiral debido a las perturbaciones.

Imagen 5.2.3.3 Plano de fase del sistema

controlado y perturbado

68

5.3. Filtro de Kalman

Por último se implementa la técnica de control de �ltrado de Kalman, la cual se trata

muy ampliamente en el capítulo 3, dado que es el tema principal del mismo y la acción de

control que nos interesa analizar a fondo aplicándola al sistema del péndulo invertido.

5.3.1. Diseño y simulación de un controlador por observadoresde estado basado en el �ltro de Kalman para el pénduloinvertido

A continuación se detallan los pasos necesarios para el diseño y aplicación de esta técnica

de control, utilizando el modelo del péndulo invertido obtenido en los capítulos anteriores y

en los valores medidos de la plataforma física.

M = 0;11 kg

m = 0;05 kg

g = 9;8 ms�2

l = 0;249 m

Así mismo se debe tomar en cuenta que la posición angular del péndulo es completamente

medible de forma satisfactoria, mientras la posición lineal del carro guía presenta cierto

margen de error debido a las características del sensor utilizado.

Se procede a realizar el diseño por medio de MatlabTM creando un archivo .m con el

modelo matemático del péndulo invertido en variables de estado, tomando en cuenta los

valores antes mencionados medidos de la plataforma, se de�nen las matrices A, B, C y D

del sistema, para emplear esta técnica de control se debe conocer si el sistema es controlable

y observable para lo cual se hace:

M = ctrb(A;B);

m = rank(M)

N = obsv(A;C);

n = rank(N)

Obteniéndose:

m = 4

n = 4

69

Resultando que el sistema es totalmente observable y controlable, por lo que se prosigue

con el diseño del controlador.

Se de�ne el vector H, el cual contiene los auto valores deseados para el sistema en lazo

cerrado

H =h�0;5 + 0;5i �0;5� 0;5i �50 �55

iMediante el comando place de MatLabTM se obtiene la matriz K de realimentación de

los estados:

K = place(A;B;H);

El sistema es sometido a las perturbaciones w y v que son señales de ruido en el proceso

y en las mediciones de los sensores respectivamente, para minimizar los efectos de estas

perturbaciones sobre el sistema, se diseña un observador de estados basado en �ltros de

Kalman para que así los estados realimentados sean los estimados por el �ltro y evitar su

contaminación excesiva con el ruido, además la realimentación de estados se lleva a cabo con

un regulador óptimo cuadrático teniendo así el siguiente diagrama a bloques que describe el

sistema.

Imagen 5.3.1 Realimentación de estados

estimados por el �ltro de Kalman a través

de un regulador óptimo cuadrático

70

Se modi�ca el código utilizado en MatlabTM para obtener los valores de la ganancia Kk

del �ltro de Kalman y la ganancia Kr del regulador óptimo resultando:

Matriz del estimador de Kalman

Kk =

266640;1371 0;0029

0;0029 1;8051

0;0094 0;0107

�0;0051 1;1291

37775

Matriz del regulador óptimo

Kr =h�1;0000 �1;2025 7;4749 1;9953

i

Por último se realimenta el sistema y se obtiene su respuesta, a condiciones iniciales

diferentes de cero para la posición angular del péndulo (línea punteada), la cual se muestra

en la siguiente �gura observando que la condición inicial para la posición angular es igual a

0;5 por lo que el carro guía tiene que desplazarse en dirección positiva y negativa tomando

en cuenta que el cero es el centro de la carrera y una vez que lleva al péndulo a la posición

angular deseada el carrito sigue manteniendo ciertas oscilaciones ya que gracias a esto es

como se logra contrarrestar las consecuencias generadas por el ruido observándose así como

la posición del péndulo no se ve afectada de gran forma por estas, esto gracias al �ltrado

realizado.

71

Imagen 5.3.1.1 Respuesta del sistema

realimentado por el �ltro de Kalman a

través de un regulador óptimo cuadrático

para condiciones iníciales no nulas.

72

En la siguiente �gura se muestra con más énfasis los resultados anteriores ya que se

observa la respuesta del sistema para condiciones iníciales nulas de la posición angular (línea

punteada), donde se puede ver como el sobre impulso del desplazamiento del carro guía es

mayor ya que se tiene que generar un mayor par para poder elevar el péndulo a la posición

deseada y después de esto cuando el péndulo llega a esta posición angular el carro guía

presenta las mismas oscilaciones para evitar los efectos del ruido.

Imagen 5.3.1.2 Respuesta del sistema

realimentado por el �ltro de Kalman a

través de un regulador óptimo cuadrático

para condiciones iníciales nulas

Resultando así que esta estrategia de control es mejor sobre las estrategias analizadas

anteriormente ya que disminuye los efectos de las perturbaciones de forma muy e�ciente.

73

Capítulo 6

Conclusiones y trabajos futuros

Los principales resultados derivados de ésta tesis se enuncian a continuación:

Primeramente, se realizó la construcción de un sistema físico de péndulo invertido simple.

Con el objeto de controlar el Pendulo Invertido se ah desarrollado un controlador por �ltros

de Kalman con el uso de observadores de estado, ya que el �ltro tiene la habilidad de

determinar el estado de un sistema en el pasado, presente y futuro, aún cuando la naturaleza

precisa del sistema sea desconocida en ciertos puntos.

Cabe mencionar que para realizar las acciones de control fue necesario crear una interfaz

para la adquisición de los datos así como de las señales de retroalimentación en el controlador

y como la aplicación de señales de manipulación al sistema físico.

Se cumplieron los objetivos ya que se mostraron grandes mejoras con la implementación

del método de control propuesto por esta tesis "Filtro de Kalman"sobre otros métodos de

control como el PID y los observadores de estado los cuales también se desarrollaron en el

presente trabajo con el �n de demostrar y comprobar nuestra hipótesis, sin embargo en la

parte de la plataforma física experimental la cual cabe mencionar que se utilizo como una

herramienta extra para comprobar los resultados no se obtuvieron resultados óptimos ya que

había un problema de comunicación el cual atrasaba la respuesta del sistema.

Los trabajos futuros contemplados es mejorar la etapa de adquisición de datos, debido a

que no se cuenta con la tarjeta idónea. Así como de implementar el �ltro de Kalman Bucy,

con el objeto de mejorar los resultados obtenidos.

74

Bibliografía

[1] Améstegui, M. Apuntes de control PID, Universidad Mayor De San Andrés La Paz,

Bolivia, 2001.

[2] Chen, T. C. Linear System. Theory and Design, 3ra Edición, 1998.

[3] Choung, C. y Houser, J. Nonlinear control of swingin pendulum, Automatica, 31:851-

862,1995.

[4] Michael O Flynn, Linear Systems. Time Domain and Transform Analysis, 1987.

[5] Nonlinera systems. Prentice Hall, 3ra. ed., 2002.

[6] Ogata, K. Ingeniería de Control Moderna, 3er Edición, 1998.

[7] Mori, S; Nishihara H. y Furuta, K. Control of unestable mechanical system. Control of

pendulum. International Journal of Control, 23:673-692, 1976.

[8] Pardo, Rego V. La elegancia matemática primera edición, 2003.

[9] El problema del péndulo invertido, Ignacio Alfonso Quijano, 1995.

[10] Wiberg, M. Espacio de Estado y Sistemas Lineales. Mc.Graw-Hill. México. 1971.

[11] MathWorks Inc, MatlabTM User´ s Guide, Toolbox de control, Versión 5.3. USA. 1998.

[12] Solera, A. El �ltro de Kalman. Departamento de investigaciones económicas, 2003.

[13] Kalman R. E. A New Approach to Linear Filtering and Prediction Problems,Research

Institute for Advanced Study,Baltimore, Md.Transactions of the ASME�Journal of Basic

Engineering, 1960.

75

[14] Kalman, R.E. and Bucy, R, S, New results in linear �ltering and prediction theory,

ASME �J. Basic Eng. Ser. D, 83, 95-108, 1961.

[15] Grewal, M. S.and Andrews, Angus P., Kalman Filtering: Theory and Practice �1993

-Prentice Hall.

[16] Hanselman, D. y Little�elld, B. MatlabTM, Edición de Estudiante, Versión 4. Editorial

Prentice-Hall International, 1996.

[17] Grover B. R. y Hwang, P.Introduction to Random Signals and Applied Kalman Filter-

ing. Editorial John Wiley & Sons. Tercera edición, 1997.

[18] Kawaji, S. and T. Maeda. Fuzzy servo control system for an inverted pendulum. Proc.

Internet Fuzzy Engineering Symp., 2: 812�823., 1991.

[19] Xi, Y. New desing method for discrete time multi-variable preditive controllers. Inter-

national Journal of Control,49(1):45-56; 1987.

[20] Karl Johan Åström and Richard M. Murray, Feedback systems : an introduction for

scientists and engineers, 2008 by Princeton University Press.

76