You are on page 1of 135

UNIVERSIDAD AUTNOMA DEL

ESTADO DE HIDALGO

INSTITUTO DE CIENCIAS BASICAS E
INGENIERIA



CENTRO DE INVESTIGACION EN TECNOLOGIAS DE
INFORMACION Y SISTEMAS



LABORATORIO DE ELECTRONICA Y CONTROL



CONTROL ADAPTABLE PARA ROBOTS MANIPULADORES
(TESIS DE LICENCIATURA EN SISTEMAS
COMPUTACIONALES)



PDLC. VCTOR CALLEJ AS GUERRERO



DIRECTOR DE TESIS:
DR. OMAR ARTURO DOMNGUEZ RAMREZ



PACHUCA DE SOTO, HIDALGO, MARZO DE 2006


A Victor, Catalina e Israel
con cari no, admiraci on y respeto
V.C.G.
Agradecimientos
Gracias a mis padres Victor Callejas Hernandez y Catalina Guerrero Mu noz por
su gran apoyo y comprensi on durante este tiempo que llevamos de lucha constante
por un ideal que empezo hace diez a nos, por su considerable comprensi on todo este
tiempo que hemos estado separados y su paciencia para el logro de este gran objetivo
de mi vida profesional.
Gracias a mi hermano Israel Callejas Guerrero que de alguna manera se ha hecho
presente en el desarrollo de este documento y con un ideal que hemos compartido
hace tiempo, de ser profesionistas.
Gracias al Doctor Omar Arturo Domnguez Ramrez por compartir su gran conocimien-
to en la direcci on de este trabajo de tess, as como la paciencia otorgada todo este
tiempo para la culminaci on del mismo. Agradezco todo su apoyo profesional y hu-
mano ya que no solo ense no control de robots sino tambien ser perseverantes en lo
que hacemos y sobre todo ser humildes.
Gracias a mis compa neros del CITIS por compartir sus conocimientos, experien-
cias y el compa nerismo en el cual nos hemos conocido.
Gracias a mis tos Amalia Callejas Hernandez y Simon Perez Daz por su apoyo
incondicional durante todos estos a nos que me han acompa nado desde el inicio has-
ta la culminaci on de este objetivo y por todas las atenciones que han tenido conmigo.
Gracias a Comercial Mexicana y las personas que en su tiempo creyer on en mi,
por darme la oportunidad de laborar y estudiar a la vez, tambien agradezco el
conocimiento adquirido en la empresa as como la experiencia profesional.
Gracias a todas las personas que desde mi llegada a esta ciudad Pachuca me brindar on
su apoyo, desde la familia L opez que yo los recuerdo como los camioneros, el se nor
Juan Luis G omez L opez por su apoyo en el palmar y su conocimiento compartido,
mis compa neros de la Universidad Juan Carlos Lozano Reyes Juano, Omar Cre-
spo, Isabel, Patricia que hicimos equipo en clases y por olvidarme de alguno a todas
las personas que hicier on posible mi estancia en este lugar y terminar una carrera
profesional.
3
Resumen
En la contrucci on de un robot se requiere conocer la cinem atica ( geometra del movimiento del
robot), din amica (pares de torsi on y de las fuerzas de aceleraci on y desaceleraci on) a partir de
ellos se determina el control ( encargado de regular el movimiento de los elementos del robot). El
trabajo comprende una metodologa explcita para la obtenci on de la cinem atica, din amica y con
base a la parametrizaci on lineal de la din amica, obtener el control adaptable que es uno de los
mejores controles no lineales ya que hace identicaci on en lnea de las caractersticas din amicas
para retroalimentarlas va el torque.
La teora de control aplicada a robots manipuladores ha tenido un avance impresionante en la
ultima decada, sin embargo muchos de los controladores empleados consideran el conocimiento
de los par ametros din amicos del robot situaci on que complica el dise no y sintonizaci on del con-
trolador. En este trabajo se presenta una propuesta para controlar en regulaci on y seguimiento de
trayectorias, a un robot manipulador de dos grados de libertad utilizando tecnicas de adaptaci on
e identicaci on en lnea. Para ello se obtienen los modelos cinem atico y din amico del manipulador
y se efect uan estudios en simulaci on digital.

Indice general
1. Introducci on 6
1.1. Historia del robot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.2. Introducci on al control adaptable . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.3. Justicaci on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.4. Objetivo general . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.5. Objetivos especcos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.6. Organizaci on del trabajo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2. Modelo cinematico directo e inverso de posici on y cinematica diferencial de
un robot de 2 grados de libertad 12
2.1. Introducci on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.2. Descripciones: posici on y rotaci on . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2.1. Posici on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2.2. Rotaci on en el sistema cartesiano . . . . . . . . . . . . . . . . . . . . . . . 15
2.3. Matriz de transformaci on homogenea . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.4. Par ametros de Denavit-Hartenbergh . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.5. Algoritmo de Denavit-Hartenbergh . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.6. Obtenci on del modelo cinem atico directo de un robot . . . . . . . . . . . . . . . . 24
2.6.1. Cadena cinem atica y marcos ortonormales . . . . . . . . . . . . . . . . . . 24
2.6.2. Par ametros Denavit-Hartenbergh . . . . . . . . . . . . . . . . . . . . . . . 25
2.6.3. Matrices elementales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.6.4. Matriz de trasformaci on homogenea . . . . . . . . . . . . . . . . . . . . . . 26
2.7. Modelo cinem atico directo de posici on (MCDP) . . . . . . . . . . . . . . . . . . . 27
2.8. Modelo cinem atico inverso de posici on (MCIP) . . . . . . . . . . . . . . . . . . . . 30
2.9. Modelo cinem atico directo de velocidad (MCDV) . . . . . . . . . . . . . . . . . . 33
2.10. Modelo cinem atico inverso de velocidad (MCIV) . . . . . . . . . . . . . . . . . . . 35
2.11. Modelo cinem atico directo de aceleraci on (MCDA) . . . . . . . . . . . . . . . . . 37
2.12. Modelo cinem atico inverso de aceleraci on (MCIA) . . . . . . . . . . . . . . . . . . 39
2.13. Simulaci on digital en matlab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
2.13.1. Simulaci on digital en matlab del MCDP . . . . . . . . . . . . . . . . . . . 40
2.13.2. Simulaci on digital en matlab del MCIP . . . . . . . . . . . . . . . . . . . 41
2.14. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
1
3. Modelo dinamico de un robot planar de 2 grados de libertad 45
3.1. Introducci on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
3.2. Modelo din amico y propiedades . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
3.3. Simulaci on digital en matlab para validaci on del modelo din amico . . . . . . . . . 58
3.4. Simulaci on digital en matlab para validaci on de las propiedades din amicas . . . . 60
3.5. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
4. Control adaptable del robot de 2 grados de libertad 63
4.1. Introducci on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
4.1.1. Control adaptable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
4.2. Principales esquemas de adaptaci on. . . . . . . . . . . . . . . . . . . . . . . . . . 64
4.2.1. Modelo de referencia del control adaptable MRCA . . . . . . . . . . . . . 65
4.3. Parametrizaci on lineal del modelo din amico . . . . . . . . . . . . . . . . . . . . . 67
4.4. Comprobaci on del regresor y del vector de par ametros . . . . . . . . . . . . . . . . 69
4.5. Control adaptable pasivo robusto . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
4.6. Mecanismos para ajustar los par ametros en el MRCA. . . . . . . . . . . . . . . . . 73
4.7. Prueba de estabilidad con el segundo metodo de Lyapunov . . . . . . . . . . . . . 73
4.7.1. Prueba de estabilidad del control adaptable . . . . . . . . . . . . . . . . . 75
4.8. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
5. Simulaciones del control adaptable con seguimiento de trayectorias 77
5.1. Introducci on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
5.2. Referencias para el seguimiento de trayectorias . . . . . . . . . . . . . . . . . . . . 77
5.3. Simulaciones en el espacio artcular y operacional . . . . . . . . . . . . . . . . . . 80
5.3.1. Simulaciones en el trazo de una rosa de tres petalos . . . . . . . . . . . . . 80
5.3.2. Simulaciones en el trazo de una circunferencia . . . . . . . . . . . . . . . . 83
5.4. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
6. Conclusiones y perspectivas 87
6.0.1. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
6.0.2. Perpectivas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
7. Apendice de programas, glosario, anexos y lista de abreviaturas 89
7.1. Introducci on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
7.1.1. Validaci on del modelo cinem atico . . . . . . . . . . . . . . . . . . . . . . . 90
7.1.2. Validaci on del modelo din amico y sus propiedades del robot 2 GDL (grados
de libertad). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
7.1.3. C odigo fuente din amica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
7.1.4. C odigo script din amica1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
7.1.5. Validaci on del control adaptable con seguimiento de una rosa de tres petalos 98
7.1.6. C odigo fuente adaptable . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
7.1.7. C odigo script adaptable1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
7.1.8. Validaci on del control adaptable con seguimiento de una circunferencia . . 110
7.1.9. C odigo fuente adaptable . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
2
7.1.10. C odigo script adaptable1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
7.2. Glosario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
7.3. Anexos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
7.4. Lista de abreviaturas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
Bibliografa 130
3

Indice de guras
2.1. Mecanismo de eslabones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2. Sistema cartesiano basado en la mano derecha . . . . . . . . . . . . . . . . . . . . . . 14
2.3. Localizando un objeto en posici on y orientaci on . . . . . . . . . . . . . . . . . . . . . 15
2.4. Rotaci on de un cuerpo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.5. Rotaci on de un cuerpo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.6. Ejemplos de rotaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.7. Ejemplo de rotaci on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.8. Asignaci on de un marco de referencia a un eslab on . . . . . . . . . . . . . . . . . . . 23
2.9. Marcos ortonormales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.10. Par ametros de Denavit-Hartenbergh . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.11. Representaci on del MCDP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.12. Representaci on del MCIP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.13. Sentido que adoptan los

Angulos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.14. Simulaci on de la coordenada X y X2. . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.15. Simulaci on de la coordenada Y y Y2. . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.16. Simulaci on del espacio de trabajo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.17. Simulaci on del comportamiento de los angulos. . . . . . . . . . . . . . . . . . . . . . 43
3.1. Representaci on gr aca de la din amica . . . . . . . . . . . . . . . . . . . . . . . . . . 46
3.2. Energia cinetica 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
3.3. Energia potencial 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
3.4. Energia cinetica 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
3.5. Energia potencial 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.6. Caida libre del robot (Torque =0) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
3.7. Simulaci on del comportamiento de
1
. . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3.8. Simulaci on del comportamiento de
2
. . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3.9. Simulaci on del comportamiento de

1
. . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3.10. Simulaci on del comportamiento de

2
. . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3.11. Propiedad denida positiva X
T
M() X > 0 . . . . . . . . . . . . . . . . . . . . . . . 61
3.12. Propiedad matriz simetrica M() = M()
T
. . . . . . . . . . . . . . . . . . . . . . . . 61
3.13. Propiedad antisimetrica X
T
_

M() 2
_
C
_
,

