Está en la página 1de 10

“DISEÑO E IMPLEMENTACIÓN DE UN ROBOT

MÓVIL DE ARQUITECTURA DIFERENCIAL PARA


NAVEGACIÓN AUTÓNOMA EN EXTERIORES CON
MONITOREO REMOTO Y VISIÓN ARTIFICIAL”

PROYECTO MECATRONICO

AUTORES:
Contreras Martínez Dimel Arturo, arturocontrerasmartinez@gmail.com
Barrera Camarena José Luis, jbarrerac.02@gmail.com

UNIVERSIDAD NACIONAL DE INGENIERÍA


2013

1
1. INTRODUCCIÓN f. A nivel académico, se integra muy bien los
conocimientos aprendidos en la universidad
En las aplicaciones robóticas modernas el uso de relacionado con control, electrónica, inteligencia
sistemas de navegación y visión es muy frecuente,
artificial, diseño mecánico, programación.
ya que de esta manera los robots son capaces de
desplazarse, ver y reconocer su entorno. Si bien en el
mercado existen módulos robóticos de 4. APLICACIONES PRÁCTICAS
entrenamiento y robots de vigilancia y monitoreo
estos son muy caros, y frecuentemente su manejo es
Las aplicaciones de un robot con sistemas de
muy difícil. Con este trabajo se buscara tener un
módulo de entrenamiento fácil de usar y amigable al navegación autónoma y visión son diversas, Se
usuario con el fin de que sirva como un apoyo para puede usar como un sistema de vigilancia o
la investigación tanto de estudiantes como de monitoreo remoto cuya característica principal es su
empresas en el Perú. movilidad. Como segunda aplicación es posible que
Finalmente, con este trabajo se busca fomentar la lleve a cabo tareas de exploración y reconocimiento
investigación en nuestra universidad, al proponer de áreas. También se puede aplicar como un módulo
nuevas áreas de desarrollo. Este sistema se podrá
de entrenamiento que ayude a fomentar la
usar más adelante en la implementación y prueba de
nuevos algoritmos y/o el desarrollo de nuevos investigación.
proyectos. Las aplicaciones finales que se pueden dar al robot
son diversas, tales como:
2. PLANTEAMIENTO DEL PROBLEMA
a. Agricultura
Con el proyecto a desarrollar, se quieren resolver
(así como innovar en la forma de realizar tareas) los
siguientes problemas:

a. Traslado de una coordenada inicial a otra final


autónomamente.
b. Recorrer rutas autónomamente.
c. Reconocer objetos con características patrón
de entrada. Fig.1 Robots Aradores
d. Monitorear en tiempo real el recorrido de la
navegación del robot. b. Seguridad
e. Transmisión de los datos de sensores útiles a
la estación terrena.

3. JUSTIFICACIÓN

El robot autónomo, por desarrollar, ofrecerá los


siguientes beneficios y ventajas con respecto a las
formas tradicionales de trabajo:
Fig.2 Robot para Vigilancia

a. Disminución de las horas hombre de trabajo. c. Militares


b. Automatización de procesos como:
producción agrícola, traslado, monitoreo y seguridad.
c. La creación de un robot autónomo al cual le
podemos asignar tareas.
d. Elaboración de algoritmos para visión
artificial y navegación autónoma en exteriores.
e. Desarrollo tecnológico en Perú al hacer uso de
sensores y procesadores modernos, además de
software y algoritmos muy utilizados a nivel mundial.
Fig.3 Robot Ruso

2
7. CARACTERÍSTICAS DEL PRODUCTO FINAL
d. Traslado autónomo de carga. DE PROYECTO MECATRÓNICO.

e. Reconocimiento de Lugares. En términos generales el robot será de cinemática


