apuntes control robots 2014
DESCRIPTION
apuntes clase control de robots fime uanlTRANSCRIPT
PROGRAMA DEL CURSO: 1. INTRODUCCIÓN A ROBÓTICA
1.1. Antecedentes históricos 1.2. Origen y desarrollo de la robótica 1.3. Definición y clasificación de robots
2. MORFOLOGÍA DEL ROBOT 2.1. Efector o herramienta final 2.2. Estructura mecánica de robots 2.3. Actuadores en robots 2.4. Transmisiones y reductores 2.5. Sistema de control e inteligencia 2.6. Sensores internos
3. MODELO Y CONTROL CINEMÁTICO 3.1. Introducción y conceptos 3.2. Modelo cinemático directo 3.3. Modelo cinemático inverso 3.4. Modelo cinemático de velocidad
4. MODELO DINÁMICO 4.1. Introducción y conceptos 4.2. Formulación de Euler-Lagrange
5. PROPIEDADES Y ESTABILIDAD 5.1. Matriz de inercia 5.2. Matriz de Coriolis 5.3. Vector de gravedad 5.4. Linealidad en los parámetros 5.5. Potencia del robot 5.6. Energía del robot 5.7. Puntos de equilibrio del robot 5.8. Estabilidad del robot
6. CONTROL DINÁMICO DE POSICIÓN 6.1. Introducción 6.2. Diseño de control de posición 6.3. Control PD 6.4. Control PD con compensación de gravedad 6.5. Control PD con compensación precalculada 6.6. Control PID
7. CONTROL DINÁMICO DE MOVIMIENTO
7.1. Introducción 7.2. Diseño de control de trayectoria continua
BIBLIOGRAFÍA: ROBÓTICA: Control de robots manipuladores Fernando Reyes Cortés Alfaomega CONTROL DE MOVIMIENTO DE ROBOTS MANIPULADORES Rafael Kelly, Víctor Santibáñez Pearson-Prentice Hall MATLAB: Con Aplicaciones a la Ingeniería, Física y Finanzas David Báez López / Alfaomega EVALUACIÓN DEL CURSO: *Calificación ordinaria = Examen medio 50% Examen ordinario 50% +puntos extras sobre calificación final por tareas *Calificación extraordinaria = Examen 100% REQUISITOS ACADÉMICOS: *Identidades trigonométricas. *Geometría y trigonometría en el plano y espacio. *Operaciones y propiedades de vectores. *Álgebra lineal y operaciones de matrices. *Cálculo diferencial, derivadas parciales. *Conceptos de mecánica (cinemática traslacional y rotacional, fuerza, par, energía cinética y potencial). *Programación en Matlab u otros lenguajes.
Autor: Dr. Juan Angel Rodríguez Liñán, [email protected],
FIME-UANL 2014
UNIVERSIDAD AUTÓNOMA DE NUEVO LEÓN
FACULTAD DE INGENIERÍA MECÁNICA Y ELÉCTRICA DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN
CONTROL DE ROBOTS
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 1
ÍNDICE
CAPÍTULO 1 - INTRODUCCIÓN ......................................................................................................... 3 1.1 Antecedentes históricos ................................................................................................................................. 3 1.2 Origen y desarrollo de la robótica ................................................................................................................ 4 1.3 Definición y clasificación de robots ............................................................................................................. 5
Robots manipuladores ......................................................................................................................................... 6 Robots móviles .................................................................................................................................................... 6
CAPÍTULO 2 – MORFOLOGÍA DE ROBOTS .................................................................................... 9 2.1 Efector o herramienta final ........................................................................................................................... 9
Sujeción .............................................................................................................................................................. 9 Herramientas de transformación .......................................................................................................................... 9
2.2 Estructura mecánica del robot manipulador ............................................................................................. 10 Tipos de articulaciones ...................................................................................................................................... 10 Estructuras o configuraciones clásicas ................................................................................................................. 10
2.3 Actuadores en robots ................................................................................................................................... 12 Motores de CD .................................................................................................................................................. 13 Motores de pasos................................................................................................................................................ 13
2.4 Transmisiones y reductores ......................................................................................................................... 13 Transmisiones. .................................................................................................................................................. 13 Reductores. ........................................................................................................................................................ 14
2.5 Sistema de control e inteligencia ................................................................................................................ 14 2.6 Sensores internos ......................................................................................................................................... 15
CAPÍTULO 3 – MODELO CINEMÁTICO......................................................................................... 16 3.1 Introducción y conceptos ............................................................................................................................ 16 3.2 Modelo cinemático directo de posición y orientación .............................................................................. 16
Modelo cinemático directo planar ....................................................................................................................... 16 Modelo cinemático directo espacial ..................................................................................................................... 18
3.3 Modelo cinemático inverso de posición ..................................................................................................... 20 3.4 Modelo cinemático directo de velocidad ................................................................................................... 25 3.5 Modelo cinemático inverso de velocidad................................................................................................... 28
CAPÍTULO 4 – MODELO DINÁMICO ............................................................................................. 29 4.1 Introducción y conceptos ............................................................................................................................ 29 4.2 Formulación de Euler-Lagrange ................................................................................................................. 29
CAPÍTULO 5 – PROPIEDADES Y ESTABILIDAD ......................................................................... 40 5.1 Propiedades del modelo dinámico de robots manipuladores ................................................................... 40
Matriz de inercia ............................................................................................................................................... 40 Matriz de fuerzas centrípetas y de Coriolis .......................................................................................................... 40 Vector de gravedad ............................................................................................................................................ 41 Linealidad en los parámetros ............................................................................................................................. 41 Potencia del robot .............................................................................................................................................. 41 Energía del robot ............................................................................................................................................... 42
5.2 Estabilidad del robot manipulador ............................................................................................................. 42 Puntos de equilibrio del robot ............................................................................................................................. 42 Estabilidad en el sentido de Lyapunov ................................................................................................................ 43
CAPÍTULO 6 – CONTROL DE POSICIÓN ....................................................................................... 49 6.1 Introducción ................................................................................................................................................. 49 6.2 Diseño de control de posición .................................................................................................................... 50 6.3 Control por linealización exacta y retroalimentación de estados ............................................................ 51 6.4 Control PD y control proporcional con retroalimentación de velocidad ................................................ 52 6.5 Control PD con compensación de gravedad ............................................................................................. 56
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 2
6.6 Control PD con compensación precalculada de gravedad ....................................................................... 58 6.7 Control PID .................................................................................................................................................. 61
CAPÍTULO 7 – CONTROL DE MOVIMIENTO ............................................................................... 64 7.1 Introducción ................................................................................................................................................. 64 7.2 Diseño de control de movimiento .............................................................................................................. 64
APÉNDICE – PRELIMINARES MATEMÁTICOS .......................................................................... 66 A.1 Formulario de identidades trigonométricas .............................................................................................. 66 A.2 Tabla de cálculo diferencial ....................................................................................................................... 66 A.3 Análisis vectorial planar y espacial ........................................................................................................... 66 A.4 Álgebra lineal .............................................................................................................................................. 66
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 3
CAPÍTULO 1 – INTRODUCCIÓN
1.1 Antecedentes históricos
Desde la antigüedad el hombre ha sentido la fascinación por
máquinas que imitan la figura y movimientos de seres animados,
creando artesanalmente “autómatas”. Los mecanismos animados
de Herón de Alejandría (85 D.C.) se movían mediante
dispositivos hidráulicos, poleas y palancas teniendo fines lúdicos.
Durante el imperio árabe (siglos VIII al XV) se difundieron los
conocimientos griegos, dándoles
aplicaciones útiles en la vida cotidiana de
la realeza. Por ejemplo, diversos sistemas
dispensadores automáticos de agua para beber o lavarse. A este mismo periodo
corresponden autómatas como el “Hombre de hierro” de Alberto Magno (1204-
1282), la “Cabeza parlante” de Roger Bacon (1214-1294), o el “Gallo de
Estrasburgo” de 1352 que formaba parte del reloj de la torre de la catedral de
Estrasburgo y al dar la hora movía las alas y el pico.
Ya en el renacimiento se interesan también
por los ingenios de los griegos, el “León
mecánico” construido por Leonardo Da
Vinci en 1515 para el rey de Francia
Francis I, caminaba y se abría el pecho
para mostrar en su interior flores de lis. Da
Vinci también construyó un caballero
autómata. En España es conocido el
“Hombre de palo”, que era un autómata en forma de monje que andaba y movía la
cabeza, ojos, boca y brazos, construido por Juanelo Turriano en 1525 para el emperador Carlos V.
Durante los siglos XVII y XVIII se crearon ingenios mecánicos por artesanos relojeros
para entretener a la gente de la corte y como atracción en las ferias. Jacques Vaucanson
(1709-1782), autor del primer telar mecánico,
construyó varios muñecos animados entre los
que destacan un flautista capaz de tocar varias
melodías y en 1738 un pato capaz de graznar,
beber, comer, digerir y evacuar la comida. El
suizo Pierre Jaquet Droz y sus hijos construyeron diversos
muñecos capaces de escribir (1770), dibujar (1772) y tocar
diversas melodías en un órgano (1773). Henry Maillardet
construyó en 1805 una muñeca capaz de dibujar1.
1Más información en http://automata.cps.unizar.es/Historia/Webs/automatas_en_la_historia.htm y en los videos de
apoyo http://youtu.be/oZzY37BeORs y http://youtu.be/r4lc7ey3pFM
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 4
El término robot apareció en 1921, en la obra teatral Rossum’s Universal
Robots (R.U.R.) del escritor Karel Capek (1890-1938), derivado de la
palabra checa robota que se refiere
al trabajo realizado de manera
forzada. En esta obra de ciencia
ficción se representa máquinas
androides autómatas llamadas
robots sirviendo a sus jefes
humanos, y posteriormente se rebelan. Otros escritores de ciencia
ficción retomaron la palabra y el mensaje de Capek, como Thea von
Harbou en 1926 al escribir “Metrópolis”, novela llevada al cine por Fritz Lang donde la masa obrera de una
sociedad superindustrializada es manipulada por un líder androide.
De la misma manera, el científico y escritor de ciencia ficción ruso Isaac Asimov,
impulsó la idea y palabra robot en las obras Runaround y I, robot de los 40’s en las que
propuso y difundió sus 3 “leyes” de la robótica y posteriormente incorporó la ley cero:
0. Un robot no puede lastimar a la humanidad o, por su inacción, permitir que la
humanidad sufra daño.
1. Un robot no hará daño a un ser humano o, por su inacción, permitir que un ser
humano sufra daño, excepto si entra en conflicto la ley cero.
2. Un robot debe obedecer las órdenes dadas por los seres humanos, excepto si estas
órdenes entran en conflicto con la 1ª o Ley 0.
3. Un robot debe proteger su propia existencia en la medida en que tal protección no entre en conflicto con
la 0, 1ª o 2ª Ley.
A partir de entonces han surgido muchas otras obras de ficción acerca de robots creando mitos y
expectativas sobre estas tecnologías.
1.2 Origen y desarrollo de la robótica
El desarrollo como máquina moderna ha sido distinto de la ficción
del robot o de las obras mecánicas artesanales antropomorfas o
zoomorfas. Luego de muchos resultados en disciplinas como la
mecánica, electrónica, máquinas-herramientas, servomecanismos y
computación digital, se dieron las bases para que aparecieran los
robots. Los antecesores de los robots fueron los telemanipuladores.
En 1948, Ray Goertz del Argonne National Laboratory desarrolló el
primer telemanipulador mecánico para elementos radiactivos. En
1954 sustituyó la transmisión mecánica por otra eléctrica
obteniendo servocontrol bilateral.
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 5
La sustitución del operador humano por un programa computacional dio
lugar al concepto de robot. La primera patente fue solicitada en marzo de
1954 por el británico C.W. Kenward. Sin embargo en el mismo año, el
ingeniero norteamericano George Devol estableció las bases del robot
industrial moderno, el cual era un dispositivo de transferencia de piezas
en forma programada. En 1956 comienzan a trabajar Devol y Joseph F.
Engelberger (fotografía) en la utilización industrial de sus máquinas,
fundando la Consolidated Control Corporation, que más tarde sería la
Unimation (Universal Automation), instalando su primer robot Unimate en
1960 en la fábrica de General Motors de Trenton, Nueva Jersey.
En 1968 Engelberger visitó Japón y poco más tarde se firmaron acuerdos con Kawasaki para la
construcción de los robots Unimate. Aventajando Japón en breve a los Estados Unidos gracias a Nissan,
que formó la primera asociación robótica del mundo, la Asociación de Robótica Industrial de Japón (JIRA)
en 1972. Dos años más tarde se formó el Instituto de Robótica de América y posteriormente cambiando su
nombre por Asociación de Industrias Robóticas (RIA).
En 1975, el ingeniero estadounidense Victor Scheinman en la Universidad de
Stanford, California, desarrolló un manipulador polivalente flexible
posteriormente conocido como PUMA (Programmable Universal Manipulator
Arm) para la compañía Unimation. Este tipo de robot era
capaz de mover un objeto y colocarlo en cualquier
orientación en un lugar deseado que estuviera a su
alcance, y este concepto es la base de la mayoría de los
robots actuales. La configuración de los primeros robots
respondía a las denominadas configuraciones esférica y antropomórfica, de uso en la
manipulación. En 1982, el profesor Hiroshi Makino de la Universidad Yamanashi de
Japón, desarrolla el concepto de robot SCARA (Selective Compliance Assembly Robot
Arm) el cual es un robot de configuración mecánica con un número reducido en
grados de libertad (3 o 4), un costo limitado y orientada al ensamblado de piezas.
En poco más de 30 años las investigaciones y desarrollos sobre robótica industrial han permitido que los
robots tomen posiciones en casi todas las áreas productivas y tipos de industria. Los futuros desarrollos
apuntan en aumentar su movilidad, destreza y autonomía como en exploración y maniobras espaciales,
construcción, exploración submarina y subterránea, militares, aplicaciones médicas, así como servicio y
asistencia pareciéndose y superando cada vez más a los de las novelas de Asimov, Capek o Harbou.
1.3 Definición y clasificación de robots
Las definiciones y clasificaciones existentes de robots corresponden al robot industrial o de producción. Frente a éstos, los robots especiales o llamados de servicio están aun en desarrollo. Un robot es comprendido como una entidad electromecánica artificial que, por su apariencia o movimientos, ofrece la sensación de tener un propósito o decisión propia que le permite moverse, percibir y manipular su entorno, mostrar un comportamiento inteligente. Los robots suelen clasificarse como robots industriales y robots móviles o de servicio.
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 6
Robots industriales
Según la ISO y la RIA (Robot Institute of America), un robot industrial es un manipulador multifuncional
reprogramable diseñado para mover materiales, piezas, herramientas o dispositivos especiales, a través de
movimientos variables programados para la ejecución de diversas tareas. En general, todas las definiciones
coinciden en la capacidad de reprogramación y la multifuncionalidad, incluso tomar decisiones según la
información procedente de su alrededor.
La definición de robot según la Asociación Industrial de Robots Japonesa se extiende para incluir brazos
controlados directamente por humanos y también manipuladores de secuencia fija, los cuales no son re-
programables. Este segundo grupo cuenta con una grande cantidad de dispositivos en uso en Japón. Cabe
aclarar que aún utilizando “nuestra” definición de robot, la cantidad de robots en uso en Japón excede por
mucho la de otros países.
Los robots industriales son comúnmente empleados en tareas repetitivas de alta precisión, así como en
actividades peligrosas para el ser humano. De acuerdo al grado de autonomía, los robots industriales
pueden clasificarse en 4 niveles según la complejidad de la tarea:
Nivel 1. Aplicaciones que usan robots simples con jigs y accesorios para colocar componentes y
herramientas según la precisión requerida. Por ejemplo aplicaciones en soldadura por puntos,
colocación de adhesivos o selladores, pintura, etcétera.
Nivel 2. Aplicaciones que requieren retroalimentación de sensores con el fin de adaptarse a las
variaciones en los componentes. Por ejemplo soldadura por arco, colocación de cristales en ventanas de
automóviles y montaje de llanta de repuesto.
Nivel 3. Estas aplicaciones requieren capacidades sensoriales más complejas tales como reconocimiento
de patrones. Tienden a requerir toma de decisiones complejas basadas en retroalimentación. Este tipo
de robots son pocos pero se han aplicado en el área de ensamble.
Nivel 4. Las aplicaciones más complicadas son las que involucran comportamiento impredecible tanto
de los componentes como de otros equipos en la celda de manufactura. Operaciones tales como manejo
de componentes flexibles (laminas, textiles, mangueras), interacción con humanos, manejo de material
altamente sensible al tacto (nuclear o explosivos), etcétera.
Robots móviles y de servicio
El desarrollo de robots móviles responde a la necesidad de extender el campo de acción de la robótica. Se
trata de que el robot tenga la suficiente “inteligencia” para navegación y tomar decisiones basándose en la
percepción de su entorno, probablemente desconocido y dinámico.
La autonomía de un robot móvil se basa en el sistema de navegación automática. En estos sistemas se
incluyen tareas de planificación (de la misión y de la trayectoria), percepción y control. Los robots móviles
se pueden clasificar de la siguiente manera:
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 7
Algunos conceptos de robots que parecen humanos son:
Humanoide: El robot humanoide es aquel que simplemente imitar los actos y movimientos de un humano,
pero no necesariamente parece hombre o mujer, sino una simple marioneta humana animatrónica.
Androide: Del origen etimológico griego andro (hombre) y eides (forma), es decir, humanoide de fisionomía
y apariencia masculina, que además imita algunos aspectos de su conducta de manera autónoma.
Ginoide: Del origen etimológico griego Ginio (mujer) y eides (forma), es decir, humanoide de fisionomía y
apariencia femenina, que además imita algunos aspectos de su conducta de manera autónoma (Fembot).
Robots móviles/de servicio
Terrestres
Vehículos
Ruedas
Orugas
Patas
Zoomorfos
Cuadrúpedos
Hexápodos
Polípodos
Humanoides
Androides
Ginoides
Cyborgs
Marinos/submarinos Aéreos (UAVs o
"drones")
Alados
Hélices
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 8
Cyborg: Se forma a partir de las palabras inglesas Cybernetics y Organism (organismo cibernético) y se utiliza
para designar una criatura parte orgánica y parte robot, generalmente con la intención de mejorar las
capacidades del organismo utilizando dispositivos tecnológicos.
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 9
CAPÍTULO 2 – MORFOLOGÍA DE ROBOTS
La morfología del robot significa el estudio de la forma, estructura, configuración y componentes de los
diferentes tipos de robots que existen. El esquema básico de un robot está integrado por una estructura
mecánica, actuadores y transmisiones, sensores, efector o herramienta final y sistemas de control.
2.1 Efector o herramienta final
El efector final representa la herramienta especial que permite a un robot de uso general realizar una
aplicación particular. Los efectores finales pueden dividirse en dos categorías principales: Sujeción y
transformación.
Sujeción
Generalmente son pinzas que se utilizan para desplazar un objeto,
normalmente la pieza de trabajo, y sujetarlo durante el ciclo de operación y
posteriormente colocarlo en un lugar apropiado. Hay una diversidad de
métodos de sujeción que pueden utilizarse, además de los métodos
mecánicos obvios de agarrar la pieza entre dos o más dedos. Estos métodos
suplementarios incluyen el empleo de ganchos, ventosas, electroimanes,
palas, etcétera.
Sistemas de sujeción para robots.
Tipos de sujeción Accionamiento Uso
Pinza de presión
-Des. Angular
-Des. lineal
Neumático o eléctrico
Transporte y manipulación
de piezas sobre las que no
importé presionar.
Pinza de enganche Neumático o eléctrico
Piezas grandes dimensiones o
sobre las que no se puede
ejercer presión.
Ventosas de vació Neumático
Cuerpos con superficie lisa
poco porosa y delicadas
(cristal, plástico etc.)
Electroimán Eléctrico Piezas ferromagnéticas
Herramientas de transformación
Una herramienta se utilizaría como efector final en aplicaciones en donde se exija al robot realizar alguna
operación en la pieza de trabajo. Estas aplicaciones incluyen la soldadura por puntos, la soldadura por arco,
a la pintura por pulverización y las operaciones de taladro. En cada caso, la herramienta particular está
unida a la muñeca del robot para realizar la operación.
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 10
Herramientas de transformación para robots.
Tipo de herramienta Comentarios
Electrodos de soldadura
Soplete oxiacetilénico
Atornillador
Fresa
Pistola de pintura
Cañón láser
Cañón de agua a presión
Dos electrodos que se cierran sobre la pieza de soldar
Aportan el flujo de electrodo que se funde
Suelen incluir la alimentación de tornillos
Para perfilar, eliminar rebabas, pulir, etc.
Por pulverización de la pintura
Para corte de materiales, soldadura o inspección
Para corte de materiales
El Punto de Centro de la Herramienta o efector final (Tool Center Point: TCP) se
usa para referirse a la posición del punto focal de la herramienta del robot. Por
ejemplo, el TCP es la punta de un soplete o electrodo para soldar, también el
punto en que una pinza sujeta una pieza.
2.2 Estructura mecánica del robot manipulador
El sistema mecánico consiste en una estructura de mecanismos de posicionamiento y orientación del efector
final, incluyendo una base (fija en manipuladores y de locomoción en móviles).
Los robots manipuladores son, esencialmente, brazos articulados. Es decir, una
cadena formada por un conjunto de eslabones o elementos interconectados
mediante articulaciones, las cuales permiten el movimiento relativo entre
eslabones consecutivos. El aumento del número de articulaciones aporta mayor
maniobrabilidad pero dificulta el problema de
control. Cada uno de los movimientos
independientes que puede realizar cada
articulación (de rotación o traslación) se llama
grado de libertad (gdl), éstos son los que permiten
posicionar y orientar en el espacio al efector final.
Los robots industriales varían entre 4 y 6 gdl. Sin
embargo, existen robots con más gdl para aplicaciones especiales.
Tipos de articulaciones
Existen diferentes tipos de articulaciones, las más utilizadas en robótica son las siguientes:
La articulación de rotación tiene un grado de libertad de rotación alrededor del eje de la articulación.
La articulación de traslación lineal tiene 1 gdl a lo largo del eje de la articulación.
En la articulación cilíndrica existen dos g.d.l.: Uno de rotación y uno de traslación.
La articulación planar tiene movimiento de traslación en 2 direcciones del plano (2 gdl).
La articulación esférica combina giros en tres direcciones rotacionales en el espacio (3 gdl).
Estructuras o configuraciones clásicas
La ubicación del TCP se especifica en algún sistema coordenado, fundamentalmente dado por la
configuración mecánica del robot. Existen las siguientes estructuras o configuraciones clásicas en los
manipuladores:
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 11
Cartesiano. Tiene 3 articulaciones traslacionales y la posición del TCP se da en coordenadas cartesianas
o rectangulares.
Cilíndrico. Tiene 2 articulaciones traslacionales y 1 rotacional, la posición del TCP se da en
coordenadas cilíndricas.
Esférico. Tiene 2 articulaciones rotacionales y 1 traslacional, la posición del TCP se da en coordenadas
esféricas o polares.
Angular. Tiene sólo articulaciones rotacionales y la posición del TCP se da en coordenadas angulares
relativas a cada eslabón consecutivo. La mayoría de este tipo se parecen al brazo humano con torso,
hombro, codo y muñeca.
SCARA (Selective Compliance Assembly Robot Arms). Especial para montaje o ensamble en un plano.
Tiene 3 articulaciones de rotación respecto a 2 ejes paralelos, y una de traslación en sentido
perpendicular al plano.
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 12
El Espacio de Trabajo es el conjunto de puntos en el espacio que el TCP del efector final puede alcanzar, lo
cual depende de la estructura mecánica. Para un robot cartesiano (como una grúa) el espacio de trabajo
podría ser un cubo, para los robots más sofisticados los espacios podrían ser de una forma esférica.
La Resolución Espacial (precisión) es el incremento más pequeño de
movimiento en que el robot puede dividir su espacio de trabajo. Ésta
depende de dos factores: los sistemas de control del movimiento, y las
inexactitudes o limitaciones de los actuadores y de la estructura
mecánica. Es más fácil de conceptuar estos factores cuando se refiere a
un grado de libertad.
2.3 Actuadores en robots
Los actuadores son dispositivos que generan las fuerzas o pares necesarios para mover o animar a la
estructura mecánica. Estos pueden ser, según la energía que consuman, de tipo neumático, hidráulico o
eléctrico.
La energía neumática dota a sus actuadores de una gran velocidad de
respuesta, junto a un bajo coste, pero de precisión limitada. Como cilindros
de simple o doble efecto y motores neumáticos (de aletas rotativas o
pistones axiales).
Los actuadores de tipo hidráulico se destinan a tareas que requieren una
gran potencia y grandes capacidades de carga. Existen, como en el caso de
los neumáticos, actuadores de tipo cilindro y del tipo de motores de aletas y
pistones. El grado de compresibilidad de los aceites usados es considerablemente menor al del aire, por
lo que la precisión obtenida en este caso es mayor. Por motivos similares, es más fácil en ellos realizar
un control continuo, pudiendo posicionar su eje en todo un rango de valores (haciendo uso de
servocontrol) con notable precisión. Presenta desventajas por fugas de aceite debidas a las excesivas
presiones, además requiere equipos de filtrado de partículas, eliminación de aire, sistemas de
refrigeración y unidades de control de distribución.
Electromecánicos, como motores eléctricos, que cubren la gama de media y baja potencia, acaparan el
campo de la Robótica, por su gran precisión en el control de su movimiento y las ventajas inherentes al
manejo de sus variables eléctricas. Entre los motores eléctricos utilizados en robótica podemos
mencionar los motores de corriente directa servocontrolados, motores paso a paso y otros actuadores
electromecánicos sin escobillas.
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 13
Motores de CD
Los motores de CD están constituidos por dos devanados internos:
inductor o devanado de excitación, está situado en el estator y crea un
campo magnético de dirección fija, denominado excitación. El
inducido, situado en el rotor, hace girar al mismo debido a la fuerza de
Lorentz que aparece como combinación de la corriente circulante por él
y del campo magnético de excitación. Al aumentar la tensión del
inducido aumenta la velocidad de la máquina. Si el motor está
alimentado a tensión constante, se puede aumentar la velocidad
disminuyendo el flujo de excitación. Pero cuanto más débil sea el flujo,
menor será el par motor
que se puede desarrollar para una intensidad de inducido
constante, mientras que la tensión del inducido se utiliza para
controlar la velocidad de giro. Los motores controlados por
inducido son los que se usa para accionamiento en robots.
Motores de pasos
Existen varios tipos de motores paso a paso, uno de ellos es el de imanes permanentes. El rotor, que posee
una polarización magnética constante, gira para orientar sus polos de acuerdo al campo magnético creado
por las fases del estator. Puede ser unipolar o bipolar.
En los motores de pasos, la señal de control son trenes de pulsos que van actuando rotativamente sobre una
serie de electroimanes dispuestos en el estator. Por cada pulso recibido, el rotor del motor gira un paso
determinado por un número discreto de grados.
Su principal ventaja con respecto a los servomotores tradicionales es su capacidad para asegurar un
posicionamiento simple y exacto. Son muy ligeros, fiables, y fáciles de controlar en lazo abierto, sin la
necesidad de sensores de realimentación.
2.4 Transmisiones y reductores
Las transmisiones son los elementos encargados de transmitir el movimiento desde los actuadores hasta las
articulaciones. Se incluirán junto con las transmisiones a los reductores, encargados de adaptar el par y la velocidad de la salida del actuador a los valores adecuados para el movimiento de los elementos del robot.
Transmisiones.
Dado que un robot mueve su extremo con
aceleraciones elevadas, es de gran importancia
reducir al máximo su momento de inercia. Del
mismo modo, los pares estáticos que deben
vencer los actuadores dependen directamente de
la distancia de las masas al actuador. Por estos
motivos se procura que los actuadores, por lo
general pesados, estén lo más cerca posible de la
base del robot. Esta circunstancia obliga a utilizar
sistemas de transmisión que trasladen el
movimiento hasta las articulaciones, especialmente a las situadas en el extremo del robot. Asimismo, las
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 14
transmisiones pueden ser utilizadas para convertir movimiento rotacional en traslacional o viceversa. Un
buen sistema de transmisión debe cumplir con características básicas: Tener un tamaño y peso reducido, no
presentar juegos u holguras considerables, deben tener gran rendimiento. Los sistemas más habituales
incluyen engranajes, bandas o correas dentadas y cadenas.
Reductores.
Existen determinados sistemas usados de manera preferente en los robots industriales. Se requieren
reductores de bajo peso, reducido tamaño, bajo rozamiento y que al mismo tiempo sean capaces de realizar
reducción de velocidad ángular y un aumento elevado de su par o torque.
La capacidad de carga es el peso (en kgf o lb) que puede transportar la pinza del manipulador. Es una
característica muy importante para la selección de un robot según la aplicación deseada. La capacidad de
carga máxima es un dato proporcionado por el fabricante.
2.5 Sistema de control e inteligencia
Para que el robot pueda realizar determinados objetivos o tareas, su sistema de control e inteligencia
funciona en una estructura jerárquica:
En el nivel inferior se emplean servomecanismos y controladores convencionales con retroalimentación de
posición y velocidad para generar las señales de control que garanticen el seguimiento o regulación en las
posiciones o trayectorias de referencia. Los parámetros del controlador normalmente son fijos aunque
varíen significativamente las condiciones de trabajo. El controlador requiere de la información de la
referencia y de las variables reales medidas.
El segundo nivel se ocupa de la generación de las posiciones de referencia, es decir, los puntos en el espacio
de trabajo que se desean que alcance el efector final en una operación punto por punto, o de las trayectorias
de referencia, es decir el movimiento continuo que se desea que describa el efector final cuando se desplaza
de una posición a otra. El generador de trayectorias suministra dichas referencias a los controladores del
primer nivel.
Los niveles superiores se ocupan de la comunicación con el usuario, interpretación de los programas,
percepción sensorial del entorno, toma de decisiones y planificación para que entre en acción el segundo
nivel.
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 15
2.6 Sensores internos
Los controladores normalmente requieren la retroalimentación (lazo cerrado) de la información de las
variables internas del robot (posiciones, velocidades, fuerzas) para que funcionen adecuadamente los niveles
de control e inteligencia. En este aspecto se han integrado los progresos y nuevas tecnologías de sensores
que le suministren fieles mediciones de las variables. Las variables de posición y velocidad de las
articulaciones las consigue con sus sensores internos, mientras que las variables que se refieren a su entorno
las adquiere con sensores externos permitiéndole interaccionar de manera flexible.
Tipos de sensores en robots:
De presencia:
De contacto: Interruptor mecánico
Sin contacto:
Proximidad inductivo
Proximidad capacitivo
Optoelectrónicos
De ultrasonido
Posición:
Analógicos:
Potenciómetros
Sincronizadores y Resólvers
Transformador diferencial lineal
variable (LVDT)
Digitales:
Encoders absolutos
Encoders increméntales
Optoelectrónicos
Giróscopos
Velocidad
Indirectos: Los de posición calculando la razón de
cambio en el tiempo
Directos: Tacómetros
De efecto Hall
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 16
CAPÍTULO 3 – MODELO CINEMÁTICO
3.1 Introducción y conceptos
Para que un robot ejecute una tarea
específica es necesario establecer y
controlar la posición y orientación de su
efector final en el espacio de trabajo.
Puesto que la posición del TCP del
efector final se determina en
coordenadas cartesianas y se alcanza
mediante el movimiento de las articulaciones del robot, es necesario encontrar la relación entre las
coordenadas cartesianas del TCP y las posiciones articulares qi de los eslabones en el sistema coordinado
correspondiente a la configuración geométrica del robot.
El caso en que se conocen las posiciones articulares qi de cada eslabón y gracias a ello se calcula la posición
y orientación del TCP se conoce como modelo cinemático directo. Éste tiene solución analítica única, y puede
resolverse con métodos geométricos o con álgebra lineal. Por otra parte, cuando se conoce la posición y
orientación deseada del TCP en coordenadas cartesianas y se utiliza para calcular las posiciones qi de cada
eslabón, se conoce como modelo cinemático inverso. Este último problema, puede resolverse analíticamente
sólo en casos sencillos y puede tener múltiples soluciones. En la mayoría de los casos se resuelve con
algoritmos computacionales. Mediante los modelos cinemáticos también es posible calcular las velocidades
articulares y del TCP, sin embargo no analiza los efectos de inercia ni fuerzas que producen movimiento.
3.2 Modelo cinemático directo de posición y orientación
La obtención del modelo cinemático directo consiste en expresar la posición p del TCP en coordenadas
rectangulares y su orientación por medio de una función de las n posiciones articulares qi de cada
eslabón2. Es decir,
( )p q (1)
donde p es el TCP del efector final en coordenadas cartesianas y la orientación del efector es , nq
es el vector de n posiciones articulares qi con una región de operación , y es la función que
corresponde al modelo cinemático directo. El espacio de trabajo WS es el conjunto de todos los puntos
alcanzados por el TCP para los posibles qi,
| ( ) , nWS p p q q (2)
Modelo cinemático directo planar
En el caso planar, el modelo cinemático directo de posición y orientación del TCP es
2 1( )TT T
x yp q p p , 2: n , y
2WS .
2 En este curso lo resolveremos por métodos geométricos.
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 17
De los siguientes robots, obtenga el modelo cinemático directo de posición y orientación de la herramienta
final:
1. Péndulo simple planar con 1 gdl q .
Solución:
cos( )( )
sin( )
x
y
p R qq
p R q
q
2. Robot angular planar con 2 gdl.
Solución:
1 1 2 1 2
1 1 2 1 2
cos( ) cos( )
sin( ) sin( )
x
y
p l q l q q
p l q l q q
1 2q q
3. Robot angular planar con 3 gdl.
Solución:
1 1 2 1 2 3 1 2 3
1 1 2 1 2 3 1 2 3
cos( ) cos( ) cos( )
sin( ) sin( ) sin( )
x
y
p l q l q q l q q q
p l q l q q l q q q
1 2 3q q q
4. Robot planar con 3 gdl, 2 rotacionales y 1 prismático.
Con 2d q ,
1 1q , 3 3q
Solución:
2 1 3 1 3
2 1 3 1 3
1 3
cos( ) cos( )
sin( ) sin( )
x
y
p q q l q q
p q q l q q
q q
5. Robot planar con 2 gdl: 1 rotacional y 1 prismático, con 1q , 2h q .
Solución:
1
1 2
cos( )
sin( )
x
y
p L q a
p L q q
1q
a
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 18
Modelo cinemático directo espacial
En el caso 3D, el modelo cinemático directo es una función de la forma .
Obtenga el modelo cinemático directo de cada robot y orientación del TCP:
1. Robot cilíndrico.
Solución:
2 1
2 1
3
cos( )
sin( )
x
y
z
p q q
p q q
h qp
2. Robot esférico.
Solución:
3. Robot angular 3D con 3 gdl RRR, origen en la base.
Solución:
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 19
4. Robot SCARA
Solución:
2 1 3 1 2
2 1 3 1 2
3
cos( ) cos( )
sin( ) sin( )
x
y
z
p l q l q q
p l q l q q
h qp
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 20
3.3 Modelo cinemático inverso de posición
La obtención del modelo cinemático inverso consiste en expresar las n posiciones articulares qi de cada
eslabón en función de la posición p y orientación del TCP3. Es decir, 1( )q p (3)
donde p es el TCP del efector final en coordenadas cartesianas y la orientación del efector es , q es el
vector de n posiciones articulares qi. Debido a la complejidad para resolverlo analíticamente, es común
suplir los modelos inversos por algoritmos computacionales de aproximación numérica.
Dada la posición cartesiana p del TCP, obtenga el modelo cinemático inverso de los siguientes mecanismos
de robot:
1. Péndulo simple planar con 1 gdl, q .
Solución: 1 1( ) tan ( )y xq p p p .
La solución es válida si el TCP está restringido a
la circunferencia descrita por 2 2 2
x yp p R .
2. Robot angular planar con 2 gdl.
Sólo garantizando posición del TCP, una solución es:
1
2 2 2
2 2 2
1 2 1 2
2 2 2
1 1 2
tan
2 cos
2 cos
y
x
x y
p
p
r p p
l l l l r
r l rl l
2 2 2 2
1 21 1
2 2
1 1
2 2 2 221 21
1 2
tan cos2
180º cos2
y x y
x x y
x y
p p p l l
pq l p p
ql l p p
l l
Esta solución (codo abajo) restringe:
0º,180°] para todo 0º,360°].
*Otra solución (codo arriba) restringe:
0º,0°] para todo 0º,360°]. Obtenga esta solución de cinemática inversa.
3 En este curso lo resolveremos por métodos geométricos.
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 21
3. Robot angular planar con 3 gdl, especificando la posición P y orientación ø del TCP, con 2 2q ,
1 1q , 3 3q
Una solución (codo abajo) es:
3
3
cos( )
sin( )
xw
yw
p lx
p ly
2 2 2 2
3 3 3 1 21 1
2 23 1 3 3
1 2 2 2 2
1 2 3 31
2
1 2
3
1 2
sin( ) ( cos( )) ( sin( ))tan cos
cos( ) 2 ( cos( )) ( sin( ))
( cos( )) ( sin( ))180º cos
2
y x y
x x y
x y
p l p l p l l l
p l l p l p l
ql l p l p l
ql l
qq q
.
*Obtenga la solución con codo arriba.
4. Robot planar con 3 gdl, 2 rotacionales y 1 prismático,
con 2q d ,
1 1q , 3 3q .
Solución:
5. Robot planar con 2 gdl: 1 rotacional y 1 prismático, 1q , 2q h .
Solución:
a
1
2 2 2
2 2 2
1 2 1 2
2 2 2
1 1 2
tan
2 cos
2 cos
w
w
w w
y
x
r x y
l l l l r
r l rl l
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 22
6. Robot cilíndrico.
Solución:
1
1
2 22
3
tan ( / )y x
x y
z
p pq
q p p
q h p
7. Robot esférico.
Solución:
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 23
8. Robot angular 3D con 3 gdl RRR, origen en la base.
Solución de codo abajo: 2 2 2
2 2 2 2 2 2
1 1
2 2 2 2
1 2 3 2 3
2 2 21 2 3
3
2 3
1 11 1
2 2
2 2 21 12 3 3 3
2
( ) ( )
( ) 2 cos( )
180º cos2
tan tan
sin( )cos tan
2
w x y
w z x y z
w z
z z
w x y
r p p
r r p l p p p l
r p l l l l l
l l rq
l l
p l p lB
r p p
r l l l qA
rl l
2 3 3
2
3
cos( )
180º ( )
l q
q B A
q
1
1 2 2 2 2 2
1 2 31 112
2 2 2 2 2
2 13
2 2 2 2 2
2 3 11
2 3
tan
( )tan cos
2 ( )
( )180º cos
2
y
x
x y zz
x y x y z
x y z
p
p
qp p p l l lp l
qp p l p p p l
q
l l p p p l
l l
9. Robot SCARA, solución:
2 2 2
1
2 2 21 2 3
2 3
2 2 21 2 3
2
tan
cos2
cos2
w x y
y
x
w
w
w
r p p
p
p
l l r
l l
r l l
l r
Las soluciones codo derecho e izquierdo son, respectivamente:
1
2
3 1
180º
z
q
q
q l p
1
2
3 1
180º
z
q
q
q l p
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 24
Caso práctico:
Se requiere que el TCP del robot SCARA se posicione en cada esquina y en el centro de una placa horizontal cuadrada de 2m, que está a una altura de 2m y separada 1m de cada eje x,y.
Los eslabones son l1=3m, l2=3m, l3=2m.
Haga una tabla de estaciones y secuencia con el valor de la posición de cada articulación.
Estación Px Py Pz q1 q2 q3
Esquina 1
Esquina 2
Esquina 3
Esquina 4
Centro
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 25
3.4 Modelo cinemático directo de velocidad
La obtención del modelo cinemático de velocidad consiste en expresar la velocidad v del TCP en
coordenadas rectangulares en función de las n velocidades articulares de cada eslabón. Es decir,
(4)
donde v es la velocidad del TCP en coordenadas rectangulares, nq es el vector de n velocidades
articulares y
1 1 1 2 1
2 1 2 2 2
3 1 3 2 3
n
n
n
q q q
J q q qq
q q q
se denomina Jacobiano de .
Obtenga el modelo cinemático de velocidad de los mecanismos de robots anteriores.
1.-
=
=
=
=
2.-Robot angular planar de 2 gdl es
1 1 1 2 1 1 2 1 2 2 1 2
2 1 2 2 1 1 2 1 2 2 1 2
sin( ) sin( ) sin( )
cos( ) cos( ) cos( )
q q l q l q q l q qJ
q q l q l q q l q q
entonces v p Jq .
3.-
1
1
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 26
4.-
5.-
6.- Robot Cilíndrico
=
=
=
=
1
L
=
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 27
7.- Robot Esférico
=
=
=
8.-Robot SCARA
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 28
9.-Robot angular
3.5 Modelo cinemático inverso de velocidad
Cuando el jacobiano es invertible, entonces el modelo cinemático inverso de velocidad es dado por 1q J v
Ejercicios del capítulo:
Simule en Matlab (u otro lenguaje) todos los modelos cinemáticos obtenidos en los ejercicios de este
capítulo. Ilustre gráficamente las posiciones y velocidades de cada mecanismo robótico, proponga
arbitrariamente los valores de las longitudes de eslabones.
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 29
CAPÍTULO 4 – MODELO DINÁMICO
4.1 Introducción y conceptos
La dinámica se ocupa de la relación entre las fuerzas que actúan sobre
un cuerpo y el movimiento que en él se origina como resultado de las
mismas. Por lo tanto, el modelo dinámico de un robot es un conjunto
de expresiones matemáticas que tiene por objeto conocer la relación
entre el movimiento del robot, dado por las posiciones qi y velocidades
dqi/dt articulares, y las fuerzas o pares de torsión i aplicados en las
articulaciones.
El modelo dinámico directo expresa la posición y velocidad de las
variables articulares del robot en función de las fuerzas y pares
aplicados en cada articulación, ( , ) ( )dq q f . El modelo dinámico inverso
expresa las fuerzas y pares requeridos en las articulaciones en función de la posición y velocidad alcanzada
en cada articulación del robot, ( , )if q q .
Los modelos dinámicos de un determinado robot, o en general de un mecanismo, pueden obtenerse
mediante dos formulaciones o procedimientos: Newton-Euler o Euler-Lagrange.
La formulación de Newton-Euler se basa fundamentalmente en el planteamiento del equilibrio de fuerzas
establecido en la segunda ley de Newton y en su equivalente rotacional, la ley de Euler. Se obtienen las
ecuaciones dinámicas a partir del planteamiento del equilibrio de fuerzas y pares que intervienen en el
robot.
La formulación Euler-Lagrange es más sistemática y elegante matemáticamente que la newtoniana. Se basa
en la ley de la conservación de la energía, más precisamente, en el balance de transferencia de energía
potencial y cinética en el robot.
4.2 Formulación de Euler-Lagrange
La formulación Euler-Lagrange permite la obtención del modelo dinámico inverso ( , )if q q mediante el
siguiente procedimiento:
1. Ubicar un marco de referencia cartesiano para el robot.
2. Expresar la posición de los centros de masa o gravedad mi de cada eslabón en coordenadas cartesianas
referidas al origen, en función de las n posiciones articulares qi:
1 2 1 2 1 2( , ,..., ) ( , ,..., ) ( , ,..., )T
i ix n iy n iz nr r q q q r q q q r q q q , i=1,2,…,n. (5)
3. Expresar la velocidad vi de los centros de masa o gravedad mi de cada eslabón en coordenadas
cartesianas en función de las posiciones y velocidades articulares:
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 30
1 2( , ,..., ) Ti n i
i i ix iy iz
dr q q q r dqv r v v v
dt q dt
, i=1,2,…,n. (6)
4. Calcular la energía potencial U total del sistema:
1( ) ( )
n
T iiU q U q
(7)
donde ( ) ( )i i iU q m gh q es la energía potencial de cada centro de masa y 1 2( ) ( , ,..., )i iz nh q r q q q es la
altura del centro de masa.
5. Calcular la energía cinética K total del sistema:
1( , ) ( , )
n
T iiK q q K q q
(8)
donde 21
2( , )i i iK q q m v es la energía cinética de cada centro de masa, 2 2 2
i ix iy izv v v v es la magnitud
de la velocidad del centro de masa, y 2 2 2 2 T
i ix iy iz i i i iv v v v v v v v el producto punto de la velocidad.
Entonces la energía cinética también se escribe como 21 1 1
2 2 2( , ) T
i i i i i i i i iK q q m v m v v m v v .
6. Calcular el Lagrangiano L, que se define como la diferencia entre las energías cinética y potencial:
( , ) ( , ) ( )T TL q q K q q U q (9)
7. Desarrollar las ecuaciones Euler-Lagrange para i=1,2,…,n:
( , ) ( , )i
i i
d L q q L q q
dt q q
(10)
El modelo dinámico inverso ( , )if q q es el vector cuyas componentes son las n ecuaciones (10)
desarrolladas. Ejercicios:
Obtenga el modelo dinámico inverso de los siguientes robots planares: 1. Manipulador angular planar de 1 eslabón.
i) Suponga el centro de gravedad en el extremo del eslabón y el origen en el pivote del péndulo, entonces:
cos( ) sin( )T
r R R
sin( ) cos( )T
v R R
2 cos( )mR mgR
ii) Suponga el origen en la posición inferior del péndulo, entonces:
cos( ) sin( )T
r R R R
sin( ) cos( )T
v R R
2 cos( )mR mgR
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 31
2. Movil vertical con pendulo, variables ; (Pendiente corregir este ejemplo, falta M):
a
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 32
3. Manipulador angular planar con 2 eslabones (ángulo q2 medido desde la horizontal).
Suponga el centro de gravedad en el extremo del eslabón y el origen en la base
del manipulador, entonces:
1 1 1 1 1cos( ) sin( )T
r l q l q ,
2 1 1 2 2 1 1 2 2cos( ) cos( ) sin( ) sin( )T
r l q l q l q l q
1 1 1 1 1 1 1sin( ) cos( )T
v l q q l q q
*
* 2 2 1sen A cos A
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 33
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 34
4. Manipulador angular planar con 2 eslabones (ángulo q2 medido desde q1). (incompleto, libro de Kelly
Apéndice B)
Suponga el centro de gravedad en el extremo del eslabón y el origen en el
pivote del mecanismo, entonces:
1 1 1 1 1sin( ) cos( )T
r l q l q ,
2 1 1 2 1 2 1 1 2 1 2sin( ) sin( ) cos( ) cos( )T
r l q l q q l q l q q
…
1 1 2 1 1 2 2 1 2
2 2 1 2
( ) sin( ) sin( )( )
sin( )
c c
c
m l m l g q m l g q qG q
m l g q q
5. Manipulador angular planar con 3 eslabones (incompleto) Suponga que el centro de gravedad está en el extremo de cada
eslabón y , , , entonces:
Eslabón 1:
Eslabón 2:
Eslabón 3:
q2
q3
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 35
La energía potencial de cada eslabón es
, La energía potencial total es
La energía cinética de cada eslabón se calcula como
La energía cinética total es
=
Entonces, L=K-U=
Continuar desarrollando las ecuaciones Euler-Lagrange (10) para cada eslabón.
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 36
Obtenga el modelo dinámico inverso de los siguientes robots en el espacio 3D:
6. Robot Cilíndrico
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 37
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 38
7. Robot esférico (incompleto)
= =
8. Robot angular (incompleto)
=
=
=
9. Robot SCARA (incompleto)
=
=
=
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 39
=
=
=
En Matlab-Simulink puede simularse el comportamiento mecánico de cada robot en base a su modelo dinámico obtenido. Suponga valores de parámetros (masas, longitudes), posiciones y velocidades
iniciales arbitrarias y que el torque aplicado es nulo (=0).
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 40
CAPÍTULO 5 – PROPIEDADES Y ESTABILIDAD
Las n ecuaciones del modelo dinámico inverso (10) de un robot se reescribe frecuentemente en función de la
posición, velocidad y aceleración de las articulaciones en la forma compacta
( ) ( , ) ( )M q q C q q q G q (11)
donde nq es la posición,
nq la velocidad, nq la aceleración, ( ) n nM q la matriz de inercia
y es simétrica y definida positiva, ( , ) n nC q q es una matriz de fuerzas centrípetas y de Coriolis, y
( ) nG q es el vector de fuerzas o pares gravitacionales.
El modelo dinámico (11) representa la base matemática para el análisis de fenómenos físicos de la estructura
mecánica de un manipulador en cadena cinemática abierta con eslabones rígidos.
Ejercicios:
Obtenga la forma compacta (11) del modelo dinámico inverso de cada robot del capítulo anterior.
5.1 Propiedades del modelo dinámico de robots manipuladores
El modelo dinámico (11) es una ecuación diferencial continua, multivariable fuertemente acoplada, no
lineal. No obstante, tiene varias propiedades que son explotadas para facilitar el análisis y diseño de
sistemas de control del robot, algunas de estas se describen a continuación.
Matriz de inercia
La matriz de inercia M(q) es una matriz simétrica ( ) ( )TM q M q , definida positiva M(q)>0.
La matriz inversa M(q)-1 y también es simétrica M(q)-1= M(q)-T y definida positiva M(q)-T>0.
La matriz de inercia es tal que satisface 12
( , ) ( )TK q q q M q q .
Ejercicios: Verificar estas propiedades para la forma compacta del modelo de cada robot del capítulo anterior. Matriz de fuerzas centrípetas y de Coriolis
La vector ( , )C q q q representa los efectos de las fuerzas centrípetas y de Coriolis. Las fuerzas centrípetas
son radiales con sentido contrario a las fuerzas centrífugas. Las fuerzas de Coriolis representan una desviación del movimiento de traslación debido a su componente de rotación.
Si el vector 0q , entonces la matriz 0
( , ) ( ,0) 0 n n
qC q q C q
para todo
nq .
La matriz resultante ( ) 2 ( , )M q C q q es antisimétrica, es decir
( ) 2 ( , ) ( ) 2 ( , )T
M q C q q M q C q q La derivada temporal de la matriz de inercia y la matriz de Coriolis satisfacen
( ) ( , ) ( , )TM q C q q C q q .
12
( ) ( , ) 0Tq M q C q q q
Ejercicios: Verificar estas propiedades para la forma compacta del modelo de cada robot del capítulo anterior.
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 41
Vector de gravedad
Se obtiene como el gradiente de la energía potencial, es decir, ( ) ( )G q U q q . Por lo tanto, para
manipuladores que no tienen movimiento en el eje vertical, sólo en el plano horizontal, el vector de
pares gravitacionales es nulo ( ) 0G q , la energía potencial U(q) es constante.
El vector de pares gravitacionales G(q) y de velocidad articular satisfacen
0( ( )) ( ) ( ( )) (0)
tTG q q d U q t U .
Ejercicios: Verificar estas propiedades para la forma compacta del modelo de cada robot del capítulo anterior. Linealidad en los parámetros
Los robots manipuladores pertenecen a una clase de sistemas mecánicos no lineales con una estructura dinámica bien definida, de tal manera que su modelo dinámico presenta la propiedad de linealidad con respecto a los parámetros del robot que dependen de masas, momentos de inercia, centros de masa y coeficientes de fricción. Esta propiedad tiene una enorme repercusión en esquemas de identificación paramétrica y en controladores del tipo adaptable de robots manipuladores. Las energías cinética y potencial pueden escribirse como funciones lineal de los parámetros dinámicos:
12
( , ) ( ) ( , )T T
T K KK q q q M q q q q
( ) ( )T
T U UU q q
donde 1( , )p
K q q y 2( )p
U q son vectores que dependen de posiciones y velocidades articulares,
1p
K y 2p
U son vectores que contienen los parámetros del manipulador tales como masas, centros
de gravedad, momentos de inercia. Puesto que ( , ) ( , ) ( ) ( , ) ( )T T
T T K K U UL q q K q q U q q q q resulta
que ( , ) ( , )T
LL q q q q , con ( , ) ( ) ,T T
T T T T
L K U K Uq q q .
Entonces el modelo dinámico es lineal en los parámetros , es decir
( , , )
( , ) ( , )( , ) ( , ) T T
L L
Y q q q
q q q qd L q q L q q d
dt q q dt q q
( ) ( , ) ( ) ( , , )M q q C q q q G q Y q q q (12)
donde ( , , ) n pY q q q es una matriz de funciones conocidas, p es el vector de parámetros del robot
y 1 2p p p .
Potencia del robot
La potencia aplicada al robot manipulador es la variación de temporal de la energía total y también es dada por
( , ) ( , )T T d L q q L q qq q
dt q q
(13)
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 42
Energía del robot
La energía del robot es dada por la integral de la potencia del robot sobre el intervalo de tiempo [0,t]. La
energía Hamiltoniana del robot está dada por la suma de la energía cinética y potencial
( , ) ( , ) ( )H q q K q q U q (14)
El principio de la conservación de la energía establece que el trabajo efectuado por las fuerzas aplicadas a un sistema es igual al cambio de energía total del sistema:
0( ) ( ) ( ( ), ( )) ( (0), (0))
tT
energía almacenadaenergía aplicada
q d H q t q t H q q (15)
5.2 Estabilidad del robot manipulador
Puntos de equilibrio del robot
El modelo dinámico (11) del robot puede reescribirse como el modelo de estado
2
1
1 1 2 2 1
( )( ) ( , ) ( )
xx f x
M x C x x x G x
(16)
donde 2nx se elige como vector de estado con componentes
1x q y 2x q . El modelo dinámico (16)
se emplea para propósitos de análisis y diseño, el estado x(t) proporciona información de la dinámica del
robot y es la solución en el tiempo de la ecuación diferencial (16) para cada condición inicial x(0).
En general, un sistema dinámico no lineal modelado por
( )x f x (17)
puede tener puntos fijos, también llamados puntos de equilibrio . Estos son importantes para la
determinación de la existencia y unicidad de soluciones de la ecuación.
Un vector constante es un punto de equilibrio del sistema (17) si
(18) El punto de equilibrio es un estado donde todas las fuerzas del sistema encuentran su equilibrio, el
manipulador se ubicará en una posición fija con velocidades y aceleraciones nulas ( 0ex ). En general,
los sistemas dinámicos no lineales tienen diferentes posibilidades de la existencia de su punto de equilibrio:
Un sólo punto de equilibrio, ejemplo . Un número finito de puntos de equilibrio, ejemplo tiene dos puntos fijos: . Una cantidad infinita de puntos de equilibrio tiene puntos fijos . No tiene puntos de equilibrio, . Ejercicio: Calcular los puntos de equilibrio de los robots modelados en el capítulo anterior. Estos puntos de equilibrio pueden ser estables o inestables. Un punto de equilibrio se dice ser estable si para valores pequeños de perturbaciones, el movimiento perturbado permanece en una región acotada que contiene al punto de equilibrio. Si para un valor pequeño de perturbación, el movimiento perturbado tiende a infinito o a otro punto de equilibrio, entonces se denomina punto de equilibrio inestable.
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 43
Estabilidad en el sentido de Lyapunov
Aunque existen métodos para determinar la estabilidad absoluta, relativa, entrada-salida (BIBO), como son las técnicas por diagramas de Bode, Nyquist, Routh y lugar geométrico de las raíces; éstas son aplicables sólo a sistemas lineales invariantes en el tiempo. Para estudiar la estabilidad de sistemas no lineales y lineales variantes en el tiempo existen otras teorías de estabilidad como la del matemático e ingeniero ruso Aleksandr M. Lyapunov (1857-1911). La teoría de Lyapunov sobre la estabilidad de sistemas dinámicos es la generalización del principio de Torricelli sobre la mínima energía total de un sistema; demostrando que existen funciones V(x) además de la
función de energía del sistema E(x,t) que permiten determinar la estabilidad del sistema a partir de su razón
de cambio en el tiempo dE dt . Sin importar el orden del sistema, la teoría de Lyapunov permite obtener
información sobre la estabilidad del punto de equilibrio de un sistema no lineal sin necesidad de resolver la ecuación diferencial del modelo dinámico. Los resultados de Lyapunov incluyen el método directo e indirecto, junto con el principio de invariancia de Barbashin-Krasovskii-LaSalle, los cuales proporcionan una fuerte metodología para el diseño de esquemas de control que garanticen la estabilidad del punto de equilibrio. El método directo se basa en la construcción de funciones de energía V(x) en los estados del
sistema, luego analizar si la potencia del sistema dada por la derivada temporal de la función de energía es negativa o cero alrededor del punto de equilibrio para saber si es estable para el sistema no lineal. El método indirecto aborda únicamente la estabilidad local del punto de equilibrio del sistema linealizado.
Por conveniencia, sólo estudiaremos el caso en que el punto de equilibrio está en el origen . No hay pérdida de generalidad debido a que cualquier punto de equilibrio puede trasladarse al origen mediante un
cambio de coordenadas; esto es, suponga que y defina . La derivada de z es
( ) ( ) ( )ez x f x f z x f z , donde (0) 0f ,
Entonces en la nueva variable z, el sistema tiene punto de equilibrio en el origen .
Entre los conceptos de la teoría de Lyapunov destaca lo siguiente:
ESTABILIDAD LOCAL: El punto de equilibrio en el origen es un punto de equilibrio localmente estable de (17) si para cada y existe un tal que
(19) donde x(t) es la solución de (17), la cual empieza de x(0) en .
La definición anterior se puede entender como que la solución x(t) permanece dentro de una “bola” de radio
durante todo intervalo de tiempo, cuyo valor inicial estaba dentro de una “bola” de radio con centro en
.
ESTABILIDAD UNIFORME LOCAL: El punto de equilibrio en el origen es un punto de equilibrio localmente uniformemente estable de (17) si es estable y no depende de .
ESTABILIDAD ASINTÓTICA LOCAL: El punto de equilibrio en el origen es un punto de equilibrio localmente asintóticamente estable de (17) si es estable y es atractivo, es decir, existe un número tal que
cuando . (20)
La definición anterior se puede entender como que la solución x(t) es atraída al punto de equilibrio
conforme avanza el tiempo, cuyo valor inicial estaba dentro de una “bola” de radio con centro en .
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 44
ESTABILIDAD ASINTÓTICA GLOBAL: El punto de equilibrio en el origen es un punto de equilibrio globalmente asintóticamente estable de (17) si es estable y es atractivo en todo el espacio, es decir
cuando . (21)
Los conceptos de estabilidad global y estabilidad asintótica global significan que el punto de equilibrio es único.
ESTABILIDAD EXPONENCIAL GLOBAL: El punto de equilibrio en el origen es un punto de equilibrio
globalmente exponencialmente estable de (17) si existen constantes positivas α, β y tales que
(22)
Un equilibrio globalmente exponencialmente estable es también asintóticamente estable, pero no necesariamente a la inversa.
INESTABILIDAD: El punto de equilibrio en el origen es un punto de equilibrio inestable de (17) si no es estable, y es equivalente a decir que existe al menos un para el cual no es posible encontrar un que cumpla (19).
Para analizar las propiedades de estabilidad del punto de equilibrio se utiliza la construcción de funciones de Lyapunov.
FUNCIÓN CANDIDATA DE LYAPUNOV: Una función es una función candidata de Lyapunov para el equilibrio de (17) si cumple con lo siguiente: i) es una función definida positiva,
ii)
es una función continua respecto a ,
iii) Existe
y es una función continua respecto a .
La derivada respecto al tiempo de una función candidata de Lyapunov a lo largo de las trayectorias del sistema (17) se denota por
(23)
donde
y .
Los teoremas fundamentales de la teoría de Lyapunov para determinar la estabilidad de puntos de equilibrio de un sistema dinámico son los siguientes:
TEOREMA DE ESTABILIDAD LOCAL: El origen es un punto de equilibrio localmente estable de (17) si existe una función candidata de Lyapunov tal que
,
(24)
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 45
TEOREMA DE ESTABILIDAD ASINTÓTICA LOCAL: El origen es un punto de equilibrio localmente asintóticamente estable de (17) si existe una función candidata de Lyapunov tal que
,
i) y
ii)
Lo que significa que el estado x(t) cumple con . Una condición extra para lograr estabilidad global es que la función de Lyapunov V(x) sea radialmente no acotada, esto es
.
TEOREMA DE ESTABILIDAD GLOBAL: El origen es un punto de equilibrio globalmente estable de (17) si existe una función candidata de Lyapunov tal que
, ,
TEOREMA DE ESTABILIDAD ASINTÓTICA GLOBAL: El origen es un punto de equilibrio globalmente asintóticamente estable de (17) si existe una función candidata de Lyapunov tal que
, ,
i) y
ii)
Cuando además de ser estable asintóticamente se conoce la cota de rapidez de convergencia se llega al siguiente resultado:
TEOREMA DE ESTABILIDAD EXPONENCIAL GLOBAL: El origen es un punto de equilibrio globalmente exponencialmente estable de (17) si existe una función candidata de Lyapunov y
constantes positivas α, β y tales que i) y
ii) .
La propuesta de la función candidata de Lyapunov que satisfaga alguna de las condiciones mencionadas no
es trivial y depende de la intuición y experiencia del diseñador. A continuación se presentan algunos ejemplos y ejercicios. Ejercicios:
1. Dado el sistema x ax , donde a , y la función candidata de Lyapunov 21
2( )V x x .
R=Puesto que 2 21 1 1
2 2 2( ) ( ) 0x
xV x x xx x ax ax
, entonces el punto de equilibrio en el origen es
globalmente asintóticamente estable.
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 46
2. Dado el sistema x ax , donde a , y la función candidata de Lyapunov 21
2( ) m
mV x x .
R=Puesto que 2( ) 0mV x ax , entonces el punto de equilibrio en el origen es globalmente asintóticamente
estable.
3. Dado el sistema 1 1
2 2
0 1
1 0
x x
x x
, y la función candidata de Lyapunov
2 21 11 2 1 22 2
( , )V x x x x .
R=Puesto que 1 2( , ) 0V x x , entonces el punto de equilibrio en el origen es globalmente estable.
4. Dado el sistema tanh( )x a x , donde a , y la función candidata de Lyapunov ( ) ln(cosh( ))V x x .
R=Puesto que 2( ) tanh ( ) 0V x a x , entonces el punto de equilibrio en el origen es globalmente
asintóticamente estable.
5. Dado el sistema 3
1 1
52 2
x x
x x
, y la función candidata de Lyapunov
4 61 11 2 1 24 6
( , )V x x x x .
R=Puesto que 6 10
1 2 1 2( , ) 0V x x x x , entonces el punto de equilibrio en el origen es globalmente
asintóticamente estable.
6. El sistema 2
(1 )xx k e x con , 0 1k , y la función candidata de Lyapunov propuesta 221
2( ) ( 1)xV x x e .
R=Puesto que 2 2 2( ) (1 ) 0xV x k e x , entonces el punto de equilibrio en el origen es globalmente
asintóticamente estable.
7. El sistema ,
, y la función candidata de Lyapunov propuesta 2 21 1
1 2 1 22 2( , )V x x x x .
R=Puesto que 4 4
1 2 1 2( , ) 0V x x x x , entonces el punto de equilibrio en el origen es globalmente
asintóticamente estable.
8. El sistema 21
xx k
x
con k , y la función candidata de Lyapunov propuesta
212
( ) ln(1 )V x x .
R=Puesto que 2
2 2( ) 0
(1 )
xV x k
x
, entonces el punto de equilibrio en el origen es globalmente
asintóticamente estable.
9. El sistema sin( )x k x con k , y la función candidata de Lyapunov propuesta ( ) 1 cos( )V x x es
localmente positiva definida en ( 2 ,2 )x .
R=Puesto que 2( ) sin ( ) 0V x k x en ( , )x , entonces el punto de equilibrio en el origen es
localmente asintóticamente estable.
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 47
10. El robot manipulador de un eslabón dado por sin( )Iq bq mgl q con
variables de estado 1 2,x q x q y un control nulo =0, la función candidata
de Lyapunov propuesta es 2 21 1
1 2 1 2 1 22 2( , ) 2 (1 cos( )) ( )
mgl bI I
V x x x x x x .
R=Puesto que 2
glb2
1 2 2 1 1( , ) sin( ) 0mb
I IV x x x x x en 1 ( , )x , entonces el
punto de equilibrio en el origen es localmente asintóticamente estable.
11. El robot manipulador de un eslabón sin término gravitacional dado por Iq bq con variables de estado
1 2,x q x q y un control nulo =0, la función candidata de Lyapunov propuesta es 2 21 1
1 2 2 1 22 2( , ) ( )b
IV x x Ix x x .
R=Puesto que 2
1 2 2( , ) 0V x x bx , entonces el punto de equilibrio en el origen es estable, pero no
asintóticamente, porque la derivada de V es semidefinida positiva ya que sólo depende de x2, es decir ( )V x es
cero para cualquier valor de q con que la velocidad sea cero. **En algunos casos es posible demostrar estabilidad asintótica, aun cuando la función de Lyapunov es semidefinida negativa. Específicamente si las trayectorias del sistema (17) no pueden permanecer indefinidamente en los puntos donde la derivada de la función se desvanece, entonces el punto de equilibrio es asintóticamente estable.
TEOREMA DE BARBASHIN-KRASOVSKII-LASALLE: Considere el sistema (17), cuyo origen es un
punto de equilibrio. Supóngase que existe una función de Lyapunov tal que . Defínase un
conjunto de todos los puntos en que
: ( ) 0nx V x (25)
Sea M el conjunto invariante más grande contenido en (
M ), entonces cada solución que empiece
en se aproxima a M conforme t .
COROLARIO DE BARBASHIN-KRASOVSKII-LASALLE: Sea un punto de equilibrio del sistema (17),
supóngase que es una función de Lyapunov tal que . Sea
: ( ) 0n
M x V x (26)
Supóngase que ninguna otra solución del sistema (17) con excepción de x(t)=0 puede permanecer en el
conjunto M entonces el origen es asintóticamente estable.
Ejercicios:
12. El robot manipulador de un eslabón dado por sin( )Iq bq mgl q con variables de estado
1 2,x q x q y un control sin( )kq mgl q con k , la función candidata de Lyapunov
propuesta es 2 21 11 2 1 22 2
( , )V x x kx Ix .
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 48
R=Puesto que 2
1 2 2( , ) 0V x x bx , entonces el punto de equilibrio en el origen es estable, pero no
asintóticamente porque la derivada de V es semidefinida positiva ya que sólo depende de x2, es decir ( )V x es
cero para cualquier valor de q con que la velocidad sea cero.
Considerando el resultado de LaSalle, se analiza que a partir de ( )V x se obtiene el conjunto
2
1 2: ( , ) 0, 0,q
V x x q qq
,
del sistema en lazo cerrado
21
1 22k bI I
xx
x xx
se observa que ninguna solución x(t) puede permanecer en el conjunto , a excepción de la solución
1
2
0x q
x q
, ya que es acelerado (2 0x q ) por un valor de posición diferente a cero. Por lo tanto, el
conjunto invariante más grande posible es 0M
q
q
y 0M cuando t . Luego se concluye
que el punto de equilibrio en el origen es globalmente asintóticamente estable del sistema en lazo cerrado.
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 49
CAPÍTULO 6 – CONTROL DE POSICIÓN
6.1 Introducción
El control de robots manipuladores es necesario en aplicaciones industriales tales como estibado de cajas,
ensamble, traslado, pintado de objetos, etcétera. La ejecución de este tipo de tareas requiere alto desempeño
y exactitud, lo cual en ocasiones implica grandes retos que no pueden ser resueltos únicamente con el
control cinemático, debido a inexactitudes del modelo, consideración de fuerzas, perturbaciones no
consideradas, entre otras, lo cual puede resolverse mediante el control dinámico.
El control dinámico tiene como objetivos determinar los pares aplicados en las articulaciones de tal manera
que el movimiento del robot sea estable y que las trayectorias realizadas por sus articulaciones q(t) sigan con
exactitud a las trayectorias propuestas por el control cinemático, conocidas como trayectorias deseadas qd(t).
Para llevar a cabo esta tarea se utiliza el conocimiento del modelo dinámico del robot y de las herramientas
de análisis y diseño aportadas por la teoría de estabilidad de Lyapunov, de controladores PID, de
observadores, de control adaptativo, etcétera.
El modelo dinámico de un robot es no lineal, multivariable fuertemente acoplado, y de parámetros
variantes, por lo que en general, su control es extremadamente complejo. En la práctica se llevan a cabo
ciertas simplificaciones, que resultan aceptables para un gran número de los robots comerciales, las cuales
facilitan el diseño del sistema de control proporcionando resultados razonablemente buenos, aunque limitan
en ciertas situaciones su desempeño.
Una técnica para controlar el movimiento de las articulaciones es considerar un modelo del robot
compuesto por la superposición de articulaciones totalmente independientes unas de otras, sin tener en
cuenta la interacción entre ellas, que sin duda existe y condiciona el movimiento global. En ese caso, el
modelo dinámico empleado es directamente el correspondiente al actuador de una articulación. Este modo
de control se conoce como control desacoplado o monoarticular. Su principal ventaja es su simplicidad de
cálculo y es habitual implementar controladores PID, PID con prealimentación y PD con compensación de
gravedad. La principal desventaja surge en aquellas ocasiones en las que existe una gran influencia del
movimiento de una articulación sobre otras, y por ende, sobre el movimiento global.
El control acoplado o multiarticular se basa en un modelo de robot que considera el modelo dinámico
global del mismo, es decir, se tiene en cuenta la influencia de los movimientos de las articulaciones entre sí.
Está claro que, desde el punto de vista analítico, este planteamiento resulta más complejo. Las técnicas de
control utilizadas son las basadas en control PD, PID y control por prealimentación, utilizándose también
en ocasiones la linealización por inversión del modelo. También se emplean técnicas de control más
sofisticadas, como control no lineal, control robusto, control adaptable.
Dos objetivos particulares del control dinámico son la regulación (control de posición pura) y el seguimiento
a trayectorias (control de movimiento). El control de posición pura consiste en llevar el TCP de cualquier
punto inicial a un punto fijo en el espacio, denominado posición deseada o set point, y que permanezca ahí
indefinidamente. El control de movimiento o seguimiento a trayectorias consiste en hacer que el TCP
recorra toda una trayectoria con exactitud desde cualquier punto inicial.
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 50
6.2 Diseño de control de posición
Considérese el modelo dinámico de un robot manipulador de n g.d.l. que no interactúa con el medio
ambiente, con eslabones rígidos, sin fricción en sus uniones, y con actuadores ideales
( ) ( , ) ( )M q q C q q q G q (27)
donde nq ,
nq , nq denotan la posición, velocidad y aceleración articular, respectivamente.
( ) n nM q es la matriz de inercia y es simétrica y definida positiva, ( , ) nC q q q es el vector de fuerzas
centrípetas y de Coriolis, ( ) nG q es el vector de fuerzas o pares gravitacionales, y n es el vector de
fuerzas o pares aplicados mediante los actuadores.
El objetivo de control de posición pura, o simplemente control de posición, consiste en determinar una función
tal que las posiciones articulares q del robot modelado por (27) lleguen asintóticamente a una posición
articular deseada constante qd. Es decir en términos formales, el problema de control de posición consiste en
determinar de tal forma que
lim ( ) dt
q t q
(28)
donde n
dq es un vector constante.
La función vectorial se denomina ley de control y puede tener como argumentos las variables y elementos
modelados del robot
( , , , , ( ), ( , ), ( ))dq q q q M q C q q G q (29)
Muchos de los robots manipuladores industriales disponen de sensores de posición y velocidad para cada
articulación, por lo que se supondrán medibles. Para fines prácticos es deseable que el controlador no
dependa de la aceleración articular. Cuando no se dispone de sensores suficientes es necesario estimar las
variables requeridas mediante filtrado u observadores. Si (29) incluye como argumentos a
( ), ( , ) ( )M q C q q o G q , se dice que el controlador se basa en el modelo del robot.
Al proponer cualquier controlador (29) es necesario garantizar la estabilidad y cumplimiento del objetivo
del robot (27) en lazo cerrado con (29). La metodología de análisis es la siguiente:
1. Obtención de la ecuación dinámica de lazo cerrado, reemplazando la ley de control (29) en el modelo
dinámico (27).
2. Representación de la ecuación de lazo cerrado en función del error de posición ( ) ( )de t q q t y
velocidad articular q , es decir reemplazar q por ( )dq e en (27), lo cual resulta en una ecuación de lazo
cerrado que se representa como una ecuación de estado con el vector de estado T
TTx e q
:
1( ) ( , ) ( )d d d
qedx
M q e C q e q q G q eqdt
(30)
3. Análisis de existencia y posible unicidad de los puntos de equilibrio xe de (30).
4. Propuesta de una función candidata de Lyapunov y estudio de estabilidad de algún punto de equilibrio
de interés de la ecuación de lazo cerrado (30) según los teoremas de estabilidad.
5. En caso necesario y complementariamente al paso 4, determinar las propiedades de estabilidad
empleando el Lema de LaSalle.
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 51
Si se cumple exitosamente la metodología anterior, entonces el uso de la ley de control propuesta es viable
para alcanzar el objetivo de control de posición (28). A continuación se presentan algunos de los
controladores más recurrentes en robots manipuladores y su análisis de estabilidad.
6.3 Control por linealización exacta y retroalimentación de estados
Esta ley de control viene dada por
1 2( , ) ( ) ( )[ ]C q q q G q M q K e K q (31)
donde 1 2, n nK K son matrices diagonales constantes conocidas y denominadas ganancias de
retroalimentación. Puesto que el vector de posición deseada qd es constante, definiendo el estado x1 como el
error ( ) ( )de t q q t y el estado x2 como la velocidad ( )q t , entonces el modelo en espacio de estados de
lazo cerrado de (30) y (31) es
1 2 2 1 1 1 1 2
2
1
1 1 2 2 1
2
1
1 1 2 2 1
2 1
2
1 1 2 1 22 2
( , ) ( ) ( )[
( ) ( , ) ( )
( ) ( (
0
] , ) )
d d d
d d dd d d
xx
M q x C q x x x G q x
x
M q x C q xC q x x G q x
x I xAx
K K
x x x G q x M q x K x K x
x xK x K
Puesto que el sistema resultante es lineal, para garantizar que la solución T
TTx e q
tienda a cero ante
cualquier condición inicial sólo es necesario que todos los valores propios de 2 2n nA tengan parte real
negativa. Esto se logra ajustando las ganancias de retroalimentación K1 y K2 (reubicación de polos de A). Es
decir, el polinomio característico de A es 2
2 2 2 1det( ) 0n nsI A s I K s K
Por lo que pueden escribirse n polinomios 2
2 1 0i is K s K , uno por cada articulación, e igualarlos a
polinomios de 2 valores propios 1 2,i i , esto es
2 2
2 1 1 2 1 2 1 2( )( ) ( ) 0i i i i i i i is K s K s s s s . Entonces las ganancias se calculan como
2 1 2
1 1 2
i i i
i i i
K
K
En la siguiente figura se muestra un diagrama de bloques del controlador y el robot.
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 52
Ejercicio: Realice las operaciones, así como las simulaciones en Matlab que verifican lo siguiente.
Considere el modelo de un péndulo ideal dado por 2 sin( )ml q mgl q
Si utilizamos el controlador (31), el sistema en lazo cerrado tendría único punto de
equilibrio en la posición deseada. Supóngase los siguientes valores numéricos 2 1ml , 1mgl , 1 20.4, 0.4, 90ºdq , condiciones iniciales
(0) 30º , (0) 0q q . La respuesta en lazo cerrado es
6.4 Control PD y control proporcional con retroalimentación de velocidad
La ley de control PD viene dada por
p v
deK e K
dt (32)
0 5 10 15 20 25 30-50
0
50
100Posición articular
t
q(t
)
0 5 10 15 20 25 300
5
10
15
20Velocidad articular
t
dq(t
)/dt
-8 -6 -4 -2 0 2 4 6 8
-8
-6
-4
-2
0
2
4
6
8
Posición en el plano cartesiano del Péndulo simple: ml2q"+mgl*Sen(q) =
X
Y
Robot
G(q)
C(q,dq) dq
qd
q
dq e
K1
K2
M(q) + -
-
+ + +
+
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 53
donde , n n
p vK K son matrices simétricas definidas positivas y denominadas ganancias proporcional y
derivativa, respectivamente. Puesto que el vector de posición deseadas qd es constante y el vector de error es
( ) ( )de t q q t resulta que (32) es equivalente a la ley de control proporcional con retroalimentación de
velocidad
p vK e K q (33)
denominando a pK y vK como ganancias de posición y de velocidad respectivamente. La ley de control
(32) puede implementarse midiendo sólo el error de posición e y diferenciarlo por hardware o software pero
es necesario cuidar la calidad de la derivada. La ley de control (33) puede implementarse por elementos
puramente proporcionales midiendo el error de posición e y la velocidad articular q , o también podrían
utilizarse filtros observadores para estimar la velocidad articular en lugar de medirla. Por lo anterior, las
leyes de control (32) y (33) son exactamente lo mismo conceptualmente y pueden denotarse indistintamente
como controlador PD. En la siguiente figura se ilustra la diferencia de implementación.
La ecuación de lazo cerrado del robot (27) y el controlador PD (33) es
( ) ( , ) ( ) p vM q q C q q q G q K e K q (34)
Luego (34) se representa como (30) con el vector de estado T
TTx e q
:
1( ) ( , ) ( )d p v d d
qx
M q e K e K q C q e q q G q e
(35)
Robot qd
q
dq e
Kp
Kv
+ -
-
+
Robot qd
q
e
Kp + -
+
+
Kd d/dt
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 54
Si (35) tuviese puntos de equilibrio vendrían dados por 0T T
T TT T
e e eex e q e
, donde
n
ee es
solución de ( ) 0p e d eK e G q e . En general, esta ecuación es no lineal y sus soluciones explícitas de
obtención relativamente complicada.
Ejercicio: Realice las operaciones, así como las simulaciones en Matlab que verifican lo siguiente.
Considere el modelo de un péndulo ideal dado por 2 sin( )ml q mgl q
Si utilizamos el controlador (33), el sistema en lazo cerrado sería tal que sus puntos de equilibrio deben
satisfacer sin( ) 0p e d eK e mgl q e . Supóngase los siguientes valores numéricos 2 1ml , 1mgl ,
0.25pK , 0.5vK , / 2 90ºdq . Por métodos numéricos o computacionales resulta que hay 3
puntos de equilibrio:
1.25 2.13 3.56 18.38º 212.2833042º 296º, , ( ) ( ) , ,
0 0 0 0 0 0
e
d
e
e
e
eq t q e t
q
q
q
,
por lo que al implementar el controlador en lazo cerrado resulta que
lim0
e
t
q q
q
.
Esto es, q(t) tiende a alguno de los equilibrios en forma local y no están en el origen por lo cual la posición
articular no alcanza ni permanece en la posición deseada 90ºdq . Las siguientes figuras ilustran el
comportamiento con condiciones iniciales 16
(0) 30ºq , (0) 0q y (0) 213ºq .
0 5 10 15 20 25 30-40
-20
0
20
40
60
80
100Posición articular
t
q(t
)
0 5 10 15 20 25 30-20
-10
0
10
20
30
40Velocidad articular
t
dq(t
)/dt
-8 -6 -4 -2 0 2 4 6 8
-8
-6
-4
-2
0
2
4
6
8
Posición en el plano cartesiano del Péndulo simple: ml2q"+mgl*Sen(q) =
X
Y
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 55
Obviamente si ( ) 0d eG q e el punto de equilibrio en el origen sería único. Por ello, el uso del controlador
PD (33) es altamente recomendable en robots sin término gravitacional, por ejemplo robots de movimiento
exclusivamente en el plano horizontal:
( ) ( , )M q q C q q q (36)
Entonces la ecuación de lazo cerrado (35) para (36) se simplifica a
1( ) ( , )d p v d
qx
M q e K e K q C q e q q
(37)
la cual tiene como único punto de equilibrio a 0 0 0T
TT
ex
. En ese caso, considere la función
candidata de Lyapunov radialmente no acotada
1 12 2
( , ) ( )T T
pV e q e K e q M q q (38)
Recuerde que Kp y M(q) son matrices definidas positivas y Kp es constante. La derivada de (38) respecto al
tiempo es
1 12 2
1 12 2
1 1 12 2 2
12
( , ) ( ) ( ) ( )
( ) 2 ( )
2 ( ) 2 ( )
( ) ( )
T T T T T T
p p p
T T T T
p p
T T T
p
T T T
p
V e q e K e e K e e K e q M q q q M q q q M q q
e K e e K e q M q q q M q q
e K e q M q q q M q q
e K e q M q q q M q
q
Sustituyendo ( )M q q de (36) y (33), y tomando la propiedad 12
( ) ( , ) 0Tq M q C q q q se llega a
12
12
( , ) ( ) ( , )
( ) ( , )
T T T T
p p v
T T T T
p p v
V e q e K e q M q C q q q q K e q K q
e K q q M q C q q q q K e q K q
( , ) 0T
vV e q q K q (39)
Puesto que la derivada (39) es semidefinida negativa el punto de equilibrio en el origen es estable. Basados
en el teorema y corolario de LaSalle se determina que
0 5 10 15 20 25 3050
100
150
200
250
300
350Posición articular
t
q(t)
0 5 10 15 20 25 30-10
-5
0
5
10
15
20
25Velocidad articular
t
dq(t
)/dt
-8 -6 -4 -2 0 2 4 6 8
-8
-6
-4
-2
0
2
4
6
8
Posición en el plano cartesiano del Péndulo simple: ml2q"+mgl*Sen(q) =
X
Y
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 56
2 : ( , ) 0, 0,n ne
V e q q eq
, (40)
Para que una solución pertenezca a (40) para todo 0t es necesario y suficiente que 0q para todo 0t ,
lo cual implica que la aceleración sea 0q para todo 0t . A partir de este hecho y de la ecuación (37) se
concluye que el conjunto invariante más grande es 0M
e
q
. Por lo tanto se garantiza que el punto
de equilibrio en el origen es globalmente asintóticamente estable y en consecuencia
lim ( ) lim ( ) 0dt t
e t q q t
,
es decir, se verifica el objetivo de control de posición (28).
Ejercicio: Realice las operaciones, así como las simulaciones en Matlab que verifican lo siguiente.
Considere el modelo de un péndulo ideal dado por 2ml q
Si utilizamos el controlador (33), el sistema en lazo cerrado tiene un único punto de equilibrio globalmente
asintóticamente estable en el origen. Por lo cual la posición articular siempre alcanza a la posición deseada
y permanece ahí. Supóngase los siguientes valores numéricos 2 1ml , 0.25pK , 0.5vK , las
condiciones iniciales del robot son (0) 30ºq , (0) 0q y (0) 180ºq . Las siguientes figuras lo ilustran.
6.5 Control PD con compensación de gravedad
Cuando el robot manipulador sí tiene el término gravitacional G(q) no es práctico utilizar el controlador PD
(33), por ello se presenta otra estrategia. La ley de control PD con compensación de gravedad es dada por
( ) ( )p v p v
deK e K G q K e K q G q
dt (41)
0 5 10 15 20 25 30-50
0
50
100
150
200Posición articular
t
q(t)
0 5 10 15 20 25 30-30
-20
-10
0
10
20
30
40Velocidad articular
t
dq(t
)/dt
-8 -6 -4 -2 0 2 4 6 8
-8
-6
-4
-2
0
2
4
6
8
Posición en el plano cartesiano del Péndulo simple: ml2q" =
X
Y
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 57
donde , n n
p vK K son matrices simétricas definidas positivas y denominadas ganancias proporcional y
derivativa, respectivamente. La implementación del controlador (41) requiere del conocimiento parcial del
modelo dinámico del robot por el término gravitacional G(q), el cual es necesario estimarlo en tiempo real.
La ecuación de lazo cerrado del robot (27) y el controlador (41) es
( ) ( , ) ( ) ( )p vM q q C q q q G q K e K q G q (42)
Si el término gravitacional es suficientemente bien aproximado por el controlador es obvio que (41) se
reduce a
( ) ( , ) p vM q q C q q q K e K q
y su representación en ecuación de estado es (37), con el vector de estado T
TTx e q
, la cual tiene
como único punto de equilibrio a 0 0 0T
TT
ex
. De este hecho y de los resultados de la Sección 6.3,
es evidente que el punto de equilibrio es globalmente asintóticamente estable y se verifica el objetivo de
control de posición (28). En la siguiente figura se muestra un diagrama de bloques del controlador y el
robot.
Ejercicio: Realice las operaciones, así como las simulaciones en Matlab que verifican lo siguiente.
Considere el modelo de un péndulo ideal dado por 2 sin( )ml q mgl q
Si utilizamos el controlador (41), el sistema en lazo cerrado tiene un único punto de equilibrio globalmente
asintóticamente estable en el origen. Por lo cual la posición articular siempre alcanza a la posición deseada.
Supóngase los siguientes valores numéricos 2 1ml , 1mgl , 0.25pK , 0.5vK , las condiciones
iniciales del robot son (0) 0q , (0) 0q y (0) 213ºq . Las siguientes figuras lo ilustran.
Robot
G(q)
qd
q
dq e
Kp
Kv
+ -
-
+ + +
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 58
Ejercicio 2: Realice las operaciones, así como las simulaciones en Matlab que verifican lo siguiente.
Considere el modelo de un robot de 2 eslabones angulares (página 28) cuyo término gravitacional es
1 2 1 1
2 2 2
( ) cos( )( )
cos( )
m m gl qG q
m gl q
Si utilizamos el controlador (41), el sistema en lazo cerrado tiene un único punto de equilibrio globalmente
asintóticamente estable en el origen. Por lo cual la posición articular siempre alcanza a la posición deseada.
Supóngase valores numéricos para los parámetros y ganancias 5 0
0 5pK
, 2 0
0 2vK
, 45º
30ºdq
,
condiciones iniciales del robot son (0) 90º 120ºT
q y (0) 0 0T
q . Las siguientes figuras lo
ilustran.
6.6 Control PD con compensación precalculada de gravedad
En ocasiones no es práctica la implementación del controlador (41) debido a inconvenientes o carencia de
dispositivos para calcular el término gravitacional en tiempo real, en algunos casos es posible implementar
una variante de (41). La ley de control PD con compensación precalculada de gravedad es dada por
0 5 10 15 20 25 30-50
0
50
100
150
200
250Posición articular
t
q(t
)
0 5 10 15 20 25 30-40
-20
0
20
40Velocidad articular
t
dq(t
)/dt
-8 -6 -4 -2 0 2 4 6 8
-8
-6
-4
-2
0
2
4
6
8
Posición en el plano cartesiano del Péndulo simple: ml2q"+mgl*Sen(q) =
X
Y
0 5 10 15 20 25 30-100
-50
0
50
100
150Posición articular 1
tiempo
q1(t
)
0 5 10 15 20 25 30-100
-50
0
50
100
150
200
tiempo
dq
1/d
t
Velocidad articular 1
0 5 10 15 20 25 30-150
-100
-50
0
50
100Posición articular 2
tiempo
q2(t
)
0 5 10 15 20 25 30-50
0
50
100
150
tiempo
dq
2/d
t
Velocidad articular 2
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2-2
-1.5
-1
-0.5
0
0.5
1
1.5
2Posición en el plano cartesiano del Péndulo doble
X
Y
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 59
( )
( )
p v d
p v d
deK e K G q
dt
K e K q G q
(43)
donde , n n
p vK K son matrices simétricas definidas positivas. La implementación del controlador (43)
requiere del conocimiento parcial del modelo dinámico del robot por el término gravitacional G(qd), pero
estimado fuera de línea.
La ecuación de lazo cerrado del robot (27) y el controlador (43) es
( ) ( , ) ( ) ( )p v dM q q C q q q G q K e K q G q (44)
y su representación en ecuación de estado con el vector de estado T
TTx e q
es
1( ) ( , ) ( ) ( )d p v d d
qx
M q e K e K q C q e q q G q G q
(45)
El sistema en lazo cerrado (45) es tal que sus puntos de equilibrio deben satisfacer
( ) ( )p e d e dK e G q e G q . Entonces no es fácil obtener soluciones explícitas para los puntos de equilibrio.
Sin embargo, para el caso de robots provistos únicamente con articulaciones rotacionales es posible deducir
que eligiendo la matriz Kp “suficientemente grande” el punto de equilibrio en el origen es único y que es
globalmente asintóticamente estable, es decir, que se verifica el objetivo de control de posición pura (28). En
la siguiente figura se muestra un diagrama de bloques del controlador y el robot.
Ejercicio: Realice las operaciones, así como las simulaciones en Matlab que verifican lo siguiente.
Considere el modelo de un robot de 2 eslabones angulares (página 28) cuyo término gravitacional es
1 2 1 1
2 2 2
( ) cos( )( )
cos( )
m m gl qG q
m gl q
Si utilizamos el controlador (43) y Kp “suficientemente grande” (en este caso cuyos valores propios sean
mayores a 80.578), el sistema en lazo cerrado sería tal que hay un solo punto de equilibrio globalmente
asintóticamente estable en el origen. Supóngase valores numéricos para los parámetros y ganancias
5 0
0 5pK
, 2 0
0 2vK
, 45º
30ºdq
, condiciones iniciales (0) 90 120T
q y (0) 0 0T
q ,
entonces las posiciones articulares tienen la evolución ilustrada en las siguientes figuras.
Robot
G(qd)
qd
q
dq e
Kp
Kv
+ -
-
+ + +
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 60
Si las ganancias proporcionales son mayores 17 0
0 10pK
, 2 0
0 2vK
, entonces la posición articular
alcanza y permanece en la posición deseada dq . Las siguientes figuras lo ilustran.
Para mejorar la respuesta transitoria se aumenta la ganancia derivativa 8 0
0 5vK
:
0 5 10 15 20 25 30-100
0
100
200
300
400Posición articular 1
tiempo
q1(t
)
0 5 10 15 20 25 30-200
-100
0
100
200
300
tiempo
dq
1/d
t
Velocidad articular 1
0 5 10 15 20 25 30-200
-100
0
100
200
300Posición articular 2
tiempo
q2(t
)
0 5 10 15 20 25 30-200
-100
0
100
200
300
400
tiempodq
2/d
t
Velocidad articular 2
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2-2
-1.5
-1
-0.5
0
0.5
1
1.5
2Posición en el plano cartesiano del Péndulo doble
X
Y
0 5 10 15 20 25 30-100
0
100
200
300Posición articular 1
tiempo
q1(t
)
0 5 10 15 20 25 30-100
0
100
200
300
tiempo
dq
1/d
t
Velocidad articular 1
0 5 10 15 20 25 30-200
-100
0
100
200Posición articular 2
tiempo
q2(t
)
0 5 10 15 20 25 30-200
-100
0
100
200
300
400
tiempo
dq
2/d
t
Velocidad articular 2
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2-2
-1.5
-1
-0.5
0
0.5
1
1.5
2Posición en el plano cartesiano del Péndulo doble
X
Y
0 5 10 15 20 25 30-100
-50
0
50
100Posición articular 1
tiempo
q1(t
)
0 5 10 15 20 25 30-50
0
50
100
150
200
tiempo
dq
1/d
t
Velocidad articular 1
0 5 10 15 20 25 30-150
-100
-50
0
50
100Posición articular 2
tiempo
q2(t
)
0 5 10 15 20 25 30-50
0
50
100
150
200
250
tiempo
dq
2/d
t
Velocidad articular 2
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2-2
-1.5
-1
-0.5
0
0.5
1
1.5
2Posición en el plano cartesiano del Péndulo doble
X
Y
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 61
6.7 Control PID
Una ley de control cuando el robot manipulador tiene el término gravitacional G(q), por lo que presenta un
offset o error en estado estacionario, o debido a fricción u otro problema, es el controlador PID. Es decir
considere el robot con fricción
( ) ( , ) ( ) ( , )f eM q q C q q q G q F q f (46)
donde ( , )f eF q f es el vector de pares de fricción y
1
2
[1 ( ) ] 0 0
0 [1 ( ) ] 0( , ) ( )
0 0 [1 ( ) ]
f e C e
n
signo q
signo qF q f Bq F signo q f
signo q
(47)
donde , n n
CB F son matrices diagonales de coeficientes de fricción viscosa y de Coulomb,
respectivamente. La fricción estática está representada por 1 2[ , ,..., ]T
e e e enf f f f que contiene los
coeficientes de fricción estática de cada uno de los actuadores del manipulador. La ley de control PID con
compensación de gravedad es dada por
0
0
( ) ( )
( ) ( )
t
p v i
t
p v i
deK e K K e d G q
dt
K e K q K e d G q
(48)
donde , , n n
p v iK K K son matrices simétricas definidas positivas convenientemente elegidas y
denominadas ganancias proporcional, derivativa e integral, respectivamente. Definiendo una nueva variable
0( )
t
w e d , el controlador (48) puede reescribirse como
( )p v iK e K q K w G q (49)
La ecuación de lazo cerrado del robot (46) y el controlador (49) en su representación en variables de estado T
T T Tx w e q es
1( ) ( , ) ( , )d p v i d f e
e
qx
M q e K e K q K w C q e q q F q f
(50)
la cual tiene como punto de equilibrio a 1( (0, )) 0 0T
T T T
e i f ex K F f . A diferencia de los
controladores anteriores, el PID no genera un punto de equilibrio de (50) en el origen con estabilidad
asintótica global, sino únicamente tiene estabilidad asintótica local, es decir que las condiciones iniciales del
error de posición y la velocidad sean suficientemente cercanos al punto de equilibrio, además siempre y
cuando las ganancias de (49) satisfagan ciertas condiciones de sintonía algo complicadas. Cuando el robot
(46) tiene articulaciones puramente rotacionales es posible no incluir el término gravitacional en el
controlador PID sino solamente estaría dado por
p v iK e K q K w
(51)
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 62
En este caso, también se obtiene un punto de equilibrio en 1( ( ( ) (0, ))) 0 0T
T T T
e i d f ex K G q F f
localmente asintóticamente estable, y las ganancias se sintonizan con la siguiente regla en términos de sus
valores propios
2
max min 0
max min
max maxmax min
minmin
i i
p p g
i
v v
p g
K K
K K k
K MK K
MK k
Cumpliendo de esta manera el objetivo de control de posición pura en forma local. En la siguiente figura se
muestra un diagrama de bloques del controlador y el robot.
Ejercicio: Realice las operaciones, así como las simulaciones en Matlab que verifican lo siguiente.
Considere el modelo de un robot de 2 eslabones angulares (página 28). Si utilizamos el controlador PD (33)
con valores numéricos 20 0
0 20pK
, 5 0
0 5vK
, 45º
30ºdq
, condiciones iniciales
(0) 90 120T
q y (0) 0 0T
q , la posición articular no alcanza a la posición deseada dq . Las
siguientes figuras lo ilustran.
Robot qd
q
e
Kp + -
+
+
Kd
KI
+
∫
d/dt
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 63
En cambio, si utilizamos el controlador (51) con ganancias 20 0
0 20pK
, 5 0
0 5vK
, 2 0
0 2iK
,
resulta que la posición articular deseada dq se alcanza y permanece ahí. Las siguientes figuras lo ilustran.
Conclusiones
Realice una discusión de los resultados estudiados, emita su opinión sobre los casos en que “debe” usarse
cada controlador, así como sus ventajas y desventajas.
0 5 10 15 20 25 30-100
-50
0
50Posición articular 1
tiempo
q1(t
)
0 5 10 15 20 25 30-100
-50
0
50
100
150
200
250
tiempo
dq
1/d
t
Velocidad articular 1
0 5 10 15 20 25 30-150
-100
-50
0
50Posición articular 2
tiempo
q2(t
)
0 5 10 15 20 25 30-50
0
50
100
150
200
250
300
tiempo
dq
2/d
t
Velocidad articular 2
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2-2
-1.5
-1
-0.5
0
0.5
1
1.5
2Posición en el plano cartesiano del Péndulo doble
X
Y
0 5 10 15 20 25 30-100
-50
0
50Posición articular 1
tiempo
q1(t
)
0 5 10 15 20 25 30-100
0
100
200
300
tiempo
dq
1/d
t
Velocidad articular 1
0 5 10 15 20 25 30-150
-100
-50
0
50Posición articular 2
tiempo
q2(t
)
0 5 10 15 20 25 30-100
0
100
200
300
tiempo
dq
2/d
t
Velocidad articular 2
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2-2
-1.5
-1
-0.5
0
0.5
1
1.5
2Posición en el plano cartesiano del Péndulo doble
X
Y
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 64
CAPÍTULO 7 – CONTROL DE MOVIMIENTO
7.1 Introducción
El control de movimiento (seguimiento a trayectorias) consiste en hacer que el TCP recorra una trayectoria
deseada con exactitud, lo cual se logra si las variables generalizadas q(t) recorren ciertas trayectorias
definidas o funciones temporales qd(t) desde cualquier punto inicial.
Una manera de especificar las trayectorias es la denominada punto-a-
punto, la cual consiste en determinar una serie finita de puntos en el
espacio de trabajo por los que se desea que pase el TCP (y los
valores deseados correspondientes de las variables generalizadas).
Mediante un control de regulación o posición pura se posiciona el
TCP en el primer punto deseado de la trayectoria, luego que el TCP
ha alcanzado el objetivo (y de uno o más periodos de muestreo) se
cambia el valor del punto deseado o set point, y la ubicación actual
toma el papel de condición inicial y el TCP se moverá al nuevo
punto deseado, y así sucesivamente hasta recorrer toda la
trayectoria. En el control punto a punto no se controla directamente
la velocidad de movimiento ni las trayectorias entre punto y punto, para esto pueden utilizarse las técnicas
de control de posición pura del capítulo anterior.
Otra forma de especificar las trayectorias deseadas es
la llamada trayectoria continua denotada por una
función espacial continua parametrizada por el
tiempo. Con un control de trayectoria continua se
posiciona el TCP desde un punto inicial arbitrario
hasta alcanzar un punto inicial de una trayectoria
deseada, luego el TCP sigue en forma exacta toda la
trayectoria continua deseada. En este caso, sí se
controla directamente la velocidad de movimiento y trayectoria completa de las articulaciones del robot a lo
largo de toda la trayectoria deseada.
7.2 Diseño de control de movimiento
Considérese el modelo dinámico de un robot manipulador de n g.d.l. que no interactúa con el medio
ambiente, con eslabones rígidos, sin fricción en sus uniones, y con actuadores ideales
( ) ( , ) ( )M q q C q q q G q (52)
donde nq ,
nq , nq denotan la posición, velocidad y aceleración articular, respectivamente.
( ) n nM q es la matriz de inercia y es simétrica y definida positiva, ( , ) nC q q q es el vector de fuerzas
centrípetas y de Coriolis, ( ) nG q es el vector de fuerzas o pares gravitacionales, y n es el vector de
fuerzas o pares aplicados mediante los actuadores.
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 65
El objetivo de control de movimiento consiste en determinar una función tal que de tal forma que
lim ( ) ( )dt
q t q t
(53)
donde ( ) n
dq t es un vector en función del tiempo.
La función vectorial se denomina ley de control y puede tener como argumentos las variables y elementos
modelados del robot
( , , , , , , ( ), ( , ), ( ))d d dq q q q q q M q C q q G q (54)
Muchos de los robots manipuladores industriales disponen de sensores de posición y velocidad para cada
articulación, por lo que se supondrán medibles. Para fines prácticos es deseable que el controlador no
dependa de la aceleración articular. Cuando no se dispone de sensores suficientes es necesario estimar las
variables requeridas mediante filtrado u observadores. Si (54) incluye como argumentos a
( ), ( , ) ( )M q C q q o G q , se dice que el controlador se basa en el modelo del robot.
Al proponer cualquier controlador (54) es necesario garantizar la estabilidad y cumplimiento del objetivo
del robot (52) en lazo cerrado con (54). La metodología de análisis es la siguiente:
1. Obtención de la ecuación dinámica de lazo cerrado, reemplazando la ley de control (55) en el modelo
dinámico (52).
2. Representación de la ecuación de lazo cerrado en función del error de posición ( ) ( ) ( )de t q t q t y de
velocidad articular ( ) ( ) ( )de t q t q t , lo cual resulta en una ecuación de lazo cerrado que se representa
como una ecuación de estado con el vector de estado T
TTx e e
:
1( ) ( , )[ ] ( )d d d d d
eedx
M q e C q e q e q e G q eedt
(55)
3. Análisis de existencia y posible unicidad de los puntos de equilibrio xe de (55).
4. Propuesta de una función candidata de Lyapunov y estudio de estabilidad de algún punto de equilibrio
de interés de la ecuación de lazo cerrado (55) según los teoremas de estabilidad.
5. En caso necesario y complementariamente al paso 4, determinar las propiedades de estabilidad
empleando el Lema 2.2 de la página 30 de libro de R. Kelly.
Si se cumple exitosamente la metodología anterior, entonces el uso de la ley de control propuesta es viable
para alcanzar el objetivo de control de movimiento (53). A continuación se presentan algunos de los
controladores más recurrentes en robots manipuladores y su análisis de estabilidad.
UANL-FIME-DEPARTAMENTO DE ELECTRÓNICA Y AUTOMATIZACIÓN CONTROL DE ROBOTS
DR. JUAN ANGEL RODRÍGUEZ LIÑÁN 66
APÉNDICE – PRELIMINARES MATEMÁTICOS
A.1 Formulario de identidades trigonométricas
A.2 Tabla de cálculo diferencial
A.3 Análisis vectorial planar y espacial
A.4 Álgebra lineal