0% encontró este documento útil (0 votos)
27 vistas107 páginas

Tesis RVM2C1

Cargado por

Cristian
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
27 vistas107 páginas

Tesis RVM2C1

Cargado por

Cristian
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

RAE

1. TIPO DE DOCUMENTO: Trabajo de grado para optar por el título de INGENIERO MECATRÓNICO
2. TÍTULO: DESARROLLO DE UN SISTEMA DE CONTROL PARA EL SEGUIMIENTO DE
TRAYECTORIAS EN EL ESPACIO XYZ DEL ROBOT MITSUBISHI MOVEMASTER RV-M1
3. AUTORES: Johan Sebastián Medina Camacho y Jhoan Sebastian Caballero Mateus
4. LUGAR: Bogotá, D.C
5. FECHA: Julio de 2019
6. PALABRAS CLAVE: Cinemática, Control de motores, Denavit-Hartenberg, Dinámica, Ecuaciones
paramétricas, Grados de libertad, Robot manipulador, Robótica.
7. DESCRIPCIÓN DEL TRABAJO: El objetivo principal de este proyecto es el diseño y la
implementación de un control para el seguimiento de trayectorias en el espacio operacional de un
robot con 5 grados de libertad; además del desarrollo y validación del modelo dinámico para dicho
robot basados en la metodología de Euler-Lagrange y un desarrollo previo a la cinemática
involucrada (tanto directa como inversa); se plantean diferentes controladores y se comparan sus
desempeños y tolerancia a incertidumbres. También se presentan el diseño de los drivers para la
puesta en marcha del sistema robótico y el sistema para la implementación de los controladores.
8. LÍNEAS DE INVESTIGACION: Líneas de Investigación Facultad de Ingeniería: Automatización de
procesos y robótica.
9. METODOLOGÍA: Es de carácter empírico-analítico ya que con el desarrollo de ciertas actividades se
pretende a partir de bases teóricas y/o matemáticas validar experimentalmente y comparar los
resultados para su posterior retroalimentación.
10. CONCLUSIONES: Se demuestra que con base a convenios como el denominado Denavit-Hartenberg
se puede representar cualquier robot de tipo serial tanto en el espacio articular como en el de la tarea.
Con métodos como Euler-Lagrange y a partir del desarrollo cinemático se puede obtener un modelo
no lineal aceptable para un robot del tipo manipulador, importante en la implementación de
controladores feedforward, de torque pre-calculados, feedback linearization, entre otros. Con la
implementación de técnicas avanzadas de control como ADRC y SMC, se presentan un buen
desempeño que se traduce a un seguimiento adecuado con un error muy bajo de la trayectoria
deseada incluso ante la presencia de incertidumbres, fallas y perturbaciones; lo cual amplia las
aplicaciones para un tipo de robot manipulador.
DESARROLLO DE UN SISTEMA DE CONTROL PARA EL ii
SEGUIMIENTO DE TRAYECTORIAS EN EL ESPACIO XYZ DEL
ROBOT MITSUBISHI MOVEMASTER RV-M1

Caballero Mateus Jhoan Sebastián


Medina Camacho Johan Sebastián

Universidad de San Buenaventura, Sede Bogotá.


Facultad de Ingeniería.
Programa de Mecatrónica
Bogotá, Colombia
2019
iii
DESARROLLO DE UN SISTEMA DE CONTROL PARA EL
SEGUIMIENTO DE TRAYECTORIAS EN EL ESPACIO XYZ DEL
ROBOT MITSUBISHI MOVEMASTER RV-M1

Caballero Mateus Jhoan Sebastián


Medina Camacho Johan Sebastián

Coral Enríquez Horacio Andrés

Universidad de San Buenaventura, Sede Bogotá.


Facultad de Ingeniería.
Programa de Mecatrónica
Bogotá, Colombia
2019
iv

Tabla De Contenido

INTRODUCCIÓN .......................................................................................................................... 1
Capítulo 1 ........................................................................................................................................ 3
Antecedentes ............................................................................................................................... 3
Planteamiento del problema ........................................................................................................ 6
Justificación y pregunta de Investigación ................................................................................... 7
Objetivo General ......................................................................................................................... 8
Objetivos Específicos.................................................................................................................. 8
Alcances y Limitaciones ............................................................................................................. 9
Metodología .............................................................................................................................. 10
Capítulo 2 ...................................................................................................................................... 12
2.1 Caracterización del sistema robótico .................................................................................. 12
Especificaciones del robot .................................................................................................... 12
Estado inicial del Robot ........................................................................................................ 15
2.2 Implementación de tarjetas de control ................................................................................ 17
Descripción de la unidad de procesamiento.......................................................................... 20
Implementación de los módulos de control .......................................................................... 23
Capítulo 3 ...................................................................................................................................... 34
Modelo cinemático.................................................................................................................... 34
Cinemática directa ................................................................................................................ 36
Cinemática inversa ................................................................................................................ 39
Modelo dinámico ...................................................................................................................... 41
Validación del modelo no lineal ........................................................................................... 43
Desacople estático................................................................................................................. 48
Capítulo 4 ...................................................................................................................................... 51
Control en el espacio de la tarea ............................................................................................... 51
Control ADRC ...................................................................................................................... 52
Control SMC ......................................................................................................................... 54
Generación de trayectorias ........................................................................................................ 56
Trayectoria en el espacio operacional ................................................................................... 57
Trayectoria en el espacio articular ........................................................................................ 58
Diseño y simulación de los controladores ................................................................................ 60
Diseño del Observador de estados ........................................................................................ 61
Simulación del control ADRC .............................................................................................. 62
Simulación del control SMC................................................................................................. 64
Análisis de Resultados .............................................................................................................. 67
Resultados experimentales con la trayectoria 1 .................................................................... 68
Resultados experimentales con la trayectoria 2 .................................................................... 79
CONCLUSIONES ........................................................................................................................ 90
REFERENCIAS............................................................................................................................ 92
Anexo I. Cálculo del modelo dinámico general............................................................................ 94
Anexo II. Observador de derivadas .............................................................................................. 99
Lista de tablas v
Tabla 1. Lista de Actividades........................................................................................................ 10
Tabla 2. Restricciones de movimiento. ......................................................................................... 14
Tabla 3. Especificaciones de motores y frenos. ............................................................................ 15
Tabla 4. Requisitos de funcionamiento......................................................................................... 18
Tabla 5. Distribución de pines en la unidad de procesamiento..................................................... 23
Tabla 6. Código de colores de los encoders.................................................................................. 24
Tabla 7. Parámetros de D-H.......................................................................................................... 37
Tabla 8. Inercias, Masas y distancias del robot. ........................................................................... 43
Tabla 9. Parámetros de los motores. ............................................................................................. 45
Tabla 10. Ganancias del controlador PID ..................................................................................... 46
Tabla 11. Valores estimados del modelo. ..................................................................................... 48
Tabla 12. Valores estimados del modelo. ..................................................................................... 50
Tabla 13. Ganancias del observador en cada eslabón. .................................................................. 62
Lista de Figuras vi

Figura 1. Principales componentes del sistema.(Felipe et al., 2013) ............................................ 13


Figura 2. Volumen de trabajo.(FIME, 2002) ................................................................................ 14
Figura 3. Estado inicial del robot. ................................................................................................. 16
Figura 4. Esquema de conexión. ................................................................................................... 19
Figura 5. Ubicación de pines PCI-6602. (Headquarters, 1999) .................................................... 21
Figura 6. Ubicación de pines PCI-6070E. (Headquarters, 2007) ................................................. 22
Figura 7. Conexión Schmitt Trigger. ............................................................................................ 25
Figura 8. Circuito activación/desactivación de los frenos. ........................................................... 26
Figura 9. Circuito de alimentación y lectura de Encoders. ........................................................... 27
Figura 10. Señales del módulo de lectura. .................................................................................... 28
Figura 11. Implementación final del módulo de lectura. .............................................................. 29
Figura 12. Circuito Puente H. ....................................................................................................... 30
Figura 13. Circuito optoacopladores HCPL2211.......................................................................... 30
Figura 14. Implementación final del módulo de control de motores. ........................................... 31
Figura 15. Circuito puente H LMD18200T. ................................................................................. 32
Figura 16 implementación final del módulo de control del efector final. .................................... 33
Figura 17. Parámetros de Denavit-Hartenberg.(Al., 2014) ........................................................... 35
Figura 18. Representación simbólica del manipulador Mitsubishi RV-M1. ................................ 36
Figura 19. Representación geométrica del manipulador Mitsubishi RV-M1. .............................. 39
Figura 20. Esquema del control PID. ............................................................................................ 45
Figura 21. Validación del modelo no lineal. ................................................................................. 47
Figura 22. Trayectorias en el espacio operacional. ....................................................................... 58
Figura 23. Referencias articulares para la trayectoria 1. ............................................................... 59
Figura 24. Referencias articulares para la trayectoria 2. ............................................................... 60
Figura 25. Diagrama de bloques del control ADRC. .................................................................... 63
Figura 26. Simulación del control ADRC..................................................................................... 64
Figura 27. Diagrama de bloques del control SMC. ...................................................................... 65
Figura 28. Simulación del control SMC. ...................................................................................... 66
Figura 29. Posición inicial del robot. ............................................................................................ 67
Figura 30. Error de posición articular en cada eslabón a velocidad alta....................................... 68
Figura 31. Señal de control aplicada a cada eslabón a velocidad alta. ......................................... 69
Figura 32. Error de posición articular en cada eslabón a velocidad media................................... 70
Figura 33. Señal de control aplicada a cada eslabón a velocidad media. ..................................... 71
Figura 34. Error de posición articular en cada eslabón a velocidad baja. ..................................... 72
Figura 35. Señal de control aplicada a cada eslabón a velocidad baja. ........................................ 73
Figura 36. Índices de desempeño con la primera trayectoria........................................................ 74
Figura 37. Comparación del desempeño de los controladores a velocidad alta. .......................... 75
Figura 38. Comparación del desempeño de los controladores a velocidad media. ...................... 75
Figura 39. Comparación del desempeño de los controladores a velocidad baja. ......................... 76
Figura 40. Coste energético para la trayectoria 1. ........................................................................ 76
Figura 41. Comparación del coste energético de los controladores a velocidad alta. .................. 77
Figura 42. Comparación del coste energético de los controladores a velocidad media. .............. 77
Figura 43. Comparación del coste energético de los controladores a velocidad baja................... 78
Figura 44. Error de posición articular en cada eslabón a velocidad alta....................................... vii 79
Figura 45. Señal de control aplicada a cada eslabón a velocidad alta. ......................................... 80
Figura 46. Error de posición articular en cada eslabón a velocidad media................................... 81
Figura 47. Señal de control aplicada a cada eslabón a velocidad media. ..................................... 82
Figura 48. Error de posición articular en cada eslabón a velocidad baja. ..................................... 83
Figura 49. Señal de control aplicada a cada eslabón a velocidad baja. ........................................ 84
Figura 50. Índices de desempeño con la segunda trayectoria. ...................................................... 85
Figura 51. Comparación del desempeño de los controladores a velocidad alta. .......................... 86
Figura 52. Comparación del desempeño de los controladores a velocidad media. ...................... 86
Figura 53. Comparación del desempeño de los controladores a velocidad baja. ......................... 87
Figura 54. Coste energético para la trayectoria 2. ........................................................................ 87
Figura 55. Comparación del coste energético de los controladores a velocidad alta. .................. 88
Figura 56. Comparación del coste energético de los controladores a velocidad media. .............. 88
Figura 57. Comparación del coste energético de los controladores a velocidad baja................... 89
1

INTRODUCCIÓN

La robótica es una de las áreas con mayor crecimiento en la actualidad y ha tenido gran

acogida en la industria, puesto que se necesitan de procesos cada vez más automatizados para

cumplir con la demanda y competir en el mercado. Estos robots industriales se basan en la unión

de una estructura mecánica y una parte electrónica – Para el sistema de control – para generar una

serie de movimientos y operaciones concretas.

Existen diferentes tipos de robots industriales, sin embargo, uno de los más comunes es el

antropomórfico, el cual asemeja un brazo humano y presenta las mejores características de acceso

con el efector final a los puntos comprendidos en su espacio de trabajo. El funcionamiento de

estos brazos robóticos está dado por sus grados de libertad (G.D.L.) al ser todas sus articulaciones

de rotación tienen gran versatilidad de uso ya que con un leve cambio en su programación puede

realizar diferentes tareas.

Generalmente el uso de estos robots consiste en seguir una trayectoria para un fin

determinado, el cual es programado para realizar diversas tareas como el desplazamiento de

piezas o herramientas. Estas características son compartidas con un manipulador, no obstante,

estos difieren por la complejidad de su control. Además, los robots antropomórficos presentan

inconvenientes en cuanto a la compensación de cargas e inercias de rotación, ya que los errores

de posicionamiento tienden a aumentar a medida que se extiende el brazo y la posición de los

actuadores, por lo tanto, el diseño de controladores para estos sistemas es un área de intensos

estudios donde se busca tener un alto grado de precisión y velocidad de trabajo para una función

determinada.
2

Como se mencionó anteriormente, además de las desventajas que se puedan presentar en

los robots antropomórficos, también existen factores externos al sistema que pueden afectar la

dinámica de este y con ello el controlador se puede ver afectado actuando de forma inadecuada.

Entonces es necesario hallar un control adecuado capaz de adaptarse a los diferentes cambios de

comportamiento que se puedan producir en estos brazos robóticos.

En este trabajo se diseña, implementa y valida un sistema de control robusto para un

robot antropomórfico “Mitsubishi Movemaster RV-M1” con el que cuenta la Universidad de San

Buenaventura. Para ello se realiza un modelo en un software de alta aceptación con el fin de

obtener la dinámica del sistema y realizar los debidos experimentos. La aplicación y posterior

validación de este esquema de control avanzado para el posicionamiento del brazo robótico en el

espacio tridimensional XYZ pretende abrir campos de investigación en varias áreas de ingeniería,

además de servir de base para aplicarlo como herramienta de enseñanza en asignaturas

relacionadas como sistemas dinámicos, control clásico y control moderno.


3

Capítulo 1

Antecedentes

Con el aumento en la automatización de procesos en la industria se han adoptado diversos

sistemas mecatrónicos con el fin de aumentar la producción y calidad. Entre estos se encuentran

los robots de tipo antropomórfico puesto que como ya se mencionó se usan para múltiples tareas

de manipulación, ensamblaje, pintura, entre otras. Sin embargo, estos sistemas se encuentran

descriptos por un modelo lineal sin tener en cuenta las no linealidades de este, aunque los

métodos para el control de este tipo de sistemas son válidos se requiere de una dinámica más

aproximada capaz de tolerar incertidumbres del modelado de sistemas no lineales, manteniendo

así un alto desempeño aun cuando este no se desarrolle.

A continuación, se reseñan algunas publicaciones recientes con la finalidad de ilustrar las

distintas tendencias en investigación sobre este campo.

En (Barraza Cantillo et al., 2017) se presenta la aplicación del principio energético

Lagrange-Euler para obtener el modelo matemático de la dinámica del robot Mitsubishi

Movemaster RV-M1, el modelo matemático se usa para calcular el par requerido en una

estrategia de control de compensación por gravedad, y se compara el efecto de las propiedades

obtenidas con SolidWorks. Tanto en (Barraza Cantillo et al., 2017) como en (Kumar, Kalra, &

Prakash, 2011) la respuesta del robot fue obtenida utilizando parámetros Denavit-Hartenberg. Por

otro lado, en (Mckinley, Rodríguez, Rodríguez, & González, 2012) se presenta la solución de la

cinemática inversa del manipulador RV-M1 mediante la técnica de la transformación inversa, en

la cual no se requieren proyecciones de manipulador, ahorrando tiempo en el análisis en este caso

haciendo uso de los parámetros Crane y Duffy. En los casos mencionados se lograron resultados
4

satisfactorios en los errores del espacio de la tarea en una forma no experimental, es decir, que

todos los análisis se basaron en simulación y modelos.

En (Jimenez, Vega, & Sanchez, 2010) se propuso un sistema de co-simulación. El

objetivo de este sistema fue proporcionar una simulación realista de una plataforma cooperativa

para dos manipuladores operados por un ser humano a través de interfaces táctiles, además de una

breve la estrategia de control compuesta por dos modos de operación, movimiento libre y de

restricción. En los resultados de esta co-simulación se evidencia que la diferencia entre los

controladores en la sección para el movimiento cooperativo es la solidez a las perturbaciones de

posición y orientación no deseadas del objeto que se está manipulando, puesto que se requerían

de condiciones iniciales específicas. Nuevamente la co-simulación mencionada se desarrolló en

un entorno virtual y sin análisis experimentales.

En (Castillo, 2008) se propuso el control de un brazo mecánico mediante técnicas de

computación suave y su objetivo consistía en obtener un modelo de cinemática inversa a partir de

un modelo de cinemática directa – del mismo modo que se mencionó en (Barraza Cantillo et al.,

2017) – para un robot manipulador de 3 grados de libertad. En este caso si se llevaron a cabo

pruebas experimentales además de las simulaciones, sin embargo, este sistema presenta un

margen de error alto para algunas aplicaciones. Además, puesto que el error en cada punto es

diferente, cuando se requiera seguir una trayectoria no lo hace de forma apropiada y no trata de

corregir su error de estimación puesto que su control se basa únicamente en la cinemática del

sistema.

En (Świder, Foit, Wszołek, & Mastrowski, 2007) se desarrolló el sistema universal y

modular, el cual pretendía permitir la programación remota y supervisión del robot Mitsubishi
5

Movemaster RV-M1. La idea principal del sistema fue la de crear una aplicación que fuera capaz

de generar un programa para el robot utilizando un dibujo CAD en el cual se encontraba

codificada una trayectoria y el estado de la pinza. Para lograrlo el programa hacia uso de su

propio diccionario para identificar y leer datos apropiados del archivo de dibujo. No obstante, en

este último radica su principal desventaja, puesto que el programa de traducción no tiene un nivel

avanzado de manejo de errores y no tiene posibilidad de verificar datos de dibujos para

traducirlos a un programa de control adecuado.

Por otro lado, en (Felipe et al., 2013) se propuso el diseño de una tarjeta de potencia para

el movimiento del robot Mitsubishi Movemaster RV-M1, propiedad de la universidad de San

Buenaventura, puesto que este no posee una tarjeta con dicho objetivo. En dicho documento se