diferencial, una cámara para la detección del objetivo,
para la navegación autónoma utilizaremos los
sensores GPS, Magnetómetro o brújula, ultrasónicos y
los encoder de los motores(para controlar en lazo
cerrado las velocidades asignadas a los motores por el
algoritmo de control de la navegación), para la parte
de procesamiento se realizara un sistema distribuido
de microcontroladores dedicados a los módulos
mencionados además de una Laptop para el
procesamiento de la visión. Al ser este robot un
sistema complejo, ya que integra muchos sistemas ya
mencionados, lo que se planea en el proyecto es
Fig.4 Robot explorador desarrollar por separado los sistemas de visión y de
navegación autónoma. Para ello las tareas iniciales del
robot serán las siguientes: para el sistema visión-
5. OBJETIVOS manipulación se deberá poder identificar objetos con
características específicas (color y forma). Por otro
lado el sistema de navegación deberá planificar y
I. Construcción de un robot como prototipo para ejecutar el movimiento del robot en rutas especificas
las pruebas de hardware y software, este consta (mapa determinado por coordenadas GPS) y con un
de la estructura mecánica de la base móvil. punto de meta (coordenada GPS), para ello el robot se
II. Diseño y desarrollo del hardware para el valdrá de los sensores ultrasónicos para detectar
manejo de los sensores, procesadores y obstáculos, el GPS para saber su posición actual y una
actuadores del robot prototipo. brújula para saber su orientación.
III. Diseño de software para el control de la
Con respecto a la aplicación del robot, la
navegación y visión para las tareas específicas funcionalidad final que se le dé al robot se tendrá
que se pretenden: navegación en el terreno que adaptar y programar de acuerdo al terreno, ya
agrícola para fumigación centralizada, que lo que se desarrollará en el proyecto es la
monitoreo de los productos, malezas y plagas plataforma sobre la cual se podrán programar y
(visión). asignar tareas fácilmente
IV. Elaboración de una plataforma robótica para la
investigación en robótica autónoma aplicada a
8. CRONOGRAMA SEMANAL DE TRABAJO
diversas tareas que se podrían requerir en un
campo abierto como el agrícola (pej.). PARA PROYECTO MECATRÓNICO.

6. CARACTERÍSTICAS DEL PRODUCTO FINAL Dias Tareas


DE LA TESIS Revisar el movil para ver las mejoras que se
pueden hacer
Modelamiento en 2D matlab del movil
Algoritmo para reconocimiento de Objetos
El producto final que se pretende para la tesis, es un Setiembre 16--21

conjunto de robots los cuales puedan realizar tareas Terminar el Hardware


Modelamiento en Simechanics
diversas que sean asignadas y monitoreadas Pruebas Fisicas de Algoritmos Vision
remotamente además de agregar la capacidad de 23--27
Pruebas Fisicas de Algoritmos basicos (punto a
manipulación en el robot (mediante un brazo punto)
robótico). Las características específicas se nombran Creacion de un entorno Virtual Matlab
Pruebas de Vision con el movil en movimiento
Octubre 30--4
en la sección siguiente. Interfaz para asignacion de tareas y
monitoreo
Union Sim-mechanics - Realidad Virtual
Investigacion del metodo por Redes
07--11 Neuronales en Vision

14--18 PARCIALES

3
Desarrollo del modulo electronico para
comunicaciones
Elaboracion de algoritmos de evasion de obstaculos
Mejorar el Algoritmo de Vision
21--25
Monitoreo de la navegacíon en google earth
Elaboracion de algoritmos de evasion de obstaculos
Coordinacion del sistema de navegación con el de
Visión
28--1
Monitoreo de la navegacíon en google earth
Elaboracion de algoritmos de evasion de obstaculos Fig.5 Conversión de CAD a XML
Coordinacion del sistema de navegación con el de
Noviembr
Visión
e 4--8
Implementación fisica de Algoritmos
El robot en Simulink se visualiza de la siguiente
simulados(evasion) manera:
Elaboración del Algoritmo para seguimiento de
trayectorias
11--15 Asignacion de objetos especificos por reconocer

Implementación fisica de Algoritmos


simulados(trayectorias)
Union de Algoritmos en el Entorno Virtual
Asignacion de objetos especificos por reconocer
18--22

Implementación fisica de Algoritmos


simulados(trayectorias)
Union de Algoritmos en el Entorno Virtual
25--29

Diciembre 2--6 Pruebas Finales

9--13 FINALES

Tabla.1 Cronograma de tareas Fig.6 Robot en SimMechanics

El diagrama de bloques del robot es el


siguiente:
9. DESCRIPCIÓN DE AVANCES
Se ha realizado avances significativos antes del curso
“Proyecto Mecatrónico” referentes al hardware del
robot: sistema de sensores, procesadores y actuadores.

A partir del curso “Proyecto Mecatrónico”, se