___
X 0 . . . . . . . . . . . . . . . 61
4.1. Modelo de referencia del control adaptable. [15] . . . . . . . . . . . . . . . . . . . . . 65
4.2. Validaci on del regresor y el vector de par ametros . . . . . . . . . . . . . . . . . . . . 69
4
5.1. Condici on inicial de posici on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
5.2. Condici on inicial de posici on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
5.3. Coordenada generalizada
1
y
d1
(real y deseada) . . . . . . . . . . . . . . . . . . . . 80
5.4. Coordenada generalizada
2
y
d2
(real y deseada) . . . . . . . . . . . . . . . . . . . . 80
5.5. Coordenada operacional X y Px (real y deseada) . . . . . . . . . . . . . . . . . . . . 80
5.6. Coordenada operacional Y y Py (real y deseada) . . . . . . . . . . . . . . . . . . . . 80
5.7. Espacio operacional (X vs Y) y (px vs py) (real y deseada) . . . . . . . . . . . . . . . 81
5.8. Error artcular 1 (eq1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
5.9. Error articular 2 (eq2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
5.10. Error operacional Ex=px-X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
5.11. Error operacional Ey=py-Y . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
5.12. Vector de par ametros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
5.13. Vector de par ametros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
5.14. Errores articulares y operacionales . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
5.15. Coordenada generalizada
1
y
d1
(real y deseada) . . . . . . . . . . . . . . . . . . . . 83
5.16. Coordenada generalizada
2
y
d2
(real y deseada) . . . . . . . . . . . . . . . . . . . . 83
5.17. Coordenada operacional X y Px (real y deseada) . . . . . . . . . . . . . . . . . . . . 83
5.18. Coordenada operacional Y y Py (real y deseada) . . . . . . . . . . . . . . . . . . . . 83
5.19. Espacio operacional (X vs Y) y (px vs py) (real y deseada) . . . . . . . . . . . . . . . 84
5.20. Error artcular 1 (eq1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
5.21. Error artcular 2 (eq2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
5.22. Error operacional Ex=px-X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
5.23. Error operacional Ey=py-Y . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
5.24. Vector de par ametros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
5.25. Vector de par ametros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
5.26. Errores articulares y operacionales . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
7.1. Representaci on de atan2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
5
Captulo 1
Introducci on
Por siglos el hombre se ha dado a la tarea de construir m aquinas tratando de conseguir la forma
de utilizarlas como una herramienta m as de trabajo, siendo est as capaces de imitar los movimien-
tos y acciones que un ser humano realizara en su forma habitual, con la intenci on nalmente de
facilitar el desempe no de sus trabajos as como la necesidad cada vez m as presionante de aumen-
tar la productividad y conseguir productos acabados de una calidad uniforme, est an haciendo
que la industria gire cada vez m as hacia una automatizaci on basada en una computadora. En
el momento actual, la mayora de las tareas de fabricaci on automatizadas se realizan mediante
m aquinas de uso especial dise nadas para realizar funciones predeterminadas en un proceso de
manufactura. La exibilidad y generalmente el alto costo de estas m aquinas, a menudo llamados
sistemas de automatizaci on duros, han llevado a un interes creciente en el uso de robots capaces
de efectuar una variedad de funciones de fabricaci on en un entorno de trabajo m as exible y a
menor costo de producci on. [1]
Una contribuci on importante de este trabajo es iniciar a los lectores interesados en el ambito
de la rob otica, proporcionando una metodologa simple y sistem atica, difcilmente localizable en
la literatura de rob otica, mediante procedimientos matem aticos, adem as de realizar la validaci on
en simulaci on digital. La simulaci on digital es desarrollada en Matlab y el impacto m as relevante
es en el seguimiento de trayectorias planicadas situaci on importante en la planicaci on de tareas
en un proceso industrial.
1.1. Historia del robot
La palabra robot es de origen checo, signica siervo o esclavo, fue inventada por el escritor
Checo Karen Capek (1890 - 1937) en su obra teatral R.U.R, estrenada en Europa en 1920. Pero
se puede encontrar informaci on sobre mitos en diversas culturas, sobre la posibilidad de crear un
ente con inteligencia, por ejemplo: desde la epoca de los griegos se intent o crear dispositivos que
tuviesen movimiento sin n, los cuales no fuesen controlados ni supervisados por las personas.
Las m aquinas semejantes a personas, aparecan en los relojes de las iglesias medievales y los
relojes del siglo XVII siendo famosos por las ingeniosas criaturas mec anicas que contenan. [7]
6
Un robot industrial es un m aquina programable de uso general que tiene algunas caractersti-
cas antropom orcas o humanoides. Las caractersticas humanoides m as tpicas de los robots
actuales es la de sus brazos m oviles, los que se desplazar an por medio de secuencias de movimien-
tos que son programados para la ejecuci on de tareas de utilidad. [1]
Los primeros robots usaban mecanismos de realimentaci on para corregir errores, los cuales siguen
emple andose actualmente. Con el desarrollo del brazo manipulador, llev o al robot moderno. El
inventor estadounidense George Devol desarroll o en 1954 un brazo primitivo que se poda pro-
gramar para realizar tareas especcas. En 1975, el ingeniero mec anico estadounidense Victor
Scheinman, cuando estudiaba la carrera en la Universidad de Stanford, desarroll o un manipu-
lador polivalente realmente exible conocido como Brazo Manipulador Universal Programable
(PUMA, Programmable Universal Machine for Assambly, siglas en ingles). El PUMA era capaz
de mover un objeto y colocarlo en cualquier orientaci on en un lugar deseado que estuviera a su
alcance. El concepto b asico multiarticulado del PUMA es la base de la mayora de los robots
actuales. [7]
Los sub-sistemas de un robot son: electromec anico, percepci on, control, comunicaci on y de-
cisi on. Todos ellos consideran conocimientos de diversas disciplinas como: mec anica, electrica,
electr onica, computaci on, matem aticas, entre otras. Es por ello que un robot es un sistema
multidisciplinario que, para su construcci on, requiere el trabajo de equipo de los diferentes espe-
cialistas. [1]
El termino rob otica se deriva de la palabra robot. Siendo la rob otica la ciencia que se ocupa del
estudio, desarrollo y aplicaciones de los robots. La rob otica es considerada como: el conjunto de
conocimientos te oricos y pr acticos que permiten concebir, realizar y automatizar sistemas basa-
dos en estructuras mec anicas articuladas, dotados de un determinado grado de inteligencia y
destinados a la producci on industrial en sustituci on del hombre en muy diversas tareas. [7]
Los primeros robots creados s olo tenan un n que era el de entretener a sus due nos. Ya que
los inventores se interesaban s olo en conceder los deseos de entretener a quien solicitaban la
construcci on de un robot. Al pasar el tiempo, se fue tendiendo a que los robots se mecanizaran
para obtener la semejanza de los movimientos humanos. El origen de la rob otica se basa en el
desempe no de automatizar la mayora de las operaciones en una f abrica, lo cual se remonta al
siglo XVII en la industria textil, donde se dise naron telares que se controlaban con tarjetas per-
foradas. [7]
7
Con el desarrollo de la rob otica a traves del tiempo se logra la creaci on de nuevos dise nos en-
focados los sistemas de simulaci on estos sistemas est an formados por poderosas computadoras,
estructuras de control inteligente, algoritmos de decisi on, transmisi on de fuerza y movimiento por
medio de transmisiones mec anicas y actuadores, interfases electr onicas de potencia con condi-
cionamiento de se nales y la tecnologa de sensores. [7]
Tambien se ha logrado la exibilidad de mecanismos aut omatas para realizar funciones de dis-
tintos campos. As el objetivo de la continua investigaci on sobre mecanismos sosticados para
construir maquinaria capaz de sustituir total o parcialmente las actividades realizadas por el
hombre, es controlar dichas actividades con mayor efectividad va remota. [7]
Los avances en la rob otica son considerables y da a da se presentan nuevos resultados en
aplicaciones industriales como de investigaci on cientca y estos se enfocan a cualquiera de los
sub-sistemas de que est an constituidos.
Los problemas de ingeniera que surgen por el uso de robots no son pocos, entre ellos se pueden
citar el dise no de celdas robotizadas, la planicaci on y coordinaci on de tareas, la construcci on
o selecci on del robot adecuado, entre otras. Para ello se requiere del conocimiento de la cinem atica
y din amica de los robots manipuladores. A partir de ello y con ayuda de la simulaci on digital
se selecciona el controlador adecuado que permitir a un buen desempe no durante la ejecuci on de
una tarea.
1.2. Introducci on al control adaptable
En a nos siguientes se ha incrementado el interes en los sistemas de control adaptable, junto
con el interes y progreso de rob otica y otros campos del control. El termino de sistema de control
adaptable, tiene una variedad de signicados especcos, pero en general implican que el sistema
es capaz de acomodarse a modicaciones no predecibles del medio, sean esos cambios internos
o externos al sistema. Este concepto tiene una gran dosis de atracci on para los dise nadores de
sistemas, ya que un sistema altamente adaptable, adem as de aceptar las modicaciones ambien-
tales, tambien aceptar a errores de dise no de ingeniera o incertidumbre y compensar a las fallas
de componentes menores, incrementando as la conabilidad de los sistemas. [2]
Denici on de sistema de control adaptable, es un sistema que en forma continua y autom atica,
mide las caractersticas din amicas (tales como la funci on de transferencia o la ecuaci on de esta-
do) de la planta, las compara con las caractersticas din amicas deseadas, y usa la diferencia para
variar los par ametros ajustables del sistema (que suelen ser las caractersticas del controlador),
o generar una se nal actuante, de modo que se mantenga el desempe no optimo, independiente-
mente de las modicaciones ambientales; De otra forma el sistema puede medir continuamente
su propio desempe no, de acuerdo con alguna referencia y modicar, en caso necesario, sus pro-
pios par ametros para mantener el desempe no optimo, independientemente de las modicaciones
ambientales. [2]
8
Para denominarlo sistema adaptable, deben darse caractersticas de auto-organizaci on. Si el
ajuste de los par ametros del sistema se realiza s olo por medici on directa del medio, el sistema
no es adaptable. [2]
Se puede dar el ejemplo de un sistema que, sin serlo, parece ser adaptable; El auto piloto
de aeronave dise nado para ajustar las ganancias de su lazos, como funci on de su altura, para
compensar los correspondientes cambios en los par ametros de la aeronave. El ajuste se basa en
informaci on directa sobre el medio(en este caso, la preci on asmoferica) y no en un esquema de
auto-organizaci on.
Esos sistemas no tienen ninguna caracterstica de organizarse asi mismo y, por tanto, son esen-
cialmente sistemas convecionales de lazo cerrado. [2]
Los desarrollos recientes en vehculos aeroespacial de alta eciencia, en sistemas r oboticos, en
plantas de fabricaci on de alto rendimiento, imponen exigencias m as y m as rigorosas a sus sistemas
de control asociados. Al dise nar esos sistemas de control se trata del desarrollo de sistemas que
cumplan con las especicaciones impuestas por los usuarios, bajo las condiciones de operaci on an-
ticipadas. La mayoria de los sistemas de control que necesitan tener un desempe no muy rigoroso,
en un rango muy amplio de condiciones de operaci on, necesariamente han de ser adaptables. En
los casos en que sea evidente la necesidad de una adaptabilidad, los requerimientos efectivos son
atendidos por un sistema de identicaci on-decisi on-modicaci on, sea con modicaci on secuencial
o continua, seg un el ritmo de variaci on de los par ametros. [2]
1.3. Justicaci on
Este trabajo de tesis permite involucar al lector en el ambito de los robots manipuladores
especicamente en el control de una manera clara y con el af an de propiciar su interes en la
materia. Se propone una estrategia para la obtenci on y an alisis de las caratersticas cinem aticas
y din amicas, as como una metodologia explicita para el control adaptable, cuyo caso de estudio
es el de un robot planar de 2 grados de libertad.
La tesis involucra la obtenci on del modelo cinem atico directo de posici on, velocidad y aceleraci on
as como sus respectivas inversas con base en la metodologa Denavit-Hartenberg, la obtenci on
del modelo din amico con base a las ecuaciones de Euler-Lagrange y en base a la parametrizaci on
lineal del modelo din amico obtenemos el control adaptable.
Todos los aspectos anteriormente mencionados dicilmente se encuentran de esta manera en la
literatura y con las estrategias de soluci on propuestas ya que hay pocos libros en espa nol y con
explicaci on compleja, situaci on que justica de manera predominante este trabajo y as mantener
al lector interesado en el mismo.
Adicional a esto, la mayoria de los controladores implementados son lineales cuando un robot es
no lineal, he aqu un caso de control dependiente del modelo y no de los par ametros que logra
convergencia de posici on y velocidad.
9
1.4. Objetivo general
Desarrollar una metodologa explicita para dise nar e implementar un control adaptable de
robots manipuladores.
1.5. Objetivos especcos
Describir el modelado cinem atico de un robot planar de 2 gdl (grados de libertad).
Describir el modelado din amico de un robot planar de 2 gdl (grados de libertad).
Dise nar un control adaptable robusto a incertidumbres parametricas.
Efectuar simulaciones digitales en Matlab del control adaptable en regulaci on y seguimiento
de trayectorias.
1.6. Organizaci on del trabajo
1.-El captulo 1 es la introducci on general del trabajo que comprende el estado del arte, histo-
ria, conceptos y justicaci on, as como denir los objetivos especicos del mismo.
2.-El captulo 2 esta constituido por la medolologa para la obtenci on del modelo cinem atico
directo de posici on, velocidad y aceleraci on con sus respectivas inversas de un robot de 2 gdl(
grados de libertad). As como la utilizaci on de los par ametros de Denavit Hartenberg y la simu-
laci on digital en matlab para validar la cinem atica directa e inversa de posici on.
3.-El captulo 3 esta constituido por la metodologa de obtenci on del modelo din amico del robot
de 2 gdl. En base a la formulaci on de Euler-Lagrange, as como la validaci on en simulaci on digital
de la din amica libre y con propiedades.
4.-El captulo 4 representa el dise no del control adaptable con la parametrizaci on lineal del
modelo din amico, se comprueba por simulaci on el regresor y el vector de par ametros as como la
prueba de estabilidad por el segundo metodo de Lyapunov.
5.-El captulo 5 se representan las simulaciones con Matlab del control adaptable con seguimiento
de trayectorias en el espacio articular y operacional de las ecuaciones de una rosa de tres petalos
y una circunferencia .
10
6.-Conclusiones generales y perpectivas.
7.-Se tiene un apendice de programas que validan la cinem atica, din amica y el control adaptable
as como el glosario de los terminos y la lista de abreviaturas utilizadas.
11
Captulo 2
Modelo cinematico directo e inverso de
posici on y cinematica diferencial de un
robot de 2 grados de libertad
2.1. Introducci on
El modelo matem atico de un robot manipulador esta basado en la cinem atica y en la din amica
de su mecanismo de eslabones articulados, ambos permiten el dise no de una conguraci on del
robot, as como el estudio de algoritmos de control que permitan que se desempe ne adecuada-
mente durante el desarrollo de una tarea. [5]
El modelo cinem atico del robot consiste en encontrar las ecuaciones de la cinem atica directa
e inversa de posici on, velocidad y aceleraci on. El modelo cinem atico directo consiste en de-
terminar las coordenadas operacionales y sus derivadas respecto al tiempo en terminos de las
variables articulares o coordenadas generalizadas, estas ecuaciones permiten conocer los valores
instant aneos de la posici on, velocidad y aceleraci on que el robot adquiere con su movimiento
durante la ejecuci on de la tarea. El modelo cinem atico inverso consiste en determinar las coor-
denadas generalizadas (variables de control) en funci on de las coordenadas operacionales. [5]
En este captulo se presenta, para un robot manipulador planar de dos grados de libertad, la
cadena cinem atica, los marcos ortonormales, los par ametros Denavit-Hartenberg, las matrices
elementales del robot, la matriz de transformaci on homogenea que deriva al modelo cinem atico
directo de posici on. Para la soluci on del problema de la cinem atica inversa se propone un metodo
trigonometrico que permite denir las coordenadas generalizadas del robot en funci on de las co-
ordenadas operacionales del robot. A partir de las ecuaciones descritas anteriormente se obtiene
la cinem atica diferencial del robot, constituida por la cinem atica directa e inversa de velocidad
y aceleraci on.
12
Caractersticas fsicas y geometricas del robot R2
La estructura mec anica del robot R2, esta constituida de 2 eslabones m oviles y uno jo y dos
articulaciones del tipo revoluci on, los eslabones son de las mismas caractersticas geometricas
y fsicas, esto reduce considerablemente el an alisis matem atico. Los actuadores son motores de
corriente continua, ambos est an ubicados en la base con el af an de bajar el centro de masas del
robot y proporcionarle mas estabilidad. Los actuadores est an sujetos a los eslabones por medio de
transmisiones mec anicas banda-polea. En la gura 2.1, se presenta la estructura del mecanismo
de eslabones articulados. [5]
Figura 2.1: Mecanismo de eslabones
2.2. Descripciones: posici on y rotaci on
2.2.1. Posici on
Para describir la posici on y orientaci on, se deben conocer sus partes componentes (uniones) y
describirlos. Para ello hay que emplear un sistema de referencia jado al objeto (tipo derecho)
con tres vectores en posici on ortogonal. Este sistema se puede asignar arbitrariamente. Sin em-
bargo, por conveniencia, el origen de este sistema se elige generalmente para estar en su centro
geometrico, o en su centro de gravedad o en una de las esquinas de los cuerpos.
En la gura 2.2 la esquina de un cubo se dene como el origen. La orientaci on de los vectores de
la unidad est a en paralelo a los bordes vecinos del cuerpo.
13
Figura 2.2: Sistema cartesiano basado en la mano derecha
La expresi on matem atica para describir la posici on de un cuerpo con respecto a su localizaci on
en su propia base (referencia) se dene por un vector de posici on de tama no 3x1 como se muestra
a continuaci on:
p =
_

_
px
py
pz
_

_ = p
x
e
x
+p
y
e
y
+p
z
e
z
(2.1)
donde p
i
representa la posici on sobre el eje i, por ejemplo la posici on del cubo es la siguiente:
po =
_

_
0
0
0
_

_ (2.2)
mientras que la posici on del punto p1 puede tener los siguientes valores:
p1 =
_

_
x1
y1
z1
_

_ =
_

_
2
3
2
_

_ (2.3)
Con ello tenemos que los valores del vector de posici on dependen de la ubicaci on (la posici on y
la orientaci on) respecto a la referencia asignada.
14
En terminos generales, la posici on de un elemento con respecto a un sistema de referencia es:
k
p =
_

_
px
py
pz
_

_ =
k
p
x
e
x
+
k
p
y
e
y
+
k
p
z
e
z
(2.4)
donde k representa el sistema de referencia del cuerpo.
2.2.2. Rotaci on en el sistema cartesiano
A menudo es necesario representar no s olo un punto en el espacio, sino tambien se hace nece-
sario describir la orientaci on de un cuerpo en el espacio. Por ejemplo, si el vector en la gura
2.3 localiza el punto entre la pinza del efector nal del manipulador, la localizaci on completa del
efector nal no est a especicada hasta que su orientaci on sea tambien especicada. Para describir
la orientaci on de un cuerpo, le ser a asignado un sistema de coordenadas y entonces se dar a una
descripci on de este sistema de coordenadas con respecto al sistema de referencia. En la gura
2.3 el sistema de coordenadas B ha sido asignado al cuerpo. La descripci on de B con respecto a
K es ahora suciente para dar una orientaci on al cuerpo.
Figura 2.3: Localizando un objeto en posici on y orientaci on
15
De esta forma, la posici on de los puntos se describe mediante vectores mientras que la ori-
entaci on de los cuerpos se describe con la asignaci on de un sistema de coordenadas. Una forma
de describir al sistema de coordenadas asignado, B, es escribiendo los vectores unitarios de sus
tres ejes principales en terminos del sistema de coordenadas K.
Los vectores unitarios que dan las direcciones principales del sistema de coordenadas B se
denotan como X
B
, Y
B
y Z
B
. Cuando se escriben en terminos del sistema de coordenadas K
se denotan como
B
X
K
,
B
Y
K
y
B
Z
K
. Es conveniente posicionar estos tres vectores juntos como
columnas de una matriz de 3x3 en el orden
B
X
K
,
B
Y
K
y
B
Z
K
. Llamaremos a esta matriz una
matriz de rotaci on, y como esta matriz en particular describe a B con respecto de K, se denota
K
B
R.
K
B
R =
_
B
X
K
B
Y
K
B
Z
K
_
=
_

_
t
11
t
12
t
13
t
21
t
22
t
23
t
31
t
32
t
33
_

_ (2.5)
En resumen, un juego de tres vectores pueden ser usados para especicar una orientaci on. As,
para representar la posici on de un punto se usa un vector, mientras que para representar la
orientaci on se usa una matriz. Podemos reemplazar los escalares t
ij
con expresiones notando que
los componentes de cualquier vector son simples proyecciones del vector sobre las direcciones
unitarias de su marco de referencia. De esta forma, cada componente de
K
B
R puede ser escrito
como el producto punto de un par de vectores unitarios como:
K
B
R =
_
B
X
K
B
Y
K
B
Z
K
_
=
_

_
X
B
X
K
Y
B
X
K
Z
B
X
K
X
B
Y
K
Y
B
Y
K
Z
B
Y
K
X
B
Z
K
Y
B
Z
K
Z
B
Z
K
_

_ (2.6)
Como el producto punto de dos vectores unitarios nos lleva al coseno del angulo entre ellos,
es claro el por que los componentes de una matriz de rotaci on sean algunas veces llamados
cosenos directores.[10]
16
As por ejemplo la relaci on
0
p e
1
p
Figura 2.4: Rotaci on de un cuerpo
Utilizando la propiedad del producto escalar se tiene que:
0
p =
0
R
1
1
p (2.7)
0
R
1
=
_

_
x
0
x
1
) x
0
y
1
) x
0
z
1
)
y
0
x
1
) y
0
y
1
) y
0
z
1
)
z
0
x
1
) z
0
y
1
) z
0
z
1
)
_

_ (2.8)
Los vectores tienen la norma unitaria y por consiguiente, el producto entre dos vectores no
es nada m as de otra manera que el coseno del angulo inclusivo entre ellos.
0
R
1
=
_
x
0
x
1
) x
0
y
1
)
y
0
x
1
) y
0
y
1
)
_
=
_
cos () sen()
sen() cos ()
_
(2.9)
Para describir la rotaci on de una uni on en un sistema movil B con respecto a una referencia
en un cuerpo jo K. Tenemos que el sistema de referencia K de un cuerpo, esta relacionada al
sistema movil B, y esta dada por la matriz unitaria siguiente:
17
Figura 2.5: Rotaci on de un cuerpo
R =
B
R
K
=
_

_
1 0 0
0 1 0
0 0 1
_

_ (2.10)
Cualquier rotaci on de este cuerpo alrededor de los ejes del sistema de referencia con un angulo
(respecto al eje x), (respecto al eje y) y (respecto al eje z) lleva las siguientes matrices de
rotaci on:
La rotaci on alrededor del eje x es:
R(x, ) =
B
R
K
=
_

_
1 0 0
0 cos sen
0 sen cos
_

_ (2.11)
La rotaci on alrededor del eje y es:
R(y, ) =
B
R
K
=
_

_
cos 0 sen
0 1 0
sen 0 cos
_

_ (2.12)
18
La rotaci on alrededor del eje z es:
R(z, ) =
B
R
K
=
_

_
cos sen 0
sen cos 0
0 0 1
_

_ (2.13)
Como ejemplos se presentan en la gura 2.6 algunas rotaciones de cuerpos rigidos:
Figura 2.6: Ejemplos de rotaciones
Una propiedad importante de las matrices de la rotaci on es que pueden multiplicarse entre
ellas obteniendo como resultado una serie de transformaciones del tipo rotaci on alrededor de los
ejes del marco de referencia. Por ejemplo, para obtener una rotaci on alrededor del eje z seguida
de una rotaci on respecto al eje x la operaci on es la siguiente:
19
R(z, ) = R(z, ) R(x, ) =
_

_
cos sen 0
sen cos 0
0 0 1
_

_
_

_
1 0 0
0 cos sen
0 sen cos
_

_ (2.14)
O en su caso una transformaci on en sentido inverso al indicado, primero sobre el eje x y poste-
riormente sobre el eje z.
R(z, ) = R(x, ) R(z, ) =
_

_
1 0 0
0 cos sen
0 sen cos
_

_
_

_
cos sen 0
sen cos 0
0 0 1
_

_ (2.15)
En la gura 2.7 es un ejemplo con angulos de 30 y 90 grados, el primer ejemplo muestra una
rotaci on sobre el eje z de 90 grados seguida de una rotaci on sobre el eje x de 30 grados; El segundo
caso primero se efect ua la rotaci on sobre el eje x con 30 grados y enseguida la rotaci on sobre el
eje z 90 grados.
Figura 2.7: Ejemplo de rotaci on
20
2.3. Matriz de transformaci on homogenea
Una matriz de transformaci on homogenea permite denir la posici on y orientaci on de un mar-
co de referencia respecto a otro. As para los marcos de referencia unidos a los eslabones de un
robot, debe ser posible determinar una matriz de transformaci on homogenea general que dena
la posici on y orientaci on del marco R
i+1
respecto R
1
todo esto en funci on de los par ametros de
Denavit-Hartenberg dicha matriz esta dada por: [5]
Matriz
i1
A
i
: matriz de transformaci on homogenea que representa la posici on y orientaci on
relativa entre los sistemas asociados a dos eslabones consecutivos del robot.
Conexi on de matrices de cada eslab on A:
0
A
3
=
0
A
1
1
A
2
2
A
3
(2.16)
Matriz T : matriz de transformaci on homogenea
0
A
n
cuando se consideran todos los grados
de libertad del robot.
T =
0
A
3
=
0
A
1
1
A
2
2
A
3
3
A
4
4
A
5
5
A
6
(2.17)
Transformaciones b asicas de paso de eslab on:
1. Rotaci on alrededor del eje z
i1
un angulo
i
2. Traslaci on a lo largo de z
i1
una distancia d
i
; vector d
i
(0, 0, d
i
)
3. Traslaci on a lo largo de x
i
una distancia a
i
; vector a
i
(0, 0, ai)
4. Rotaci on alrededor del eje x
i
un angulo
i
.
i1
A
i
=
_

_
c
i
s
i
0 0
s
i
c
i
0 0
0 0 1 0
0 0 0 1
_

_
_

_
1 0 0 0
0 1 0 0
0 0 1 d
i
0 0 0 1
_

_
_

_
1 0 0 a
i
0 1 0 0
0 0 1 0
0 0 0 1
_

_
_

_
1 0 0 0
0 c
i
s
i
0
0 s
i
c
i
0
0 0 0 1
_

_
=
=
_

_
c
i
c
i
s
i
s
i
s
i
a
i
c
i
s
i
c
i
c
i
s
i
c
i
a
i
s
i
0 s
i
c
i
d
i
0 0 0 1
_

_
(2.18)
21
Esta ultima matriz representa la transformaci on homogenea que permite denir la posici on y
orientaci on de un marco de referencia respecto a otro y en la cual se sustituyen los par ametros
de Denavit-Hartenberg de cada eslab on, las cuales llamaremos matrices elementales cuya multi-
plicaci on dar a la matriz de tranformaci on homogenea que describe la posici on y orientaci on del
eector nal del robot.
2.4. Parametros de Denavit-Hartenbergh
Denen el paso de un sistema de referencia asociado a una articulaci on al siguiente.
S olo dependen de las caractersticas geometricas de cada eslab on y de las articulaciones
que le unen con el anterior y siguiente (no dependen de la posici on del robot).
Denen las matrices A (elementales) que permiten el paso de un sistema de referencia
asociado a una articulaci on al siguiente y por tanto dene la matriz T (Transformaci on
homogenea).
Son 4:
Dos angulos(
i
,
i
)
Dos distancias (d
i
, a
i
)
Donde:

i
.-Es el angulo que forman los ejes x
i1
y x
i
medido en un plano perpendicular al eje z
i1
,
utilizando la regla de la mano derecha. Se trata de un par ametro variable en articulaciones
giratorias.
d
i
.-Es la distancia a lo largo del eje z
i1
desde el origen del sistema de coordenadas (i-1)-
esimo hasta la intersecci on del eje z
i1
con el eje x
i
. Se trata de un par ametro variable en
articulaciones prism aticas.
a
i
.- Es la distancia a lo largo del eje x
i
que va desde la intersecci on del eje z
i1
con el eje
x
i
hasta el origen del sistema i-esimo, en el caso de articulaciones giratorias. En el caso de
articulaciones prism aticas, se calcula como la distancia m as corta entre los ejes z
i1
y z
i
.

i
.-Es el angulo de separaci on del eje z
i1
y el eje z
i
, medido en un plano perpendicular al
eje x
i
, utilizando la regla de la mano derecha.
22
Figura 2.8: Asignaci on de un marco de referencia a un eslab on
2.5. Algoritmo de Denavit-Hartenbergh
1. Numerar los eslabones comenzando con 1 (primer eslab on m ovil de la cadena) y
acabando con n ( ultimo eslab on m ovil). Se numerar a como eslab on 0 a la base ja
del robot.
2. Numerar cada articulaci on comenzando por 1 (la correspondiente al primer grado de
libertad) y acabando en n.
3. Localizar el eje de cada articulaci on. Si esta es rotativa, el eje ser a su propio eje de
giro. Si es prism atica, ser a el eje a lo largo del cual se produce el desplazamiento.
4. Para i de 0 a n-1 situar el eje z
i
sobre el eje de la articulaci on i+1.
5. Situar el origen del sistema de la base S
0
en cualquier punto del eje z
0
. Los ejes x
0
e
y
0
se situar an de modo que formen un sistema dextr ogiro con z
0
.
6. Para i de 1 a n-1, situar el sistema S
i
(solidario al eslab on i) en la intersecci on del eje
z
i
con la lnea normal com un a z
i1
y z
i
. Si ambos ejes se cortasen se situara S
i
en
el punto de corte. Si fuesen paralelos S
i
se situara en la articulaci on i+1
7. Situar x
i
en la lnea normal com un a z
i1
y z
i
.
8. Situar y
i
de modo que forme un sistema dextr ogiro con x
i
y z
i
.
23
9. Situar el sistema S
n
en el extremo del robot de modo que z
n
coincida con la direcci on
de z
n1
y x
n
sea normal a z
n1
y z
n
.
10. Obtener
i
como el angulo que hay que girar en torno a z
i1
para que x
i1
y x
i
queden
paralelos.
11. Obtener d
i
como la distancia, medida a lo largo de z
i1
, que habra que desplazar
S
i1
para que x
i
y x
i1
quedasen alineados.
12. Obtener a
i
como la distancia medida a lo largo de x
i
(que ahora coincidira con x
i1
)
que habra que desplazar el nuevo S
i1
para que su origen coincidiese con S
i
.
13. Obtener
i
como el angulo que habra que girar entorno a x
i
. (que ahora coincidira
con x
i1
), para que el nuevo S
i1
coincidiese totalmente con S
i
.
14. Obtener las matrices de transformaci on
i1
A
i
15. Obtener la matriz de transformaci on entre la base y el extremo del robot T =
0
A
1
1
A
2
.....
n1
A
n
16. La matriz T dene la orientaci on (submatriz de rotaci on) y posici on (submatriz de
traslaci on) del extremo referido a la base en funci on de las n coordenadas articulares
2.6. Obtenci on del modelo cinematico directo de un robot
Establecer para cada elemento del robot un sistema de coordenadas cartesiano ortonor-
mal (x
i
, y
i
, z
i
) donde i=1,2,..,n (n=n umero de gdl). Cada sistema de coordenadas
corresponder a a la articulaci on i+1 y estar a jo en el elemento i
Encontrar los par ametros D-H de cada una de las articulaciones
Calcular las matrices elementales A
i
Calcular la matriz de transformaci on homogenea T
n
=
0
A
1
1
A
2
.....
n1
A
n
2.6.1. Cadena cinematica y marcos ortonormales
La cadena cinem atica es un conjunto o subconjuntos de miembros de un mecanismo enlazados
entre si. Los miembros de una cadena cinem atica se le denominan eslabones. En la descripci on
de la cadena cinem atica de un robot se asigna un marco de referencia ortonormal R
i+1
al eslabon
E
1
y se denen los par ametros que permiten especicar la situaci on de cada marco respecto al
anterior.
La ubicaci on de los marcos ortonormales del robot 2R, se exhiben en la gura 2.9, Donde O
1
, O
2
y O
3
representan el origen de las articulaciones correspondientes. El plano de referencia es el
X-Y, esto implica que el eje Z es ortogonal al plano.[5]
24
Figura 2.9: Marcos ortonormales
2.6.2. Parametros Denavit-Hartenbergh
Una vez asignado un marco de referencia de cada eslab on, se dene la posici on y orientaci on de
cada marco respecto al precedente. Esto se puede hacer aplicando cuatro par ametros geometricos
asociados con cada elemento ya que nos permiten describir completamente cualquier articulaci on
prism atica o de revoluci on.
En base al algoritmo para la determinaci on de los par ametros de Denavit-Hartenberg y a las
caractersticas de la cadena cinem atica, los par ametros son los siguientes: [5]
Figura 2.10: Par ametros de Denavit-Hartenbergh
25