centró únicamente en el diseño de tarjeta y para las pruebas respectivas se hizo uso de PLC’s, sin

embargo, dicha tarjeta ya no se encuentra en funcionamiento.

A partir de la breve síntesis de trabajos previamente reseñados, a continuación, se

identifican algunas oportunidades de investigación:

• Desarrollo de técnicas de modelamiento aproximado para robots con diversos

grados de libertad.

• Desarrollo de técnicas avanzadas de control en robots del tipo antropomórfico.

• Desarrollo de sistemas de alimentación y comunicación adecuados para el control

y monitoreo de robots con varios grados de libertad haciendo uso de software

académico.

• Validación de estrategias de control a partir de modelos de simulación avanzados

y realistas, incitando a la integración de diversos softwares.


6

Planteamiento del problema

En ingeniería de control es imperativo un buen modelamiento de los sistemas, los cuales

se debe diseñar un control específico bajo unos parámetros determinados y/o requeridos, sin

embargo, en dicho modelamiento se presentan incertidumbres, lo cual representa posibles fallas a

la hora de implementar el sistema de control.

En una planta de primer orden de la forma:

𝒌
𝑮(𝒔) = (1)
𝝉𝒔+𝟏

Donde 𝑘 corresponde a la ganancia del sistema y 𝜏 a la constante de tiempo del sistema.

Tenemos dos parámetros que determinan el comportamiento del sistema (𝑘, 𝜏), generalmente el

diseñador del control halla estos parámetros y los aproxima a un valor específico, no obstante,

como se dijo anteriormente aproximar estos valores representan un riesgo para la implementación

de un control. Este riesgo se debe a que en realidad los parámetros (𝑘, 𝜏) trabajan en un rango

dependiendo de la planta, y en ocasiones el desconocimiento de este rango puede inestabilizar el

sistema.

Por estas razones es necesario encontrar alternativas para un modelamiento más adecuado

y que tenga en cuenta los rangos de trabajo de los parámetros que determinen la dinámica del

sistema. Hoy en día existen diversos métodos que permiten dar un valor aproximado para estos

parámetros, como modelamiento por dominio de frecuencia, espacio de estados, entre otros. Sin

embargo, como ya se mencionó estas técnicas no son exactas, aunque permiten hallar los valores

aproximados de dichos parámetros. Tanto las técnicas de control clásicas como las modernas se

desarrollan sobre sistemas lineales considerando estos sistemas ideales, sin embargo, estos
7

sistemas presentan comportamientos no lineales, por lo cual se han desarrollado diversos métodos

para modelar estos sistemas aproximándolos al comportamiento de un sistema lineal y poder

aplicar diversas técnicas de control. No obstante, estos métodos no son exactos y siempre se

presentan incertidumbres que limitan el desempeño de los controladores.

Generalmente en la industria donde es necesario sistemas de control robustos las

incertidumbres mencionadas anteriormente presentan un serio problema, ya que se requiere de

una gran exactitud en la implementación de controladores ordinarios. Además, dichas

aplicaciones industriales se ven sometidas a diferentes factores que modifican el comportamiento

o dinámica de los sistemas. Por esta razón es necesario buscar alternativas de control capaces de

funcionar bajo diversos cambios a los que pueden ser sometidos o afectados dichos sistemas, con

altos niveles de robustez a fin de tolerar las incertidumbres del modelo y los cambios o

perturbaciones antes mencionados sin reducir el desempeño del controlador.

Justificación y pregunta de Investigación

Para este proyecto se requiere un trabajo de investigación sobre técnicas avanzadas de

control aplicándolo a sistemas industriales y salir a un mercado competitivo en el cual los

ingenieros mecatrónicos deben demostrar todas las capacidades adquiridas para satisfacer las

necesidades. También con la restauración del Robot y la implementación de un sistema de

control, se puede obtener nuevos conocimientos prácticos para futuros estudiantes de la carrera

que les permita reforzar sus conocimientos y aplicaciones en la línea de control industrial.

Volviendo así, las materias de control y la automatización industrial materias totalmente prácticas

para que los estudiantes puedan salir más preparados. Este trabajo busca fomentar la

investigación a sistemas de control aplicándolo en la robótica industrial.


8

Teniendo en cuenta lo expresado anteriormente y la importancia de la investigación en

estos campos, para el refuerzo y desarrollo de nuevos conocimientos, además de las diversas

aplicaciones de este tipo de manipuladores en la industria surge la pregunta de investigación.

¿Cómo desarrollar un sistema de control con técnicas avanzadas en un robot manipulador con una

robustez adecuada para diferentes aplicaciones?

Objetivo General

Diseñar e implementar un sistema de control robusto para el seguimiento de trayectorias

en el espacio XYZ del Robot Mitsubishi Movemaster RV-M1.

Objetivos Específicos

• Analizar los diversos métodos utilizados para la descripción de la dinámica de un

sistema de varios grados de libertad y obtener un modelo no lineal validado del

robot.

• Implementar un sistema de alimentación y comunicación adecuado para el robot

antropomórfico.

• Diseñar e implementar un esquema de control para controlar la posición del

efector final del robot.

• Analizar y validar el desempeño y robustez del control propuesto con la ayuda de

índices que cuantifiquen dichas características.


9

Alcances y Limitaciones

Este proyecto está enfocado a realizar el modelado del Robot Mitsubishi Movemaster

RV-M1, para así aplicar un controlador y pueda seguir una trayectoria en el espacio XYZ, para

esto se requiere implementar unas tarjetas de adquisición de datos y de control que permitan

obtener las señales de todos los sensores y componentes que están incluidos en el robot, también

se requiere de hacer un mantenimiento general al robot debido a que se tiene en estado de olvido

y algunas cosas se deterioran con el paso del tiempo como tornillos, cableado, rodamientos, daños

en la estructura, entre otros. Se modela y valida un sistema que permita aproximar al máximo el

comportamiento del robot para así aplicar un controlador para seguir una trayectoria en el espacio

XYZ, así mismo el robot quedará con sus tarjetas de potencia y control de motores, para que los

estudiantes puedan aplicar sus conocimientos obtenidos en las materias de control,

automatización y robótica industrial, abriendo la posibilidad a diversas oportunidades de

investigación.

Entre las limitaciones del proyecto se pueden mencionar el mantenimiento del robot,

debido a que no es posible desarmarlo completamente puesto que algunos cables se encuentran en

deterioro y se dificulta realizar su cambio puesto que no se tiene acceso a todas las partes del

robot. La longitud de los cables es muy limitada, por lo que se debe adaptar un módulo externo

con conexiones apropiadas, a fin de evitar entradas de ruidos y/o desconexión de algún cable. La

capacidad máxima de carga es de 1kg, y se debe a una condición propia del robot lo que implica

que dicho sistema tenga restricciones para el desarrollo de tareas afines al traslado de objetos

mayores a esta carga, además existe un rango reducido en la apertura del Gripper o gancho que

conlleva a la manipulación de objetos de escala pequeña. Y finalmente la estructura física propia

del robot limita el transporte de este de un lugar a otro.


10

Metodología

A fin de cumplir con cada uno de los objetivos planteados se proponen una serie de

actividades a realizar durante el desarrollo de ingeniería. Según lo expuesto anteriormente el

enfoque a emplear será de tipo empírico-analítico ya que con el desarrollo de las tareas se

pretende a partir de bases teóricas y/o matemáticas validar experimentalmente y comparar los

resultados para su posterior retroalimentación.

Tabla 1. Lista de Actividades.

Objetivo Actividades
Diseñar e implementar un sistema de Documentación y selección de las características
control robusto para el seguimiento eléctricas y mecánicas del robot Mitsubishi Movemaster
de trayectorias en el espacio XYZ del RV-M1.
Robot Mitsubishi Movemaster RV-M1. Determinación del estado actual del robot, es decir,
estado de encoders, motores, finales de carrera, frenos,
etc.
Analizar los diversos métodos Apropiación de los métodos de cinemática inversa y
utilizados para la descripción de la directa para obtener la dinámica que describe el
dinámica de un sistema de varios comportamiento de un sistema de múltiples eslabones y
grados de libertad y obtener un varios grados de libertad.
modelo no lineal validado del robot. Validación del modelo obtenido con ayuda de
simulaciones y herramientas CAD.
Implementar un sistema de Implementación de un circuito de potencia para cada uno
alimentación y comunicación de los actuadores que componen el sistema.
adecuado para el robot Determinación y documentación de la unidad de
antropomórfico. procesamiento de información, para el envío y recepción
de datos.
Implementación de un método de comunicación del
sistema con la unidad de procesamiento de información.
Implementar un esquema de control Definición de los requerimientos como tiempo de
para controlar la posición del efector respuesta y la selección de la referencia.
final del robot. Estudio de las estrategias de control tanto convencionales
como avanzadas para el control de sistemas con
múltiples eslabones.
Selección del tipo de control más apropiado a utilizar.
11

Analizar y validar el desempeño y Simulación de funcionamiento del esquema de control


robustez del control propuesto con la propuesto.
ayuda de índices que cuantifiquen Implementación del control propuesto en el sistema
dichas características. mecatrónico.
Comparación entre el resultado teórico y el experimental.
Comparación de la propuesta de control con una técnica
de control estándar y análisis de desempeño y robustez
mediante índices de desempeño.

Cabe resaltar que las actividades son pensadas para dar una idea del procedimiento a

seguir a fin de cumplir cada uno de los objetivos. Sin embargo, algunas de las actividades pueden

ser realizadas en paralelo por lo cual en los posteriores capítulos no se pretende abordar cada

actividad con detenimiento, por el contrario, se dará una visión general de lo que se logró

con el desarrollo de las actividades, no obstante, se evidenciará que se han cumplido con

las mismas.
12

Capítulo 2

2.1 Caracterización del sistema robótico

En el presente capítulo se pretende estudiar el manual proporcionado por el fabricante del

robot, con el propósito de conocer las características generales del mismo y formar unas bases

para el correcto desarrollo de actividades posteriores. Además, se busca diagnosticar el estado

actual del sistema, verificando el correcto funcionamiento de cada uno de sus componentes de

acuerdo con las especificaciones expuestas en el manual del fabricante.

Especificaciones del robot

A continuación, se realiza una breve descripción de las características eléctricas y

mecánicas del Robot Mitsubishi Movemaster RV-M1 expuestas en el manual del fabricante.

Este robot cuenta con cinco grados de libertad y cinco articulaciones con su actuador

correspondiente, la capacidad de carga del robot es de 1.2 Kg sin contar con el efector final que es

intercambiable, el robot tiene un peso aproximado de 19 Kg y alcanza una velocidad máxima de

trayectoria de 1000 mm/seg. (Mitsubishi Electric Corporation, n.d.)


13

Figura 1. Principales componentes del sistema.(Felipe et al., 2013)

En la figura 1 se detallan los principales componentes del brazo robótico. Debido a su

diseño mecánico y con la similitud al movimiento de un brazo humano, el robot cuenta con

ciertas restricciones que limitan los movimientos de cada uno de los eslabones las cuales y que se

presentan listados en la siguiente tabla.


14

Tabla 2. Restricciones de movimiento.

Ítem Especificaciones Observaciones


Rotación cintura -150º a 150º Eslabón J1
Rotación hombro -30º a 100º Eslabón J2
Rotación Codo 0 º a 110 º Eslabón J3
Rotación muñeca -90º a 90º Eslabón J4
Rotación muñeca circular -180º a 180º Eslabón J5

En la siguiente figura se presenta los límites de movimiento para cada articulación y el

volumen de trabajo para el manipulador robot.

Figura 2. Volumen de trabajo.(FIME, 2002)

Cabe destacar que debido a que la base del robot se encuentra dentro de su volumen de

trabajo existe una combinación de ángulos en la que se produce colisión entre le efector final y la

base del robot, dada cuando J1 = -150 a 150, J2 = -30, J3 = -110, J4 = -90 y J5 = -180 a 180.
15

Por otro lado, los actuadores de cada eslabón están conformados por motores DC con

codificador o generador de pulsos y su respectivo cableado para conectar independientemente,

también cuenta con 2 frenos electromagnéticos para las articulaciones J2 y J3. En la tabla 3 se

listan las especificaciones de cada componente.

Tabla 3. Especificaciones de motores y frenos.

Motor Motor Motor Motor Motor Motor Frenos J2


Especificaciones
J1 J2 J3 J4 J5 Pinza y J3
Type
DTME- DTME- DTME- DTME- DTME- DTME-
Marca BBS-41-
2730 2730 2730 2730 2730 2730
1.5
Voltaje 24 V 24 V 24 V 24 V 24 V 12 V 12 V
Potencia 30W 30W 30W 11W 11W 11 W 3.6 W
Corriente sin N/A
1.4 A 2.35 A 1.7 A 1.7 A 2.5 A 200 mA
carga
Corriente Con
2A 2.75 A 2.2 A 2A 2.65 A 200 mA N/A
carga

Adicionalmente cada eslabón del robot cuenta con finales de carrera que limitan el

movimiento en ambos sentidos los cuales se encuentran normalmente cerrados. Los dos frenos

electromagnéticos ayudan al posicionamiento del robot cuando este se encuentre en una posición

totalmente estirada horizontalmente.

Estado inicial del Robot

Actualmente la Universidad de San Buenaventura, sede Bogotá cuenta con un Robot

Mitsubishi Movemaster RV-M1 el cual fue donado por la empresa Festo LTDA. Sin embargo,

este robot no cuenta con la tarjeta de control y de adquisición de datos que viene de fábrica.

Inicialmente, se realizó una evaluación general del estado actual del robot tomando como

referencia las especificaciones descritas en el manual de funcionamiento, por lo cual se hace


16

necesario examinar la estructura interna del mismo haciendo énfasis en los mecanismos y

cableados que posee como se muestra en la figura 3.

Para ello se retiran las cubiertas a fin de determinar las condiciones actuales del robot,

con lo que se encontró que contaba solamente con el cableado de los motores y sensores que

terminaban en un mismo punto, se intentó desmontar algunas tapas para poder determinar que

cables correspondían a cada motor verificando así el funcionamiento de los mismo y de los

encoders. Además, se retiraron las cubiertas motor por motor para verificar que los encoders

estuvieran funcionando de manera correcta, posicionando un osciloscopio en sus canales y

excitando el motor con un pequeño voltaje a fin de validar que las señales funcionaban

correctamente.

Figura 3. Estado inicial del robot.


17

Se verifica que cada articulación se moviera de manera adecuada, encontrando que un

rodamiento de la barra que articula el codo se encontraba en mal estado, por lo que fue necesario

adquirir el mismo rodamiento y realizar el cambio, también se evidenció que el robot no contaba

con toda la tornillería por lo que se procedió a comprar todos los tornillos. Los frenos y finales de

carrera se encontraban en mal estado a lo que se realizó mantenimiento y pruebas funcionales

para asegurar un correcto desempeño de estos componentes. Durante las pruebas realizadas sobre

los motores se determinó que tres de los encoders no funcionaban, por lo cual fue necesario

reemplazar los optoacopladores de los actuares correspondientes. De esta manera una vez

resueltos dichos inconvenientes, se concluyó que el robot se encontraba en condiciones óptimas

para poder trabajar de una manera eficiente.

Por otro lado, debido a que el Robot Mitsubishi Movemaster RV-M1 no cuenta con la

tarjeta de adquisición de datos y módulo de control original del fabricante, se hace necesario

implementar tres módulos de control a fin de adquirir datos de los encoders y así controlar cada

uno de los motores. Dichos módulos se han divido estratégicamente para optimizar espacio y

poder tener fácil acceso a los diferentes cableados que tiene el robot. Todo lo relacionado con la

adquisición de datos y toma de decisiones para el control del brazo, se ha implementado y

probado por medio del software Matlab. La implementación de dichos módulos de control será

profundizada posteriormente.

2.2 Implementación de tarjetas de control

Es necesario implementar módulos para el control de los motores y la lectura de encoders

del robot, puesto que no se cuenta con la tarjeta de control de fabricante. A partir de las

especificaciones expuestas en el apartado anterior, se definen una serie de requisitos para realizar
18

la implementación de los módulos, por lo tanto, se deben tener en cuenta ciertos parámetros

mínimos para asegurar un correcto funcionamiento. Dichos requisitos se pueden evidenciar en la

tabla 4.

Tabla 4. Requisitos de funcionamiento.

ITEM Requisito Características Modulo


Regulador de voltaje para Regulador de 5 V a
1 Lectura
alimentación de sistemas lógicos 2A
Alimentación
2 Fuente 24 V y 12 V independientes independiente Lectura
mínimo a 5 A
Todos los
componentes de
potencia deben Lectura, Control
Soporte mínimo de corriente de 2
3 soportar esta motores, Control
A
corriente debido a efector final
que es la que exige
los motores
Driver de potencia
Puente H discreto que permita el
que puede dar giro
4 control bidireccional de un motor a Control motores
en ambos sentidos a
24 V y 5 A
un motor de 30W
Conector de 34
Conectores que se ajusten a los que pines que se acople
5 Lectura
ya tienen por defecto el robot a la salida del
motor
Sistema de
Conmutador capaz
6 activación/desactivación de los Lectura
de soportar 4 W
frenos magnéticos
Sistema visible que
Identificación de conmutación de
7 se represente la Lectura
los finales de carrera
conmutación (leds)
Proteger el sistema Lectura, Control
Separa circuitos de potencia de
8 lógico en caso de motores, Control
circuitos lógicos
un corto circuito efector final

Dados los requerimientos anteriores se propone la implementación de tres módulos

diferentes, dos para el control de los motores y uno adicional para la lectura de señales –
19

encoders, finales de carrera, PWM, entre otros. – tanto del robot como de la unidad de

procesamiento. Antes de continuar con la implementación de dichos módulos se hace necesario

seleccionar la unidad de procesamiento adecuada para el control del sistema, es decir, que cuente

con los módulos y puertos necesarios para el correcto funcionamiento del sistema.

Finalmente se opta por utilizar dos tarjetas de adquisición de datos con el fin de recibir

todas las señales del robot y controlar los actuadores de este. La figura 4 muestra un esquema

general con la conexión entre la unidad de procesamiento y el sistema mecatrónico, donde la

unidad de procesamiento, el computador host, la pantalla de transmisión y las borneras de

conexión son propiedad de los estudiantes.

Figura 4. Esquema de conexión.


20

Descripción de la unidad de procesamiento

Se decidió hacer uso de dos tarjetas de adquisición de datos para cumplir los