realizaron pruebas físicas de la navegación y visión
del robot. Además se inició con la creación de un
entorno virtual en Matlab para simulaciones del robot,
considerando todo el modelo del robot y su ambiente.

Los avances puntualmente son los siguientes:

A. MODELO DEL ROBOT EN SIMMECHANICS Fig.7 Modelo matemático del Robot

El diseño en CAD del robot, se traslada a Matlab


mediante SimMechanics. Este modelo que se crea nos B. CREACION DE REALIDAD VIRTUAL
servirá para:
* Probar los algoritmos de control más complejos. Para la creación de un entorno virtual de
*Crear un mundo virtual en el cual se realizará un simulaciones, es necesario tener el modelo
estudio más completo del robot cambiando matemático de comportamiento del robot y el
rápidamente su ambiente y observando su ambiente (y sus interacciones gracias a sensores y
comportamiento. actuadores) así como también el objeto gráfico que
*otros. nos permita visualizar.

El proceso de conversión de un modelo en CAD a uno El Robot exportado desde Solidwork a VRLM
en Simulink, que tiene el formato XML. Builder de Matlab es el siguiente:

4
̇
̇
Fig.8 Visualización del Robot en VRLM Builder ̇ ̇

El comportamiento del robot (modelo matemático)


se obtiene gracias a SimMechanics. Fig10. Modelamiento de la base móvil diferencial

La creación de ambiente si fue exclusiva en VRLM Calculo del ángulo de giro del móvil para que se dirija
al punto objetivo
Builder.

Fig.9 Ambiente Virtual

C. ALGORITMO PARA LA NAVEGACIÓN  Primer caso ,

Para la navegación autónoma se tiene que


considerar 2 aspectos básicos, uno es navegar hacia
el punto objetivo (orientación y avance) y el otro
es poder evadir los obstáculos que se puedan
presentar en el transcurso del desplazamiento del
robot.

A.1 Navegación:

Se trabajó con el modelo cinemático del robot, para Fig.11 Primer Caso
poder relacionar los giros con las velocidad de cada
rueda.  Segundo caso ,

Modelo Cinemático:

El modelo cinemático del robot es el siguiente:

Fig.12 Segundo Caso

5
A.2 Evasión de obstáculos:
Debido al error de los sensores , es bastante
El robot posee la capacidad de utilizar 7 sensores de dificultoso llegar exactamente a la coordenada
ultrasónicos para detectar obstáculos, sin embargo se
objetivo , tambien se hicieron pruebas de ello, por
trabajó con 4 para reducir algunos cálculos y se
obtuvo un buen resultado para obstáculos de área ello se trabaja con una vecindad entorno al punto
considerable. objetivo. Cuando el robot está dentro de esta
vecindad se considera que el robot ya llego a su
El modelo para la evasión de obstáculos es el meta.
siguiente:
El algoritmo de movimiento calcula las velocidades
de cada rueda , esta velocidad se controla en un lazo
interno (se asemeja a un control en cascada).
Para cumplir dichas velocidades se realiza un control
PID (en realidad resulto PI) gracias a los encoders
de los motores .
Para representar a todo el robot como un sistema de
control se muestra la siguiente imagen.
Fig.13 Robot con Obstáculos

Para una distancia menor a 50cm de detección


de alguno de los sensores ultrasónicos se considera
obstáculo. Se realizaron pruebas con bastante
éxito.

Fig.15 Diagrama de Control de Navegación

Fig.14 Pruebas de evasión de obstáculos A.4 Pruebas físicas punto a punto

Se realizó pruebas de un algoritmo básico de


A.3 Navegación y evasión de obstáculos navegación, basado en posición inicial y final.
El movimiento del robot depende de una decisión
conjunta de los sensores, GPS – Magnetómetro-
Ultrasónicos. El diagrama de flujo desarrollado para
el proyecto es el siguiente:

Fig.16 Robot preparándose esperando sus Tarea

Fig.15 Diagrama de flujo Navegación Fig.17 Movimiento del Robot

6
D. ALGORITMO PARA NAVEGACION DE
TRAYECTORIAS

Para poder seguir caminos por rutas permitidas, es


necesario realizar el algoritmo de navegación de
trayectorias. Para facilitar ello la trayectoria la
modelamos como un conjunto de puntos (ya que el Fig.20 Diagrama de control de trayectorias
algoritmo punto-punto ya funciona bien) .