i
.-Es el angulo que forman los ejes x
i1
y x
i
medido en un plano perpendicular al
eje z
i1
, utilizando la regla de la mano derecha. Se trata de un par ametro variable en
articulaciones giratorias.
d
i
.-Es la distancia a lo largo del eje z
i1
desde el origen del sistema de coordenadas
(i-1)-esimo hasta la intersecci on del eje z
i1
con el eje x
i
. Se trata de un par ametro
variable en articulaciones prism aticas.
a
i
.- Es la distancia a lo largo del eje x
i
que va desde la intersecci on del eje z
i1
con el
eje x
i
hasta el origen del sistema i-esimo, en el caso de articulaciones giratorias. En
el caso de articulaciones prism aticas, se calcula como la distancia m as corta entre los
ejes z
i1
y z
i
.

i
.-Es el angulo de separaci on del eje z
i1
y el eje z
i
, medido en un plano perpendicular
al eje x
i
, utilizando la regla de la mano derecha.
2.6.3. Matrices elementales
Sustituyendo en la matriz de transformaci on homogenea los par ametros de Denavit-Hartenbergh
correspondientes a cada eslab on del Robot, se obtienen las dos matrices de transformaci on ho-
mogenea o matrices elementales siguientes:[5]
0
1
A =
_

_
c
1
s
1
0 L
1
c
1
s
1
c
1
0 L
1
s
1
0 0 1 0
0 0 0 1
_

_
,
1
2
A
_

_
c
2
s
2
0 L
2
c
2
s
2
c
2
0 L
2
s
2
0 0 1 0
0 0 0 1
_

_
(2.19)
2.6.4. Matriz de trasformaci on homogenea
La obtenci on de la matriz de transformaci on homogenea representativa del robot se obtuvo con
el producto de las matrices elementales.
0
2
T =
_

_
c
12
s
12
0 L
2
c
12
+L
1
c
1
s
12
c
12
0 L
2
s
12
+L
1
s
1
0 0 1 0
0 0 0 1
_

_
(2.20)
26
Donde:
s
12
= sin (
1
+
2
)
c
12
= cos (
1
+
2
)
s
1
= sin (
1
)
s
2
= sin (
2
)
c
1
= cos (
1
)
c
2
= cos (
2
)
(2.21)
2.7. Modelo cinematico directo de posici on (MCDP)
La cinem atica es la ciencia que estudia la posici on, velocidad, aceleraci on y otros fen omenos rela-
cionados con el movimiento. Sin embargo el estudio de la cinem atica de los robots manipuladores
se reere a todas las propiedades geometricas basadas en tiempos referentes al movimiento de
las articulaciones del manipulador.
El modelado de robots se basa en el estudio de la cinem atica y pretende establecer las relaciones
funcionales existentes entre las variables articulares y las coordenadas operacionales del robot.
Esta parte del modelado consta de dos problemas b asicos: El modelado directo y el modelado
inverso.[3][5]
X = f() (2.22)
Para describir la situaci on de un s olido en el espacio cartesiano se requieren m par ametros (co-
ordenadas operacionales). Distribuidos en una matriz columna:
Donde:
X
= [x
1
, x
2
, ...x
m
]
T
(2.23)
Donde:
m 6 (2.24)
En general x
1
, x
2
y x
3
denen la posici on, mientras que x
4
, x
5
, ...x
m
denen la orientaci on.
Para este caso el s olido se reere al extremo superior del segundo eslab on. Las coordenadas de
posici on se pueden denir en coordenadas cartesianas, cilndricas y esfericas, las coordenadas de
orientaci on se pueden denir en terminos de los angulos de Euler y de Bryant. [5]
27
La matriz columna que dene la posici on se dene en:
X
P
= [x
1
, x
2
, x
3
]
T
= [l, m, n]
T
(2.25)
Donde:
l = e
14
m = e
24
n = e
34
(2.26)
e
14
, e
24
y e
34
son elementos de la matriz de transformaci on hom ogenea:
0
2
T =
_

_
e
11
e
12
e
13
e
14
e
21
e
22
e
23
e
24
e
31
e
32
e
33
e
34
e
41
e
42
e
43
e
44
_

_

0
2
T =
_

_
c
12
s
12
0 L
2
c
12
+L
1
c
1
s
12
c
12
0 L
2
s
12
+L
1
s
1
0 0 1 0
0 0 0 1
_

_
(2.27)
La matriz que dene la orientaci on , se dene en:
X
o
= [x
4
, x
5
, x
6
]
T
= [, , ]
T
(2.28)
Los angulos [, , ] corresponden a los giros sucesivos que necesitar an aplicarse a un marco
en el orden x-y-z para hacerlo coincidir con el otro marco.
Donde:
= atan2 (e
23
, e
33
)
= atan2
_
e
13
,
e
33
C
_
= atan2 (e
12
, e
11
)
(2.29)
e
23
, e
33
, e
13
, e
12
, e
11
son elementos de la matriz de transformaci on homogenea.
Ver anexo de funci on atan2()
Relacionando la matriz que dene la posici on y la matriz que dene la orientaci on con la matriz
de transformaci on homogenea tenemos el MCDP.
28
x = x
1
= l = L
1
c
1
+L
2
c
12
y = x
2
= m = L
1
s
1
+L
2
s
12
z = x
3
= n = 0
= x
4
= 0
= x
5
= 0
= x
6
=
1
+
2
(2.30)
MODELO CINEM

ATICO DIRECTO DE POSICI

ON (MCDP) GEOMETRICAMENTE
Figura 2.11: Representaci on del MCDP
El modelo cinem atico directo de posici on de un robot manipulador es la relaci on que permite
determinar las coordenadas operacionales (componentes del vector x ) del robot en funci on de la
conguraci on de las articulaciones (variables articulares ) del mismo.
x = f() (2.31)
Donde la funci on vectorial f tiene por componentes las funciones escalares f
1
, f
2
, f
3
....f
n
de q.
Conforme a lo establecido se tiene que el eslabon jo de un robot se le asigna un marco de
referencia R
1
, y que al organo terminal (eslab on n) se le asigna un marco de referencia R
n+1
Donde:
29
x
I
= L
1
cos
1
= L
1
c
1
y
I
= L
1
sin
1
= L
1
s
1
X = x
I
+L
2
cos(
1
+
2
) = L
1
c
1
+L
2
c
12
Y = y
I
+L
2
sin(
1
+
2
) = L
1
s
1
+L
2
s
12
(2.32)
El MCDP proporciona las coordenadas operacionales x, y, z, , , en terminos de las coorde-
nadas generalizadas o variables articulares
1
y
2
. Las coordenadas operacionales, en el control
mediante la cinem atica del robot, permite conocer la posici on instant anea que adquiere el robot
con su movimiento. [3]
2.8. Modelo cinematico inverso de posici on (MCIP)
El MCIP de un robot manipulador permite obtener la conguraci on deseada, es decir las coorde-
nadas generalizadas est an en funci on de las coordenadas operacionales, donde las primeras son
utilizadas como consignas de los actuadores para llevar al robot a la posici on deseada.
= f
1
(X) (2.33)
Por denici on, un robot es resoluble si es posible determinar las conguraciones correspondi-
entes a una situaci on X ( es decir , todas las tales que f() = X) del organo terminal.
Los metodo de soluci on del modelo inverso de posici on se clasican en numericos y an aliti-
cos. Los metodos numericos tienen la desventaja de que en caso de existencia de m as de una
soluci on el usuario no tiene la posibilidad de controlar la soluci on a la cual converge el metodo.
Sin embargo los analticos permiten resolver la mayoria de las arquitecturas de los robots indus-
triales utilizados en pr actica , aun no siendo de validez general.
Dada la sencillez de la conguraci on del robot en la que sus conguraciones se desenvuelven en
un plano, se utiliza un metodo trigonometrico en base al esquema siguiente:
30
Figura 2.12: Representaci on del MCIP
Analizando el tri angulo oblicu angulo formado en la gura 2.12 tenemos:
El angulo
2
puede adquirir valores positivos y negativos en funci on del sentido de sus movimien-
tos.
A partir del la gura del tri angulo y aplicando la ley de cosenos para tri angulos oblicuangu-
los se obtiene el angulo
2
.
X
2
+Y
2
= L
2
1
+L
2
2
2 L
1
L
2
cos() (2.34)
utilizando la ley cosenos:
Despejando() :

2
= 180

cos
1
_
L
2
1
+L
2
2
(X
2
+Y
2
)
2L
1
L
2
_
= cos
1
_
L
2
1
+L
2
2
(X
2
+Y
2
)
2L
1
L
2
_

2
= 180

(2.35)
31
Utilizando la ley de senos para calcular :

1
= +
= a tan 2(y, x) = tan
1
_
Y
X
_
sin
L
2
=
sin

X
2
+Y
2
Despejando :
= sin
1
_
L
2
sin

X
2
+Y
2
_

1
= sin
1
_
L
2
sin

X
2
+Y
2
_
+atan2(y, x)
(2.36)
Dado que () y () calculados se obtiene (
1
) en terminos de ellos de la forma siguiente:
1
=
El signo de la ecuaci on anterior est a en funci on del signo de (
2
).[3]
Figura 2.13: Sentido que adoptan los

Angulos

1
= +
2
< 0

1
=
2
> 0
(2.37)
32
2.9. Modelo cinematico directo de velocidad (MCDV)
Las ecuaciones del MCDV permiten conocer la velocidad instantanea que el organo terminal
adquiere durante la ejecuci on de una tarea.
El MCDV resulta de la primera derivada respecto al tiempo del MCDP, es decir:

t
[X] =

t
[f()] (2.38)
Obteniendo el MCDV expresado por la siguiente ecuaci on:

X = J

(2.39)
Donde:

X.-Es el vector de velocidad del organo terminal del robot:

X = [ x
1,
x
2
, ..... x
n
]
T
(2.40)

.-Es el vector de velocidad de las articulaciones del robot:

=
_

1
,

2
, ....

n
_
T
(2.41)
J.-Es la matriz jacobiana, cuyos elementos
J
ij
son:
J
ij
=
f
i

i
(2.42)
x = x
1
= l = L
1
c
1
+L
2
c
12
y = x
2
= m = L
1
s
1
+L
2
s
12
z = x
3
= n = 0
= x
4
= 0
= x
5
= 0
= x
6
=
1
+
2
(2.43)
33
J =
_

_
x

1
y

1
z

1
x

2
y

2
z

2
_

_ (2.44)
Derivar parcialmente X,Y,Z,, y respecto a
i
.
J =
_
L
1
s
1
L
2
s
12
L
1
c
1
+L
1
c
12
0 0 0 1
L
2
s
12
L
2
c
12
0 0 0 1
_
(2.45)
El plano de referencia es X-Y, esto implica que el eje Z es ortogonal al plano.
Sustituyendo (2.45) en (2.38), se obtiene el MCDV:
_

_
=
_

_
(L
1
s
1
L
2
s
12
)

1
(L
2
s
12
)

2
(L
1
c
1
+L
1
c
12
)

1
+ (L
2
c
12
)

2
0
0
0

1
+

2
_

_
(2.46)
34
2.10. Modelo cinematico inverso de velocidad (MCIV)
Las ecuaciones del MCIV del robot manipulador, lo permiten controlar en velocidad.
El MCIV se representa por la siguiente expresi on:

= J
1


X (2.47)
La jacobiana inversa, se obtiene a partir de:
J
1
=
adj
_
J
_
det
_
J
_
(2.48)
Considerando como MCDV, la soluci on de

X y

Y , se tiene que:
det
_
J
_
= L
1
L
2
s
2
(2.49)
adj
_
J
_
=
_
L
2
c
12
L
2
s
12
L
1
c
1
L
2
c
12
L
1
s
1
L
2
s
12
_
(2.50)
Sustituyendo (2.49) y (2.50) en (2.48) se tiene:
J
1
=
1
L
1
L
2
s
2

_
L
2
c
12
L
2
s
12
L
1
c
1
L
2
c
12
L
1
s
1
L
2
s
12
_
(2.51)
Sustituyendo (2.51) en (2.47) obtenemos el MCIV:

1
=
1
L
1
L
2
s
2

_
(L
2
c
12
)

X + (L
2
s
12
)

Y
_

2
=
1
L
1
L
2
s
2

_
(L
1
c
1
L
2
c
12
)

X + (L
1
s
1
L
2
s
12
)

Y
_
(2.52)
35
Es observable, que si det
_
J
_
= 0 , implica que J es singular, es decir J
1
no existe. Por con-
siguiente, las conguraciones del robot 2R, con:

2
=
_

(2.53)
Son las conguraciones singulares, y en ellas no existe soluci on del modelo inverso de velocidad.
[5]
36
2.11. Modelo cinematico directo de aceleraci on (MCDA)
Resulta de la derivada respecto del tiempo del MCDV y se rige por la siguiente expresi on:

X = J

+

J

(2.54)
Donde:

X :es el vector de aceleraci on del organo terminal del robot.

:es el vector de aceleraciones de las articulaciones


C alculo de

J:
Por consiguiente:

J =
_
_
L
1
c
1

1
L
2
c
12

1
+

2
_
L
2
c
12

1
+

2
_
L
1
s
1

1
L
2
s
12

1
+

2
_
L
2
s
12

1
+

2
_
_
_
(2.55)
Sustituyendo (2.45) y (2.55) en (2.54), se obtiene:
_

_
=
_

_
L
1
s
1
L
2
s
12
L
2
s
12
L
1
c
1
L
2
c
12
L
2
c
12
0 0
0 0
0 0
1 1
_

2
_
+
_
_
L
1
c
1

1
L
2
c
12

1
+

2
_
L
2
c
12

1
+

2
_
L
1
s
1

1
L
2
s
12

1
+

2
_
L
2
s
12

1
+

2
_
_
_

2
_
(2.56)
37
De (2,56), se obtiene el MCDA: [5]

X = (L
1
s
1
L
2
s
12
)

1
(L
2
s
12
)

2
(L
1
c
1
+L
2
c
12
)

2
1

(L
2
c
12
)

2
2
2 (L
2
c
12
)

Y = (L
1
c
1
L
2
c
12
)

1
(L
2
c
12
)

2
(L
1
s
1
+L
2
s
12
)

2
1

(L
2
s
12
)

2
2
2 (L
2
s
12
)

2
(2.57)
38
2.12. Modelo cinematico inverso de aceleraci on (MCIA)
El MCIA es representado por la siguiente expresi on:

= J
1

_

X

J

_
(2.58)
Sustituyendo (2,51) y (2,55) se obtiene:
_

2
_
=
1
L
1
L
2
s
2

_
L
1
c
12
L
2
s
12
L
1
c
1
L
2
c
12
L
1
s
1
L
2
s
12
_

_

X + (L
1
c
1
+L
2
c
12
)

2
1
+ (L
2
c
12
)

2
2
+ 2 (L
2
c
12
)

Y + (L
1
s
1
+L
2
s
12
)

2
1
+ (L
2
s
12
)

2
2
+ 2 (L
2
s
12
)

2
_
(2.59)
De la ecuaci on anterior, se obtiene el MCIA: [5]

1
=
1
L
1
L
2
s
2
_
_
_

X + (L
1
c
1
+L
2
c
12
)

2
1
+ (L
2
c
12
)

2
2
+ 2 (L
2
c
12
)

2
_
(L
1
c
12
) +
_

Y + (L
1
s
1
+L
2
s
12
)

2
1
+ (L
2
s
12
)

2
2
+ 2 (L
2
s
12
)

2
_
(L
2
s
12
)
_
_

2
=
1
L
1
L
2
s
2
_
_
_

X + (L
1
c
1
+L
2
c
12
)

2
1
+ (L
2
c
12
)

2
2
+ 2 (L
2
c
12
)

2
_
(L
1
c
1
+L
2
c
12
) +
_

Y + (L
1
s
1
+L
2
s
12
)

2
1
+ (L
2
s
12
)

2
2
+ 2 (L
2
s
12
)

2
_
(L
1
s
1
+L
2
s
12
)
_
_
(2.60)
39
2.13. Simulaci on digital en matlab
A continuaci on se presentan los c odigos en simulador digtal Matlab que validan la cinem atica
directa de posici on e inversa de posici on, as como su corrida del los programas:
2.13.1. Simulaci on digital en matlab del MCDP
El programa pide como datos de entrada el valor de los angulos theta 1 y theta 2, para calcular
el punto P(X,Y) del organo terminal del robot.
Validaci on del Modelo Cinem atico de un Robot R2
clc
close all
clear all
Longitudes de los Eslabones
L1 = 2;
L2 = 2;
Dene las Variables Articulares
teta
g
rad1 = input(

Angulo1(Grados) :

)teta
g
rad2 = input(

Angulo2(Grados) :

)
Conversi on de grados a radianes
teta
r
ad1 = teta
g
rad1 pi/180; teta
r
ad2 = teta
g
rad2 pi/180;
C alculo del Modelo Cinem atico Directo de Posici on
X = L1 cos(teta
r
ad1) +L2 cos(teta
r
ad1 +teta
r
ad2)
Y = L1 sin(teta
r
ad1) +L2 sin(teta
r
ad1 +teta
r
ad2)
C alculo del Modelo Cinem atico Inverso de Posici on
Variable Articular 2
teta
r
ad
i
nv2 = acos((X.
2
+Y.
2
(L1.
2
+L2.
2
))/(2 L1 L2));
teta
g
rad
i
nv2 = teta
r
ad
i
nv2 180/pi
Variable Articular 1
alfa = atan2(Y, X); beta = acos((L1.
2
+L2.
2
(X.
2
+Y.
2
))/(2 L1 L2));
gamma = asin((L2 sin(beta))/sqrt(X.
2
+Y.
2
));
ifteta
r
ad
i
nv2 < 0
teta
r
ad
i
nv1 = alfa +gamma;
40
else
teta
r
ad
i
nv1 = alfa gamma;
end
teta
g
rad
i
nv1 = teta
r
ad
i
nv1 180/pi
Su respectiva corrida es la siguiente:
Angulo1(Grados) : 45
teta
g
rad1 = 45
Angulo2(Grados) : 30
teta
g
rad2 = 30
Calcula la coordenada operacional P(X,)
X = 1,9319
Calcula la coordenada operacional P(,Y)
Y = 3,3461
teta
g
rad
i
nv2 = 30,0000
teta
g
rad
i
nv1 = 45,0000
2.13.2. Simulaci on digital en matlab del MCIP
El programa pide como datos de entrada el punto P(X,Y) del organo terminal del robot para
calcular el valor de los angulos theta 1 y theta 2.
Validaci on del Modelo Cinem atico de un Robot R2
clearall
closeall
clc
Longitudes de los Eslabones
L1 = 2;
L2 = 2;
X = input(

CoordenadaOperacionalX :

)Y = input(

CoordenadaOperacionalY :

)
C alculo del Modelo Cinem atico Inverso de Posici on
41
Variable Articular 2
teta
r
ad
i
nv2 = acos((X.
2
+Y.
2
(L1.
2
+L2.
2
))/(2 L1 L2));
teta
g
rad
i
nv2 = teta
r
ad
i
nv2 180/pi
Variable Articular 1
alfa = atan2(Y, X); beta = acos((L1.
2
+L2.
2
(X.
2
+Y.
2
))/(2 L1 L2));
gamma = asin((L2 sin(beta))/sqrt(X.
2
+Y.
2
));
ifteta
r
ad
i
nv2 < 0
teta
r
ad
i
nv1 = alfa +gamma;
else
teta
r
ad
i
nv1 = alfa gamma;
end
teta
g
rad
i
nv1 = teta
r
ad
i
nv1 180/pi
C alculo del Modelo Cinem atico Directo de Posici on
X = L1 cos(teta
r
ad
i
nv1) +L2 cos(teta
r
ad
i
nv1 +teta
r
ad
i
nv2)
Y = L1 sin(teta
r
ad
i
nv1) +L2 sin(teta
r
ad
i
nv1 +teta
r
ad
i
nv2)
Su respectiva corrida es la siguiente:
CoordenadaOperacionalX : 1,9319
X = 1,9319
CoordenadaOperacionalY : 3,3461
Y = 3,3461
teta
g
rad
i
nv2 = 29,9940 Calculael angulotheta1
teta
g
rad
i
nv1 = 45,0026 Calculaen angulotheta2
X = 1,9319
Y = 3,3461
Gracaci on de la validaci on del modelo cinem atico directo e inverso de posici on, utilizando la
ecuaci on de la rosa de tres petalos que a continuaci on se describe.
42
0 5 10 15 20 25 30 35
0.24
0.26
0.28
0.3
0.32
0.34
0.36
Coordenadas Operacionales
Tiempo (segundos)
X
,
Y
:X
:X2
Figura 2.14: Simulaci on de la coordenada
X y X2.
0 5 10 15 20 25 30 35
0.44
0.46
0.48
0.5
0.52
0.54
0.56
Coordenadas Operacionales
Tiempo (segundos)
X
,
Y
:Y
:Y2
Figura 2.15: Simulaci on de la coordenada
Y y Y2.
En las gr acas 2.14 y 2.15 se grafca el comportamiento de la cinem atica directa de posici on
(las componente x e y) y a su vez se calcula la inversa de posici on para volver a calcular la
cinem atica directa gracandose de nuevo, notese que est an defasadas pero el comportamiento de
la trayectoria es la misma, comprobandose as la cinem atica directa de posici on y la inversa de
posici on.
0.24 0.26 0.28 0.3 0.32 0.34 0.36
0.46
0.48
0.5
0.52
0.54
0.56
Espacio de Trabajo
Coordenada Operacional X
C
o
o
r
d
e
n
a
d
a

