SEMINARIO DE GRADUACION

Slides:



Advertisements
Presentaciones similares
INTELIGENCIA ARTIFICIAL
Advertisements

AGENTE ASPIRADOR INTELIGENCIA ARTIFICIAL Y ROBÓTICA Alumnos
También conocido como Diseño Lógico Rodrigo Salvatierra Alberú.
Escuela Santo Hermano Miguel
Nuestro reto es educar al pensamiento, para que razone de acuerdo a ciertas reglas; con ello podremos ser más eficientes al momento en que ordenamos.
Unidad 1 DISEÑO DE ALGORITMOS ING. Nelwi Baez. MSC
TESINA DE SEMINARIO DE GRADUACION:. Para el desarrollo de este proyecto utilizaremos dos transceptores infrarrojos Pololu IR Beacon, uno de ellos deberá
Informática Aplicada a la Gestión de Empresas (IAGE) Parte III Excel e Internet Tema 2.
COLEGIO DE BACHILLERES PLANTEL 13 XOCHIMILCO-TEPEPAN MATERIA:TIC EQUIPO:23 PRESENTACION: BASE DE DATOS ALUMNAS: Velazquez Corona Elsa Ponciano Antonio.
Conversión AD con micro controladores Microship
Viviana Baque Gutiérrez Lenin Gómez Romero
SISTEMA DE SEGURIDAD INDUSTRIAL
MICROCONTROLADORES AVANZADOS
PROGRAMACION DE ESTRUCTURAS DE DATOS
Sistema de Seguridad Domiciliaria
Adrián Moreno Zapata Daniel Pérez de Andrés.  Búsqueda y Seguimiento de caras ◦ Imitación del comportamiento del ojo humano ◦ Seguimiento inteligente.
LEGO MINDSTORMS Marco Antono López Trinidad Laboratorio de Sistemas Inteligentes Tec de Monterrey Campus Cuernavaca.
Guía Consulta De Resultados
Clases y objetos La unidad fundamental de programación OO son las clases. Conjunto de métodos y semántica Qué se va a hacer POO Clase: que define la implementación.
Matemáticas Discretas y Algoritmos
Instructivo para uso de la Agenda vía WEB Escuela Interamericana de Bibliotecología M.U agenda Ver 1.0 nov2010.
 Se llama formulario a una plantilla o página con espacios vacíos que han de ser rellenados con alguna finalidad, por ejemplo una solicitud de empleo.