E. INTERFAZ PARA ASIGNACIÓN DE


TAREAS DE NAVEGACIÓN Y VISIÓN

Se elaboró una interfaz en GUI de Matlab, mediante la


cual podemos asignar tareas para el sistema de visión
y sistema de navegación desde una “estación fija”. Se
ingresa el tipo de objeto a detectar (en el monitoreo) y
también la posición objetivo. La información le llega
Fig.18 Modelo de Trayectoria al robot gracias al sistema de comunicaciones y
también el robot envía su estado hacia la estación fija
El algoritmo para navegación de trayectorias se basa (monitoreo). El controlador Atmel 2560 que se
en cambiar de punto objetivo una vez que ya se halla encuentra en el robot recibe las tareas y envía la parte
llegado a la vecindad del punto anterior, el diagrama de visión a la Laptop, y la parte de navegación al
de flujo es el siguiente: controlador Mbed.

Conjunto
"n" de Puntos

Pi

Está fuera de la
vecindad? No

Si

Hay Obstaculos?
No
Fig.21 Interfaz GUI Matlab
Si

F. SISTEMA DE COMUNICACIONES
[V1,V2]=F(U1,U2,U3,U4) [V1,V2]=G(phi)

Para la trasmisión de toda la información de


manera bidireccional se utiliza módulos XBEE
Fig.19 Diagrama de Flujo de Navegación de PRO S2, anteriormente se utilizó otro modulo
Trayectorias denominado NRF24 pero tuvo un poco de
desincronización por ello se cambió, que nos
La representación del sistema de control de permiten enviar las tareas y recibir el estado del
trayectorias es el siguiente: robot. Se pudo transmitir información hasta 100m
sin ningún problema.

7
Controladores
Controlador de
Arduino Due PID Due
Navegación mbed
mbed autónoma LPC11

Fig.22 Módulos para Comunicación Sistema de


Alimentación
Batería Plomo 12V
Batería Litio
El algoritmo que se sigue para las 10.8V Litio 10.8V
comunicaciones es el siguiente:
Otros
Conversor
Desde la
Recepción de Data
Estación
DC-DC Manipulación DC-DC
desde el Transceiver
Remota Conversor
Frecuencia- Navegación
Voltaje autónoma LM331
Ejecución de la
Navegación
Placas
Driver de Puente
Envio de la Potencia H/DC-DC
Hacia la
coordenada del Sistema
estacion
robot por el
remota Navegación Navegación
Transceiver
autónoma autónoma
Dato que se
recibe por Uart No
Se detecto objeto?
desde la PC
que procesa la Estructura
Vision Artificial
Si Acero
Hacia la Envio de una maquinado
estacion señal de
remota deteccion llantas
ruedas locas

Fig.23 Diagrama de Flujo para las Comunicaciones Tabla 2. Cuadro de Materiales y equipos

11. INFORME ECONÓMICO TENTATIVO


10. CUADRO DE MATERIALES,
COMPONENTES Y EQUIPOS REQUERIDOS Tipo Cantidad Precio c/u Precio

Sensores
Tipo Sistema Modelo
Ultrasónico 6 30 180
Sensores
Unidad IMU 1 135 135
Navegación
Ultrasónico Autónoma SRF05 Cámara web-
cam 1 120 120
Navegación
Unidad IMU Autónoma IMU GPS 1 140 140
Cámara web-
cam Visión Artificial Microsoft
Navegación A2000 Comunicación
GPS Autónoma Maestro XBEE PRO
S2 2 150 300

Comunicación
RF 2.4Ghz+ Actuadores
antena Comunicaciones NRF24L01 Motor DC
24V encoder 4 60 240

Actuadores
Motor DC Navegación Controladores
24V encoder autónoma
Arduino Due 1 200 200
mbed 1 200 200

8
sensores entregan data fuera de su valor
Sistema de normal.
Alimentacion
Bateria Plomo 2 30 60
Bateria Litio d) Para que el robot trabaje en terrenos de
10.8V 2 30 60 mayor tamaño es necesario usar un módulo
de XBEE de mayor como rango, como un XBEE
Otros PRO 900 (15Km).
Conversor
DC-DC 2 15 30
Conversor e) El tiempo de actualización y lectura del GPS
Frecuencia-
resulto de casi 1seg. Lo cual es un problema
Voltaje 2 5 10
que retraso un poco el algoritmo de
navegación y aún más la evasión de
Placas
Driver de obstáculos, por lo cual en futuras mejoras se
Potencia 1 100 100 tendrá que trabajar con prioridades o
Sistema
Navegación interrupciones por parte de los sensores de
Autónoma 1 20 20 ultrasonido.