O
p
e
r
a
c
io
n
a
l
Y
Figura 2.16: Simulaci on del espacio de
trabajo.
0 5 10 15 20 25 30 35
20
0
20
40
60
80
100
120
140
160
Coordenadas Generalizadas
Tiempo (segundos)
T
e
t
a
1

y

T
e
t
a
2
:Teta1
:Teta2
Figura 2.17: Simulaci on del compor-
tamiento de los angulos.
En las g. 2.16 se grafca el espacio operacional que corresponde a la ecuaci on de la rosa de tres
petalos y en la g. 2.17 se graca el comportamiento de las variables artculares (
1
y
2
).
43
2.14. Conclusiones
En este captulo se da una introduccci on a los conceptos que nos permiten conocer un cuerpo en
posici on y orientaci on, que es la base para la cinem atica de un robot la parte geometrica de su
construcci on que nos permite implementar aspectos din amicos y de control.
Tambien se obtuvo por medio de metodos convencionales y metodos propuestos de las ecuaciones
del modelo cinem atico directo de posici on, velocidad y aceleraci on que permiten conocer a la
posici on, velocidad y aceleraci on operacional que el robot de dos grados de libertad tiene durante
su movimiento. Las ecuaciones de la cinem atica inversa de posici on, velocidad y aceleraci on
(cinem atica difencial) permiten denir las consignas de movimiento para la aplicaci on de una ley
de control que permita denir un movimiento regulado o una trayectoria de seguimiento durante
una tarea.
44
Captulo 3
Modelo dinamico de un robot planar de
2 grados de libertad
3.1. Introducci on
La din amica de un robot se constituye de sus ecuaciones de movimiento que permiten, mediante
la simulaci on por computadora, conocer los movimientos del robot y a partir de ello constituir
una ley de control que le favorezca, as como el dise no de la estructura mec anica.
El rendimiento din amico de un robot depende en esencia de la ecacia de los algoritmos de
control empleados y de su modelo din amico. El control consiste en obtener la respuesta y el
rendimiento adecuado del robot.
El modelo din amico de un robot manipulador se puede obtener a partir de las leyes de la mec anica
newtoniana y lagrangiana, tales ecuaciones est an en funci on de las caractersticas geometricas e
inerciales del mecanismo de eslabones articulados.
Existen diversos metodos convencionales como Lagrange-Euler(L-E) y Newton-Euler(N-E) .
El uso del metodo L-E para la obtenci on del modelo din amico es simple y sistem atico, pro-
porciona las ecuaciones de estado en forma explcita y estas pueden ser utilizadas para analizar
y dise nar estrategias de control, as como del propio mecanismo rob otico. [3][5]
45
Representaci on din amica
Figura 3.1: Representaci on gr aca de la din amica
1.-Descripci on de variables
X,Y: Coordenadas Operacionales.

1
,
2
: Variables Articulares.
L1,L2: Longitud de los Eslabones.
m1,m2: Masas de los Eslabones.
LCG1,LCG2: Longitudes sobre los eslabones de los Centros de Gravedad.
h1,h2: Altura de los Centros de Gravedad.
1, 2: Pares torsionales de cada articulaci on.
46
2.-Principios del modelado dinamico
Ecuacion de Euler-Lagrange
La expresi on que dene las ecuaciones de pares torsionales y que esta en terminos del Lagrangiano
( Interacci on de energa cinetica y potencial ) y las variables articulares y sus derivadas, se pre-
senta en la siguiente ecuaci on.
=
d
dt

L +b

+Ksgn(

) (3.1)
Donde:
L: Lagrangiano.
t: Tiempo.
: Torque.
b: Friccion Viscosa.
K: Friccion Seca.
Sgn(x): Funcion Signo.

: Velocidad Angular.
3.-Determinacion del Lagrangiano
L =
n

i=1
K
i
P
i
(3.2)
K
i
: Energia Cinetica del i-esimo Eslabon.
47
P
i
: Energia Potencial del i-esimo Eslabon.
K
i
=
1
2
m
i
v
2
i
(3.3)
P
i
= m
i
gh
i
(3.4)
Es decir el Lagrangiano representa el equilibrio de de fuerzas (Energa cinetica y energa potencial.[3]
Donde:
m
i
: Masa del eslabon i.
v
i
: Velocidad del eslabon i.
g: Gravedad=9,81m/seg.
2
h
i
: Altura del Centro de Gravedad.
4.-Caso de estudio robot R2
El n umero de ecuaciones de Torque depende de los grados de libertad. El caso de estudio es
de un Robot de dos grados de libertad por tanto tendremos dos Ecuaciones de Torque.

1
=
d
dt

1
L

1
L +b
1

1
+K
1
sgn(

1
)

2
=
d
dt

2
L

2
L +b
2

2
+K
2
sgn(

2
)
(3.5)
L =
n=2

i=1
K
i
P
i
= K
1
+K
2
P
1
P
2
(3.6)
Dicho lo anterior y con la ecuaci on nos muestra el lagrangiano con dos fuerzas cineticas y con
dos fueras potenciales.
48
5.-Metodo de obtenci on
a). - K
1
, P
1
.-Calcular la energa cinetica y potencial del eslab on 1.
b). - K
2
, P
2
.-Calcular la energa cinetica y potencial del eslab on 1.
c). -L.-Teniendo los dos c alculos anteriores queda denido el Lagrangiano.
d). -

1
L.-Calcular la derivara parcial del Lagrangiano respecto

1
.
e). -

2
L.-Calcular la derivara parcial del Lagrangiano respecto

2
.
f).-
d
dt

1
L.-Calcular la derivada ordinaria de la derivada parcial de

1
del Lagrangiano.
g).-
d
dt

2
L.-Calcular la derivada ordinaria de la derivada parcial de

2
del Lagrangiano.
h). -

1
L.-Calcular la derivada parcial del Lagrangiano respecto a
1
.
i). -

2
L.-Calcular la derivada parcial del Lagrangiano respecto a
2
.
a).-K
1
:Energia cinetica del eslab on 1.
Figura 3.2: Energia cinetica 1
49
La energa cinetica est a dada por K
1
=
1
2
m
1
v
2
1
, un medio de la masa por la velocidad al cuadrado
del eslab on uno. Siendo la velocidad al cuadrado la primera derivada de la posici on X
1
y Y
1
.
K
1
=
1
2
m
1
v
2
1
X
1
= L
1
cos
1
Y
1
= L
1
sin
1
v
2
1
=

X
2
1
+

Y
2
1

X
1
=
d
dt
X
1
= L
1
s
1

Y
1
=
d
dt
Y
1
= L
1
c
1

1
v
2
1
= (L
1
s
1

1
)
2
+ (L
1
c
1

1
)
2
= L
2
1
s
2
1

2
1
+L
2
1
c
2
1

2
1
= L
2
1

2
1
[s
2
1
+c
2
1
]
K
1
=
1
2
m
1
L
2
1

2
1
(3.7)
Energia potencial del eslab on 1.
Figura 3.3: Energia potencial 1
50
La energa potencial est a dada por P
1
= m
1
gh
1
, la masa por la gravedad y por la altura del
centro de gravedad del eslab on uno.
P
1
= m
1
gh
1
h
1
= L
CG1
sin
1
P
1
= m
1
gL
CG1
sin
1
P
1
= m
1
gL
CG1
s
1
(3.8)
b).-K
2
.-Energia cinetica del eslab on 2.
Figura 3.4: Energia cinetica 2
La energa cinetica est a dada por K
2
=
1
2
m
2
v
2
2
, un medio de la masa por la velocidad al cuadrado
del eslab on dos. Siendo la velocidad al cuadrado la primera derivada de la posici on X y Y .
51
K
2
=
1
2
m
2
v
2
2
v
2
2
= x
2
+ y
2
x =
dx
dt
y =
dy
dt
x = x
1
+L
2
cos (
1
+
2
) = L
1
cos
1
+L
2
cos (
1
+
2
)
y = y
1
+L
2
sin (
1
+
2
) = L
1
sin
1
+L
2
sin (
1
+
2
)
x = L
1
c
1
+L
2
c
12
y = L
1
s
1
+L
2
s
12
(3.9)
x =
dx
dt
=
d(L
1
c
1
+L
2
c
12
)
dt
= L
1
s
1

1
L
2
s
12
_

1
+

2
_
y =
dy
dt
=
d(L
1
s
1
+L
2
s
12
)
dt
= L
1
c
1

1
+L
2
c
12
_

1
+

2
_
v
2
2
= x
2
+ y
2
=
_
L
1
s
1

1
L
2
s
12
_

1
+

2
__
2
+
_
L
1
c
1

1
+L
2
c
12
_

1
+

2
__
2
= L
2
1
s
2
1

2
1
2L
1
L
2
s
1
s
12

1
_

1
+

2
_
+L
2
2
s
2
12
_

1
+

2
_
2
+L
2
1
c
2
1

2
1
+ 2L
1
L
2
c
1
c
12

1
_

1
+

2
_
+L
2
2
c
2
12
_

1
+

2
_
2
= L
2
1

2
1
(s
2
1
+c
2
1
) + 2L
1
L
2

1
_

1
+

2
_
[s
1
s
12
c
1
c
12
] +L
2
2
_

1
+

2
_
2
[s
2
12
+c
2
12
]
s
2
1
+c
2
1
= 1
s
2
12
+c
2
12
= 1
s
1
s
12
c
1
c
12
= s
1
[s
1
c
2
+s
2
c
1
] +c
1
[c
1
c
2
s
1
s
2
]
= s
2
1
c
2
+s
1
s
2
c
1
+c
2
1
c
2
s
1
s
2
c
1
= c
2
(s
2
1
+c
2
1
) = c
2
v
2
2
= L
2
1

2
1
+ 2L
1
L
2

1
_

1
+

2
_
c
2
+L
2
2
_

1
+

2
_
2
K
2
=
1
2
m
2
L
2
1

2
1
+m
2
L
1
L
2

1
_

1
+

2
_
c
2
+
1
2
m
2
L
2
2
_

1
+

2
_
2
(3.10)
52
Energia potencial del eslab on 2.
Figura 3.5: Energia potencial 2
La energa potencial est a dada por P
2
= m
2
gh
2
, la masa por la gravedad y por la altura del
centro de gravedad del eslab on dos.
P
2
= m
2
gh
2
h
2
= Y 1 +L
CG2
sin(
1
+
2
)
Y 1 = L
1
sin
1
h
2
= L
1
sin
1
+L
CG2
sin(
1
+
2
)
P
2
= m
2
gL
1
s
1
+m
2
gL
CG2
s
12
(3.11)
53
c).-LAGRANGIANO
L =
1
2
m
1
L
2
1

2
1
+
1
2
m
2
L
2
1

2
1
+m
2
L
1
L
2

1
_

1
+

2
_
c
2
+
1
2
m
2
L
2
2
_

1
+

2
_
2
m
1
gL
CG1
s
1
m
2
gL
1
s
1
+m
2
gL
CG2
s
12
(3.12)
d).-Determinar la derivada parcial del Lagrangiano respecto a

1
L = m
1
L
2
1

1
+m
2
L
2
1

1
+ 2m
2
L
1
L
2
c
2

1
+m
2
L
1
L
2
c
2

2
+m
2
L
2
2

1
+m
2
L
2
2

2
(3.13)
e).-Determinar la derivara parcial del Lagrangiano respecto a

2
.

2
L = m
2
L
1
L
2
c
2

1
+m
2
L
2
2

1
+m
2
L
2
2

2
(3.14)
f ).-Determinar la derivada ordinaria del Lagrangiano respecto a la derivada par-
cial de

1
.
d
dt

1
L = m
1
L
2
1

1
+m
2
L
2
1

1
+m
2
L
2
2

1
+m
2
L
2
2

2
+ 2m
2
L
1
L
2
_
c
2

1
s
2

2
_
+m
2
L
1
L
2
_
c
2

2
s
2

2
2
_
= (m
1
L
2
1
+m
2
L
2
1
+m
2
L
2
2
+ 2m
2
L
1
L
2
c
2
)

+ (m
2
L
2
2
+m
2
L
1
L
2
c
2
)

2
(m
2
L
1
L
2
s
2
)

2
2
(2m
2
L
1
L
2
s
2
)

2
(3.15)
g).-Determinar la derivada ordinaria del Lagrangiano respecto a la derivada par-
cial de

2
.
d
dt

2
L = m
2
L
2
2

1
+m
2
L
2
2

2
+m
2
L
1
L
2
_
c
2

1
s
2

1
_
= (m
2
L
2
2
+m
2
L
1
L
2
c
2
)

1
+ (m
2
L
2
2
)

2
(m
2
L
1
L
2
s
2
)

1
(3.16)
54
h).-Determinar la derivada parcial del Lagrangiano respecto a
1
.

1
L = m
1
gL
CG1
c
1
m
2
gL
1
c
1
+m
2
gL
CG2
c
12
(3.17)
i).-Determinar la derivada parcial del Lagrangiano respecto a
2
.

2
L = m
2
gL
CG2
c
12
m
2
L
1
L
2

1
_

1
+

2
_
s
2
(3.18)
Ecuaciones de movimiento

1
=
d
dt

1
L

1
L +b
1

1
+K
1
sgn(

1
)

2
=
d
dt

2
L

2
L +b
2

2
+K
2
sgn(

2
)
(3.19)

1
= (m
1
L
2
1
+m
2
L
2
1
+m
2
L
2
2
+ 2m
2
L
1
L
2
c
2
)

+ (m
2
L
2
2
+m
2
L
1
L
2
c
2
)

2
(m
2
L
1
L
2
s
2
)

2
2

(2m
2
L
1
L
2
s
2
)

2
m
1
gL
CG1
c
1
m
2
gL
1
c
1
+m
2
gL
CG2
c
12
(3.20)

2
=
_
m
2
L
2
2
+m
2
L
1
L
2
c
2
_

1
+
_
m
2
L
2
2
_

2
(m
2
L
1
L
2
s
2
)

2
1
+m
2
gL
CG2
c
12
(3.21)
55
La representaci on matricial del modelo din amico, se basa en la siguiente expresi on:
= H (q) q +C (q, q) q +G(q)
2
+b ( q) +ksgn ( q) (3.22)
Donde:
Matriz de inercia.
H (q) =
_
H
11
H
12
H
21
H
22
_
(3.23)
Matriz de fuerzas de coriolis.
C (q, q) =
_
C
11
C
12
C
21
C
22
_
(3.24)
Los elementos de la matriz de nercia son:
H
11
= m
1
L
2
1
+m
2
L
2
1
+m
2
L
2
2
+ 2m
1
L
1
L
2
c
2
H
12
= m
2
L
2
2
+m
2
L
1
L
2
c
2
H
21
= m
2
L
2
2
+m
2
L
1
L
2
c
2
H
22
= m
2
L
2
2
(3.25)
Lo elementos de la matriz de coriolis son:
C
11
= m
2
L
1
L
2
s
2
C
12
= m
2
L
1
L
2
s
2
C
21
= 2m
2
L
1
L
2
s
2
C
22
= 0
(3.26)
56
Los elementos de gravedad son:
G
1
= m
1
gL
CG1
c
1
m
2
gL
1
c
1
+m
2
gL
CG2
c
12
G
2
= m
2
gL
CG2
c
12
(3.27)
Los elementos de la fricci on viscosa son:
b
1
b
2
(3.28)
Los elementos de la fricci on seca son:
k
1
sgn
k
2
sgn
(3.29)
57
3.2. Modelo dinamico y propiedades
3.3. Simulaci on digital en matlab para validaci on del modelo dinami-
co
Las simulaciones de los comportamientos de
1
,
2
,

1
,

2
, considerando un para torsional de cero,
T
1
= T
2
= 0 Nw. y una posici on inicial de los eslabones del robot de
1
=

2
y
2
= 0 . El experi-
mento consiste en soltar al robot desde esta posici on hasta que encuentre su punto de equilibrio
que es en la posici on de
1
=
3
2
rad y
2
= 0 rad.
Figura 3.6: Caida libre del robot (Torque =0)
58
0 5 10 15
2.5
2
1.5
1
0.5
0
0.5
1
1.5
2
Coordenada generalizada q1
t
q
1
Figura 3.7: Simulaci on del compor-
tamiento de
1
.
0 5 10 15
0.45
0.4
0.35
0.3
0.25
0.2
0.15
0.1
0.05
0
0.05
Coordenada Generalizada q2
t
q
2
Figura 3.8: Simulaci on del compor-
tamiento de
2
.
En las guras 3.6 y 3.7 se grafca la nueva posici on que adoptan las variables artculares al tener
un torque= 0 mismas que son :
1
=

2
y
2
= 0, al encontrar el punto de equilibrio.
0 5 10 15
4
3
2
1
0
1
2
Velocidad Angular dq1/dt
t
q
p
1
Figura 3.9: Simulaci on del compor-
tamiento de

1
.
0 5 10 15
0.4
0.3
0.2
0.1
0
0.1
0.2
0.3
0.4
0.5
0.6
Velocidad Angular dq2/dt
t
q
p
2
Figura 3.10: Simulaci on del compor-
tamiento de

2
.
En las guras 3.8 y 3.9 se grafca el comportamiento de la velocidad de las variables artculares
(
1
y
2
), como se puede observar que la velocidad parte de cero y va aumentando conforme
el robot cae en posici on vertical haciendo un movimiento pendular hasta encontrar el punto de
equilibrio y asi la velocidad tambien vuelve a cero.
59
3.4. Simulaci on digital en matlab para validaci on de las propiedades
dinamicas
Dado el modelo din amico de un robot manipulador:
M ()

+C
_
,

_

+G() +b

+Ksgn
_

_
= (3.30)
Tal que se cumplen las siguientes propiedades:
M () = M ()
T
:Matriz simetrica
X
T
M () X > 0 :Denida positiva
X
T
_

M () 2
_
C
_
,

___
X 0:Antisimetrica
Donde:
M (): Matriz de inercia.
M ()
T
: Matriz de inercia transpuesta.

M (): Derivada de lamatriz de inercia.


X: Vector de par ametros cualquiera.
X
T
: Vector de par ametros tranpuesto.
_
,

_
: Matriz de coriolis.
La simulaci on para validar las propiedades mencionadas est an representadas por las siguientes
gracas:
60
0 5 10 15
0
0.01
0.02
0.03
0.04
0.05
0.06
Definida Positiva
t
X
Figura 3.11: Propiedad denida positiva
X
T
M() X > 0 .
0 5 10 15
1
0.8
0.6
0.4
0.2
0
0.2
0.4
0.6
0.8
1
Simetrica
t
Y
Figura 3.12: Propiedad matriz simetrica
M() = M()
T
.
En las guras 3.10 y 3.11 se comprueban las propiedades de la din amica expuestas en las ecua-
ciones anteriores, donde se comprueba la propiedad denida positiva y propiedad matriz simetri-
ca.
0 5 10 15
1
0
1
2
3
4
5
6
7
8
9
x 10
5
Antisimetrica
t
Z
Figura 3.13: Propiedad antisimetrica
X
T
_

M() 2
_
C
_
,

