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

June 29, 2017 | Autor: A. Contreras Mart... | Categoría: Robotics, Control Systems Engineering, Autonomous Robotics, Mechatronics & Robotics
Share Embed


Descripción

“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, [email protected] Barrera Camarena José Luis, [email protected]

UNIVERSIDAD NACIONAL DE INGENIERÍA 2013

1

1.

INTRODUCCIÓN

En las aplicaciones robóticas modernas el uso de sistemas de navegación y visión es muy frecuente, 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 entrenamiento y robots de vigilancia y monitoreo estos son muy caros, y frecuentemente su manejo es muy difícil. Con este trabajo se buscara tener un módulo de entrenamiento fácil de usar y amigable al usuario con el fin de que sirva como un apoyo para la investigación tanto de estudiantes como de empresas en el Perú. Finalmente, con este trabajo se busca fomentar la investigación en nuestra universidad, al proponer nuevas áreas de desarrollo. Este sistema se podrá usar más adelante en la implementación y prueba de nuevos algoritmos y/o el desarrollo de nuevos proyectos. 2.

f. A nivel académico, se integra muy bien los conocimientos aprendidos en la universidad relacionado con control, electrónica, inteligencia artificial, diseño mecánico, programación.

4. APLICACIONES PRÁCTICAS Las aplicaciones de un robot con sistemas de navegación autónoma y visión son diversas, Se puede usar como un sistema de vigilancia o monitoreo remoto cuya característica principal es su movilidad. Como segunda aplicación es posible que lleve a cabo tareas de exploración y reconocimiento de áreas. También se puede aplicar como un módulo de entrenamiento que ayude a fomentar la investigación. Las aplicaciones finales que se pueden dar al robot son diversas, tales como:

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. d. Monitorear en tiempo real el recorrido de la navegación del robot. e. Transmisión de los datos de sensores útiles a la estación terrena.

3.

Fig.1 Robots Aradores b. Seguridad

JUSTIFICACIÓN

El robot autónomo, por desarrollar, ofrecerá los siguientes beneficios y ventajas con respecto a las formas tradicionales de trabajo: a. Disminución de las horas hombre de trabajo. 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.

2

Fig.2 Robot para Vigilancia c. Militares

Fig.3 Robot Ruso

d. Traslado autónomo de carga. e. Reconocimiento de Lugares.

Fig.4 Robot explorador

5. OBJETIVOS I. Construcción de un robot como prototipo para las pruebas de hardware y software, este consta de la estructura mecánica de la base móvil. II. Diseño y desarrollo del hardware para el manejo de los sensores, procesadores y actuadores del robot prototipo. III. Diseño de software para el control de la navegación y visión para las tareas específicas que se pretenden: navegación en el terreno agrícola para fumigación centralizada, monitoreo de los productos, malezas y plagas (visión). IV. Elaboración de una plataforma robótica para la investigación en robótica autónoma aplicada a diversas tareas que se podrían requerir en un campo abierto como el agrícola (pej.).

7. CARACTERÍSTICAS DEL PRODUCTO FINAL DE PROYECTO MECATRÓNICO. 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 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ónmanipulació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 ejecutar el movimiento del robot en rutas especificas (mapa determinado por coordenadas GPS) y con un punto de meta (coordenada GPS), para ello el robot se valdrá de los sensores ultrasónicos para detectar obstáculos, el GPS para saber su posición actual y una brújula para saber su orientación. Con respecto a la aplicación del robot, la funcionalidad final que se le dé al robot se tendrá que adaptar y programar de acuerdo al terreno, ya que lo que se desarrollará en el proyecto es la plataforma sobre la cual se podrán programar y asignar tareas fácilmente

8. CRONOGRAMA SEMANAL DE TRABAJO PARA PROYECTO MECATRÓNICO.

6. CARACTERÍSTICAS DEL PRODUCTO FINAL DE LA TESIS El producto final que se pretende para la tesis, es un conjunto de robots los cuales puedan realizar tareas diversas que sean asignadas y monitoreadas remotamente además de agregar la capacidad de manipulación en el robot (mediante un brazo robótico). Las características específicas se nombran en la sección siguiente.

Dias

Setiembre

16--21

Terminar el Hardware Modelamiento en Simechanics Pruebas Fisicas de Algoritmos Vision 23--27

Octubre

30--4

07--11 14--18

3