requerimientos ya establecidos, esto debido a que la cantidad de señales que tiene el robot no se

satisface con una solo tarjeta, por eso la necesidad de utilizar dos tarjetas. Las tarjetas

seleccionadas son PCI-6602, de esta tarjeta utilizamos 14 entradas y 11 salidas y PCI-6070E de

esta tarjeta utilizamos 7 entradas y 6 salidas, a continuación, se profundizará en las características

generales de éstas.

PCI-6602: Los dispositivos 660x son tarjetas de entradas y salidas digitales

sincronizadas para usar con el bus PCI en computadoras compatibles con PC, o chasis PXI o PCI

compactas. Los dispositivos 6602 ofrecen esta capacidad más cuatro canales de contador

adicionales de 32 bits. Cada dispositivo 660x es un dispositivo sin puentes y solo requiere

configuración de software. Cada dispositivo 6602 tiene dos NI-TIO y ofrece ocho contadores de

este tipo. Los contadores en dispositivos 660x son un superconjunto de los contadores de

propósito general en el DAQ-STC. Debido a los mayores recursos y la funcionalidad agregada, se

han creado nuevas constantes, parámetros y funciones para contadores 660x. En la mayoría de los

casos, el código escrito para los contadores de propósito general DAQ-STC funcionará para los

contadores 660x, en la figura 5 se muestran los conectores de la tarjeta.


21

Figura 5. Ubicación de pines PCI-6602. (Headquarters, 1999)

PCI-6070E: El DAQPad-6070E es un conector y reproductor, multifunción de entradas y

salidas análogas (AI-AO) y digitales (DI-DO), y dispositivo TIO. Esta tarjeta cuenta con 16

canales de entradas análogas AI – ocho diferenciales – con resolución de 12 bits, Dos

canales de salidas análogas AO con resolución de 12 bits, Ocho líneas de entradas y

salidas digitales DIO, compatibles con TTL, Dos contadores / temporizadores de 24 bits

para TIO, Un conector de entradas y salidas de 68 pines. El DAQPad-6070E es un

dispositivo DAQ de conmutación en caliente, sin interruptor, sin puente, El NI DAQPad-6070E

tiene un temporizador de vigilancia integrado que reinicia continuamente el dispositivo hasta que
22

el dispositivo se enumera con éxito con el sistema operativo host y el controlador del dispositivo

inicia las transacciones en el dispositivo.

Figura 6. Ubicación de pines PCI-6070E. (Headquarters, 2007)

Finalmente se definen los módulos a utilizar en cada tarjeta con su respectiva conexión,

teniendo en cuenta la tierra común entre las dos tarjetas. Dicha distribución de pines se expone en

la tabla 5.
23

Tabla 5. Distribución de pines en la unidad de procesamiento.

Pin Pin
Articulación Señal Tarjeta Articulación Señal Tarjeta
Tarjeta Tarjeta
PWM 26 6602 PWM 40 6070
DIR 10 6602 DIR 49 6070
MUÑECA
CINTURA SLP 48 6602 SLP 47 6070
GIRO
CANAL A 2 6602 CANAL A 17 6602
CANAL B 40 6602 CANAL B 52 6602
PWM 23 6602 GRIPPER O DIR 17 6602
DIR 44 6602 PINZA SLP 13 6602
HOMBRO SLP 48 6602 VCC 1 6602
CANAL A 7 6602 VCC 8 6070
CANAL B 6 6602 GND 36 6602
PWM 53 6602 GND 7 6070
DIR 45 6602 FRENO J2 12 6602
CODO SLP 15 6602 FRENO J3 12 6602
CANAL A 34 6602 FINAL CARRERA J1 19 6070
CANAL B 66 6602 FINAL CARRERA J2 51 6070
PWM 2 6070 FINAL CARRERA J3 16 6070
DIR 17 6070 FINAL CARRERA J4 48 6070
INCLINACIÓN
SLP 47 6070 FINAL CARRERA J5 52 6070
MUÑECA
CANAL A 31 6602
CANAL B 63 6602

Implementación de los módulos de control

Una vez seleccionada la unidad de procesamiento, se procede con la implementación de

los módulos tanto de control de motores, como de recepción y envió de señales. Así, siguiendo

los requerimientos ya definidos profundizáremos en la implementación de cada módulo.

Implementación de módulo de lectura: En este módulo se desean adquirir todas las

señales provenientes de los sensores, con el fin de tomar decisiones con respecto a los

movimientos de los motores. Por lo cual se evaluaron cada uno de los pines provenientes de los

encoders de cada motor, y de esta manera se determina su ubicación en el cableado final del
24

robot, que terminan en un mismo punto. En la tabla 6 se muestran los códigos de colores

provenientes de cada motor y su funcionalidad.

Tabla 6. Código de colores de los encoders.

Encoder Color Pin Funcionalidad


Amarrillo 1 Vcc
Cintura, Verde 2 GND
Hombro y Gris 3 Canal A
Codo Rojo 4 Canal B
Azul 5 Índex
Amarrillo 1 Índex
Inclinación
Verde 2 Canal A
muñeca y
Gris 3 GND
Muñeca
giro
Rojo 4 Vcc
Azul 5 Canal B

En esta tarjeta llega todo el cableado de las señales que vienen directamente del motor,

todas estas señales pasan por un Schmitt trigger 74hc14 en el que las entradas de activación de

Schmitt transforman las señales de entrada que cambian lentamente en señales de salida

claramente definidas y sin fluctuaciones usando la histéresis para prevenir el ruido que podría

tapar a la señal original, las entradas están protegidos por resistencias a tierra que se conectan en

serie para que la corriente pueda dirigirse por estas líneas, en la figura 7 se muestra la conexión

de entrada y salida de los pines del Schmitt, además del circuito recomendado por el fabricante

para el funcionamiento de este.


25

Figura 7. Conexión Schmitt Trigger.

En la tarjeta, también llegan las entradas de los finales de carrera las cuales igualmente

pasan por el filtro del Schmitt trigger que a su misma vez está acompañado por un bombillo led el

cual determina si el final de carrera está o no haciendo contacto, para la protección del bombillo

es necesario poner una resistencia en serie a tierra, la resistencia elegida depende de la intensidad

de luz que se quiere ver en el bombillo. Por otro lado, se tiene las señales de dos frenos
26

electromagnéticos, que están conectados a un transistor TIP 122 el cual se utiliza para

amplificación y conmutación de baja velocidad, y con el cual se realiza la

activación/desactivación de los frenos, siguiendo el circuito del datasheet, se determina la

corriente de saturación necesaria para que este pueda conmutar, también se tiene que por medio

de un bombillo led se identifica cuando están activos o no, protegiéndolo con una resistencia en

serie a tierra, en la figura 8 se muestra el circuito para realizar la conmutación de este.

Figura 8. Circuito activación/desactivación de los frenos.

En la tarjeta se conectan dos fuentes, una fuente de 24 V y otra de 12 V, es necesario

también utilizar un regulador 7805 el cual regula el voltaje a 5 V, estas tres fuentes sirven para

alimentar a todos los componentes que requieran de diferente voltaje para conmutación y/o

arranque, para asegurar que todos el cableado externo a la tarjeta pueda tener una conexión segura

se conecta por medio de borneras para garantizar una buena sujeción, las cuales permiten que los

componentes queden asegurados y no se desconecten con facilidad, desde estos puntos se

distribuye a todos los terminales que sea necesario, también fue requerido utilizar un

optoacoplador HCLP 2211 el cual sirve para separar la parte de potencia de la parte de control, el
27

circuito utilizado viene directamente del fabricante, en la figura 9 se observa el circuito de

protección y las entradas de los voltajes.

Figura 9. Circuito de alimentación y lectura de Encoders.

Para las salidas del robot, el cual cuenta con un conector donde llegaban todas las señales, así que

se utilizó un conector capaz de recibir todas las señales y poder ser redirigidas a la tarjeta

correspondiente, en la figura 10 se muestra este conector.


28

Figura 10. Señales del módulo de lectura.

Por último, en la figura 11 se muestra la tarjeta final a implementar en el robot, señalando

que se conecta en cada entrada y mostrando los conectores anteriormente mencionados. Donde

motor 1, 2, 3, 4 y 5 hace referencia a los actuadores de cada articulación, es decir a J1, J2. J3, J4 y

J5, respectivamente.
29

Figura 11. Implementación final del módulo de lectura.

Implementación de módulo de control de motores: En este módulo se quiere controlar

los motores, estos motores tienen una gran capacidad y su funcionamiento es a 24V a

aproximadamente 2000 rpm, alcanzando corrientes alrededor de 2 A. Por lo cual fue necesario

utilizar un controlador de alta potencia Pololu G2 18v17 este controlador de puente H discreto

permite el control bidireccional de un motor de CC de alta potencia con escobilla. Esta admite un

amplio rango de voltaje de 6,5 V a 30 V y es lo suficientemente eficiente como para soportar

corrientes hasta 17 A sin un disipador de calor, en la figura 12 se puede evidenciar el circuito que

se utilizó para este puente H el cual es el recomendado por el fabricante.


30

Figura 12. Circuito Puente H.

Debido a las altas corrientes a las que están sometidas estos motores, es importante

utilizar optoacopladores HCPL2211. Estos optoacopladores son puertas lógicas acopladas

ópticamente que permitirán separar la parte de potencia de la parte de control, esto con el fin de

garantizar que en caso de un corto circuito una parte no afecte a la otra y ocasione daños a los

componentes mayores, el circuito utilizado para estos es recomendado por el fabricante. Se

dividen en tres secciones, señales de PWM, señales de dirección del motor y señales STL. En la

figura 13 se muestra la conexión de estos circuitos, se utiliza el mismo circuito a excepción que la

señal de entrada que depende del módulo en el que se encuentre.

Figura 13. Circuito optoacopladores HCPL2211.


31

En la figura 14 se muestra la implementación final de la tarjeta, teniendo diferentes

conectores para recibir, enviar señales y conectarse entre sí con los otros módulos.

Figura 14. Implementación final del módulo de control de motores.

Implementación de módulo de control del efector final: En este módulo se quiere

controlar el efector final del robot cabe resaltar que este motor no cuenta con un encoder, debido

a que dicho motor funciona a potencias menores se decide utilizar un puente H LMD18200T que

permita dar el movimiento en ambas direcciones del motor para así poder controlar la posición de
32

este efector, en la figura 15 se puede evidenciar el circuito que se utilizó para este puente H el

cual es el recomendado por el fabricante.

Figura 15. Circuito puente H LMD18200T.

En este módulo también se decide utilizar optoacopladores HCPL2211. Estos

optoacopladores son puertas lógicas acopladas ópticamente que permitirán separar la parte de

potencia de la parte de control, esto con el fin de garantizar que en caso de un corto circuito una

parte no afecte a la otra y ocasione daños a los componentes mayores, se dividen en dos

secciones, señales de PWM y señales de dirección del motor, en la figura 13 se muestra la

conexión de estos circuitos, se utiliza el mismo circuito a excepción que la señal de entrada

depende del módulo en el que se encuentre. En la figura 16 se muestra la implementación final de

la tarjeta, teniendo diferentes conectores para recibir, enviar señales y conectarse entre sí con los

otros módulos.
33

Figura 16 implementación final del módulo de control del efector final.

Todas las señales de salida llegan a dos tarjetas de conexión tipo bornera las cuales son

PCI6602 y PCI6070 en donde estas nos permiten controlar desde el computador host y de igual

manera leer señales según corresponda. El diseño de las tarjetas se realizó en el programa Proteus

con dos capas de conductividad para optimizar espacio y obtener la mejor implementación

posible, se utilizó el cableado original del robot por lo que las tarjetas fueron diseñadas para que

sus conectores se acoplarán a este, asegurando un correcto agarre y que con el movimiento del

robot no se soltarán los cables.


34

Capítulo 3

Modelo cinemático

Para que un manipulador realice una tarea específica, se debe establecer la posición y

orientación de la herramienta y el posicionamiento relativo de cada eslabón. Existen diversas

metodologías para establecer los parámetros de referencia entre elementos del robot y enfrentar el

proceso de modelamiento de un manipulador.

Para el modelamiento cinemático y dinámico es necesario aplicar la convención Denavit-

Hartenberg, el cual consiste en una metodología que permite definir las transformaciones

relativas entre eslabones con tan solo cuatro parámetros, siendo éste el número mínimo de

parámetros para configuraciones genéricas; de forma tal que se describa el robot en función de los

parámetros estáticos de los eslabones y las variables de cada articulación. Estas variables pueden

ser de desplazamiento o de rotación.

Este método al cual por simplicidad denominaremos D-H, propone un modelo matricial

para establecer de forma sistemática un sistema coordenado para cada elemento de una cadena

articulada, obteniendo una matriz de transformación homogénea que representa cada sistema de

coordenado de cada eslabón con respecto al sistema coordenado del elemento anterior. Y

finalmente mediante transformaciones secuenciales es posible expresar la posición y orientación

del efector final respecto al sistema de referencia base.


35

Figura 17. Parámetros de Denavit-Hartenberg.(Al., 2014)

Este método depende de cuatro parámetros geométricos asociados con cada elemento los

cuales se pueden detallar en la figura 17, que muestra la representación genérica de un eslabón.

Donde 𝜃𝑖 es el ángulo de la articulación del eje 𝑥𝑖−1 al eje 𝑥𝑖 respecto del eje 𝑧𝑖−1 , 𝑑𝑖 es la

distancia desde el origen del sistema de coordenadas (i-1)-ésimo hasta la intersección del eje 𝑧𝑖−1

con el eje 𝑥𝑖 a lo largo del eje 𝑧𝑖−1 , 𝑎𝑖 es la distancia de separación desde la intersección del eje

𝑧𝑖−1 con el eje 𝑥𝑖 hasta el orígen del sistema i-ésimo a lo largo del eje 𝑥𝑖 , y 𝛼𝑖 es el ángulo de

separación del eje 𝑧𝑖−1 al eje 𝑧𝑖 respecto del eje 𝑥𝑖 .


36

Cinemática directa

Utilizando la notación D-H, estudiada anteriormente se puede expresar la posición y

orientación del efector final del manipulador en función del desplazamiento de sus articulaciones.

El desplazamiento articular es un ángulo 𝜃𝑖 o una distancia 𝑑𝑖 , dependiendo del tipo de

articulación. La figura 18 muestra la representación simbólica del manipulador Mitsubishi RV-

M1, sobre esta representación aparecen los 6 marcos de referencias necesarios para modelar el

brazo, contando la base. Cabe aclarar que dicho manipulador posee cinco grados de libertad,

debido a sus cinco articulaciones rotacionales y sus cinco eslabones.

Figura 18. Representación simbólica del manipulador Mitsubishi RV-M1.

A partir de estos marcos de referencia presentados en la figura anterior se obtienen los

cuatro parámetros para cada eslabón del manipulador según la convención de D-H. Los datos
37

particulares para el manipulador se muestran en la tabla 7, en la cual se observan datos constantes

que representan las dimensiones de los eslabones y los ángulos de torsión entre las articulaciones.

Note que en cada fila de la tabla solo hay una variable, en este caso el ángulo de rotación de cada

una de las articulaciones 𝜃𝑖 puesto que todas las articulaciones son de tipo rotacional, las

longitudes 𝑑𝑖 son conocidas y corresponden a la longitud de cada eslabón.

Tabla 7. Parámetros de D-H

Eslabón (𝒊) 𝒂𝒊 (𝒎𝒎) 𝜶𝒊 (°) 𝒅𝒊 (𝒎𝒎) 𝜽𝒊 (°)


1 0 90° 𝑑1 𝜃1
2 𝑑2 0° 0 𝜃2
3 𝑑3 0° 0 𝜃3
4 0 90° 0 𝜃4
5 0 0° 𝑑5 𝜃5

El convenio D-H indica que cada fila de la tabla anterior debe ser convertida en una

matriz homogénea 𝐴𝑖−1


𝑖 que se obtiene de la composición de 4 matrices homogéneas básicas

según la siguiente ecuación:

𝑨𝒊−𝟏
𝒊 = 𝑹𝒁,𝜽𝒊 𝑻𝒁,𝒅𝒊 𝑻𝑿,𝒂𝒊 𝑹𝑿,𝜶𝒊 (2)

Al efectuar estas operaciones matriciales se tiene como resultado la matriz de

trasformación total, la cual corresponde a una matriz homogénea en función de 𝜃𝑖 ya que el resto

de los parámetros son constantes. Para efectos de simplicidad el sin 𝜃𝑖 , sin 𝛼𝑖 , cos 𝜃𝑖 y cos 𝛼𝑖

serán representados como 𝑆𝜃𝑖 , 𝑆𝛼𝑖 , 𝐶𝜃𝑖 y 𝐶𝛼𝑖 respectivamente.

𝑪𝜽𝒊 −𝑺𝜽𝒊 𝑪𝜶𝒊 𝑺𝜽𝒊 𝑺𝜶𝒊 𝒂𝒊 𝑪𝜽𝒊


𝑺 𝑪𝜽𝒊 𝑪𝜶𝒊 −𝑪𝜽𝒊 𝑺𝜶𝒊 𝒂𝒊 𝑺𝜽𝒊
𝑨𝒊−𝟏
𝒊 = � 𝜽𝒊 � (3)
𝟎 𝑺𝜶𝒊 𝑪𝜶𝒊 𝒅𝒊
𝟎 𝟎 𝟎 𝟏
38

La ecuación 3 muestra la matriz de transformación de un solo eslabón, por tanto, se

requiere determinar tantas matrices como eslabones del robot. La composición de estas matrices

homogéneas permite encontrar las coordenadas del efector final del manipulador en función del

marco base y por tanto la posición de este punto respecto a la base.

𝑻𝟎𝟓 (𝒒) = 𝑨𝟎𝟏 𝑨𝟏𝟐 𝑨𝟐𝟑 𝑨𝟑𝟒 𝑨𝟒𝟓 (4)

