RAE 1. Tipo de documento: Trabajo de grado para...
Transcript of RAE 1. Tipo de documento: Trabajo de grado para...
1
RAE
1. Tipo de documento: Trabajo de grado para optar por el título de INGENIERO ELECTRÓNICO.
2. Título: DISEÑO E IMPLEMENTACIÓN DE ROBOTS COOPERATIVOS MONTACARGA.
3. Autor: Luis Fernando Montoya Clavijo, Ronald Hernán Estupiñan Mesa, Brayan
Leonardo Torres Orjuela
4. Lugar: Bogotá D.C
5. Fecha: Mayo de 2014
6. Palabras claves: Radio frecuencia, Red inalámbrica, Xbee, Microcontrolador.
7. Descripción del trabajo: El objetivo principal de este proyecto consiste en el
desarrollo de tres robots tipo montacargas, los cuales se comunican por una red inalámbrica que transmite la señal por medio del dispositivo Xbee por radio frecuencia. Igualmente se presentaran los diseños utilizados.
8. Línea de investigación: Líneas de investigación de la USB: Análisis y
procesamiento de señales. Sublínea de la facultad: Control, Microelectrónica y robótica.
9. Metodología: Empírico Analítico. El interés en este proyecto es netamente técnico
orientado a la interpretación y transformación del mundo, teniendo en cuenta que la prioridad indispensable para los requerimientos de este enfoque es abstraer las necesidades de nuestra realidad y desarrollar cambios que permitan la optimización de procesos (eficiencia) mediante la observación detallada, auto-correctiva y progresiva, en procesos de transporte de cargas con sistemas de cooperación, permitiendo la introducción de nuevos conocimientos y procedimientos que aseguren un mejor acercamiento a la realidad.
10. Conclusiones Los tres robots cooperativos fueron capaces de esquivar los
obstáculos propuestos en la pista, y llevaron la carga desde el punto de inicio hasta el final sin generar ningún daño a la carga, usando las estrategias para controlar el movimiento guiándose por los sensores infrarrojos puestos en la carrocería de cada
robot, cumpliendo con las tareas propuestas para cada robot.
El micro controlador escogido cumplió con las expectativas frente al funcionamiento de su unidad central de procesamiento ya que ejecuto todas las secuencias y ordenes programadas sin genera retrasos ni perdidas de información. El módulo Xbee S2 el cual fue usado en el proyecto cumplió con las metas establecidas ya que su rango de comunicación por radiofrecuencia un margen de error mínimo, gracias a sus diferentes topologías que se pueden configurar para que los tres robots se comunicaran entre sí, para el caso del proyecto de robots cooperativos la topología en estrella con dos router y un coordinador.
2
DISEÑO E IMPLEMENTACIÓN DE ROBOTS COOPERATIVOS
MONTACARGA
LUIS FERNANDO MONTOYA CLAVIJO
RONALD HERNAN ESTUPIÑAN MESA
BRAYAN LEONARDO TORRES ORJUELA
UNIVERSIDAD DE SAN BUENAVENTURA, SEDE BOGOTÁ
FACULTAD DE INGENIERÍA
PROGRAMA DE INGENIERÍA ELECTRÓNICA
BOGOTÁ D.C
2014
3
DISEÑO E IMPLEMENTACIÓN DE ROBOTS COOPERATIVOS
MONTACARGA
LUIS FERNANDO MONTOYA CLAVIJO
RONALD HERNAN ESTUPIÑAN MESA
BRAYAN LEONARDO TORRES ORJUELA
Proyecto de grado entregado como requisito para optar por el título de Ingeniero
Electrónico
Ing. Luis Carlos Luis García
Director
UNIVERSIDAD DE SAN BUENAVENTURA, SEDE BOGOTÁ
FACULTAD DE INGENIERÍA
PROGRAMA DE INGENIERÍA ELECTRÓNICA
BOGOTÁ D.C
2014
4
Nota de aceptación
______________________________
______________________________
______________________________
______________________________
______________________________
______________________________
______________________________
______________________________
______________________________
______________________________
______________________________
Director
______________________________
Jurado
______________________________
Jurado
Bogotá D.C. Mayo de 2014
5
COMENTARIOS
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
6
TABLA DE CONTENIDO
INTRODUCCIÓN ........................................................................................................... 10
1. PLANTEAMIENTO DEL PROBLEMA .................................................................. 11
1.1 ANTECEDENTES (ESTADO DEL ARTE) .......................................................... 11
1.1.1 Nivel Internacional .......................................................................................... 11
1.1.2 Nivel Nacional ................................................................................................. 17
1.2 DESCRIPCIÓN Y FORMULACIÓN DEL PROBLEMA ...................................... 21
1.3 JUSTIFICACIÓN.................................................................................................. 22
1.4 OBJETIVOS DE LA INVESTIGACIÓN ............................................................... 23
1.4.1 Objetivo General ............................................................................................. 23
1.4.2 Objetivos Específicos ...................................................................................... 23
1.5 ALCANCES Y LIMITACIONES DEL PROYECTO ............................................. 23
2. MARCO DE REFERENCIA .................................................................................... 24
2.1 MARCO TEORICO Y CONCEPTUAL ............................................................ 24
2.1.1 Robótica .......................................................................................................... 25
2.1.2 Sensores .......................................................................................................... 25
2.1.3 Control ........................................................................................................... 27
2.1.4 Comunicación.................................................................................................. 28
2.1.5 Controlador montacargas ................................................................................ 29
2.1.6 Elementos actuadores ..................................................................................... 30
2.1.7 Comportamiento Cooperativo .......................................................................... 31
2.2 MARCO LEGAL O NORMATIVO ....................................................................... 32
2.2.1 Normatividad Comunicaciones Xbee s2........................................................... 32
3. METODOLOGÍA .................................................................................................... 33
3.1 LÍNEA DE INVESTIGACIÓN DE USB / SUB-LÍNEA DE FACULTAD / CAMPO
TEMÁTICO DEL PROGRAMA ................................................................................. 33
4. DESARROLLO INGENIERIL ................................................................................ 34
4.1 Etapa de comunicación ........................................................................................... 35
4.1.1 Aplicaciones .................................................................................................... 36
4.1.2 Circuito para Xbee ........................................................................................... 36
4.1.3 Modos de operación del Xbee .......................................................................... 37
4.1.4 Tipos de Antenas para Xbee ............................................................................ 38
4.1.5 Topologías de red para Xbee............................................................................ 40
7
4.1.6 Configuración de los módulos Xbee S2 .......................................................... 41
4.1.7 Configuración de comunicación Micro controlador-Xbee ................................ 46
4.1.8 Protocolo de Comunicación ............................................................................. 50
4.2 Etapa de control ..................................................................................................... 55
4.2.1 Microcontrolador ............................................................................................. 55
4.2.2 Actuadores ...................................................................................................... 57
4.2.3 Sensores .......................................................................................................... 59
4.3 Diseño de Tarjetas Impresas ................................................................................... 62
4.3.1 Soldadura de componentes en la Tarjetas Impresas .......................................... 65
4.4 Etapa Mecánica ...................................................................................................... 67
4.4.1 Chasis del robot ............................................................................................... 67
4.4.2 Estructura mecánica ......................................................................................... 67
4.4.3 Diseño de carrocería de los robots.................................................................... 68
4.4.4 Sistema Montacargas ....................................................................................... 69
4.4.5 Diseño de pista, carga y obstáculos .................................................................. 71
5. PRESENTACIÓN Y ANÁLISIS DE RESULTADOS ............................................. 72
6. CONCLUSIONES ................................................................................................... 76
7. RECOMENDACIONES ............................................ ¡Error! Marcador no definido.
8. BIBLIOGRAFIA ..................................................................................................... 77
8
LISTA DE FIGURAS
Figura 1. Esquema de intercambio de información en la liga de futbol robótico ________ 12
Figura 2. Robots limpia basura Io, Ganymede y Callisto __________________________ 13
Figura 3. Robots de Kiva Systems ___________________________________________ 14
Figura 4. Robot enjambre _________________________________________________ 15
Figura 5. Robots Swarmanoid transportando un libro ____________________________ 16
Figura 6. Mini Robots exploradores de laberintos _______________________________ 17
Figura 7. Esquema general del proyecto de robots cooperativos ____________________ 18
Figura 8. Diseño estructural de cada Robot ____________________________________ 19
Figura 9. Plataforma inicial para el transporte cooperativo ________________________ 20
Figura 10. Diseño robots cooperativos _______________________________________ 21
Figura 11.Dimensiones de la tarjeta de comunicación S2 _________________________ 36
Figura 12. Conexión básica de la tarjeta Xbee S2 _______________________________ 36
Figura 13. Modos de operación del Xbee S2 ___________________________________ 37
Figura 14. Canales disponibles para la comunicación del Xbee S2 a 2.4GHz _________ 38
Figura 15. Tipos antenas de Módulos Xbee ___________________________________ 39
Figura 16. Antena ANT-QUAD GSM para el módulo Xbee ______________________ 40
Figura 17. Topología de red Xbee ___________________________________________ 40
Figura 18. Adaptador Xbee Dongle __________________________________________ 41
Figura 19. Configuración del Pc con el X-CTU. ________________________________ 42
Figura 20. Verificación del Serial del Módulo Xbee._____________________________ 43
Figura 21. Configuración en modo coordinador del Xbee _________________________ 45
Figura 22. Configuración en modo Router del Xbee _____________________________ 46
Figura 23. Micro controlador PIC18F4550 de superficie __________________________ 56
Figura 24. Motorreductor a 9 v con los soportes. ________________________________ 58
Figura 25. Estructura de un puente H de referencia L293D. _______________________ 59
Figura 26. Tipos de configuración para sensores infrarrojo ________________________ 61
Figura 27. Circuito Sensores de proximidad para cada robot cooperativo. ____________ 62
Figura 28. Diseño Tarjeta de control Vista Superior _____________________________ 63
Figura 29. . Diseño de Tarjeta Etapa de potencia vista superior. ____________________ 64
Figura 30. Circuito Impreso Etapa de control __________________________________ 64
Figura 31. Circuito Impreso Etapa de Potencia. _________________________________ 65
Figura 32. Componentes Soldados en vista superior _____________________________ 66
Figura 33. Componentes Soldados vista superior _______________________________ 66
Figura 34. Kit de tracción tipo oruga. ________________________________________ 67
Figura 35. Chasis construido del kit tracción tipo oruga. __________________________ 68
Figura 36.Robots Montacargas vista de frente. _________________________________ 69
Figura 37. Robots Montacargas vista superior __________________________________ 69
Figura 38. Sistema de montacarga montado. ___________________________________ 70
Figura 39. Cargas para transportar por la pista __________________________________ 71
Figura 40. Pista de los Robots ______________________________________________ 72
Figura 41. Robot B y C levantando la carga____________________________________ 74
Figura 42. Robots A, B y C levantando la carga. ________________________________ 74
Figura 43. Sistema de Montacarga ___________________________________________ 75
9
LISTA DE TABLAS
Tabla 1. Valores en decimal para configurar la velocidad de comunicación . ................... 47 Tabla 2. Lista de instrucciones usadas PIC18F4550 ......................................................... 49 Tabla 3. Protocolo de comunicación ................................................................................. 51 Tabla 4. Dimensiones de la carrocería .............................................................................. 68
10
INTRODUCCIÓN
Este proyecto consiste en diseñar e implementar un sistema conformado por tres (3) robots
para realizar trabajos en conjunto. Si bien la electrónica y la informática acaparan un buen
porcentaje de las materias que implica la robótica, es muy necesario tener conocimientos y
habilidades en el diseño de circuitos con sensores, actuadores, sistemas de comunicaciones y
de control. Esta combinación de disciplinas constituye un excelente aporte para los
estudiantes de ingeniería y son muy útiles para implementar en este tipo de proyectos de
robótica móvil.
La aplicación de la robótica móvil, se hace necesaria para apoyar confiablemente al humano
en la realización de tareas peligrosas o complejas, en diferentes áreas como en el campo
militar y académico. En el ámbito militar estos robots pueden detectar explosivos y desactivar
los dispositivos, además los robots cooperativos son útiles en la supervisión de fábricas
industriales y en la exploración de ambientes difíciles donde el humano no puede estar
presente, también en el manejo de materiales radiactivos o en aplicaciones de ingeniería
ambiental para tomar muestras con variables difíciles de medir. En aplicaciones de geología
para exploración de subsuelos y búsqueda de yacimientos, Donde la robótica es de gran ayuda
para estas aplicaciones, por tal razón se hace tan importante la investigación e innovación en
nuevas formas de aplicar esta tecnología para la ayuda militar o académica, para desempeñar
tareas conjuntas con mayor velocidad, y eficacia.
El presente proyecto propone la utilización de tres robots en un espacio controlado con ciertos
obstáculos, donde cada robot sea capaz de llevar una carga determinada por la pista, el robot
es autónomo de solicitar ayuda de uno o más robots dependiendo de la carga para llegar a su
destino demarcado en la pista. Cada robot está compuesto por una tarjeta de comunicación
para enviar y recibir instrucciones simultáneamente, también cuenta con circuitos para el
control del sistema de carga y para el desplazamiento por medio de los motores que
conforman cada uno, además disponen de sensores infrarrojos para detectar y esquivar
obstáculos, por ende se le otorga mayor autonomía al momento de tomar una decisión.
11
La elaboración de este proyecto está constituido por varias etapas entre ellas escoger los
dispositivos electrónicos adecuados para el desarrollo de las tareas, el diseño de los circuitos
aprovechando cada espacio, la construcción estructural y la programación para la asignación
de rutinas. Con la implementación de dichos circuitos para controlar el sistema mecánico y
construir cada robot lo más autónomo posible.
1. PLANTEAMIENTO DEL PROBLEMA
1.1 ANTECEDENTES (ESTADO DEL ARTE)
En este capítulo se muestra la evolución de los robots cooperativos a nivel nacional e
internacional diseñados en diferentes años, los cuales cumplen diversas funciones de
traslado o búsqueda de elementos ya sea aéreo o terrestre de uno o más robots, esto sirve de
guía para el diseño y elaboración del proyecto.
1.1.1 Nivel Internacional
En el campo de los robots cooperativos se desarrollaron varios prototipos a nivel
internacional, prototipos como los mencionados a continuación:
A. Futbol Robótico
El fútbol robótico es un campo donde en cada competencia se observa que aumentan los
seguidores a nivel mundial, además en un excelente lugar donde investigadores y creadores
muestran sus productos. El futbol es un deporte de grupo donde es fundamental la constante
comunicación y tener un orden para llegar al gol, la cooperatividad en el futbol robótico
también es fundamental. Como se puede observar en la Figura 1 un equipo de robots se
enfrenta a otro equipo con objetivos opuestos a los tuyos. Desde el punto de vista de
coordinación es un escenario muy propicio a establecer roles entre los miembros de cada
12
equipo (portero, defensor, delantero, etc.) con estrategias de posicionamiento y
comportamientos específicos. (AGÜERO Carlos)
La percepción también se beneficia de la cooperación y la estimación de los objetos
interesantes del partido, como la pelota, pueden realizarse de manera más precisa
intercambiando información entre varios robots.
Figura 1. Esquema de intercambio de información en la liga de futbol robótico (AGÜERO Carlos).
B. Ganymede, Io y Callisto
Io, Ganymede y Callisto los cuales se pueden ver en la figura 2, ganaron el evento „limpiar
la oficina „en la reunión anual de Competencia Robot móvil patrocinado por la Asociación
Americana para la Inteligencia Artificial (AAAI) en el año de 1994. Los pequeños robots,
que parecen tanques en miniatura, se programaron para limpiar una oficina llena de latas de
refresco, tazas de café y las bolitas de papel. El grupo de Tecnología de Georgia ganó el
evento mediante la recopilación de más basura en diez minutos que cualquier otro robot en
competencia. Cada año, los equipos de investigadores y estudiantes de la industria y el
mundo académico traen sus robots a la competencia AAAI, que los desafía a una tarea.
El concurso se celebró en Seattle con los equipos de Stanford, la Universidad Carnegie
Mellon (CMU), Lockheed Misiles y del Espacio, de la Universidad de Chicago, la Escuela
de Minas de Colorado, la Universidad SimonFraser, de la Universidad de Bonn (Alemania)
y Georgia Tech.
13
Inicialmente, una cámara minúscula del color guía a los robots a la papelera, que se agarran
con una pinza especialmente diseñada. La visión del robot a veces se deje engañar, por lo
que puede agarrar objetos que no son basura como patas de la mesa. Pero ellos pueden
decir la diferencia ya que las tablas no se mueven cuando los pequeños robots tratan de
llevárselos, los objetos que se mueven son considerados basura. Una vez que el robot tiene
un pedazo de basura en la mano, efectúa la búsqueda de un bote de basura, utilizando de
nuevo la visión. Después de localizar a un bote de basura y se mueve hacia la misma, el
robot deja caer el cubo de basura cercano. (ANGULO USATEGUI, Microbótica de la
Tecnología, Aplicaciones y Montaje Práctico, 2012.).
Figura 2. Robots limpia basura Io, Ganymede y Callisto (ANGULO USATEGUI, Microbótica de la
Tecnología, Aplicaciones y Montaje Práctico, 2012.).
C. Robots de Kiva Systems
En grandes centros de distribución, transporte, almacenes o pequeños negocios con gran
volumen de movimiento de productos se utiliza mucho tiempo en el personal que trabaja en
la realización de traslados de productos y de llevar el inventario en bodegas de esa
problemática nació la compañía Kiva Systems en el año 2003 que con el ingenio de dos
expertos en el área de ingeniería y robótica, los profesores Peter Wurman y Raffaello D'
Andrea.
14
Kiva aplica los conceptos de "inteligencia distribuida" para ordenar el cumplimiento
utilizando equipos de manejo de materiales únicos y software de cumplimiento de pedidos.
El resultado es un sistema de automatización completo, mejorando simultáneamente la
velocidad, precisión y flexibilidad.
Esta gestión involucra tareas de llenado de determinados compartimentos o vaciado cuando
los clientes lo solicitan. Un equipo de robots cooperantes puede ser una muy buena
solución para este problema, liberando a las personas de esta tarea repetitiva y mejorando la
eficiencia de la gestión de los recursos. Esta empresa con su sede principal en Boston ha
desarrollado un sistema que permite transportar estanterías de carga a diferentes sitios de un
almacén de manera coordinada por medio de pequeños robots como el que se observa en la
figura 3. En 2012, la revista Fast nombro a KivaSystems en el puesto 23 ª como la
empresa más innovadora en el mundo (SYSTEM, 2014).
Figura 3. Robots de Kiva Systems (SYSTEM, 2014)].
D. Robots Enjambre
Los robots enjambre poseen el nombre por estar constituidos por un grupo de robots
simples, ya que estos operan por comportamientos básicos como la navegación autónoma,
percepción del entorno que los rodea, desplazamiento de objetos, y comunicación entre
ellos. El principal objetivo de estos robots enjambre es el paso de obstáculos sin importar el
15
entorno donde se encuentran como se puede ver en la figura 4, estos pueden realizar
diferentes tareas cooperativamente.
Figura 4. Robot enjambre (José, 2014).
Mediante el desarrollo del proyecto de robots enjambre se realizó el proyecto Swarmanoid
por el Dr. Marco Dorigo, el Swarmanoid es un enjambre de distintos tipos de robots
divididos en clases que cumplen distintas funciones, una nueva manera de especializar el
trabajo. conforman al Swarmanoid: por un lado tenemos al robot encargado de reconocer el
territorio, el eye-bot, el cual es capaz de volar y poder sujetarse al techo, además de usar su
cámara para mandar información acerca del terreno y el lugar en el que se puede encontrar
el objetivo. Después están los foot-bots los cuales se encargan de crear una red terrestre de
apoyo basado en la información que el eye-bot les ha mandado y también ayudan en la
movilidad general del enjambre. Y por último está el hand-bot el cual es capaz de agarrar
objetos y trepar con sus dos brazos, además de que puede juntarse con dos foot-bots para
poder llegar a otros lados. Todos estos pequeños robots con tareas y habilidades especiales
conforman el proyecto swarmanoid el cual se puede observar realizando una tarea en la
figura 5, la cual trataba de recoger un libro de un lugar a otro. (José, 2014)
16
Figura 5. Robots Swarmanoid transportando un libro (José, 2014).
E. Diseño Y Construcción De Tres Mini Robots Exploradores Cooperativos
Los tres MiniRobots fueron desarrollados en la escuela politécnica nacional en la ciudad de
Quito, Ecuador, los cuales se usaron para explorar y mapear un laberinto mediante la
implementación de algoritmos de locomoción, obteniendo la trayectoria recorrida del
laberinto en una ruta corta. Se implementaron varios algoritmos, un algoritmo que le
permite al minirobot ir por el centro del camino y girar en ángulos rectos y precisos, otro
algoritmo para la exploración donde el minirobot puede reconocer la zona del laberinto en
el cual se encuentra y dar las señales correctas de control, cuando el minirobot termina de
grabar la ruta por donde se desplazó, determina los caminos largos y los caminos sin salida,
así para el próximo recorrido tomara la ruta más corta. Dentro del proyecto desarrollaron
una interfaz con la ayuda de MATLAB, donde se crearon varios menús donde los robots
realizan las diferentes actividades.
Los MiniRobots son autómatas capaces de desplazarse en diferentes direcciones dentro del
laberinto, para ello utilizan tracción diferencial para el cambio de dirección y motores de
corriente continua para la rotación de la ruedas. Para percibir su entorno utiliza sensores de
distancia por ultrasonido, colocados en distintas posiciones como se puede observar en la
figura 6, para evitar colisiones, y obtener los datos de las paredes del laberinto que se
17
utilizan para el algoritmo de desplazamiento con el cual se puede encontrar nuevas rutas.
(RODRIGUEZ BORJA Mauricio Fernando, 2010).
Figura 6. Mini Robots exploradores de laberintos (RODRIGUEZ BORJA Mauricio Fernando,
2010).
1.1.2 Nivel Nacional
A. ROBOTS DE SERVICIO COOPERATIVOS
El proyecto realizado en Colombia con dos robots autónomos como se pueden ver en la
simulación de la figura 7 tiene la posibilidad de trabajo cooperativo para efectuar diversas
tareas programadas y tienen como objetivo principal la búsqueda de un objeto con patrones
de color pre-establecidos.
La Universidad Santo Tomás en pro de estar a la vanguardia de nuevos avances a nivel de
investigación y tecnología aplicada, ha apoyado durante los últimos años la implementación
de micro robots móviles con el fin de apoyar el desarrollo académico mediante la
elaboración de módulos didácticos aplicados a las diferentes áreas de investigación que
trabaja la Facultad de Ingeniería Meca trónica, como son la inteligencia artificial, sistemas
de control entre otros. La aplicación desarrollada se fundamenta en mecanismos de
comunicación, cooperación y coordinación entre dos robots que poseen sistemas
sensoriales propios y que deben navegar de forma autónoma. Su principal inconveniente
18
proviene del uso de múltiples unidades móviles, dado que todas ellas interactúan en un
mismo entorno de trabajo convirtiéndose así en obstáculos móviles para los demás robots,
por tal motivo, se requiere de coordinación entre los robots y en muchas ocasiones las
comunicaciones suelen centrarse en la evasión de colisiones.
Figura 7. Esquema general del proyecto de robots cooperativos (Correa Niño Daniel Alfonso,
2012).
El esquema implementado está conformado por dos robos autónomos idénticos capaces de
funcionar de manera cooperativa, El calificativo de “autónomo” hace referencia a la
capacidad de percibir, modelar, planificar y actuar para alcanzar unos objetivos sin la
intervención, o con una intervención muy pequeña, de supervisores humanos. Los móviles
han sido diseñados basados en la premisa de disponer de dos estructuras robóticas que
puedan satisfacer los objetivos del proyecto y a su vez generar nuevos proyectos de
investigación en dicha área, por tanto cada uno de los móviles se dotó con sistemas
sensoriales de alta precisión, con el fin de obtener las diferentes variables físicas de interés
extraídas del entorno y convertirlas en señales eléctricas que les permiten la exploración en
entornos parcialmente estructurados, cuentan además con un módulo de comunicación
inalámbrico configurados en modo bidireccional full-dúplex basados en los protocolos de
comunicación serial asíncrona que les permite un entendimiento mutuo a los dos móviles y
una cámara para realizar tareas de visión artificial como son reconocimiento de colores,
seguimiento de objetos y detección de bordes entre otros.
19
Los móviles tienen una dimensiones de 25 cm de ancho, 24 cm de largo y una altura de 20
cm, en una estructura de configuración diferencial, que consta de dos ruedas de goma
(Poliuretano Blando) con diámetro 10 cm y una rueda caster en la parte posterior que le
brindara mayor grado de estabilidad y de libertad de giro. (Correa Niño Daniel Alfonso,
2012)
Figura 8. Diseño estructural de cada Robot (Correa Niño Daniel Alfonso, 2012).
B. Transporte Cooperativo De Objetos Con Una Plataforma Móvil En Un
Entorno Estructurado
El enfoque del presente artículo desarrollado en la Universidad Distrital busca mostrar el
desarrollo e implementación de una plataforma robótica cooperativa aplicada al transporte
de objetos largos a través de un entorno estructurado utilizando las herramientas que provee
el kit Lego Mindstorms RCX 2.0® diseñando un par de robots denominados maestro y
esclavo cuyas características físicas permitieron arrastrar el objeto, de esta manera cada
robot contó con un juego de sensores característicos del kit, así en una fase inicial, el robot
maestro contaba con un sensor de contacto, y un par de sensores de rotación, mientras que
para el robot esclavo se contaba con un sensor de contacto y un par de sensores de luz, el
20
sistema de locomoción implementado por sus prestaciones fue el oruga al ofrecer mayor
superficie de contacto a la hora de realizar el transporte del objeto de la Figura 9.
La plataforma fue diseñada para la aplicación de trabajo cooperativo al movimiento de
objetos, sin embargo durante el desarrollo del proyecto se podían presentar dos situaciones,
una en donde el robot maestro solicitaba ayuda al robot esclavo para mover el objeto
(trabajo cooperativo), y otra en donde el robot maestro trasladaba el objeto solo (no
cooperativismo). (Beltran Gonzales Edwin Andrés, 2011)
Figura 9. Plataforma inicial para el transporte cooperativo (Beltran Gonzales Edwin Andrés, 2011).
La interacción entre los robots de la plataforma se da de manera centralizada, donde el
robot maestro procesaba toda la información y su robot esclavo actuaba como una
extensión del primero, es decir que los objetivos se establecieron de manera global y cada
una de las acciones de los robots contribuyo a la meta general del proyecto.
C. Diseño e implementación de robots cooperativos
Se realizó el proyecto en la Universidad de San Buenaventura de los robots cooperativos
implementando el sistema mediante los circuitos integrados y la programación del micro
controlador haciendo ciertas pruebas de los robots con el Máster y el Slave se obtuvo la
transmisión de datos binarios por medio de modulación de amplitud digital (ASK)
obteniendo comunicación asíncrona entre los robots para tener ciertos movimientos y
21
trabajar en equipo. Mediante las pruebas realizadas se tuvieron inconvenientes por falta de
conocimiento en la comunicación de radio frecuencia porque se tenía inicialmente la antena
de transmisión y recepción en forma de espiral, y se llego la solución del problema
colocando las antenas en forma lineal y sin caucho aislante.
En el momento de realizar pruebas a los robots en movimiento se observó que por la
estructura de las llantas omnidireccionales con poco agarre para el terreno donde se
realizaron las pruebas para llegar a la conclusión que para estos tipos de llantas hay que
aplicarle cierta cantidad de silicona teniendo así mejores resultado. Al realizar las pruebas
del sensor infrarrojo para evitar obstáculos se concluyó que con una superficie más clara
para la reflexión se tiene mejores resultados que con una superficie oscura. (Luis Montoya,
2011)
Figura 10. Diseño robots cooperativos (Luis Montoya, 2011).
1.2 DESCRIPCIÓN Y FORMULACIÓN DEL PROBLEMA
En algunos casos prácticos, de la vida cotidiana, se requiere la presencia de más de un robot
para realizar trabajos comunes que para el hombre no son posibles con la precisión
requerida para ciertos procesos.
22
El propósito de este proyecto es diseñar e implementar el trabajo cooperativo entre tres
robots, dando así, apertura al trabajo en conjunto de un sistema con una gran capacidad de
cooperación y ayuda entre varias máquinas en un área específica.
¿Cómo lograr que robots trabajen de manera eficiente y sincronizada al momento de
ejecutar una tarea sin asistencia continua de un controlador principal?
1.3 JUSTIFICACIÓN
El interés de este proyecto es poder desarrollar un sistema conformado por varios robots
para que sean la herramienta principal, en llevar a cabo la ejecución de diferentes tareas
dentro de ciertos procesos establecidos, el cual se puede aplicar en varios campos de la
industria, donde estos pueden transportar y organizar materiales o herramientas en el lugar
indicado. Es de gran utilidad el uso de robots cooperativos autónomos en áreas complejas
así mejorando la eficiencia de la empresa o la industria donde se ha aplicado el sistema.
Este proyecto es basado en el proceso de trabajo de algunos animales que al trabajar en
conjunto consiguen mejores resultados que individualmente, como las hormigas que no
tienen mucha capacidad individual de actuación, pero un hormiguero tiene la capacidad de
operación muy eficiente para su comunidad. Así un pequeño robot con poca capacidad de
actuación no es muy útil. Pero un grupo de robots puede explorar una gran cantidad de
terreno, y pueden realizar en equipo tareas de una manera más coordinada.
Se pretende diseñar e implementar robots cooperativos móviles con la capacidad de hacer
giros, cambiar de dirección, con capacidad de desplazarse en forma autónoma en un
ambiente controlado, detectar obstáculos, transportar objetos y ejecutar una tarea en equipo.
A cada uno se le asignará un número de tareas simples y muy concretas, pero con la
posibilidad de poder interactuar o compartir información con los otros robots para hacer
una tarea de manera conjunta que un solo robot no sería capaz de realizarla.
23
El proyecto tiene como base teórica proyectos investigativos en el área de semilleros y
proyecto integrador donde ya se ha trabajado sobre el tema pero no se ha profundizado ni
concluido en proyectos finales, se cuenta con el apoyo de la infraestructura de la
Universidad de San Buenaventura, Bogotá, en los laboratorios de electrónica para realizar
pruebas y el hangar para la construcción mecánica de los robots, para la realización del
proyecto se tiene un presupuesto para la ejecución del proyecto.
1.4 OBJETIVOS DE LA INVESTIGACIÓN
1.4.1 Objetivo General
Diseñar y construir tres robots tipo montacargas, los cuales transportan en conjunto una
carga a través de obstáculos para ser llevada a su lugar de destino sin ningún daño.
1.4.2 Objetivos Específicos
Diseñar e implementar un sistema mecánico para el montacarga de los robots
cooperativos.
Diseñar e implementar los circuitos de control, comunicación y de potencia de los
robots.
Diseñar e implementarlos algoritmos de control y comunicación.
Realizar pruebas en los robots cooperativos para los sistemas electrónicos y
mecánicos.
1.5 ALCANCES Y LIMITACIONES DEL PROYECTO
Se trabajará con 3 robots tipo oruga con dimensiones de 17 cm de largo, 11 cm de ancho y
10cm de alto, con cargas variables de 10 cm hasta 20 cm y un peso de hasta 200grs como
límite máximo, para el desplazamiento de la carga se cuenta con un mecanismo montacarga
el cual será capaz de recoger y levantar la carga para ser transportada a su destino final.
24
Ejecutando tareas simples basadas en toma de decisiones como lo es el desplazamiento de
un punto A un punto B, dichos puntos están a diferentes distancias, y debe superar los
obstáculos en el espacio donde se realizara la prueba. La topología del suelo en la cual
operarían los robots estaría dada de tal forma que no haya dificultad de desplazamiento al
momento de moverse en la pista, debido a que el tipo de área en la que los robots se van a
transportar no puede ser lisa. El rango de operación de los robots será delimitado por el
tamaño de la pista será de 2 metros de largo por 1.20 metros de ancho, en ese espacio se
encontraran todos los obstáculos, el inicio y final del recorrido.
En la pista el robot A transportara individualmente una carga desde el punto demarcado de
inicio y final, como primer secuencia, además en otra situación donde la carga es más
grande los robots A y B, llevaran la carga a su destino con una continua comunicación por
radiofrecuencia, donde dependiendo de los obstáculos el robot A o B asumiría el papel de
maestro o esclavo y terminaran la tarea, y en la última situación los robots A,B,C, llevaran
una carga de mayor tamaño hacia el destino final, esquivando los obstáculos y cambiando
de maestro o esclavo dependiendo del obstáculo. De esta manera trabajaran todos los
robots de manera cooperativa por toda la pista.
El tamaño de la pista fue establecido por el rango de comunicación que ofrece cada robot, y
así mismo dar complejidad a la hora de realizar sus desplazamientos y esquivar obstáculos.
2. MARCO DE REFERENCIA
2.1 MARCO TEORICO Y CONCEPTUAL
Para llevar a cabo este proyecto se tiene en cuenta los diferentes aspectos físicos y
electrónicos que integran al sistema de robots cooperativos.
25
2.1.1 Robótica
La robótica es la ciencia y la tecnología de los robots. Se ocupa del diseño, manufactura y
aplicaciones de los robots. La robótica combina diversas disciplinas como son: la mecánica, la
electrónica, la informática, la inteligencia artificial y la ingeniería de control.
El término robot ha sido definido por la American Robot Industry Association como “un
manipulador diseñado para desplazar materiales, piezas, herramientas y demás especializados,
mediante movimientos programados, para la realización de diferentes tareas “. Generalmente,
ello conlleva una reproducción de movimientos similares a los del ser humano.
El concepto aparece por primera vez en 1921, en la obra teatral R.U.R(Rossum‟s Universal
Robots) del novelista y autor dramático checo Karel Capek en cuyo idioma la palabra
“Robota” significa fuerza del trabajo o servidumbre. Por aquellos años la producción en
grandes series se había introducido en numerosas fábricas. Se discute ya del poder de las
máquinas y la dominación de los hombres por las máquinas, argumento de esta y otras obras
teatrales y películas de los años veinte en los que aparecen trabajadores robóticos.
El término tiene amplia aceptación y pronto se aplica a autómatas construidos en los años
veinte y treinta que se exhiben en ferias, promociones de productos, películas y otras
aplicaciones. Se trata de imitar movimientos de seres vivos pero también de demostrar
técnicas de control remoto, incluyéndose en algunos casos funciones sensoriales primarias.
Mediante el control automático de procesos se pretende concebir y realizar ingenios que
permitan gobernar un proceso sin la intervención de agentes exteriores, especialmente del
hombre. (Aníbal, 2001)
2.1.2 Sensores
Son dispositivos electrónicos de medida de variables del medio, estas variables pueden ser de
distancia, temperatura, color, presión y peso, dependiendo de la aplicación se escoge el que
más se acople a las necesidades. A partir de la energía del medio donde se mide, se genera
26
una señal medible y cuantificable según la variable medida, que puede ser entregada en forma
análoga, para conseguir que el robot realice su tarea con la adecuada precisión es preciso que
tenga conocimiento tanto de su propio estado como del estado de su entorno. Dos tipos de
sensores:
Sensores internos: sensores integrados en la propia estructura mecánica del robot, que
dan información del estado del robot: fundamentalmente de la posición, velocidad y
aceleración de las articulaciones.
Sensores externos: dan información del entorno del robot: alcance, proximidad,
contacto, fuerza. Se utilizan para guiado de robots, para identificación y manipulación
de objetos. (sensores, 2014)
Los sensores permiten la adquisición de la información necesaria para el control del robot. En
el estudio de los sensores debe involucrarse la medida de las magnitudes y su representación
en forma compatible para su procesamiento.
En la toma de medidas siempre existe un cierto grado de incertidumbre. En principio, el
incremento de la información hace posible la reducción de la incertidumbre. Para ello se trata
de tomar más medidas o de emplear sensores redundantes.
Existen diferentes portadores de información basados en distintos principios físicos y
químicos. Así entre los principios y parámetros involucrados como los que se mencionan a
continuación.
Mecánica: posición, velocidad y tamaño
Termotecnia: Temperatura, calor y entropía
Electricidad: Voltaje, intensidad, resistencia y capacidad
Magnetismo: Intensidad de campo, densidad de flujo y permeabilidad
Química: Concentración de un material y estructura cristalina
27
Desde el punto de vista del procesamiento de la información, en robótica se involucran
funciones de control de movimientos, percepción y planificación. En un sentido amplio, el
sistema de control involucra tanto bucles de realimentación de la información suministrada
por los sensores internos, como del entorno. Los sensores internos miden el estado de la
estructura mecánica y, en particular, giros o desplazamientos relativos entre articulaciones,
velocidades, fuerzas y pares. Estos sensores permiten cerrar bucles de control de las
articulaciones de la estructura mecánica empleada.
Los sensores externos permiten dotar de sentidos al robot. La información que suministran
es utilizada por el sistema de percepción para visualizar la realidad del entorno. Los
sistemas de percepción sensorial hacen posible que un robot pueda adaptar
automáticamente su comportamiento en función de las variaciones que se producen en su
entorno haciendo frente a situaciones imprevistas. (Aníbal, 2001)
2.1.3 Control
En electrónica la etapa de control se ejecuta por medio de micro controladores que tienen la
capacidad de ejecutar tareas por medio de ordenes o rutinas programadas, el control es el
centro de mando de tareas, donde está compuesto por entradas y salidas, de tipo analógico o
digital, que dependiendo de la aplicación se pueden acoplar con otros circuitos para realizar
un sistema complejo.
Dado que los robots autónomos constituyen sistemas de gran complejidad, resulta crucial
dotarlos de programas de control que permitan armonizar todas las funciones del robot para
llevar a buen término las tareas propuestas como objetivo. Para distinguir nítidamente entre el
software de control del robot y el sistema operativo de los controladores con que se equipa al
robot, hablamos en el primer caso de arquitecturas software de control. Antes de pasa a
describir las principales aproximaciones adoptadas en cuanto a las arquitecturas de control, en
donde se muestran las principales características y capacidades que debe poseer una
arquitectura de este tipo:
28
Sistema concurrente. Un robot autónomo es un sistema físico cuyos componentes,
inherentemente concurrentes, deben ser controlados simultáneamente de forma global
para el correcto funcionamiento del conjunto.
Fusión sensorial. Un sistema autónomo debe ser capaz de eliminar la ambigüedad
presente en los datos sensoriales contradictorios que se obtienen de distintos sensores
en el mismo instante como ejemplo falsos ecos recibidos por un sistema de detección
de obstáculos basado en ultrasonidos.
Gestión de situaciones de emergencia. Durante el desarrollo de una misión, el robot
debe ser capaz de enfrentarse a situaciones imprevistas de emergencia a las que debe
dar una respuesta inmediata como por ejemplo evitar colisiones con obstáculos,
agotamiento de baterías.
Capacidad de anticipación. Es deseable que el robot evite situaciones de conflicto
siempre que sea posible, pues ellos redundara en una menor necesidad de recursos
para llevar a cabo una misión y por tanto será una solución más ¨inteligente¨. (Andrés
S. S., 2002 )
2.1.4 Comunicación
Es el proceso de transmitir información de un punto hacia otro sincronizado, de forma que un
receptor puede tomar el papel de emisor y viceversa, donde se mantiene en este caso una
transmisión de datos continua, la cual se transmite por radiofrecuencia y se envían datos
binarios que pueden ser leídos por los demás robots y pueden ejecutar las tareas dependiendo
del dato.
El objetivo fundamental de un sistema electrónico de comunicaciones, es transferir
información de un lugar a otro. Por consiguiente, se puede decir que las comunicaciones
electrónicas son la transmisión, recepción y procesamiento de información entre dos o más
lugares, mediante circuitos electrónicos. La fuente original de información puede estar en
forma analógica, como por ejemplo la voz humana o la música, o en forma digital, como por
29
ejemplo los números codificados binariamente o los códigos alfanuméricos. Sin embargo,
todas las formas de información se deben convertir a energía electromagnética antes de ser
propagadas a través de un sistema electrónico de comunicaciones.
Samuel Morse desarrollo en 1837 el primer sistema electrónico de comunicaciones. Uso la
inducción electromagnética para transferir información en forma de puntos, rayas y espacios
entre un transmisor y un receptor sencillos, usando una línea de transmisión que consistía en
un tramo de conductor metálico. Llamo telégrafo a su invento. En 1876, Alexander Graham
Bell y Thomas A Watson fueron los primeros en transferir en forma exitosa la conversación
humana a través de un sistema sencillo de comunicaciones con hilo metálico, al que llamaron
teléfono. Guglielmo Marconi transmitió por primera vez señales de radio, sin hilos, a través
de la atmosfera terrestre, en 1894 y Lee DeForest invento en 1908 el tríodo, o válvula al
vacío, que permitió contar con el primer método practico para amplificar las señales
eléctricas. La radio comercial comenzó en 1920, cuando las estaciones de radio comenzaron a
emitir señales de amplitud modulada (AM).
En años recientes, los transistores y los circuitos integrados lineales han simplificado el
diseño de los circuitos de comunicación electrónica. Permitiendo así la miniaturización, mejor
eficiencia y confiabilidad y costos generales menores. En los años recientes ha habido una
necesidad abrumadora de comunicación. Por tal razón el avance tecnológico es muy grande.
(WAYNE, 2003)
2.1.5 Controlador montacargas
El sistema de montacargas es el elemento encargado de recoger la carga y elevarla a una
altura suficiente donde no se genere fricción con el suelo , lo que hace que sea más simple el
desplazamiento de las cargas de un punto a otro, cada robot está conformado por un sistema
montacarga. El montacarga dispone de un motor reductor y un sistema de engranajes para
elevar las cargas a la altura determinada
.
30
Un montacargas tiene unos elementos estructurales característicos, que son base de apoyo,
estructura flotante y sistema de deslizamiento. La estructura del montacargas debe estar
dispuesta sobre el suelo, sobre una superficie con suficientes dimensiones y resistencia, de
modo que el reparto de la carga transmitida al terreno se distribuya uniformemente y no dé
lugar a asentamientos diferenciales de los distintos órganos de apoyo. La estructura portante
debe formar un conjunto de suficiente rigidez para soportar las cargas y esfuerzos a que estará
sometida. A la estructura portante se encuentra unido el sistema que dirige el desplazamiento
de la plataforma. Dicho sistema, ya sea de guías o cremallera, debe asegurar en todo momento
la estabilidad horizontal y vertical de la plataforma, y estar calculado para soportar los
esfuerzos debidos a la actuación del sistema de emergencia. (Jose Avelino Espeso, 2007)
2.1.6 Elementos actuadores
Los motores reductores son los encargados de proporcionar el movimiento de cada robot,
donde cada motor puede realizar giros hacia adelante y atrás, los cuales ayudan al
desplazamiento de cada robot, estos elementos son controlados por medio de la programación
realizada en el micro controlador y el acople de potencia que genera mayor velocidad se
realiza por medio de puentes H. Siendo los motor reductores actuadores eléctricos otorgan
mayor precisión y control con respecto a actuadores hidráulicos o neumáticos.
“Actuadores neumáticos. La fuente de energía es el aire. Entre este tipo de actuadores
destacan los cilindros neumáticos, que pueden ser de simple o doble efecto., los motores
neumáticos, formados por paletas rotativas o pistones axiales y las válvulas neumáticas y
electro neumáticas. Los actuadores neumáticos presentan las ventajas de que son baratos,
rápidos, sencillos y muy robustos; pero requieren instalaciones especiales, son muy ruidosos y
difíciles de controlar.
Actuadores hidráulicos. La fuente de energía es un fluido, normalmente algún tipo de aceite
mineral. Entre los actuadores hidráulicos destacan los cilindros hidráulicos de simple o doble
efecto, motores hidráulicos de paletas rotativas o de pistones axiales y las válvulas hidráulicas
y electrohidráulicas. Los actuadores hidráulicos presentan las ventajas de que son rápidos,
31
tienen una alta relación potencia a peso, son auto lubricantes, tienen alta capacidad de carga y
presentan estabilidad frente a cargas estáticas. Requieren instalaciones especiales, son de
difícil mantenimiento y resultan poco económicos.
Actuadores eléctricos. La fuente de energía es la electricidad. Hay tres grandes grupos de
actuadores eléctricos: los motores de corriente continua, controlados por inducido o
controlados por inducido o controlados por excitación, los motores de corriente alterna
(síncronos y asíncronos) y los motores paso a paso, entre los que destacan los motores de
imanes permanentes, de reluctancia variable o híbridos. Los actuadores eléctricos son muy
precisos y fiables, son silenciosos, su control es sencillo y son de una fácil instalación. Su
mayor inconveniente es que son de potencia limitada. (Andrés S. S., 2002 )
2.1.7 Comportamiento Cooperativo
“La cooperación es un trabajo en equipo para conseguir objetivos compartidos. En
situaciones cooperativas, los individuos buscan resultados que son beneficios para ellos
mismos, así como para los otros miembros del grupo. Los individuos de un grupo deber ser
responsables de ayudarse mutuamente a la hora de resolver una tarea compartida. Además,
los miembros del equipo deben velar para que todos sus integrantes tengan éxitos, así se
puede decir que el comportamiento cooperativo es el uso de pequeños grupos en los que los
individuos trabajan juntos para maximizar su propio comportamiento y el de los otros
miembros.
En el contexto de la Robótica, existirá un comportamiento cooperativo si gracias a ciertos
mecanismos de cooperación existentes, se produce un incremento en el rendimiento total en
el grupo, dicho mecanismo de cooperación surgirá de las restricciones impuestas por el
diseñador en la naturaleza de la comunicación y el procesado de los miembros de la colonia
para acometer un tarea común.
El comportamiento cooperativo puede ser contrastado con comportamientos de carácter
individualista y competitivo, mientras que el uso apropiado de estos dos últimos tipos de
32
comportamiento puede quedar limitado a situaciones muy concretas, la gran mayoría de
tareas pueden ser estructurados de forma cooperativa.
Se rige el comportamiento por tres tipos fundamentales:
Cooperativo: los individuos se ayudan mutuamente para que todos tengan éxito.
Individualista: los individuos trabajan por ellos mismos para conseguir objetivos que no
estan relacionados con los del resto de sus compañeros.
Competitivo: Los individuos trabajan unos contra otros para conseguir un objetivo
determinado. (Sergi, 2003)
2.2 MARCO LEGAL O NORMATIVO
2.2.1 Normatividad Comunicaciones Xbee s2
El hecho de realizar la comunicación por radiofrecuencia se debe tener en cuenta las normas
actuales de interferencia y no ocupar espectro que no sea libre que para Colombia el
Ministerio de las Tecnologías de la Información y las Comunicaciones regula las
comunicaciones por radiofrecuencia y define ciertas reglas para el uso del espectro de
radiofrecuencia, por ello se consultó el manual de uso del Xbee s2, que es el dispositivo
usado para la comunicación entre robots, los cuales manejan una frecuencia de operación de
2.4 GHz y esta banda se encuentra dentro del espacio libre de comunicaciones. El protocolo
que soporta es IEEE_802.15.4 donde se realiza las comunicaciones a través de una única
frecuencia, es decir, de un canal. Normalmente puede escogerse un canal de entre 16
posibles. El alcance depende de la potencia de transmisión del dispositivo así como también
del tipo de antenas utilizadas.
Por tal razón el proyecto se acoge a las reglas nacionales y esta soportado por un protocolo
autorizado por la IEEE, por ello el proyecto no genera interferencia en comunicaciones ni con
otros equipos.
33
3. METODOLOGÍA
Empírico Analítico. El interés en este proyecto es netamente técnico orientado a la
interpretación y transformación del mundo, teniendo en cuenta que la prioridad
indispensable para los requerimientos de este enfoque es abstraer las necesidades de nuestra
realidad y desarrollar cambios que permitan la optimización de procesos (eficiencia)
mediante la observación detallada, auto-correctiva y progresiva, en procesos de transporte
de cargas con sistemas de cooperación, permitiendo la introducción de nuevos
conocimientos y procedimientos que aseguren un mejor acercamiento a la realidad.
La metodología del proyecto estará basada en la implementación práctica y utilitaria del
producto, desde su concepción, los diseños correspondientes, implementación y pruebas del
producto final. Se abordarán las diferentes temáticas que toca el tema del proyecto
buscando ampliar nuestra base cognitiva al respecto, para luego decidir prospectos de
diseño final, posteriormente un diseño aplicable y definitivo. Para ello se remite a las
especificaciones, recomendaciones y experiencias de autores relacionados con
problemáticas similares, para tomar lo mejor de ello buscando desarrollar nuestro trabajo
investigativo con el mínimo de errores posible y el máximo desempeño. Se ahondará en la
teoría para reforzar la aplicación buscando también encontrar la simetría de los parámetros
óptimos de diseño. El entorno autónomo de cada uno de los robots partirá de la aplicación
de lógica matemática y programación bajo ambientes amigables que permitan al mismo el
desarrollo de sus tareas de una manera casi independiente de cualquier tipo de intervención
o accionamiento por parte de cualquier operario.
3.1 LÍNEA DE INVESTIGACIÓN DE USB / SUB-LÍNEA DE FACULTAD / CAMPO
TEMÁTICO DEL PROGRAMA
LINEA DE FACULTAD: Análisis y procesamiento de señales
NÚCLEO PROBLEMICO: Control, Microelectrónica y robótica
34
4. DESARROLLO INGENIERIL
Para realizar el presente trabajo se realizó la búsqueda informativa sobre que eran los robots
cooperativos, la historia, que antecedentes de creación de este tipo de proyecto hay en el
mundo y en el Colombia para la implementación correcta del proyecto, se investigó que
dispositivos electrónicos se podrían utilizar para realizar el proyecto y se ajustan a las
necesidades del mismo.
Primero se escogió usar un micro controlador (PIC18f4550) con la capacidad y los
requerimientos necesarios para el diseño y funcionamiento del sistema. Este micro
controlador cumple con las necesidades del proyecto ya que los puertos de entrada y salida
cumplen con la necesidad del proyecto y tiene puertos de comunicación EUSART, la
correcta configuración de estos puertos son la base del proyecto además por su
programación en diferentes lenguajes es ideal para tener ciertas subrutinas que serán el
principal funcionamiento de los robots cooperativos en el proyecto y así poder llevar a
cabo ciertos comandos u órdenes para el control de los periféricos de entrada y salida
conjuntamente. Por lo anterior, se eligió utilizar sensores infrarrojos que funcionarán con el
micro controlador, estos sensores tendrán la capacidad de poder detectar obstáculos y la
carga, que van a tener los robots cooperativos en el entorno, el correcto funcionamiento de
estos dispositivos cumplirán con el objetivo de llevar a cabo las tareas propuestas para
estos robots.
Los motor reductores acoplados al sistema de oruga, harán la función de desplazamiento
del robot además de realizar el desvió de los obstáculos, serán programados con ciertos
movimientos sencillos en específico como por ejemplo ir hacia adelante, atrás, izquierda o
derecha. Se utilizó también un módulo Xbee S2, para dar las ordenes al sistema las cuales
pueden ser ,inicio, parada, evitar obstáculos, alineación, y realizar un movimiento en
específico con comunicación por radiofrecuencia. Se usó un sistema de montacarga con un
Motorreductor de baja revolución acoplado a unos engranajes para realizar el levantamiento
de la carga que será llevada por los robots desde la ubicación señalada. El funcionamiento
35
de cada dispositivo mencionado anteriormente es explicado a profundidad por etapas a
continuación.
4.1 Etapa de comunicación
La comunicación de los robots cooperativos se realiza por medio de la tarjeta Xbee series 2,
la cual trabaja a una frecuencia de 2.4 GHz y según la potencia de transmisión y el tipo de
antena, su rango de operación oscila entre 30 metros y 100 metros, tiene una velocidad de
transmisión de 256kbps, además de la velocidad otras características por lo que se escogió
este elemento son:
Bajo costo.
Ultra-bajo consumo de potencia.
Uso de bandas de radio libres, sin necesidad de licencias.
Instalación barata y simple.
Redes flexibles y extensibles.
La configuración del dispositivo se puede dar de las siguientes formas, en modo
coordinador, router o dispositivo final, el dispositivo tiene la capacidad de establecer el
canal de comunicación (PAN) y crear la red con otros Xbee donde en una red solo puede
existir un Xbee configurado como coordinador quien es el dispositivo central y toda la
información es enrutada por este dispositivo, en otro modo más específicamente en modo
router además de recibir y enviar información, el dispositivo escoge la mejor ruta por la
cual enviar los datos, para su correcto funcionamiento debe estar unido a la red del
coordinador, por último se encuentra el modo de end device o dispositivos finales, en esta
configuración solamente se recibe la información y no se tiene la capacidad de enviar
paquetes a otro end device, pero tiene la cualidad de trabajar en bajo consumo. (Andrés O. ,
2014)
36
Figura 11.Dimensiones de la tarjeta de comunicación S2 (Andrés O. , 2014).
4.1.1 Aplicaciones
Los módulos Xbee cuentan con una única dirección de 16bits para los algoritmos de ruteo,
cuando se asocia un dispositivo a la red, el coordinador le asocia una dirección única, y así
la capacidad de elementos es de y este sería el máximo número de
direcciones que se pueden asignar a esa red. Estos pueden ser ajustados para intercambiar
datos punto a punto o punto a multipunto dependiendo la necesidad.
4.1.2 Circuito para Xbee
En la figura 12 se observa el circuito basico para el funcionamiento de la tarjeta de
comunicación, para ser configurada dependiendo de la aplicación deseada por el usuario.
Figura 12. Conexión básica de la tarjeta Xbee S2 (Andrés O. , 2014).
37
El voltaje para la alimentacion de la tarjeta tiene un rango de operación de 2.8 a 3.4 V, tiene
el pin 10 el cual es la conexión a tierra del modulo además cuenta con líneas de
transmisión de datos por medio del UART (TXD y RXD) para comunicarse con un
microcontrolador, para el caso del PIC18F4550, se debe realizar un circuito adaptador de
voltaje para acoplar el microcontrolador con el Xbee ya que el PIC trabaja con un voltaje de
5v y la tarjeta de comunicación trabaja en el rango mencionado. (Andrés O. , 2014)
4.1.3 Modos de operación del Xbee
El módulo de comunicación tiene cinco modos de operación como se puede observar en la
figura 13, donde se observa el modo de transmisión, recepción, bajo consumo, inactivo, y
de comandos, siendo los dos primeros los más importantes para este proyecto ya que son en
los cuales operaria el sistema de cooperación, se activa este modo cuando le llega algún
paquete RF a través de la antena (modo Receive) o cuando se manda información serial al
buffer del pin 3 (UART Data in) que luego será transmitida (modo Transmit).
Figura 13. Modos de operación del Xbee S2 (Andrés O. , 2014).
38
4.1.3.1 Frecuencia y canales de operación
Para la creación de la red el dispositivo tiene 16 canales posibles para realizar la
comunicación que se rige por el protocolo IEEE 802.15.4. Esta norma indica que entre
cada canal, deben existir por lo menos 5 MHz de diferencia y con un ancho de banda para
cada canal de 3 MHz, partiendo de la frecuencia base 2.405 GHz, se llegan hasta los 2.480
GHz como se ilustra en la Figura 14, los valores se asignan desde el 11 hasta el 26.
(Andrés O. , 2014)
Figura 14. Canales disponibles para la comunicación del Xbee S2 a 2.4GHz. (Andrés O. , 2014)
4.1.4 Tipos de Antenas para Xbee
Los módulos de comunicación Xbee S2 tienen gran capacidad de propagar la información
por medio de radiofrecuencia como medio, pero en ciertas ocasiones la información
deseada tiene perdidas y no puede llegar al destino deseado, por tal razón todos los módulos
de este tipo tienen la capacidad de incorporar a los diferentes conectores antenas según la
aplicación que se esté utilizando y especificaciones técnicas que se adapten mejor al
proyecto donde se desean usar los módulos, a continuación se muestra las antenas comunes
del mercado y su funcionamiento básico.
Antena de alambre: Tienen radiación omnidireccional la distancia máxima de transmisión
es más o menos la misma en todas direcciones cuando su hilo es recto y perpendicular al
módulo como se puede observar en la Figura 15.
Antena chip: La antena es un chip cerámica es más pequeño y robusto, patrón de radiación
cardiode (en forma de corazón), la señal se atenúa en muchas direcciones. Se usa cuando la
antena se puede romper, o cuando el espacio es muy pequeño.
39
Antena PCB: Introducido con el S2B Xbee-PRO, la antena PCB se imprime directamente
en el circuito de la Xbee. Se compone de una serie de caminos que forma un patrón fractal.
Conector U. FL: Es pequeña, un poco frágil, y casi siempre se utiliza con un cable de
conexión corta que lleva la señal a una antena de montaje remoto. (Esteban)
Figura 15. Tipos antenas de Módulos Xbee (Esteban).
RPSMA: Es sólo un tipo de enchufe del conector U. FL. Es más grande y más voluminoso,
se puede usar con una antena externa, montado directamente a la Xbee sin cable de
conexión, este tipo de módulo Xbee S2 se usó para nuestro proyecto ya que ofrece mejores
características técnicas a comparación del Xbee S1, con el módulo Xbee S2 y el conector
de antena RPSMA que permite colocar diferentes tipos antenas sin afectar el módulo Xbee
S2. La antena utilizada para el proyecto es ANT-QUAD GSM con las siguientes
características 2dBi de ganancia, ¼ de onda Monopolo Antena, y su longitud 59mm como
se puede observar en la figura 16.
40
Figura 16. Antena ANT-QUAD GSM para el módulo Xbee
4.1.5 Topologías de red para Xbee
Los módulos Xbee tienen diferentes tipos de topología para la configuración de una red
dependiendo del tamaño de la red y la aplicación que se le quiere dar a los módulos Xbee,
se encuentran tres tipos básicos de topología los cuales se pueden observan en la figura 17.
Figura 17. Topología de red Xbee. (Medina Bello John Isaac, 2011)
41
4.1.6 Configuración de los módulos Xbee S2
Los módulos XBee son versátiles a la hora de programarlos para el proyecto de robots
cooperativos se utilizó una red con una topología en estrella la cual está compuesta por un
coordinador y dos router, la empresa que los fabrica, diseño un software libre llamado X-
CTU; el cual le permite al usuario interactuar fácilmente con dichos módulos, en la figura
19 se observa la pestaña de inicio del X-CTU.
Para la programación de los Xbee se utilizó el adaptador XBee Dongle con conexiones
estándar a USB para conectar al pc el programador utilizado se puede ver en la figura 18.
Figura 18. Adaptador Xbee Dongle
Para configurar la red Xbee se coloca el módulo Xbee sobre el adaptador Dongle y se abre
el software X-CTU en el cual aparece la primera pestaña del X-CTU donde se puede
configurar la velocidad de transmisión de datos, el puerto de comunicación del computador,
y con la herramienta Test/Query donde se puede verificar el serial de cada módulo como se
puede observar en la figura 20, ya que es muy importante el serial del módulo para poder
configurar la red.
43
Figura 20. Verificación del Serial del Módulo Xbee.
En la figura 21 en la pestaña de MODEM CONFIGURATION se puede observar la
configuración de un módulo Xbee con función de coordinador, en esa ventana se puede
seleccionar varias opciones en la que se encuentran, Modem XBEE-PRO donde selecciona
la referencia del Xbee que se está utilizando para nuestro proyecto esa referencia se puede
observar por detrás del módulo Xbee S2 para este caso la referencia es XBP24BZ7,
FUNCTION SET esta opción se utiliza para seleccionar la función del dispositivo si se
quiera configurar como modo coordinador, router, dispositivo final, para este caso se utilizó
44
en modo Coordinador AT, VERSION en esa opción se puede seleccionar la versión del
módulo Xbee S2, es 20A7.
En la carpeta Networking se encuentran los parámetros para configurar la red en la
topología que se desea. Primero se realiza la configuración PAN ID (Personal área network
identification-identificación de una red de área personal), en este ítem se coloca el número
de identificación de la red para todos los módulos el PAN ID es igual, después se configura
SCAN CHANNELS colocando el valor en hexadecimal de los canales para el proyecto es
1FFE colocando el mismo valor a todos los módulos, SCAN DURATION se coloca el
número 3 por defecto, OPERATING PAN ID, OPERATING 16- BIT- PAN ID,
OPERATING CHANNEL estos parámetros se configuran automáticamente.
Después se realiza la configuración de la carpeta ADDRESSING, en donde se agregan los
valores seriales de los módulos Xbee que se pueden ver al respaldo del módulo o en la
figura 20, (SH) SERIAL NUMBER HIGH es el valor por defecto para todos los módulos
Xbee S2, (SL) SERIAL NUMBER LOW se coloca el serial del módulo Xbee que se va
utilizar como coordinador.
45
Figura 21. Configuración en modo coordinador del Xbee
Configuración Modulo Router, para esta configuración se realizan el mismo paso
mencionado anteriormente solo se modifica en la FUNCTION SET como Router AT así
como se ve en la figura 22 en la carpeta NETWORKING se deja la misma configuración
del modo coordinador, Después se realiza la configuración de la carpeta ADDRESSING, en
donde se agregan los valores seriales de los módulos Xbee que se pueden ver al respaldo
del módulo o en la figura 22, (SH) SERIAL NUMBER HIGH es el valor por defecto para
todos los módulos Xbee S2, (SL) SERIAL NUMBER LOW se coloca el serial del módulo
Xbee que se va utilizar como coordinador. Además de los seriales anteriores se configura
los seriales (DH) DESTINATION ADDRESS HIGH este valor va por defecto para los
módulos Xbee, (DL) DESTINATION ADDRESS LOW, es el serial del módulo Xbee que
46
se desea colocar en modo Router esos seriales se puede observar por detrás de los módulos
Xbee S2.
Figura 22. Configuración en modo Router del Xbee
4.1.7 Configuración de comunicación Micro controlador-Xbee
La comunicación entre el micro controlador y el Xbee S2, después de realizar la
configuración de la red de Xbee, se configura el microcontrolador de acuerdo a las
especificaciones técnicas entregadas por el fabricante, para este proyecto se revisa el Data
Sheet del microcontrolador PIC 18F4550, donde primero se debe configurar las
interrupciones por recepción que se encuentran en los siguientes registros, RCON en el bit
IPEN( Interrupt Priority Enable bit ) colocando un “0” lógico deshabilitando las prioridades
de las interrupciones que para realizar el salto a las interrupciones en el banco ORG
0X0008, INTCON, en los bits GIE ( Global Interrupt Enable bit ) se habilitan las
47
interrupciones y PEIE (Peripheral Interrupt Enable bit )colocando en “1” lógico por último
el PIE1 en el bit RCIE con “1” lógico EUSART (Receive Interrupt Enable bit) donde se
habilita la comunicación del microcontrolador EUSART (Enhanced Universal
Synchronous Asynchronous Receiver Transmitter).
EUSART se habilita configurando los siguientes registros TXSTA, RCSTA Y
BAUDCON, En el registro TXSTA donde se habilita la transmisión, se programa en “1”
lógico TXEN (Transmit Enable bit) y BRGH (High Baud Rate Select bit) con esta
configuración la comunicación es asíncrona con 8 bit de transmisión y alta velocidad de
baudios, el registro RCSTA para la habilitación de la recepción en el microcontrolador, se
configuran los registros, RX9: 9-Bit Receive Enable bit que en “0” lógico es recepción con
8 bits, CREN: Continuous Receive Enable bit en “1” lógico habilita la recepción en modo
asíncrono, ADDEN: Address Detect Enable bit en “1” lógico, FERR: Framing Error bit y
OERR: Overrun Error bit en “0” lógico se deshabilita el error por sobrecarga.
La velocidad de transmisión se configura a 9600 baudios igual a la configuración en X-
CTU para el Xbee S2, en el microcontrolador se configura según la tabla del Data Sheet,
teniendo en cuenta el bit de paridad y la frecuencia de oscilación interna, donde arroja un
valor en decimal que se carga al registro SPBRG para el proyecto el valor en decimal es 25
y se puede comprobar en la Tabla1 que se muestra a continuación.
Tabla 1. Valores en decimal para configurar la velocidad de comunicación (electrónica, 2014).
48
El código de configuración del microcontrolador para la habilitación del EUSART en
assembler se muestra a continuación donde se observa la forma de cargar el valor obtenido
de la Tabla1 al registro SPBRG, y la configuración de los registros de comunicación en el
microcontrolador:
lista de
Instrucciones Descripción EJEMPLO
BCF
Pone un cero en el bit del número del registro
seleccionado, Se utiliza para la configuración de
puertos del microcontrolador y para la ejecución de
rutinas
BCF PORTB,1
BSF
Pone un uno en el bit del número del registro
seleccionado, Se utiliza para la configuración de
puertos del microcontrolador y para la ejecución de
rutinas
BSF PORTB,6
MOVLW Carga el valor asignado en L a W, se utiliza para
cargar variables a W MOVLW .25
MOVWF Carga a F el valor contenido en W MOVWF SPBRG
BTFSS
Si el bit número b de f está en uno, la instrucción que
sigue a esta se ignora y se trata como un NOP. En este
caso, y solo en este caso, se ejecuta la acción que se
desea
BTFSS PORTB,6
BTFSC Si el bit numero b de f es nulo, la instrucción que
sigue a esta se ignora y se trata como un NOP. En este
caso, y solo en este caso,
BTFSC PORTB,5
GOTO Genera un salto en el código a la dirección cargada en
el Pic
GOTO
PROGRAMA
CALL llama a la subrutina situada en la dirección cargada en
el PIC
CALL
ADELANTE
RETURN
Carga el PIC con el valor que se encuentra en la parte
superior de la pila, efectuando así una vuelta a la
subrutina.
RETURN
SLEEP Pone el circuito a dormir con parada del oscilador. Su
consumo es inferior. SLEEP
SUBWF Sustrae el contenido de W del contenido de f, y
almacena el resultado en W si d=0 y en f si d=1. SUBWF DAT,W
RETFIE Autoriza de nuevo las interrupciones colocando 1 el
bit GIE, RETFIE FAST
CLRF Pone el registro W a cero CLRF PORTB
TRIS Carga el contenido de W en el registro TRIS del
puerto f. BSF TRISB,6
49
Tabla 2. Lista de instrucciones usadas PIC18F4550
4.1.7.1 Configuración envió y recepción de datos
Después de la configuración de la comunicación se necesita establecer el código para
enviar y recibir los datos, para ellos se guardaran las siguientes variables en el respectivo
banco del micro controlador, DATO_TX EQU 0X23, DATO_RX EQU 0X24, el dato que
se desea enviar es cargado en decimal en la variable indicada anteriormente, las funciones
de la línea del código están especificadas en la tabla 2 además el código completo del
funcionamiento del robot se puede observar en el Anexo1.
MOVLW D'2'
MOVWF DATO_TX
CALL TRANSMITIR
CALL Retardo_10ms
RETURN
La subrutina TRANSMITIR verifica el registro PIR1 en el bit 4, que es una bandera que
comprueba si está vacío el pin de TX y es posible realizar la transmisión, con un pequeño
retardo entre envió se transmiten los datos deseados, solo modificando el valor en decimal
y creando una subrutina por cada dato que se desea enviar, cuando es llamado sea
necesario. El código de la rutina se muestra a continuación.
BTFSSPIR1,4
GOTO TRANSMITIR
MOVWF TXREG
RETURN
4.1.7.2 Recepción de datos
Cuando el dato se recibe el programa salta al banco de interrupciones del microcontrolador,
que fue habilitado anteriormente, y se tiene un programa para decodificar el dato, primero
50
se verifica si la interrupción fue por una recepción de datos, por medio del código SUBWF
es una operación matemática, una resta este comando fue usado como codificador de la
información recibida en cada tarjeta se confirma si el dato recibido es el esperado y si no
salta a la siguiente línea de código , donde en el registro STATUS en el bit 2 ejecuta la
operación y solo si el dato es el correcto ejecuta el programa. A continuación se muestra un
ejemplo para la verificación del dato si es un 1 decimal el robot debe ir hacia ADELANTE
según como está la rutina y si no es 1 el programa salta al FIN y no ejecuta ningún código
quedando en espera, las líneas de códigos se pueden ver su descripción en la tabla 2.
BTFSS PIR1,RCIF
GOTO FIN
BCF PIR1,RCIF
MOVF RCREG,W
MOVWF DAT
MOVLW D‟1‟
SUBWF DAT,W
BTFSS STATUS,2
GOTO CERO
CALL ADELANTE
GOTO FIN
FIN
RETFIE FAST
4.1.8 Protocolo de Comunicación
Para realizar la comunicación entre los módulos Xbee configurados como Router se
necesita crear una norma para el envío y recepción de datos, ya que la comunicación directa
entre router y router no es posible y toda la información debe ser direccionada al
coordinador que es capaz de comunicarse con cualquier punto de la red. Este protocolo fue
establecido con números decimales del “0” al “12” donde respectivamente en cada micro
51
controlador está programado según el dato que recibe la información programada se puede
observar en la Tabla 3, en donde se muestra los datos enviados y recibidos por cada Robot
y simultáneamente se muestra que acciones deben tomar los demás Robots, esto con el fin
de sincronizar los movimientos de los robots para que sean semiautónomos.
PROTOCOLO DE COMUNICACIÓN
CARRO A COORDINADOR CARRO B ROUTER CARRO C ROUTER
TX RX TX RX TX RX
0 :::::::::::::::::: :::::::::::::::::: ::::::::::::::::::: ::::::::::::::::::: ::::::::::::::::::: :::::::::::::::::::
1 ::::::::::::::::::: ::::::::::::::::::: ::::::::::::::::::: ::::::::::::::::::: ::::::::::::::::::: :::::::::::::::::::
2 Transmite 2 Recibe 2 Término
secuencia 1 ::::::::::::::::::: :::::::::::::::::::
Arranca
secuencia 2
3 Transmite 4 Recibe 3 ::::::::::::::::::: ::::::::::::::::::: Término
Secuencia 2 :::::::::::::::::::
4 ::::::::::::::::::: ::::::::::::::::::: ::::::::::::::::::: Levanta
Carga :::::::::::::::::::
Levanta
Carga
5 Transmite 6 Recibe 5 Arranca
Secuencia 3 ::::::::::::::::::: ::::::::::::::::::: :::::::::::::::::::
6 ::::::::::::::::::: ::::::::::::::::::: ::::::::::::::::::: Arranca
Evitar
obstáculos ::::::::::::::::::: :::::::::::::::::::
7 Transmite 7 Recibe 7 Atrás Y Carro
C Adelante ::::::::::::::::::: :::::::::::::::::::
Mueve hacia
Adelante
8 Transmite 8 Recibe 8 Parar y Carro
C Parar ::::::::::::::::::: ::::::::::::::::::: Parar
9 Transmite 9 Recibe 9 Adelante y
Carro C Atrás ::::::::::::::::::: ::::::::::::::::::: Atrás
10 Transmite 10 Recibe 10 Giro Derecha y
Carro C Giro Derecha
::::::::::::::::::: ::::::::::::::::::: Giro Derecha
11 Transmite 11 Recibe 11 Giro Izquierda
y Carro C Giro Izquierda
::::::::::::::::::: ::::::::::::::::::: Giro
Izquierda
12 Transmite 12 Recibe 12 Bajar Carga Baja Carga ::::::::::::::::::: Baja Carga
Tabla 3. Protocolo de comunicación
52
En la Tabla 3 se muestra el protocolo de comunicación entre la red de Xbee, además de
realizar el protocolo para colocar las normas y secuencias de envío y recepción de datos, se
debe programar el Microcontrolador con ciertos comandos para ejecutar las secuencias
planteadas. Para observar la programación realizada además del código que se encuentra en
el anexo 1, se puede observar el diagrama de flujo de la ilustración 1. En este se puede ver
el funcionamiento y configuración de la secuencia del robot A, configuración de puertos,
configuración de la comunicación con EUSART e inicio de la secuencia, con el uso del
sensor frontal.
Ilustración 1. Diagrama de flujo del Robot Azul.
53
En la ilustración 2 y 3 se observa el proceso de cifrado de datos recibidos en la
comunicación de los robots, en donde se muestra las instrucciones básicas para cada
número recibido, el proceso de identificar el dato, que se realiza es tomando el dato
recibido y mediante el código “status” realizar una comparación para saber si el dato es el
deseado y si no restar “1” y preguntar por el siguiente dato, así sucesivamente hasta
encontrar el dato que se desea y ejecutar la tarea asignada a ese dato en específico.
Ilustración 2. Diagrama de flujo del Robot Rojo.
54
El carro C o identificado con color amarillo al terminar su tarea envía el dato “2” para que
el robot B inicie su secuencia, en la ilustración 2 se puede observar que cuando el valor
recibido es un “2” el robot ejecuta la rutina de búsqueda de la carga, cuando es encontrada
el robot B envía el dato “4” y ejecuta la acción de levantar la carga, como el robot C dentro
de la programación tiene asignado para ese número levantar la carga, la acción se realiza al
mismo tiempo y sincronizado, de esta misma manera se ejecutan las acciones de parar,
girar, ir hacia adelante o atrás.
Ilustración 3.Diagrama de flujo Robot Amarrillo
55
4.2 Etapa de control
El control en estos tipos de proyectos es fundamental siendo el centro de programación o de
mando, donde en el microcontrolador se encuentran los códigos y rutinas programadas
dependiendo de la situación, en esta etapa se toman las decisiones en las que se puede
observar el correcto funcionamiento de la comunicación y movimiento de los robots, para
desarrollar la cooperatividad los microcontroladores de los tres robots deben estar
sincronizados. Por tal razón se verifica que estén en la misma frecuencia de
funcionamiento interno y que ejecuten las tareas simultáneamente para tener movimientos
coordinados.
4.2.1 Microcontrolador
Los micro controladores son circuitos integrados digitales monolíticos que contiene los
elementos de un procesador digital secuencial, tienen la capacidad de ejecutar las ordenes
grabadas en su memoria, estos están conformados por diferentes bloques los cuales
cumplen una tarea específica, también incluyen en su interior tres principales unidades
funcionales de una computadora las cuales son:
Unidad central de procesamiento
Memoria
Periféricos de entrada/salida
En la figura 23 se observa el microcontrolador trabajado en el proyecto de la marca
Microchip de referencia PIC18F4550 el cual ofrece múltiples soluciones ingenieriles por
poseer 44 pines y minimiza el diseño por su característica de ser de superficie. (electrónica,
2014)
56
Figura 23. Micro controlador PIC18F4550 de superficie (electrónica, 2014).
4.2.1.1 Características del PIC18F4550
Este micro controlador dispone de las siguientes características técnicas por lo cual fue
escogido, consta de una memoria de programa denominada memoria flash interna la cual
dispone de 32.768 bytes, este también incluye almacenamiento de instrucciones y datos,
puede ser escrito o leído mediante un programador externo Pickit 3.
La memoria RAM de datos está formada por una memoria SRAM interna de 2048 bytes en
la que están incluidos los registros de función especial los cuales son almacenar datos de
forma temporal durante la ejecución del programa y poder ser escrita tanto leída en tiempo
de ejecución mediante diversas instrucciones. La memoria EEPROM de datos es una
memoria no volátil de 256 bytes que compone a este micro ya que cuenta con
almacenamiento de datos que se deben conservar aun en ausencia de tensión de
alimentación y puede ser escrita o leída en tiempo de ejecución a través de registros.
(electrónica, 2014)
4.2.1.2 El procesador o UCP
Es el componente más importante del micro controlador por lo que en este se determinan
las principales características en los niveles de hardware y software, su función principal
consiste en direccionar instrucciones en la memoria que pueden ser la decodificación o
57
ejecución de operaciones, este consta de tres tipos de orientaciones sobre la arquitectura las
cuales son: CISC computadores de juego de instrucciones complejo, con más de 80
instrucciones las cuales requieren muchos ciclos para su ejecución, RISC computadores de
juego de instrucciones reducida, el juego de instrucciones es menor al de CISC pero por su
rapidez permite optimizar el hardware y software del procesador, SISC computadores de
juego de instrucciones específicas es el más reducido ya que sus instrucciones se adaptan a
una necesidad especifica. (electrónica, 2014).
4.2.1.3 Conversor Análogo/Digital
El micro controlador PIC18F4550 cuenta con el Conversor análogo digital que es de gran
ayuda para leer datos de sensores análogos y tener una cuantificación en los mismos de
diferentes variables. (electrónica, 2014).
4.2.1.4 Puertos de comunicación
El microcontrolador con el fin de poder realizar transmisión y recepción de datos hacia
otros dispositivos cuanta con varios protocolos para realizar la comunicación, entre ellos se
cuenta con USART que es un adaptador de comunicación serial síncrona o asíncrona, otro
protocolo es CAN área de red controlada, donde para el caso del PIC 18F4550 y la tarjeta
de comunicación Xbee S2, cuentan con el protocolo USART, este se adapta a las
necesidades del proyecto, el microcontrolador se comunica por los pines 1 para recepción
y 44 para transmisión. (electrónica, 2014)
4.2.2 Actuadores
En la etapa de control después de tener el centro de mando con sus funciones y tareas
programadas, el paso siguiente es la ejecución de las mismas, para este proyecto los
actuadores son motores, que según las órdenes del micro controlador, realizan giros en
sentido de las manecillas del reloj o en contra.
58
4.2.2.1 Motorreductor
Un Motorreductor es un tipo de motor dc que transforma energía eléctrica en movimiento
rotacional, sus características de funcionamiento son de 9v de polarización y entrega
aproximadamente 150 rpm, en la figura 24 se puede observar el Motorreductor utilizado,
fue escogido por que funciona en polarización directa o inversa, el cambio de polarización
se logra por medio de la utilización de puente H, el cual según la orden del
microcontrolador acopla el voltaje del motor.
El funcionamiento con voltaje continúo otorga estabilidad en el chasis ya que la velocidad
del motor es constante y homogénea, además este tipo de actuadores son de fácil
instalación, programación y acople con diferentes tipos de llantas.
Figura 24. Motorreductor a 9 v con los soportes.
Los soportes mencionados en la figura 24 tienen las siguientes dimensiones, largo 2.5 cm,
ancho 2 cm y 4mm de profundidad, con un núcleo en el que se acopla el motor con unas
medidas de 1.3 cm de largo por 1.3 de ancho con la misma profundidad, estos soportes se
realizaron en acrílico transparentes.
4.2.2.2 Puente H
Es un circuito integrado electrónico que permite a los motor reductores girar en ambos
sentidos, y son muy útiles para este tipo de proyectos, el dispositivo escogido es el de
59
referencia L293D el cual se puede observar en la figura 25, incluye cuatro circuitos
individuales los cuales se pueden usar en conjunto para controlar dos motores manejando
voltajes de potencia en el rango de 4.5 V a 36 V. En este caso el manejo de los carros será
bidireccional, teniendo en cuenta que estos tendrán un frenado rápido y con posibilidad de
implementar fácilmente el control de velocidad.
Figura 25. Estructura de un puente H de referencia L293D.
4.2.3 Sensores
Una etapa fundamental para obtener un adecuado control de cada robot es la utilización de
sensores los cuales asocian la programación con las fuentes externas, para este proyecto se
utilizó tres sensores infrarrojos para la detección de objetos en el entorno y enviar la señal
al micro controlador para ejecutar las órdenes precisas para que cada robot esquive los
obstáculos propuestos.
El funcionamiento del sensor depende de los rayos infrarrojos que entran dentro
del fototransistor donde encontramos un material piroeléctrico, natural o artificial como,
60
cuarzo, turmalina y otros cristales iónicos, normalmente formando una lámina delgada
dentro del nitrato de galio, nitrato de Cesio derivados de la fenilpirazina, y ftalocianina
de cobalto.
El sensor de proximidad el cual funciona como transductor donde este señales u objetos, se
conocen tres tipos de sensores entre esos están, los capacitivos consisten en señalar cambios
de estado dependiendo de la variación del estímulo de un campo eléctrico, los inductivos
estos trabajan generando campo magnético el cual detecta perdidas de corriente en el
mismo campo, estas pérdidas se presentan cuando el sensor detecta un objeto férrico y no
férrico y por último los fotoeléctricos, donde el circuito de salida utiliza la señal del
receptor para amplificarla y adaptarla para poder ser entendida por el sistema por ejemplo
el infrarrojo antes mencionado.
Los sensores infrarrojos pueden ser:
Sensor infrarrojo tipo barrera: El sensor tipo emisor-receptor se compone
principalmente de un componente emisor con un haz de luz en el espectro del
infrarrojo y otro componente receptor. Se establece un área de detección donde el
objeto a detectar es reconocido cuando el mismo interrumpe el haz de luz y el
emisor no percibe señal y entrega como salida una señal que es casi 0V. Estos
sensores operan de una manera precisa cuando el emisor y el receptor se encuentran
en la misma trayectoria, para tener una correcta lectura de datos de los objetos, el
funcionamiento del sensor infrarrojo de barrera se ve en la Figura 26.
61
Figura 26. Tipos de configuración para sensores infrarrojos (electrónica, 2014).
Sensor auto réflex: La luz infrarroja viaja en línea recta, en el momento en que un
objeto se interpone, el haz de luz rebota contra este y cambia de dirección
permitiendo que la luz sea enviada al receptor y el elemento sea censado, un objeto
de color negro no es detectado ya que este color absorbe la luz y el sensor no
experimenta cambios.
Sensor réflex: Tienen el componente emisor y el componente receptor en un solo
cuerpo, el haz de luz se establece mediante la utilización de un reflector. El objeto
es detectado cuando al reflectar un haz de luz con un objeto el transistor del emisor
recibe la energía y entrega un voltaje indicando que choco con un objeto. Para el
proyecto de robots cooperativos se implementó este tipo de sensor ya que puede
detectar un objeto y además se puede elegir la distancia a la que se quiere leer el
objeto, como se observa en el circuito de la figura 27, el voltaje cuando la señal es
recibida en el fototransistor se compara con el uso de un amplificador operación en
modo comparador, que entrega una salida en alto cuando se detecta obstáculo, el
uso de los potenciómetros son para variar la distancia y además para calibrar el
sistema dependiendo de la luz ambiente.
62
Figura 27. Circuito Sensores de proximidad para cada robot cooperativo.
4.3 Diseño de Tarjetas Impresas
Se realizó el diseño de las tarjetas para los robots, en las que se incluye las etapas de
comunicación, control, sensores y la etapa potencia, en la figura 28 se observa el diseño en
vista superior, en donde están los siguientes componentes, Micro controlador PIC18F4550
y sus pines del Programador, Xbee S2, Reguladores de Voltaje para los Motores, Xbee, la
conexión para acoplar el sistema de control con la etapa de potencia, como se puede
observar en la figura 29 en vista superior, estos diseños se desarrollaron en el software
Eagle layout.
63
Figura 28A. Diseño Tarjeta de control Vista Superior
En la figura 28B se observa una corrección de la tarjeta de control vista superior en la cual
faltaron tres pistas para el uso del programador Pickit 3 estas entradas del programador son
(PGM con el puerto B5 del microcontorlador, PGC con el puerto B6 Y PGD con el puerto
B7), esa corrección se realizó en el software EAGLE y en el físico, esto con el fin de poder
programar el Microcontrolador.
Figura 28B. Corrección de tarjeta control Vista superior
64
Figura 29. . Diseño de Tarjeta Etapa de potencia vista superior.
A partir del diseño de la etapa de control, realizado en el software Eagle layout el cual se
observa en la figura 28, se implementó la impresión del circuito en fibra de vidrio como se
puede ver en la figura 29, donde quedaron realizadas las conexiones entre sus dispositivos,
para posteriormente proceder a soldar cada componentes.
Tal como se explicó en el diseño de las tarjetas, se realizó la impresión del segundo circuito
en fibra de vidrio en la que se incluye la etapa potencia, el cual se puede observar en la
figura 31, con sus respectivas pistas para así realizar posteriormente proceder a soldar sus
componentes.
Figura 30. Circuito Impreso Etapa de control
65
Figura 31. Circuito Impreso Etapa de Potencia.
4.3.1 Soldadura de componentes en la Tarjetas Impresas
Después de obtener el diseño de las tarjetas se realizó el siguiente paso que consiste en
soldar cada uno de los componentes electrónicos a la respectiva tarjeta, en la figura 32 se
observa la tarjeta para el control de potencia de los motores con el integrado L293D, y
también se puede observar los sensores infrarrojos el emisor y receptor colocados en la
tarjeta soldados en modo reflectivo, para el funcionamiento de los mismos se implementó el
circuito de la figura 27 que es usado con amplificadores operacionales LM358 que son
configurados como comparadores para variar la sensibilidad de los sensores de 1cm a 5cm
con el uso de los potenciómetros, en esa tarjeta además se puede observar las salidas de los
motores y la alimentación a 9 voltios.
66
Figura 32. Componentes Soldados en vista superior
En la tarjeta de control de la figura 33 se puede observar los componentes electrónicos
soldados, el micro controlador de superficie PIC18F4550 que es el encargado de controlar
los movimientos y la comunicación de los robots cooperativos, en este se programa las
subrutinas de funcionamiento de los robots, también se puede ver el módulo Xbee S2 el
cual está encargado de la comunicación entre micro controladores por medio de radio
frecuencia, en esta se encuentra el oscilador externos en un intervalo 4 - 20 MHz de uso
opcional.
Además se puede observar otros componentes como el Regulador de voltaje para micro
controlador y para el Xbee, el pulsador tiene la función de Reset para reiniciar el micro
controlador, por último se puede ver la entrada para el programador Pickit 3 y los pines de
alimentación de la tarjeta.
Figura 33. Componentes Soldados vista superior
67
4.4 Etapa Mecánica
4.4.1 Chasis del robot
El chasis inicialmente fue ensamblado a partir de las piezas que se observan en la figura 34,
al realizar el ensamblaje se tuvo en cuenta el espacio para acoplar los circuitos,
montacargas y las baterías y así satisfacer los objetivos propuestos, ya que proporciona
estabilidad.
Figura 34. Kit de tracción tipo oruga.
4.4.2 Estructura mecánica
Esta estructura fue diseñada para mejorar el desempeño de los robots en el momento de
cumplir con su tarea, se utilizó un kit de tracción tipo oruga, el cual proporciona mayor
agarre y estabilidad en diferentes tipos de suelos y el chasis como se ve en la figura 35
cuenta con espacio suficiente para acoplar los circuitos electrónicos y el montacargas, este
sistema de montacarga es el encargado de recoger, elevar y desplazar de forma segura y
precisa los diferentes objetos que se encuentran en la pista.
68
Figura 35. Chasis construido del kit tracción tipo oruga.
4.4.3 Diseño de carrocería de los robots
La carrocería de los robots está construida en acrílico de color hielo opan en la parte
inferior del robot y verde botella en la parte superior con un grosor de 2mm, se cortaron
piezas de diferentes dimensiones, estas se pueden ver en la tabla 2.
Medidas (Cm) Cantidad
Hielo Opan
12 x 3 6
12 x 18 3
18 x 3 6 Tabla 4. Dimensiones de la carrocería
Los robots cooperativos después del proceso de ensamblaje y construcción con las piezas
mencionadas en la tabla 3, se acoplaron las diferentes etapas mencionadas como el sistema
de montacargas de la figura 38 y las tarjetas impresas con sus respectivos componentes
electrónicos que son ensamblados en el chasis del robot que se puede ver en la figura 35,
todo el sistema construido en su etapa final se puede observar en la figura 36 con vista de
frente.
69
Figura 36.Robots Montacargas vista de frente.
Figura 37. Robots Montacargas vista superior
4.4.4 Sistema Montacargas
El sistema de montacargas consta de un Motorreductor de 100 rpm el cual esta acoplado a
un piñón de 13 mm de diámetro con 15 dientes como se puede observar en la figura 38, la
cremallera tiene las siguientes dimensiones 10 cm de largo por 2cm de ancho con 32
dientes. Por tal razón el sistema tiene una tolerancia de movimiento de 10 cm. El sistema
que se muestra es para un solo robot para los demás las dimensiones son idénticas.
70
Figura 38. Sistema de montacarga montado.
A partir de la ecuación para la transferencia de potencia entre engranajes, la potencia
transmitida depende del radio de los engranajes, del número de dientes de allí se deduce el
torque entregado, estas ecuaciones son utilizadas generalmente para aumentar o disminuir
el torque o la velocidad angular, pero en este caso se pretende transmitir la misma potencia
del motor a los piñones y a su vez a las cremalleras, está razón de transmisión se puede
comprobar con la Ec 1.
Siendo T1 y T2 el torque, para T1 es decir el torque del motor, que es utilizado en el
montacarga tiene un torque de 4 con 100 rpm, el torque que se le entrega al eje es el
mismo con una perdida mínima por la fricción de la correa, además el mismo torque se da
ya que el piñón acoplado tienen las mismas dimensiones y no se modifica el número de
dientes, esta se pueden ver en la figura 38.
71
4.4.5 Diseño de pista, carga y obstáculos
La pista en la que se realizan las pruebas y las rutinas programadas, tiene las siguientes
dimensiones 2 metros de largo, 1.20 de ancho, con 5 mm de grosor en madera, en la que
se colocan los tres robots en un lugar demarcado con sus respectivas cargas, en la Figura
39 se pueden ver las cargas unidas pero estas se pueden separar en cualquier momento para
que se puedan llevar individualmente o en grupo, cada cubo tiene 7cm de largo y 7cm de
ancho , la carga será llevada a través del recorrido evitando los obstáculos que se
encuentran en la pista y entregada en un punto específico demarcado.
Figura 39. Cargas para transportar por la pista
72
Figura 40. Pista de los Robots
5. PRESENTACIÓN Y ANÁLISIS DE RESULTADOS
Se realizó el proyecto de los robots cooperativos desarrollando los circuitos integrados y la
programación del micro controlador con la comunicación del Xbee en el adaptador Dongle
como coordinador recibiendo datos desde la tarjeta programada con una secuencia de envió
de datos decimales desde el número “0” hasta el “10”, comprobando así que la
programación del micro controlador para envió de datos se realizó satisfactoriamente.
Posteriormente se realizó la prueba de comunicación entre Xbee configurado como router
en el adaptador y otro módulo Xbee como router colocado en la tarjeta con una
programación similar a la mencionada anteriormente dando como resultado que entre router
y router no se pude realizar satisfactoriamente la comunicación, aunque estén presente en la
misma red si los datos no son enrutados por el coordinador no se puede realizar la
comunicación entre router.
Mediante las pruebas realizadas en laboratorio con los robots funcionando se obtuvieron
ciertos inconvenientes en la distancia de cobertura de los módulos de comunicación. En los
datos del fabricante se menciona una cobertura de 100 metros en línea recta pero a realizar
las pruebas en el laboratorio se pierde cobertura por esa razón se adquirieron unas antenas
omnidireccionales con 2dBi de ganancia, ¼ de onda Monopolo que al incorporarse al
módulo se tiene la cobertura de comunicación deseada.
En el momento de realizar pruebas a los robots en movimiento se observó que por la
estructura tipo oruga otorga buen agarre y fuerza en la pista construida el único
inconveniente que se tuvo en el movimiento de los robots en línea recta fue una leve
desviación hacia la derecha siendo corregida con el sensor lateral 2, manteniendo la línea
recta con el uso del sensor.
73
Al realizar las pruebas del sensor infrarrojo para evitar obstáculos se concluyó que con una
superficie más clara para la reflexión se tiene mejores resultados que con una superficie
oscura por tal razón se decidió pintar los obstáculos de color blanco.
La primer secuencia realizada en la pista con los obstáculos que se pueden observar en la
figura 40, arrojo los siguientes resultados, con el robot A que se identifica con color azul,
el tiempo en ejecutar la secuencia desde que coge la carga y la deja en el punto indicado fue
de 55 segundos siendo el mejor tiempo. Al realizar varias pruebas se notó que el tiempo en
ejecutar la secuencia aumento a 73 segundos así sucesivamente por el desgaste normal de
las baterías. La distancia total desde el punto de inicio hasta el final es de 240cm, y la
distancia de inicio a recoger la carga es de 15cm.
La segunda secuencia realizada con los robots B y C (rojo, amarillo), los cuales ejecutaran
un desplazamiento desde un punto de partida, el carro C hará su recorrido hasta detectar la
carga, en el momento de detectar la carga este enviara el dato, al recibir el dato el carro B
inicio su secuencia la cual consiste en girar 180° grados para detectar los obstáculos con el
sensor trasero y así poder situarse donde se encuentra la otra carga como se observa en la
Figura 41. Después de estar alineados los robots B y C inicia la secuencia de levantamiento
de las cargas para así transportarlas a su destino. Al realizar varias pruebas se notó que el
tiempo en ejecutar la secuencia 60 segundos así sucesivamente por el desgaste normal de
las baterías. La distancia total desde el punto de inicio hasta el final es de 280 cm, y la
distancia de inicio a recoger la carga es de 15cm.
74
Figura 41. Robot B y C levantando la carga
Por último se realizara la prueba con los tres robots A, B y C los cuales se desplazaran
desde sus puntos de finalización, hasta llegar al punto de encuentro donde tomaran las
cargas como se ve en la Figura 42 que transportan a su destino final así llevar acabo su
secuencia.
Figura 42. Robots A, B y C levantando la carga.
75
6. RECOMENDACIONES
En la construcción del montacargas, el sistema que se escogió fue un soporte para
sostener el eje, el cual lleva una polea que tendrá una correa, esta fue adaptada a
otra polea que estaba en el motor y se puede observar en la figura 43, pero al
momento de hacer el funcionamiento del sistema, se tuvo un inconveniente en el
momento de levantar la carga se quedaba frenada la polea que iba en el eje. Por eso
se decidió cambiar el sistema de levantamiento de la carga por un piñón, y una
cremallera donde ira ajustada en dos soportes con una ranura 2 milímetros
profundidad para que la cremallera quede adaptada ese soporte ese sistema se puede
observar en la figura 38.
Figura 43. Sistema de Montacarga
Las pilas que se utilizaron al inicio del proyecto fueron, unas GP recargables de
8.4V con una corriente 170 mAh, debido al número de pruebas realizadas con los
robots se tuvo el inconveniente, que el consumo de corriente de los motores
utilizados descargaba la pila en menos de una hora. Por tal razón se adquirieron las
baterías Tb-Plus con 12V y 1.3Ah de corriente ya que esta batería tiene una
duración de descarga de 20 horas.
76
En las pruebas se tuvieron inconvenientes con los sensores infrarrojos ya que estos
son afectados por temperaturas altas y por intensidad de la luz del ambiente esto
producida que el sensor fuera más sensible y se activaran continuamente las
órdenes. Es recomendable trabajar en una zona con poca luz y una temperatura
estable.
Es recomendable que la carga del robot amarrillo y rojo tenga un gran espacio para
acoplar el montacarga, de esta manera se logra tener un rango de 17cm para
introducir los dos montacarga y así se pudo levantar y transportar la carga
satisfactoriamente hasta su destino final. En el inicio de las pruebas el rango de la
carga fue 12cm y generaba muchos errores el momento de acoplar los montacargas,
de 10 pruebas realizadas solo 2 acoplaban la carga, y con la modificación realizada
de ampliar el rango de 10 pruebas realizadas 7 acoplaban la carga correctamente.
Los robots al momento de iniciar la búsqueda de los obstáculos se deben cuadrar en
la misma posición de salida, ya que si se ubican en una posición diferente varía el
resultado de los movimientos en la secuencia. En donde el rango de variación para
la posición del robot es de un 1cm, si el robot es ubicado en ese rango el resultado
de la secuencia es satisfactorio y sino el robot pegara con los obstáculos.
7. CONCLUSIONES
Los tres robots cooperativos fueron capaces de esquivar los obstáculos propuestos en la
pista, y llevaron la carga desde el punto de inicio hasta el final sin generar ningún daño a la
carga, usando las estrategias para controlar el movimiento guiándose por los sensores
infrarrojos puestos en la carrocería de cada robot, cumpliendo con las tareas propuestas
para cada robot.
77
El micro controlador escogido cumplió con las expectativas frente al funcionamiento de su
unidad central de procesamiento ya que ejecuto todas las secuencias y ordenes programadas
sin genera retrasos ni perdidas de información.
El módulo Xbee S2 el cual fue usado en el proyecto cumplió con las metas establecidas ya
que su rango de comunicación por radiofrecuencia un margen de error mínimo, gracias a
sus diferentes topologías que se pueden configurar para que los tres robots se comunicaran
entre sí, para el caso del proyecto de robots cooperativos la topología en estrella con dos
router y un coordinador, es la ideal para este tipo de proyectos donde el tráfico de
información es bajo y el número de dispositivos de la red es pequeña, por tal razón la
información llega clara y sin perdidas.
Los sensores infrarrojos que fueron usados en el proyecto funcionaron adecuadamente,
aunque hay que tener en cuenta que la capacidad reflectiva cambia de pendiendo del color
colocado, en los obstáculos de color blanco el sensor tiene mejor comportamiento que en la
carga de color azul ya que los colores oscuros no reflectan la misma cantidad de energía,
por tal razón se debe calibrar correctamente cada sensor dependiendo del uso que se le vaya
a dar para tener un óptimo desempeño.
8. BIBLIOGRAFIA
A., G. J. (1993). Estimación de la Posición de un Robot Móvil. Dpto. de Ingeniería de
Sistemas y Automática. Malaga: Universidad de Málaga.
AGÜERO Carlos, C. J. Robots Móviles Coordinados. Madrid España.
Andrés, O. (22 de Febrero de 2014). Guía del Usuario XBEE Series 2. Obtenido de
www.olimex.cl
Andrés, S. S. (2002 ). Avances En Robotica y Visión por Computador. La mancha :
Universidad de Castilla.
ANGULO USATEGUI, J. M. (2012.). Microbótica de la Tecnología, Aplicaciones y
Montaje Práctico. Madrid: Ed. Thompson.
78
ANGULO USATEGUI, J. M. (2005). Microbótica de la Tecnología, Aplicaciones y
Montaje Práctico. Madrid: Thompson.
Aníbal, O. B. (2001). ROBOTICA Manipuladores y Robots Moviles . Barcelona:
MARCOMBO .
BALCH Tucker, B. G. (14 de marzo de 2014). Instituto Tecnológico de Georgia. Obtenido
de https://smartech.gatech.edu/.
Beltran Gonzales Edwin Andrés. (2011). Transporte Cooperativo De Objetos Con Una
Plataforma Móvil En Un Entorno Estructurado. Bogota: Universidad Distrital Francisco
José.
BREÑOSA José, G. P. (13 de Noviembre de 2013). Robots de Seguridad Civil. Obtenido
de http://www.disam.upm.es
C. Agüero, V. M. (2003). Routing protocol for mobile robotics. Madrid: In International
ConferenceonAdvancedRobotics.
Cadena Contreras Raul Hernando, M. B. (2011). Diseño y Construcción de una plataforma
robótica cooperativa. Bucaramanga: Universidad Industrial de Santander.
Caloud P, C. W. (2004). IndoorAutomationwhitmany robots. Japan.
Correa Niño Daniel Alfonso, S. C. (2012). ROBOTS DE SERVICIO COOPERATIVOS.
Bogota : Universidad Santo Tomas.
Darío, M. O. (20 de Febrero de 2014). MINI-ROBOTS Y MICRO-ROBOTS. Obtenido de
http://eav.upb.edu.co/banco/sites/default/files/files/MiniRobots.pdf
DÍAZ GONZALEZ EDMUNDO, L. S. (15 de Diciembre de 2013). Robótica BEAM. “Una
manera diferente de ver la robótica”. Obtenido de
http://www.uco.es/~i02digoe/BEAM%20WEB/BEAM.htm
electrónica, D. d. (20 de abril de 2014). Microcontrolador PIC18F4550. Valencia.
Electrónica, D. d. Microntrolador PIC4550. Universidad Politécnica de Valencia.
Esteban, O. RED DE SENSORES ROBOTICOS (RSR), XBEE Y ZIGBEE, . Bogota:
Universidad Nacional de Colombia.
FERNANDA, P. M. (2011). Sistema micro controlado de presentación Visual para
mensajes instantáneos . Bogotá.
Jesus Merino, A. O. (2008). Robótica cooperativa e integración con sensores en el
ambiente Aplicaciones en entornos urbanos. Sevilla.
79
Jose Avelino Espeso, F. F. (2007). Seguridad en El trabajo. Lex Nova.
José, S. A. (28 de Marzo de 2014). Robots Enjambre. Obtenido de www.swarmanoid.org.
Luis Montoya, A. n. (2011). Robots cooperativos . Bogotá.
MAZA Iván, V. A. (2005). Cooperación helicóptero autónomo-robot móvil terrestre para
aplicaciones de búsqueda y localización. Sevilla: Escuela Superior de Ingenieros .
Medina Bello John Isaac. (2011). ELECTROCARDIÓGRAFO IMPLEMENTADO. Bogota.
Mellon, C. (20 de Marzo de 2014). Robot Minerva y Rhino. Obtenido de
www.cs.cmu.edu/minerva/about.html
Nicolas Violante. (2011). Evolucion de la robotica en el mundo. Ciudad de Mexico.
Raquel, E. R. (2009). Instituto de Investigación en Inteligencia Artificial . Barcelona.
RODRIGUEZ BORJA Mauricio Fernando, S. G. (2010). Diseño y Construcción de tres
MiniRobots Exploradores. Quito: Escuela Politécnica Nacional.
Sergi, B. (2003). Desarrollo de Robots Basados En El Comportamiento. UPC.
Somolino, J. A. (2002). Avances En Robotica y Vision por Computador . Universidad de
Castilla.
SYSTEM, P. W. (6 de abril de 2014). Kiva Systems . Obtenido de
www.kivasystems.com/about-us-the-kiva-approach/history
Vallejo Marcela., O. J. (25 de Enero de 2014). Sistemas multi-agente robóticos. Obtenido
de http://pisis.unalmed.edu.co.
WAYNE, T. (2003). Sistemas de Comunicaciones Electrónicas . Ciudad de Mexico:
Prentice Hall.
Zulueta, A. (2012). Robots Cooperativos para el guiado de Grupos de Personas en Zonas
Urbanas. España.
(s.f.). Obtenido de http://www.isa.cie.uva.es/~maria/sensores.pdf
GLOSARIO
80
Sensor, dispositivo electrónico, mecánico o químico que cuántica un atributo ambiental o
señales analógicas, devolviendo un nivel de señal eléctrica proporcional a su entrada.
IR Sensor, dispositivo electrónico capaz de medir la radiación electromagnética infrarroja
de los cuerpos en su campo de visión.
Codificadores de relación o encoders, se encargan del cifrado y codificación de los pasos
del motor para ayudar a establecer relaciones posicionales de los robots.
Xbee S2, dispositivo de comunicación y transmisión serial inalámbrica por medio de
radiofrecuencias.
Microcontrolador, circuito integrado programable, capaz de ejecutar las órdenes grabadas
en su memoria. Está compuesto de varios bloques funcionales, los cuales cumplen una tarea
específica.
Puente H, circuito electrónico que permite a un motor eléctrico DC girar en ambos
sentidos, avance y retroceso. Son ampliamente usados en robótica y como convertidores de
potencia.
Amplificadores operacionales, dispositivo electrónico que normalmente se presenta como
circuito integrado el cual tiene dos entradas y una salida.
Motorreductor, tipo de motor dc que transforma energía eléctrica en movimiento
rotacional.
ANEXOS
ANEXO 1 Código de Programación
; Inicia la Configuración del Micro
list p=18f4550
81
#include <P18F4550.inc>
#define MOTOR1 PORTD,4 ;habilitar puente h motor1
#define MOTOR1_A PORTD,5 ;salida A del motor1
#define MOTOR1_B PORTD,6 ;salida B del motor1
#define MOTOR2 PORTC,5 ;habilitar puente h motor2
#define MOTOR2_A PORTD,3 ;salida A del motor2
#define MOTOR2_B PORTC,4 ;salida A del motor2
#define MOTOR3 PORTD,7 ;habilitar puente h motor3
#define MOTOR3_A PORTB,0 ;salida A del motor3
#define MOTOR3_B PORTB,1 ;salida A del motor3
#define MOTOR4 PORTD,2 ;habilitar puente h motor4
#define MOTOR4_A PORTD,0 ;salida A del motor4
#define MOTOR4_B PORTD,1 ;salida A del motor4
#define MOTOR5 PORTC,2 ;habilitar puente h motor5
#define MOTOR5_A PORTB,2 ;salida A del motor5
#define MOTOR5_B PORTB,3 ;salida A del motor5
#define SENSOR1 PORTB,7 ;sensor frontal
#define SENSOR2 PORTB,5 ;sensor derecho
#define SENSOR3 PORTB,6 ;sensor izquierdo
CONFIG FOSC=INTOSC_XT, LVP=OFF
CONFIG WDT=OFF, PBADEN=OFF , MCLRE=ON
CONT1 EQU 0X20
DAT EQU 0X21
DATO_TX EQU 0X23
DATO_RX EQU 0X24
;
ORG 0X0000
GOTO INICIO
;;;;;;;;;;;;;;;;;;;;;; SALTA A INTERRUPCIONES
ORG 0X0008
GOTO INTER
;;;;;;;;;;;;;;;;;;;;;;;; CONFIGURACION DE PUERTOS
INICIO
BSF OSCCON,6
82
BSF OSCCON,5
BCF OSCCON,4
PUERTOS
CLRF PORTA
CLRF PORTB
CLRF PORTD
CLRF PORTE
CLRF PORTC
CLRF LATB
MOVLW 0Eh
MOVWF ADCON1
CLRF TRISD
BCF TRISB,0
BCF TRISB,1
BCF TRISB,2
BCF TRISB,3
BSF TRISB,5
BSF TRISB,6
BSF TRISB,7
BCF TRISC,2
BCF TRISC,4
BCF TRISC,5
MOVLW 0X0F ; ADC OFF
MOVWF ADCON1
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
CALL CONFIGURA
; HABILITACION DE INTERRUPCIONES
BCF RCON,IPEN
BSF INTCON,GIE
BSF INTCON,PEIE
BSF PIE1, RCIE
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; PROGRAMA PRINCIPAL
PROGRAMA
CALL ADELANTE
CALL Retardo_100ms
BTFSS SENSOR2
GOTO PROGRAMA
83
CALL PARAR
CALL Retardo_50ms
CALL CARGA
CALL PARAR
CALL Retardo_50ms
C1
CALL ADELANTE
CALL Retardo_100ms
BTFSS SENSOR2
GOTO C1
CALL PARAR
CALL Retardo_1s
CALL ATRAS
CALL Retardo_100ms
CALL PARAR
CALL Retardo_1s
CALL GIRO_DER
CALL Retardo_500ms
CALL Retardo_200ms
C2
CALL ADELANTE
CALL Retardo_100ms
BTFSS SENSOR2
GOTO C2
CALL PARAR
CALL Retardo_1s
CALL ATRAS
CALL Retardo_100ms
CALL GIRO_IZQ
CALL Retardo_500ms
CALL Retardo_200ms
C3
CALL ADELANTE
CALL Retardo_100ms
BTFSS SENSOR2
GOTO C3
CALL PARAR
CALL Retardo_1s
CALL ATRAS
CALL Retardo_100ms
CALL GIRO_IZQ
CALL Retardo_500ms
84
CALL Retardo_200ms
C4 CALL ADELANTE
CALL Retardo_100ms
BTFSS SENSOR2
GOTO C4
CALL PARAR
CALL Retardo_1s
CALL ATRAS
CALL Retardo_100ms
CALL GIRO_DER
CALL Retardo_500ms
CALL Retardo_200ms
C5
CALL ADELANTE
CALL Retardo_100ms
BTFSS SENSOR2
GOTO C5
CALL PARAR
CALL Retardo_500ms
CALL ATRAS
CALL Retardo_100ms
CALL GIRO_DER
CALL Retardo_500ms
CALL Retardo_200ms
C6 CALL ADELANTE
CALL Retardo_100ms
BTFSS SENSOR2
GOTO C6
CALL PARAR
CALL Retardo_500ms
CALL ATRAS
CALL Retardo_500ms
CALL GIRO_IZQ
CALL Retardo_500ms
CALL Retardo_200ms
C7 CALL ADELANTE
CALL Retardo_100ms
BTFSS SENSOR2
GOTO C7
85
CALL PARAR
CALL CARGA2
CALL ENVIA1
CALL ATRAS
CALL Retardo_200ms
CALL GIRO_DER
CALL Retardo_500ms
CALL Retardo_200ms
C8
CALL ADELANTE
CALL Retardo_100ms
BTFSC SENSOR2
GOTO C10
CALL ADELANTE
CALL Retardo_100ms
BTFSS SENSOR2
GOTO C9
CALL GIZQ
C9
CALL ADELANTE
CALL Retardo_100ms
BTFSS SENSOR3
GOTO C8
CALL GDER
C10 CALL ATRAS
CALL Retardo_100ms
CALL GIRO_DER
CALL Retardo_500ms
CALL Retardo_200ms
C11 CALL ADELANTE
CALL Retardo_100ms
BTFSS SENSOR1
GOTO C11
CALL ATRAS
CALL Retardo_100ms
CALL GIRO_DER
CALL Retardo_500ms
CALL Retardo_100ms
86
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;SUBRUTINAS
PARAR
BCF MOTOR1
BCF MOTOR1_A
BCF MOTOR1_B
BCF MOTOR3
BCF MOTOR3_A
BCF MOTOR3_B
RETURN
ADELANTE
BSF MOTOR1
BSF MOTOR1_A
BCF MOTOR1_B
BSF MOTOR3
BSF MOTOR3_A
BCF MOTOR3_B
RETURN
ATRAS
BSF MOTOR1
BCF MOTOR1_A
BSF MOTOR1_B
BSF MOTOR3
BCF MOTOR3_A
BSF MOTOR3_B
RETURN
GIRO_DER
BSF MOTOR1
BCF MOTOR1_A
BSF MOTOR1_B
BSF MOTOR3
BSF MOTOR3_A
BCF MOTOR3_B
RETURN
GDER
BSF MOTOR1
BCF MOTOR1_A
BSF MOTOR1_B
BSF MOTOR3
BSF MOTOR3_A
87
BCF MOTOR3_B
CALL Retardo_50ms
RETURN
GIZQ
BSF MOTOR1
BSF MOTOR1_A
BCF MOTOR1_B
BSF MOTOR3
BCF MOTOR3_A
BSF MOTOR3_B
CALL Retardo_50ms
RETURN
GIRO_IZQ
BSF MOTOR1
BSF MOTOR1_A
BCF MOTOR1_B
BSF MOTOR3
BCF MOTOR3_A
BSF MOTOR3_B
RETURN
CARGA
BSF MOTOR4
BSF MOTOR4_A
BCF MOTOR4_B
CALL Retardo_2s
BCF MOTOR4
BCF MOTOR4_A
BCF MOTOR4_B
CALL Retardo_100ms
RETURN
CARGA2
BSF MOTOR4
BCF MOTOR4_A
BSF MOTOR4_B
CALL Retardo_2s
BCF MOTOR4
BCF MOTOR4_A
BCF MOTOR4_B
CALL Retardo_100ms
RETURN
FRENO
BCF MOTOR2
88
BCF MOTOR2_A
BCF MOTOR2_B
RETURN
ENVIA12
MOVLW D'12'
MOVWF DATO_TX
CALL TRANSMITIR
CALL Retardo_10ms
RETURN
ENVIA11
MOVLW D'11'
MOVWF DATO_TX
CALL TRANSMITIR
CALL Retardo_10ms
RETURN
ENVIA10
MOVLW D'10'
MOVWF DATO_TX
CALL TRANSMITIR
CALL Retardo_10ms
RETURN
ENVIA9
MOVLW D'9'
MOVWF DATO_TX
CALL TRANSMITIR
CALL Retardo_10ms
RETURN
ENVIA8
MOVLW D'8'
MOVWF DATO_TX
CALL TRANSMITIR
CALL Retardo_10ms
RETURN
ENVIA7
MOVLW D'7'
MOVWF DATO_TX
CALL TRANSMITIR
CALL Retardo_10ms
RETURN
ENVIA6
MOVLW D'6'
MOVWF DATO_TX
89
CALL TRANSMITIR
CALL Retardo_10ms
RETURN
ENVIA5
MOVLW D'5'
MOVWF DATO_TX
CALL TRANSMITIR
CALL Retardo_10ms
RETURN
ENVIA4
MOVLW D'4'
MOVWF DATO_TX
CALL TRANSMITIR
CALL Retardo_10ms
RETURN
ENVIA3
MOVLW D'3'
MOVWF DATO_TX
CALL TRANSMITIR
CALL Retardo_10ms
RETURN
ENVIA2
MOVLW D'2'
MOVWF DATO_TX
CALL TRANSMITIR
CALL Retardo_10ms
RETURN
ENVIA1
MOVLW D'1'
MOVWF DATO_TX
CALL TRANSMITIR
CALL Retardo_10ms
RETURN
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
TRANSMITIR
MOVF DATO_TX,W
CALL ENVIA
RETURN
;;;;;
CONFIGURA
BCF TRISC,6
90
MOVLW .25
MOVWF SPBRG
BSF TXSTA,2
BSF TXSTA,5
BSF RCSTA,4
BSF RCSTA,7
BSF TRISC,7 ; C7/RX ENTRADA
BCF RCSTA,6
BSF RCSTA,4
BSF RCSTA,3
BCF RCSTA,2
BCF RCSTA,1
MOVLW B'00000000'
MOVWF BAUDCON
RETURN
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
ENVIA
BTFSS PIR1,4
GOTO ENVIA
MOVWF TXREG
RETURN
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
INTER
BTFSS PIR1,RCIF
GOTO FIN
BCF PIR1,RCIF
MOVF RCREG,W
MOVWF DAT
MOVLW D'17'
SUBWF DAT,W
BTFSS STATUS,2
GOTO DIES6
GOTO FIN
DIES6
MOVLW D'16'
SUBWF DAT,W
91
BTFSS STATUS,2
GOTO QUINCE
GOTO FIN
QUINCE
MOVLW D'15'
SUBWF DAT,W
BTFSS STATUS,2
GOTO CATORCE
GOTO FIN
CATORCE
MOVLW D'14'
SUBWF DAT,W
BTFSS STATUS,2
GOTO TRECE
GOTO FIN
TRECE
MOVLW D'13'
SUBWF DAT,W
BTFSS STATUS,2
GOTO DOCE
GOTO FIN
DOCE
MOVLW D'12'
SUBWF DAT,W
BTFSS STATUS,2
GOTO ONCE
CALL ENVIA12
GOTO FIN
ONCE
MOVLW D'11'
SUBWF DAT,W
BTFSS STATUS,2
GOTO DIEZ
CALL ENVIA11
GOTO FIN
DIEZ
92
MOVLW D'10'
SUBWF DAT,W
BTFSS STATUS,2
GOTO NUEVE
CALL ENVIA10
GOTO FIN
NUEVE
MOVLW D'9'
SUBWF DAT,W
BTFSS STATUS,2
GOTO OCHO
CALL ENVIA9
GOTO FIN
OCHO
MOVLW D'8'
SUBWF DAT,W
BTFSS STATUS,2
GOTO SIETE
CALL ENVIA8
GOTO FIN
SIETE
MOVLW D'7'
SUBWF DAT,W
BTFSS STATUS,2
GOTO SEIS
CALL ENVIA7
GOTO FIN
SEIS
MOVLW D'6'
SUBWF DAT,W
BTFSS STATUS,2
GOTO CINCO
GOTO FIN
CINCO
MOVLW D'5'
SUBWF DAT,W
BTFSS STATUS,2
93
GOTO CUATRO
CALL ENVIA6
GOTO FIN
CUATRO
MOVLW D'4'
SUBWF DAT,W
BTFSS STATUS,2
GOTO TRES
GOTO FIN
TRES
MOVLW D'3'
SUBWF DAT,W
BTFSS STATUS,2
GOTO DOS
CALL Retardo_200ms
CALL ENVIA4
GOTO FIN
DOS
MOVLW D'2'
SUBWF DAT,W
BTFSS STATUS,2
GOTO UNO
CALL ENVIA2
GOTO FIN
UNO
MOVLW D'1'
SUBWF DAT,W
BTFSS STATUS,2
GOTO CERO
GOTO FIN
CERO
GOTO FIN
FIN
RETFIE FAST
#INCLUDE<RETARDOS.inc>
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
END ; Final del programa