Tareas Revisar el movil para ver las mejoras que se pueden hacer Modelamiento en 2D matlab del movil Algoritmo para reconocimiento de Objetos

Pruebas Fisicas de Algoritmos basicos (punto a punto) Creacion de un entorno Virtual Matlab Pruebas de Vision con el movil en movimiento Interfaz para asignacion de tareas y monitoreo Union Sim-mechanics - Realidad Virtual Investigacion del metodo por Redes Neuronales en Vision PARCIALES

21--25

28--1

Noviembr e

4--8

11--15

Desarrollo del modulo electronico para comunicaciones Elaboracion de algoritmos de evasion de obstaculos Mejorar el Algoritmo de Vision 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 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 Implementación fisica de Algoritmos simulados(evasion) Elaboración del Algoritmo para seguimiento de trayectorias Asignacion de objetos especificos por reconocer

Fig.5 Conversión de CAD a XML El robot en Simulink se visualiza de la siguiente manera:

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

Pruebas Finales

2--6 9--13

FINALES

Tabla.1 Cronograma de tareas

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.

Fig.6 Robot en SimMechanics El diagrama de bloques del robot es el siguiente:

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 servirá para: * Probar los algoritmos de control más complejos. *Crear un mundo virtual en el cual se realizará un estudio más completo del robot cambiando rápidamente su ambiente y observando su comportamiento. *otros.

Para la creación de un entorno virtual de simulaciones, es necesario tener el modelo matemático de comportamiento del robot y el ambiente (y sus interacciones gracias a sensores y actuadores) así como también el objeto gráfico que nos permita visualizar.

El proceso de conversión de un modelo en CAD a uno en Simulink, que tiene el formato XML.

El Robot exportado desde Solidwork a VRLM Builder de Matlab es el siguiente:

4

B. CREACION DE REALIDAD VIRTUAL

̇ ̇

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 Builder.

Calculo del ángulo de giro del móvil para que se dirija al punto objetivo

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 poder relacionar los giros con las velocidad de cada rueda.

Fig.11 Primer Caso  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: El robot posee la capacidad de utilizar 7 sensores de ultrasónicos para detectar obstáculos, sin embargo se trabajó con 4 para reducir algunos cálculos y se obtuvo un buen resultado para obstáculos de área considerable. El modelo para la evasión de obstáculos es el siguiente:

Debido al error de los sensores , es bastante dificultoso llegar exactamente a la coordenada objetivo , tambien se hicieron pruebas de ello, por ello se trabaja con una vecindad entorno al punto objetivo. Cuando el robot está dentro de esta vecindad se considera que el robot ya llego a su meta. 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.3 Navegación y evasión de obstáculos

A.4 Pruebas físicas punto a punto Se realizó pruebas de un algoritmo básico de navegación, basado en posición inicial y final.

El movimiento del robot depende de una decisión conjunta de los sensores, GPS – MagnetómetroUltrasó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

6

Fig.17 Movimiento del Robot

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 algoritmo punto-punto ya funciona bien) .

Fig.20 Diagrama de control de trayectorias

E. INTERFAZ PARA ASIGNACIÓN DE TAREAS DE NAVEGACIÓN Y VISIÓN

Fig.18 Modelo de Trayectoria El algoritmo para navegación de trayectorias se basa en cambiar de punto objetivo una vez que ya se halla llegado a la vecindad del punto anterior, el diagrama de flujo es el siguiente:

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 al robot gracias al sistema de comunicaciones y también el robot envía su estado hacia la estación fija (monitoreo). El controlador Atmel 2560 que se encuentra en el robot recibe las tareas y envía la parte de visión a la Laptop, y la parte de navegación al controlador Mbed.

Conjunto "n" de Puntos

Pi

Está fuera de la vecindad?

No

Si

Hay Obstaculos?

No

Fig.21 Interfaz GUI Matlab

Si

F. [V1,V2]=F(U1,U2,U3,U4)

Fig.19 Diagrama de Flujo de Navegación de Trayectorias La representación del sistema de control de trayectorias es el siguiente:

7

SISTEMA DE COMUNICACIONES

[V1,V2]=G(phi)

Para la trasmisión de toda la información de manera bidireccional se utiliza módulos XBEE PRO S2, anteriormente se utilizó otro modulo denominado NRF24 pero tuvo un poco de desincronización por ello se cambió, que nos permiten enviar las tareas y recibir el estado del robot. Se pudo transmitir información hasta 100m sin ningún problema.