𝑪𝜽𝟏 𝑪𝜽𝟐+𝟑+𝟒 𝑪𝜽𝟓 + 𝑺𝜽𝟏 𝑺𝜽𝟓 −𝑪𝜽𝟏 𝑪𝜽𝟐+𝟑+𝟒 𝑺𝜽𝟓 + 𝑺𝜽𝟏 𝑪𝜽𝟓 𝑪𝜽𝟏 𝑺𝜽𝟐+𝟑+𝟒 𝜹𝟏
𝑺 𝑪 𝑪 − 𝑪𝜽𝟏 𝑺𝜽𝟓 −𝑺𝜽𝟏 𝑪𝜽𝟐+𝟑+𝟒 𝑺𝜽𝟓 + 𝑪𝜽𝟏 𝑪𝜽𝟓 𝑺𝜽𝟏 𝑺𝜽𝟐+𝟑+𝟒 𝜹𝟐
𝑻𝟎𝟓 (𝒒) = � 𝜽𝟏 𝜽𝟐+𝟑+𝟒 𝜽𝟓 � (5)
𝑺𝜽𝟐+𝟑+𝟒 𝑪𝜽𝟓 −𝑺𝜽𝟐+𝟑+𝟒 𝑺𝜽𝟓 −𝑪𝜽𝟐+𝟑+𝟒 𝜹𝟑
𝟎 𝟎 𝟎 𝟏

Donde:

𝜹𝟏 = 𝒅𝟑 𝑪𝜽𝟏 𝑪𝜽𝟐+𝟑 + 𝒅𝟐 𝑪𝜽𝟏 𝑪𝜽𝟐 + 𝒅𝟓 𝑪𝜽𝟏 𝑺𝜽𝟐+𝟑+𝟒 (6)

𝜹𝟐 = 𝒅𝟑 𝑺𝜽𝟏 𝑪𝜽𝟐+𝟑 + 𝒅𝟐 𝑺𝜽𝟏 𝑪𝜽𝟐 + 𝒅𝟓 𝑺𝜽𝟏 𝑺𝜽𝟐+𝟑+𝟒 (7)

𝜹𝟑 = 𝒅𝟑 𝑺𝜽𝟐+𝟑 + 𝒅𝟐 𝑺𝜽𝟐 +𝒅𝟏 − 𝒅𝟓 𝑪𝜽𝟐+𝟑+𝟒 (8)

Al vector 𝑞 = [𝜃1 𝜃2 𝜃3 𝜃4 𝜃5 ]𝑇 se le denomina vector de coordenadas generalizadas.

De la matriz anterior se obtiene el modelo cinemático directo de posición para el manipulador.

La posición y orientación final con respecto a la base está dada por:

𝑷𝒙 𝒅𝟑 𝑪𝜽𝟏 𝑪𝜽𝟐+𝟑 + 𝒅𝟐 𝑪𝜽𝟏 𝑪𝜽𝟐 + 𝒅𝟓 𝑪𝜽𝟏 𝑺𝜽𝟐+𝟑+𝟒


𝑶𝟎𝟓 = �𝑷𝒚� = � 𝒅𝟑 𝑺𝜽𝟏 𝑪𝜽𝟐+𝟑 + 𝒅𝟐 𝑺𝜽𝟏 𝑪𝜽𝟐 + 𝒅𝟓 𝑺𝜽𝟏 𝑺𝜽𝟐+𝟑+𝟒 � (9)
𝑷𝒛 𝒅𝟑 𝑺𝜽𝟐+𝟑 + 𝒅𝟐 𝑺𝜽𝟐 +𝒅𝟏 − 𝒅𝟓 𝑪𝜽𝟐+𝟑+𝟒

𝑪𝜽𝟏 𝑪𝜽𝟐+𝟑+𝟒 𝑪𝜽𝟓 + 𝑺𝜽𝟏 𝑺𝜽𝟓 −𝑪𝜽𝟏 𝑪𝜽𝟐+𝟑+𝟒 𝑺𝜽𝟓 + 𝑺𝜽𝟏 𝑪𝜽𝟓 𝑪𝜽𝟏 𝑺𝜽𝟐+𝟑+𝟒
𝑹𝟎𝟓 = �𝑺𝜽𝟏 𝑪𝜽𝟐+𝟑+𝟒 𝑪𝜽𝟓 − 𝑪𝜽𝟏 𝑺𝜽𝟓 −𝑺𝜽𝟏 𝑪𝜽𝟐+𝟑+𝟒 𝑺𝜽𝟓 + 𝑪𝜽𝟏 𝑪𝜽𝟓 𝑺𝜽𝟏 𝑺𝜽𝟐+𝟑+𝟒 � (10)
𝑺𝜽𝟐+𝟑+𝟒 𝑪𝜽𝟓 −𝑺𝜽𝟐+𝟑+𝟒 𝑺𝜽𝟓 −𝑪𝜽𝟐+𝟑+𝟒

Generalmente un robot se controla en el espacio de las variables de articulación, mientras

que los objetos a manipular suelen expresarse en el espacio de coordenadas cartesianas. Por esta

razón y con el fin de controlar la posición y orientación del efector final de un robot es más

frecuente la necesidad de uso de la solución al problema cinemático inverso.


39

Cinemática inversa

El método geométrico explota la configuración espacial de un manipulador particular

para resolver por medio de relaciones geométricas planas los valores de cada ángulo de

articulación. Así se deben hallar los ángulos de posición de los elementos móviles del robot,

conocidos los valores de la posición y orientación de la herramienta en el marco fijo. Es decir, se

deben hallar los ángulos 𝜃1 , 𝜃2 , 𝜃3 , 𝜃4 y 𝜃5 , a partir de los elementos de la matriz que describe la

posición del efector final o de las relaciones geométricas presentes en cada eslabón.

Figura 19. Representación geométrica del manipulador Mitsubishi RV-M1.

La solución para la articulación de cintura está dada por:

𝑷𝒚
𝜽𝟏 = 𝐭𝐚𝐧−𝟏 � � (11)
𝑷𝑿

Para continuar con el análisis geométrico es necesario realizar un “desacople” que

consiste en descomponer el problema de la cinemática inversa en dos problemas más pequeños.

Para ello y según la figura 19 se define los vectores 𝑟𝑚 y 𝑟𝑝 que corresponden a las coordenadas
40

de la muñeca y del efector final respectivamente. Puesto que se conoce el punto del efector final y

su orientación podemos aplicar la siguiente manipulación algebraica para determinar 𝑟𝑚 , ya que ℎ

es un vector con la magnitud y dirección de la muñeca.

𝒓𝒑 = 𝒓𝒎 + 𝒉 (12)

𝒓𝒎 = 𝒓𝒑 − (𝒅𝟒 + 𝒅𝟓 ) ∗ 𝑹𝟎𝟓 ∗ �𝒛⃗ (13)

Se puede resaltar que la magnitud del vector ℎ está dada por la suma de las longitudes de

los eslabones 4 y 5, los cuales serían parte de la muñeca. Por otro lado, la orientación del vector ℎ

esta dada por la matriz de rotación del efector final respecto de la base multiplicada por el vector

unitario que se encuentra en la dirección de ℎ.

Una vez realizado el desacople y como se muestra en la figura 19 podemos determinar

los demás ángulos con las relaciones geométricas presentes.

�𝒎𝒚𝟐 +𝒎𝒙𝟐 𝒅𝟑 𝐬𝐢𝐧 𝜽𝟑


𝜽𝟐 = 𝐭𝐚𝐧−𝟏 � � − 𝐭𝐚𝐧−𝟏 � � (14)
𝒎𝒛−𝒅𝟏 𝒅𝟐 +𝒅𝟑 𝐜𝐨𝐬 𝜽𝟑

𝒎𝒙𝟐 +𝒎𝒚𝟐 +𝒎𝒛𝟐 −𝒅𝟐 𝟐 𝟐


𝟏 −𝒅𝟐 −𝒅𝟑
𝑳= (15)
𝟐𝒅𝟐 𝒅𝟑

±�𝟏−𝑳𝟐
𝜽𝟑 = 𝐭𝐚𝐧−𝟏 � � (16)
𝑳

𝑷𝒛 −𝒎𝒛−𝟐𝒅𝟏
𝜽𝟒 = 𝐭𝐚𝐧−𝟏 � � − 𝜽𝟐 − 𝜽𝟑 (17)
�𝑷𝟐 𝟐 𝟐
𝒙 +𝑷𝒚 −�𝒎𝒙 +𝒎𝒚
𝟐

Ya que en el problema cinemático inverso se conoce la posición y dirección del efector

final, podemos determinar el ángulo 𝜃5 a partir de una manipulación en los componentes de la

matriz homogénea 𝑇50 .

−𝑻𝟎𝟓 (𝟑.𝟐) 𝑺𝜽𝟐+𝟑+𝟒 𝑺𝜽𝟓


𝜽𝟓 = 𝐭𝐚𝐧−𝟏 � � = 𝐭𝐚𝐧−𝟏 � � (18)
𝑻𝟎𝟓 (𝟑.𝟏) 𝑺𝜽𝟐+𝟑+𝟒 𝑪𝜽𝟓
41

Modelo dinámico

La dinámica se refiere a la relación entre el movimiento del robot y las fuerzas

generalizadas, como los torques articulares, fuerzas o torques externos, entre otros. Existen

diversos métodos para determinar la dinámica de robots seriales, los más comunes son Euler-

Lagrange y Newton-Euler.

El método utilizado en el presente documento para obtener el modelo dinámico del

manipulador robótico está basado en las denominadas ecuaciones de Euler-Lagrange, sugerido

para manipuladores seriales, por cuanto no se requiere encontrar las fuerzas de restricción. Este

método se basa en el análisis de energías tanto cinética como potencial, y la manipulación

algebraica de las mismas para logara el modelo. Las ecuaciones resultantes se dan de forma

simbólica y resulta apropiado para estudiar las propiedades dinámicas del sistema y analizar los

esquemas de control.

𝝉 = 𝑴(𝒒)𝒒̈ + 𝑪(𝒒, 𝒒̇ )𝒒̇ + 𝑮(𝒒) (19)

La ecuación 19 presenta el modelo dinámico general para robots manipuladores, donde

𝑀(𝑞) corresponde a la matriz de inercias, 𝐶(𝑞, 𝑞̇ ) corresponde a la matriz de fuerzas centrípetas o

de Coriolis y el vector 𝐺(𝑞) corresponde a la componente de gravedad presente en cada eslabón.

Además, los vectores 𝑞̈ , 𝑞̇ y 𝜏 corresponden a las aceleraciones, velocidades y torques en cada

eslabón. En el anexo I se presenta con mayor detalle el procedimiento realizado con el fin de

obtener el modelo de la ecuación 19.


42

Debido a que la dinámica obtenida determina los torques que se deben aplicar en cada

articulación para llegar a los ángulos deseados y puesto que la variable a controlar en este caso es

la posición de cada motor aplicando voltaje, se hace necesario acoplar el modelo de cada motor

con el modelo dinámico hallado anteriormente. Para ello se tiene que el modelo dinámico del

motor DC está dado por:

𝑱𝒒̈ + 𝒇𝒗 𝒒̇ + 𝒇𝒄 (𝒒̇ ) + 𝝉𝒍 = 𝒌𝒎 𝒖 (20)

Donde 𝐽 corresponde a la inercia del motor, 𝑓𝑣 es el coeficiente de fricción viscosa, 𝑓𝑐 (𝑞̇ )

es la función de fricción seca que depende de la velocidad y está dada por 𝑓𝑐 𝑠𝑖𝑛𝑔(𝑞̇ ), 𝑢 es el

voltaje aplicado al motor, 𝑘𝑚 es una constante de conversión de voltaje a torque y 𝜏𝑙 corresponde

al torque de carga en el motor. Despejando el torque de carga en la ecuación anterior,

expresándola en forma matricial e igualando con el modelo dinámico del robot obtenemos:

𝝉𝒍 = 𝑲𝒖 − 𝑱𝒒̈ − 𝒇𝒗 𝒒̇ − 𝒇𝒄 (𝒒̇ ) (21)

𝑲𝒖 − 𝑱𝒒̈ − 𝒇𝒗 𝒒̇ − 𝒇𝒄 (𝒒̇ ) = 𝑴(𝒒)𝒒̈ + 𝑪(𝒒, 𝒒̇ )𝒒̇ + 𝑮(𝒒) (22)

𝒖 = 𝑲−𝟏 [(𝑴(𝒒) + 𝑱)𝒒̈ + (𝑪(𝒒, 𝒒̇ ) + 𝒇𝒗 )𝒒̇ + 𝑮(𝒒) + 𝒇𝒄 (𝒒̇ )] (23)

La expresión anterior representa el modelo acoplado de la mecánica del robot y sus

actuadores, donde 𝑢 corresponde al vector de voltaje aplicado a cada motor, 𝐾 es una matriz

diagonal que contiene las constantes de conversión de voltaje a torque, 𝐽 y 𝑓𝑣 son matrices

diagonales que contienen los valores de inercias y coeficientes de fricción viscosa de cada motor

respectivamente, 𝑓𝑐 (𝑞̇ ) corresponde a un vector columna de las funciones de fricción seca de cada

motor. Con el fin de trabajar con una expresión más simple se consideran (𝑀(𝑞) + 𝐽) = 𝑀(𝑞),

(𝐶(𝑞, 𝑞̇ ) + 𝑓𝑣 ) = 𝐶(𝑞, 𝑞̇ ) y 𝐺(𝑞) + 𝑓𝑐 (𝑞̇ ) = 𝐺(𝑞, 𝑞̇ ), por tanto el modelo dinámico se

puede expresar como se muestra en la ecuación 24.

𝑲𝒖 = 𝑴(𝒒)𝒒̈ + 𝑪(𝒒, 𝒒̇ )𝒒̇ + 𝑮(𝒒, 𝒒̇ ) (24)


43

Validación del modelo no lineal

Con el fin de validar el modelo dinámico obtenido, se realizó un modelo 3D en el

software de diseño SolidWorks, según las especificaciones presentadas en el manual y medidas

tomadas directamente sobre el robot. A partir de este modelo se pretende determinar las inercias,

masas y distancias de interés en cada eslabón con ayuda de las herramientas del software. La

tabla 8 presenta los datos obtenidos de cada eslabón y con los cuales se pretende validar la

dinámica del robot.

Tabla 8. Inercias, Masas y distancias del robot.

N° Eslabón Datos obtenidos (Inercias, Masas y distancias)


1
0.03531423 −0.00051379 −0.00962404
𝐼 = �−0.00051379 0.04359661 −0.00128346�
−0.00962404 −0.00128346 0.04099641
[𝑘𝑔 𝑥 𝑚2 ]

𝑚 = 5.49129804 [kg]

𝐿𝐶 = 0.10042497[𝑚]
2
0.01141409 0.00000831 −0.00289535
𝐼 = � 0.00000831 0.08045626 0.00011349 �
−0.00289535 0.00011349 0.07848456
[𝑘𝑔 𝑥 𝑚2 ]

𝑚 = 5.52148309 [𝑘𝑔]

𝐿𝐶 = 0.07207618 [𝑚]
44

3
0.00239856 0.00000737 0.00004542
𝐼 = �0.00000737 0.00649077 0.00000000�
0.00004542 0.00000000 0.00567474
[𝑘𝑔 𝑥 𝑚2 ]

𝑚 = 1.26149489 [𝑘𝑔]

𝐿𝐶 = 0.09765544 [𝑚]
4
0.00043110 0.00000000 0.00000000
𝐼 = �0.00000000 0.00024144 0.00000000�
0.00000000 0.00000000 0.00047775
[𝑘𝑔 𝑥 𝑚2 ]

𝑚 = 0.37697715 [𝑘𝑔]

𝐿𝐶 = 0.02993509 [𝑚]
5
0.00093494 −0.00002224 −0.00004147
𝐼 = �−0.00002224 0.00123984 −0.00000892�
−0.00004147 −0.00000892 0.00075456
[𝑘𝑔 𝑥 𝑚2 ]

𝑚 = 0.99629387 [𝑘𝑔]

𝐿𝐶 = 0.04004752 [𝑚]

Cada articulación fue modelada lo más cercano posible a la realidad junto con los

motores y mecanismos, a los cuales se agregaron materiales para de esta forma asegurar que los

valores calculados por el software se asemejan al comportamiento real del sistema. Cabe destacar

que para obtener estos datos se debe tener en cuenta la configuración de los marcos de referencia

que se definieron en la dinámica directa para cada eslabón, ya que deben coincidir con los datos a

partir de los cuales se calculan las inercias.

Para determinar los valores de las componentes faltantes en el modelo, correspondientes

a los parámetros de los motores se realizó un experimento sobre cada motor aplicando un voltaje
45

y almacenando su ángulo de respuesta, posteriormente se aproximó con ayuda del sistema de

identificación de Matlab un modelo individual para cada motor y sobre los cuales se aplica un

control PID con la finalidad de seguir trayectorias. La ecuación 25 ilustra el modelo aproximado

en cada motor y en la tabla 9 muestra los parámetros de estos.

𝑲
𝑮(𝒔) = (25)
𝒔(𝟏+𝑻𝒑∗𝒔)

Tabla 9. Parámetros de los motores.

Motor N° K Tp
1 0.019594344058186 0.066459811925896
2 0.006298199772066 0.003651550214888
3 0.009405695542555 0.052870317040875
4 0.007351184621393 0.208550873910908
5 0.014300757436785 1.040891779716181

Se procede a implementar un control PID cuya función de transferencia se muestra en la

ecuación 26 y donde 𝐾𝑑 , 𝐾𝑝 y 𝐾𝑖 corresponden a las ganancias derivativa, proporcional e integral

respetivamente. La idea con la implementación del PID consiste en estabilizar el sistema de

forma que siga una trayectoria con la cual posteriormente se determinarán los valores faltantes en

el modelo del robot aproximándolos por medio de un algoritmo de caja gris. La figura 20 presenta

el esquema a implementar en cada motor del robot.

𝑲𝒅 𝒔𝟐 +𝑲𝒑 𝒔+𝑲𝒊
𝑪𝑷𝑰𝑫 (𝒔) = (26)
𝒔

Figura 20. Esquema del control PID.


46

Debido a las características del sistema se seleccionan tiempos de estabilización altos,

con el fin de evitar sobre picos y que el comportamiento en lazo cerrado sea lento. Después de

hallar las ganancias de cada controlador –cuyos valores se muestran en la tabla 10 – y definidas

las trayectorias en cada articulación – Dos por articulación en este caso – se implementa y

almacenan los datos tanto de la señal de control aplicada como de los ángulos obtenidos a la

salida del sistema.

Tabla 10. Ganancias del controlador PID

Motor N° 𝑲𝒅 𝑲𝒑 𝑲𝒊
1 1224.843247047766 2452.194570134980 5.016152078895691
2 3810.612693875763 7622.031557322349 1.612339141648887
3 2551.645424988915 5104.494779007277 2.407858058894171
4 3264.779928143313 6530.500807918164 1.881903263076634
5 1678.232786346413 3358.296069644735 3.660993903816979