Estructura
f) En las pruebas del sistema de visión para
Aluminio 1 250 250
reconocimiento de objetivos, se observó que
maquinado 1 190 190
la luz del ambiente afecta considerablemente
llantas 2 15 30
la detección del objetivo, además de ello el
ruedas locas 2 15 30
rango de la cámara hace que a distancias
grandes (pej.5m) no se logre detectar el
Tabla 3. Costo de materiales del Proyecto objetivo.

*No se cuenta la laptop que se usara para visión


g) La creación de un entorno virtual de
principalmente y tampoco la otra en la que se
simulación conlleva al modelamiento tanto del
visualiza en tiempo real el movimiento del robot y se
ambiente como del robot, estos se realizaron
asigna tareas.*
usando los toolbox SimMechanics y VRML de
12. CONCLUSIONES Matlab. Esto se complica cuando se relaciona
ambos y además del control e incluso se tiene
a) Es necesario hacer pruebas de todos los que modelar los sensores para que el robot
sensores utilizados, para luego calibrarlos si llegue a tener un comportamiento, todo lo
fuera el caso que estén otorgando medidas anterior hace que la simulación se vuelva
diferentes a las reales .Esto es muy importante lenta.
para que funcione adecuadamente el sistema h) Para el monitoreo remoto de la navegación
de control. del robot se utilizó el toolbox KML de Matlab.

b) El sistema de navegación requiere precisión


por lo que los sensores deberían poseer error
bastante pequeño. Sin embargo para obtener
sensores de dicha calidad se requiere de
mayor inversión.

c) Es necesario realizar un filtrado de la data de


ingreso al algoritmo, en futuros avances, ya
que existen instantes en los cuales los

9
13. REFERENCIAS BIBLIOGRÁFICAS

[1] Extracción de características”, Departamento de


Ciencia de la Computación Universidad Católica de Chile
2006

[2] Lía García Pérez "NAVEGACIÓN AUTÓNOMA


DE ROBOTS EN AGRICULTURA: UN MODELO DE
AGENTES”, Madrid, 2005

[3] Ricardo Faerron Guzmán "Autonomous Robot


Navigation With The Use Of GPS" Department of
Mechanical and Industrial Engineering 2009

[4] J.L. Guzmán, M. Berenguel, F. Rodríguez


“Herramienta Interactiva para Robótica Móvil” , Dpto.
Lenguajes y Computación, Universidad de Almera.

[5] Ramón González Sánchez, Francisco Rodríguez Díaz


“Algoritmo de navegación reactiva de robots
Móviles para tareas bajo invernadero”, Departamento de
Lenguajes y Computación. Universidad de Almería 2006

[6] R. González 1(P), F. Rodríguez, J. Sánchez-


Hermosilla, J. G. Donaire “Experiencias en sistemas de
navegación de robots móviles para tareas en invernadero”.

[7] Matlab – Arduino


http://robocv.blogspot.com/2012/01/serial-communication-
between-arduino.html

[8]Fuzzy Logic Examples using Matlab


http://arri.uta.edu/acs/ee5322/lectures/Ballal%20fuzzy%20l
ogic%20notes.pdf

[9] Ubaldo Geovanni Villaseñor Carrillo “Desarrollo de


un sistema de navegación para robots móviles mediante
diferentes patrones de comportamientos” , CIINDET 2010

[10] Dr. Francisco Javier Gallegos Funes "Navegación


Autónoma de un robot móvil dentro de entornos
real/virtual" Tesis de grado ,2008

[11] Alonzo Kelly "An Intelligent, Predictive Control


Approach to the High-Speed Cross-Country Autonomous
Navigation Problem", The Robotics Institute Carnegie
Mellon University 1995

[12] Ilber Adonayt Ruge Ruge “Método básico para


implementar un controlador digital pid en un
microcontrolador para desarrollo de aplicaciones a bajo
costo” , Universidad de Cundinamarca

10

También podría gustarte