capítulo 1 - Instituto Politécnico Nacional

Anuncio
INSTITUTO POLITÉCNICO NACIONAL
CENTRO DE INVESTIGACIÓN Y DESARROLLO
DE TECNOLOGÍA DIGITAL
MAESTRÍA EN CIENCIAS CON
ESPECIALIDAD EN SISTEMAS DIGITALES
“DISEÑO DE CONTROLADORES CON COMPENSACIÓN ADAPTABLE
DE GRAVEDAD PARA ROBOTS MANIPULADORES. ”
T E S I S
QUE PARA OBTENER EL GRADO DE
MAESTRO EN CIENCIAS
P R E S E N T A:
MANUEL EMILIO GÁMEZ URÍAS
BAJO LA DIRECCIÓN DE:
DR. LEONARDO ACHO ZUPPA
JUNIO DE 2005
TIJUANA, B. C., MÉXICO
Dedico esta tesis a mis padres:
A quienes con todo orgullo debo todo lo que tengo y lo que soy
HUMBERTO GAMEZ GARCIA
y
ELIA URIAS RODRIGUEZ
Con el agradecimiento de mi vida
porque de ellos siempre tuve todo su apoyo, amor y comprensión
en cada una de las metas que me propuse.
Manuel Emilio Gámez Urías
AGRADECIMIENTOS:
Agradezco profundamente y de todo corazón:
A mi hermano Jesús Gabriel por brindarme todo su apoyo para
que yo pudiera realizar mis estudios en esta ciudad.
A mis hermanos y familia por motivarme y ayudarme en todo
momento.
A mi asesor Dr. Leonardo Acho Zuppa por su paciencia y
enseñanzas
Al Instituto Politécnico Nacional y al CITEDI por darme la
oportunidad de realizar mis estudios de maestría.
G R A C I A S
CONTENIDO:
Página
RESUMEN………………………………………………………………………………..
i
ABSTRACT………………………………………………………………………………
i
Lista de Abreviaciones y Símbolos……………………………………………………...
ii
Lista de Figuras y Tablas………………………………………………………………..
iii
INTRODUCCIÓN……………………………………………………………………….
1
CAPÍTULO 1 ROBOT MANIPULADOR
Introducción……………………………………………………………………………….
3
1.1 Fundamentos de Control……………………………………………………………...
6
1.1.1 Conocimiento del sistema a controlar………………………………………….
7
1.1.2 Modelado dinámico……………………………………………………………
8
1.1.3 Propiedades de control…………………………………………………………
10
CAPÍTULO 2 MODELO DINÁMICO DEL ROBOT
Introducción……………………………………………………………………………….
13
2.1 Modelo dinámico del robot utilizado…………………………………………………
14
2.2 Propiedades…………………………………………………………………………...
16
2.2.1 Propiedad de linealidad de parámetros de gravedad…………………………...
17
CAPÍTULO 3 CONTROLADORES EXISTENTES
Introducción……………………………………………………………………………….
19
3.1 Control de Posición…………………………………………………………………...
19
3.1.1 Controlador de Regulación Global para Robots Manipuladores………………
20
3.1.2 Controlador PD con Compensación de Gravedad……………………………
24
3.2 Control de Movimiento……………………………………………………………….
29
3.2.1 Control PD+ …………………………………………………………………...
30
3.2.2 Control Par Calculado………………………………………………………….
34
CAPÍTULO 4 DISEÑO DE LOS CONTROLADORES PID
Introducción……………………………………………………………………………….
41
4.1 Descripción del Sistema………………………………………………………………
41
4.2 Primera propuesta…………………………………………………………………….
43
4.2.1 Resultados de Simulación……………………………………………………...
45
4.3 Segunda propuesta……………………………………………………………………
50
4.3.1 Resultados de simulación………………………………………………………
53
APÉNDICE A
Propiedades………………………………………………………………………………..
61
A.1 Matriz de Inercia M(q)………………………………………………………………
61
A.2 Matriz centrífuga y de Coriolis C ( q, q& ) …………………………………………….
62
A.3 Vector de gravedad G(q)…………………………………………………………….
63
CONCLUSIONES………………………………………………………………………..
65
BIBLIOGRAFÍA Y REFERENCIAS…………………………………………………
67
RESUMEN
En el presente trabajo, se muestra el diseño de dos nuevos controladores no lineales PID
con compensación adaptable de gravedad para robots manipuladores, aplicado al problema de
seguimiento de trayectorias. Para efectuar el diseño adaptivo de éstos controladores, se utiliza
la propiedad de linealidad en términos de los parámetros dinámicos en el vector de pares
gravitacionales del robot.
Se usa la teoría de estabilidad de Lyapunov para demostrar estabilidad en forma global de los
controladores propuestos. Se emplea el modelo dinámico de un robot manipulador de 2
grados de libertad para la implementación de los controladores, realizando pruebas numéricas
que demuestran el desempeño de dichos controladores. De éstos, el segundo de ellos logra
mejorar los resultados del primero. Los márgenes de error en posiciones y velocidades
articulares observados en tales propuestas, están dentro de los que normalmente se han
reportado en otros controladores no lineales PID.
ABSTRACT
In the present work, two new nonlinear PID controllers with adaptive gravity
compensation are presented. These controllers were developed for the tracking control
problem. The linearity property of the gravitational vector of the robot is employed.
Lyapunov stability theory is invoked for the stability proof. A two degrees of freedom robot
manipulator was programmed to test the performance of these two new controllers. It was
demonstrated that one of them has better performance than the other. The error margins
observed for the articular positions and velocities are within the margin reported in other
nonlinear PID controllers.
i
Lista de Abreviaciones y Símbolos
g.d.l.
Grados de Libertad
Nm
Newton – metro
Rad
Radianes
τ
Entradas de control
q
Posiciones articulares
q&
Primera derivada con respecto al tiempo de las posiciones articulares
q&&
Segunda derivada con respecto al tiempo de las posiciones articulares
V(x)
Función candidata de Lyapunov
x
Norma vectorial de x ( por omisión norma 2)
K
Energía Cinética
∀
“para todo”
∈
“perteneciente a”
R
Números reales
I
Matriz identidad
◊
Fin de demostración
ii
Lista de Figuras y Tablas
Página
Figura 1.1 Robot de 4 grados de libertad….…..……………………………………….
5
Figura 1.2 Diagrama de bloques de un robot ..…………………………………………
8
Figura 1.3 Especificación de movimiento por punto-a-punto……..……………………
11
Figura 1.4 Especificación de movimiento por trayectoria……..……………………….
12
Figura 2.1 Robot de 2 grados de libertad.…...………………………………………….
13
Figura 3.1 Control en malla cerrada de robots.………………………….……………...
20
Figura 3.2 Posición de q1 respecto de qd 1 …………………………..………………….
22
Figura 3.3 Posición de q2 respecto de qd 2 ……………………………………………..
23
Figura 3.4 Posición de q1 respecto de qd 1 con una ĝ distinta de g…………………….
24
Figura 3.5 Posición de q2 respecto de qd 2 con una ĝ distinta de g…………………….
24
Figura 3.6 Posición de q1 respecto de qd 1 ……………………………………………...
27
Figura 3.7 Posición de q2 respecto de qd 2 ……………………………………………..
27
Figura 3.8 Posición de q1 respecto de qd 1 con una ĝ distinta de g…………………….
28
Figura 3.9 Posición de q2 respecto de qd 2 con una ĝ distinta de g…………………….
28
Figura 3.10 Control en malla cerrada de robots con valores deseados…………………..
30
Figura 3.11 Posición de q1 respecto de qd 1 ……………………………………………...
32
Figura 3.12 Posición de q2 respecto de qd 2 ……………………………………………..
33
Figura 3.13 Posición de q1 respecto de qd 1 con una ĝ distinta de g…………………….
33
Figura 3.14 Posición de q2 respecto de qd 2 con una ĝ distinta de g…………………….
34
Figura 3.15 Posición de q1 respecto de qd 1 ……………………………………………...
38
Figura 3.16 Posición de q2 respecto de qd 2 ……………………………………………..
38
Figura 3.17 Posición de q1 respecto de qd 1 con una ĝ distinta de g…………………….
39
Figura 3.18 Posición de q2 respecto de qd 2 con una ĝ distinta de g…………………….
39
iii
Figura 4.1 Posición de q1 respecto de qd 1 ……………………………………………...
47
Figura 4.2 Posición de q2 respecto de qd 2 ……………………………………………..
47
Figura 4.3 Velocidad de q&1 respecto de q&d 1 ……………………………………...…….
48
Figura 4.4 Velocidad de q&2 respecto de q&d 2 ……………………………………………
48
Figura 4.5 Entradas de control para un rango de 0 a 0.05 segundos……………………
49
Figura 4.6 Entradas de control para un rango de 0 a 10 segundos……………………...
49
Figura 4.7 Errores de posición………………………………………………………….
50
Figura 4.8 Posición de q1 respecto de qd 1 ……………………………………………...
53
Figura 4.9 Posición de q2 respecto de qd 2 ……………………………………………..
54
Figura 4.10 Velocidad de q&1 respecto de q&d 1 ……………………………………………
54
Figura 4.11 Velocidad de q&2 respecto de q&d 2 ……………………………………………
55
Figura 4.12 Entradas de control para un rango de 0 a 0.05 segundos………………...….
55
Figura 4.13 Entradas de control para un rango de 0 a 10 segundos……………………...
56
Figura 4.14 Errores de posición………………………………………………………….
56
Figura 4.15 Posición de q1 respecto de qd 1 ……………………………………………...
57
Figura 4.16 Posición de q2 respecto de qd 2 ……………………………………………..
58
Figura 4.17 Velocidad de q&1 respecto de q&d 1 ……………………………………………
58
Figura 4.18 Velocidad de q&2 respecto de q&d 2 ……………………………………………
59
Figura 4.19 Entradas de control para un rango de 0 a 0.005 segundos…………………..
59
Figura 4.20 Entradas de control para un rango de 0 a 0.005 segundos…………………..
60
Figura 4.21 Errores de posición………………………………………………………….
61
Tabla 1
Parámetros del sistema……………………………………………………...
46
Tabla 2
Valores de los parámetros utilizados en el controlador………………...…..
57
iv
INTRODUCCIÓN
En los últimos años, la era de la información impulsada por los avances en computación,
telecomunicaciones y electrónica está siendo testigo del crecimiento explosivo experimentado
por la robótica y tecnologías afines. Por este motivo, el concepto de robot ha pasado de ser
una visión de ciencia ficción como un dispositivo mecánico super-humano a ser una realidad
como máquina autónoma animada, con un gran potencial de aplicaciones en un sinfín de
actividades cotidianas. Estas máquinas se integran de elementos mecánicos, electrónicos, de
control automático, eléctricos y sistemas de cómputo. A esta clase de máquinas pertenecen los
robots manipuladores industriales.
Los robots manipuladores actuales están constituidos físicamente de eslabones mecánicos
interconectados por medio de articulaciones, formando un “brazo” y una “mano” para tomar
objetos y herramientas, pudiendo realizar una amplia gama de operaciones físicas en el medio
ambiente. La robótica es un campo nuevo de la tecnología moderna. El buen entendimiento y
el desarrollo de aplicaciones de robótica están condicionados al dominio de diversas áreas del
conocimiento. Paulatinamente, la robótica ha venido ganando terreno como materia de
enseñanza en diversas universidades, impartiéndose en diversos cursos de licenciatura y
posgrado. Las disciplinas hacia las cuales se orientan estos cursos han sido tradicionalmente
las ingenierías Eléctrica, Electrónica, Mecánica, Industrial y las Ciencias Computacionales.
Lo expuesto anteriormente pone en evidencia el carácter multidisciplinario de la robótica.
El control automático ha jugado un papel vital en el avance de la ciencia y de la ingeniería
[10], además ha aportado también valiosas contribuciones al avance de la robótica. El
desarrollo de una gran cantidad de controladores para robots manipuladores industriales, ha
permitido su óptimo desempeño en la realización de todo tipo de tareas. El control de robots
manipuladores ha sido un área muy estudiada [12], siendo los controladores PID los que
normalmente se han utilizado para dicho control. El objetivo de este trabajo, consiste en
diseñar controladores adaptables de compensación de gravedad para robots manipuladores
usando teoría de estabilidad de Lyapunov [6, 7]. En aplicaciones industriales, los robots
1
manipuladores están sujetos a variaciones de la gravedad, como sería el caso de que el robot
estuviera montado en una plataforma móvil como un barco, un ascensor, etc. En este sentido,
es importante estimar la variación del vector de pares gravitacionales del robot para
compensarlos en forma adaptiva y mitigar estos efectos y garantizar un buen desempeño de
los controladores. Se buscó utilizar la teoría de estabilidad de Lyapunov para proponer
controladores adaptables con compensación adaptiva de gravedad.
En este trabajo, se planteó el diseño de dos nuevos controladores no lineales PID para resolver
el problema de seguimiento de trayectorias. Recientemente se han reportado diseños de
controladores no lineales PID, como los mostrados en [1 - 5] y otros basados en el control
adaptable [13], donde todos estos controladores han probado estabilidad global o semiglobal.
Usando la propiedad de la dinámica de robots manipuladores mostrada en [15], que se basa en
la característica que tiene el modelo del robot con respecto a la linealidad de los parámetros
dinámicos, se logró diseñar dos nuevos controladores no lineales PID, donde el análisis de
estabilidad global fue posible con la ayuda de teoría de estabilidad de Lyapunov. Los
experimentos numéricos realizados al modelo dinámico del robot de 2 grados de libertad,
demuestran los resultados.
El trabajo se encuentra dividido en cuatro capítulos. En el primero de ellos, se presenta un
marco de referencia sobre la teoría de los robots manipuladores, conceptos y objetivos de
control. En el segundo capítulo, se explica el modelo dinámico del robot manipulador
utilizado, así como las propiedades empleadas de dicho modelo dinámico. En el tercer
capítulo, se presentan algunos de los controladores existentes, la descripción de cada uno de
ellos y la interpretación de sus resultados. Y en el cuarto capítulo, se describen los
controladores propuestos, su desarrollo, análisis y conclusiones de los resultados de cada uno
de ellos. Cabe destacar que éstos controladores propuestos hasta el conocimiento de nosotros
son inéditos.
2
CAPÍTULO 1:
ROBOT MANIPULADOR.
Introducción
Debido a las exigencias de calidad y rapidez en los sistemas de producción del mundo
globalizado contemporáneo, una gran variedad de avances tecnológicos ha comenzado a
introducirse en las plantas industriales.
La robótica -término cuya creación se atribuye a Isaac Asimov- [6] está ocupando un lugar
destacado en la modernización de diversos sectores industriales. La robótica es aún un campo
nuevo de la tecnología moderna. Una buena comprensión y la generación de soluciones en la
robótica están condicionados al conocimiento de diversas disciplinas entre las que destacan la
ingeniería eléctrica, la ingeniería mecánica, la ingeniería industrial, las ciencias
computacionales y las matemáticas.
El vocablo robot tiene sus orígenes en el idioma checo [6] y ha sido adoptado como tal en
varias lenguas incluyendo el español. Más allá de la definición formal de robot, el término
robot comúnmente se ha empleado en el lenguaje cotidiano para referirse a máquinas
autónomas animadas. Estas máquinas generalmente están presentes en alguna de las
siguientes categorías:
3
Por este motivo, los robots manipuladores y los robots móviles figuran como piezas clave del
mosaico que actualmente forman la robótica. Este trabajo trata diversos aspectos relacionados
exclusivamente con robots manipuladores.
Actualmente se cuenta con varias definiciones de robots manipuladores industriales, que a
decir verdad, han causado cierta polémica. De acuerdo con la definición adoptada por la
Federación Internacional de Robótica bajo la norma ISO/TR 8373 [6], un robot manipulador
se define de la siguiente manera: “Un robot manipulador industrial es una máquina
manipuladora con varios grados de libertad controlada automáticamente, reprogramable y de
múltiples usos, pudiendo estar en un lugar fijo o móvil para su empleo en aplicaciones
industriales”.
En su aplicación industrial, los robots manipuladores son comúnmente empleados en tareas
repetitivas y de precisión, así como en actividades peligrosas para operadores humanos. Las
principales ventajas argumentadas para el uso de robots manipuladores en la industria son la
reducción de costes de producción, el incremento de la precisión, la calidad y la
productividad, y una mayor flexibilidad comparada con la de las máquinas especializadas.
Adicionalmente, existen aplicaciones monopolizadas por los robots manipuladores tales como
el trabajo en zonas radioactivas, tóxicas o explosivas y en aplicaciones submarinas y
espaciales. Las proyecciones realizadas a corto plazo colocan a la aplicación de ensamble
como la principal consumidora de robots manipuladores.
Para los fines de este trabajo, se adopta la siguiente definición pragmática de robot
manipulador: “mecánicamente, un robot manipulador -o simplemente manipulador- es un
brazo mecánico articulado formado por eslabones conectados a través de uniones o
articulaciones que permiten un movimiento relativo entre dos eslabones consecutivos”. El
movimiento de cada articulación puede ser traslacional, rotacional o una combinación de
ambos. Aquí se considerarán únicamente articulaciones rotacionales. Bajo consideraciones
razonables, el número de articulaciones en un manipulador determina su número de grados de
libertad (g.d.l.).
4
La figura 1.1 muestra un robot de 4 g.d.l.:
q4
q3
q2
q1
Figura 1.1 Robot de 4 g.d.l.
Las variables
q1 , q2 , q3 y q4 mostradas en la figura 1.1, se refieren a las posiciones
articulares del robot. Dichas posiciones articulares, previa definición de un marco de
referencia adecuado, denotan en consecuencia las posiciones angulares de cada una de las
articulaciones del robot. Para propósitos analíticos, las posiciones articulares se agrupan para
formar el vector de posiciones articulares q:
⎡ q1 ⎤
⎢q ⎥
q = ⎢ 2 ⎥.
⎢M⎥
⎢ ⎥
⎣ qn ⎦
Tanto las posiciones articulares q como sus derivadas temporales, es decir, las velocidades
articulares q& =
d
q, se miden mediante sensores convenientemente colocados en el robot.
dt
A cada articulación del robot le corresponde un accionador, que puede ser de naturaleza
electromecánica, neumática o hidráulica. Dichos accionadores tienen como objetivo generar
5
fuerzas o pares, introduciendo el movimiento de los eslabones y en consecuencia, el
movimiento del robot como un todo. El conjunto de fuerzas y pares generados por los
accionadores del robot son agrupados para fines analíticos en el vector τ , esto es,
⎡τ 1 ⎤
⎢τ ⎥
τ = ⎢ 2 ⎥.
⎢M⎥
⎢ ⎥
⎣τ n ⎦
1.1 Fundamentos de control
El presente trabajo se centra en la relación existente entre la robótica y la ingeniería
eléctrica y más específicamente con el área de control automático. De dicha interacción
sobresale el tema de control de robots manipuladores.
A pesar de la existencia de robots comerciales, el diseño de controladores para robots
manipuladores sigue siendo un área de estudio por parte de los constructores de robots así
como de los centros de investigación. Podría argumentarse que los robots industriales actuales
son capaces de realizar correctamente una gran variedad de actividades, por lo que parecería
innecesario, a primera vista, el desarrollo de investigaciones sobre el tema de control de
robots. Sin embargo, este último tema no sólo es interesante en sí mismo, sino que también
ofrece grandes retos teóricos, y más importante aún, su estudio es indispensable en
aplicaciones específicas que no pueden ser llevadas a cabo mediante los robots comerciales
actuales. La metodología de diseño de los sistemas de control puede resumirse a través de los
pasos siguientes:
•
Conocimiento del sistema a controlar.
•
Modelado dinámico.
•
Propiedades de control.
6
A continuación se comenta sobre estos pasos haciendo énfasis en su aplicación a robots
manipuladores.
1.1.1 Conocimiento del sistema a controlar
En esta etapa se deben determinar las variables físicas del sistema cuyo comportamiento se
desee gobernar tales como temperatura, presión, desplazamiento, velocidad, etc. Estas
variables reciben el nombre de salidas del sistema. Además también deben identificarse
claramente aquellas variables físicas del sistema que se encuentran disponibles y que influyen
en su evolución y en particular de las salidas del sistema. Estas variables llamadas entradas
del sistema pueden ser, por ejemplo, la apertura de una válvula, tensión, par o fuerza, etc.
En el caso particular de robots manipuladores, la variable de salida
-denotada
momentáneamente por y- cuya conducta se desea modificar, ofrece un amplio espectro de
elecciones tal y como se ejemplifica a continuación.
En el caso de robots que se desplazan libremente dentro de su espacio de trabajo sin
interaccionar con el medio ambiente, por ejemplo, los destinados a tareas de pintado, traslado
de objetos de un punto a otro, corte por rayo láser, etc., la salida y puede corresponder
simplemente a las posiciones q y velocidades q& articulares, ó también a la posición y
orientación del órgano terminal o herramienta. Para robots manipuladores que involucran su
interacción con el medio ambiente por contacto físico para realizar tareas como pulido de
superficies, desbastado de materiales, ensamble de alta precisión, etc., la salida y puede
incluir los pares y fuerzas f ejercidos por el extremo del último eslabón del robot sobre su
medio ambiente.
De los ejemplos anteriores se desprende que la salida y correspondiente a un robot -asociado
a una clase de tareas- en general puede tener la forma funcional:
y = y (q, q& , f ).
7
Por otra parte, las variables de entrada, esto es, aquellas que pueden ser modificadas para
alterar la evolución de las salidas, son básicamente los pares y fuerzas τ aplicados por los
accionadores sobre las articulaciones del robot. La figura 1.2 muestra el diagrama de bloques
de un robot correspondiente al caso donde las posiciones y velocidades articulares q y q& son
las salidas del robot, es decir:
⎡q ⎤
y = y (q, q& , f ) = ⎢ ⎥
⎣ q& ⎦
mientras τ es su entrada. En este trabajo, nótese más adelante, que para robots con n
articulaciones, se tendrán en general 2n salidas y n entradas.
q
τ
q&
Figura 1.2: Diagrama de bloques de un robot
1.1.2 Modelado dinámico
En esta etapa se procede a determinar la regla matemática que vincula las variables de
entrada y salida del sistema. Generalmente, dicha caracterización matemática se manifiesta
por medio de ecuaciones diferenciales.
El modelo matemático del sistema a controlar se obtiene tradicionalmente por una de las dos
técnicas siguientes:
- Analítica. Este procedimiento se basa en las ecuaciones de la física que rigen el
comportamiento del sistema. Esta metodología puede proporcionar un modelo matemático
preciso a condición de dominar las leyes que están involucradas en el sistema.
8
- Experimental. Este procedimiento requiere una serie de datos experimentales del sistema.
Frecuentemente se trata de examinar el comportamiento del sistema ante entradas específicas.
Su principal ventaja radica en la facilidad y el corto espacio de tiempo requerido para
disponer del modelo.
En algunas ocasiones, en esta etapa se procede a una simplificación del modelo del sistema
que desea controlarse con miras a obtener posteriormente un sistema de control relativamente
sencillo. Esta etapa puede, no obstante, tener la desventaja de dar como resultado un sistema
de control que funcione inadecuadamente, fenómeno conocido como falta de robustez.
En otras ocasiones, después de la etapa de modelado se continúa con otra de identificación
paramétrica. Aquí se pretende obtener los valores numéricos de los diversos parámetros
contenidos en el modelo dinámico. Esto puede llevarse a cabo mediante técnicas que emplean
mediciones de las entradas y salidas del sistema a controlar.
El modelado dinámico de robots manipuladores se realiza tradicionalmente de forma
analítica, esto es, a partir de las leyes de la física. Debido a la naturaleza mecánica de los
robots manipuladores, las leyes de la física involucradas son simplemente las leyes de la
mecánica. Desde el punto de vista de los sistemas dinámicos, un robot manipulador de n g.d.l.
puede ser considerado como un sistema no lineal multivariable, teniendo n entradas (los pares
y fuerzas τ
que son aplicados en las articulaciones por medio de accionadores
electromecánicos, hidráulicos o neumáticos) y 2n variables de estado, normalmente asociadas
a las n posiciones q y n velocidades q& de las articulaciones.
La figura 1.2 muestra el diagrama de bloques correspondiente suponiendo que las variables de
estado corresponden también a las salidas. Como se ha mencionado, los modelos dinámicos
de los robots manipuladores son en general caracterizados por ecuaciones diferenciales
ordinarias no lineales y no autónomas. Este hecho tiene como consecuencia que las técnicas
de diseño tradicionales para el control de sistemas lineales tengan aplicación limitada en la
síntesis de controladores con alto desempeño para robots manipuladores. Debido a lo
expuesto anteriormente, así como a los requerimientos actuales de alta precisión y rapidez en
9
los movimientos de los robots se ha hecho necesario el uso de técnicas más elaboradas de
control para el diseño de controladores con mayores prestaciones. Esta clase de sistemas de
control pueden incluir, por ejemplo, controles no lineales y controles adaptables.
1.1.3 Propiedades de control
En esta última etapa se procede a dictar las características que se desean para el sistema de
control, a través de los llamados objetivos de control tales como:
•
Estabilidad
•
Regulación
•
Seguimiento de trayectorias
•
Optimización
La primera propiedad que debe poseer un sistema de control es estabilidad. Dos técnicas de
análisis han sido usadas tradicionalmente en el estudio de estabilidad de controladores para
robots. La primera se basa en la teoría de Lyapunov. La segunda es la denominada enfoque
entrada-salida, que basa su fundamento matemático en el análisis funcional. Ambas técnicas
son adecuadas para el análisis funcional y el análisis de sistemas de control, y en particular de
sistemas de control no lineal. En este trabajo se empleará la primera de ellas para desarrollar
el análisis de los controladores que se presenten.
De acuerdo con la definición adoptada para definir la salida y de un robot manipulador, los
objetivos de control asociados a regulación y seguimiento de trayectorias reciben nombres
especiales. En particular, en el caso típico que la salida y corresponda a la posición q y
velocidad q& articular, los objetivos de control reciben aquí los nombre de control de posición
pura en coordenadas articulares y control de movimiento en coordenadas articulares,
respectivamente. A éstos se hará mención en lo sucesivo simplemente como control de
posición y control de movimiento, respectivamente. La manera más sencilla de especificar el
movimiento de un robot es la denominada punto-a-punto. Esta metodología consiste en
determinar una serie de puntos en el espacio de trabajo del manipulador por donde se desea
10
que el extremo final del mismo pase, con el fin de satisfacer una cierta aplicación como lo
muestra la figura 1.3. El problema de control consiste, en resumen, en hacer pasar el extremo
del manipulador por dichos puntos.
Figura 1.3 Especificación de movimiento por punto-a-punto.
Una forma más general para especificar el movimiento de un manipulador es la llamada
trayectoria continua o simplemente trayectoria. En este caso, se determina una curva o
trayectoria parametrizada temporalmente en el espacio de trabajo y el problema de control
consiste en hacer pasar el extremo del manipulador por dicha trayectoria tan cerca como sea
posible, tal y como se muestra en la figura 1.4. Este problema de control recibe el nombre de
control de movimiento de robots y su solución es de los objetivos principales del presente
trabajo.
Un planteamiento particularmente sencillo para control de robots, y un caso particular del
control de movimiento es el denominado control de posición pura de robots manipuladores.
En este planteamiento, la trayectoria especificada en el espacio de trabajo es simplemente un
punto en dicho espacio. La problemática de posición consiste en llevar el extremo del robot a
dicho punto independientemente de su posición inicial.
11
Figura 1.4 Especificación de movimiento por trayectoria
12
CAPÍTULO 2:
MODELO DINÁMICO DEL ROBOT.
Introducción
Los robots manipuladores son sistemas mecánicos articulados formados por eslabones
conectados entre sí a través de uniones o articulaciones. Las articulaciones son básicamente
de dos tipos: rotacionales y traslacionales. En este trabajo, se considerará un robot
manipulador con articulaciones rotacionales como el mostrado en la figura 2.1:
y
g
τ1
l C1
l1
x
m1 I 1
q1
τ2
m2 , I 2
q2
lC 2
l2
Figura 2.1 Robot de 2 grados de libertad.
El modelo de este robot se empleará extensamente en los siguientes capítulos como robot
prototipo para la realización de simulaciones, con el propósito de observar y comparar, el
comportamiento de los diversos sistemas de control de robots.
13
2.1 Modelo dinámico del robot utilizado
El brazo mecánico mostrado en la figura 2.1, es un brazo manipulador de 2 g.d.l., formado
por dos eslabones rígidos de longitudes l1 y l2 , y masas m1 y m2 respectivamente. Las uniones
1 y 2 son rotacionales. Los desplazamientos del robot se llevarán a cabo en el plano vertical
x-y. La distancia entre los ejes de giro y los centros de masas se denota por lC1 y lC 2
respectivamente. Por ultimo, I1 e I 2 expresan los momentos de inercia de los eslabones con
respecto al eje que pasa a través de sus centros de masa y que es perpendicular al plano x-y.
Los g.d.l están asociados a los ángulos q1 , que se mide desde la posición vertical hacia abajo
y q2 , que se mide a partir de la extensión del eslabón 1 hasta el eslabón 2, siendo ambos
positivos en sentido contrario al movimiento de las manecillas del reloj. El vector de
posiciones q (t ) se define como:
q (t ) = [ q1 (t ) q2 (t )]T .
El modelo dinámico de un robot de n grados de libertad [6], es:
M ( q )q&& + C (q, q& ) q& + G ( q ) = τ .
(2.1.1)
Donde q ∈ R n es el vector de posición, τ ∈ R n es el vector de torques de control en
accionadores, M (q ) ∈ R nxn es la matríz de inercia, C ( q, q& ) ∈ R nxn es la matríz centrífuga y de
coriolis, G (q) ∈ R n es el vector de gravedad. Nótese que (2.1.1) es una ecuación diferencial
vectorial no lineal en el estado ⎡⎣ qT
T
q& T ⎤⎦ .
El término C ( q, q& ) q& es un vector de n x 1 llamado vector de fuerzas centrífugas y de Coriolis,
el cual es único, pero la matriz C ( q, q& ) puede no serlo. El modelo (2.1.1) puede verse como
un sistema dinámico cuya entrada es el vector τ y sus salidas son los vectores q y q&. Esto
puede esquematizarse mediante el diagrama de la figura 1.2.
14
Cada elemento de M ( q ), C ( q, q& ) y G ( q ) es, en general, una función relativamente compleja
de las posiciones y velocidades de todas las articulaciones, esto es, de q y q&. Los elementos
de M ( q ), C ( q, q& ) y G ( q ) dependen, por supuesto, de la geometría del robot que modelan. El
modelo dinámico del robot de la figura 2.1 [6], puede escribirse en la forma genérica (2.1.1)
tomando:
⎡M
M (q) = ⎢ 11
⎣ M 21
M 12 ⎤
,
M 22 ⎥⎦
⎡ C (q, q& ) C12 (q, q& ) ⎤
C (q, q& ) = ⎢ 11
⎥,
⎣C21 (q, q& ) C22 (q, q& ) ⎦
⎡ g (q) ⎤
G (q) = ⎢ 1 ⎥ ,
⎣ g 2 (q) ⎦
⎡τ ⎤
τ = ⎢ 1⎥,
⎣τ 2 ⎦
donde:
M 11 (q) = m1lC21 + m2l12 + m2lC2 2 + 2m2l1lC 2 cos(q2 ) + I1 + I 2 ,
M 12 (q) = m2lC2 2 + m2l1lC 2 cos(q2 ) + I 2 ,
M 21 (q ) = m2lC2 2 + m2l1lC 2 cos(q2 ) + I 2 ,
M 22 (q) = m2lC2 2 + I 2 ,
C11 (q, q& ) = − m2l1lC 2 sen(q2 )q&2 ,
C12 (q, q& ) = −m2l1lC 2 sen(q2 )[q&1 + q&2 ],
C21 (q, q& ) = m2l1lC 2 sen(q2 )q&1 ,
C22 (q, q& ) = 0,
g1 (q) = [m1lC1 + m2l1 ]gsen(q1 ) + m2 glC 2 sen(q1 + q2 ),
g 2 (q) = m2 glC 2 sen(q1 + q2 ).
La existencia de la matriz M (q ) −1 (ésta existe debido a que M (q ) es una matriz definida
positiva) permite expresar el modelo dinámico (2.1.1) de un robot de n g.d.l. en términos del
vector de estado ⎡⎣ qT
q& T ⎤⎦ de la forma siguiente:
q&
⎤
d ⎡q ⎤ ⎡
=⎢
⎥.
−1
⎢
⎥
dt ⎣ q& ⎦ ⎣ M (q) [τ (t ) − C (q, q& )q& − G (q)]⎦
(2.1.2)
15
Debido a la naturaleza no lineal del modelo dinámico (2.1.2), para robots de n g.d.l. el
concepto de estabilidad de un robot en malla abierta debe manejarse con precaución, para lo
cual se utilizó estabilidad en el sentido de Lyapunov [6, 7] para el diseño de los controladores
propuestos.
2.2 Propiedades
En esta sección se expondrán las propiedades básicas utilizadas del modelo dinámico para
robots de n g.d.l. caracterizado mediante la ecuación (2.1.1). A pesar de la complejidad de la
ecuación dinámica (2.1.1) que gobierna el comportamiento de los robots manipuladores, esta
ecuación y sus términos formantes poseen propiedades que resultan de interés por sí mismas.
Además dichas propiedades son de particular valía en el estudio de sistemas de control para
robots manipuladores.
Las propiedades son divididas en las siguientes clasificaciones:
•
Linealidad en los parámetros dinámicos.
• Matriz de inercia M (q ).
• Matriz centrífuga y de Coriolis C (q, q& ).
• Vector de gravedad G (q ).
De las anteriores clasificaciones, se derivan toda una serie de propiedades que se pueden
utilizar para el diseño de los sistemas de control. A continuación sólo se hará referencia a la
propiedad utilizada para la obtención de los dos controladores propuestos. Tal propiedad se
refiere a la linealidad en los parámetros dinámicos. Una propiedad importante de la ecuación
dinámica (2.1.1), aunque es no lineal en el vector de estado ⎡⎣ qT
T
q& T ⎤⎦ puede expresarse en
,
términos lineales de los parámetros dinámicos del robot, por ejemplo de las masas e inercias.
Esta característica es básica para el análisis de controladores adaptables.
16
2.2.1 Propiedad de linealidad de parámetros de gravedad
Más que realizar la linealidad en los parámetros dinámicos en todo el sistema dinámico,
sólo se le aplicó al vector de pares gravitacionales [15], donde la propiedad introducida es:
G ( q ) = Γ ( q ) Ω,
(2.2.1)
la cual claramente tiene la ventaja de no requerir información de velocidad y aceleración para
la descripción de la matriz Γ. Aquí ésta matriz puede ser considerada como la matriz de
agrupación de pares gravitacionales.
Aplicando la propiedad (2.2.1) en (2.1.1), obtenemos una representación alterna de la
dinámica no lineal de un robot manipulador de n g.d.l.:
M ( q ) q&& + C ( q, q& )q& + Γ ( q )Ω = τ .
(2.2.2)
Como ya se estableció, se tiene:
⎡M
M (q) = ⎢ 11
⎣ M 21
M 12 ⎤
,
M 22 ⎥⎦
⎡ C (q, q& ) C12 (q, q& ) ⎤
C (q, q& ) = ⎢ 11
⎥,
&
&
C
(
q
,
q
)
C
(
q
,
q
)
⎣ 21
⎦
22
⎡τ ⎤
τ = ⎢ 1⎥,
⎣τ 2 ⎦
en el caso del vector de pares gravitacionales tenemos:
⎡ g (q) ⎤ ⎡[m l + m2l1 ]gsen(q1 ) + m2 glC 2 sen(q1 + q2 ) ⎤
G ( q ) = ⎢ 1 ⎥ = ⎢ 1 C1
⎥,
m2 glC 2 sen(q1 + q2 )
⎣ g 2 (q) ⎦ ⎣
⎦
considerando (2.2.1), se pueden tener distintas representaciones de G(q), es decir, de
Γ ( q ) y Ω . Para ejemplificar la propiedad (2.2.1), a continuación se presentan dos
parametrizaciones del vector de gravedad, un primer caso es:
⎡ sen(q1 ) sen(q1 + q2 ) ⎤
,
Γ( q ) = ⎢
sen(q1 + q2 ) ⎥⎦
⎣ 0
⎡(m l + m2l1 ) g ⎤
Ω = ⎢ 1 C1
⎥,
m2lC 2 g
⎣
⎦
17
y otra posibilidad es :
⎡(m l + m2l1 ) sen(q1 ) + m2lC 2 sen(q1 + q2 ) ⎤
Γ( q ) = ⎢ 1 C1
⎥,
m2lC 2 sen(q1 + q2 )
⎣
⎦
Ω = [ g ].
Como se observará en el capítulo 4, estos ejemplos de parametrizaciones se utilizaron en los
controladores propuestos. Es fácil deducir que se pueden hacer toda una serie de diversas
representaciones de G(q), y así derivar otras leyes de control. Lo anterior resulta muy
interesante porque para cada representación se obtendrán diferentes comportamientos del
sistema de control. Cabe aclarar que existen muchas otras propiedades que tiene el modelo
dinámico del brazo manipulador, ver al final el apéndice A, aunque solo se necesitó de esta
propiedad para el desarrollo de los controladores adaptables diseñados.
18
CAPÍTULO 3:
CONTROLADORES EXISTENTES.
Introducción
El control de robots manipuladores es un área muy estudiada, existen una gran cantidad de
controladores publicados utilizando diversas técnicas para el cumplimiento de sus objetivos
de control. En este capítulo se presentarán algunos de los controladores más utilizados,
describiendo sus características, resultados y así comprender mejor el funcionamiento de cada
uno de ellos.
Primeramente se analizarán dos de los controladores más utilizados para la solución al
problema de regulación ó control de posición, y posteriormente otros dos más para explicar el
problema de seguimiento de trayectorias ó control de movimiento.
3.1 Control de Posición
Considérese el modelo dinámico de un robot manipulador de n grados de libertad con
eslabones rígidos, sin fricción en sus uniones y con actuadores ideales (2.1.1).
El problema de control de posición de robots manipuladores puede formularse en los
siguientes términos. Considérese la ecuación dinámica de un robot de n g.d.l. (2.1.1), dada
una posición articular deseada qd , que se supone constante, se trata de determinar una función
vectorial τ , de tal forma que las posiciones q asociadas a las coordenadas articulares del
robot lleguen asintóticamente a qd . En términos más formales, el objetivo de control de
posición pura, o simplemente control de posición, consiste en determinar τ de tal forma que:
lim q (t ) = qd
t →∞
(3.1.1)
19
donde qd ∈ R n es un vector constante. El cálculo del vector τ involucra generalmente a una
función vectorial no lineal de q, q& y q&&. Esta función se denomina “ley de control” ó
simplemente controlador. Es importante recordar que muchos robots manipuladores disponen
de sensores de posición y velocidad para cada articulación, por lo que los vectores q y q& son
medibles y pueden ser empleados en los controladores. Algunos otros vienen equipados sólo
con sensores de posición articular, por lo que puede ser necesario estimar la velocidad a partir
de la medición de posición – ya sea mediante filtrado o por medio de observadores -.
Genéricamente, el controlador puede expresarse como:
τ = τ (q, q& , q&&, qd , M (q), C (q, q& ), G (q)).
(3.1.2)
Para fines prácticos es deseable que el controlador no dependa de la aceleración articular q&&.
La figura 3.1 presenta un diagrama de bloques formado por un controlador en malla cerrada
con un robot:
qd
τ
q
q&
Figura 3.1 Control en malla cerrada de robots
Si el controlador (3.1.2) no depende explícitamente de M ( q ), C ( q, q& ), y G ( q ), se dice que el
controlador no se basa en el modelo del robot. Existen controladores, por ejemplo del tipo
PID, que poseen parámetros de diseño cuyos valores numéricos se determinan en función del
modelo del robot al cual controlan. De este modo, el diseño adecuado del controlador requiere
el conocimiento del modelo del robot – en realidad de sus parámetros físicos -, a pesar de ser
un controlador del tipo que no se basa en el modelo.
3.1.1 Controlador de Regulación Global para Robots Manipuladores
El primer controlador a presentar es el desarrollado por los autores Harry Berghuis y Henk
Nijmeijer [9], en este artículo se propone una simple solución al problema de regulación de
20
robots rígidos requiriendo solamente valores de posiciones articulares. El controlador consiste
de dos partes: (1) una compensación de gravedad; (2) un compensador dinámico lineal de
primer orden. La parte de compensación de gravedad puede ser elegida como una función de
cualquiera de las posiciones articulares actuales o de la posición articular deseada. Ambas
posibilidades fueron probadas para obtener estabilidad asintótica global. Aunque en el tiempo
que se publicó este artículo, resultaba atractivo un controlador que cumpliera los objetivos de
control con solo la retroalimentación de posición, actualmente esto no representa mucho
provecho ya que se consigue tener mediciones de posición y velocidad sin ningún problema
de costo, volumen y peso. Las simulaciones se realizaron tomando el modelo de un robot
manipulador como el presentado en la figura 2.1. Se considera la ecuación general de un robot
manipulador de n grados de libertad (2.1.1), donde también q ∈ R n es el vector de posición,
τ ∈ R n es el vector de torques de control en accionadores, M (q ) ∈ R nxn es la matríz de inercia,
C ( q, q& ) ∈ R nxn es la matríz centrífuga y de coriolis, G (q ) ∈ R n es el vector de gravedad. El
controlador propuesto por Harry Berghuis y Henk Nijmeijer [9] es:
τ = G ( q ) − K d x& − K p e,
(3.1.3)
x& = − Lx + K d e,
(3.1.4)
donde L = LT > 0, K d = K dT > 0, K p = K Tp > 0 y e ≡ q − qd , que representa el error de posición
y qd es la posición deseada constante. Debido a la autonomía con respecto al tiempo del
sistema a lazo cerrado, se utilizó el teorema de La Salle [6] y se comprobó que el controlador
de posición (3.1.3) y (3.1.4) estabiliza en forma asintótica global el sistema robótico (2.1.1) en
el punto de equilibrio ( q& , e, x ) ≡ 0.
A continuación, se realizarán las simulaciones numéricas al sistema de la figura 2.1 con el
controlador (3.1.3) y (3.1.4). Como se puede observar el robot de 2 g.d.l., tiene movimiento
en el plano x-y, la dinámica del sistema satisface (2.1.1) y tiene los siguientes datos:
⎡M
M (q) = ⎢ 11
⎣ M 21
M 12 ⎤
,
M 22 ⎥⎦
⎡ C (q, q& ) C12 (q, q& ) ⎤
C (q, q& ) = ⎢ 11
⎥,
⎣C21 (q, q& ) C22 (q, q& ) ⎦
⎡ g (q) ⎤
g (q) = ⎢ 1 ⎥ ,
⎣ g 2 (q) ⎦
⎡τ ⎤
τ = ⎢ 1⎥ ,
⎣τ 2 ⎦
21
pero ahora estos valores son dados por los autores:
M 11 (q) = 8.77 + 1.02 cos(q2 ),
M 12 (q) = 0.76 + 0.51cos(q2 ),
M 21 (q ) = 0.76 + 0.51cos(q2 ),
M 22 (q) = 0.62,
C11 (q, q& ) = −0.51sen(q2 )q&2 ,
C12 (q, q& ) = −0.51sen(q2 )[q&1 + q&2 ],
C21 (q, q& ) = 0.51sen(q2 )q&1 ,
C22 (q, q& ) = 0,
g1 (q) = 7.6 gsen(q1 ) + 0.63sen(q1 + q2 ),
g 2 (q) = 0.63sen(q1 + q2 ),
donde g es la aceleración de gravedad. La programación del controlador (3.1.3) y (3.1.4) fue
con una posición deseada qdT = [1 1]. Las condiciones iniciales para q, q& y x son asumidas
igual a cero. Las matrices de ganancia del controlador son:
⎡50 0 ⎤
Kp = ⎢
⎥,
⎣ 0 100 ⎦
⎡150 0 ⎤
Kd = ⎢
⎥,
⎣ 0 60 ⎦
⎡80 0 ⎤
L=⎢
⎥.
⎣ 0 100 ⎦
1.4
1.2
Posición [Rad]
1
0.8
0.6
0.4
0.2
q
1
qd1
0
0
2
4
6
Tiempo [Seg]
8
10
Figura 3.2 Posición de q1 respecto de qd 1
22
1.4
1.2
Posición [Rad]
1
0.8
0.6
0.4
0.2
q2
qd2
0
0
2
4
6
Tiempo [Seg]
8
10
Figura 3.3 Posición de q2 respecto de qd 2
Como se puede observar en las figuras 3.2 y 3.3, los resultados obtenidos son muy
satisfactorios y cumplen con los objetivos de control. Lo anterior es, considerando que los
parámetros del sistema no cambian a través del tiempo, pero si volvemos a realizar las
simulaciones aplicando una g al sistema y una ĝ al controlador con los siguientes datos:
g = 9.81
m
seg 2
gˆ = 12
m
,
seg 2
tenemos los resultados mostrados en las figuras 3.4 y 3.5. Lo anterior, fue con el fin de hacer
referencia a la definición del problema de la tesis. Es decir, en aplicaciones industriales los
robots manipuladores están sujetos a variaciones de la gravedad, como sería el caso de que el
robot estuviera montado en una plataforma móvil (un barco, un ascensor, etc.). Como se
puede apreciar, con sólo modificar el valor de la gravedad del controlador como la aplicada en
ĝ ya no se cumple el objetivo de control. La posición del eslabón 1 se aleja de la posición
deseada, y esto empeoraría si cada vez la diferencia es mayor. En resumen, se puede concluir
el mal desempeño del controlador a variaciones del valor de la gravedad como la aplicada
anteriormente en gˆ .
23
1.4
1.2
Posición [Rad]
1
0.8
0.6
0.4
0.2
q
1
qd1
0
0
2
4
6
Tiempo [Seg]
8
10
Figura 3.4 Posición de q1 respecto de qd 1 con una ĝ distinta de g.
1.4
1.2
Posición [Rad]
1
0.8
0.6
0.4
0.2
q
2
qd2
0
0
2
4
6
Tiempo [Seg]
8
10
Figura 3.5 Posición de q2 respecto de qd 2 con una ĝ distinta de g.
3.1.2 Controlador PD con Compensación de Gravedad
El control de posición pura de robots manipuladores puede realizarse potencialmente
mediante la técnica de control PD. Sin embargo, dicho esquema de control posee ciertas
restricciones que pueden limitar su uso. Efectivamente, el controlador PD cuya sencilla ley de
control viene dada por la ecuación (3.1.5), garantiza el cumplimiento del objetivo de control
24
de posición en forma global para robots cuyos modelos dinámicos no poseen el vector de
pares gravitacionales G ( q ) .
τ = K p q% + K v q&%
(3.1.5)
En este caso, la sintonía de este controlador es trivial ya que es suficiente con seleccionar las
matrices de diseño K p y K v como simétricas y definidas positivas. No obstante, el control
PD no garantiza el cumplimiento del objetivo de control de posición pura de manipuladores
cuyos modelos dinámicos contienen el término de pares gravitacionales G ( q ) , a menos que la
posición deseada qd sea tal que G (qd ) = 0.
En esta sección se describirá el funcionamiento del Controlador PD con Compensación de
Gravedad [6], que es capaz de satisfacer el objetivo de control de posición pura en forma
global para robots de n g.d.l. En la ley de control se requiere el conocimiento previo de una
parte del modelo dinámico del robot a ser controlado, puesto que usa el vector de pares
gravitacionales G ( q ). La ley de control PD con compensación de gravedad está representada
por:
τ = K p q% + K v q%& + G (q)
(3.1.6)
donde K p , K v ∈ R nxn son matrices simétricas definidas positivas y q% = qd − q. Nótese que la
única diferencia respecto al control PD (3.1.5) es el término aditivo G ( q ) . A diferencia del
control PD, que no requiere conocimiento alguno sobre la estructura del modelo del robot, el
controlador (3.1.6) hace uso explícito del conocimiento parcial del modelo del manipulador,
específicamente de G ( q ).
La ley de control (3.1.6) requiere información sobre la posición deseada qd (t ) y la velocidad
deseada q&d (t ), así como medición de la posición q (t ) y la velocidad q& (t ) a cada instante.
Como se demostrará más adelante, este controlador verifica el objetivo de posición pura, es
decir:
lim q (t ) = qd
t →∞
25
donde qd ∈ R n es un vector constante cualquiera. Este controlador también presenta
estabilidad asintótica global del origen ⎡⎣ q% T
q& T ⎤⎦ = 0 ∈ R 2 n . Como resultado, se afirma que:
lim q% (t ) = 0,
t →∞
lim q& (t ) = 0,
t →∞
es decir, que se verifica el objetivo de control de posición pura. Para presentar los resultados,
se implementará dicho controlador en el robot de 2 g.d.l. de la figura 2.1. Se considera
nuevamente la ecuación general de un robot manipulador de n grados de libertad (2.1.1),
donde también q ∈ R n es el vector de posición, τ ∈ R n es el vector de torques de control en
accionadores, M (q) ∈ R nxn es la matríz de inercia, C (q, q& ) ∈ R nxn es la matríz centrífuga y de
coriolis, G (q) ∈ R n es el vector de gravedad. La programación del controlador (3.1.6) fue con
una posición deseada:
⎡π
qdT = ⎢
⎣4
π ⎤
20 ⎥⎦
[ Rad ].
Las condiciones iniciales para q, q& son asumidas igual a cero. Las matrices de ganancia del
controlador deben ser definidas positivas y en particular dichas matrices se escogen
(arbitrariamente) como:
⎡120 0 ⎤
Kp = ⎢
⎥,
⎣ 0 81⎦
⎡35 0 ⎤
Kv = ⎢
⎥.
⎣ 0 15⎦
Como se puede apreciar en las figuras 3.6 y 3.7, los resultados obtenidos son muy
satisfactorios y cumplen cabalmente con los objetivos de control. Esto es, considerando que
los parámetros del sistema no cambian a través del tiempo.
26
1
0.9
0.8
Posición [Rad]
0.7
0.6
0.5
0.4
0.3
0.2
q1
0.1
0
qd1
0
2
4
6
Tiempo [Seg]
8
10
Figura 3.6 Posición de q1 respecto de qd 1
0.2
0.18
0.16
Posición [Rad]
0.14
0.12
0.1
0.08
0.06
0.04
q
2
0.02
q
d2
0
0
2
4
6
Tiempo [Seg]
8
10
Figura 3.7 Posición de q2 respecto de qd 2
Nuevamente se realizaron las simulaciones, pero ahora aplicando una g al sistema y una ĝ al
controlador con los siguientes datos:
g = 9.81
m
seg 2
gˆ = 12
m
.
seg 2
27
1
0.9
0.8
Posición [Rad]
0.7
0.6
0.5
0.4
0.3
0.2
q1
0.1
0
qd1
0
2
4
6
Tiempo [Seg]
8
10
Figura 3.8 Posición de q1 respecto de qd 1 con una ĝ distinta de g.
0.2
0.18
0.16
Posición [Rad]
0.14
0.12
0.1
0.08
0.06
0.04
q
2
0.02
q
d2
0
0
2
4
6
Tiempo [Seg]
8
10
Figura 3.9 Posición de q2 respecto de qd 2 con una ĝ distinta de g.
Como se puede observar en las figuras 3.8 y 3.9, al variar el valor de la gravedad en la forma
señalada, ya no se cumple el objetivo de control. La posición del eslabón 1 se estabiliza a otro
valor de la posición deseada, al igual que la posición del eslabón 2. Además, entre más se
varíe dicho valor, mayor será la diferencia entre la salida y la posición deseada. Por lo
anterior, se puede concluir que a variaciones del valor de la gravedad como la descrita, el
controlador funciona inadecuadamente.
28
3.2 Control de Movimiento
Considérese el modelo dinámico de un robot manipulador de n g.d.l. con eslabones
rígidos, sin fricción en sus uniones y con accionadores ideales (2.1.1), donde nuevamente
q ∈ R n es el vector de posición, τ ∈ R n es el vector de torques de control en accionadores,
M (q) ∈ R nxn es la matríz de inercia, C (q, q& ) ∈ R nxn es la matríz centrífuga y de coriolis,
G (q) ∈ R n es el vector de gravedad. Los vectores q, q& , q&& ∈ R n denotan la posición, velocidad
y aceleración articular, respectivamente.
El problema de control de movimiento de robots manipuladores puede formularse en los
siguientes términos. Considérese la ecuación dinámica de un robot de n g.d.l. (2.1.1). Dado un
conjunto de funciones vectoriales acotadas
qd , q&d y q&&d
referidas como posiciones,
velocidades y aceleraciones articulares deseadas, se trata de determinar una función vectorial
τ , de tal forma que las posiciones q asociadas a las coordenadas articulares del robot sigan
con precisión a qd . En términos más formales, el objetivo de control de movimiento consiste
en determinar τ de tal forma que:
lim q% (t ) = 0
(3.2.1)
t →∞
donde q% ∈ R n denota el vector de errores de posiciones articulares, simplemente denominado
error de posición y definido como:
q% (t ) = qd (t ) − q (t ).
Considerando la definición anterior, el vector
q&% (t ) = q&d (t ) − q& (t ) denotará el error de
velocidad. Si el objetivo de control se verifica, significará que las articulaciones del robot
manipulador siguen asintóticamente la trayectoria de movimiento deseado.
El cálculo del vector τ involucra generalmente una función vectorial no lineal de q, q& y q&&.
Esta función se denominará “ley de control” o simplemente controlador. Es importante
recordar que los robots manipuladores disponen de sensores de posición y velocidad para cada
29
articulación por lo que los vectores q y q& son medibles y pueden emplearse en los
controladores. Genéricamente, el controlador puede expresarse como:
τ = τ (q, q& , q&&, qd , q&d , q&&d , M (q), C (q, q& ), G (q)).
(3.2.2)
Para fines prácticos es deseable que el controlador no dependa de la aceleración articular q&&.
La figura 3.10 presenta un diagrama de bloque formado por un controlador en malla cerrada
con un robot.
qd
q&d
q&&d
τ
q
q&
Figura 3.10 Control en malla cerrada de robots con valores deseados
A continuación, se presentan dos controladores para el control de movimiento de robots
manipuladores y así poder observar con más detalle su funcionamiento.
3.2.1 Control PD +
El objetivo de control de movimiento de robots manipuladores puede lograrse en forma
global por medio del control PD con precompensación [6] (3.2.3):
τ = K p q% + K v q%& + M (qd )q&&d + C (qd , q&d )q&d + G (qd ).
(3.2.3)
No obstante, a pesar de la relativa sencillez de dicha estrategia de control, ésta requiere para
su implementación el conocimiento del modelo dinámico del robot, aunque en realidad es una
característica común de los controladores de movimiento; sin embargo, el procedimiento de
sintonía también hace uso del mismo y más todavía, por un lado se precisa disponer a priori
de la tarea encomendada al robot, y por otro lado, el procedimiento de sintonía de ganancias
es laborioso.
30
El objetivo de ésta sección es presentar un controlador cuya principal característica es:
primero, garantía del cumplimiento del objetivo de control de movimiento en forma global y
segundo, su procedimiento de sintonía es trivial. El controlador denominado PD+ [6], es sin
duda, uno de los controladores más sencillos que pueden aplicarse en el control de
movimiento de robots manipuladores, con una garantía formal para el cumplimiento de este
objetivo de control en forma global. La ley de control PD+ viene dada por:
τ = K p q% + K v q&% + M (q)q&&d + C (q, q& )q&d + G (q),
donde
(3.2.4)
K p , K v ∈ R nxn son matrices simétricas definidas positivas seleccionadas por el
diseñador y como de costumbre q% = qd − q denota el error de posición. La realización práctica
del control PD+ requiere el conocimiento exacto del modelo del manipulador, es decir, de
M ( q ), C ( q, q& ) y G ( q ). Adicionalmente es necesario disponer de las trayectorias deseadas
qd (t ), q&d (t ) y q&&d (t ) así como de las mediciones q (t ) y q& (t ). Aquí la selección de K p y K v es
completamente arbitraria y no depende del modelo dinámico del robot ni de la tarea
encomendada al mismo.
Nótese que en el caso particular de control de posición, esto es, q&d = q&&d = 0 ∈ R n , el control
PD+ descrito por (3.2.4) es equivalente al control PD con compensación de gravedad (3.1.6).
Debido a que el sistema a lazo cerrado es no autónomo con respecto al tiempo, esta propiedad
es ocasionada ya que el sistema depende explícitamente de las funciones del tiempo
qd (t ) y q&d (t ). El teorema de La Salle no puede aplicarse para estudiar estabilidad asintótica
global debido a que el sistema a lazo cerrado no es autónomo. Sin embrago, se menciona que
mediante el uso del teorema de Matrosov [6], puede demostrarse que el origen es
asintóticamente estable en forma global.
Para realizar las simulaciones correspondientes, se considera la ecuación general de un robot
manipulador de n grados de libertad (2.1.1) y el sistema de la figura 2.1.
31
Donde también q ∈ R n es el vector de posición, τ ∈ R n es el vector de torques de control en
accionadores, M (q) ∈ R nxn es la matríz de inercia, C (q, q& ) ∈ R nxn es la matríz centrífuga y de
coriolis, G (q) ∈ R n es el vector de gravedad. Las condiciones iniciales para q, q& son asumidas
igual a cero. Las matrices de ganancia del controlador, simétricas definidas positivas se
escogen como:
⎡785 0 ⎤
Kp = ⎢
⎥,
⎣ 0 785⎦
⎡ 250 0 ⎤
Kv = ⎢
⎥.
⎣ 0 250 ⎦
Las trayectorias de posición articular deseadas son:
qdi =
π
2
(1 − e − wit ) + 0.1sen( w0i t ), wi = 5, w0i = 2π , i = 1, 2.
Donde el primer término involucra a
π /2
como la posición final deseada para cada
articulación, siendo wi la velocidad con la que se converge a dicha posición, mientras que el
segundo término introduce una señal oscilante a una velocidad w0i alrededor de la posición
deseada.
1.8
1.6
1.4
Posición [Rad]
1.2
1
0.8
0.6
q1
0.4
q
d1
0.2
0
−0.2
0
2
4
6
Tiempo [Seg]
8
10
Figura 3.11 Posición de q1 respecto de qd 1
32
1.8
1.6
1.4
Posición [Rad]
1.2
1
0.8
q2
0.6
q
d2
0.4
0.2
0
0
2
4
6
Tiempo [Seg]
8
10
Figura 3.12 Posición de q2 respecto de qd 2
Como se puede apreciar en las figuras 3.11 y 3.12, los resultados obtenidos son muy
satisfactorios y cumplen cabalmente con los objetivos de control. Ahora, si volvemos a
realizar las simulaciones, pero ahora aplicando una g al sistema y una ĝ al controlador con
los siguientes datos:
g = 9.81
m
seg 2
gˆ = 18
m
,
seg 2
1.8
1.6
1.4
Posición [Rad]
1.2
1
0.8
0.6
q1
0.4
q
d1
0.2
0
−0.2
0
2
4
6
Tiempo [Seg]
8
10
Figura 3.13 Posición de q1 respecto de qd 1 con una ĝ distinta de g.
33
1.8
1.6
1.4
Posición [Rad]
1.2
1
0.8
q2
0.6
q
d2
0.4
0.2
0
0
2
4
6
Tiempo [Seg]
8
10
Figura 3.14 Posición de q2 respecto de qd 2 con una ĝ distinta de g.
Como se puede observar, a diferencia de los resultados obtenidos en los controladores de
posición, aquí se aprecia claramente una mayor robustez en su desempeño. Sin embargo, al
tener una variación de gravedad en el sistema como la aplicada, es claro que la posición del
eslabón 1 no cumple con el objetivo de control. Cabe señalar que para variaciones mayores,
esta diferencia es cada vez mayor; lo que demuestra que el controlador de movimiento PD+ a
pesar de ser mucho más robusto que los controladores de posición mostrados, su
funcionamiento es afectado por tales variaciones de gravedad.
3.2.2 Control Par Calculado
Los controladores para posición y movimiento presentados en las secciones anteriores
tienen en común, en sus leyes de control, la presencia explícita de un controlador lineal del
tipo PD. Siendo la excepción a esta regla, el siguiente controlador de movimiento a presentar,
cuya ley de control no presenta explícitamente el término lineal PD. Otras peculiaridades de
este controlador son las siguientes. El control Par Calculado [6], permite obtener una ecuación
de malla cerrada lineal en términos de las variables de estado. Este hecho no tiene precedente
en los controladores abordados anteriormente. Conviene adelantar que dicho controlador
satisface el objetivo de control de movimiento con una selección trivial de sus parámetros de
34
diseño. El modelo dinámico (2.1.1) que caracteriza el comportamiento de los robots
manipuladores es generalmente no lineal en términos de las variables de estado (posiciones y
velocidades articulares). Esta peculiaridad del modelo dinámico podría hacer pensar que dado
cualquier controlador, la ecuación diferencial que gobierna al sistema de control en malla
cerrada debería ser también no lineal en las variables de estado correspondientes.
Esta idea intuitiva se confirma para el caso de los controladores vistos anteriormente. No
obstante, existe un controlador también no lineal en las variables de estado con el cual se
consigue describir el sistema de control en malla cerrada ahora mediante una ecuación
diferencial lineal. Dicho controlador es capaz de satisfacer el objetivo de control y de
movimiento en forma global con una selección trivial de sus parámetros de diseño y recibe el
nombre de control Par Calculado. La ecuación correspondiente al control Par Calculado viene
dada por [6]:
τ = M (q)[q&&d + K v q%& + K p q% ] + C (q, q& )q& + G (q),
(3.2.5)
donde K v y K p son matrices simétricas definidas positivas de diseño, y q% = qd − q denota
como de costumbre al error de posición.
A pesar de la presencia del término K p q% + K v q&% en la ley de control (3.2.5), éstos son en
realidad multiplicados por la matriz de inercia M (qd − q% ). Este hecho tiene como resultado
que efectivamente la ley de control cuente con un término del tipo PD pero éste no es un
controlador lineal, ya que las ganancias de posición y de velocidad no son constantes sino que
dependen explícitamente del error de posición q%. Esto puede verse claramente expresando la
ley de control Par Calculado dada por (3.2.5) de la siguiente manera [6]:
τ = M (qd − q% ) K p q% + M (qd − q% ) K v q%& + M (q)q&&d + C (q, q& )q& + G(q).
El control Par Calculado fue una de las primeras estructuras de control de movimiento
basadas en el modelo del manipulador a ser controlado, es decir, que hace uso explícito del
conocimiento de las matrices M ( q ), C ( q, q& ) y del vector G ( q ).
35
Obsérvese que la trayectoria de movimiento deseada: qd (t ), q&d (t ) y q&&d (t ), así como la
medición de la posición q (t ) y de la velocidad q& (t ), se emplean para realizar el cálculo de la
acción de control (3.2.5). La ecuación de malla cerrada se obtiene sustituyendo la acción de
control τ de la ley de control (3.2.5) en la ecuación del modelo del robot (2.1.1):
M ( q ) q&& = M ( q ) ⎡⎣ q&&d + K v q%& + K p q% ⎤⎦ .
(3.2.6)
Debido a que M (q ) es una matriz definida positiva y por lo tanto también invertible, luego la
ecuación (3.2.6) se reduce a:
q&&% + K v q%& + K p q% = 0,
la cual a su vez puede expresarse en términos del vector de estado ⎡⎣ q% T
T
q%& T ⎤⎦ como
⎤
q&%
d ⎡ q% ⎤ ⎡
=
⎢
⎥,
⎢
⎥
dt ⎣ q%& ⎦ ⎢⎣ − K p q% − K v q%& ⎥⎦
⎡ 0
=⎢
⎣− K p
I ⎤ ⎡ q% ⎤
,
− K v ⎥⎦ ⎢⎣ q&% ⎥⎦
(3.2.7)
Donde I es la matriz identidad de dimensión n. Es importante observar que la ecuación de
malla cerrada (3.2.7) representa una ecuación diferencial lineal y autónoma, cuyo único
estado de equilibrio es ⎡⎣ q% T
q%& T ⎤⎦ = 0 ∈ R 2 n . La unicidad del equilibrio se debe a que la matriz
K p es por diseño definida positiva y por lo tanto no singular. Como la ecuación de malla
cerrada (3.2.7) es lineal y autónoma, las soluciones de ésta pueden obtenerse en forma
cerrada.
Se establece que el origen ⎡⎣ q% T
T
q%& T ⎤⎦ = 0 ∈ R 2 n de la ecuación de malla cerrada es
asintóticamente estable en forma global y entonces:
36
lim q&% (t ) = 0,
t →∞
lim q% (t ) = 0,
t →∞
y por lo tanto, esto implica que el objetivo de control de movimiento se verifica. Para fines
prácticos, las matrices de diseño K p y K v pueden ser diagonales, por tanto la ecuación de
malla cerrada (3.2.7) representa un sistema lineal multivariable desacoplado, es decir, el
comportamiento dinámico de los errores de posiciones articulares es gobernado por
ecuaciones diferenciales lineales de segundo orden, donde cada una de ellas es independiente
de las restantes. En este contexto la elección de las matrices K p y K v puede hacerse
específicamente como:
K p = diag {w12 , ... , wn2 } ,
K v = diag {2w1 , ... , 2 wn } .
Con esta elección, cada unión responde igual que un sistema lineal de segundo orden
críticamente amortiguado con ancho de banda wi [6].
El ancho de banda wi determina la velocidad de respuesta de la unión y en consecuencia, la
tasa de decaimiento exponencial de los errores q% (t ) y q%& (t ).
Para realizar las simulaciones correspondientes, se considera la ecuación general de un robot
manipulador de n grados de libertad (2.1.1) y el sistema de la figura 2.1. Donde también
q ∈ R n es el vector de posición, τ ∈ R n es el vector de torques de control en accionadores,
M (q) ∈ R nxn es la matríz de inercia, C (q, q& ) ∈ R nxn es la matríz centrífuga y de Coriolis,
G (q) ∈ R n es el vector de gravedad. Las condiciones iniciales para q, q& son asumidas igual a
cero. Las matrices de ganancia del controlador, simétricas definidas positivas se escogen
como:
⎡900 0 ⎤
Kp = ⎢
⎥,
⎣ 0 900 ⎦
⎡60 0 ⎤
Kv = ⎢
⎥.
⎣ 0 60 ⎦
37
Las trayectorias de posición articular deseadas son:
qdi =
π
2
(1 − e − wit ) + 0.1sen( w0i t ), wi = 5, w0i = 2π , i = 1, 2.
1.8
1.6
1.4
Posición [Rad]
1.2
1
0.8
q1
0.6
q
d1
0.4
0.2
0
0
2
4
6
Tiempo [Seg]
8
10
Figura 3.15 Posición de q1 respecto de qd 1
1.8
1.6
1.4
Posición [Rad]
1.2
1
0.8
q2
0.6
q
d2
0.4
0.2
0
0
2
4
6
Tiempo [Seg]
8
10
Figura 3.16 Posición de q2 respecto de qd 2
38
Como se puede apreciar en las figuras 3.15 y 3.16, los resultados obtenidos cumplen
totalmente con los objetivos de control. Ahora, si volvemos a realizar las simulaciones, pero
ahora aplicando una g al sistema y una ĝ al controlador con los siguientes datos:
g = 9.81
m
seg 2
gˆ = 18
m
,
seg 2
1.8
1.6
1.4
Posición [Rad]
1.2
1
0.8
q1
0.6
q
d1
0.4
0.2
0
0
2
4
6
Tiempo [Seg]
8
10
Figura 3.17 Posición de q1 respecto de qd 1 con una ĝ distinta de g.
1.8
1.6
1.4
Posición [Rad]
1.2
1
0.8
q2
0.6
q
d2
0.4
0.2
0
0
2
4
6
Tiempo [Seg]
8
10
Figura 3.18 Posición de q2 respecto de qd 2 con una ĝ distinta de g.
39
De acuerdo a los resultados obtenidos en las figuras, en forma general su desempeño es mejor
que el controlador PD+. Sin embargo, también demuestra una sensibilidad a las variaciones
de gravedad como la aplicada. Es importante señalar que para variaciones mayores, esta
diferencia es cada vez mayor; lo que demuestra que el controlador de movimiento Par
Calculado a pesar de ser más robusto que los controladores mostrados, su funcionamiento
también es afectado por las variaciones de gravedad aplicadas.
40
CAPÍTULO 4:
DISEÑO DE LOS CONTROLADORES PID.
Introducción
En éste capítulo se presenta el diseño de dos nuevos controladores no-lineales PID para
robots manipuladores, dando solución al problema de seguimiento de trayectorias. Usando
teoría de estabilidad de Lyapunov, se demostró que los controladores son estables en forma
global. Utilizando el modelo dinámico de un robot manipulador de dos grados de libertad, se
realizaron las pruebas numéricas que mostraron el desempeño de los controladores. Los
márgenes de error observados están dentro de los que tradicionalmente se han reportado en
otros controladores no lineales PID [1 - 5].
El control de robots manipuladores es un campo muy estudiado [12], siendo los controladores
PID los que comúnmente se han utilizado para el control de éstos. Aunque existen muchos
tipos de controladores [11 - 13], recientemente se han reportado trabajos en control no lineal
del tipo PID [1 - 5], donde estos controladores han probado estabilidad global o semi global.
Usando la propiedad de la dinámica de robots manipuladores mostrada en [15], se logró
desarrollar las dos propuestas, y el análisis de estabilidad global fue ratificado con la ayuda de
la teoría de estabilidad de Lyapunov [6, 7]. Experimentos numéricos realizados al modelo
dinámico de dos grados de libertad, demostraron el funcionamiento de los diseños obtenidos.
4.1 Descripción del Sistema
Se considera que el robot manipulador de n grados de libertad a controlar tiene la dinámica
de (2.1.1), donde nuevamente se tiene que q ∈ R n es el vector de posición, τ ∈ R n es el vector
de torques de control en accionadores, M (q ) ∈ R nxn es la matríz de inercia, C (q, q& ) ∈ R nxn es la
matríz centrífuga y de coriolis, y G (q) ∈ R n es el vector de gravedad.
41
Se considera el brazo mecánico de dos g.d.l. mostrado en la figura 2.1. Recordando las
características del sistema, el brazo manipulador está formado por dos eslabones rígidos de
longitudes l1 y l2 , y masas m1 y m2 respectivamente. Las uniones 1 y 2 son rotacionales. Los
desplazamientos del robot se llevarán a cabo en el plano vertical x-y. La distancia entre los
ejes de giro y los centros de masas se denota por lC1 y lC 2 respectivamente. Por ultimo,
I1 e I 2 expresan los momentos de inercia de los eslabones con respecto al eje que pasa a través
de sus centros de masa y que es perpendicular al plano x-y. Los g.d.l están asociados a los
ángulos q1 , que se mide desde la posición vertical hacia abajo y q2 , que se mide a partir de la
extensión del eslabón 1 hasta el eslabón 2, siendo ambos positivos en sentido contrario al
movimiento de las manecillas del reloj. El vector de posiciones q (t ) se define como:
q (t ) = [ q1 (t ) q2 (t )]T .
(4.1.1)
Anteriormente, en otros trabajos de control de robots manipuladores, la siguiente propiedad
ha sido muy utilizada [12]:
M ( q ) q&& + C ( q, q& ) q& + g ( q ) = Γ ( q, q& , q&&)Ω ,
(4.1.2)
donde Ω ∈ R n es un vector de constantes. La desventaja de ésta propiedad consiste en que la
matriz Γ necesita información de aceleración, lo cual no es conveniente para el diseño e
implementación de controladores. En [15], la siguiente propiedad es introducida:
G ( q ) = Γ ( q )Ω .
(4.1.3)
Dicha propiedad es simplemente la linealidad en términos de los parámetros dinámicos del
vector de pares gravitacionales. Esta parametrización no requiere información de velocidad y
aceleración, lo cual es provechoso e importante para el diseño de controladores adaptables
para compensar las variaciones de gravedad. Aplicando la propiedad (4.1.3) en (2.1.1), se
obtiene una representación alterna de la dinámica no lineal del robot manipulador de n g.d.l.:
M ( q )q&& + C (q, q& ) q& + Γ( q )Ω = τ .
(4.1.4)
42
4.2 Primera propuesta
Una vez estudiadas las distintas estrategias para el diseño de controladores, se propuso el
siguiente Controlador No Lineal PID:
donde
ˆ ,
τ = M (q)[q&&d + KV q%& + K p q% ] + C (q, q& )q& + Γ(q )Ω
(4.2.1)
ˆ& = ΓT (q) M −1 (q) K q&% ,
Ω
V
(4.2.2)
q% = qd − q es el error de posición, siendo qd (t ) la posición deseada y la cual es
asumida doblemente diferenciable. Además K P y KV son matrices simétricas y definidas
positivas y representan las ganancias del controlador a disposición para el diseño del mismo.
El problema de seguimiento de trayectorias consiste en acercar a cero, lo más posible, la
expresión del error q% , sin importar las condiciones iniciales del robot.
Proposición 1: El controlador (4.2.1) y (4.2.2) es un controlador No Lineal PID.
Demostración: Integrando respecto al tiempo (4.2.2) y sustituyendo en (4.2.1) se obtiene:
%& .
τ = M (q )[q&&d + KV q&% + K p q% ] + C ( q, q& ) q& + Γ ( q ) ∫ ΓT ( q ) M −1 ( q ) KV qdt
Reacomodando términos:
%& + M (q )q&&d + C (q, q& )q& ,
τ = M (q) K p q% + M (q ) KV q%& + Γ(q ) ∫ ΓT (q ) M −1 (q ) KV qdt
donde:
Parte Proporcional: M (q) K p q%
Parte Derivativa: M (q ) KV q&%
&%
Parte Integral: Γ(q ) ∫ ΓT (q ) M −1 (q ) KV qdt
Parte de Corrimiento No Lineal: M (q )q&&d + C (q, q& )q&
Teorema 1. El Controlador (4.2.1) y (4.2.2) resuelve el problema de seguimiento de
trayectorias en forma global; esto es:
lim q%
t →∞
es acotado.
Si KV = α I
y α ∈ R+ .
43
Demostración: Sustituyendo (4.2.1) en (4.1.4):
ˆ .
M (q )q&& + C (q, q& )q& + Γ(q )Ω = M (q )[q&&d + KV q%& + K p q% ] + C (q, q& )q& + Γ(q )Ω
(4.2.3)
Agrupando términos en (4.2.3) se obtiene:
ˆ − Ω] = 0 .
M (q)[q&&% + KV q%& + K p q% ] + Γ(q )[Ω
(4.2.4)
Definiendo
ˆ −Ω,
% =Ω
Ω
se obtiene:
%.
q&&% = − K p q% − KV q%& − M −1 (q)Γ(q)Ω
(4.2.5)
La ecuación anterior se puede representar como la dinámica del error, debido que está en
% . Considerando que Ω ∈ R n es un
función del error de posición q% y del error de estimación Ω
&% &ˆ
= Ω . Se propone la siguiente función de
vector de constantes, entonces se observa que Ω
Lyapunov:
% ) = 1 q&% T K q&% + 1 q% T K K q% + 1 Ω
% TΩ
% .
V (q% , q&% , Ω
V
P V
2
2
2
(4.2.6)
Donde dicha función es definida positiva y radialmente desacotada. Diferenciando a V con
respecto al tiempo [14] tenemos:
% ) = q&% T K q&&% + q% T K K q&% + Ω
% TΩ
%& .
V& (q% , q%& , Ω
V
P V
(4.2.7)
Usando (4.2.5) en (4.2.7) se obtiene:
% ) = q&% T K ⎡ − K q% − K q&% − M −1 (q )Γ(q )Ω
% ⎤ + q% T K K q&% + Ω
% TΩ
%&
V& (q% , q&% , Ω
V ⎣
p
V
P V
⎦
&%
% + q% T K K q%& + Ω
% TΩ
= −(q&% T KV K p q% )T − q%& T KV KV q%& − q%& T KV M −1 (q )Γ(q )Ω
P V
&%
% + q% T K K q%& + Ω
% TΩ
= −q% T K p KV q%& − q%& T KV KV q%& − q%& T KV M −1 (q)Γ(q)Ω
P V
&ˆ
% +Ω
% TΩ
= −q%& T KV KV q%& − q%& T KV M −1 (q )Γ(q )Ω
44
ˆ& T − q%& T K M −1 (q )Γ(q ) ⎤ Ω
% ) = − q%& T K K q%& + ⎡Ω
%
V& (q% , q%& , Ω
V V
V
⎢⎣
⎥⎦
&ˆ
Ω
= ΓT (q ) M −1 (q ) KV q&%
Por lo tanto resulta:
% ) = − q%& T K K q%& ≤ 0 .
V& ( q% , q%& , Ω
V V
(4.2.8)
Como se observa, la expresión es semi-definida negativa. De acuerdo a la teoría de estabilidad
de Lyapunov, se concluye estabilidad global. ◊
4.2.1 Resultados de Simulación
A continuación se presentarán los resultados numéricos realizados al modelo dinámico del
brazo manipulador de dos grados de libertad mostrado en la figura 2.1, y tiene los siguientes
datos:
⎡M
M (q) = ⎢ 11
⎣ M 21
M 12 ⎤
,
M 22 ⎥⎦
⎡ C (q, q& ) C12 (q, q& ) ⎤
C (q, q& ) = ⎢ 11
⎥,
⎣C21 (q, q& ) C22 (q, q& ) ⎦
⎡ g (q) ⎤
G (q ) = ⎢ 1 ⎥ ,
⎣ g 2 (q) ⎦
⎡τ ⎤
τ = ⎢ 1⎥,
⎣τ 2 ⎦
donde:
M 11 (q) = m1lC21 + m2l12 + m2lC2 2 + 2m2l1lC 2 cos(q2 ) + I1 + I 2 ,
M 12 (q) = m2lC2 2 + m2l1lC 2 cos(q2 ) + I 2 ,
M 21 (q ) = m2lC2 2 + m2l1lC 2 cos(q2 ) + I 2 ,
M 22 (q) = m2lC2 2 + I 2 ,
C11 (q, q& ) = − m2l1lC 2 sen(q2 )q&2 ,
C12 (q, q& ) = −m2l1lC 2 sen(q2 )[q&1 + q&2 ],
C21 (q, q& ) = m2l1lC 2 sen(q2 )q&1 ,
C22 (q, q& ) = 0,
g1 (q) = [m1lC1 + m2l1 ]gsen(q1 ) + m2 glC 2 sen(q1 + q2 ),
g 2 (q) = m2 glC 2 sen(q1 + q2 ).
Es fácil demostrar que (4.1.4) se satisface con:
45
⎡ sen(q1 ) sen(q1 + q2 ) ⎤
,
Γ( q ) = ⎢
sen(q1 + q2 ) ⎥⎦
⎣ 0
⎡(m l + m2l1 ) g ⎤
Ω = ⎢ 1 C1
⎥
m2lC 2 g
⎣
⎦
La lista de parámetros se muestra a continuación:
Tabla 1 Parámetros del sistema
Descripción
Longitud eslabón 1
Notación
l1
Valor
0.450
Unidades
m
Longitud eslabón 2
l2
0.450
m
Distancia al centro de masa (eslabón 1)
lC1
0.091
m
Distancia al centro de masa (eslabón 2)
lC 2
0.048
m
Masa eslabón 1
m1
23.902
Kg
Masa eslabón 2
m2
3.880
Kg
Inercia eslabón 1 respecto al centro de masa
I1
1.266
Kg m 2
Inercia eslabón 2 respecto al centro de masa
I2
G
0.093
Kg m 2
9.81
m / s2
Aceleración de gravedad
La programación del controlador (4.2.1) y (4.2.2) fue realizada usando:
qdi =
π
2
(1 − e − wit ) + 0.1sen( w0i t ), wi = 5, w0i = 2π , i = 1, 2.
El primer término involucra un corrimiento de las oscilaciones en π / 2 para cada
articulación, siendo wi la velocidad con la que se converge a dicha posición, mientras que el
segundo término introduce una señal oscilante a una velocidad w0i alrededor de la posición
deseada. Se propusieron las siguientes ganancias del controlador:
⎡1 0 ⎤
KV = α I = (300) ⎢
⎥,
⎣0 1 ⎦
⎡300 0 ⎤
KP = ⎢
⎥
⎣ 0 300 ⎦
46
El valor de estas ganancias puede variar de acuerdo a las condiciones de cada sistema. En este
caso, se tomaron estos valores de ganancia debido a que el controlador ya mostraba un buen
desempeño.
1.8
1.6
1.4
Posición [Rad]
1.2
1
0.8
0.6
0.4
q
1
0.2
q
d1
0
0
2
4
6
Tiempo [Seg]
8
10
Figura 4.1 Posición de q1 respecto de qd 1
1.8
1.6
1.4
Posición [Rad]
1.2
1
0.8
q2
0.6
q
d2
0.4
0.2
0
0
2
4
6
Tiempo [Seg]
8
10
Figura 4.2 Posición de q2 respecto de qd 2
Los resultados numéricos presentados en las figuras 4.1 y 4.2, presentan un ligero error en
q1 y q2 respecto de las posiciones deseadas. No obstante se encuentran dentro de los
47
márgenes reportados por otros controladores no lineales PID [3], además dicho error se puede
reducir, al incrementar las ganancias del controlador.
q&1
q&d 1
Figura 4.3 Velocidad de q&1 respecto de q&d 1
q&2
q&d 2
Figura 4.4 Velocidad de q&2 respecto de q&d 2
48
El seguimiento de las velocidades de q&1 y q&2 respecto a las velocidades deseadas q&d 1 y q&d 2 ,
se aprecia claramente en las figuras 4.3 y 4.4. Los resultados muestran como se cumple de
manera muy precisa dicho seguimiento para los dos casos presentados.
τ1
τ2
Figura 4.5 Entradas de control para un rango de 0 a 0.05 segundos.
τ1
τ2
Figura 4.6 Entradas de control para un rango de 0 a 10 segundos.
En cuanto a los valores de τ 1 y τ 2 mostrados en las figuras 4.5 y 4.6, podemos mencionar
que también se encuentran dentro de los rangos presentados por otros controladores no
49
lineales [3, 8], así como los errores observados en la figura 4.7 para q%1 y q%2 , lo que
demuestra el buen desempeño del controlador.
q%1
q%2
Figura 4.7 Errores de posición
4.3 Segunda propuesta
Considerando lo estudiado en el controlador de la primera propuesta, se analizaron las
distintas posibilidades y se propuso otra ley de control muy similar a la anterior. Los
resultados fueron más satisfactorios como se verá mas adelante, y el controlador quedó de la
forma siguiente:
τ = M (q)[q&&d + KV q&% + K p q% ] + C (q, q& )q& + Γ(q) gˆ ,
(4.3.1)
g&ˆ = ΓT (q) M −1 (q) KV q&% ,
(4.3.2)
donde nuevamente q% = qd − q es el error de posición, siendo qd (t ) la posición deseada y con
el mismo valor del caso anterior. Se tomaron los mismos valores de ganancias de K P y KV
para tener las mismas condiciones.
50
Proposición 2: El controlador (4.3.1) y (4.3.2) es un controlador No Lineal PID.
Demostración: Integrando respecto al tiempo (4.3.2) y sustituyendo en (4.3.1) se obtiene:
&% .
τ = M (q )[q&&d + KV q&% + K p q% ] + C (q, q& )q& + Γ (q ) ∫ ΓT (q ) M −1 (q ) KV qdt
Reacomodando términos:
&% + M (q )q&& + C (q, q& )q& ,
τ = M (q) K p q% + M (q ) KV q&% + Γ(q ) ∫ ΓT (q ) M −1 (q ) KV qdt
d
donde:
Parte Proporcional: M (q) K p q%
Parte Derivativa: M (q ) KV q&%
&%
Parte Integral: Γ(q ) ∫ ΓT (q ) M −1 (q ) KV qdt
Parte de Corrimiento No Lineal: M (q)q&&d + C (q, q& )q&
Teorema 2. El controlador (4.3.1) y (4.3.2) resuelve el problema de seguimiento de
trayectorias en forma global; esto es:
lim q% es acotado.
t →∞
Si KV = α I
y α ∈ R+ .
Demostración: Sustituyendo (4.3.1) en (4.1.4):
M (q)q&& + C (q, q& )q& + Γ(q) g = M (q)[q&&d + KV q%& + K p q% ] + C (q, q& )q& + Γ(q) gˆ .
(4.3.3)
Agrupando términos en (4.3.3) se obtiene:
M (q)[q&&% + KV q%& + K p q% ] + Γ(q)[ gˆ − g ] = 0
Definiendo
(4.3.4)
g% = gˆ − g
Por lo tanto, despejando se obtiene:
51
q&&% = − K p q% − KV q%& − M −1 (q)Γ(q) g% ,
(4.3.5)
La ecuación anterior se puede representar como la dinámica del error, debido que está en
función del error de posición q% y del error de estimación g% . Considerando que g ∈ R es un
valor de gravedad constante, entonces se observa que g&% = g&ˆ . Se propuso la siguiente función
de Lyapunov:
1
1
1
V ( q% , q&% , g% ) = q%& T KV q%& + q% T K P KV q% + g% T g% ,
2
2
2
(4.3.6)
donde dicha función es definida positiva y radialmente desacotada. Diferenciando a V con
respecto al tiempo [14] tenemos:
V& ( q% , q%& , g% ) = q%& T KV q&&% + q% T K P KV q&% + g% T g&%
(4.3.7)
Sustituyendo (4.3.5) en (4.3.7), se obtiene:
V& (q% , q%& , g% ) = q&% T KV ⎡⎣ − K p q% − KV q&% − M −1 (q)Γ(q ) g% ⎤⎦ + q% T K P KV q&% + g% T g&%
= −(q&% T KV K p q% )T − q&% T KV KV q&% − q&% T KV M −1 (q )Γ(q ) g% + q% T K P KV q&% + g% T g&%
= −q% T K p KV q%& − q%& T KV KV q%& − q%& T KV M −1 (q)Γ(q ) g% + q% T K P KV q&% + g% T g&%
= −q&% T KV KV q&% − q&% T KV M −1 (q)Γ(q) g% + g% T g&ˆ
V& (q% , q&% , g% ) = − q&% T KV KV q&% + ⎡⎣ g&ˆ T − q&% T KV M −1 (q)Γ(q ) ⎤⎦ g%
g&ˆ = ΓT (q) M −1 (q) KV q&%
Y finalmente resulta:
V& (q% , q%& , g% ) = − q%& T KV KV q%& ≤ 0
(4.3.8)
Por lo anterior, se observa que es semi-definida negativa. De acuerdo a la teoría de Lyapunov,
se concluye estabilidad global. ◊
52
4.3.1 Resultados de simulación
A continuación se presentarán los resultados numéricos realizados al modelo dinámico del
brazo manipulador de dos grados de libertad mostrado en la figura 2.1, se consideraron los
mismos datos mostrados en el caso anterior:
⎡M
M (q) = ⎢ 11
⎣ M 21
M 12 ⎤
,
M 22 ⎥⎦
⎡ C (q, q& ) C12 (q, q& ) ⎤
C (q, q& ) = ⎢ 11
⎥,
⎣C21 (q, q& ) C22 (q, q& ) ⎦
⎡ g (q) ⎤
G (q ) = ⎢ 1 ⎥ ,
⎣ g 2 (q) ⎦
⎡τ ⎤
τ = ⎢ 1⎥,
⎣τ 2 ⎦
solo con la modificación de que ĝ ∈ R es el valor adaptable y:
⎡(m l + m2l1 ) sen(q1 ) + m2lC 2 sen(q1 + q2 ) ⎤
Γ( q ) = ⎢ 1 C1
⎥.
m2lC 2 sen(q1 + q2 )
⎣
⎦
La programación del controlador (4.3.1) y (4.3.2) se realizó usando los mismos valores de
ganancias de K P y KV , así como la misma función deseada del caso anterior:
qdi =
π
2
(1 − e − wit ) + 0.1sen( w0i t ), wi = 5, w0i = 2π , i = 1, 2.
1.8
1.6
1.4
Posición [Rad]
1.2
1
0.8
q1
0.6
q
d1
0.4
0.2
0
0
2
4
6
Tiempo [Seg]
8
10
Figura 4.8 Posición de q1 respecto de qd 1
53
1.8
1.6
1.4
Posición [Rad]
1.2
1
0.8
q2
0.6
q
d2
0.4
0.2
0
0
2
4
6
Tiempo [Seg]
8
10
Figura 4.9 Posición de q2 respecto de qd 2
Como lo muestran los resultados numéricos presentados en las figuras 4.8 y 4.9, presentan un
mejor seguimiento que los obtenidos en la primera propuesta. Al igual que en el primer
diseño, esa diferencia inicial en el seguimiento de las trayectorias se puede reducir al
incrementar las ganancias del controlador.
q&1
q&d 1
Figura 4.10 Velocidad de q&1 respecto de q&d 1
54
q&2
q&d 2
Figura 4.11 Velocidad de q&2 respecto de q&d 2
τ1
τ2
Figura 4.12 Entradas de control para un rango de 0 a 0.05 segundos
Como se puede observar en las figuras 4.8 – 4.14, el funcionamiento del segundo controlador
fue mucho mejor que el primer propuesto, además la descripción de su diseño fue más
sencilla que el primero. De lo anterior, podemos mencionar que se logró mejorar la primera
propuesta y así presentar otra posible forma de obtener otro controlador utilizando la
propiedad mencionada.
55
τ1
τ2
Figura 4.13 Entradas de control para un rango de 0 a 10 segundos
q%1
q%2
Figura 4.14 Errores de posición
Una vez comprobado el mejor funcionamiento del segundo controlador, se procede a someter
dicho controlador a una variación de varios de sus parámetros del sistema como se describirán
en la tabla 2. Lo anterior es con el fin de observar la respuesta de este sistema de control ante
variaciones no contempladas en el diseño pero que prueban el grado de robustez y así
presentar unos resultados más sólidos que ratifiquen el buen desempeño de esta última
propuesta.
56
A continuación, en la tabla 2 se vuelve a presentar la lista de los parámetros del sistema, pero
ahora con las variaciones establecidas para la realización de las simulaciones numéricas.
Tabla 2 Valores de los parámetros utilizados en el controlador
Descripción
Longitud eslabón 1
Notación
l1
Valor
1
Unidades
m
Longitud eslabón 2
l2
1
m
Distancia al centro de masa (eslabón 1)
lC1
0.11
m
Distancia al centro de masa (eslabón 2)
lC 2
0.065
m
Masa eslabón 1
m1
28
Kg
Masa eslabón 2
m2
8
Kg
Inercia eslabón 1 respecto al centro de masa
I1
1.266
Kg m 2
Inercia eslabón 2 respecto al centro de masa
I2
0.093
Kg m 2
1.8
1.6
1.4
Posición [Rad]
1.2
1
0.8
q1
0.6
qd1
0.4
0.2
0
0
2
4
6
Tiempo [Seg]
8
10
Figura 4.15 Posición de q1 respecto de qd 1
De acuerdo a los resultados numéricos mostrados en las figuras 4.15 y 4.16, se aprecia
claramente como el sistema de control se ve afectado por tales variaciones paramétricas.
También se observa que después de un transitorio se cumple el seguimiento de las trayectorias
deseadas, cumpliendo con los objetivos esperados. Al igual como se ha venido expresando,
57
esas diferencias en los resultados se pueden reducir al incrementar las ganancias del
controlador.
1.8
1.6
1.4
Posición [Rad]
1.2
1
0.8
q2
0.6
qd2
0.4
0.2
0
0
2
4
6
Tiempo [Seg]
8
10
Figura 4.16 Posición de q2 respecto de qd 2
q&1
q&d 1
Figura 4.17 Velocidad de q&1 respecto de q&d 1
58
q&2
q&d 2
Figura 4.18 Velocidad de q&2 respecto de q&d 2
τ1
τ2
Figura 4.19 Entradas de control para un rango de 0 a 0.005 segundos
Aunque en las figuras 4.19 y 4.20, se obtiene un aumento considerable de las entradas de
control, es una consecuencia esperada considerando las variaciones aplicadas. En general
podemos mencionar que los resultados obtenidos en las gráficas 4.16 a la 4.21, los objetivos
de control se están cumpliendo satisfactoriamente mostrando una robustez ante variaciones
paramétricas.
59
τ1
τ2
Figura 4.20 Entradas de control para un rango de 0 a 0.005 segundos
q%1
q%2
Figura 4.21 Errores de posición
En este capítulo se mostró el diseño de dos nuevos controladores no lineales PID para resolver
el problema de seguimiento de trayectorias para robots manipuladores. Los experimentos
numéricos obtenidos ilustran el buen desempeño de los dos controladores. La originalidad de
éstos, radicó en la utilización de la propiedad mostrada en (4.1.3), la cual fue útil para la
derivación de los dos controladores PID propuestos.
60
APÉNDICE A
PROPIEDADES
En éste apéndice se expondrán algunas de las propiedades más importantes del modelo
dinámico para robots de n g.d.l. [6] caracterizado mediante la ecuación (2.1.1). Al realizar
estudios con un determinado sistema, resulta de gran utilidad el conocimiento de propiedades
que nos faciliten y optimicen el trabajo en el desarrollo de los sistemas de control. Es clara la
complejidad de la ecuación (2.1.1) que caracteriza el funcionamiento de los robots
manipuladores, por lo que constituye una herramienta de gran valor el identificar alguna
propiedad adecuada para el diseño de controladores.
En el capítulo 2 se describieron las propiedades utilizadas para el desarrollo de los
controladores propuestos. A continuación se presentarán algunas otras de las bondades que
brinda dicho modelo dinámico y cada una de ellas será tratada independientemente en los
siguientes epígrafes.
A.1 Matriz de Inercia M(q)
La matriz de inercia M(q) juega un papel importante tanto en el modelado dinámico como
en el diseño de controladores para robots. En el primer caso, la matriz de inercia se encuentra
íntimamente relacionada con la energía cinética:
K=
1 T
q& M (q )q& ,
2
mientras que en el segundo, se emplean algunas de sus propiedades para el estudio de
estabilidad de sistemas de control de robots. Entre dichas propiedades se encuentran las
enunciadas a continuación.
61
La matriz de inercia M(q) es una matriz simétrica definida positiva de n x n cuyos elementos
son funciones solamente de q. La matriz de inercia M(q) satisface las siguientes propiedades:
1. Existe una constante real positiva α tal que:
M (q) ≥ α I
∀q ∈ R n
donde I denota la matriz identidad de dimensión n x n. La matriz M (q ) −1 existe y es
definida positiva.
2. Para el caso de robots provistos únicamente de articulaciones rotacionales, existe una
constante β > 0 tal que:
λMax {M (q )} ≤ β
∀q ∈ R n .
Una manera sencilla de calcular β es la dada por:
β ≥ n ⎡ max
⎢⎣
i , j ,q
M ij (q ) ⎤
⎥⎦
donde M ij ( q ) denota al ij-ésimo elemento de la matriz M(q).
A.2 Matriz centrífuga y de Coriolis C (q, q& )
La importancia de las propiedades de la matriz centrífuga y de Coriolis C ( q, q& ) se hace
patente en el estudio de estabilidad de los sistemas de control de robots. Las principales
propiedades de dicha matriz se citan a continuación.
La matriz de fuerzas centrífugas y de Coriolis C ( q, q& ) es una matriz de n x n cuyos
elementos son funciones de q y q&. Además C ( q, q& ) satisface las siguientes propiedades:
62
1. La matriz C ( q, q& ) puede no ser única, pero el vector C ( q, q& ) q& es único.
2. C (q, 0) = 0 para todo vector q ∈ R n .
3. El vector C ( q, x ) y puede expresarse en la forma:
⎡ xT C1 (q ) y ⎤
⎢ T
⎥
x C2 ( q ) y ⎥
⎢
C ( q, x ) y =
⎢
⎥
M
⎢ T
⎥
⎢⎣ x Cn (q ) y ⎥⎦
(A.1)
donde Ck (q) son matrices simétricas de dimensión n para todo k = 1,2, … , n. De hecho, el
ij-ésimo elemento Ckij ( q ) de la matriz Ck (q) corresponde al símbolo de Christoffel
c jik (q ) [6].
4. Para el caso de robots provistos únicamente de articulaciones rotacionales, existe una
constante kC1 > 0 tal que:
C (q, x) y ≤ kC1 x y
para todo q, x, y ∈ R n .
A.3 Vector de gravedad G(q)
El vector de pares gravitacionales G(q) está presente en robots que no han sido diseñados,
desde un punto de vista mecánico, con compensación de pares de gravedad, por ejemplo, sin
contrapesos o resortes, o para robots destinados a desplazarse fuera del plano horizontal.
Algunas de sus propiedades más importantes se citan a continuación.
1. Para el caso de robots provistos únicamente de articulaciones rotacionales, el vector G(q) es
Lipschitz, esto es, existe una constante kG > 0 tal que:
63
G ( x) − G ( y ) ≤ kG x − y
para todo x, y ∈ R n . Una forma sencilla de calcular kG es como:
⎡
∂Gi (q ) ⎤
kG ≥ n ⎢ max
⎥.
i, j ,q
∂qi ⎦
⎣
Además, kG satisface:
kG ≥
⎧ ∂G (q) ⎫
∂G (q )
≥ λMax ⎨
⎬.
∂q
⎩ ∂q ⎭
2. Para el caso de robots provistos únicamente de articulaciones rotacionales, existe una
constante k’ tal que:
G (q) ≤ k’ para todo q ∈ R n .
64
CONCLUSIONES
En la presente tesis, se diseñaron dos controladores no lineales PID adaptables de
compensación de gravedad para robots manipuladores usando teoría de estabilidad de
Lyapunov. En la simulación de los controladores ya existentes (los mostrados en el capítulo
3), se apreció claramente cómo al aplicar las variaciones del valor de la gravedad en los
controladores de posición, ver figuras 3.4, 3.5, 3.8 y 3.9, se ven seriamente afectados. En el
caso de los controladores de velocidad, en la medida que varíe la gravedad, en esa misma
medida se presenta la diferencia entre la posición deseada y la final, ver figuras 3.13, 3.14,
3.17 y 3.18. Con esto se demostró que los sistemas de control anteriores son sensibles a las
variaciones de sus parámetros, en este caso, al valor de la gravedad.
De nuestros controladores propuestos, en el primer diseño se observó como se cumplen los
objetivos de control, ver figuras de la 4.1 a la 4.7. El seguimiento de la trayectoria se cumple
y los resultados obtenidos están dentro de los reportados en otros controladores no lineales
PID [3], [8]. Además claramente se aprecia un mejor desempeño en relación a los mostrados
en el capítulo 3 de este trabajo.
En el segundo controlador propuesto, más que un análisis elaborado de su ley de control, fue
la inspección de su constitución y funcionamiento lo que permitió obtener mejores resultados
que el primer diseño propuesto. Es decir, al observar que los parámetros del sistema son
iguales a los del controlador, se optó por reducir el parámetro Ω a únicamente a un valor
estimado ĝ , lo que por consecuencia redujo la estructura del controlador y su desempeño se
optimizó logrando con esto, mejores resultados y así superar la primera proposición. Lo
anterior se puede constatar analizando las figuras de la 4.8 a la 4.14.
Otro resultado importante del trabajo, fue perturbar el sistema de control en el segundo
diseño. Se modificaron los parámetros del controlador, ver tabla 2, obteniendo toda una serie
de resultados, ver figuras de la 4.15 a la 4.21, donde efectivamente se muestran como el
funcionamiento es afectado. No obstante, a pesar de los incrementos en los torques de entrada,
65
resultados mostrados en las figuras 4.19 y 4.20, se entiende este fenómeno cómo
consecuencia de las perturbaciones aplicadas. En resumen, podemos concluir que el segundo
controlador presentó un buen desempeño, mostrando robustez y estabilidad ante variaciones
de los parámetros del sistema.
En este trabajo, como ya se mencionó, se planteó el diseño de dos nuevos controladores no
lineales PID para resolver el problema de seguimiento de trayectorias. Tales diseños probaron
tener estabilidad global en el sentido de Lyapunov, como los reportados en [1 - 5]. El uso de
la propiedad de la dinámica de robots manipuladores mostrada en [15], que se basa en la
característica que tiene el modelo del robot de linealidad de los parámetros dinámicos, fue la
que nos permitió definitivamente la obtención de los controladores adaptables de
compensación de gravedad propuestos.
66
BIBLIOGRAFÍA y REFERENCIAS
[1]
Acho L., Moreno J., “A class of adaptive PID control design for tracking control of
robot manipulators”, Congreso Latinoamericano de Control Automático CLCA,
Guadalajara, México, 2002.
[2]
Aguilar L., Acho L., Guerra R., “PID robust control for robot manipulators with
parametric uncertainty”, Proccedings of the 6th IASTED International Conference
Intelligent Systems and Control, Hawaii, USA, Aug. 2004.
[3]
Alvarez J., Cervantes I., Kelly R., “PID regulation of robot manipulators: stability and
performance”, Systems and Control Letters, 41, pp. 73-83, Apr. 2000.
[4]
Alvarez J., Kelly R., Cervantes I., “Semiglobal stability of saturated linear PID control
for robot manipulators”, Automatica, 39, pp. 989-995, Jan. 2003.
[5]
Gorez R., “Globally stable PID like control of mechanical systems”, Systems and
Control Letter, 38, pp. 61-72, May 1999.
[6]
Kelly R., Santibáñez V., Control de Movimiento de Robots Manipuladores, Pearson
Prentice Hall, 2003.
[7]
Khalil Hassan K., Nonlinear Systems, Third Edition, Prentice Hall, U.S.A. 2002.
[8]
Koo K., Kim J., “Robust Control of Robot Manipulators with Parametric Uncertainty”,
IEEE Transactions on Automatic Control, 39, pp. 1230-1233, June 1994.
[9]
Nijmeijer H., Berghuis H., “Global regulation of robots using only position
measurements”, Systems and Control Letters, 21, pp. 289-293, Feb 1993.
[10]
Ogata Katsuhiko, Ingeniería de Control Moderna, Tercera Edición, Prentice Hall
Hispanoamericana, 1998.
[11]
Orlov Y., Alvarez J., Acho L., Aguilar L., “Global position regulation of friction
manipulators via switched chattering control”, International Journal of Control, Vol.
76, No. 14, pp. 1146-1452, May. 2003.
[12]
Sage H., Mathelin M., Ostertag E., “Robust control of
robot manipulators: a
survey”,Int. J. Control, Vol. 72, No. 16, pp. 1498-1522, May. 1999.
[13]
Slotine Jean J., Li Weiping, “Adaptive Manipulator Control: A Case Study”, IEEE
Transactioons on Automatic Control, Vol. 33, No. 11, November 1988.
67
[14]
Spurgeon S., Edwards C., Sliding Mode Control: Theory and Applications, Taylor and
Francis, London 1998.
[15]
Tayebi A., “Adaptive iterative learning control for robot manipulators”, Automatica,
40, pp. 1195-1203, Jan 2004.
68
Descargar