Una vez obtenidos los datos de los experimentos, se procede con la estimación de los

datos faltantes en el modelo del robot. Cuando se comprende la física involucrada en determinado

sistema y se puede representar este mismo utilizando ecuaciones diferenciales con parámetros

desconocidos, se pueden usar los comandos de System Identification Toolbox ™ de Matlab con

el fin de realizar un modelado de caja gris lineal o no lineal. Las ecuaciones diferenciales del

modelo de caja gris especifican explícitamente la estructura matemática del modelo, dicho

modelado de caja gris es útil cuando se conocen las relaciones entre las variables, las restricciones

en el comportamiento del modelo o las ecuaciones explícitas que representan la dinámica del

sistema.(Acuña & Pinto, 2006)

A pesar de que no se tiene conocimiento de todos los detalles del sistema se propone una

relación matemática general que podría modelar el comportamiento, dicha relación será el

modelo ya planteado con los datos de faltantes expresados. Luego, como ya se mencionó a partir
47

del experimento tomado con el sistema estabilizado, es decir, con la implementación del PID

donde cabe resaltar no es relevante el desempeño, se desarrolla un algoritmo de caja gris con el

fin de buscar los parámetros no conocidos del modelo dinámico planteado. Así, se almacenan los

valores de ciclo útil y posición – aplicando el PID –, necesarios para el algoritmo de caja gris que

mediante una optimización matemática determina los parámetros de mejor ajuste dependiendo de

los datos que se hayan obtenido experimentalmente.

Para profundizar en el algoritmo implementado para la estimación de los parámetros

faltantes en el modelo mediante el método de caja gris ingrese al siguiente

enlace https://drive.google.com/open?id=1qUpD4EwzxYhzrgyiuQKrSKioR21PY5Th.

Figura 21. Validación del modelo no lineal.


48

La figura 21 muestra el mejor ajuste encontrado por el modelo de caja gris donde la señal

en color azul es la respuesta en radianes del sistema con los valores estimados frente a la de

referencia presentada en color gris. A pesar de que el ajuste no es perfecto cabe resaltar que se

trata de un modelo no lineal y el ajuste obtenido resulta aceptable para implementación de los

controladores. Finalmente, el modelo se encuentra completo con los valores estimados por este

método listados en la tabla 11.

Tabla 11. Valores estimados del modelo.

Motor 𝒌𝒎 [𝑽𝒔/𝒓𝒂𝒅] 𝑱 [𝐤𝐠𝐦𝟐 ] 𝒇𝒗 [𝑵𝒎𝒔/𝒓𝒂𝒅] 𝒇𝒄


1 4.9604714656311 1.446889905e-04 72.5927817569331 3.8539279685384
2 3.3316590250100 2.9781818418355 1.3407827654e+02 0.0201019601577
3 1.7985934329125 0.0229310295497 24.8950313259251 1.8409394046272
4 0.2286398946001 7.481270754e-04 8.18936635021090 0.0033238081902
5 3.9130424183498 1.9717541058399 23.6430284688694 14.831550415133

Desacople estático

Existen muchas técnicas y metodologías de control que pueden aplicarse al control de los

robots manipuladores. El método de control seleccionado, así como la manera en que se

implementa, pueden tener un impacto significativo en el rendimiento del robot y, por lo tanto, en

sus posibles aplicaciones. Considerando un tipo de control independiente, donde cada eje del

manipulador se controla como un sistema SISO y cualquier efecto de acoplamiento debido al

movimiento de los otros enlaces se trata como una perturbación, se plantea un desacople parcial

de las inercias del sistema con el fin de disminuir la propagación de errores y obtener un mejor

desempeño de los controladores.

Antes de realizar el desacople se linealiza el modelo no lineal teniendo en cuenta la

trayectoria o el espacio por la cual se desplazará el robot. Una vez linealizado dicho modelo, las

matrices que rigen el comportamiento del sistema se aproximan a matrices numéricas sobre las
49

cuales se aplica el desacoplamiento. Cabe resaltar que se pretende realizar un desacoplamiento

parcial, puesto que, la idea es desacoplar únicamente la matriz 𝑀(𝑞) que contiene los

componentes que afectan el comportamiento del sistema debido a las inercias.

Así el desacoplamiento parcial o estático consiste en encontrar una matriz 𝐷 tal que al

pos-multiplicar 𝑀(𝑞) por esta elimine la interacción de las variables que no pertenecen a un

mismo lazo, es decir, el efecto de un eslabón sobre los demás. Este procedimiento busca la

cancelación de los términos que no pertenecen a la diagonal principal y de esta forma lograr que

el comportamiento del sistema respecto a las inercias sea independiente en cada eslabón.

𝒅𝟏𝟏 𝒅𝟏𝟐 𝒅𝟏𝟑 𝒅𝟏𝟒 𝒅𝟏𝟓


⎡ ⎤
𝒅 𝒅 𝒅 𝒅 𝒅
⎢ 𝟐𝟏 𝟐𝟐 𝟐𝟑 𝟐𝟒 𝟐𝟓 ⎥
𝑫 = ⎢𝒅𝟑𝟏 𝒅𝟑𝟐 𝒅𝟑𝟑 𝒅𝟑𝟒 𝒅𝟑𝟓 ⎥ (27)
⎢𝒅𝟒𝟏 𝒅𝟒𝟐 𝒅𝟒𝟑 𝒅𝟒𝟒 𝒅𝟒𝟓 ⎥
⎣𝒅𝟓𝟏 𝒅𝟓𝟐 𝒅𝟓𝟑 𝒅𝟓𝟒 𝒅𝟓𝟓 ⎦

La representación más simple será asumiendo los términos en la diagonal principal

iguales a uno, y se determinan los demás componentes en relación con la matriz de inercias con el

fin de cancelar dichos términos después de operar las matrices. A continuación, se ejemplificará

con un sistema menos complejo el procedimiento realizado para encontrar la matriz 𝐷.

𝟏 𝒅𝟏𝟐
𝑫= � � (28)
𝒅𝟐𝟏 𝟏

𝒎𝟏𝟏 𝒎𝟏𝟐 𝟏 𝒅𝟏𝟐 𝒎 ′ 𝟎


𝑴(𝒒) ∗ 𝑫 = �𝒎 𝒎𝟐𝟐 � ∗ �𝒅𝟐𝟏 � = � 𝟏𝟏 � (29)
𝟐𝟏 𝟏 𝟎 𝒎𝟐𝟐 ′

𝒎𝟏𝟏 ∗ 𝒅𝟏𝟐 + 𝒎𝟏𝟐 = 𝟎 (30)

𝒎𝟐𝟏 + 𝒎𝟐𝟐 ∗ 𝒅𝟐𝟏 = 𝟎 (31)


𝒎𝟏𝟐
𝟏 −
𝒎𝟏𝟏
𝑫 = � 𝒎𝟐𝟏 � (32)
− 𝟏
𝒎𝟐𝟐
50

Una vez determinada la matriz 𝐷 se multiplica todo el sistema dinámico obtenido en

apartados anteriores, con lo cual se obtiene unas nuevas matrices 𝑀, 𝐶, 𝐺 y 𝐾 las cuales como

ya se mencionó son aproximaciones numéricas del modelo linealizado. Luego de

desacoplar estáticamente el modelo se procede a operar la expresión representada matricialmente

a fin de obtener ecuaciones para la dinámica individual de cada motor.

𝒎𝒊𝒊 𝒒̈𝒊 + 𝑪𝒊𝟏 𝒒̇ 𝟏 + 𝑪𝒊𝟐 𝒒̇ 𝟐 + 𝑪𝒊𝟑 𝒒̇ 𝟑 + 𝑪𝒊𝟒 𝒒̇ 𝟒 + 𝑪𝒊𝟓 𝒒̇ 𝟓 + 𝒈𝒊 = 𝒌𝒊𝟏 𝒖𝟏 + 𝒌𝒊𝟐 𝒖𝟐 + 𝒌𝒊𝟑 𝒖𝟑 + 𝒌𝒊𝟒 𝒖𝟒 + 𝒌𝒊𝟓 𝒖𝟓 (33)

𝒎𝒊𝒊 𝒒̈ 𝒊 + 𝑪𝒊𝒊 𝒒̇ 𝒊 + 𝑪𝒅 + 𝒈𝒊 = 𝒌𝒊𝒊 𝒖𝒊 + 𝒌𝒅 (34)

Finalmente, como se muestra en la ecuación 33 donde el subíndice 𝑖 hace referencia a la

cantidad de eslabones, aunque se han desacoplado las inercias en el sistema aún existe una

dependencia entre los diferentes eslabones. Sin embargo, los términos que actúan sobre un

eslabón debido a los demás se agrupan y por tanto en la ecuación 34 surgen los términos 𝐶𝑑 y 𝑘𝑑

los cuales agrupan el termino de Coriolis y la constante de conversión de voltaje a torque que

dependen de otros eslabones. Generalmente estos términos debidos a otras articulaciones y la

componente de gravedad se toman como perturbaciones para el control tipo SISO. En la tabla 12

se presentan los valores de los parámetros para la dinámica de cada eslabón.

Tabla 12. Valores estimados del modelo.


Eslabón 𝒎𝒊𝒊 𝑪𝒊𝒊 𝑪𝒅 𝒈𝒊 𝒌𝒊𝒊 𝒌𝒅
1 0.398389 72.592757 0.379453 -0.842040 1.190513 0.0061945
2 3.262236 134.07826 -3.843140 6.4226000 0.799598 -0.022903
3 0.070229 24.895030 -36.48475 2.8021354 0.431662 -0.632590
4 0.003077 8.1893662 -9.883521 -0.057421 0.054873 -0.066225
5 1.972507 23.643028 0.0070949 0.0038247 0.939130 0.0002817
51

Capítulo 4

Control en el espacio de la tarea

El problema del control en los robots manipuladores consiste en definir cómo mover cada

articulación de tal forma que se desempeñen las tareas formuladas en el espacio. La estrategia de

control independiente se refiere a que las entradas de control en cada articulación solo dependen

de la medición del desplazamiento y la velocidad de la articulación correspondiente, es decir, se

trata como un sistema SISO. Los efectos del acoplamiento entre las articulaciones debido a la

configuración variable durante el movimiento se tratan como entradas de perturbación. Debido a

la estructura simple de este tipo de esquemas de control, se cuenta con ventajas en cuanto a la

carga computacional de los controladores, además los controladores en todas las juntas presentan

la misma formulación.

Puesto que los robots manipuladores presentan una dinámica no lineal, se pueden

desarrollar múltiples controladores para estabilizar el sistema, es decir, que la estabilidad del

sistema no está dada por un único controlador. Generalmente se busca un controlador óptimo

entre los muchos que estabilizan el sistema. No obstante, el diseño de un controlador óptimo solo

es posible siempre que se tenga la suficiente información sobre el| sistema a controlar, en caso de

discrepancias entre el sistema real y su modelo matemático el desempeño del controlador deja de

ser óptimo y puede llegar a ser inestable en el sistema real.

En resumen, el marco de diseño de control óptimo no es el mejor para responder ante

incertidumbres del sistema, por ello se requiere de un marco de diseño de control robusto ya que

el objetivo de este tipo de control es el de mantener el sistema controlado estable incluso en la

presencia de incertidumbres en el modelo, dinámicas no modeladas, perturbaciones externas,


52

entre otras. En esta sección se proponen dos controladores con esta estrategia independiente y

más robusta que los convencionales, a fin de seguir una trayectoria en el espacio y verificar el

desempeño de estos.

Control ADRC

El control ADRC – Active Disturbance Rejection Control –, es un método de control

robusto basado en la expansión del modelo del sistema con una variable de estado adicional, la

cual representa todo lo que no se incluye en la descripción matemática de la planta, como

dinámicas no modelas, incertidumbres, perturbaciones externas, etc. Dicho estado adicional se

estima en línea con un observador de estado y se usa en la señal de control con el fin de rechazar

la perturbación real que actúa sobre la planta.(Cortés-Romero, Ramos, & Coral-Enriquez, 2014)

Este tipo de control permite trabajar considerando modelos más simples puesto que los

efectos de incertidumbre en el modelo se estiman en tiempo real. Por lo tanto, no se requiere una

descripción matemática precisa de la planta ya que los elementos que son desconocidos en la

dinámica se pueden asumir como una perturbación interna.

Con el modelo obtenido en el capítulo anterior se diseña el control ADRC en cada

eslabón del robot. Los efectos del acoplamiento obtenidos en dicho modelo, que como ya se

mencionó se consideran como una perturbación, se agrupan con la componente de gravedad y la

debida a las fuerzas centrípetas o de Coriolis en una función 𝜁 que representa las dinámicas no

modeladas, las incertidumbres y las perturbaciones externas, función la cual se considera como el

estado adicional del sistema:

𝒌𝒊𝒊 𝒌𝒅 −𝑪𝒊𝒊 𝒒̇ 𝒊 −𝑪𝒅 −𝒈𝒊


𝒒̈ 𝒊 = 𝒖𝒊 + (35)
𝒎𝒊𝒊 ������
𝒎𝒊𝒊 ���
𝜻

𝒌𝒊𝒊
𝒒̈ 𝒊 = 𝒖𝒊 + 𝜻 (36)
𝒎𝒊𝒊
53

La ecuación 36 representa el modelo simplificado para cada eslabón del robot, expresión

a partir de la cual se representa el sistema en espacio de estados considerando 𝜁 como un estado

𝑘𝑖𝑖
adicional, 𝑞 es la salida medida y 𝑢 la entrada de sistema. Por simplicidad el término se
𝑚𝑖𝑖

representa como 𝑘𝑖 .

𝒙𝟏 (𝒕) = 𝒒(𝒕) 𝑥1̇ (𝑡) = 𝑥2 (𝑡)

𝒙𝟐 (𝒕) = 𝒒̇ (𝒕) 𝑥2̇ (𝑡) = 𝑘𝑖 𝑢(𝑡) + 𝑥3 (𝑡)

𝒙𝟑 (𝒕) = 𝜻(𝒕) 𝑥3̇ (𝑡) = 𝜁̇ ≈ 0

𝒚(𝒕) = 𝒙𝟏 (𝒕) (37)

Con este sistema extendido se diseña un observador capaz de estimar los estados del

sistema. Considerando 𝐿 = [𝑙1 𝑙2 𝑙3 ]𝑇 y 𝑥� como la estimación de los estados 𝑥 = [𝑥1 𝑥2 𝑥3 ]𝑇 , se

diseña un observador tipo Luenberger el cual se describe a continuación.

𝑥�̇ (𝑡) = 𝐴𝑥�(𝑡) + 𝐵𝑢(𝑡) + 𝐿(𝑦(𝑡) − 𝑦�(𝑡))

𝑦�(𝑡) = 𝐶𝑥�(𝑡)

0 1 0 0 𝐶 = [1 0 0]
𝐴 = �0 0 1� 𝐵 = �𝑘𝑖 �
0 0 0 0 (38)

Basados en la estimación online del observador se propone una ley de control capaz de

estabilizar el sistema en lazo cerrado, donde 𝑢0 es una función que permite dicha estabilización

con un rendimiento satisfactorio y 𝑟 es la señal de referencia.

𝟏
𝒖= (𝒖𝟎 − 𝒙
�𝟑 ) (39)
𝒌𝒊