Programación de Computadores
Semana 5 Subprogramas..
“Control de un Ascensor y Adquisición de Datos con LABVIEW ”
UNIDAD 2:Crear, abrir y cerrar una base de datos Hacer clic sobre la opción Nuevo de la pestaña Archivo. Se mostrarán las distintas opciones para nuevos.
Esta Presentación lo guiará paso a paso para su sencilla comprensión.
ESTRUCTURAS DO-WHILE Y FOR.
DISEÑO E IMPLEMENTACION DE UN ROBOT SEGUIDOR DE LINEA CARGUERO
Subsistemas de Control
Raúl Heiras Andazola Edgar A. Robles Reyes Luis Alonso Ramos Fdez Diseño de Robots Dr. Carlos F. Pfeiffer Octubre 22, 2003.
CONVERTIDOR ANALÓGICO DIGITAL (ADC)
BASES DE DATOS Con Access.
Resolución de Problemas y Algoritmos Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Bahía Blanca - Argentina.
CINEMÁTICA DEL MOVIMIENTO LINEAL.
Integrantes: Christian Blanco Raúl Bejarano
Integrantes: David Miguel Martínez Rodríguez Diego David Bósquez Granja.
Seguir las líneas de guía Presentación introductoria.
Gerardo Villagómez G. Rodrigo Jurado E.. Objetivo del Proyecto  Comandar nuestro robot pololu 3π acompañado del KIT AVR Butterfly, de forma que se llegue.
Palmada de puesta en marcha, palmada de paro Presentación introductoria.
Metodología para solución de problemas
Unidad 1. PROGRAMACION ALGORITMICA
Controlador PID de temperatura utilizando la tarjeta de desarrollo AVR Butterfly Andrés Lecaro José González.
Introducción a la tecnología Realizado por: Miguel Ángel Arias.
Estándares. Estándares BUILD . PROGRAM . GO! “PROGRAMACIÓN DEL ROBOT MINDSTORMS” How often will you get a youth to say that?! SIMPLES PROGRAMAS.
Materia de Graduación Microcontroladores Avanzados
MANTENIMIENTO LOGICO DEL PC
EL EXPLORADOR DE WINDOWS
COLEGIO DE BACHILLERES PLANTEL 13 XOCHIMILCO-TEPEPAN MATERIA:TIC EQUIPO:21 PRESENTACION: BASE DE DATOS ALUMNAS: Adán Millán Sánchez.
MANUAL DE USO BASES DE DATOS Por: EBSCO Information Services
Metodología de la programación
VIDEOCONFERENCIA.
LENGUAJES DE PROGRAMACIÓN 8.1 BREVE HISTORIA. Traducción-Ejecución Bajo nivel o 1º Nivel Se dice que el código binario es de "bajo nivel" o "primer nivel"
Support.ebsco.com Búsqueda avanzada guiada de EBSCOhost Tutorial.
Posgrado en Sistemas Computacionales Heurísticas de usabilidad MC Luz María Moreno Aguilar Noviembre 2009.
Tema 11 Bases de Datos y el Lenguaje SQL
Desarrollo de lógica algorítmica.
1
Pixelación de imágenes avanzada usando el algoritmo slic
Especificación del sistema TIENE COMO OBJETIVOS: Describir el proceso por medio del cual se transforma una declaracion de requisitos del cliente en una.
Hardware Parte física de una computadora. Dispositivos Es todo aquello que esta conectado a la computadora, los cuales tienen una función específica.
PROGRAMACIÓN Grupo de Modelamiento de Sistemas
En el presente trabajo, se explica los diferentes elementos que nos ofrece Microsoft Access, para hacer mas fácil y rápido la realización de bases de.
Tipos de ciclos en Visual Basic. Dinámicos y fijos. 6.1 Foro. Wuilson Valencia, Desarrollo de aplicaciones I y Laboratorio. 1.
Integrantes Rodrigo Muñoz Patricia Suárez. UNIDAD 2 ELABORACION DE UNA BASE DE DATOS INTRODUCCION Access 2013 TEA 2104 ORGANIZACIÓN DE LA INFORMACION.
SENSORIZACION Y CONTROL DE ROBOTS MOVILES. INTEGRANTES DEL EQUIPO. LIC. ISIDRO LOPEZ RUIZ LIC. GUILLERMO MATUS GARCIA LIC. OLIVIA SANTOS REGALADO. 19 DE.
Módulo III.- Recursos en UPSA VIRTUAL Este módulo explica como configurar los distintos recursos que pueden encontrarse en un curso de MOODLE. Recurso:
Unidad de Control Ubicación: Es uno de los tres bloques funcionales principales en los que se divide una unidad central de procesamiento (CPU). Realizar.
TUTORIAL DE INSTALACION
Ciclos condicionales y exactos Estructura de control de ciclos
Transcripción de la presentación:

SEMINARIO DE GRADUACION Control de Robot Pololu con sensores de distancia para mantener equidistancia a referencia móvil Integrantes: Jessica Saavedra Castro José Luis Chávez Aguilar

OBJETIVOS Aprender a utilizar y manipular de manera sencilla las rutinas de programación en la plataforma AVR Studio 4. Diseño e implementación de un código óptimo para mantener equidistancia a referencia móvil. Aprovechar todos los recursos que posee el POLOLU 3PI. Uso adecuado de los sensores de distancia de SHARP.

INTRODUCCIÓN Cámaras de video, sensores no visuales, el radar, los sensores inerciales y los de activación por presión. Sistema de detección de obstáculos

DESCRIPCION DEL PROYECTO Determinar la aplicación ejecutada por el Robot Pololu 3pi a desarrollar para este proyecto Control de un robot Pololu con el microcontrolador ATmega328p El funcionamiento del sistema se basa principalmente en las señales analógicas enviadas por los sensores

HARDWARE DEL PROYECTO ROBOT POLOLU 3PI

CARACTERISTICAS POLOLU 3PI 4 pilas AAA 2 Motores que trabajan a 9.25V 5 sensores IR 1 pantalla LCD de 8x2 caracteres 1 alarma 3 botones. Conector ISP Entre otros

HARDWARE DEL PROYECTO SENSOR ANALÓGICO SHARP

CARACTERISTICAS SENSORES SHARP Los Sensores Sharp GP2Y0A21YK tienen características como: Rango de detección La interfaz adaptable Salida analógica solo puede conectarse a un convertidor de analógico a digital Salida puede ser conectado a un comparador de umbral de detección Los sensores de distancia Sharp son una opción popular para muchos proyectos que requieren mediciones precisas de distancia Sensor de infrarrojos muy económico

DIAGRAMA DE BLOQUES

DIAGRAMA DE FLUJO