___
X 0
En la gr aca 3.12 se muestra la propiedad anticimetrica del modelo din amico.
61
3.5. Conclusiones
En este captulo se obtuvo la din amica del robot de dos grados de libertad de manera detallada
la cual da origen a dos ecuaciones de par torcional las cuales se desarrollan por medio del metodo
de Euler-Langrage, validandose por medio de simulaci on por computadora en din amica libre y
con propiedades, teniendo como como conclusi on que al conocer el movimiento del robot nos
permite conocer el comportamiento y a partir de el denir la acci on de control m as eciente,
es decir, la que permita que el robot se desempe ne adecuadamente durante la ejecuci on de una
tarea.
Teniendo como base la din amica del robot que es en si las caracteristicas de movimiento nos
permitir a en este caso implementar el control adaptable que como ya se ha mencionado con
anterioridad es un control que se basa en la din amica del robot y no solo en los par ametros que
lo rigen. Asi el control adaptable tiene m as caractersticas que toma del robot y de las acciones
que lo llevan a la ejecuci on de un trabajo.
62
Captulo 4
Control adaptable del robot de 2 grados
de libertad
4.1. Introducci on
La adaptaci on es una caracterstica fundamental de los seres vivos que intentan mantener el equi-
librio siol ogico en medio de condiciones ambientales variables. Un procedimiento para proyectar
un sistema adaptivo es, entonces, considerar los aspectos adaptivos del comportamiento humano
o animal y desarrollar sistemas que en alguna medida se comporten an alogamente. [14]
Las caractersticas din amicas de las mayoria de los sistemas de control no son constantes por
divesas razones, como el deterioro de los componentes al trancurrir el tiempo, las modicaciones
en par ametros o en el medio ambiente. [14]
La adaptaci on implica la capacidad de autoajustarse o automodicarse en base a modicaciones
imprevisibles del medio o estructura. Los sistemas de control que tienen alg un grado de capacidad
de adaptaci on, se denominan sistemas de control adaptables. [14]
En un sistema de control adaptable, las caractersticas din amicas deben estar identicadas en
todo momento de manera que los par ametros de control o detecci on puedan ajustarse para man-
tener el funcionamiento optimo y acomodarse a los cambios ambientales, tambien lo hace ante
moderados errores de proyecto de ingenieria o incertidumbres y compensa la eventual falla de los
componentes menores del sistema, aumentando, por lo tanto, la conabilidad de todo el sistema.
[14]
En el dise no de controladores que se puedan adaptar a diferentes condiciones de operaci on desde
los 50s se utiliza un control por retro lineal de ganancia constante que actua en un rango de
operaci on (ganancia programada), pero este rango se ve reducido o deja de ser valido si las per-
turbaciones son grandes o desconocidas. Ejemplos de esto lo podemos ver en aviones, papeleras,
autopilos en la marina, etc.
63
4.1.1. Control adaptable
Controlador: Es el que se encarga de regular el movimiento de los elementos del manipulador y
todo tipo de acciones, c alculos y procesado de informaci on, que se realiza.
De acuerdo a los par ametros que utilice el control se pueden clasicar como:
Controlador de posici on, s olo interviene en el control de la posici on del elemento
terminal.
Control cinem atico, cuando adem as de la posici on se regula la velocidad.
Control din amico, se tiene en cuenta, tambien, las propiedades din amicas del robot,
motores y elementos asociados.
Control adaptativo, adem as de lo indicado en los anteriores controles, tambien se
considera la variaci on de las caractersticas del manipulador al variar la posici on.
Un sistema de control adaptable es un sistema que continua y autom aticamente identica las
caractersticas din amicas las compara con las caractersticas din amicas deseadas y usa la diferen-
cia para variar par ametros ajustables al sistema (Generalmente caractersticas del controlador)
o para generar una se nal de accionamiento de modo que se pueda mantener el funcionamiento
optimo con independencia de las variaciones ambientales. [2]
4.2. Principales esquemas de adaptaci on.
1. Ganancia programada
2. Control adaptable con modelo de referencia
3. Regulador autosintonizable
4. Control Dual
64
4.2.1. Modelo de referencia del control adaptable MRCA
El sistema adaptable con modelo de referencia (MRCA) fue originalmene propuesto para resolver
un problema en el cual las especicaciones de desempe no son dados en terminos de un modelo de
referencia. Este modelo dice como la salida del proceso idealmente debera responder a la se nal
de control.
Los MRCA pueden ser vistos como un sistema servoadaptable en el cual el desempe no deseado
es expresado en terminos de un modelo de referencia, el cual da la respuesta deseada a una se nal
de control. Esta es una manera conveniente para dar especicaciones a un problema de servo.
Los par ametros se modican en funci on de la retroalimentaci on del error, el cual es la diferencia
entre la salida del sistema y la salida del modelo de referencia.
Generalmente un modelo de referencia de un sistema de control adaptable puede ser esquemati-
zado en la siguiente gura. [15]
Figura 4.1: Modelo de referencia del control adaptable. [15]
65
1.-Una planta con par ametros desconocidos: asume que tiene conocimiento de la es-
tructura del sistema sin embargo los par ametros son desconocidos.Para las plantas
lineales, esto signica que el n umero de polos y el n umero ceros es conocido pero la
situaci on de polos y ceros no son. [15]
2.-Un modelo de referencia, el cual especica el rendimiento deseado del sistema:
Se usa para especicar la contestaci on ideal del systema del control adaptable al
orden externo. Intuitivamente proporciona la contestaci on de la planta ideal que el
mecanismo de adaptaci on debe buscar para ajustar los par ametros, esta opci on debe
satisfacer dos requisitos: El primero, debe reejar la especicaci on en la tarea de
control, como tiempo de levantamiento y caracterstica de dominio de frecuencia. El
segundo, esta conducta ideal debe ser lograble para el sistema de control adaptable,
hay un poco de coacci on inherente en la estructura del modelo de referencia (su orden
y grado relativo)dado la estructura supuesta del modelo de la planta. [15]
3.-Una ley de Control, que contiene los par ametros ajustables, tiene la capacidad para
permitir la posibilidad de rastrear la convergencia, es decir cuando los par ametros de
la planta son precisamente conocidos, los par ametros del controlador correspondientes
deben hacer el rendimiento de la planta identico al del modelo de referencia. Cuando
los par ametros de la planta no son conocidos, el mecanismo de adaptaci on ajustar a los
par ametros del controlador para que el perfecto rastreo sea asintoticamente logrado.
[15]
4.-Un mec anismo de adaptaci on se utiliza para ajustar los par ametros de la ley de
control. En el sistema de MRCA,la ley de adaptaci on busca los par ametros tal que
la contestaci on de la planta bajo el control adaptable se vuelva igual al modelo de
referencia, el objetivo de la adaptaci on es hacer que el error rastreado converja y
hacerlo cero. [15]
Es un control basado en el modelo del robot, sin embargo tiene la capacidad de estimar los
par ametros din amicos en lnea y efect ua una compensaci on variando sus par ametros ajustables.
Este tipo de controladores son ideales para aplicaciones de alto desempe noo a un bajo condiciones
de incertidumbre parametrica (masa y longitud de los eslabones, momentos de inercia, fricci on,
etc). Sin embargo, la estructura que dene los terminos no lineales del robot manipulador, son
necesarios para la sntesis del control. [15]
66
4.3. Parametrizaci on lineal del modelo dinamico
A continuaci on se efectua la par ametrizaci on del modelo din amico.
= y
Donde:
y: Nombrado regresor y est a constituido por terminos no lineales conocidos (derivados
de la formulaci on de Euler-Lagrange).
: Representa un vector de par ametros desconocidos (masa y longitudes de los es-
labones, momentos de inercia, fricci on etc.
: Representa el vector de torque de entrada.
Parametrizaci on de la primera ecuaci on de movimiento:

1
=
_

_(m
1
+m
2
) L
2
1
. .

1
+m
2
L
2
2
. .

2
+2 m
2
L
1
L
2
. .

3
c
2
_

1
+
_
_
_m
2
L
2
2
. .

2
+m
2
L
1
L
2
. .

3
c
2
_
_
_

_
_
_m
2
L
1
L
2
. .

3
s
2
_
_
_

2
2
+
_
_
_2m
2
L
1
L
2
. .

3
s
2
_
_
_

2
m
1
gL
cg1
. .

4
c
1
m
2
gL
1
. .

5
c
1
+m
2
gL
cg2
. .

6
c
12
+ b
1
..

1
+ K
1
..

8
sgn
_

1
_
(4.1)
Parametrizaci on de la segunda ecuaci on de movimiento::

2
=
_
_
_m
2
L
2
2
. .

2
+m
2
L
1
L
2
. .

3
c
2
_
_
_

1
+
_
_
_m
2
L
2
2
. .

2
_
_
_

_
_
_m
2
L
1
L
2
. .

3
s
2
_
_
_

2
1
+m
2
gL
cg2
. .

6
c
12
+ b
2
..

2
+K
2
..

10
sgn
_

2
_
(4.2)
La representaci on matricial equivalente del modelo din amico es:
= y
_
,

,

_
(4.3)
67
_

1

2
_
21
=
_
_
y
1
_
,

,

_
y
2
_
,

,

_
_
_
210

10
_

_
101
(4.4)
_

1

2
_
=
_
_

1
+

2
2c
2

1
+c
2

2
s
2

2
2
+ 2s
2

2
c
1
c
1
c
12

1
sgn
_

1
_
0 0
0

1
+

2
c
2

1
s
2

2
1
0 0 c
12
0 0

2
sgn
_

2
_
_
_

_
(m
1
+m
2
) L
2
1
m
2
L
2
2
m
2
L
1
L
2
m
1
gL
cg1
m
2
gL
1
m
2
gL
cg2
b
1
K
1
b
2
K
2
_

_
(4.5)
Vector de par ametros:

1
= (m
1
+m
2
) L
2
1

2
= m
2
L
2
2

3
= m
2
L
1
L
2

4
= m
1
gL
cg1

5
= m
2
gL
1

6
= m
2
gL
cg2

7
= b
1

8
= K
1

9
= b
2

10
= K
2
(4.6)
68
4.4. Comprobaci on del regresor y del vector de parametros
La comprobaci on del regreesor de elemetos lineales y el vector de par ametros esta dada por la
siguiente expresi on:
y
_
,

,

_
=
r
(4.7)
Donde:
y: Representa a un regresor lineal que depende de posici on y velocidad artcular.
: Representa un vector de par ametros y que dependen de las masas y longitudes de
los eslabones.

r
: Representa el torque resultante de la par ametrizaci on del modelo din amico.

r
= 0 (4.8)
As cumpliendose la anterior ecuaci on que describe el torque del modelo din amico menos el torque
resultante de la parametrizaci on del mismo modelo debe, quedar en cero ya que del primer torque
se derivo el segundo.
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
1
0.8
0.6
0.4
0.2
0
0.2
0.4
0.6
0.8
1
TrT=0
t
Figura 4.2: Validaci on del regresor y el vector de par ametros
69
4.5. Control adaptable pasivo robusto
Considerando el control par calculado pasivo:
=
_

r
+N
_

,

,

r
_
Kds (4.9)
Su parametrizaci on lineal es:
= y
r
_
,

,

r
,

r
_
Kds = y
r
Kds (4.10)
Dado que este control garantiza que:
(t)
d
(t)
Sin embargo.
,=

es el par ametro real, entonces los terminos no lineales no se cancelan durante la prueba
de estabilidad y es posible que:
(t) ,=
d
(t)
e inclusive que:
(t)
Si
,=

Entonces la ecuaci on de lazo cerrado con el control par calculado pasivo parametrizado lin-
ealmente y con en vez de es:
H ()

+N
_
,

_
= H
_

r
+N
_

,

,

r
_
Kds (4.11)
Donde:
y
r
= H
_

r
+N
_

,

,

r
_
(4.12)
70
Sumando y restando y
r
_
,

,

r
,

r
_
a la ecuaci on anterior, se tiene lo siguiente:
H ()
_

r
_
+N
_
,

,


r
_
= y
r
( ) Kds
=
(4.13)
Si:
s =


r
s = q q
r
H () s = N
_
,

, s
_
+y
r
Kds (4.14)
El control es :
= y
r
Kds

= y
T
r
s
Denido como control par calculado adaptable pasivo:
Con el robot parametrizado linealmente:
_

1

2
_
=
_
_
y
1
_
,

,

_
y
2
_
,

,

_
_
_

Dado el regresor y
r
siguiente:
_

1

2
_
=
_
_

r1

r1
+

r2
2c
2

r1
+c
2

r2
s
2

2
r2
2s
2

r1

r2
c
1
c
1
c
12

r1
sgn
_

r1
_
0 0
0

r1
+

r2
c
2

r1
s
2

2
r1
0 0 c
12
0 0

r2
sgn
_

r2
_
_
_
=
_
y
r11
y
r12
y
r13
y
r14
y
r15
y
r16
y
r17
y
r18
y
r19
y
r110
y
r21
y
r22
y
r23
y
r24
y
r25
y
r26
y
r27
y
r28
y
r29
y
r210
_
(4.15)
71
Ademas de que:
s =


_

_
=


d
+
s =

+
=
d

r
=

(4.16)
donde:
s:Manifould de error.

r
:Referencia nominal.
El control queda denido como:
= y
r
Kds
_

1

2
_
=
_
y
r11
y
r12
y
r13
y
r14
y
r15
y
r16
y
r17
y
r18
y
r19
y
r110
y
r21
y
r22
y
r23
y
r24
y
r25
y
r26
y
r27
y
r28
y
r29
y
r210
_

_

1

2

3

4

5

6

7

8

9

10
_

_
Kd
1
0
0 Kd
2
_

1
+
1

2
+
2

2
_
(4.17)
72

= y
T
r
s
_

_

1

2

3

4

5

6

7

8

9

10
_

_
=
_

_
y
r11
y
r21
y
r12
y
r22
y
r13
y
r23
y
r14
y
r24
y
r15
y
r25
y
r16
y
r26
y
r17
y
r27
y
r18
y
r28
y
r19
y
r29
y
r110
y
r210
_

1
+
1

2
+
2

2
_
(4.18)
4.6. Mecanismos para ajustar los parametros en el MRCA.
1. Metodo del Gradiente (Regla MIT)
2. Aplicaci on de la teora de estabilidad (Estabilidad de Lyapunov.)
4.7. Prueba de estabilidad con el segundo metodo de Lyapunov
La teora de estabilidad de Lyapunov tiene como objetivo el estudiar el comportamiento de sis-
temas din amicos descritos por ecuaciones diferenciales de la forma:
x(t) = f (t, x(t)) , x(0) = '
n
, t 0 (4.19)
donde el vector x(t) '
n
es referido como el estado del sistema din amico representado por la
anterior ecuaci on y x(0) = '
n
es denida como la condici on inicial.f : '
+
'
n
es una funci on
continua en t y x(t) con las siguientes propiedades:
73
La ecuaci on 4,15 tiene una soluci on unica en el intervalo [0, ] correspondiente a cada condici on
inicial de x(0)
Si x(t) es la soluci on de 4,15 correspondiente a la condici on inicial x(0), entonces x(t) depende
de una manera continua de la condici on inicial x(0).
Si la funci on f no depende explcitamente del tiempo, esto es, f (t, x(t)) = f (x(t)) la ecuaci on
4,15 es denominada aut onoma.
Los principales conceptos de la teora de Lyapunov son: estabilidad, estabilidad asint otica y
estabilidad exponencial.
H (q) q +C (q, q) q +G(q) +F ( q) =
= Y r

kds

= Y r
T
s
s = q qr
qr = qd (q qd)
s = q qd (q qd)
s = q qd +(q qd)
s = q +q
q = q qd
q = q qd
H q +C q +G+F = Y r

kds Y r
Y r = H qr +C qr +G+F
H q +C q +G+F Y r = Y r

Y r kds
H q +C q +G+F H qr C qr GF = Y r
_


_
kds
H ( q qr) +C ( q qr) = Y r kds
=


H s +Cs = Y r kds
Sistema de lazo cerrado
(4.20)
74
4.7.1. Prueba de estabilidad del control adaptable
Proponiendo la siguiente funci on de Lyapunov:
V (s, ) =
1
2
s
T
H (q) s +
1
2

V (s, ) =
1
2
s
T
_
H s +

Hs
_
+
1
2
s
T
Hs +
1
2

T
_

_
+
1
2

V (s, ) =
1
2
s
T
H s +
1
2
s
T

Hs +
1
2
s
T
Hs +
1
2

+
1
2

H s +Cs = Y r kds

V (s, ) = s
T
H s +
1
2
s
T

Hs +
T

H s = Cs +Y r kds

V (s, ) = s
T
Cs +Y r kds +
1
2
s
T

Hs +
T

V (s, ) =
1
2
s
T

Hs s
T
Cs +s
T
Y r s
T
kds +
T

1
2
s
T

Hs s
T
Cs = 0

V (s, ) = s
T
Y r s
T
kds +
T

1
_
Y r
T
s
_

V (s, ) = s
T
Y r s
T
kds
T
Y r
T
s

V (s, ) = s
T
kds
Donde
kd = kd
T
kd > 0
(4.21)
de la anterior ecuaci on se concluye que

V (S, ) < 0 y V (t) V (0). Por consiguiente L

y S L
2
L

, del lema de Barbalat,


S 0,
t
(4.22)
resolviendo S =

q +q se tiene que q q
d
. [4]
75
4.8. Conclusiones
En este captulo se presento la metodologa de obtenci on del control adaptable utilizando la
propiedad de parametrizaci on lineal del modelo din amico basado en la formulaci on de Euler-
Lagrange, teniendo como resultado un producto matricial denidos como un regresor lineal que
depende de posici on y velocidad articular y un vector de par ametros que dependen de las masas y
longitudes de los eslabones. As mismo se valido el control adaptable en seguiminto de trayectorias
teniendo una buena respuesta en la convergencia en el espacio operacional y artcular asi como
la reducci on del error a cero.
En este trabajo se presento un control adaptable con modelo de referencia el cual puede ser visto
como un sistema servoadaptable en el cual el desempe no deseado es expresado en terminos de
un modelo de referencia, el cual da la respuesta deseada a una se nal de control.
As este tipo de control modica los par ametros en funci on de la retroalimentaci on del error,
el cual es la diferencia entre la salida del sistema y la salida del modelo de referencia en lo
especicado en un trabajo que el robot desempe naria.
76
Captulo 5
Simulaciones del control adaptable con
seguimiento de trayectorias
5.1. Introducci on
En este captulo se presentan las gr acas de las simulaciones digitales que comprueban el control.
Se realiza una tarea de seguimiento de trayectorias en el espacio articular (espacio angular) y
espacio de trabajo u operacional (espacio cartesiano).
Se propone para la validaci on del control adaptable el seguimiento de una rosa de tres petalos
y una circunferencia en la cual se gracar an las coordenadas generalizadas, coordenadas opera-
cionales, espacio operacional, error articular, error operacional y el vector de par ametros.
5.2. Referencias para el seguimiento de trayectorias
La simulaci on digital, del controlador previamente presentado, consiste en efectuar el seguimiento
de una trayectoria en el espacio operacional.
A continuaci on se representan las ecuaciones de la rosa de tres petalos:
x(t) = cos () +h (5.1)
y (t) = sen() +k (5.2)
77
Donde:
= t
= rCos (3)
r = 0,05
h = 0,2
k = 0,4
= 0,1
Se asume que el robot parte del reposo con una condici on inicial de posici on, denida en:
1
=

2
y
2
=

2
, sus respectivas ganancias son: = 5, = 1,3 y K
d
= 20.
Figura 5.1: Condici on inicial de posici on
78
A continuaci on se representan las ecuaciones de la circunferencia:
x(t) = h +r cos (wt) (5.3)
y (t) = k +r sin (wt) (5.4)
Donde:
r = 0,05
w = 1
h = 0,2
k = 0,4
Se asume que el robot parte del reposo con una condici on inicial de posici on, denida en:
1
=

2
y
2
=

2
, sus respectivas ganancias son: = 5, = 1,3 y K
d
= 20.
Figura 5.2: Condici on inicial de posici on
79
5.3. Simulaciones en el espacio artcular y operacional
5.3.1. Simulaciones en el trazo de una rosa de tres petalos
0 5 10 15 20 25 30
2.1
2
1.9
1.8
1.7
1.6
1.5
1.4
Coordenada Generalizada q1 y qd1 (Real y Deseada)
t
q
1

q
d
1
q1
qd1
Figura 5.3: Coordenada generalizada
1
y
d1
(real y deseada)
0 5 10 15 20 25 30
2
1.5
1
0.5
0
0.5
1
1.5
2
Coordenada Generalizada q2 y qd2 (Real y Deseada)
t
q
2

q
d
2
q2
qd2
Figura 5.4: Coordenada generalizada
2
y
d2
(real y deseada)
En las gr acas 5.3 y 5.4 se muestra la convergencia que hace el control adaptable de las coorde-
nadas generalizadas y
d
(real y deseada) en el seguimiento de la trayectoria de referencia que
en este caso es una rosa de tres petalos.
0 5 10 15 20 25 30
0.4
0.3
0.2
0.1
0
0.1
0.2
0.3
Coordenada Operacional X y px (Real y Deseada)
t
X

p
x
X
px
Figura 5.5: Coordenada operacional X y
Px (real y deseada)
0 5 10 15 20 25 30
0.8
0.75
0.7
0.65
0.6
0.55
0.5
0.45
0.4
0.35
Coordenada Operacional Y y py (Real y Deseada)
t
Y

p
y
Y
py
Figura 5.6: Coordenada operacional Y y
Py (real y deseada)
En las gr acas 5.5 y 5.6 se muestra la convergencia que hace el control adaptable de las coorde-
nadas operacionales (X,Y) y (Px,Py) en el seguimiento de la trayectoria de referencia.
80
0.16 0.18 0.2 0.22 0.24 0.26 0.28
0.48
0.46
0.44
0.42
0.4
0.38
0.36
0.34
0.32
Espacio operacional: (X vs Y) y (px vs py) (Real y Deseado)
Xpx
Y

p
y
Figura 5.7: Espacio operacional (X vs Y)
y (px vs py) (real y deseada)
0 5 10 15 20 25 30
0.35
0.3
0.25
0.2
0.15
0.1
0.05
0
Error Articular 1 (eq1)
eq1
t
Figura 5.8: Error artcular 1 (eq1)
La gr aca 5.7 se muestra el seguimiento de trayectoria que hace el control adaptable en el espacio
operacional de la rosa de tres petalos. La gr aca 5.8 se muestra el error artcular de
1
, el cual
lo reduce a cero al estabilizar el control en el seguimiento de trayectoria.
0 5 10 15 20 25 30
0
0.5
1
1.5
2
2.5
3
3.5
Error Articular 2 (eq2)
eq2
t
Figura 5.9: Error articular 2 (eq2)
0 5 10 15 20 25 30
0.1
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
Error Operacional Ex=pxX
Ex=pxX
t
Figura 5.10: Error operacional Ex=px-X
En la gr aca 5.9 se muestra el error de
2
y la gr aca 5.10 muestra el error operacional Ex, ambos
errores se reducen a cero al estabilizar el control en el seguimiento de trayectoria.
81
0 5 10 15 20 25 30
0.05
0
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
Error Operacional Ey=pyY
Ey=pyY
t
Figura 5.11: Error operacional Ey=py-Y
0 5 10 15 20 25 30
0.15
0.1
0.05
0
0.05
0.1
0.15
0.2
Vector de Parametros
t
Figura 5.12: Vector de par ametros
En la gr aca 5.11 se muestra el error operacional Ey el cual se reduce a cero al estabilizar el
control la trayectoria de referncia. La gr aca 5.12 muestra el vector de par ametros estimados.
0 5 10 15 20 25 30
0.05
0
0.05
0.1
0.15
0.2
0.25
0.3
Vector de Parametros
t
Figura 5.13: Vector de par ametros
0 1 2 3 4 5 6
0.5
0
0.5
1
1.5
2
2.5
3
3.5
Errores articulares y operacionales
t
error1
error2
errorx
errory
Figura 5.14: Errores articulares y opera-
cionales
En la gr aca 5.13 se muestra el vector de par ametros estimados del control adaptable. En la
gr aca 5.14 se muestran los errores articulares y operacionales generados en el seguimiento de
trayectoria reduciendoce a cero.
82
5.3.2. Simulaciones en el trazo de una circunferencia
0 1 2 3 4 5 6 7 8 9 10
2.2
2.1
2
1.9
1.8
1.7
1.6
1.5
1.4
Coordenada Generalizada q1 y qd1 (Real y Deseada)
t
q
1

q
d
1
q1
qd1
Figura 5.15: Coordenada generalizada
1
y
d1
(real y deseada)
0 1 2 3 4 5 6 7 8 9 10
2
1.5
1
0.5
0
0.5
1
1.5
2
Coordenada Generalizada q2 y qd2 (Real y Deseada)
t
q
2

q
d
2
q2
qd2
Figura 5.16: Coordenada generalizada
2
y
d2
(real y deseada)
En las gr acas 5.15 y 5.16 se muestra la convergencia que hace el control adaptable de las coor-
denadas generalizadas y
d1
(real y deseada) en el seguimiento de la trayectoria de referencia
que en este caso es una circunferencia.
0 1 2 3 4 5 6 7 8 9 10
0.4
0.3
0.2
0.1
0
0.1
0.2
0.3
Coordenada Operacional X y px (Real y Deseada)
t
X

p
x
X
px
Figura 5.17: Coordenada operacional X
y Px (real y deseada)
0 1 2 3 4 5 6 7 8 9 10
0.8
0.75
0.7
0.65
0.6
0.55
0.5
0.45
0.4
0.35
0.3
Coordenada Operacional Y y py (Real y Deseada)
t
Y

p
y
Y
py
Figura 5.18: Coordenada operacional Y
y Py (real y deseada)
En las gr acas 5.17 y 5.18 se muestra la convergencia que hace el control adaptable de las co-
ordenadas operacionales (X,Y) y (PX,PY) real y deseada en el seguimiento de la trayectoria de
referencia.
83
0.12 0.14 0.16 0.18 0.2 0.22 0.24 0.26 0.28
0.48
0.46
0.44
0.42
0.4
0.38
0.36
0.34
0.32
Espacio operacional: (X vs Y) y (px vs py) (Real y Deseado)
Xpx
Y

p
y
Figura 5.19: Espacio operacional (X vs
Y) y (px vs py) (real y deseada)
0 1 2 3 4 5 6 7 8 9 10
0.35
0.3
0.25
0.2
0.15
0.1
0.05
0
Error Articular 1 (eq1)
eq1
t
Figura 5.20: Error artcular 1 (eq1)
La gr aca 5.19 se muestra el seguimiento de trayectoria que hace el control adaptable en el es-
pacio operacional de la circunferencia. La gr aca 5.20 se muestra el error artcular de
1
, el cual
lo hace reducir a cero al estabilizar el control en el seguimiento de trayectoria.
0 1 2 3 4 5 6 7 8 9 10
0
0.5
1
1.5
2
2.5
3
3.5
Error Articular 2 (eq2)
eq2
t
Figura 5.21: Error artcular 2 (eq2)
0 1 2 3 4 5 6 7 8 9 10
0.1
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
Error Operacional Ex=pxX
Ex=pxX
t
Figura 5.22: Error operacional Ex=px-X
En la gr aca 5.21 se muestra el error de
2
y la gr aca 5.22 muestra el error operacional Ex,
ambos errores se hacen cero al estabilizar el control en el seguimiento de trayectoria.
84
0 1 2 3 4 5 6 7 8 9 10
0.05
0
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
Error Operacional Ey=pyY
Ey=pyY
t
Figura 5.23: Error operacional Ey=py-Y
0 1 2 3 4 5 6 7 8 9 10
0.15
0.1
0.05
0
0.05
0.1
0.15
0.2
0.25
Vector de Parametros
t
Figura 5.24: Vector de par ametros
En la gr aca 5.23 se muestra el error operacional EY el cual se hace cero al estabilizar el control
la trayectoria de referncia. La gr aca 5.24 muestra el vector de par ametros estimados.
0 1 2 3 4 5 6 7 8 9 10
0.05
0
0.05
0.1
0.15
0.2
Vector de Parametros
t
Figura 5.25: Vector de par ametros
0 1 2 3 4 5 6 7 8 9 10
0.5
0
0.5
1
1.5
2
2.5
3
3.5
Errores articulares y operacionales
t
error1
error2
errorx
errory
Figura 5.26: Errores articulares y opera-
cionales
En la gr aca 2.25 se muestra el vector de par ametros estimados del control adaptable. El gr aca
5.26 se muestran los errores articulares y operacionales generados en el seguimiento de trayectoria
haciendose cero.
85
5.4. Conclusiones
En este captulo se presentar on las simulaciones en espacio operacional y articular, proponiendo
dos ecuaciones, las cuales son una rosa de tres petalos y una circunferencia, teniendo una respues-
ta del control adaptable favorable en el seguimiento y convergecia de la trayectoria propuesta de
dichas ecuaciones, tanto en el espacio operacional, articular y el error reducido a cero.
As como tambien se puede observar el las primeras gr acas donde el control hace convergencia
en los angulos que el robot adquire en el seguimiento de la trayectoria de manera favorable en el
transcurso del recorrido manteniendose hasta terminar la referencia, lo cual nos demuestra que el
control de lazo cerrado adaptable es correcto ya que no se pierde en el seguimiento de la misma.
Lo mismo pasa en las gr acas de coordenadas generalizadas que son retroalimentadas mediante
la referencia en la rosa de tres petalos y la circunferencia.
En los errores que adaquieren las variables artculares se puede obsevar que son reducidos a
cero al momento de llegar a la referencia deseada, la cual reduce notablemente el error de estado
estable que los controles cl asicos no lo hacen.
El las gr acas de los vectores de par ametros que representan las masas, logitudes de los es-
labones,momentos de inercia ...etc. al momento de encontrar su valor estimado tienden a esta-
bilizarse lo cual hay algunos que no lo hacen ya que se requiere de una se nal persistente que los
haga estabilizar.
86
Captulo 6
Conclusiones y perspectivas
6.0.1. Conclusiones
El control adaptativo se presenta como una de las alternativas m as ecientes para hacer con-
trol autom atico. Por ejemplo controlar el movimiento de un robot as como tambien el control
de procesos industriales. Mientras en el control cl asico los sistemas a considerar son lineales
y de par ametros invariantes en el tiempo, en el control adaptativo se consideran sistemas con
par ametros variantes en el tiempo. Debido a esto se tiene la posibilidad de comparar el desempe no
presente del sistema con el desempe no optimo o deseado, ya que se tiene informaci on permanente
del mismo. De esta manera es posible identicar continuamente el proceso. Todo lo anterior se
logra gracias a que los par ametros del sistema se ajustan autom aticamente.
En este trabajo de tesis se present o una metodologa para implementar una estrategia de control
adaptable pasivo robusto en robots manipuladores. Se utiliz o la propiedad de parametrizaci on
lineal del modelo din amico basado en la formulaci on de Euler-Lagrange, describiendo un produc-
to matricial entre el regresor de elementos no lineales tpico del caso de estudio (robot planar de
2gdl.) y un vector de par ametros descrito por masas, longitudes, centros de masa, momentos de
inercia, fricci on viscosa y fricci on seca.
El control es del tipo Slotine-Li y se aplico como referencia en regulaci on y seguimiento de
trayactorias. Para ello el control se efectua en el espacio artcular y se visualiza en el espacio de
trabajo por lo que el control sugiere que el robot manipulador tenga sensores de posici on y ve-
locidad artcular. Adem as se requiere del conocimiento de la cinem atica de posici on y diferencial,
describiendo su obtenci on y comprobaci on en simulaci on digital.
El control adaptable se ha desarrollado basicamente en dos areas: modernizaci on y dise no de
reguladores mismos que estudian que permitan un conocimiento en forma autom atica advirtien-
do los cambios en su din amica sin intervenci on humana, as como buscar algoritmos de control
cuyos par ametros de ajuste esten directamente expresados en funci on de los par ametros del pro-
ceso.
En terminos globales el control adaptable es la nueva forma de hacer control ya que los controles
87
cl asicos est an dise nados e implementados bajo condiciones ideales, en otras palabras solo se basan
en los par ametros que los rigen, siendo que en la realidad no es asi, es por tal motivo que estos
controles pueden no ser precisos en la ejecuci on de una tarea.
El control adaptable utiliza par ametros de referencia para ver si ha llagado a la posici on deseada
y sino corregirlas, puede pasar el tiempo en un proceso teniendo desgaste en el mec anismo con-
trolado pero como este toma en cuenta su din amica har a una compensaci on en fuerza y posici on
para llegar a la referencia deseada.
6.0.2. Perpectivas
Este trabajo motiva a continuar con las contribuciones siguientes:
1.-Implementaci on experimental.
2.-Aplicaci on con seguimiento perfecto.
3.-Gereradores de base de tiempo y convergencia en tiempo nito.
4.-Control adaptable cartesiano con prop ositos de retroalimentaci on por visi on articial.
88
Captulo 7
Apendice de programas, glosario,
anexos y lista de abreviaturas
7.1. Introducci on
Los programas fuer on hechos en el simulador digital matlab y acontinuaci on se presenta una
breve introducci on al lenguaje.
MatLab es un programa interactivo para computaci on numerica y visualizaci on de datos. Es
ampliamente usado por Ingenieros de Control en el an alisis y dise no, posee adem as una extraor-
dinaria versatilidad y capacidad para resolver problemas en matem atica aplicada, fsica, qumica,
ingeniera, nanzas y muchas otras aplicaciones. Est a basado en un sosticado software de matri-
ces para el an alisis de sistemas de ecuaciones. Permite resolver complicados problemas numericos
sin necesidad de escribir un programa.
MATLAB es un entorno de computaci on y desarrollo de aplicaciones totalmente integrado
orientado para llevar a cabo proyectos en donde se encuentren implicados elevados c alculos
matem aticos y la visualizaci on gr aca de los mismos.
MATLAB integra an alisis numerico, c alculo matricial, proceso de se nal y visualizaci on gr aca en
un entorno completo donde los problemas y sus soluciones son expresados del mismo modo en
que se escribiran tradicionalmente, sin necesidad de hacer uso de la programaci on tradicional.
El nombre de MATLAB proviene de la contracci on de los terminos MATrix LABoratory y fue
inicialmente concebido para proporcionar f acil acceso a las libreras LINPACK y EISPACK, las
cuales representan hoy en dia dos de las libreras m as importantes en computaci on y c alculo
matricial.
MATLAB es un sistema de trabajo interactivo cuyo elemento b asico de trabajo son las matrices.
Comandos reservados de matlab utilizados para el desarrollo de los programas.
sin - seno.
89
cos - coseno.
atan - tangente inversa.
ode45 - metodo Runge-Kutta-Fehlberg de largo de paso variable que combina un
metodo de orden cuatro con uno de orden cinco.
plot - crea una gr aca de vectores o columnas de matrices.
tittle - a nade ttulo a la gr aca.
xlabel - a nade encabezamiento al eje-x.
ylabel - a nade encabezamiento al eje-y.
grid - crea lneas entrecortadas.
axis Escala y apariencia de los ejes.
7.1.1. Validaci on del modelo cinematico
% Validacion del Modelo Cinematico de un Robot R2
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
close all
clear all
clc
% Longitudes de los Eslabones
L1=1;
L2=1;
lambda=.1;
h=.3;
k=.5;
f=1;
w=2*pi*f;
r=.05;
% Define las Coordenadas Operacionales
t=0:0.01:35;
fi=lambda*t;
ro=r*cos(3*fi);
X=ro.*cos(fi)+h;
90
Y=ro.*sin(fi)+k;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Calculo del Modelo Cinematico Inverso de Posicion
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Variable Articular 2
teta_rad_inv2= acos((X.^2+Y.^2-(L1.^2+L2.^2))/(2*L1*L2));
teta_grad_inv2=teta_rad_inv2*180/pi
% Variable Articular 1
alfa=atan2(Y,X);
beta=acos((L1.^2+L2.^2-(X.^2+Y.^2))/(2*L1*L2));
gamma=asin((L2*sin(beta))/sqrt(X.^2+Y.^2));
if teta_rad_inv2<0
teta_rad_inv1=alfa+gamma;
else
teta_rad_inv1=alfa-gamma;
end
teta_grad_inv1=teta_rad_inv1*180/pi
% Calculo del Modelo Cinematico Directo de Posicion
X2=L1*cos(teta_rad_inv1)+L2*cos(teta_rad_inv1+teta_rad_inv2)
Y2=L1*sin(teta_rad_inv1)+L2*sin(teta_rad_inv1+teta_rad_inv2)
figure(1)
plot(t,X,-b,t,X2,--r)
grid
title (Coordenadas Operacionales)
xlabel (Tiempo (segundos))
ylabel (X,Y)
legend(:X,:X2)
91
figure(2)
plot(t,Y,-b,t,Y2,--r)
grid
title (Coordenadas Operacionales)
xlabel (Tiempo (segundos))
ylabel (X,Y)
legend(:Y,:Y2)
figure(3)
plot(X2,Y2,-r)
grid
title (Espacio de Trabajo)
xlabel(Coordenada Operacional X)
ylabel (Coordenada Operacional
Y)
figure(4)
plot(t,teta_grad_inv1,-b,t,teta_grad_inv2,-r)
grid
title(Coordenadas Generalizadas)
xlabel (Tiempo (segundos))
ylabel (Teta1 y Teta2)
legend(:Teta1,:Teta2)
7.1.2. Validaci on del modelo dinamico y sus propiedades del robot 2 GDL (grados de
libertad).
7.1.3. C odigo fuente dinamica
% Programa para el modelo dinamico de un robot R2-planar
%Desarrollado por Victor Callejas Guerrero
function dx = Dinamica(t,x)
global dx
m1=0.45; % masas de los eslabones
m2=0.25;
l1=0.35; % longitud de los eslabones
l2=0.35;
92
lcg1=0.5*l1; % longitud al centro de masas
lcg2=0.5*l2;
g=9.81; % Coeficiente de gravitaci on
% Friccion Seca o Coulomb
k1=0.1;
k2=0.05;
beta=10; % k*tanh(beta*x)
% Fricci on Viscosa
b1=0.35;
b2=0.25;
% Matriz de Inercia
H11=(m1+m2)*l1.^2+m2*(2*l1*l2*cos(x(3))+l2);
H12=m2*(l1*l2*cos(x(3))+l2.^2);
H21=m2*(l1*l2*cos(x(3))+l2.^2);
H22=m2*l2.^2;
%Vector de Fuerzas de Coriolis y de Fuerzas Centripetas
C11=-2*m2*l1*l2*sin(x(3))*x(4);
C12=-m2*l1*l2*sin(x(3))*x(4);
C21=m2*l1*l2*sin(x(3))*x(2);
C22=0;
%Matriz de Gravedad
G1=(m1*lcg1*cos(x(1))+m2*l1*cos(x(1))+m2*lcg2*cos(x(1)+x(3)))*g;
G2=m2*lcg2*cos(x(1)+x(3))*g;
%Matriz de Fricci on Viscosa y Seca
Fr1=b1*x(2)+k1*tanh(beta*x(2));
Fr2=b2*x(4)+k2*tanh(beta*x(4));
% Variables Articulares y Derivadas
q=[x(1);x(3)];
qp=[x(2);x(4)];
% Matrices del robot
H=[H11,H12;H21,H22];
C=[C11,C12;C21,C22];
G=[G1;G2];
93
Fr=[Fr1;Fr2];
N=Fr+C*qp+G;
% Posicion deseada
qd1=pi/2;
qd2=0;
qdp1=0;
qdp2=0;
% Ecuaciones de error
qd=[qd1;qd2];
qdp=[qdp1;qdp2];
E=qd-q;
DE=qdp-qp;
kp1=64;
kp2=64;
kd1=18;
kd2=18;
kp=[kp1,0;0,kp2];
kd=[kd1,0;0,kd2];
% Ecuaci on de control
T=0;
% Ecuaciones de Estado
qpp=inv(H)*(T-N);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%propiedades de la dinamica
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%Derivada de la Matriz de Inercia
DH11=-m2*(2*l1*l2*sin(x(3))*x(4));
DH12=-m2*(l1*l2*sin(x(3))*x(4));
DH21=-m2*(l1*l2*sin(x(3))*x(4));
DH22=0; DH=[DH11,DH12;DH21,DH22];
% Un punto espacial cualquiera
P=[-.1;-.2];
94
% PROP debe ser cero
PROP=P*(DH-2*C)*P;
% Imprime PROP cuando su valor absoluto es mayor que 1e-6
if(abs(PROP)<1e-6),
[Propiedad de la Matiz Antisim etrica]
PROP=P*(DH-2*C)*P;
x(7)=abs(PROP);
end
x(5)=det(H);
if det(H)>=0
[definida positiva]
else
[no definida positiva]
end
if (H-transpose(H))==0
[simetrica]
x(6)=0;
else
[no simetrica]
x(11)=1;
end
dx(1,1)=x(2);
dx(2,1)=qpp(1);
dx(3,1)=x(4);
dx(4,1)=qpp(2);
dx(5,1)=x(5);
dx(6,1)=x(6);
dx(7,1)=x(7);
7.1.4. C odigo script dinamica1
% Programa para el modelo dinamico de un robot R2-planar
%Desarrollado por Victor Callejas Guerrero
95
clear all
close all
clc
global dx
dx=zeros(7,1);
options=odeset(MaxStep,0.1,InitialStep,0.1);
[t,x]=ode45(Dinamica,[0 15],[1.5707 0 0 0 0 0 0],options);
% Posicion deseada
qd1=pi/2;
qd2=0;
qdp1=0;
qdp2=0;
% Ecuaciones de error
qd=[qd1;qd2];
qdp=[qdp1;qdp2];
E1=qd1-x(:,1);
E2=qd2-x(:,3);
m1=0.45; % masas de los eslabones
m2=0.25;
l1=0.35; % longitud de los eslabones
l2=0.35;
% Elementos de la matriz de inercias
H11=(m1+m2)*l1.^2+m2*(2*l1*l2*cos(x(:,3))+l2);
H12=m2*(l1*l2*cos(x(:,3))+l2.^2);
H21=m2*(l1*l2*cos(x(:,3))+l2.^2);
H22=m2*l2.^2;
%Vector de Fuerzas de Coriolis y de Fuerzas Centripetas
C11=-2*m2*l1*l2*sin(x(3))*x(4);
C12=-m2*l1*l2*sin(x(3))*x(4);
C21=m2*l1*l2*sin(x(3))*x(2);
C22=0;
96
figure(1)
%subplot(3,2,1);
plot(t,x(:,1),b);
title(Coordenada generalizada q1);
xlabel(t);
ylabel(q1);
grid
%axis([0 6 0 1])
figure(2)
%subplot(3,2,3);
plot(t,x(:,3),b);
title(Coordenada Generalizada q2);
xlabel(t);
ylabel(q2);
grid
%axis([0 6 -1 2.5])
figure(3)
%subplot(3,2,5);
plot(t,x(:,2),b);
title(Velocidad Angular dq1/dt);
xlabel(t);
ylabel(qp1);
grid
%axis([0 6 -1.5 1])
figure(4)
%subplot(3,2,2);
plot(t,x(:,4),b);
title(Velocidad Angular dq2/dt);
xlabel(t);
ylabel(qp2);
grid
%axis([0 6 -1 1])
figure(5)
plot(t,x(:,5),b);
97
title(Definida Positiva);
xlabel(t);
ylabel(X);
grid
%axis([0 6 -1 1])
figure(6)
plot(t,x(:,6),b);
title(Simetrica);
xlabel(t);
ylabel(Y);
grid
%axis([0 6 -1 1])
figure(7)
plot(t,x(:,7),b);
title(Antisimetrica);
xlabel(t);
ylabel(Z);
grid
%axis([0 6 -1 1])
end
7.1.5. Validaci on del control adaptable con seguimiento de una rosa de tres petalos
7.1.6. C odigo fuente adaptable
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
%Programa que Efect ua un Control Adaptable Pasivo para Seguimiento de una rosa de tres %
%p etalos en el robot de 2 Grados de Libertad. % %
% %
%Desarrollado por Victor Callejas Guerrero %
% %
%Seguimiento de una Circunferencia en el Plano XY %
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function dx = adaptable(t,x)
98
%Par ametros supuestos del Robot Phantom y Ganancias
global dx
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
m1=0.35; % masas de los eslabones
m2=0.35;
l1=0.35; % longitud de los eslabones
l2=0.35;
lcg1=0.5*l1; % longitud al centro de masas
lcg2=0.5*l2;
g=9.81; % Coeficiente de gravitaci on
% Friccion Seca o Coulomb
k1=0.1;
k2=0.05;
beta=100; % k*tanh(beta*x)
% Fricci on Viscosa
b1=0.3;
b2=0.15;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Par` ametros del Controlador
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
kp=[144,0;0,121];
kv=[24,0;0,22];
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Referencia Deseada ( Seguimiento )
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Referencia Deseada en el Plano Operacional: Circunferencia C(h,k) y Radio r
lambda=.1;
r=.05;
h=.2;
k=-.4;
99
fi=lambda*t;
ro=r*cos(3*fi);
px=ro.*cos(fi)+h;
py=ro.*sin(fi)+k;
pd=[px;py];
% Primera derivada de la referencia
dpx=-lambda.*ro.*sin(fi)-3*r*lambda*sin(3*fi).*cos(fi);
dpy=lambda.*ro.*cos(fi)-3*r*lambda*sin(3*fi).*sin(fi);
dpd=[dpx;dpy];
% Segunda derivada de la referencia
ddpx=6*r*lambda.^2.*sin(3*fi).*sin(fi)+8*r*lambda.^2.*cos(3*fi).*cos(fi);
ddpy=-10*r*lambda.^2.*cos(3*fi).*sin(fi)-6*r*lambda.^2.*sin(3*fi).*cos(fi);;
ddpd=[ddpx;ddpy];
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% MCIP: Modelo Cinem atico Inverso de Posici on Deseado
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Variable Articular 2
qd2=acos((px.^2+py.^2-(l1.^2+l2.^2))/(2*l1*l2));
%qd2=qd2*180/pi;
% Variable Articular 1
alfa=atan2(py,px);
beta=acos((l1.^2+l2.^2-(px.^2+py.^2))/(2*l1*l2));
gamma1=asin((l2*sin(beta))/sqrt(px.^2+py.^2));
if qd2<0
qd1=alfa+gamma1;
else
qd1=alfa-gamma1;
100
end
%qd1=qd1*180/pi;
qd=[qd1;qd2];
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%Modelo Cinem atico
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Matriz Jacobiana Deseada
J11d=(-l1*sin(qd(1)))-(l2*sin(qd(1)+qd(2)));
J12d=-l2*sin(qd(1)+qd(2));
J21d=(l1*cos(qd(1)))+(l2*cos(qd(1)+qd(2)));
J22d=l2*cos(qd(1)+qd(2));
Jd=[J11d,J12d;J21d,J22d];
% Inversa de la Matriz Jacobiana Deseada
J11id=(l2*cos(qd1+qd2))/(l1*l2*sin(qd2));
J12id=(l2*sin(qd1+qd2))/(l1*l2*sin(qd2));
J21id=((-l1*cos(qd1))-(l2*cos(qd1+qd2)))/(l1*l2*sin(qd2));
J22id=((-l1*sin(qd1))-(l2*sin(qd1+qd2)))/(l1*l2*sin(qd2));
Jid=[J11id,J12id;J21id,J22id];
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% MCIV: Modelo Cinem atico Inverso de Velocidad Deseado
qdp=Jid*dpd;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Derivada de la Matriz Jacobiana Deseada
DJ11d=l1*cos(qd(1))*(qdp(1))+l2*cos(qd(1)+qd(2))*(qdp(1)+qdp(2));
DJ12d=l2*cos(qd(1)+qd(2))*(qdp(1)+qdp(2));
DJ21d=-l1*sin(qd(1))*(qdp(1))-l2*sin(qd(1)+qd(2))*(qdp(1)+qdp(2));
DJ22d=-l2*sin(qd(2))*(qdp(2));
DJd=[DJ11d,DJ12d;DJ21d,DJ22d];
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
101
% MCIA: Modelo Cinem atico Inverso de Aceleraci on Deseado
qdpp=Jid*(ddpd-DJd*qdp);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Modelo Din` amico del Robot
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Matriz de Inercia
H11=(m1+m2)*l1^2+m2*(2*l1*l2*cos(x(3))+l2);
H12=m2*(l1*l2*cos(x(3))+l2.^2);
H21=m2*(l1*l2*cos(x(3))+l2.^2);
H22=m2*l2.^2;
%Vector de Fuerzas de Coriolis y de Fuerzas Centripetas
C11=-2*m2*l1*l2*sin(x(3))*(x(4));
C12=-m2*l1*l2*sin(x(3))*(x(4));
C21=m2*l1*l2*sin(x(3))*(x(2));
C22=0;
%Matriz de Gravedad
G1=(m1*lcg1*cos(x(1))+m2*l1*cos(x(1))+m2*lcg2*cos(x(1)+x(3)))*g;
G2=m2*lcg2*cos(x(1)+x(3))*g;
%Matriz de Fricci on Viscosa y Seca
Fr1=b1*x(2)+k1*tanh(beta*x(2));
Fr2=b2*x(4)+k2*tanh(beta*x(4));
% Variables Articulares y Derivadas
q=[x(1);x(3)];
qp=[x(2);x(4)];
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Modelado Cinem` atico del Robot
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%Matriz Jacobiana del Robot
% Matriz Jacobiana
J11=(-l1*sin(x(1)))-(l2*sin(x(1)+x(3)));
J12=-l2*sin(x(1)+x(3));
102
J21=l1*cos(x(1))+l2*cos(x(1)+x(3));
J22=l2*sin(x(3));
J=[J11,J12;J21,J22];
% Modelo Cinem` atico Directo de Velocidad (MCDV)
Xp=J*qp;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Ecuaciones del Modelo Dinamico del Robot
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Matrices del robot
H=[H11,H12;H21,H22];
C=[C11,C12;C21,C22];
G=[G1;G2];
Fr=[Fr1;Fr2];
N=Fr+C*qp+G;
% Par ametros de Control
alfa=[3,0;0,2];
gamma=1.5;
kd=20;
% Ecuaciones de error articular
e=q-qd;
ep=qp-qdp;
qrp=qdp-alfa*e;
qrpp=qdpp-alfa*ep;
s=ep+alfa*e;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%Regresor de Funciones No Lineales
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Y11=qrpp(1);
Y12=qrpp(1)+qrpp(2);
Y13=(2.*cos(x(3)).*qrpp(1))+(cos(x(3)).*qrpp(2))-sin(x(3)).*qrp(2)^2+(2.*sin(x(3)).*
qrp(1).*qrp(2));
103
Y14=cos(x(1));
Y15=cos(x(1));
Y16=cos(x(1)+x(3));
Y17=qrp(1);
Y18=sign(qrp(1));
Y19=0;
Y110=0;
Y21=0;
Y22=qrpp(1)+qrpp(2);
Y23=(cos(x(3))*(qrpp(1)))-(sin(x(3))*(qrp(1)^2));
Y24=0;
Y25=0;
Y26=cos(x(1)+x(3));
Y27=0;
Y28=0;
Y29=qrp(2);
Y210=sign(qrp(2));
Reg1=[Y11,Y12,Y13,Y14,Y15,Y16,Y17,Y18,Y19,Y110];
Reg2=[Y21,Y22,Y23,Y24,Y25,Y26,Y27,Y28,Y29,Y210];
Reg=[Reg1;Reg2];
tep=-gamma*Reg*s;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%vector de parametros
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%p11=(m1+m2).*l2;
%p12=m2.*l2^2;
%p13=m2.*l1.*l2;
%p14=-m1.*g.*lcg1;
%p15=-m2.*g.*l1;
%p16=m2.*g.*lcg2;
%p17=b1;
%p18=k1;
%p19=b2;
%p110=k2;
104
%p=[p11,p12,p13,p14,p15,p16,p17,p18,p19,p110];
te=[x(7),x(8),x(9),x(10),x(11),x(12),x(13),x(14),x(15),x(16)];
T=Reg*te-kd*s;
%T=-kd*s;
% Ecuaciones de Estado
qpp=inv(H)*(T-N);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Integradores
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
dx(1,1)=x(2);
dx(2,1)=qpp(1);
dx(3,1)=x(4);
dx(4,1)=qpp(2);
dx(5,1)=Xp(1);
dx(6,1)=Xp(2);
dx(7,1)=tep(1);
dx(8,1)=tep(2);
dx(9,1)=tep(3);
dx(10,1)=tep(4);
dx(11,1)=tep(5);
dx(12,1)=tep(6);
dx(13,1)=tep(7);
dx(14,1)=tep(8);
dx(15,1)=tep(9);
dx(16,1)=tep(10);
7.1.7. C odigo script adaptable1
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
%Programa que Efect ua un Control Adaptable Pasivo para Seguimiento de una rosa de tres %
%p etalos en el robot de 2 grados de Libertad. %
% %
%Desarrollado por Victor Callejas Guerrero %
% %
%Seguimiento de una Circunferencia en el Plano XY %
% %
105
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clear
close all
clc
global dx
dx=zeros(16,1);
options=odeset(MaxStep,0.1,InitialStep,0.1);
[t,x]=ode45(adaptable,[0 30],[-pi/2 0 -pi/2 0 -0.350 -0.474 0 0
0 0 0 0 0 0 0 0],options);
% Referencia Deseada en el Plano Operacional: Circunferencia C(h,k) y Radio r
lambda=.1;
r=.05;
h=.2;
k=-.4;
fi=lambda*t;
ro=r*cos(3*fi);
px=ro.*cos(fi)+h;
py=ro.*sin(fi)+k;
% Primera derivada de la referencia
dpx=-lambda.*ro.*sin(fi)-3*r*lambda*sin(3*fi).*cos(fi);
dpy=lambda.*ro.*cos(fi)-3*r*lambda*sin(3*fi).*sin(fi);
dp=[dpx;dpy];
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% MCIP: Modelo Cinem atico Inverso de Posici on Deseado
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
l1=0.35; % longitud de los eslabones
l2=0.35;
m1=0.35; % masas de los eslabones
m2=0.35;
% Variable Articular 2
106
qd2=acos((px.^2+py.^2-(l1.^2+l2.^2))/(2*l1*l2));
%qd2=qd2*180/pi;
% Variable Articular 1
alfa=atan2(py,px);
beta=acos((l1.^2+l2.^2-(px.^2+py.^2))/(2*l1*l2));
gamma1=asin((l2*sin(beta))./sqrt(px.^2+py.^2));
if qd2<0
qd1=alfa+gamma1;
else
qd1=alfa-gamma1;
end
%qd1=qd1*180/pi;
qd=[qd1;qd2];
p11=(m1+m2).*l2;
% Errores Articulares
error1=qd1-x(:,1);
error2=qd2-x(:,3);
%Errores Operacionales
errorx=px-x(:,5);
errory=py-x(:,6);
figure(1)
plot(t,x(:,1),-.r,t,qd1,b);
title(Coordenada Generalizada q1
y qd1 (Real y Deseada));
xlabel(t);
ylabel(q1-qd1);
grid
107
%axis([0 6 0.2 0.9])
legend(q1,qd1);
figure(2)
plot(t,x(:,3),-.r,t,qd2,b);
title(Coordenada Generalizada q2
y qd2 (Real y Deseada));
xlabel(t);
ylabel(q2-qd2);
grid
%axis([0 6 -1 0])
legend(q2,qd2);
figure(3)
plot(t,x(:,5),-.r,t,px,b);
title(Coordenada Operacional X y
px (Real y Deseada));
xlabel(t);
ylabel(X-px);
grid
%axis([0 6 0 0.6])
legend(X,px);
figure(4)
plot(t,x(:,6),-.r,t,py,b);
title(Coordenada Operacional Y y
py (Real y Deseada));
xlabel(t);
ylabel(Y-py);
grid
%axis([0 6 0 0.4])
legend(Y,py);
figure(5)
plot(x(:,5),x(:,6),-.r,px,py,b);
title(Espacio operacional:
(X vs Y) y (px vs py) (Real y Deseado));
xlabel(X-px);
ylabel(Y-py);
108
grid
axis([0.14 0.28 -0.48 -0.32])
figure(6)
plot(t,error1,b);
title(Error Articular 1 (eq1));
xlabel(eq1);
ylabel(t);
grid
%axis([0 6 -0.5 0.1])
figure(7)
plot(t,error2,b);
title(Error Articular 2 (eq2));
xlabel(eq2);
ylabel(t);
grid
%axis([0 6 -0.1 0.5])
figure(8)
plot(t,errorx,b);
title(Error Operacional Ex=px-X);
xlabel(Ex=px-X);
ylabel(t);
grid
%axis([0 6 -0.1 0.3])
figure(9)
plot(t,errory,b);
title(Error Operacional Ey=py-Y);
xlabel(Ey=py-Y);
ylabel(t);
grid
%axis([0 6 -0.1 0.1])
%figure(10)
%plot(t,x(:,7),b,t,p11,r);
%title(p11=(m1+m2).*l2);
109
%xlabel();
%ylabel(t);
%grid
%axis([0 6 -0.1 0.1])
figure(11)
plot(t,x(:,7),k,t,x(:,8),r,t,x(:,9),b,t,x(:,10),m,t,x(:,11),g);
title(Vector de Parametros);
xlabel();
ylabel(t);
grid
%axis([0 6 -0.1 0.1])
figure(12)
plot(t,x(:,12),k,t,x(:,13),r,t,x(:,14),b,t,x(:,15),m,t,x(:,16),g);
title(Vector de Parametros);
xlabel();
ylabel(t);
grid
%axis([0 6 -0.1 0.1])
end
7.1.8. Validaci on del control adaptable con seguimiento de una circunferencia
7.1.9. C odigo fuente adaptable
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
%Programa que Efect ua un Control Adaptable Pasivo para Seguimiento de una Circunferencia %
%en el robot de 2 Grados de Libertad. %
% %
%Desarrollado por Victor Callejas Guerrero %
% %
%Seguimiento de una Circunferencia en el Plano XY %
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function dx = adaptable(t,x)
%Par ametros supuestos del Robot Phantom y Ganancias
global dx
110
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
m1=0.35; % masas de los eslabones
m2=0.35;
l1=0.35; % longitud de los eslabones
l2=0.35;
lcg1=0.5*l1; % longitud al centro de masas
lcg2=0.5*l2;
g=9.81; % Coeficiente de gravitaci on
% Friccion Seca o Coulomb
k1=0.1;
k2=0.05;
beta=100; % k*tanh(beta*x)
% Fricci on Viscosa
b1=0.3;
b2=0.15;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Par` ametros del Controlador
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
kp=[144,0;0,121];
kv=[24,0;0,22];
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Referencia Deseada ( Seguimiento )
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Referencia Deseada en el Plano Operacional: Circunferencia C(h,k) y Radio r
h=.2;
k=-.4;
r=.05;
w=1;
px=h+r*cos(w*t);
py=k+r*sin(w*t);
111
pd=[px;py];
% Primera derivada de la referencia
dpx=-r*w*sin(w*t);
dpy=r*w*cos(w*t);
dpd=[dpx;dpy];
% Segunda derivada de la referencia
ddpx=-r*w^2*cos(w*t);
ddpy=-r*w^2*sin(w*t);
ddpd=[ddpx;ddpy];
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% MCIP: Modelo Cinem atico Inverso de Posici on Deseado
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Variable Articular 2
qd2=acos((px.^2+py.^2-(l1.^2+l2.^2))/(2*l1*l2));
%qd2=qd2*180/pi;
% Variable Articular 1
alfa=atan2(py,px);
beta=acos((l1.^2+l2.^2-(px.^2+py.^2))/(2*l1*l2));
gamma1=asin((l2*sin(beta))/sqrt(px.^2+py.^2));
if qd2<0
qd1=alfa+gamma1;
else
qd1=alfa-gamma1;
end
%qd1=qd1*180/pi;
qd=[qd1;qd2];
112
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%Modelo Cinem atico
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Matriz Jacobiana Deseada
J11d=(-l1*sin(qd(1)))-(l2*sin(qd(1)+qd(2)));
J12d=-l2*sin(qd(1)+qd(2));
J21d=(l1*cos(qd(1)))+(l2*cos(qd(1)+qd(2)));
J22d=l2*cos(qd(1)+qd(2));
Jd=[J11d,J12d;J21d,J22d];
% Inversa de la Matriz Jacobiana Deseada
J11id=(l2*cos(qd1+qd2))/(l1*l2*sin(qd2));
J12id=(l2*sin(qd1+qd2))/(l1*l2*sin(qd2));
J21id=((-l1*cos(qd1))-(l2*cos(qd1+qd2)))/(l1*l2*sin(qd2));
J22id=((-l1*sin(qd1))-(l2*sin(qd1+qd2)))/(l1*l2*sin(qd2));
Jid=[J11id,J12id;J21id,J22id];
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% MCIV: Modelo Cinem atico Inverso de Velocidad Deseado
qdp=Jid*dpd;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Derivada de la Matriz Jacobiana Deseada
DJ11d=l1*cos(qd(1))*(qdp(1))+l2*cos(qd(1)+qd(2))*(qdp(1)+qdp(2));
DJ12d=l2*cos(qd(1)+qd(2))*(qdp(1)+qdp(2));
DJ21d=-l1*sin(qd(1))*(qdp(1))-l2*sin(qd(1)+qd(2))*(qdp(1)+qdp(2));
DJ22d=-l2*sin(qd(2))*(qdp(2));
DJd=[DJ11d,DJ12d;DJ21d,DJ22d];
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% MCIA: Modelo Cinem atico Inverso de Aceleraci on Deseado
qdpp=Jid*(ddpd-DJd*qdp);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Modelo Din` amico del Robot
113
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Matriz de Inercia
H11=(m1+m2)*l1^2+m2*(2*l1*l2*cos(x(3))+l2);
H12=m2*(l1*l2*cos(x(3))+l2.^2);
H21=m2*(l1*l2*cos(x(3))+l2.^2);
H22=m2*l2.^2;
%Vector de Fuerzas de Coriolis y de Fuerzas Centripetas
C11=-2*m2*l1*l2*sin(x(3))*(x(4));
C12=-m2*l1*l2*sin(x(3))*(x(4));
C21=m2*l1*l2*sin(x(3))*(x(2));
C22=0;
%Matriz de Gravedad
G1=(m1*lcg1*cos(x(1))+m2*l1*cos(x(1))+m2*lcg2*cos(x(1)+x(3)))*g;
G2=m2*lcg2*cos(x(1)+x(3))*g;
%Matriz de Fricci on Viscosa y Seca
Fr1=b1*x(2)+k1*tanh(beta*x(2));
Fr2=b2*x(4)+k2*tanh(beta*x(4));
% Variables Articulares y Derivadas
q=[x(1);x(3)];
qp=[x(2);x(4)];
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Modelado Cinem` atico del Robot
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%Matriz Jacobiana del Robot
% Matriz Jacobiana
J11=(-l1*sin(x(1)))-(l2*sin(x(1)+x(3)));
J12=-l2*sin(x(1)+x(3));
J21=l1*cos(x(1))+l2*cos(x(1)+x(3));
J22=l2*sin(x(3));
J=[J11,J12;J21,J22];
% Modelo Cinem` atico Directo de Velocidad (MCDV)
Xp=J*qp;
114
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Ecuaciones del Modelo Dinamico del Robot
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Matrices del robot
H=[H11,H12;H21,H22];
C=[C11,C12;C21,C22];
G=[G1;G2];
Fr=[Fr1;Fr2];
N=Fr+C*qp+G;
% Par ametros de Control
alfa=[2,0;0,1.8];
gamma=1.5;
kd=20;
% Ecuaciones de error articular
e=q-qd;
ep=qp-qdp;
qrp=qdp-alfa*e;
qrpp=qdpp-alfa*ep;
s=ep+alfa*e;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%Regresor de Funciones No Lineales
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Y11=qrpp(1);
Y12=qrpp(1)+qrpp(2);
Y13=(2.*cos(x(3)).*qrpp(1))+(cos(x(3)).*qrpp(2))-sin(x(3)).*qrp(2)^2+(2.*sin(x(3)).*
qrp(1).*qrp(2));
Y14=cos(x(1));
Y15=cos(x(1));
Y16=cos(x(1)+x(3));
Y17=qrp(1);
Y18=sign(qrp(1));
Y19=0;
Y110=0;
115
Y21=0;
Y22=qrpp(1)+qrpp(2);
Y23=(cos(x(3))*(qrpp(1)))-(sin(x(3))*(qrp(1)^2));
Y24=0;
Y25=0;
Y26=cos(x(1)+x(3));
Y27=0;
Y28=0;
Y29=qrp(2);
Y210=sign(qrp(2));
Reg1=[Y11,Y12,Y13,Y14,Y15,Y16,Y17,Y18,Y19,Y110];
Reg2=[Y21,Y22,Y23,Y24,Y25,Y26,Y27,Y28,Y29,Y210];
Reg=[Reg1;Reg2];
tep=-gamma*Reg*s;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%vector de parametros
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%p11=(m1+m2).*l2;
%p12=m2.*l2^2;
%p13=m2.*l1.*l2;
%p14=-m1.*g.*lcg1;
%p15=-m2.*g.*l1;
%p16=m2.*g.*lcg2;
%p17=b1;
%p18=k1;
%p19=b2;
%p110=k2;
%p=[p11,p12,p13,p14,p15,p16,p17,p18,p19,p110];
te=[x(7),x(8),x(9),x(10),x(11),x(12),x(13),x(14),x(15),x(16)];
T=Reg*te-kd*s;
%T=-kd*s;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Ecuaciones de Estado
qpp=inv(H)*(T-N);
116
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Integradores
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
dx(1,1)=x(2);
dx(2,1)=qpp(1);
dx(3,1)=x(4);
dx(4,1)=qpp(2);
dx(5,1)=Xp(1);
dx(6,1)=Xp(2);
dx(7,1)=tep(1);
dx(8,1)=tep(2);
dx(9,1)=tep(3);
dx(10,1)=tep(4);
dx(11,1)=tep(5);
dx(12,1)=tep(6);
dx(13,1)=tep(7);
dx(14,1)=tep(8);
dx(15,1)=tep(9);
dx(16,1)=tep(10);
7.1.10. C odigo script adaptable1
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
%Programa que Efect ua un Control Adaptable Pasivo para Seguimiento de una Circunferencia %
%en el robot de 2 Grados de Libertad. %
% %
%Desarrollado por Victor Callejas Guerrero %
% %
%Seguimiento de una Circunferencia en el Plano XY %
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clear
close all
clc
global dx
dx=zeros(16,1);
options=odeset(MaxStep,0.1,InitialStep,0.1);
[t,x]=ode45(adaptable,[0 10],[-pi/2 0 -pi/2 0 -0.35 -0.464 0 0 0
117
0 0 0 0 0 0 0 ],options);
% Referencia Deseada en el Plano Operacional: Circunferencia C(h,k) y Radio r
h=.2;
k=-.4;
r=.05;
w=1;
px=h+r*cos(w*t);
py=k+r*sin(w*t);
% Primera derivada de la referencia
dpx=-r*w*sin(w*t);
dpy=r*w*cos(w*t);
dp=[dpx;dpy];
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% MCIP: Modelo Cinem atico Inverso de Posici on Deseado
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
l1=0.35; % longitud de los eslabones
l2=0.35;
m1=0.35; % masas de los eslabones
m2=0.35;
% Variable Articular 2
qd2=acos((px.^2+py.^2-(l1.^2+l2.^2))/(2*l1*l2));
%qd2=qd2*180/pi;
% Variable Articular 1
alfa=atan2(py,px);
beta=acos((l1.^2+l2.^2-(px.^2+py.^2))/(2*l1*l2));
gamma1=asin((l2*sin(beta))./sqrt(px.^2+py.^2));
if qd2<0
qd1=alfa+gamma1;
118
else
qd1=alfa-gamma1;
end
%qd1=qd1*180/pi;
qd=[qd1;qd2];
p11=(m1+m2).*l2;
% Errores Articulares
error1=qd1-x(:,1);
error2=qd2-x(:,3);
%Errores Operacionales
errorx=px-x(:,5);
errory=py-x(:,6);
figure(1)
plot(t,x(:,1),-.r,t,qd1,b);
title(Coordenada Generalizada q1
y qd1 (Real y Deseada));
xlabel(t);
ylabel(q1-qd1);
grid
%axis([0 6 0.2 0.9])
legend(q1,qd1);
figure(2)
plot(t,x(:,3),-.r,t,qd2,b);
title(Coordenada Generalizada q2
y qd2 (Real y Deseada));
xlabel(t);
ylabel(q2-qd2);
grid
%axis([0 6 -1 0])
legend(q2,qd2);
figure(3)
119
plot(t,x(:,5),-.r,t,px,b);
title(Coordenada Operacional X y
px (Real y Deseada));
xlabel(t);
ylabel(X-px);
grid
%axis([0 6 0 0.6])
legend(X,px);
figure(4)
plot(t,x(:,6),-.r,t,py,b);
title(Coordenada Operacional Y y
py (Real y Deseada));
xlabel(t);
ylabel(Y-py);
grid
%axis([0 6 0 0.4])
legend(Y,py);
figure(5)
plot(x(:,5),x(:,6),-.r,px,py,b);
title(Espacio operacional:
(X vs Y) y (px vs py) (Real y Deseado));
xlabel(X-px);
ylabel(Y-py);
grid
axis([0.12 0.28 -0.48 -0.32])
figure(6)
plot(t,error1,b);
title(Error Articular 1 (eq1));
xlabel(eq1);
ylabel(t);
grid
%axis([0 6 -0.5 0.1])
figure(7)
plot(t,error2,b);
120
title(Error Articular 2 (eq2));
xlabel(eq2);
ylabel(t);
grid
%axis([0 6 -0.1 0.5])
figure(8)
plot(t,errorx,b);
title(Error Operacional Ex=px-X);
xlabel(Ex=px-X);
ylabel(t);
grid
%axis([0 6 -0.1 0.3])
figure(9)
plot(t,errory,b);
title(Error Operacional Ey=py-Y);
xlabel(Ey=py-Y);
ylabel(t);
grid
%axis([0 6 -0.1 0.1])
%figure(10)
%plot(t,x(:,17));
%title(Tr-T=0);
%xlabel();
%ylabel(t);
%grid
%axis([0 6 -0.1 0.1])
figure(11)
plot(t,x(:,7),k,t,x(:,8),r,t,x(:,9),b,t,x(:,10),m,t,x(:,11),g);
title(Vector de Parametros);
xlabel();
ylabel(t);
grid
%axis([0 6 -0.1 0.1])
figure(12)
121
plot(t,x(:,12),k,t,x(:,13),r,t,x(:,14),b,t,x(:,15),m,t,x(:,16),g);
title(Vector de Parametros);
xlabel();
ylabel(t);
grid
%axis([0 6 -0.1 0.1])
end
7.2. Glosario
ACTUADOR: Es el dispositivo que proporciona la fuerza motriz real para las articulaciones de
un robot. El actuador suele obtener su energa a partir de una de estas tres fuentes: aire com-
primido, uido por presi on o electricidad; por lo que reciben el nombre de actuadores neum aticos,
hidr aulicos o electricos.
ADAPTACI

ON. Tipo evolutivo de cambio (usualmente involucra una modicaci on progresiva


de cierta estructura o estructuras) que un sistema realiza para hacer frente a los cambios del
entorno, mientras mantiene los atributos esenciales de la estructura y constantes del sistema.
ALGORITMO: Conjunto denido de reglas o procesos para la soluci on de un problema en un
N umero nito de pasos.
ARTICULACION: Una articulaci on es la conexi on que existe entre dos o m as eslabones, la
cual se encuentra en los nodos de los eslabones y permite alg un movimiento o movimiento po-
tencial, entre los eslabones conectados.
AUTOMATIZACION: Se le denomina as a cualquier tarea realizada por m aquinas en lugar
de personas. Es la sustituci on de procedimientos manuales por sistemas de c omputo.
BRAZO (ROBOT). Una de las partes del manipulador. Soportado en la base de este, sostiene y
122
maneja la mu neca (donde va instalado el sistema de toma de objetos).
CADENA CINEMATICA: es un conjunto de miembros de un mec anismo enlazados entre si,
los cuales se les denomina eslabones.
CENTRO DE MASA : Las fuerzas se distribuyen sobre una lnea, un area o un volumen. Por
lo com un, no es muy difcil encontrar una resultante de estas fuerzas distribuidas. Para tener el
mismo efecto esta resultante debe actuar sobre el centroide del cuerpo, el cual es un punto en el
que se puede considerar que un sistema de fuerzas distribuidas est a concentrado, con el mismo
efecto que la fuerza distribuida.
CINEMATICA : trata con el estudio analtico de la geometra del movimiento de un brazo
de un robot con respecto a un sistema de coordenadas de referencia ja sin considerar las fuerzas
o momentos que originan el movimiento.
CONTROL. Sistema dise nado para lograr el comportamiento deseado de un sistema din ami-
co. Puede ser digital (microprocesado) o anal ogico (por ejemplo, circuitos electricos, sistemas
hidr aulicos, sistemas mec anicos, etc.), manual o autom atico.
CONTROL EN LAZO ABIERTO. Control en el cual la salida no afecta la acci on de control.
Es decir, no se mide ni se realimenta la salida para compararla con la entrada. Ejemplo: control
de tr ansito, lavadora (el remojo, lavado y enjuague operan con base en el tiempo). La precisi on
del control depende de la calibraci on y no funciona correctamente en presencia de perturbaciones.
CONTROL DE LAZO CERRADO. Operaci on que, en presencia de perturbaciones (impredeci-
bles), tiende a reducir la diferencia entre la salida de un sistema y alguna entrada de referencia
y lo contin ua haciendo con base en esta diferencia. Ejemplos: control de velocidad, control de un
robot, control de temperatura, sistema empresarial.
COORDENADAS: Sistema de ejes para el posicionamiento de un punto en el plano o en el
espacio. Pueden ser: a) Angulares. Si la referencia de un punto se hace mediante la denici on de
angulos a partir de los ejes (origen de los angulos). b) Polares. Se establece un punto mediante
la indicaci on de un angulo y un valor escalar (numerico). c) Rectangulares. Cuando los puntos
est an denidos por varios n umeros (dos o tres).
COORDENADAS OPERACIONALES: Representadas por la posici on en x, y, z y la orientaci on
en , , del organo terminal en el espacio. En la acci on de control, permiten conocer la posici on
instant anea que el robot adquiere con su movimiento.
DINAMICA: An alisis de los pares de torsi on y las fuerzas debidas a la aceleraci on y desacel-
eraci on. Los pares de torsi on experimentados por las articulaciones producidas por la aceleraci on
de los enlaces, as como las fuerzas experimentadas por los enlaces debidas a los pares de torsi on
aplicados por las articulaciones.
123
EJE (ROBOT). Cada una de las lneas seg un las cuales se puede mover el robot o una parte
de el (alg un elemento de su estructura). Pueden ser ejes o lneas de desplazamiento longitudinal
sobre s mismo (articulaci on prism atica) o ejes de giro (rotaci on). Cada eje dene un grado de
libertad del robot.
ESLABON: es un cuerpo rgido que posee por lo menos dos nodos, que son los puntos de uni on
con otros eslabones. Los eslabones se pueden nombrar de acuerdo al n umero de nodos que poseen.
ESPACIO DE CONFIGURACIONES ADMISIBLES: Es el espacio de trabajo del robot, repre-
senta el espacio fsico que puede ser alcanzado por un punto del organo terminal.
ESTABILIDAD. Condici on en la cual las variables crticas de un sistema din amico se mantienen
invariables o permanecen dentro de unos lmites determinados.
FUERZA CENTRIFUGA: Es la fuerza que hace que un cuerpo sometido a un movimiento
circular uniforme tienda a alejarse del centro de rotaci on es de igual fuerza y magnitud que la
centrpeta pero de direcci on contraria.
FUERZA CENTRIPETA: Fuerza dirigida hacia el centro que se requiere para mantener un
movimiento circular uniforme Debido a la segunda ley de Newton del movimiento, la magnitud
de esta fuerza debe ser igual al producto de la masa por la aceleraci on centrpeta.
GRADO DE LIBERTAD (ROB

OTICA). Cada uno de los movimientos b asicos que denen la


