1 Robot Cañón Integrantes: Felipe Riquelme Mario Leverone Gonzalo Flores Universidad de Chile - FCFM Desarrollo de Software para Robots 2010 Grupo 9 - Robot Cañón
2 Proyecto El proyecto fue armar un robot capaz de: ◦Identificar un blanco a cierta distancia. ◦Apuntar hacia este. ◦Disparar un pequeño proyectil (que es parte del kit lego). Robot Cañón – Grupo 9 - Desarrollo de Software para Robots 2010
3 Motivación Nos atrae la idea de un objeto que dispare proyectiles. Lanzamiento de Proyectil visto experimentalmente. Robot Cañón – Grupo 9 - Desarrollo de Software para Robots 2010
4 Etapas desarrolladas Las etapas que hemos desarrollado para conseguir el objetivo son: Visión sobre una dimensión para el lanzamiento del proyectil, con variación del ángulo de disparo. Ampliar la visión a dos dimensiones, con variación del ángulo de disparo y dejando el disparo de forma manual. Visión en dos dimensiones, sin variación del ángulo de disparo, dejando el disparo de forma automática. Robot Cañón – Grupo 9 - Desarrollo de Software para Robots 2010
5 Construcción Hardware Estructura principal: Robot Cañón – Grupo 9 - Desarrollo de Software para Robots 2010
6 Cañón: Robot Cañón – Grupo 9 - Desarrollo de Software para Robots 2010
7 Sensores: Robot Cañón – Grupo 9 - Desarrollo de Software para Robots 2010
8 Ruedas orugas: Robot Cañón – Grupo 9 - Desarrollo de Software para Robots 2010
9 Bloque y vista final: Robot Cañón – Grupo 9 - Desarrollo de Software para Robots 2010
10 Diagrama UML Robot Cañón – Grupo 9 - Desarrollo de Software para Robots 2010
11 Estructura de clases Robot Cañón – Grupo 9 - Desarrollo de Software para Robots 2010 static public void main(String [] args) { piloto.setMoveSpeed(200); piloto.setTurnSpeed(200); while(!objetivo) { Avanzar(dist_inicial); if(objetivo) break; Rotar(); if(objetivo) break; Ajustar_ruta( 8); if(objetivo) break; } Disparar(); Button.waitForPress(); }
12 Alcance del robot Robot Cañón – Grupo 9 - Desarrollo de Software para Robots 2010
13 Código de algunos métodos Robot Cañón – Grupo 9 - Desarrollo de Software para Robots 2010 /* Método encargado de realizar una rotación * para recorrer el campo de alcance */ static private void Ajustar_ruta( int puntos) { System.out.println("Ajuste_ruta"); piloto.rotate(360/puntos, true); while(piloto.isMoving() && !objetivo){ Buscar(alcance); } piloto.stop(); } /* Método que determina si hay algún objetivo (obstáculo) a cierta distancia.*/ static private void Buscar(int mira){ Dobjetivo= Usound.getDistance(); if(Dobjetivo
14 Principales problemas La forma en la cual el sensor de ultrasonido mide los datos. Geometría de algunos tipos de piezas. Robot Cañón – Grupo 9 - Desarrollo de Software para Robots 2010
15 Estadísticas De cada 5 lanzamientos, obtuvimos 4 aciertos, lo que se traduce en 80% de aciertos. Robot Cañón – Grupo 9 - Desarrollo de Software para Robots 2010
16 Demostración