DESCRIPCION DEL SOFTWARE

Librería Breve descripción del proyecto #include <pololu/3pi.h> //El robot avanza hasta que vea un obstaculo (Puerta) y se detiene a una distancia //aprox 12 cm, espera a que se abra la puerta para salir pero si en 4 seg no sucede //nada el robot gira 45 grados y sigue avanzando hasta que ocurra algo similar y repite //el proceso, en el momento que se encuentre con una puerta y esta se abra el robot //avanza hasta que recuperar la distancia de 12 cm pero si la puerta retrocede el robot //tambien retrocede para mantener la distancia inicial de 12 cm si durante este //tiempo de espera sea retrocediendo o avanzando pasan 4 segundos sin cambios el robot gira //360 grados (el giro siempre lo hace hacia su derecha) Librería Breve descripción del proyecto

Declaración de variables utilizadas en el programa int main() {   int s1,s2,cnt,cnt2; s1=0; //valor del sensor de la derecha s2=0; //valor del sensor de la izquierda cnt=0; //valor del contador del tiempo que espera frente de la puerta cnt2=0; //valor del contador para giro 500-45 1000-90 1500-135 Declaración de variables utilizadas en el programa

Mensaje de presentación que aparece en la pantalla LCD print("JESSICA"); lcd_goto_xy(0,1); print("SAAVEDRA"); delay_ms(1500); clear(); print("JOSE"); print("CHAVEZ"); Mensaje de presentación que aparece en la pantalla LCD

while(!button_is_pressed(BUTTON_B)) { clear (); print_long(read_battery_millivolts()); print("mV"); lcd_goto_xy(0,1); print("Press B"); delay_ms(100); }   //Limpia la pantalla para borrar el mensaje que dice presionar b clear(); Espera que se presione el botón b que inicia todo el proceso Mientras muestra el valor de voltaje presente en la batería

Instrucción para añadir tonos al Pololu 3pi //Emite un sonido de la escala do re mi.... a volumen 10 (v10) con retardo de corche(L8) play("L8 V10 crrdrrerrfrrgrrarrbrr");   while(1){ //Lee el analogico en el puerto 6 y 5 s1= analog_read(6); s2= analog_read(5); Instrucción para añadir tonos al Pololu 3pi Lectura de los valores obtenidos por los sensores para iniciar su movimiento

Instrucción para añadir tonos al Pololu 3pi //Emite un sonido de la escala do re mi.... a volumen 10 (v10) con retardo de corche(L8) play("L8 V10 crrdrrerrfrrgrrarrbrr");   while(1){ //Lee el analogico en el puerto 6 y 5 s1= analog_read(6); s2= analog_read(5); Instrucción para añadir tonos al Pololu 3pi Lectura de los valores obtenidos por los sensores para iniciar su movimiento

Imprime el valor de los sensores S1 y S2 print("s1 "); print_long(s1); lcd_goto_xy(0,1); print("s2 "); print_long(s2);   //Si se encuentra a una distancia entre 10 a 15 cm se detiene a esperar while(s1<360 && s1>300){ //(d<15 && d>10) La relación es inversa s1= analog_read(6); s2= analog_read(5); Imprime el valor de los sensores S1 y S2 Si se encuentra a una distancia entre 10 a 15 cm se detiene a esperar

Imprime el valor de los sensores S1 y S2 print("s1 "); print_long(s1); lcd_goto_xy(0,1); print("s2 "); print_long(s2); set_motors(0,0); cnt++; cnt2=0; delay_ms(1); Imprime el valor de los sensores S1 y S2

Instrucción para añadir tonos al Pololu 3pi if(cnt>=4000){   //Giro hasta detectar un espacio libre para seguir un camino while(s1>100 && s2>100){ play("L8 V10 crdrerfrgrarbr"); s1= analog_read(6); s2= analog_read(5); Instrucción para añadir tonos al Pololu 3pi Lectura de los valores obtenidos por los sensores

Imprime el valor de los sensores S1 y S2 print("s1 "); print_long(s1); lcd_goto_xy(0,1); print("s2 "); print_long(s2); delay_ms(100); //Signos diferentes para que gire set_motors(40,-40); cnt2++; cnt=0; }  } Imprime el valor de los sensores S1 y S2 Giro del Robot

Si el sensor derecha e izquierda ve una distancia grande avanza if(s1<360 && s2<360){ //(d1>15 && d2>15) s1= analog_read(6); set_motors(40,40); cnt=0; }   if(s1>300){ \//(d1<10) play("L8 V10 crrrerrrcrrrerrrcrrre"); set_motors(-40,-40); Si el sensor derecha e izquierda ve una distancia grande avanza Si el sensor derecho ve una distancia corta retrocede para evitar colisiones mientras emite un sonido

Imprime el valor de los sensores S1 y S2 s1= analog_read(6); s2= analog_read(5);   print("s1 "); print_long(s1); lcd_goto_xy(0,1); print("s2 "); print_long(s2); //Deja limpia la LCD clear(); } return 0; Imprime el valor de los sensores S1 y S2 Finalización del programa limpiando la pantalla

CURVA DE CONVERSION VOLTAGE ANALOGO VS DISTANCIA Tabla de Conversión (Cm - ADC) Cm ADC 1 204 2 307 3 409 4 512 5 614 10 471 20 266 30 184 40 153 50 122 60 102 70 81 80 61 90 100

FUNCIONES PRINCIPALES print(“mensaje"): Permite presentar un mensaje en la pantalla LCD (8 columnas y 2 filas) del robot Pololu . print_long (“valor de la distancia"): Permite mostrar el valor que se guarde en una variable. set_motors(+/-vel, +/-vel): Modifica la velocidad de los motores de 600 a 0 rpm con solo darle a vel 255 para el primer caso ó “0” para el segundo caso, además se puede cambiar el giro cambiando su signo a negativo.

FUNCIONES PRINCIPALES play("Lx Vy caracteres"): Esta función permite emitir sonidos o series de sonidos con un control de tiempo x y volumen y de las notas musicales do=c; re=d ; mi=e; fa=f; sol=g; la=a ; si=b. Y el corche "r" el cual permite hacerle un retardo o alargamiento a la nota que se coloque antes de esta.

IMPLEMENTACION PRELIMINAR La implementación del proyecto se la hará de la siguiente manera: El Robot contará con la implementación de un control esquivador de objetos El diseño de este proyecto se basa en controlar el Robot Pololu utilizando la ayuda de sensores de distancia trabajando a manera de convertidores de señal El Pololu deberá conservar una equidistancia proporcionada por el usuario Implementar rutinas para que el Robot pueda realizar un giro de búsqueda de salidas. Programar la pantalla LCD del robot POLOLU para presentar datos específicos

APLICACIONES PRINCIPALES Entre las aplicaciones se puede observar el comercio, la seguridad de los autos y la exploración espacial Pequeños vehículos autónomos enfocados hacia la minería y a exploración subterránea. El campo de aplicación de este proyecto está relacionado con la industria automovilística. Desarrollar un prototipo inteligente para poder evitar obstáculos y colisiones

VENTAJAS PRINCIPALES Evita cualquier tipo de obstáculos: móviles o estáticos. Facilidad de busca de obstáculos gracias a los dos frentes de visión uno derecho y otro izquierdo para obstáculos presentes en estas direcciones. Búsqueda autónoma en su propio eje de hasta 360 grados para evitar obstáculos.

DESVENTAJAS PRINCIPALES Al depender de los sensores el evadir obstáculos tiene un rango fijo de altura, es decir solo reconoce obstáculos a la altura que en que se ubiquen los sensores. Por su acción de evasión repentina el desplazamiento del robot es de mediana velocidad. Al ser energizado con baterías posee un tiempo limitado de funcionamiento de aproximadamente 4 horas de forma continua.

CONCLUSIONES El proyecto realizado es un robot demostrativo el cual necesita mucho tiempo en su investigación, ya que es un ejemplar que contiene un sin numero de funciones, librerías y rutinas que sirven para mejorar su diseño y así convertirse en un producto de tipo comercial. Se logro diseñar un sistema que no solo detecta objetos u obstáculos fijos sino que además obstáculos móviles, es decir por medio de programación al robot Pololu se realiza un código para mantener siempre una distancia de modo que en su recorrido no permita ningún tipo de colisión. Se puede tomar a este prototipo como una base para futuros proyectos, similares en los cuales se puede mejorar la forma de detectar obstáculos y evitarlos usando nuevas tecnologías. Ya que este tipo de tecnología usada representa un auxiliar en cuanto a la prevención de accidentes, facilitando el desplazamiento de un sitio a otro con comodidad y tranquilidad.  

RECOMENDACIONES Se debe tomar en cuenta el medio donde se desarrolle el robot o donde se movilice, ya que los sensores son muy sensibles a la luz y eso impediría el fácil movimiento del robot, esto hace referencia a los objetos que el robot esquivaría. Es importante tener claro que el Pololu solo cuenta con 2 sensores frontales es decir se complicaría el movimiento al retroceder ya que primero debería dar el giro y luego el movimiento, ya que no cuenta con un sensor en la parte de atrás, es decir es preferible un lugar sin muchos obstáculos en la parte posterior. La velocidad a la que el robot se mueve debido a que los sensores necesitan un tiempo para cambiar su valor en la curva, el ADC haga la conversión y siga las ordenes del algoritmo.

BIBLIOGRAFIA 1).- Página principal donde se describe al pololu 3pi: partes, funciones, precios y guías que ayudaran a programar el robot pololu 3pi. http://www.pololu.com Fecha de consulta: 25/04/11. 2).- Guía de usuario del robot pololu el cual da pautas para verificar el pololu asi como el de instalar software y drives que se usen para la programación del robot, www.pololu.com/file/0J137/Pololu3piRobotGuiaUsuario.pdf 3).- Descripción y especificaciones breves del módulo Orangután, http://www.pololu.com/catalog/product/1227/specs   4).- Recursos dados para la utilización de las librerías, programadores para el pololu 3 pi, http://www.pololu.com/catalog/product/1227/resources Fecha de consulta: 27/04/11.

GRACIAS POR SU ATENCION

SEMINARIO DE GRADUACION Control de Robot Pololu con sensores de distancia para mantener equidistancia a referencia móvil Integrantes: Jessica Saavedra Castro José Luis Chávez Aguilar

OBJETIVOS Aprender a utilizar y manipular de manera sencilla las rutinas de programación en la plataforma AVR Studio 4. Diseño e implementación de un código óptimo para mantener equidistancia a referencia móvil. Aprovechar todos los recursos que posee el POLOLU 3PI. Uso adecuado de los sensores de distancia de SHARP.

HARDWARE DEL PROYECTO ROBOT POLOLU 3PI

CARACTERISTICAS POLOLU 3PI 4 pilas AAA 2 Motores que trabajan a 9.25V 5 sensores IR 1 pantalla LCD de 8x2 caracteres 1 alarma 3 botones. Conector ISP Entre otros

HARDWARE DEL PROYECTO SENSOR ANALÓGICO SHARP

CARACTERISTICAS SENSORES SHARP Los Sensores Sharp GP2Y0A21YK tienen características como: Rango de detección La interfaz adaptable Salida analógica solo puede conectarse a un convertidor de analógico a digital Salida puede ser conectado a un comparador de umbral de detección Los sensores de distancia Sharp son una opción popular para muchos proyectos que requieren mediciones precisas de distancia Sensor de infrarrojos muy económico

DIAGRAMA DE BLOQUES

DIAGRAMA DE FLUJO

CURVA DE CONVERSION VOLTAGE ANALOGO VS DISTANCIA Tabla de Conversión (Cm - ADC) Cm ADC 1 204 2 307 3 409 4 512 5 614 10 471 20 266 30 184 40 153 50 122 60 102 70 81 80 61 90 100

CONCLUSIONES El proyecto realizado es un robot demostrativo el cual necesita mucho tiempo en su investigación, ya que es un ejemplar que contiene un sin numero de funciones, librerías y rutinas que sirven para mejorar su diseño y así convertirse en un producto de tipo comercial. Se logro diseñar un sistema que no solo detecta objetos u obstáculos fijos sino que además obstáculos móviles, es decir por medio de programación al robot Pololu se realiza un código para mantener siempre una distancia de modo que en su recorrido no permita ningún tipo de colisión. Se puede tomar a este prototipo como una base para futuros proyectos, similares en los cuales se puede mejorar la forma de detectar obstáculos y evitarlos usando nuevas tecnologías. Ya que este tipo de tecnología usada representa un auxiliar en cuanto a la prevención de accidentes, facilitando el desplazamiento de un sitio a otro con comodidad y tranquilidad.  

RECOMENDACIONES Se debe tomar en cuenta el medio donde se desarrolle el robot o donde se movilice, ya que los sensores son muy sensibles a la luz y eso impediría el fácil movimiento del robot, esto hace referencia a los objetos que el robot esquivaría. Es importante tener claro que el Pololu solo cuenta con 2 sensores frontales es decir se complicaría el movimiento al retroceder ya que primero debería dar el giro y luego el movimiento, ya que no cuenta con un sensor en la parte de atrás, es decir es preferible un lugar sin muchos obstáculos en la parte posterior. La velocidad a la que el robot se mueve es debido a que los sensores necesitan un tiempo para cambiar su valor en la curva, el ADC haga la conversión y siga las ordenes del algoritmo.

GRACIAS POR SU ATENCION