movilidad de un determinado robot. Puede indicar un movimiento longitudinal o de rotaci on.
GRAVEDAD: Fuerza de atracci on hacia el centro de la Tierra.La gravedad es una de las fuerzas
universales de la naturaleza. Es una fuerza de atracci on que existe entre toda materia, y es muy
debil en comparaci on con otras fuerzas de la naturaleza. La fuerza gravitacional existente entre
dos objetos depende de sus masas, raz on por la cual s olo podemos ver a la gravedad en acci on
cuando al menos uno de los objetos es muy grande (como la Tierra).
IDENTIFICACI

ON DE SISTEMAS. Conjunto de metodos para la obtenci on de modelos matem aticos


a partir de datos experimentales de las entradas y salidas de un sistema. En base a esto se evita
la modelaci on te orica a partir de complejas leyes.
INERCIA: Es la fuerza que poseen los cuerpos para oponerse a ser movidos por otro cuerpo.
INCERTIDUMBRE. En teora de la informaci on, la certidumbre es el grado en que la infor-
maci on se puede considerar verdadera, completa y digna de fe. La incertidumbre se origina a
partir de elementos de datos falsos o de un equvoco, a partir de datos incompletos o de un con-
texto ambiguo. La conanza es la respuesta humana a la certidumbre. Por ello ciertos modelos
de informaci on usan valores de conanza.
124
JACOBIANO. Es una matriz que se puede ver como la versi on vectorial de la derivada de una
funci on escalar. Es importante en el an alisis y control de movimiento de un robot (planicaci on
de trayectorias suaves, determinaci on de conguraciones singulares, ejecuci on de movimientos
coordinados, derivaci on de ecuaciones din amicas).
MANIFOULD DE ERROR: Acci on de controlar posici on y velocidad al mismo tiempoen el
seguimiento de una trayectoria.
MANIPULADOR: En general, cualquier dispositivo mec anico capaz de reproducir los movimien-
tos humanos para el manejo de objetos. En particular, suele referirse a los elementos mec anicos
de un robot que producen su adecuado posicionamiento y operaci on.
M