�𝟐 − 𝒓̇ ) − 𝒌𝟏 (𝒙
𝒖𝟎 = 𝒓̈ − 𝒌𝟐 (𝒙 �𝟏 − 𝒓) (40)
54

Con el fin de analizar la estabilidad del sistema, definimos 𝑒 = 𝑦 − 𝑟, 𝑦 = 𝑞 y

reemplazamos la señal de control del sistema.

𝟏
�𝟐 − 𝒓̇ ) − 𝒌𝟏 (𝒙
𝒚̈ = 𝒌𝒊 � (𝒓̈ − 𝒌𝟐 (𝒙 �𝟏 − 𝒓)) − 𝒙
�𝟑 � + 𝜻 (41)
𝒌𝒊

𝒚̈ − 𝒓̈ = −𝒌𝟐 (𝒚̇ − 𝒓̇ ) − 𝒌𝟏 (𝒚 − 𝒓) (42)

𝒆̈ + 𝒌𝟐 𝒆̇ + 𝒌𝟏 𝒆 ≈ 𝟎 (43)

[𝒔𝟐 + 𝒌𝟐 𝒔 + 𝒌𝟏 ] ≈ 𝟎 (44)

Sintonizando los parámetros 𝑘1 y 𝑘2 se selecciona la dinámica deseada del error de

seguimiento del sistema de control para ese eslabón. En apartados posteriores analizaremos el

comportamiento de este tipo de control en el sistema robótico.

Control SMC

El control SMC – Sliding Mode Control – es una técnica de control que presenta alta

precisión, robustez y es de fácil implementación. Su diseño consta de dos partes, en primer lugar,

se debe diseñar la superficie de deslizamiento tal que satisfaga las especificaciones de diseño; y

por otro lado se debe seleccionar la ley de control tal que asegure la estabilidad del sistema

incluyendo la superficie de deslizamiento. Las ventajas de este tipo de control radican en que el

comportamiento dinámico del sistema puede adaptarse a la elección particular de la función de

deslizamiento, además en su respuesta en lazo cerrado algunas incertidumbres particulares son

manejables. Por tanto, el control SMC permite controlar sistemas no lineales sujetos a

incertidumbre en su modelo, dinámicas no modeladas, perturbaciones internas y externas, entre

otros.(Rojas-Cubides, Cortés-Romero, Coral-Enriquez, & Rojas-Cubides, 2019)

Nuevamente con el modelo simplificado obtenido en la sección anterior y descrita en la

ecuación 36, se pretende expandir el sistema considerando la función 𝜁 como un estado más del
55

sistema. Se diseña el observador con el fin de estimar dicho estado adicional en línea para

incluirlo en la señal de control y rechazar la perturbación presente en el sistema. Debido a que

este procedimiento ya se realizó en el control ADRC, se expone directamente el diseño del

controlador SMC comenzando con el diseño de la superficie de deslizamiento.

El error de seguimiento se define como la diferencia entre la salida del sistema 𝑦(𝑡) y la

señal de referencia 𝑟(𝑡), se requiere una ley de control tal que 𝑦(𝑡) sea forzada a seguir 𝑟(𝑡)

incluso ante la presencia de perturbaciones. La superficie de deslizamiento 𝜎(𝑡) es propuesta en

términos del error de seguimiento 𝑒(𝑡) = 𝑦(𝑡) − 𝑟(𝑡).

𝝈 = 𝒆̇ + 𝒌𝟎 𝒆 (45)

Por lo tanto, la dinámica de la superficie deslizante se describe en la ecuación 45, donde

𝑘0 se selecciona a fin de garantizar la estabilidad y satisfacer los requerimientos de la dinámica

en la superficie de deslizamiento.

𝝈̇ = 𝒆̈ + 𝒌𝟎 𝒆̇ (46)

𝑘𝑖𝑖
Considerando como 𝑘𝑖 , y combinando las ecuaciones 36 y 46 se obtiene una nueva
𝑚𝑖𝑖

dinámica dada por la ecuación 47.

𝝈̇ = 𝒌𝒊 𝒖 + 𝜻𝝈 (47)

𝜻𝝈 = 𝜻 − 𝒓̈ + 𝒌𝟎 (𝒚̇ − 𝒓̇ ) (48)

Se propone una ley de control basada en observadores, con el propósito de crear y

mantener un régimen deslizante. Dicha ley de control contiene dos términos, un término

discontinuo 𝑊 base del control de modelo deslizante; y un término continúo dado por la
56

estimación de la función de perturbación unificada de la superficie deslizante 𝜁𝝈 representada en

la ecuación 48.

𝟏
𝒖= �−𝑾𝒔𝒊𝒈𝒏(𝝈) − 𝜻�𝝈 � (49)
𝑲𝒊

Con el fin de analizar la estabilidad del sistema, se propone la siguiente función candidata

de Lyapunov 𝑉 = 1⁄2 𝜎 2 . Derivando y reemplazando las ecuaciones 47 y 49, obtenemos que la

función 𝑉̇ es estrictamente negativa siempre que 𝑊 > (𝜁𝝈 − 𝜁̂𝝈 ).

𝑽̇ = 𝝈𝝈̇ (50)

𝟏
𝑽̇ = 𝝈(𝒌𝒊 � �−𝑾𝒔𝒊𝒈𝒏(𝝈) − 𝜻�𝝈 �� + 𝜻𝝈 ) (51)
𝑲𝒊

𝑽̇ = −𝝈𝑾𝒔𝒊𝒈𝒏(𝝈) + 𝝈(𝜻𝝈 − 𝜻�𝝈 ) (52)

𝑽̇ = −𝑾|𝝈| + 𝝈�𝜻𝝈 − 𝜻�𝝈 � < 𝟎 (53)

Como se puede evidenciar el uso del sistema extendido la cual permite estimar el estado

adicional debido a las perturbaciones y dinámicas no modeladas, y asumiendo una buena

estimación de 𝜁𝝈 permite valores de 𝑊 de magnitud reducida. En apartados posteriores

analizaremos el comportamiento de este tipo de control en el sistema robótico.

Generación de trayectorias

La generación de trayectorias es un punto importante para definir el movimiento articular

en los robots manipuladores. Estas trayectorias son compuestas de una secuencia de

desplazamientos espaciales entre los eslabones y dicho movimiento relativo entre eslabones

posiciona el efector final en un punto específico en el espacio.


57

Generalmente se planea la ruta que debe seguir el efector final del robot en el espacio

tridimensional que se encuentra dentro de su área de trabajo. Entonces el problema de la

generación de trayectorias consiste en determinar los puntos por los cuales se moviera el efector

final dentro de su espacio operacional y posteriormente se analiza que serie de movimientos debe

realizar cada eslabón para lograr la ruta deseada. El capítulo 3 abarca el modelo cinemático del

robot – entre otros temas – y se definieron dos subtemas importantes, la cinemática inversa y a

cinemática directa. En este caso nos centraremos en la cinemática inversa, puesto que a partir de

esta con un punto en el espacio podemos determinar los ángulos necesarios en cada eslabón para

lograr la posición deseada del mismo.

Por otro lado, para el diseño de la trayectoria en el espacio tridimensional o de la tarea

existen diversos métodos. Sin embargo, en este caso nos centraremos en el método por

ecuaciones paramétricas el cual permite representar una curva en el espacio mediante valores que

recorren un intervalo de números reales haciendo uso de una nueva variable, es decir, describir

las coordenadas 𝑥, 𝑦, 𝑧 en términos de una cuarta variable 𝑡 llamada parámetro.

Trayectoria en el espacio operacional

Cuando se habla del espacio operacional, se habla del lugar en el cual el robot desempeña

las diversas tareas para las cuales se programa, es decir, el espacio tridimensional en el cual se

mueve. Este espacio se encuentra limitado a las restricciones físicas y geométricas del propio

manipulador y por ende solo podrá desempeñar las tareas en las cuales el robot se mueve dentro

de estos límites. Los límites operacionales del robot Mitsubishi Movemaster RV-M1 se

expusieron en el capítulo 2 del presente documento.

En este documento se diseñan dos trayectorias en el espacio operacional por medio de las

ya mencionadas ecuaciones paramétricas. La primera trayectoria consiste en una senoidal con un


58

giro de 180° y la segunda es la denominada lemniscata de Bernoulli, dichas trayectorias

determinan los puntos en el espacio por los cuales pasara el efector final de robot. A

continuación, se denotan las ecuaciones paramétricas de cada trayectoria y su representación en el

espacio operacional, donde el subíndice en cada ecuación se refiere ya sea a la trayectoria 1 o la

trayectoria 2.

𝒙𝟏 = 𝟎. 𝟒 𝐬𝐢𝐧 𝒕 (54) 𝒙𝟐 = 𝟎. 𝟐𝟓 (57)

𝒚𝟏 = 𝟎. 𝟒 𝐜𝐨𝐬 𝒕 (55) 𝟒𝟑.𝟕𝟓 𝐜𝐨𝐬 𝒕


𝒚𝟐 = (58)
𝟏+𝐬𝐢𝐧𝟐 𝒕

𝒛𝟏 = 𝟎. 𝟎𝟓 𝐬𝐢𝐧 𝟏𝟔𝒕 + 𝟎. 𝟒 (56) 𝟑𝟓 𝐬𝐢𝐧 𝒕 𝐜𝐨𝐬 𝒕


𝒛𝟐 = + 𝟎. 𝟒𝟓 (59)
𝟏+𝐬𝐢𝐧𝟐 𝒕

Figura 22. Trayectorias en el espacio operacional.

Trayectoria en el espacio articular

Puesto que las variables a controlar en el sistema robótico son los ángulos de cada

articulación aplicando ciclo útil a cada actuador, se hace necesario transformar las trayectorias

definidas en el espacio operacional a trayectorias en el espacio articular para cada motor de

manera independiente. Para lograrlo, como ya se mencionó se usa la cinemática inversa


59

presentada en capítulos anteriores. Una vez definida la trayectoria en el espacio de la tarea, a cada

punto por el cual se moverá el robot se le aplica cinemática inversa a fin de determinar la manera

en la cual se moverá cada articulación y de esta forma se define la referencia en el tiempo para

cada actuador del sistema.

Cabe resaltar que el actuador número 5 solo influye en la orientación con la cual la

herramienta llega a cada punto de la trayectoria en el espacio operacional, por lo cual con fines

experimentales se adiciona una orientación variable al efector final. De esta manera la referencia

de este actuador no será constante y posteriormente se analiza el comportamiento del actuador

ante la referencia variable según el controlador aplicado. Las figuras 23 y 24 ilustran las

referencias obtenidas para cada articulación ante las dos trayectorias previamente diseñadas.

Figura 23. Referencias articulares para la trayectoria 1.


60

Figura 24. Referencias articulares para la trayectoria 2.

Diseño y simulación de los controladores

Antes de diseñar cualquier tipo de controlador se definen ciertos requerimientos en

cuanto a la respuesta del sistema. Por lo cual, debido a las características que presenta el sistema

se decide que su respuesta no debe ser rápida y por ende se define el tiempo de establecimiento

igual a 1 segundo sin sobre nivel porcentual, esto con el fin de no forzar el sistema.

Posteriormente se diseña y simula el comportamiento de los controladores, ya que la simulación

permite ajustar los parámetros de forma simple y rápida a fin de sintonizar adecuadamente cada

controlador, verificar que la acción de control se encuentre dentro de los límites del sistema y

corregir cualquier error previo a la implementación.

Por otro lado, en las dos estrategias de control propuestas se hace uso de un observador,

el cual se encarga de estimar los estados de sistema y la perturbación debida a dinámicas no

modeladas e incertidumbres. Por lo tanto, con fines de comparación y simplicidad se diseña el


61

observador con la misma dinámica en las dos estrategias de control, dinámica la cual debe ser

más rápida que la dinámica del control.

Diseño del Observador de estados

En las ecuaciones obtenidas en 38 se describe un observador genérico, donde el último

término 𝐿(𝑦(𝑡) − 𝑦�(𝑡)) corresponde al valor de corrección que contiene la diferencia entre la

salida medida y la estimada. El parámetro 𝐿 funciona como una matriz de ponderación.

Si consideramos un sistema en espacio de estados de la forma 𝑥̇ (𝑡) = 𝐴𝑥(𝑡) + 𝐵𝑢(𝑡), lo

restamos de la ecuación en 38 y definiendo el error de estimación como 𝑒𝑥 = 𝑥(𝑡) − 𝑥�(𝑡),

obtenemos la expresión para el error en la estimación del estado.

�̇(𝒕) = 𝑨𝒙(𝒕) − 𝑨𝒙
𝒙̇ (𝒕) − 𝒙 �(𝒕) − 𝑳(𝑪𝒙(𝒕) − 𝑪𝒙
�(𝒕)) (60)

�̇(𝒕) = (𝑨 − 𝑳𝑪)(𝒙(𝒕) − 𝒙
𝒙̇ (𝒕) − 𝒙 �(𝒕)) (61)

𝒆̇ 𝒙 = (𝑨 − 𝑳𝑪)𝒆𝒙 (62)

En la ecuación 62 se evidencia que le comportamiento dinámico del vector de error se

determina mediante los valores característicos de la matriz (𝐴 − 𝐿𝐶), si se eligen los valores

característicos de esta matriz de forma que el comportamiento dinámico del vector de error sea

asintóticamente estable y suficientemente rápido, cualquier vector de error tenderá a cero con una

velocidad adecuada.

|𝒔𝑰 − (𝑨 − 𝑳𝑪)| = (𝒔 − 𝒑𝟏 )(𝒔 − 𝒑𝟐 ) … (𝒔 − 𝒑𝒏 ) (63)

Siendo 𝐼 la matriz identidad y 𝑝𝑖 los valores característicos deseados. Entonces el diseño

del observador consiste en determinar la matriz 𝐿 tal que 𝐴 − 𝐿𝐶 tenga los valores característicos

deseados, problema el cual se aborda por ubicación de polos. Definiendo un tiempo de


62

establecimiento de 0.08 segundos y sin sobre nivel porcentual se determina el polo que domina la

dinámica del sistema y se calculan los valores de 𝐿.

Tabla 13. Ganancias del observador en cada eslabón.

Cintura Hombro Codo Muñeca (Pitch) Muñeca (Bank)


𝒍𝟏 152.999999894 153.000000089 153.000000028 153.000000039 153.000000090
𝒍𝟐 7801.99998928 7802.00000941 7802.00000289 7802.00000402 7802.00000914
𝒍𝟑 271363.669167 540981.481004 205173.751899 780200.000402 278513.040487

Finalmente, la tabla 13 contiene los valores de la matriz 𝐿 = [𝑙1 𝑙2 𝑙3 ]𝑇 para cada uno de

los eslabones del robot. Como ya se mencionó estos valores serán los mismos en las dos

estrategias de control, puesto que se eligió la misma dinámica para el observador en los dos tipos

de control y el modelo del sistema no cambia. Debido a que las dos estrategias de control exigen

derivar la referencia, se implementa un observador adicional presentado en el anexo II del

presente documento.

Simulación del control ADRC

El diseño de esta estrategia de control consiste en la sintonización de los parámetros 𝑘1 y

𝑘2 de tal manera que la acción de control se comporte con cierta dinámica deseada. Dicha

dinámica está dada por los requerimientos ya establecidos – tiempo de establecimiento igual a 1

segundo sin sobre nivel porcentual – y nuevamente por ubicación de polos se determinan los

valores de dichos parámetros.

𝒔𝟐 + 𝒌𝟐 𝒔 + 𝒌𝟏 = (𝒔 − 𝒑𝟏 )(𝒔 − 𝒑𝟐 ) (64)

Debido a que el cálculo de estos parámetros depende únicamente de la dinámica deseada

y ya que se pretende que todos los eslabones se comporten con la misma dinámica, los valores de
63

estos parámetros son iguales en todas las articulaciones. Así se obtiene que 𝑘1 = 25 y 𝑘2 = 8

para todas las articulaciones.

Figura 25. Diagrama de bloques del control ADRC.

La figura 25 ilustra el esquema de control ADRC, donde el bloque BD hace referencia al

proceso diferenciador de la señal de referencia necesario para la implementación del controlador.

En este bloque se diseña un observador con la finalidad de estimar las derivadas de la señal de

referencia, y el cual se expone es el anexo II de este documento. Por otro lado, k corresponde al

𝑘𝑖𝑖
parámetro de cada articulación.
𝑚𝑖𝑖
64

Figura 26. Simulación del control ADRC.

La figura 26 muestra el desempeño del control ADRC obtenido por simulación, para una

de las articulaciones. En dicha figura se evidencia buen seguimiento de la referencia incluso ante

perturbaciones, puesto que en el segundo 23 se simuló una perturbación externa sobre el sistema

la cual el control rechazó satisfactoriamente. Por otro lado, se puede ver que la señal de control se

encuentra dentro de los límites del sistema.

Simulación del control SMC

El diseño de esta estrategia de control inicia con la sintonización del parámetro 𝑘0 el cual

rige la superficie de deslizamiento, y por tanto la dinámica de control. Dicha dinámica está dada

por los requerimientos ya establecidos – tiempo de establecimiento igual a 1 segundo sin sobre

nivel porcentual – y nuevamente por ubicación de polos se determinan el valor de dicho

parámetro.

𝒔 + 𝒌𝟎 = (𝒔 − 𝒑𝟏 ) (65)
65

Debido a que el cálculo de este parámetro depende únicamente de la dinámica deseada y

ya que se pretende que todos los eslabones se comporten con la misma dinámica, el valor de este

parámetro es igual en todas las articulaciones. Así se obtiene que 𝑘0 = 4 para todas las

articulaciones.

Posteriormente se determina el valor de 𝑊 que corresponde al componente discontinuo

que mantendrá el sistema deslizando sobre la superficie diseñada previamente, para ello se varía

su magnitud asegurando que el sistema siempre se encuentre deslizando sobre dicha superficie.

Esto se logra garantizando que 𝑊 > (𝜁𝝈 − 𝜁̂𝝈 ), y se puede evidenciar en la señal de control ya

que presenta una conmutación mientras el sistema se mantiene deslizando. Se establecen valores

para 𝑊 de 0.5, 0.5, 6, 9 y 5 para las articulaciones de cintura, hombro, codo, inclinación muñeca

y muñeca giro respectivamente.

Figura 27. Diagrama de bloques del control SMC.

La figura 27 ilustra el esquema de control SMC, donde el bloque BD hace referencia al

proceso diferenciador de la señal de referencia necesario para la implementación del controlador.

En este bloque se diseña un observador con la finalidad de estimar las derivadas de la señal de
66

referencia, y el cual se expone es el anexo II de este documento. Por otro lado, k corresponde al

𝑘𝑖𝑖
parámetro de cada articulación.
𝑚𝑖𝑖

Figura 28. Simulación del control SMC.

La figura 28 muestra el desempeño del control SMC obtenido por simulación, para una

de las articulaciones. En dicha figura se evidencia buen seguimiento de la referencia incluso ante

perturbaciones, puesto que en el segundo 23 se simulo una perturbación externa sobre el sistema

la cual el control rechazo satisfactoriamente. Por otro lado, se puede ver que la señal de control se

encuentra dentro de los límites del sistema y presenta la conmutación característica de esta

estrategia de control.
67

Análisis de Resultados

Se han implementado y comparado tres tipos de controladores, los dos controladores

estudiados en el presente documento y un tercer control adicional por retroalimentación de

estados con acción integral en el cual no se profundiza. El objetivo de este controlador adicional

consiste en comparar las estrategias robustas propuestas anteriormente con algún tipo de control

convencional sintonizado bajo los mismos requerimientos.

Figura 29. Posición inicial del robot.

Las tres estrategias de control parten da la posición inicial con todas las articulaciones en

cero grados, cuya configuración espacial se ilustra en la figura 29. Esta posición es la base del

desarrollo cinemático y dinámico y por ende se toma como la posición inicial.


68

Resultados experimentales con la trayectoria 1

A continuación, se presenta la evolución en el tiempo del error articular en cada eslabón y

el voltaje aplicado usando cada estrategia de control, con la primera trayectoria y a tres diferentes

velocidades.

Figura 30. Error de posición articular en cada eslabón a velocidad alta.


69

Figura 31. Señal de control aplicada a cada eslabón a velocidad alta.


70

Figura 32. Error de posición articular en cada eslabón a velocidad media.


71

Figura 33. Señal de control aplicada a cada eslabón a velocidad media.


72

Figura 34. Error de posición articular en cada eslabón a velocidad baja.


73

Figura 35. Señal de control aplicada a cada eslabón a velocidad baja.


74

En las gráficas expuestas anteriormente SS hace referencia al control por

retroalimentación de estados con acción integral y los errores son presentados en radianes. Con el

fin de cuantificar el comportamiento de los lazos de control se determina el índice de desempeño

de cada controlador bajo cada configuración a partir del error obtenido, en base al criterio IAE o

integral del error absoluto. Adicionalmente se repiten los experimentos agregando una carga de 1

kg al manipulador y nuevamente se calculan los índices de desempeño en cada caso.

Cintura Hombro Codo Inc linación muñeca Muñeca giro


Cs Vel.
Sin Carga Con Carga Sin Carga Con Carga Sin Carga Con Carga Sin Carga Con Carga Sin Carga Con Carga
Rápida 19593 19606 9682,9 9691 36014 36174 36791 36742 33605 33637
Media 19725 19724 11395 11464 43626 43996 43673 43615 66988 67022
SS

Baja 19700 19830 12386 12360 46578 47029 46010 45975 1,34E+08 1,34E+09
Rápida 793,55 2605,4 1625,5 1863,7 13188 13763 22939 24053 4470,7 4969,7
ADRC

Media 552,98 651,77 2157,5 2490,5 8219,9 8510,9 16738 17374 7872,6 8299,5
Baja 576,75 874,37 2366,1 2623,4 5653,5 5900 13417 13377 14739 15631
Rápida 144,55 131,19 658,85 749,16 1235,2 1272,1 2341,3 2409,3 967,38 966,16
SMC

Media 84,043 94,738 266,71 359,4 816,49 899,67 1444,5 1472,7 1368,5 1376,3
Baja 120,62 118,4 266,42 310,9 1072,8 1691,4 1189,1 1223,1 2159,7 2188,9
Figura 36. Índices de desempeño con la primera trayectoria.

Las figuras 30,32 y 34 muestran el desempeño del sistema obtenido con cada controlador

y se evidencia que le error en cada caso es bajo. No obstante, comparando las técnicas de control

propuestas en este documento con la retroalimentación de estados convencional, se ve una clara

diferencia en cuanto al error articular. Y aunque tanto en ADRC como en SMC el error es muy

bajo, esta segunda técnica presenta mejor desempeño. Lo cual se reitera en la figura 36 donde se

resumen los índices de desempeño, y en la cual el SMC presenta los valores más bajos aun con

carga, es decir, que el controlador SMC minimiza la función de costo y por tanto es la técnica con

mejor desempeño.

Con el fin de visualizar de una manera más amigable esta última afirmación se

representan los valores listados en la figura 36 de forma porcentual y para ello se parte de
75

considerar en cada caso el índice obtenido con el controlador convencional SS como el 100 % y

se calcula la equivalencia respecto a esta afirmación para los demás controladores.

Figura 37. Comparación del desempeño de los controladores a velocidad alta.

Figura 38. Comparación del desempeño de los controladores a velocidad media.


76

Figura 39. Comparación del desempeño de los controladores a velocidad baja.

Las figuras 37-39 ilustran de manera más clara como los valores del índice de

desempeño para el control SMC son menores con respeto a los demás controladores y por ende

presenta mejor desempeño aún bajo la presencia de cargas en el sistema. Por otro lado, se decide

analizar el coste energético de cada controlador, para ello a partir de las señales de control

presentadas en las figuras 31, 33 y 35 se calcula la integral de ciclo útil al cuadrado, cuyos

resultados se presentan en la figura 40.

Cintura Hombro Codo Inc linación muñeca Muñeca giro


Cs Vel.
Sin Carga Con Carga Sin Carga Con Carga Sin Carga Con Carga Sin Carga Con Carga Sin Carga Con Carga
Rápida 2,43E+06 2,53E+06 5,25E+06 6,49E+06 4,58E+06 5,24E+06 7,45E+06 7,14E+06 5,86E+06 5,81E+06
Media 3,41E+06 3,36E+06 8,99E+06 1,16E+07 6,80E+06 7,86E+06 1,22E+07 1,16E+07 1,13E+07 1,10E+07
SS

Baja 5,71E+06 5,38E+06 1,71E+07 2,31E+07 1,05E+07 1,30E+07 2,08E+07 1,99E+07 2,13E+07 2,14E+07
Rápida 2,38E+06 2,86E+06 5,17E+06 6,62E+06 6,09E+06 6,49E+06 8,10E+06 8,51E+06 5,75E+06 6,53E+06
ADRC

Media 3,39E+06 3,47E+06 9,26E+06 1,23E+07 7,39E+06 8,11E+06 1,20E+07 1,24E+07 1,08E+07 1,14E+07
Baja 5,34E+06 5,72E+06 1,71E+07 2,34E+07 1,05E+07 1,29E+07 1,97E+07 2,04E+07 2,11E+07 2,23E+07
Rápida 2,47E+06 2,42E+06 5,20E+06 6,70E+06 5,65E+06 5,94E+06 7,45E+06 7,59E+06 5,68E+06 5,93E+06
SMC

Media 3,40E+06 3,36E+06 9,26E+06 1,22E+07 7,78E+06 8,74E+06 1,12E+07 1,16E+07 1,05E+07 1,08E+07
Baja 5,36E+06 5,64E+06 1,75E+07 2,28E+07 1,25E+07 1,51E+07 1,79E+07 1,93E+07 2,02E+07 2,08E+07
Figura 40. Coste energético para la trayectoria 1.
77

Nuevamente se consideran los valores obtenidos para el controlador convencional SS

como el 100 % y se calcula la equivalencia para los controladores restantes. Finalmente, la

comparación del coste energético se presenta en las figuras 41-43.

Coste energético a velocidad alta


140
120
100
80
%
60
40
20
0
Sin Con Sin Con Sin Con Sin Con Sin Con
Carga Carga Carga Carga Carga Carga Carga Carga Carga Carga
Cintura Hombro Codo Inclinación Muñeca giro
muñeca

SS ADRC SMC

Figura 41. Comparación del coste energético de los controladores a velocidad alta.

Coste energético a velocidad media


140
120
100
80
%
60
40
20
0
Sin Con Sin Con Sin Con Sin Con Sin Con
Carga Carga Carga Carga Carga Carga Carga Carga Carga Carga
Cintura Hombro Codo Inclinación Muñeca giro
muñeca

SS ADRC SMC

Figura 42. Comparación del coste energético de los controladores a velocidad media.
78

Coste energético a velocidad baja


140
120
100
80
%
60
40
20
0
Sin Con Sin Con Sin Con Sin Con Sin Con
Carga Carga Carga Carga Carga Carga Carga Carga Carga Carga
Cintura Hombro Codo Inclinación Muñeca giro
muñeca

SS ADRC SMC

Figura 43. Comparación del coste energético de los controladores a velocidad baja.
79

Resultados experimentales con la trayectoria 2

A continuación, se presenta la evolución en el tiempo del error articular en cada eslabón y

el voltaje aplicado usando cada estrategia de control, con la segunda trayectoria y a tres diferentes

velocidades.

Figura 44. Error de posición articular en cada eslabón a velocidad alta.


80

Figura 45. Señal de control aplicada a cada eslabón a velocidad alta.


81

Figura 46. Error de posición articular en cada eslabón a velocidad media.


82

Figura 47. Señal de control aplicada a cada eslabón a velocidad media.


83

Figura 48. Error de posición articular en cada eslabón a velocidad baja.


84

Figura 49. Señal de control aplicada a cada eslabón a velocidad baja.


85

En las gráficas expuestas anteriormente SS hace referencia al control por

retroalimentación de estados con acción integral y los errores son presentados en radianes. Con el

fin de cuantificar el comportamiento de los lazos de control se determina el índice de desempeño

de cada controlador bajo cada configuración a partir del error obtenido, en base al criterio IAE o

integral del error absoluto. Adicionalmente se repiten los experimentos agregando una carga de 1

kg al manipulador y nuevamente se calculan los índices de desempeño en cada caso.

Cintura Hombro Codo Inc linación muñeca Muñeca giro


Cs Vel.
Sin Carga Con Carga Sin Carga Con Carga Sin Carga Con Carga Sin Carga Con Carga Sin Carga Con Carga
Rápida 11705 11770 10818 10817 20102 20287 21497 21521 33452 33578
Media 11756 11746 10886 10881 20728 20690 21857 21880 66764 66991
SS

Baja 11778 11766 10917 10901 20837 21025 21955 21953 1,33E+09 1,34E+09
Rápida 585,03 628,62 694,23 805,07 2794,7 2744,4 7254,3 7393,4 4300,4 4742,1
ADRC

Media 491,41 532,6 689,81 830,89 2357,8 2169 5573,2 5648,9 7759,4 8226,2
Baja 782,78 793,9 1279,1 1345,4 3169,3 2687,8 6046,6 6272,4 14710 15403
Rápida 69,805 65,989 96,404 159,94 304,21 361,81 626,71 634,63 963,71 959,2
SMC

Media 68,522 70,730 97,987 156,05 378,49 522,08 500,91 516,1 1359,9 1368,7
Baja 128,35 120,48 157,07 221,92 992,72 632,99 512,23 516,77 2163 2196,5
Figura 50. Índices de desempeño con la segunda trayectoria.

Las figuras 44, 46 y 48 muestran el desempeño del sistema obtenido con cada controlador

y se evidencia que le error en cada caso es bajo. No obstante, comparando las técnicas de control

propuestas en este documento con la retroalimentación de estados convencional, se ve una clara

diferencia en cuanto al error articular. Y aunque tanto en ADRC como en SMC el error es muy

bajo, esta segunda técnica presenta mejor desempeño. Lo cual se reitera en la figura 50 donde se

resumen los índices de desempeño, y en la cual el SMC presenta los valores más bajos aun con

carga, es decir, que el controlador SMC minimiza la función de costo y por tanto es la técnica con

mejor desempeño.

Con el fin de visualizar de una manera más amigable esta última afirmación se

representan los valores listados en la figura 50 de forma porcentual y para ello se parte de
86

considerar en cada caso el índice obtenido con el controlador convencional SS como el 100 % y

se calcula la equivalencia respecto a esta afirmación para los demás controladores.

Figura 51. Comparación del desempeño de los controladores a velocidad alta.

Figura 52. Comparación del desempeño de los controladores a velocidad media.


87

Figura 53. Comparación del desempeño de los controladores a velocidad baja.

Las figuras 51-53 ilustran de manera más clara como los valores del índice de

desempeño para el control SMC son menores con respeto a los demás controladores y por ende

presenta mejor desempeño aún bajo la presencia de cargas en el sistema. Por otro lado, se decide

analizar el coste energético de cada controlador, para ello a partir de las señales de control

presentadas en las figuras 45, 47 y 49 se calcula la integral de ciclo útil al cuadrado, cuyos

resultados se presentan en la figura 54.

Cintura Hombro Codo Inc linación muñeca Muñeca giro


Cs Vel.
Sin Carga Con Carga Sin Carga Con Carga Sin Carga Con Carga Sin Carga Con Carga Sin Carga Con Carga
Rápida 1,87E+06 1,82E+06 4,69E+06 5,40E+06 3,77E+06 4,16E+06 6,57E+06 6,10E+06 5,44E+06 5,72E+06
Media 2,79E+06 2,75E+06 7,76E+06 1,02E+07 5,33E+06 6,71E+06 1,03E+07 9,79E+06 1,06E+07 1,09E+07
SS

Baja 4,70E+06 5,08E+06 1,41E+07 1,96E+07 9,06E+06 1,29E+07 1,84E+07 1,73E+07 2,12E+07 2,11E+07
Rápida 1,76E+06 1,88E+06 4,75E+06 5,49E+06 3,62E+06 4,04E+06 6,02E+06 6,32E+06 5,54E+06 6,18E+06
ADRC

Media 2,88E+06 2,84E+06 8,33E+06 1,04E+07 5,38E+06 6,41E+06 1,01E+07 1,03E+07 1,07E+07 1,13E+07
Baja 4,57E+06 4,93E+06 1,48E+07 1,97E+07 9,08E+06 1,25E+07 1,76E+07 1,80E+07 2,11E+07 2,21E+07
Rápida 1,81E+06 1,76E+06 4,51E+06 5,76E+06 3,97E+06 4,44E+06 5,78E+06 6,03E+06 5,65E+06 5,81E+06
SMC

Media 2,74E+06 2,85E+06 7,70E+06 1,04E+07 6,30E+06 7,54E+06 9,05E+06 9,90E+06 1,04E+07 1,07E+07
Baja 4,50E+06 4,79E+06 1,42E+07 1,95E+07 1,10E+07 1,36E+07 1,52E+07 1,80E+07 2,02E+07 2,06E+07
Figura 54. Coste energético para la trayectoria 2.
88

Nuevamente se consideran los valores obtenidos para el controlador convencional SS

como el 100 % y se calcula la equivalencia para los controladores restantes. Finalmente, la

comparación del coste energético se presenta en las figuras 55-57.

Figura 55. Comparación del coste energético de los controladores a velocidad alta.

Figura 56. Comparación del coste energético de los controladores a velocidad media.
89

Figura 57. Comparación del coste energético de los controladores a velocidad baja.
90

CONCLUSIONES

En el presente trabajo se obtuvo el modelo no lineal para el robot manipulador Mitsubishi

Movemaster RV-M1, a partir de los métodos propuestos para el cálculo cinemático y dinámico

del mismo. Se demuestra que con base a convenios como el denominado Denavit-Hartenberg se

puede representar cualquier robot de tipo serial tanto en el espacio articular como en el de la

tarea. Además, con métodos como Euler-Lagrange y a partir del desarrollo cinemático se puede

obtener un modelo no lineal aceptable para este tipo de robots, ya que se obtuvo un modelo

bastante cercano con este tipo de metodologías, algo importante en la implementación de

controladores feedforward, de torque pre-calculados, feedback linearization, entre otros. Estos

últimos precisan de un cálculo en línea – con base al modelo dinámico obtenido – de los

componentes no lineales del sistema a fin de rechazarlos, lo cual impacta en el coste

computacional de los controladores, además que su desempeño está ligado de una buena

aproximación al modelo no lineal.

No obstante, se demuestra que con la implementación de técnicas avanzadas de control

como ADRC y SMC, las cuales a partir de un modelo más simple – con un coste computacional

bastante menor – y con base a la estimación en línea de los parámetros no modelados y las

perturbaciones, presentan un buen desempeño que se traduce a un seguimiento adecuado con un

error muy bajo de la trayectoria deseada. Lo cual demuestra la solidez de dichas estrategias de

control que obligan al sistema a mantener el rendimiento ante la presencia de incertidumbres,

fallas y perturbaciones. Esto impacta en gran medida en las aplicaciones de este tipo de

manipuladores, que como ya se mencionó a nivel industrial presenta gran acogida y cada

aplicación tiene ciertas tolerancias en cuanto a los errores de seguimiento, por lo cual con
91

desempeños como los expuestos en este documento se amplía la gama de aplicaciones para este

tipo de manipulador.

Por otro lado, ya que en este trabajo se plantean controladores no lineales las técnicas

comunes para el análisis de robustez no resultan adecuadas en este caso. Por lo cual, con el fin de

analizar la robustez de los controladores propuestos se realizaron experimentos sobre el sistema

libre y con carga – cercana a los límites del manipulador –, a fin de constatar si el desempeño del

controlador varía bajo la existencia cargas en el manipulador. Así, de una manera simple

podemos evaluar la robustez de los esquemas propuestos.


92

REFERENCIAS

Acuña, G., & Pinto, E. (2006). Development of a Matlab(R) Toolbox for the Design of Grey-Box
Neural Models. International Journal of Computers Communications & Control, 1(2), 7.
https://doi.org/10.15837/ijccc.2006.2.2280
Ahi, B., & Haeri, M. (2018). Linear Active Disturbance Rejection Control from the Practical
Aspects. IEEE/ASME Transactions on Mechatronics, 23(6), 2909–2919.
https://doi.org/10.1109/TMECH.2018.2871880
Al., H. W. et. (2014). Research on the Relationship between Classic Denavit-Hartenberg and
Modified Denavit-Hartenberg.
Araujo, F., Ayala, L., & Bermeo, C. (n.d.). Robots Antropomórficos, 4–8.
Barraza Cantillo, A., Rúa Charris, J., Sosa Rodríguez, J., Díaz González, J., Yime Rodríguez, E.,
& Roldán Mckinley, J. (2017). Modelado dinámico del manipulador serial Mitsubishi
Movemaster RV-M1 usando SolidWorks. Revista UIS Ingenierías, 15(2), 49–62.
https://doi.org/10.18273/revuin.v15n2-2016004
Calefiore, G., Indri, M., & Bona, B. (2001). Robot dynamic calibration: Optimal excitation
trajectories and experimental parameter estimation. Journal of Robotic Systems, 18(2), 55–
68. https://doi.org/10.1002/1097-4563(200102)18:2<55::AID-ROB1005>3.0.CO;2-O
Castillo, P. M. S. (2008). Control de un brazo mecanico mediate tecnicas de computación suave.
Instituto Politécnico Nacional.
Chávez-Olivares, C. A., Reyes-Cortés, F., González-Galván, E. J., Mendoza-Gutiérrez, M. O., &
Bonilla-Gutiérrez, I. (2012). Experimental evaluation of parameter identification schemes
on a direct-drive robot. Proceedings of the Institution of Mechanical Engineers. Part I:
Journal of Systems and Control Engineering, 226(10), 1419–1431.
https://doi.org/10.1177/0959651812456795
Cortés-Romero, J., Ramos, G. A., & Coral-Enriquez, H. (2014). Generalized proportional integral
control for periodic signals under active disturbance rejection approach. ISA Transactions,
53(6), 1901–1909. https://doi.org/10.1016/j.isatra.2014.07.001
Cortés-Romero, J., Rojas-Cubides, H., Coral-Enriquez, H., Sira-Ramírez, H., & Luviano-Juárez,
A. (2013). Active Disturbance Rejection Approach for Robust Fault-Tolerant Control via
Observer Assisted Sliding Mode Control. Mathematical Problems in Engineering, 2013, 1–
12. https://doi.org/10.1155/2013/609523
Felipe, A., Díaz, G., Alejandro, D., Reyes, J., De, U., & Buenaventura, S. (2013). DISEÑO E
IMPLEMENTACIÓN DE TARJETAS DE POTENCIA PARA EL CONTROL DE
MOVIMIENTO DEL ROBOT MOVEMASTER RV-M1 DE MITSUBISHI. BOGOTÁ.
Retrieved from http://biblioteca.usbbog.edu.co:8080/Biblioteca/BDigital/82081.pdf
FIME. (2002). Manipulador robot mitsubishi rv-m1. ESPAÑA. Retrieved from
https://www.doyoubuzz.com/var/f/1Z/_U/1Z_Uax0OM-
FbvwXJ6kPgWh8Qu7BtKRiL5r3lqjeINmYn4pTz9S.pdf
Gómez Campos, D. A., & Bustos Quintero, Á. E. (2018). DESARROLLO MATEMÁTICO Y
APLICACIÓN DE LA CINEMÁTICA INVERSA POR MEDIO DE UN SOFTWARE DE
CÁLCULO Y PROGRAMACIÓN, PARA EL ROBOT MITSUBISHI RV-M1.
UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS.
https://doi.org/10.1590/s1809-98232013000400007
Headquarters, N. I. C. (1999). Daq 6601/6602.
Headquarters, N. I. C. (2007). DAQ E Series - Manual.
Jaramillos, A. (2010). Cinemática de manipuladores. Cinematica de Manipuladores, 68.
93

Jimenez, M. B., Vega, V. P., & Sanchez, F. J. R. (2010). IL Co-simulation of Cooperative Robots
based on ADAMS, MATLAB and a haptic interface.
Kumar, R., Kalra, P., & Prakash, N. R. (2011). A virtual RV-M1 robot system. Robotics and
Computer-Integrated Manufacturing, 27(6), 994–1000.
https://doi.org/10.1016/j.rcim.2011.05.003
Kung, Y. S., & Shu, G. S. (2005). Development of a FPGA-based motion control IC for robot
arm. Proceedings of the IEEE International Conference on Industrial Technology, 2005(1),
1397–1402. https://doi.org/10.1109/ICIT.2005.1600854
Kung, Y. S., Tseng, K. H., Chen, C. S., Sze, H. Z., & Wang, A. P. (2006). FPGA-implementation
of inverse kinematics and servo controller for robot manipulator. 2006 IEEE International
Conference on Robotics and Biomimetics, ROBIO 2006, (vi), 1163–1168.
https://doi.org/10.1109/ROBIO.2006.340093
Martínez Rosas, J. C. (2002). Identificación parametrica de un robot industrial con diferentes
esquemas de control adaptable. Universidad Veracruzana.
Mckinley, J. R., Rodríguez, J. S., Rodríguez, E. Y., & González, J. D. (2012). Cinemática inversa
matricial del manipulador 5R Mitsubishi Movemaster RV-M1. Épsilon, 1(19), 33–56.
Retrieved from https://revistas.lasalle.edu.co/index.php/ep/article/view/2244
Mitsubishi Electric Corporation. (n.d.). Manual RV-M1.
Orozco Manriquez, E. A. (2009). Modelo, identificacion y control de un robot manipulado de 2
gdl, 107.
Pérez Díaz, E. A., & Manrrique Hernandez, J. M. (2007). CONTROL SERVOVISUAL PARA
UNA ESTRUCTURA SERIAL ROBÓTICA TIPO 5R. UNIVERSIDAD DE LA SALLE.
Rojas-Cubides, H., Cortés-Romero, J., Coral-Enriquez, H., & Rojas-Cubides, H. (2019). Sliding
mode control assisted by GPI observers for tracking tasks of a nonlinear multivariable
Twin-Rotor aerodynamical system. Control Engineering Practice, 88(172), 1–15.
https://doi.org/10.1016/j.conengprac.2019.04.002
Świder, J., Foit, K., Wszołek, G., & Mastrowski, D. (2007). The system for simulation and off-
line , remote programming of the Mitsubishi Movemaster RV-M1 robot, 25(1).
Tsai, L. (1999). Robot analysis: the mechanics of serial and parallel manipulators. The Mechanics
of Serial and Parallel Manipulators. Retrieved from
http://scholar.google.com/scholar?hl=en&btnG=Search&q=intitle:Robot+Analysis#2%5Cn
http://books.google.com/books?hl=en&lr=&id=PK_N9aFZ3ccC&oi=fnd&pg=PR11&dq=R
obot+Analysis:+The+Mechanics+of+Serial+and+Parallel+Manipulators&ots=acRJiEF57G
&sig=MXyiO77O7H09ox
94

Anexo I. Cálculo del modelo dinámico general

Para determinar el modelo dinámico basado en el método de Euler-Lagrange se

requiere calcular tanto la energía cinética como la potencial, cabe destacar que la energía

cinética se debe al movimiento y la energía potencial se debe a la configuración o la

posición del robot. La idea es calcular el Lagragiano L, que resulta de la diferencia entre

la energía potencial y cinética.

𝟏
𝑳 = 𝒒̇ 𝑻 𝑴𝒒̇ + ∑𝒏𝒊=𝟏 𝒎𝒊 𝒈𝑻 𝑷𝒄𝒊 (66)
𝟐

Donde 𝑀 es la matriz de masa del manipulador, 𝑞̇ es el vector de razón de cambio

de las coordenadas, n es el número de coordenadas generalizadas, 𝑚𝑖 es la masa del

elemento 𝑖, 𝑔 es el vector gravedad y 𝑃𝐶𝑖 es el vector del centro de masa del elemento 𝑖.

𝟎
𝒈=� 𝟎 � (67)
−𝟗. 𝟖𝟏

𝜽̇
⎡ 𝟏⎤
⎢𝜽𝟐̇ ⎥
𝒒̇ = ⎢𝜽𝟑̇ ⎥ (68)
⎢ ̇ ⎥
⎢𝜽𝟒 ⎥
⎣𝜽𝟓̇ ⎦

Para facilitar la obtención de las derivadas del Lagrangiano, se expande el término

de la energía cinética (1⁄2 𝑞̇ 𝑇 𝑀𝑞̇) como una suma escalar.

𝟏
𝑳 = � ∑𝒏𝒊=𝟏 ∑𝒏𝒋=𝟏 𝑴𝒊𝒋 𝒒̇ 𝒊 𝒒̇ 𝒋 � + ∑𝒏𝒊=𝟏 𝒎𝒊 𝒈𝑻 𝑷𝒄𝒊 (69)
𝟐

Derivando y reemplazando en la formulación Euler-Lagrange termino a término

dada por:
95

𝒅 𝝏𝑳 𝝏𝑳
� �− = 𝝉𝒊 (70)
𝒅𝒕 𝝏𝒒̇ 𝒊 𝝏𝒒𝒊

Se obtiene:

𝑻
∑𝒏𝒋=𝟏 𝒎𝒊𝒋 (𝒒)𝒒̈ 𝒋 + ∑𝒏𝒋=𝟏 ∑𝒏𝒌 =𝟏 𝒄𝒊𝒋𝒌 𝒒𝒌̇ 𝒒̇𝒋 − ∑𝒏𝒌=𝟏�𝑱𝒌𝒗𝒊 � 𝒎𝒌 𝒈𝟎 = 𝝉𝒊 (71)

Donde:

𝟏 𝝏𝒎𝒊𝒋 (𝒒) 𝝏𝒎𝒊𝒌 (𝒒) 𝝏𝒎𝒋𝒌 (𝒒)


𝒄𝒊𝒋𝒌 = � + − � (72)
𝟐 𝝏𝒒𝒌 𝝏𝒒𝒋 𝝏𝒒𝒊

𝒄𝒊𝒋𝒌 = 𝒄𝒊𝒌𝒋 (73)

Haciendo una breve interpretación de los factores involucrados en la ecuación se

puede decir que, 𝑚𝑖𝑖 corresponde al momento de inercia percibido en la articulación 𝑖

cuando las otras articulaciones no se mueven, es decir la diagonal de la matriz 𝑀(𝑞). 𝑚𝑖𝑗

corresponde al efecto de aceleración de articulación 𝑖 en la articulación 𝑗 es decir el

acoplamiento. 𝐶𝑖𝑗𝑗 𝑞̇ 𝑗2 corresponde a la fuerza centrífuga en articulación 𝑖 debido a la

velocidad de la articulación 𝑗. 𝑐𝑖𝑗𝑘 𝑞̇ 𝑗 𝑞̇ 𝑘 corresponde al efecto de Coriolis en articulación

𝑇
𝑖 debido a la velocidad de articulación 𝑗 y 𝑘. − ∑𝑛𝑘=1�𝐽𝑣𝑘𝑖 � 𝑚𝑘 𝑔0 corresponde al momento

en la articulación 𝑖 debido a la gravedad.

Antes de continuar con el modelo dinámico del robot, se hace necesario

profundizar en la energía cinética de un robot 𝑇, dada por la siguiente ecuación.

𝟏 𝟏
𝑻𝒊 = 𝒎𝒊 𝑽𝑻𝒄𝒊 𝑽𝒄𝒊 + 𝝎𝑻𝒊 𝑰𝒊 𝝎𝒊 (74)
𝟐 𝟐
96

Donde 𝑚𝑖 es la masa del eslabón 𝑖, 𝑉𝑐𝑖 es la velocidad del centro de masa en el

eslabón 𝑖, 𝜔𝑖 es la velocidad angular del eslabón 𝑖, e 𝐼𝑖 corresponde al tensor de inercia

del eslabón 𝑖 respecto a la base.

Debido a que el valor del tensor de inercia 𝐼𝑖 varia con el movimiento del eslabón

se hace necesario representar el tensor con el sistema de referencia del eslabón 𝐼𝑖̅ respecto

a la base, y para lograrlo se hace uso de las matrices de rotación estudiadas en la

cinemática directa, obteniendo:

𝟏 𝟏
𝑻𝒊 = 𝒎𝒊 𝑽𝑻𝒄𝒊 𝑽𝒄𝒊 + 𝝎𝑻𝒊 𝑹𝒊 𝑰�𝒊 𝑹𝑻𝒊 𝝎𝒊 (75)
𝟐 𝟐

Como se puede notar la ecuación anterior de energía consta de dos componentes

uno debido al movimiento traslacional y otro debido al movimiento rotacional, si

representamos dichos componentes respecto a las velocidades articulares gracias a la

relación existente con los jacobianos, tenemos que:

𝑽𝒄𝒊 = 𝑱𝒊𝒗 𝒒̇ (76)

𝝎𝒊 = 𝑱𝒊𝝎 𝒒̇ (77)

𝟏 𝑻 𝟏 𝑻
𝑻𝒊 = 𝒎𝒊 (𝒒̇ 𝑻 𝑱𝒊𝒗 )(𝑱𝒊𝒗 𝒒̇ ) + (𝒒̇ 𝑻 𝑱𝒊𝝎 )𝑹𝒊 𝑰�𝒊 𝑹𝑻𝒊 (𝑱𝒊𝝎 𝒒̇ ) (78)
𝟐 𝟐

Finalmente, la energía cinética total corresponde a la suma de la energía cinética

de cada eslabón.

𝟏 𝑻 𝑻
𝑻𝒊 = 𝒒̇ 𝑻 �∑𝒏𝒊=𝟏 𝒎𝒊 𝑱𝒊𝒗 𝑱𝒊𝒗 𝒒̇ + 𝑱𝒊𝝎 𝑹𝒊 𝑰�𝒊 𝑹𝑻𝒊 𝑱𝒊𝝎 � 𝒒̇ (79)
𝟐
97

De esta manera se define la matriz de inercia o masa, la cual es simétrica y

definida positiva.

𝑻 𝑻
𝑴(𝒒) = ∑𝒏𝒊=𝟏 𝒎𝒊 𝑱𝒊𝒗 𝑱𝒊𝒗 𝒒̇ + 𝑱𝒊𝝎 𝑹𝒊 �𝑰𝒊 𝑹𝑻𝒊 𝑱𝒊𝝎 (80)

Por otro lado, para el cálculo del jacobiano 𝐽6𝑥𝑛 se realiza usualmente derivando

la posición, donde las tres primeras filas corresponden al jacobiano de velocidad lineal y

las restantes al jacobiano de velocidad angular.

𝝏𝑷
𝑱𝒊𝒗 𝒄𝒊
� 𝒊 𝒌 � = � 𝝏𝒒𝒌 � (81)
𝑱𝝎𝒌 𝒁𝒌−𝟏

Por otro lado, se hace necesario estudiar el tensor de inercia, el cual corresponde a

la masa para la rotación, que depende de la distribución de masa y del eje de rotación que

se escoja. El tensor de inercia nos da una idea de cómo está distribuida la masa en un

cuerpo rígido.

𝑰𝒙𝒙𝒊 𝑰𝒙𝒚𝒊 𝑰𝒙𝒛𝒊


𝑰 = �𝑰𝒚𝒙𝒊 𝑰𝒚𝒚
𝒊
𝑰𝒚𝒛𝒊 � (82)
𝑰𝒛𝒙 𝒊 𝑰𝒛𝒚𝒊 𝑰𝒛𝒛𝒊

Entre las propiedades del tensor de inercia tenemos que es siempre simétrico, por

tanto 𝐼𝑥𝑦𝑖 = 𝐼𝑦𝑥𝑖 , 𝐼𝑥𝑧𝑖 = 𝐼𝑧𝑥𝑖 , 𝐼𝑧𝑦𝑖 = 𝐼𝑦𝑧𝑖 , y los momentos principales de inercia se

encuentran en la diagonal.

Una vez definidos los conceptos anteriores podemos iniciar el cálculo de la matriz

𝑀(𝑞), 𝐶(𝑞, 𝑞̇ ) y 𝐺(𝑞) en base a lo discutido anteriormente. Así obtenemos lo siguiente:


98

𝒎𝟏𝟏 𝒎𝟏𝟐 𝒎𝟏𝟑 𝒎𝟏𝟒 𝒎𝟏𝟓


⎡𝒎𝟐𝟏 𝒎𝟐𝟐 𝒎𝟐𝟑 𝒎𝟐𝟒 𝒎𝟐𝟓 ⎤
⎢ ⎥
𝑴(𝒒) = ⎢𝒎𝟑𝟏 𝒎𝟑𝟐 𝒎𝟑𝟑 𝒎𝟑𝟒 𝒎𝟑𝟓 ⎥ (83)
⎢𝒎𝟒𝟏 𝒎𝟒𝟐 𝒎𝟒𝟑 𝒎𝟒𝟒 𝒎𝟒𝟓 ⎥
⎣𝒎𝟓𝟏 𝒎𝟓𝟐 𝒎𝟓𝟑 𝒎𝟓𝟒 𝒎𝟓𝟓 ⎦

𝑪𝟏𝟏 𝑪𝟏𝟐 𝑪𝟏𝟑 𝑪𝟏𝟒 𝑪𝟏𝟓


⎡𝑪 𝑪 𝑪 𝑪 𝑪 ⎤
⎢ 𝟐𝟏 𝟐𝟐 𝟐𝟑 𝟐𝟒 𝟐𝟓 ⎥
𝑪(𝒒, 𝒒̇ ) = ⎢𝑪𝟑𝟏 𝑪𝟑𝟐 𝑪𝟑𝟑 𝑪𝟑𝟒 𝑪𝟑𝟓 ⎥ (84)
⎢𝑪𝟒𝟏 𝑪𝟒𝟐 𝑪𝟒𝟑 𝑪𝟒𝟒 𝑪𝟒𝟓 ⎥
⎣𝑪𝟓𝟏 𝑪𝟓𝟐 𝑪𝟓𝟑 𝑪𝟓𝟒 𝑪𝟓𝟓 ⎦

𝒈𝟏
⎡𝒈𝟐⎤
⎢ ⎥
𝑮(𝒒) = ⎢𝒈𝟑⎥ ∗ −𝟗. 𝟖𝟏 (85)
⎢𝒈𝟒⎥
⎣𝒈𝟓⎦

Lo anterior describe el procedimiento realizado para el cálculo de las matrices que

describen el comportamiento del robot, para profundizar en los resultados donde se

encuentran cada uno de los componentes de dichas matrices ingrese al siguiente

enlace https://drive.google.com/open?id=1u1eFxBjpM2IJ3iKp8Tasl7S7UeheMBf8.
99

Anexo II. Observador de derivadas

Considere una señal 𝑟(𝑡) la cual se pretende derivar 𝑛 veces. Para lograrlo se hace

uso de un observador cuya única entrada es 𝑟(𝑡) y se plantea una ecuación como modelo

del sistema.

𝑑 𝑛+1 𝑟(𝑡)
=0 (86)
𝑑𝑡 𝑛+1

A partir de la ecuación anterior se determina la representación en espacio de

estados y se diseña un observador Luenberger convencional.

𝒙𝟏 (𝒕) = 𝒓(𝒕) 𝒙𝟏̇ (𝒕) = 𝒙𝟐 (𝒕)

𝒅𝒓(𝒕) 𝒙𝟐̇ (𝒕) = 𝒙𝟑 (𝒕)


𝒙𝟐 (𝒕) =
𝒅𝒕
⋮ ⋮
𝒏
𝒅 𝒓(𝒕) 𝒙̇ 𝒏 (𝒕) = 𝟎
𝒙𝒏 (𝒕) =
𝒅𝒕𝒏
(87)
𝒚(𝒕) = 𝒙𝟏 (𝒕)

�̇(𝒕) = 𝑨𝒙
𝒙 �(𝒕) + 𝑳(𝒚(𝒕) − 𝒚
�(𝒕))

�(𝒕) = 𝑪𝒙
𝒚 �(𝒕)

𝟎 𝟏 𝟎 𝟎 ⎡𝒙𝟏 (𝒕)⎤ ⎡
𝒙𝟏 (𝒕)

⎡𝟎 𝟎 𝟏 ⋯ 𝟎⎤ ⎢𝒙𝟐 (𝒕)⎥ 𝒙 (𝒕)
⎢ ⎥ ⎢ 𝟐 ⎥
𝑨 = ⎢𝟎 𝟎 𝟎 𝟎⎥ ⎢𝒙𝟑 (𝒕)⎥ 𝑪 = [𝟏 𝟎 𝟎 ⋯ 𝟎] ⎢𝒙𝟑 (𝒕)⎥
⎢ ⋮ ⋱ ⋮⎥⎢ ⋮ ⎥ ⎢ ⋮ ⎥
⎣𝟎 𝟎 𝟎 ⋯ 𝟎⎦ ⎣𝒙𝒏 (𝒕)⎦ ⎣𝒙𝒏 (𝒕)⎦

(88)

Como se evidencia en las ecuaciones obtenidas en 87, ya que no existen entradas

que afecten el modelo planteado su representación en espacio de estados está dada

únicamente por la señal de entrada 𝑟(𝑡) y sus derivadas en el tiempo, de forma que el

observador puede estimar dichas derivadas.


100

Finalmente, el diseño del observador se resume a determinar los valores del

vector 𝐿 = [𝑙1 𝑙2 … 𝑙𝑛 ]𝑇 que ubiquen los valores característicos de la matriz (𝐴 − 𝐿𝐶) –

los cuales rigen el comportamiento dinámico del vector de error – según una dinámica

deseada. Dicho problema se aborda nuevamente por ubicación de polos.

|𝒔𝑰 − (𝑨 − 𝑳𝑪)| = (𝒔 − 𝒑𝟏 )(𝒔 − 𝒑𝟐 ) … (𝒔 − 𝒑𝒏 ) (89)

También podría gustarte