Controladores Arduino Due mbed

Fig.22 Módulos para Comunicación

Desde la Estación Remota

de Due mbed LPC11

Sistema de Alimentación Batería Plomo Batería Litio 10.8V

El algoritmo que se sigue para las comunicaciones es el siguiente:

Recepción de Data desde el Transceiver

Controlador PID Navegación autónoma

Otros Conversor DC-DC Conversor FrecuenciaVoltaje

12V Litio 10.8V

Manipulación Navegación autónoma

DC-DC

LM331

Ejecución de la Navegación

Envio de la coordenada del robot por el Transceiver Dato que se recibe por Uart desde la PC que procesa la Vision Artificial

Hacia la estacion remota

de

Puente H/DC-DC Navegación autónoma

No

Se detecto objeto?

Estructura Acero

Si

Hacia la estacion remota

Placas Driver Potencia Sistema Navegación autónoma

maquinado

Envio de una señal de deteccion

llantas ruedas locas

Tabla 2. Cuadro de Materiales y equipos

Fig.23 Diagrama de Flujo para las Comunicaciones

11. INFORME ECONÓMICO TENTATIVO 10. CUADRO DE MATERIALES,

COMPONENTES Y EQUIPOS REQUERIDOS

Tipo

Cantidad

Precio c/u

Precio

Sensores Tipo

Sistema

Modelo

Sensores Ultrasónico Unidad IMU Cámara webcam GPS

Comunicación RF 2.4Ghz+ antena

Navegación Autónoma Navegación Autónoma Visión Artificial Navegación Autónoma

Comunicaciones

Actuadores Motor DC Navegación 24V encoder autónoma

8

SRF05

Ultrasónico

6

30

180

Unidad IMU Cámara webcam

1

135

135

1

120

120

1

140

140

S2

2

150

300

Actuadores Motor DC 24V encoder

4

60

240

Arduino Due

1

200

200

mbed

1

200

200

IMU

GPS

Microsoft A2000 Maestro

NRF24L01

Comunicación XBEE PRO

Controladores

sensores entregan data fuera de su valor normal.

Sistema de Alimentacion Bateria Plomo Bateria Litio 10.8V

Otros Conversor DC-DC Conversor FrecuenciaVoltaje

2

30

60

2

30

60

2

15

30

2

5

10

1

100

100

1

20

20

Aluminio

1

250

250

maquinado

1

190

190

llantas

2

15

30

ruedas locas

2

15

30

Placas Driver Potencia Sistema Navegación Autónoma

de

Estructura

Tabla 3. Costo de materiales del Proyecto *No se cuenta la laptop que se usara para visión principalmente y tampoco la otra en la que se visualiza en tiempo real el movimiento del robot y se asigna tareas.* 12. CONCLUSIONES a) Es necesario hacer pruebas de todos los sensores utilizados, para luego calibrarlos si fuera el caso que estén otorgando medidas diferentes a las reales .Esto es muy importante para que funcione adecuadamente el sistema de control. 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

d) Para que el robot trabaje en terrenos de mayor tamaño es necesario usar un módulo de XBEE de mayor como rango, como un XBEE PRO 900 (15Km). e) El tiempo de actualización y lectura del GPS resulto de casi 1seg. Lo cual es un problema que retraso un poco el algoritmo de navegación y aún más la evasión de obstáculos, por lo cual en futuras mejoras se tendrá que trabajar con prioridades o interrupciones por parte de los sensores de ultrasonido. f)

En las pruebas del sistema de visión para reconocimiento de objetivos, se observó que la luz del ambiente afecta considerablemente la detección del objetivo, además de ello el rango de la cámara hace que a distancias grandes (pej.5m) no se logre detectar el objetivo.

g) La creación de un entorno virtual de simulación conlleva al modelamiento tanto del ambiente como del robot, estos se realizaron usando los toolbox SimMechanics y VRML de Matlab. Esto se complica cuando se relaciona ambos y además del control e incluso se tiene que modelar los sensores para que el robot llegue a tener un comportamiento, todo lo anterior hace que la simulación se vuelva lenta. h) Para el monitoreo remoto de la navegación del robot se utilizó el toolbox KML de Matlab.

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ánchezHermosilla, 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-communicationbetween-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

Lihat lebih banyak...

Comentarios

Copyright © 2017 DATOSPDF Inc.