AQUINA: Articio o conjunto de aparatos combinados para recibir cierta forma de energa,
transformarla y restituirla en otra m as adecuada o para producir un efecto determinado.
MECATR

ONICA: Es el estudio multidisciplinario que se propone el control de los sistemas


fsicos, a traves de la inteligencia computacional.
MODELO. Representaci on de una manera m as sencilla de un proceso o de un elemento, y el
cual es utilizado con objetivos de an alisis, control y predicci on. Tipos de modelos: a escala,
anal ogicos y matem aticos.
MODELO MATEM

ATICO: Es simplemente una representaci on matem atica de sistemas del


mundo real. Este modelo se desarrolla a traves de la aplicaci on, a los elementos de un sistema,
de las reglas conocidas del comportamiento.
MUESTREO. Proceso de transformaci on de una se nal en tiempo continuo en una de tiempo
discreto.
MU

NECA: Dispositivo donde se articula el elemento terminal (garo, pinza,garra...etc) de un


manipulador. Es un elemento b asico para la denici on de la exibilidad y precisi on del manipu-
lador. Las posiciones del elemento terminal vienen dadas por los grados de libertad de la mu neca.

ORGANO TERMINAL

O EFLECTOR FINAL: Dispositivo que se instala en el extremo del
manipulador, el cual interact ua con los objetos de su entorno al efectuar una tarea. Consiste en
un sistema mec anico capaz de prender y soltar objetos (pinza mec anica) o herramienta capaz de
realizar alguna operaci on (antorcha o pistola de soldadura, etc.).
PINZA: Una de las conguraciones caractersticas del elemento terminal de un manipulador
o de un robot. Se articula con el resto de la estructura a traves de la mu neca.
PITCH: Elevaci on del organo terminal.
125
PROCEDIMIENTO: Secuencia de operaciones destinadas a la resoluci on de un problema de-
terminado.
ROBOT. Manipulador mec anico, reprogramable y de uso general. Un dispositivo mec anico que
realiza acciones basadas en movimientos. Las acciones m as comunes de un robot incluyen su
movimiento aut onomo (caminar sin recibir instrucciones no contenidas en el mismo robot), sol-
dar y reparar accidentes nucleares, otras manipulaciones demasiado precisas, pesadas, repetitivas
(aburridas) o riesgosas para el ser humano.
ROB

OTICA. Dise no, fabricaci on y utilizaci on de m aquinas autom aticas programables con el
n de realizar tareas repetitivas como el ensamble de autom oviles, aparatos, etc. y otras ac-
tividades. Es una de las tecnologas m as cercanas a lo que es el n ucleo de la bioingeniera del
conocimiento. Se trata de una tecnologa mecatr onica (mec anica m as electr onica m as cibernetica)
que dise na m aquinas que realizan acciones que normalmente se hacen manualmente, esto es, con
la mano y el brazo. El aprendizaje de los movimientos de un robot que recoja un vaso con lquido
y que lo desplace sin derrames es una tarea monumental.
ROBUSTO. Fuerte, vigoroso, bien fabricado, difcil de romper. En control, poco sensible a er-
rores o incertidumbres de modelado. En la actividad computacional, tanto una m aquina como
un algoritmo se consideran robustos si son capaces de actuar y trascender a pesar de dicultades
que accidentaran a m aquinas o algoritmos m as simples o menos exibles. La tolerancia a las
fallas o fallos se considera sin onimo de robustez.
ROLL: Giro del organo terminal.
SENSOR: Transductor que capta magnitudes y las transforma en se nales electricas.
SIMULADOR: El simulador es un programa que imita las acciones de otro programa, dispositivo
de hardware u otra clase de dispositivos.
VARIABLE DE ERROR. Desviaci on de la variable controlada con respecto a la referencia.
El regulador digital responde en dependencia de esta variable.
126
7.3. Anexos
atan2 Realiza la operaci on trigonometrica del arctangent en y/x y vuelve un angulo
en la gama del al expresado en radianes, usando las muestras de los par ametros
de determinar el cuadrante. El resultado es v alido incluso si x es 0 (el angulo es

2
o

2
). En hecho esta funci on vuelve el angulo del vector bidimensional (x,y).
tangente de lo contrario del Cuatro-cuadrante
Sintaxis:
P = atan 2(y,x)
P = atan2(y, x) vuelve un arsenal P el mismo tama no que X y Y contener el elemento
por elemento, tangente inversa del cuatro cuadrante (arctangent) de las partes reales
de Y y X.
atan2(Y, X) contrastes con atan(Y/X)que resultados se limitan al intervalo

2
o

2
o el derecho de este diagrama.
Figura 7.1: Representaci on de atan2
// ejemplo atan2
#include <stdio.h>
#include <math.h>
#include <conio.h>
const pi=3.14159265;
main()
{
clrscr();
double x , y, resultado;
printf("\nTeclea el valor de x=");
127
scanf("%lf",&x);
printf("\nTeclea el valor de y=");
scanf("%lf",&y);
resultado = atan2(y,x)*180/pi;
printf ("el arctangent para (x=%.2lf, y=%.2lf) es de\n %.2lf",x,y,resultado);
getch();
}
128
7.4. Lista de abreviaturas
MCDP Modelo cinem atico directo de posici on.
MCIP Modelo cinem atico inverso de posici on.
MCDV Modelo cinem atico directo de velocidad.
MCIV Modelo cinem atico inverso de velocidad.
MCDA Modelo cinem atico directo de aceleraci on.
MCIA Modelo cinem atico inverso de aceleraci on.
R Robot.
PDH Par ametros Denavit-Hartenberg.
MRCA Modelo de referencia del control adaptable.
S Manifoul de error.
gdl Grados de libertad.
Px Coordenada operacional en la componente X.
Py Coordenada operacional en la componente y.
eq1 Error artcular de la variable
1
.
eq2 Error artcular de la variable
2
.
Ex Error operacional de la componente en x.
Ey Error operacional de la componente en y.
129
Bibliografa
[1] RoboticAntecedentes de la robotica, disponible http : //www.robotic.dlr.de
[2] Dise noDise no y Simulaci on de un Sistema de contr ol mediante metodos de espacio
de estado, disponible http : //www.aintegral.com.mx.
[3] Domnguez-Ramrez, O. A.Dise no e integraci on de una interface h aptica activa,
Notas de informe tecnico Citis, Mecatr onica, 2002.
[4] Domnguez-Ramrez, O. A.Control no lineal de robots manipuladores, Short Paper,
Abril 2005.
[5] Domnguez-Ramrez, O. A.Dise no, construcci on e implementaci on de un robot de
2 gdl.: Tesis de Maestra , Instituto Tecnol ogico de la Laguna, Torre on Coahuila,
Mexico Agosto de 1999.
[6] Domnguez-Ramrez, O. A.,P. V. Parra-Vega Interfase H aptica Realista Basada en un
Control Adaptable de Fuerza-Posici on , Centro de Investigaci on y de Estudios Avan-
zados del I.P.N. Departamento de Ingeniera Electrica, Secci on Mecatr onica, paper,
2002.
[7] G omez M arquez Wendy EdithCinem atica de robots manipuladores:Tesis de Licen-
ciatura,Instituto de Ciencias B asicas e Ingenieria, Citis, UAEH, Pachuca Hgo. 2004.
[8] IndustrialRobotica Industrial , disponible http :
//www.lafacu.com/apuntes/ingenieria/Robotica.industrial/.
[9] Introducci on Introducci on a los robots manipuladores, disponible http :
//www.geocities.com/Eureka/Office/4595/robotica.html.
[10] John J. Craig Introduction to Robotics Mechanics and Control, Addison Wesley,
1989, E.U.A.
[11] Juan-Antonio Infante y Jose Mara ReyCurso de matlab, disponible http :
//www.lawebdelprogramador/cursodematlab.doc.
[12] Kelly, R. y Santiba nez, V.Control de Movimiento de Robots Manipuladores, Pearson
educaci on, S.A., Madrid, pp.60-73, 2003.
130
[13] Nikos DrakosManual de Latex ,Computer Based Learning Unit, University of Leeds,
(Nov 17 1995).
[14] Ogata Katsuhiko, Inenieria de control moderna, pp.854-860 , 1993.
[15] Slotine, J.J. and W. Li, On the Adaptive Control of Manipulators, International
Journal of Robotics Research, Vol. 6, No. 3, pp.311-316 , 1987.
[16] Sistemas de controlSistemas de control y ejecuci on, disponible http :
//www.aintegral.com.mx.
131

You might also like