scieee AI-readable full text Open interactive document viewer

Repositorio Institucional de Documentos

Abstract

En este proyecto se trabaja con el Robot LegoMindStorms NXT, destacado por su bajo coste, su reprogramación, robustez y versatilidad(facilidad en la modificación de la estructura del robot, simulación de Ingenios mecánicos que nos rodean día a día...). Todo ello de forma interactiva y virtual potenciando el Aprendizaje por descubrimiento, con objeto de aportar un valor al alumno tanto teórico como practico en campos como pueden ser Ingeniería mecánica y automatización de procesos. Recaj Fernández, David; Val Blasco, Sonia

Full text

David Recaj Fernández 1 DISEÑO DE CASOS PRÁCTICOS DE PROCESOS INDUSTRIALES AUTOMATIZADOS APLICADOS A LA DIDÁCTICA DE ASIGNATURAS DE INGENIERÍA INGENIERÍA INDUSTRIAL TÉCNICA MECÁNICA PROYECTO FIN DE CARRERA David Recaj Fernández Mayo 2012 Dirigido por: Sonia Val Blasco Departamento de Diseño y Fabricación EUTI, Universidad de Zaragoza David Recaj Fernández 2 IDICE DEL COTEIDO 1. ITRODUCCIÓ...................................................................................................... 7 2. OBJETIVOS ............................................................................................................... 8 3. ATECEDETES DE LA ROBÓTICA.................................................................. 9 4. BASES DEL PROYECTO....................................................................................... 10 4.1 ESTRUCTURA LEGOMINDSTORM.............................................................. 10 4.1.1 PLACAS, VIGAS Y BLOQUES. .......................................................... 10 4.1.2 EJES ....................................................................................................... 11 4.1.3 CASQUILLOS ....................................................................................... 12 4.1.4 CLAVIJAS ............................................................................................. 12 4.1.5 RUEDAS................................................................................................ 12 4.1.6 ENGRANAJES ...................................................................................... 13 4.1.7 CORREAS Y POLEAS.......................................................................... 13 4.1.8 SENSORES LEGOMINDSTORM........................................................ 14 4.1.9 FUENTE DE ENERGÍA EN LEGOMINDSTORM.............................. 17 4.1.10 ELEMENTOS DE CONTROL, SERVOMOTORES Y CABLES DE UNIÓN LEGOMINDSTORM................................................................ 18 4.2 PLATAFORMAS DE SOFTWARE LEGO ...................................................... 21 4.2.1 LEGO MINDSTORMS NXT Y SUS FUNCIONES............................. 21 4.2.2 LEGO DIGITAL DESIGNER ............................................................... 36 4.3 SUPERFICIE DE TRABAJO ............................................................................ 38 5. DESARROLLO........................................................................................................ 39 5.1 PRIMER MONTAJE: VEHICULO DE GUIADO AUTOMÁTICO CON SENSOR DE LUZ.............................................................................................. 39 5.1.1 OBJETIVOS DEL MONTAJE .............................................................. 40 5.1.2 CONSTRUCCIÓN DEL EXPERIMENTO........................................... 40 5.2 SEGUNDO MONTAJE: VEHICULO DE GUIADO AUTOMÁTICO CON SENSOR DE LUZ, TACTO Y SONIDO .......................................................... 49 5.2.1 OBJETIVOS DEL MONTAJE ............................................................... 50 5.2.2 CONSTRUCCIÓN DEL EXPERIMENTO............................................ 50 5.3 TERCER MONTAJE: VEHICULO DE GUIADO AUTOMÁTICO CON SENSOR DE LUZ Y ULTRASONIDOS.......................................................... 63 5.3.1 OBJETIVOS DEL MONTAJE .............................................................. 64 5.3.2 CONSTRUCCIÓN DEL EXPERIMENTO........................................... 64 5.4 CUARTO MONTAJE: CARRETILLA GUIADA A TRAVÉS DE UNA TRAYECTORIA CON/SIN CARGA (AGV).................................................... 76 5.4.1 OBJETIVOS DEL MONTAJE ..................................................................... 77 5.4.2 CONSTRUCCIÓN DEL EXPERIMENTO................................................. 77 5.5 QUINTO MONTAJE: PUENTE GRÚA ........................................................... 95 5.5.1 OBJETIVOS DEL MONTAJE .............................................................. 96 5.5.2 CONSTRUCCIÓN DEL EXPERIMENTO........................................... 96 6. RESULTADOS....................................................................................................... 113 7. BIBLIOGRAFÍA.................................................................................................... 115 David Recaj Fernández 3 IDICE DE LAS ILUSTRACIOES Fig.(1.1): Kit LegoMindStorm. Fig.(1.2): Contenido del Kit. ................................... 7 Fig.(3.1.1):Talleres de Ingeniería Mecánica con plataforma LegoMindStorms RIS y.... 9 LegoMindStorm Modelo RIS. Fig.(4.1.2.1): Ejemplo Placas LegoMindStorm.............................................................. 10 Fig.(4.1.2.2): Ejemplo Vigas LegoMindStorm. ............................................................. 10 Fig.(4.1.1.3): Ejemplo Bloques LegoMindStorm........................................................... 11 Fig.(4.1.2.1): Ejemplo Ejes LegoMindStorm................................................................. 11 Fig.(4.1.3.1): Ejemplo Casquillos LegoMindStorm....................................................... 12 Fig.(4.1.4.1): Ejemplo Clavijas LegoMindStorm........................................................... 12 Fig.(4.1.5.1): Ejemplo Neumáticos y llantas LegoMindStorm. ..................................... 13 Fig.(4.1.6.1): Ejemplo Engranajes LegoMindStorm...................................................... 13 Fig.(4.1.7.1): Ejemplo Polea y Correa LegoMindStorm................................................ 14 Fig.(4.1.8.1): Sensor de contacto LegoMindStorm. ....................................................... 14 Fig.(4.1.8.2): Sensor de Luz LegoMindStorm................................................................ 15 Fig.(4.1.8.3): Sensor de Sonido LegoMindStorm. ......................................................... 15 Fig.(4.1.8.4): Sensor de Ultrasonidos LegoMindStorm. ................................................ 16 Fig.(4.1.9.5): Algunos Sensores de Hitechnic................................................................ 16 Fig.(4.1.8.6): Algunos Sensores de MindSensors. ......................................................... 17 Fig.(4.1.9.1): Bloque NXT(parte trasera) LegoMindStorm. .......................................... 17 Fig.(4.1.9.2): Ejemplo Energía Mecánica LegoMindStorm........................................... 18 Fig.(4.1.10.1): Elemento de Control(Bloque NXT) LegoMindStorm............................ 19 Fig.(4.1.10.2): Mando de Control LegoMindStorm....................................................... 19 Fig.(4.1.10.3): Servomotor LegoMindStorm. ................................................................ 20 Fig.(4.1.10.4): Motor LegoMindStorm. ......................................................................... 20 Fig.(4.1.10.5): Elemento de Unión LegoMindStorm. .................................................... 21 Fig.(4.2.1.1): Elemento de Unión LegoMindStorm. ...................................................... 22 Fig.(4.2.1.2): Elemento de Unión LegoMindStorm. ...................................................... 22 Fig.(4.2.1.2.1): Panel del Bloque de puesta en marcha de los motores.......................... 23 Fig.(4.2.1.2.2): Panel del Bloque Grabado de movimiento............................................ 24 Fig.(4.2.1.2.3): Panel del Bloque de Emisión de sonidos............................................... 24 Fig.(4.2.1.2.4): Panel del Bloque para mostrar imagenes............................................... 25 Fig.(4.2.1.2.5): Panel del Bloque de espera.................................................................... 25 Fig.(4.2.1.2.7): Panel del Bloque de motor. ................................................................... 26 Fig.(4.2.1.2.8): Interfaz del Creador de Bloques............................................................ 27 Fig.(4.2.1.2.10): Panel del Bloque de Envio de datos.................................................... 27 Fig.(4.2.1.2.11): Panel del Bloque de Colores................................................................ 28 Fig.(4.2.1.2.12): Panel del Sensor de tacto..................................................................... 28 Fig.(4.2.1.2.13): Panel del Sensor de sonido.................................................................. 28 Fig.( 4.2.1.2.14): Panel del Sensor de Luz. .................................................................... 29 Fig.( 4.2.1.2.15): Panel del Sensor de Ultrasonidos. ...................................................... 29 Fig.( 4.2.1.2.16): Panel de Bloque Botones Nxt............................................................. 30 Fig.( 4.2.1.2.17): Panel del Sensor de Giro. ................................................................... 30 Fig.( 4.2.1.2.18): Panel del Bloque Tiempo. .................................................................. 30 Fig.( 4.2.1.2.19): Panel del Bloque Recepción de Datos................................................ 31 Fig.( 4.2.1.2.20): Panel del Sensor de Color. ................................................................. 31 David Recaj Fernández 4 Fig.( 4.2.1.2.21): Panel de la función Booleana. ............................................................ 32 Fig.( 4.2.1.2.22): Panel de la función Matemática. ........................................................ 32 Fig.( 4.2.1.2.23): Panel de la función Comparación....................................................... 32 Fig.( 4.2.1.2.24): Panel de la función Rango de Datos................................................... 32 Fig.( 4.2.1.2.25): Panel de la función Random............................................................... 33 Fig.( 4.2.1.2.26): Panel de la función Variables............................................................. 33 Fig.( 4.2.1.2.27): Panel de la función Constantes........................................................... 33 Fig.( 4.2.1.2.28): Panel de la función Mostrar datos...................................................... 33 Fig.( 4.2.1.2.29): Panel de la función Mostrar texto....................................................... 34 Fig.( 4.2.1.2.31): Panel de la función Modificar Ficheros.............................................. 34 Fig.( 4.2.1.2.32): Panel de la función Calibrado............................................................. 34 Fig.( 4.2.1.2.33): Panel de la función Reseteo de motores............................................. 35 Fig.( 4.2.1.2.34): Panel de la función Bluetooth. ........................................................... 35 Fig.( 4.2.1.2.35.1): Panel del Bloque Interruptor con control tipo valor........................ 35 Fig.( 4.2.1.2.35.2): Panel del Bloque Interruptor con control tipo sensor...................... 35 Fig.( 4.2.1.2.36): Panel del Bloque Bucle. ..................................................................... 36 Fig.(4.2.2.1):Software Lego Digital Designer................................................................ 37 Fig.(4.2.2.2):Building Guide Lego Digital Designer. .................................................... 37 Fig.(4.3): Cuatro partes de 300 mm. x 1000 mm. x 10 mm........................................... 38 Plegadas a 300 mm. x 1000 mm. x 40 mm. Fig.(5.1): Primer Montaje............................................................................................... 39 Fig.(5.1.2.B.B1.1):Piezas para el Montaje de la estructura trasera. ............................... 41 Fig.( 5.1.2.B.B1.2):Piezas para el Montaje de la estructura delantera. .......................... 42 Fig.( 5.1.2.B.B1.3):Piezas para el Montaje de la estructura superior............................. 42 Fig.( 5.1.2.B.B2.1): Montaje de la primera parte, apoyo trasero.................................... 43 Fig.( 5.1.2.B.B2.2): Montaje de la Segunda parte, apoyo delantero. ............................. 44 Fig.( 5.1.2.B.B2.3): Montaje de la estructura completa. ................................................ 45 Fig.( 5.1.2.B.B3): Dimensiones del Primer montaje . .................................................... 46 Fig.( 5.1.2.C): Programa para el Primer montaje . ......................................................... 47 Fig.( 5.1.2.D): Funcionamiento del Primer montaje ...................................................... 48 Fig.(5.2):Segundo Montaje............................................................................................. 49 Fig.(5.2.2.B.B1.1): Piezas para el Montaje de la estructura trasera. .............................. 51 Fig.( 5.2.2.B.B1.2):Piezas para el Montaje de la estructura delantera. .......................... 52 Fig.( 5.2.2.B.B1.3):Piezas para el Montaje de la estructura superior............................. 52 Fig.( 5.2.2.B.B2.1): Montaje de la primera parte, apoyo trasero.................................... 53 Fig.( 5.2.2.B.B2.2): Montaje de la Segunda parte, apoyo delantero .............................. 54 Fig.( 5.2.2.B.B2.3): Montaje de la estructura completa. ................................................ 55 Fig.( 5.2.2.B.B3.): Dimensiones Segundo Montaje........................................................ 56 Fig.( 5.2.2.C): Programa para el Segundo Montaje........................................................ 56 Fig.( 5.2.2.C.1.2):Función MyBlock 10 ......................................................................... 57 Fig.( 5.2.2.C.1.4): Función MyBlock8. .......................................................................... 57 Fig.( 5.2.2.C.1.4.7): Función MyBlock6........................................................................ 58 Fig.( 5.2.2.C.1.5): Función MyBlock9. .......................................................................... 59 Fig.( 5.2.2.C.1.5.3):Función MyBlock3. ........................................................................ 59 Fig.( 5.2.2.C.1.5.9):Función MyBlock4. ........................................................................ 60 Fig.( 5.2.2.D.1):Funcionamiento cuando la Primera Base es Negra. ............................. 61 Fig.( 5.2.2.D.2):Funcionamiento cuando la Segunda base es Blanca. ........................... 62 David Recaj Fernández 5 Fig.(5.3): Tercer montaje............................................................................................... 63 Fig.(5.3.2.B.B1.1): Piezas para el Montaje de la parte trasera....................................... 65 Fig.( 5.3.2.B.B1.2): Piezas para el Montaje de la parte delantera.................................. 66 Fig.( 5.3.2.B.B1.3): Piezas para el Montaje de la parte superior.................................... 66 Fig.( 5.3.2.B.B2.1): Montaje de la primera parte, apoyo trasero.................................... 67 Fig.( 5.3.2.B.B2.2): Montaje de la segunda parte, apoyo delantero............................... 68 Fig.( 5.3.2.B.B2.3): Montaje de la estructura completa. ................................................ 69 Fig.( 5.3.2.B3.): Dimensiones del tercer montaje........................................................... 70 Fig.( 5.3.2.C): Programa del tercer montaje................................................................... 70 Fig.( 5.3.2.C.4): Programa de la función MyBlock12.................................................... 71 Fig.( 5.3.2.C.4.4):Programa de la función MyBlock13.................................................. 71 Fig.( 5.3.2.C.4.5):Programa de la función MyBlock14.................................................. 72 Fig.( 5.3.2.C.5): Programa de la función MyBlock16.................................................... 73 Fig.( 5.3.2.D.1): Funcionamiento si encuentra un obstáculo tras la primera base. ........ 74 Fig.( 5.3.2.D.2):Funcionamiento si encuentra un obstáculo tras la segunda base.......... 75 Fig.(5.4):Cuarto Montaje................................................................................................ 76 Fig.(5.4.2.A.A1):Posición del final de carrera. .............................................................. 78 Fig.(5.4.2.B.B1.1.): Piezas para la estructura de la parte trasera.................................... 79 Fig.( 5.4.2.B.B1.2): Piezas para la estructura de la parte delantera................................ 79 Fig.( 5.4.2.B.B1.3):Piezas para la construcción de las Horquillas................................. 80 Fig.( 5.4.2.B.B1.4): Piezas para la estructura de la parte superior. ................................ 80 Fig.( 5.4.2.B.B2.3): Montaje de la estructura de la parte trasera.................................... 81 Fig.( 5.4.2.B.B2.2): Montaje de la estructura de la parte delantera................................ 82 Fig.(5.4.2.B.B2.3): Guía para diseñar y montar, los componentes indicados................ 83 Fig.( 5.4.2.B.B2.4): Montaje de las horquillas. .............................................................. 84 Fig.( 5.4.2.B.B2.5): Montaje final.................................................................................. 85 Fig.( 5.4.2.B3): Programa cuarto montaje...................................................................... 86 Fig.( 5.4.2.C): Programa cuarto montaje........................................................................ 86 Fig.( 5.4.2.C.1): Función “ Primera base”...................................................................... 86 Fig.( 5.4.2.C.2): Función “Buscando”............................................................................ 87 Fig.( 5.4.2.C.2.4): Función “Error”. ............................................................................... 88 Fig.( 5.4.2.C.3): Función “Segunda base”...................................................................... 88 Fig.( 5.4.2.C.4): Función “Almacenar”. ......................................................................... 89 Fig.( 5.4.2.C.4.3): Función “Depositando”..................................................................... 90 Fig.( 5.4.2.C.4.4): Función “De vuelta”. ........................................................................ 90 Fig.( 5.4.2.C.4.5): Función “Depositando_”................................................................... 91 Fig.( 5.4.2.C.4.6): Función “Devuelta_”. ....................................................................... 91 Fig.( 5.4.2.D.1):Esquema de funcionamiento cuando la base es negra.......................... 92 Fig.( 5.4.2.D.2): Esquema de funcionamiento cuando la base es blanca ....................... 93 Fig.( 5.4.2.D.3): Esquema cuando no hay Item, en la entrada de material..................... 94 Fig.( 5.5): Quinto montaje ............................................................................................. 95 Fig.( 5.5.2.B.B1.1): Piezas para el montaje de la parte longitudinal.............................. 97 Fig.( 5.5.2.B.B1.2 ): Piezas para el montaje de la parte transversal............................... 98 Fig.( 5.5.2.B.B1.3 ): Piezas para el montaje de los pilares y los mandos de control...... 98 Fig.( 5.5.2.B.B2.1 ):Ensamblaje de las guías longitudinales.......................................... 99 Fig.( 5.5.2.B.B2.2 ):Ensamblaje de las guías longitudinales........................................ 100 Fig.( 5.5.2.B.B2.3 ): Ensamblaje de las guía transversal.............................................. 101 David Recaj Fernández 6 Fig.( 5.5.2.B.B2.4 ): Ensamblaje de la guía transversal. .............................................. 102 Fig.( 5.5.2.B.B2.5 ): Ensamblaje de los pilares y conjunto final.................................. 103 Fig.( 5.5.2.B.B3 ): Dimensiones quinto montaje.......................................................... 104 Fig.( 5.5.2.C ): Programa principal del Quinto Montaje. ............................................. 105 Fig.(5.5.2.C.5 ): Bloque “dirección Item”.................................................................... 105 Fig.(5.5.2.C.5.4 ): Bloque función movimiento guía longitudinal............................... 106 Fig.(5.5.2.C.5.7 ): Bloque Función movimiento guía transversal................................ 107 Fig.(5.5.2.C.6 ): Bloque Función con el Item............................................................... 108 Fig.(5.5.2.C.6.4 ): Bloque Función movimiento de la guía longitudinal. .................... 109 Fig.(5.5.2.C.6.7 ): Bloque Función movimiento de la guía transversal. ...................... 110 Fig.( 5.5.2.D): Funcionamiento del Quinto montaje . .................................................. 111 Fig.(6.A ): Ciclo de la evolución del Proyecto, Aprendizaje por descubrimiento. ...... 113 David Recaj Fernández 7 1. INTRODUCCIÓN La Real Academia de la Lengua Española nos define la Robótica como: “Técnica que aplica la informática al diseño y empleo de aparatos que, en sustitución de personas, realizan operaciones o trabajos, por lo general en instalaciones industriales” En este proyecto trabajaremos con el Robot Lego MindStorms NXT, destaca por su bajo coste, la facilidad para reconfigurarlo, su reprogramación, versatilidad y robustez todo ello de una forma interactiva y virtual. Prácticamente todo se puede representar con las piezas como en la vida real, como por ejemplo: un elevador o robots industriales. Lego MindStorms se basa en dos ideas, la experimentación y el descubrimiento lo que nos lleva al Aprendizaje por descubrimiento. Esta teoría sostiene que los estudiantes son mas propensos a entender y recordar conceptos que habían descubierto en el curso de su propia experiencia. Fig.(1.1): Kit LegoMindStorm. Fig.(1.2): Contenido del Kit. David Recaj Fernández 8 2. OBJETIVOS En el presente proyecto se pretende ofrecer una visión amplia y actual de la Robótica en el entorno Formativo y mostrar ejemplos de aplicaciones prácticas que puedan ser utilizadas en el desarrollo de la docencia. Los objetivos mas detallados de este proyecto son: a) Analizar las posibilidades que permiten los montajes con robots LegoMindStorm. b) Plantear diferentes casos prácticos docentes usando el robot, revisando, entre otros los siguientes aspectos: 1. Análisis y estudio de los modelos cinemáticos. 2. Sensores a utilizar en cada modelo. 3. Montaje de los modelos, consiguiendo el objetivo con el menor numero de piezas y asegurando la estabilidad tanto de manera estática como dinámica. 4. Conocer el alcance de los sensores utilizados para este proyecto. 5. Mostrar de manera experimental el alcance del Kit docente, pudiendo formar a los alumnos en diversos campos como por Ejemplo: la automatización y en cálculos mecánicos. 6. Mostrar el potencial de este producto para la educación. 7. Conocer y dar uso Práctico a mecanismos. 8. Experimentación y análisis de la fiabilidad y alcance de precisión, de los elementos utilizados en el modelo. Para llevar a cabo estos objetivos, se ha utilizado la Plataforma LegoMindStorm. Se han realizado pruebas en un terreno preparado para este proyecto. El ordenador que se ha utilizado para la programación y el diseño previo del Robot ha sido un portátil con un procesador Intel Core 2 Duo processor P7350, con sistema operativo Windows Vista. David Recaj Fernández 9 3. ANTECEDENTES DE LA ROBÓTICA La Robótica ha efectuado un enorme progreso en las últimas décadas. Elementos hardware cada día mas potentes y la incorporación de nuevas funcionalidades. En general la historia de la robótica la podemos clasificar en cinco generaciones: 1. Las dos primeras, ya alcanzadas en los ochenta, incluían la gestión de tareas repetitivas con autonomía muy limitada. 2. La tercera generación incluiría visión artificial, en lo cual se ha avanzado mucho en los ochenta y noventa. 3. La cuarta incluye movilidad avanzada en exteriores e interiores y la quinta estaría en el domino de la inteligencia artificial en lo cual se esta trabajando actualmente La idea de utilizar la robótica en la educación se baso en el trabajo de investigación de Seymour Papert, entre otros uno de los creadores del LOGO(Lenguaje de programación de alto nivel, funcional, estructurado y de fácil aprendizaje enfocado para niños y jóvenes). El trabajo de Papert con LOGO sirvió de base para las asociaciones de investigación entre el Media Lab del MIT y de la Corporación LEGO. En 1998, la compañía Lego lanzo un nuevo producto llamado el Sistema de Invención Robótica LegoMindStorms(RIS), se convirtió en un éxito comercial inmediato. En 2006 una importante actualización dio lugar al Kit LegoMindStorms NXT y gano el Premio a la Innovación 2006 de juguetes en la categoría de “Tecnología”. Se han desarrollado diversos estudios y talleres con el fin de ayudar en la Formación, entre otros, en el campo de la Ingeniería Mecánica. Fig.(3.1.1):Talleres de Ingeniería Mecánica con plataforma LegoMindStorms RIS y LegoMindStorm Modelo RIS. David Recaj Fernández 16 Fig.(4.1.8.4): Sensor de Ultrasonidos LegoMindStorm. • OTROS SENSORES. En el kit docente de LEGO MindStorms NXT solo contamos con cuatro sensores, definidos anteriormente. Existe una amplia gama de sensores compatibles con la Plataforma LEGO MindStorms con los cuales podemos realizar mas funciones como Por ejemplo: Fig.(4.1.9.5): Algunos Sensores de Hitechnic. Sensor de Color Sensor Infrarrojos Giro scopio David Recaj Fernández 17 Fig.(4.1.8.6): Algunos Sensores de MindSensors. Los suministradores de estos sensores son HiTechnic y MindSensors, poseen un mercado amplio de dispositivos y se pueden utilizar en otras plataformas Robóticas, pudiendo diversificar ampliamente la capacidad del Robot, es decir, aumentar la fiabilidad y el alcance de las simulaciones. 4.1.9 FUENTE DE ENERGÍA EN LEGOMINDSTORM • ENERGÍA ELÉCTRICA La obtendremos a partir de las pilas que son dispositivos que transforman la energía potencial química en energía eléctrica, estas formarán parte del bloque NXT. Fig.(4.1.9.1): Bloque NXT(parte trasera) LegoMindStorm. Seis pilas AA 1,5V Servomotor de Radio Control Detector de Obstáculos Sistema de visión David Recaj Fernández 18 • ENERGÍA MECÁNICA La obtendremos a partir de la posición y al movimiento de un cuerpo con lo que será la suma de las energías potencial, cinética y elástica de un cuerpo en movimiento Fig.(4.1.9.2): Ejemplo Energía Mecánica LegoMindStorm. 4.1.10 ELEMENTOS DE CONTROL, SERVOMOTORES Y CABLES DE UNIÓN LEGOMINDSTORM • ELEMENTO DE CONTROL En el bloque NXT tendremos 8 conectores, 3 utilizados para conectar los servomotores (A, B, C), 4 para conectar los sensores(1, 2, 3, 4) y 1 para conectar mediante USB (hasta 12 Mbit/s) el bloque NXT a la CPU con el objeto de operar con datos (situado en la zona de las conexiones a los Servomotores). Dispone de 4 botones con los cuales interactuaremos de una forma manual con el robot ya sea ejecutando programas o dando instrucciones básicas al robot sin necesidad de transferir el programa a través de USB. Dispone de unas cavidades laterales dando la posibilidad de insertar clavijas, y así poder formar parte de la estructura del robot Dispone de una pantalla grafica de 100x64 píxeles y con un área de visión de 26 x 40,6 mm. Manejaremos el NXT de una forma sencilla. Cuenta con un microprocesador (Atmel de 32 bits a 48MHz) utilizado extensivamente en electrónica de consumo (Moviles,PDAs…). David Recaj Fernández 19 Fig.(4.1.10.1): Elemento de Control(Bloque NXT) LegoMindStorm. • MANDO DE CONTROL Disponemos de un mando de control, va a transmitir la potencia para el movimiento del Motor. Únicamente tenemos 3 posiciones, movimiento hacia delante, hacia detrás y paro. Será accionado con la energía transmitida por 7 pilas AA 1,5V. Fig.(4.1.10.2): Mando de Control LegoMindStorm. • SERVOMOTORES Dispondremos de 3 servomotores, estos incorporan un sensor de posición que permite al controlador recibir información del movimiento. De esta forma podemos hacer que nuestro robot avance una distancia concreta o gire un ángulo determinado, sin utilizar temporizaciones. David Recaj Fernández 20 Fig.(4.1.10.3): Servomotor LegoMindStorm. • MOTOR Disponemos de un motor, a diferencia del servomotor, este no puede ser programado para variar su potencia y tiempo de uso, es decir, posee una potencia fija y es controlado por un mando de control. Fig.(4.1.10.4): Motor LegoMindStorm. • CABLES DE UNIÓN Estos cables trasmitirán las órdenes programadas desde el bloque NXT a los sensores y a los servomotores a través de una conexión “clip”. Dispondremos de cables con distinta longitud, 1 de 210mm, 4 de 370mm y 2 de 500mm. David Recaj Fernández 21 Fig.(4.1.10.5): Elemento de Unión LegoMindStorm. 4.2 PLATAFORMAS DE SOFTWARE LEGO. 4.2.1 LEGO MINDSTORMS NXT Y SUS FUNCIONES Mindstorms, es una de las herramientas de programación facilitada por Lego Group con objeto de programar al Robot y con ello llegar a los objetivos. El funcionamiento de la programación se desarrolla por medio de arrastrar los iconos (provenientes de las paletas) a la zona de Trabajo, cada icono desarrolla una función única. La combinación de todos ellos dará lugar al Programa, seguidamente, se compilara con el objetivo de detectar posibles errores en la maquetación del programa. Tras verificar su correcto funcionamiento se transferirá al Robot ( a través de USB), y se iniciaran las pruebas. David Recaj Fernández 22 Compilación del programa y transferencia al Robot Fig.(4.2.1.1): Elemento de Unión LegoMindStorm. Fig.(4.2.1.2): Elemento de Unión LegoMindStorm. Paletas de herramientas Zona de Trabajo David Recaj Fernández 23 A continuación se van a explicar las distintas funciones disponibles en el Software LegoMindStorms. 1. Bloque de Puesta en Marcha de los motores. Fig.(4.2.1.2.1): Panel del Bloque de puesta en marcha de los motores. A. Si tenemos establecida una conexión vía USB devuelve el valor de la potencia utilizada en los motores sobre 100. B. Puerto/os al que están conectado los motores. C. Dirección de movimiento (hacia delante, hacia atrás, paro). D. Configuración de giros. E. Potencia del motor en el movimiento sobre 100, a mas cerca de 100 mayor será la velocidad de movimiento debido a que se suministra una mayor potencia. F. Duración del movimiento, se puede medir en: Unlimited, usado principalmente en herramientas tipo bucle, movimiento sin limite. Degrees, movimiento programado en grados. Rotations, movimiento programado en rotaciones. Seconds, movimiento programado en tiempo, el cual varia según la potencia de motor. G. Siguiente función, Brake(freno del motor) o Coast (no se transfiere mas potencia, el Robot seguirá avanzando hasta que su velocidad llegue a cero). David Recaj Fernández 24 2. Bloque de Grabado de movimiento. Fig.(4.2.1.2.2): Panel del Bloque Grabado de movimiento. A. Permite grabar (record) o ejecutar(Play). B. Nombre de la grabación. C. Motores a grabar. D. Tiempo de grabación. 3. Bloque de Emisión de sonidos. Fig.(4.2.1.2.3): Panel del Bloque de Emisión de sonidos. A. Permite la elección de un fichero de sonido o un tono elegido por el usuario. B. Accionar o parar. C. Volumen del sonido sobre 100. D. Bucle de repetición. E. Ficheros almacenados en la carpeta predefinida del programa en el caso de Sound File. En el caso de elegir Tone(A) se mostrara de la siguiente manera. Fig.(4.2.1.2.3.1):Función de piano. F. Booleano para completar el sonido seleccionado. David Recaj Fernández 25 4. Bloque para mostrar una imagen en la Pantalla del Bloque NXT. Fig.(4.2.1.2.4): Panel del Bloque para mostrar imagenes. A. Acciones posibles a mostrar en la pantalla (Display). Image, muestra una imagen desde archivo. Text, permite mostrar un texto definido por el Usuario. Drawing, permite mostrar puntos, líneas y círculos. Reset, vuelve el Display a su estado de partida B. Booleano, con el cual borraremos lo mostrado en el Display. C. Selección del fichero predefinido por el Usuario o de los facilitados por LegoMindStorms. D. En este punto visualizaremos las imágenes que se mostraran en el Display. 5. Herramienta Wait(espera). Fig.(4.2.1.2.5): Panel del Bloque de espera. A. Muestra el tiempo de espera. B. Muestra el Control, pudiendo ser: Tiempo (predefinido por usuario) Sensor (Interfaz mostrada en la Fig. 4.2.1.2.5) C. Muestra el sensor que utilizaremos en la función. David Recaj Fernández 32 21. Bloque función Booleana. Fig.( 4.2.1.2.21): Panel de la función Booleana. Esta función se utiliza para comparar dos opciones pudiendo ser: “A And B”, “A or B”, “A XOr B”, “Not A” o “Not B”. Esta función se utiliza para enlazar varias funciones y que devuelvan un valor (Verdadero o Falso) con el objeto de activar las rutinas programadas. 22. Bloque función Matemática. Fig.( 4.2.1.2.22): Panel de la función Matemática. Se pueden realizar diversas operaciones con objeto de trabajar con Booleanos y activar o desactivar rutinas programadas. 23. Bloque función Comparación. Fig.( 4.2.1.2.23): Panel de la función Comparación. Se pueden realizar diversas operaciones con objeto de trabajar con Booleanos y activar o desactivar rutinas programadas. 24. Bloque función Rango de datos. Fig.( 4.2.1.2.24): Panel de la función Rango de Datos. David Recaj Fernández 33 Se pueden realizar diversas operaciones con objeto de trabajar con Booleanos y activar o desactivar rutinas programadas. 25. Bloque función Random. Fig.( 4.2.1.2.25): Panel de la función Random. Podemos establecer un rango de datos y con ello realizar diversas operaciones con objeto de trabajar con booleanos y activar o desactivar rutinas programadas. 26. Bloque función Variables. Fig.( 4.2.1.2.26): Panel de la función Variables. Podemos introducir o leer variables de tipo Lógico, Numérico y de Texto. 27. Bloque de la función Constantes. Fig.( 4.2.1.2.27): Panel de la función Constantes. Podemos elegir entre constantes predefinidas de tipo lógico, numérico y de texto. 28. Bloque Mostrar datos. Fig.( 4.2.1.2.28): Panel de la función Mostrar datos. David Recaj Fernández 34 A través de esta función podemos mostrar datos en la pantalla del display, como por ejemplo, la luminosidad en la sala, numero de accionamientos del motor, etc. 29. Bloque Mostrar texto. Fig.( 4.2.1.2.29): Panel de la función Mostrar texto. A través de esta función podemos mostrar por pantalla cualquier tipo de texto, trabajando con varias salidas (A, B, C) o con todas ellas combinadas. 30. Bloque de suspensión. Este bloque no dispone de parámetros, ira unido a una herramienta de tiempo para indicar cuanto ha de estar en modo suspensión. 31. Bloque Modificar ficheros. Fig.( 4.2.1.2.31): Panel de la función Modificar Ficheros. Con esta función podemos escribir, leer o eliminar un fichero en el Bloque NXT. 32. Bloque Calibrado de Sensores. Fig.( 4.2.1.2.32): Panel de la función Calibrado. Nos da la posibilidad de Calibrar al valor máximo o mínimo los sensores de Luz y de Sonido. David Recaj Fernández 35 33. Bloque Reseteo de Motores. Fig.( 4.2.1.2.33): Panel de la función Reseteo de motores. Podemos resetear tanto un motor como todos a la vez 34. Bloque Bluetooth. Fig.( 4.2.1.2.34): Panel de la función Bluetooth. En la siguiente función podemos accionar o desactivar la herramienta Bluetooth, o iniciar o desactivar la conexión bluetooth. 35. Bloque Interruptor. Se pueden dar 2 tipos de control: Tipo valor, se muestra de la siguiente manera Fig.( 4.2.1.2.35.1): Panel del Bloque Interruptor con control tipo valor. Pudiendo ser de tipo Lógico, Numérico o de texto, por Ejemplo, a este bloque ira unido otro que le mandara un dato de salida y este tomara un camino u otro según las condiciones definidas. Tipo Sensor, se muestra de la siguiente manera Fig.( 4.2.1.2.35.2): Panel del Bloque Interruptor con control tipo sensor. David Recaj Fernández 36 Pudiendo elegir cualquier tipo de sensor de los establecidos en el programa. Por Ejemplo, el sensor enviara un dato de salida que al compararlo con los datos del bloque escogerá un camino u otro. 36. Bloque bucle. Fig.( 4.2.1.2.36): Panel del Bloque Bucle. El control puede ser de tipo bucle (Forever), Sensor (finalizara el bucle cuando se cumplan los requisitos definidos en el bloque), Time (durara un tiempo determinado en segundos), Count (repetirá el bloque un numero determinado de veces) y Lógico (repetirá el bloque hasta que un dato de salida de otro bloque nos envié la orden con la cual hemos definido la finalización del bucle) 4.2.2 LEGO DIGITAL DESIGNER LDD es un Software libre proporcionado por Lego Group. Con este Software se realizan los diseños previos para la construcción de los modelos, debido a que podemos interactuar con todas las piezas creadas para LegoMindStorm y realizar los modelos de forma virtual, las ventajas observadas son: • Manual de Instrucciones creado por el usuario, para el montaje de la estructura realizada. Posibilidad de Imprimirlo. • Ver el modelo desde cualquier punto en 3D. • Ver de que piezas constan algunos Kits de Lego, viendo así previamente las limitaciones que tendremos al crear Modelos con estos Kits. Número total de piezas utilizadas para el modelo. • Medidas de las piezas utilizadas y su referencia comercial. • Posibilidad de intercambiar el archivo del modelo para realizar Proyectos de diseño en equipo. • Interfaz Sencilla y Clara para conseguir los Objetivos del Modelo David Recaj Fernández 37 Fig.(4.2.2.1):Software Lego Digital Designer. Fig.(4.2.2.2):Building Guide Lego Digital Designer. Piezas Lego MindStorm Zona de Trabajo Herramientas Tipos de Visión y Manual de Instrucciones(Modelo) Visión de las piezas a utilizar Elección del paso Número de paso Montaje de las piezas David Recaj Fernández 38 4.3 SUPERFICIE DE TRABAJO Para la zona de trabajo se realizo un boceto con Laminas de Papel sucio Dina4 unidas con cinta adhesiva, tras esto se establecieron limites en el boceto, tomando el radio de giro de los montajes del Robot como norma. Se tomaron las medidas finales del tablero y se dio paso a la elección de los materiales para el montaje. Finalmente se ha montado un tablero de Melamina 1000x1200mm plegable (objetivo de ahorrar espacio, facilitar su transporte y obtener así un espacio de trabajo fijo para todos los experimentos) a 1000x300mm, grosor de 10 mm. Blanco. Adquiriendo todos los materiales necesarios para el montaje en AKI (Tienda especializada en bricolaje). Los circuitos que sigue el Robot se han realizado con piezas reemplazables y se adhieren a la superficie de trabajo con cinta adhesiva. Para establecer los trayectos se ha utilizado guías de cinta aislante de 180 x 55 mm. (de color negro) y las bases( de color blanco) tienen un Diámetro de 105mm. El conjunto de estas dos partes dan lugar a lo que llamamos Trayectoria que sigue el Robot y marcaran las distintas interacciones que realiza el Robot con el entorno para conseguir los objetivos. Fig.(4.3): Cuatro partes de 300 mm. x 1000 mm. x 10 mm. Plegadas a 300 mm. x 1000 mm. x 40 mm. David Recaj Fernández 39 5. DESARROLLO Se han realizado varios montajes, con los cuales, se llegara a los objetivos definidos en el apartado Tres. Para ello se ha utilizado el Kit LegoMindStorm 5.1 PRIMER MONTAJE: VEHICULO DE GUIADO AUTOMÁTICO CON SENSOR DE LUZ. En el presente Montaje se presenta el funcionamiento básico de un vehiculo de guiado automático a través de una línea de color oscuro (negra) pintada en el suelo, con el objetivo: cuando no detecte línea negra se detenga y cuando encuentre línea negra seguirá su recorrido. Fig.(5.1): Primer Montaje. 1. Servomotor, comunica movimiento a un eje. 2. Parte trasera, apoyo con rueda. 3. Sensor de Luz. 4. Bloque NXT. David Recaj Fernández 40 5.1.1 OBJETIVOS DEL MONTAJE A. Objetivos específicos del montaje • Demostrar de manera sencilla, la utilidad del sensor de luz, para conseguir que el Ingenio Robótico guié su recorrido en función de la trayectoria diseñada. • Obtener experiencia en el montaje de la estructura del Robot, con la que posteriormente se introducirán mejoras en los siguientes Ingenios. • Obtener conocimientos básicos en el Software de Diseño y Programación. B. Aplicaciones en el ámbito docente • Conseguir de manera sencilla una primera implicación de los alumnos en la Robótica y dar a conocer la aplicación de este producto en otros campos de la Ingeniería Mecánica y Electrónica. • Explicar de forma teórico-práctica Fundamentos de Mecánica y automatización, y con ello lograr Aprendizaje por descubrimiento. 5.1.2 CONSTRUCCIÓN DEL EXPERIMENTO A. Diseño del montaje A.1. Problemas encontrados. Soluciones Implementadas. Como Problema, en el momento que se ha ejecutado el programa en la superficie se observan variaciones a lo programado, esto es debido a la luminosidad de la sala donde realizamos el experimento. Al definir las variables con puntos de inflexión, se ha demostrado experimentalmente que, generalmente, no es posible ejecutar un programa con distintos tipos de luminosidad en la sala. Por ejemplo posicionando al robot en la superficie de trabajo en una zona blanca y sabiendo que nuestro punto de inflexión es 80 de 100, si esta por encima debería detectar blanco y si esta por debajo debería detectar negro. Con una luz que no produzca sombras debajo de la lectura del sensor el programa hace lo esperado, y con sombra debajo del lector este programa hace lo contrario (la luminosidad varia y con ello el punto de inflexión). Como Solución, siempre que se ha empezado a trabajar en zonas con distinta luminosidad a la que normalmente se ha trabajo, se mide el grado de luminosidad con el sensor y se anota el valor mostrado en el programa y ahí David Recaj Fernández 41 tendremos nuestro punto de inflexión a través del cual modificaremos la opción del sensor. B. Montaje B.1. Piezas utilizadas. Para la Primera parte del montaje, parte trasera de la estructura, se han utilizado las siguientes piezas (listado obtenido con el Software LDD): Fig.(5.1.2.B.B1.1):Piezas para el Montaje de la estructura trasera. David Recaj Fernández 48 4. El robot se detendrá notificando la finalización del experimento con una señal de audio predefinida. D) Funcionamiento A continuación se explica brevemente el funcionamiento del Ingenio mecánico en la superficie de trabajo. Fig.( 5.1.2.D): Funcionamiento del Primer montaje . 1. Punto inicial, estado parado. 2. Se ejecuta el programa y el Robot avanza sobre la línea negra, hasta que detecte color blanco. Indicando con una señal de Audio el color que detecta, en este caso “Black”. 3. Al detectar color Blanco el Robot se detiene y con ello se finaliza el programa, indicando dicha acción con una señal de Audio. David Recaj Fernández 49 5.2 SEGUNDO MONTAJE: VEHICULO DE GUIADO AUTOMÁTICO CON SENSOR DE LUZ, TACTO Y SONIDO. En el presente montaje se muestra un vehiculo de guiado automático con tres sensores luz, Tacto y Sonido. Con la combinación de estos el robot se guiara en una trayectoria predefinida por el usuario interactuando con el entorno y respondiendo a tales acciones con las funciones programadas. Fig.(5.2):Segundo Montaje. En la Fig. 5.2 se muestra el montaje final, a continuación, se van a detallar los puntos que definen este montaje, marcados en la figura. 1. Servomotores, con estos comunicaremos movimiento a las Ruedas. 2. Sensor de tacto, con este se detectaran muros al presionar el pulsador. 3. Sensor de sonidos, solo trabaja como receptor de sonidos. 4. Sensor de luz, guiara al Robot por el circuito(color negro). 5. Bloque NXT, almacena y ejecuta el programa. 6. Apoyo trasero(esfera azul). David Recaj Fernández 50 5.2.1 OBJETIVOS DEL MONTAJE A) Objetivos específicos del montaje • Modificar el montaje anterior, mejorando el Ingenio con el objetivo de permitir giros. • Utilizar el sensor de presión, sonido y luz en conjunto, interactuando de distinta manera con el entorno del Robot. • Optimizar los giros buscando un punto de apoyo móvil trasero. • Ampliar los conocimientos de programación, realizando un trayecto más complejo. B) Aplicaciones en el ámbito docente • Introducir nuevos cambios que conllevan una modificación de la estructura con el objeto de lograr los objetivos del trayecto trazado, lo cual nos lleva de nuevo al Aprendizaje por descubrimiento. • Dar utilidad a los nuevos sensores, lo que conlleva al alumno a adquirir experiencia en estos y ver su posible futura utilidad. • Observar problemas en el Montaje y solucionarlos de manera Óptima. • Estudiar de manera técnica, el porque se debe cambiar el apoyo móvil trasero por otro nuevo. 5.2.2 CONSTRUCCIÓN DEL EXPERIMENTO A) Diseño del montaje A1. Problemas encontrados y Soluciones implementadas En el momento de realizar el montaje se instalo la misma rueda trasera (Parte uno Primer montaje) que en Montaje anterior, dando posteriormente el Problema en los giros debido a la gran carga que soporta en esta sección, posteriormente se dio paso a la modificación de esta sección probando diferentes apoyos móviles. La solución se encontró en montar una jaula que iría anclada a la parte trasera, cuyo interior estaría ocupado por una esfera de plástico (incluida en el paquete de Lego MindStorm), tras realizar las pruebas de giro se observaron giros mas precisos debido a que dicho apoyo ejercía menos fricción con las superficies que interactuaba y resistía la carga aplicada. Como Problema en el funcionamiento se observo que el Sensor de Sonido al estar cerca de los motores podía verse afectado por el sonido emitido por estos en funcionamiento y con ello activar rutinas antes de tiempo. Como Solución David Recaj Fernández 51 se opto por poner lo mas alejado posible el Sensor de Sonido de tal manera que no se viese afectado por el sonido de los motores y que pudiese detectar el sonido emitido por el usuario (con el Objetivo de activar las rutinas) desde la mayoría de las posiciones posibles. B) Montaje B1. Piezas utilizadas Al igual que en el anterior Montaje, mostramos los componentes de la parte trasera, la cual alberga la esfera, por consiguiente estará formada por: Fig.(5.2.2.B.B1.1): Piezas para el Montaje de la estructura trasera. David Recaj Fernández 52 Para el Segundo Montaje, parte delantera del Ingenio, esta formada por: Fig.( 5.2.2.B.B1.2):Piezas para el Montaje de la estructura delantera. La tercera parte del Montaje consta de los siguientes elementos: Fig.( 5.2.2.B.B1.3):Piezas para el Montaje de la estructura superior. David Recaj Fernández 53 B2. Ensamblaje. Tras conseguir las piezas utilizadas en las 3 partes que se compone nuestro Ingenio damos paso a su montaje y posterior unión. Ensamblaje de elementos, Parte uno: Fig.( 5.2.2.B.B2.1): Montaje de la primera parte, apoyo trasero. David Recaj Fernández 54 Ensamblaje de elementos, segunda parte: Fig.( 5.2.2.B.B2.2): Montaje de la Segunda parte, apoyo delantero David Recaj Fernández 55 Ensamblaje de elementos, parte tres y final: Fig.( 5.2.2.B.B2.3): Montaje de la estructura completa. David Recaj Fernández 56 B3. Dimensiones Cotas expresadas en milímetros. Fig.( 5.2.2.B.B3.): Dimensiones Segundo Montaje Largo ( 298 mm.) x Ancho (144,8 mm.) x Alto ( 209,8 mm.) C) Programación Tras completar el montaje del Ingenio Mecánico, damos paso a mostrar la programación con la cual se ha interactuado con el entorno, para cumplir con los Objetivos inicialmente señalados. Fig.( 5.2.2.C): Programa para el Segundo Montaje. David Recaj Fernández 57 1. En el presente Bloque Función, esta contenido por programa del Primer montaje, el cual nos indica que avanza sobre una línea negra o esta en una zona blanca. 2. El Bloque Función (MyBlock10), esta contenido por los siguientes bloques: Fig.( 5.2.2.C.1.2):Función MyBlock 10 2.1. En este punto definimos un avance de motor ilimitado. 2.2. En este bloque Loop controlado por el sensor de sonido, Programamos al sensor que si no detecta un sonido superior a 30dB repetirá el bucle indefinidamente 3. En este Bloque Switch, definimos que si el grado de luminosidad detectado por el Sensor de Luz es mayor a 30 sobre 100 tomara el camino denominado “5” y si es menor a 30 tomara el camino denominado “4”. 4. Al haber detectado un grado de luminosidad menor a 30 escogemos este camino que estará compuesto por un Bloque Función denominado “MyBlock8” que estará compuesto por los siguientes bloques y funciones: Fig.( 5.2.2.C.1.4): Función MyBlock8. 4.1 En este bloque Programamos al Robot que emita un sonido predefinido, con el objetivo de saber que camino ha escogido. 4.2. En el siguiente Bloque Programamos que el Robot gire 90º, con el objeto de situarse sobre el trazado predefinido. David Recaj Fernández 64 5.3.1 OBJETIVOS DEL MONTAJE A. Objetivos específicos del montaje • Mostrar la efectividad de un sensor de ultrasonidos en un vehiculo de guiado automático interactuando con el entorno. • Utilizar Programas anteriores. • Utilizar los elementos necesarios para cumplir los objetivos marcados. • Ampliar conocimientos en el uso de sensores y sus aplicaciones, utilizando en este programa nuevos bloques y la programación con señales lógicas de tipo “verdadero” o “falso”. B. Aplicaciones en el ámbito docente • Conseguir que el Alumno consiga los objetivos de manera rápida y eficiente, realizando pocos cambios en la estructura, planteándose con ello, cuales de los sensores tendrá que utilizar para conseguir los objetivos marcados. • Ampliar los conocimientos de los alumnos de manera técnica con el uso de nuevos sensores. 5.3.2 CONSTRUCCIÓN DEL EXPERIMENTO A) Diseño del montaje A.1. Problemas encontrados. Soluciones implementadas. En el funcionamiento se sigue el siguiente patrón: Se avanza con un bloque de Movimiento (con movimiento ilimitado). Se realiza la lectura con el Sensor de Ultrasonidos. Se programa una función de Audio con Objeto de notificar al Usuario el resultado de la lectura. Por consiguiente, como problema, si la potencia transmitida es muy alta el Robot realiza los pasos 2 y 3 a una velocidad elevada resultando en un choque contra el muro mientras esta notificando con la señal de audio que ha detectado un objeto. Como Solución, se ha bajado la potencia y con ello da tiempo a realizar los dos bloques y activar las siguientes rutinas, evitando así el choque contra el muro. Se ha valorado otra opción, introducir un bloque de espera seguido de una lectura del entorno y tras esto escoger un camino u otro. Se ha apostado por la solución inicial, puesto que el Robot no realiza paradas y el movimiento es totalmente fluido. David Recaj Fernández 65 Como Problema, se ha detectado que la parte trasera (contiene la esfera) disponía de una unión débil con los motores y resultaba en variaciones en el funcionamiento. Como Solución, se ha reforzado la unión con los Motores utilizando mas clavijas unidas a la parte trasera, con esto ha resultado un montaje más fiable y sin variaciones en el funcionamiento evitando así perdida de tiempos en revisar la unión trasera. B) Montaje B.1. Piezas utilizadas Para la Primera parte del montar, parte trasera de la estructura, se han utilizado las siguientes piezas: Fig.(5.3.2.B.B1.1): Piezas para el Montaje de la parte trasera. David Recaj Fernández 66 Para la Segunda parte del montaje, parte delantera de la estructura, se han utilizado las siguientes piezas: Fig.( 5.3.2.B.B1.2): Piezas para el Montaje de la parte delantera. Para la tercera parte del montaje, parte superior de la estructura, se han utilizado las siguientes piezas Fig.( 5.3.2.B.B1.3): Piezas para el Montaje de la parte superior. B2. Ensamblaje. Tras conseguir las piezas utilizadas en las 3 partes que se compone nuestro Ingenio damos paso a su montaje y posterior unión. David Recaj Fernández 67 Ensamblaje de elementos, Primera parte: Fig.( 5.3.2.B.B2.1): Montaje de la primera parte, apoyo trasero.. David Recaj Fernández 68 Ensamblaje de elementos, Segunda parte: Fig.( 5.3.2.B.B2.2): Montaje de la segunda parte, apoyo delantero. David Recaj Fernández 69 Ensamblaje de elementos, Tercera parte y final: Fig.( 5.3.2.B.B2.3): Montaje de la estructura completa. David Recaj Fernández 70 B3. Dimensiones Cotas expresadas en milímetros. Fig.( 5.3.2.B3.): Dimensiones del tercer montaje. Largo (220,8 mm.) x Ancho (144,8 mm.) x Alto ( 104,2 mm.) C) Programación Tras completar el montaje del Ingenio Mecánico, damos paso a Mostrar y explicar, paso a paso, con que funciones ha interactuado el Robot con el entorno con objeto de lograr los objetivos. Fig.( 5.3.2.C): Programa del tercer montaje. David Recaj Fernández 71 1. En el presente Bloque, esta contenido por el programa del Primer montaje, el cual nos indica que avanza sobre una línea negra hasta que detecta una zona blanca y se detiene para dar paso a la siguiente rutina. 2. En el siguiente bloque, indicamos que si en este punto detecta un muro u objeto a 17 centímetros de distancia, mande una señal de tipo lógico (verdadero) al Bloque número 3 y si no detecta un muro u objeto mande una señal de tipo lógico (Falso). La señal enviada dará lugar a la activación de una u otra rutina. 3. El Bloque Switch lo definimos de tipo lógico, con el objeto de recibir una señal de tipo lógico que será verdadero o Falso, y con ello activar una rutina u otra. 4. Si el valor lógico enviado es verdadero (debido a que se ha detectado un objeto a 17 cm del Robot) se activara este Bloque que esta contenido por: Fig.( 5.3.2.C.4): Programa de la función MyBlock12.. 4.1 Al activarse la rutina empezamos con un Bloque de Sonido, que nos devuelve una señal de Audio en la que se escuchara “Object Detected”. 4.2 En este Bloque motor indicamos que avance una distancia mínima, con objeto de posicionarse en el centro de la base. 4.3 Programamos un Giro de 90º del Robot con objeto de seguir la ruta determinada. 4.4 En el siguiente bloque se ordena al Robot que avance hasta que encuentre un objeto a 17 centímetros. Fig.( 5.3.2.C.4.4):Programa de la función MyBlock13. 4.4.1 En este Bloque se ordena al Robot que avance una distancia ilimitada con un velocidad equivalente al 20% de la potencia transmitida por el motor. David Recaj Fernández 72 4.4.2 Con este Bloque Loop(Bucle) se orden al Robot que repita el anterior bloque ilimitadamente hasta que detecte un Objeto a 17 centímetros. 4.4.3 Una vez detectado el Objeto, el Robot lo indicara mediante una señal de Audio en la que se escuchara “Object Detected” 4.5 Este Bloque se activa cuando el Robot ha detectado una persona(Ejemplo en el que se indica como el Robot se detiene ante un elemento en medio de su ruta que podrían ser objetos que puedan ocasionar problemas o personas en este caso y así evitar lesiones) Fig.( 5.3.2.C.4.5):Programa de la función MyBlock14. 4.5.1 En este Bloque se ordena al Robot que este detenido 4.5.2 En este Bloque Loop(Bucle) se ordena al Robot que este detenido hasta que el Objeto que le esta impidiendo su paso delante de él se retire para poder seguir su trayecto. 4.5.3 Una vez que no se detecta ningún objeto o persona en el trayecto se detendrá el Loop y con ello indicara con una señal de Audio “OK” , programada a través del Bloque Sonido. 4.6 Hasta que la persona u objeto no haya sido retirado del camino del Robot, este no se volverá a poner en marcha. Llegado dicho momento el Robot se volverá a poner en marcha con este bloque, en que se ordena al Robot que avance hasta que encuentre un muro a 17 centímetros.(MyBlock13). 4.7 Tras haber detectado un muro, se activara este bloque Motor indicando un Giro de 90º al Robot. 4.8 Se volverá a activar la Rutina del 1º Montaje y se detendrá al llegar a la ultima base(la meta de color blanco). 5. Si el valor lógico enviado es Falso (debido a que NO se ha detectado un objeto a 17 cm. del Robot) se activara este Bloque que esta contenido por: David Recaj Fernández 73 Fig.( 5.3.2.C.5): Programa de la función MyBlock16. 5.1 En este Bloque (Descrito en el Punto 4.4), ordenaremos al Robot que siga avanzando hasta encontrar un Objeto a 17 centímetros. 5.2 Una vez detectado el Muro, se programa un Giro de 90º con objeto de seguir el trayecto. 5.3 De nuevo se activara el Bloque descrito en el punto 4.4. 5.4 Tras detectar un muro, se programara al Robot un giro de 90º. 5.5 Tras el Giro se programara un avance mínimo con objeto de posicionarse en la Base. 5.6 Por ultimo, se llamara al programa utilizado en el 1º Montaje, que finalizara detectando la última base blanca en el trayecto. 6. Tras escoger un camino u otro, se indica la finalización del experimento con una señal de Audio “try again”. D) Funcionamiento A continuación se va a dar paso a explicar de forma grafica junto con una breve explicación de cada acción, la interacción del Ingenio mecánico con la trayectoria predefinida con objeto de lograr los objetivos marcados. Corresponde a la explicación del Punto Numero 4 de la Programación (Primer Camino). David Recaj Fernández 80 Para ello se han utilizado las siguientes piezas: Fig.( 5.4.2.B.B1.3):Piezas para la construcción de las Horquillas. Para la cuarta parte del Montaje, parte superior de la estructura, se han utilizado las siguientes piezas: Fig.( 5.4.2.B.B1.4): Piezas para la estructura de la parte superior. David Recaj Fernández 81 B.2. Ensamblaje. Tras conseguir las piezas utilizadas en las 3 partes que se compone nuestro Ingenio damos paso a su montaje y posterior unión. Ensamblaje Primera Parte. Fig.( 5.4.2.B.B2.3): Montaje de la estructura de la parte trasera. David Recaj Fernández 82 Ensamblaje Segunda Parte. En este Montaje dispondremos de 3 Servomotores, 2 de ellos para el Movimiento del Robot sobre la Superficie de Trabajo y el 3º para subir y bajar las Horquillas con ayuda de unas poleas que comunicaran el movimiento. Fig.( 5.4.2.B.B2.2): Montaje de la estructura de la parte delantera. David Recaj Fernández 83 Ensamblaje tercera Parte. Para llevar a cabo esta parte del montaje se ha tomado como referencia la siguiente imagen: Fig.(5.4.2.B.B2.3): Guía para diseñar y montar, los componentes indicados.. David Recaj Fernández 84 Fig.( 5.4.2.B.B2.4): Montaje de las horquillas. David Recaj Fernández 85 Ensamblaje cuarta Parte y final. Fig.( 5.4.2.B.B2.5): Montaje final. David Recaj Fernández 86 B3. Dimensiones Cotas expresadas en milímetros. Fig.( 5.4.2.B3): Programa cuarto montaje. Largo ( 365 mm.) x Ancho ( 145,2 mm.) x Alto ( 175,6 mm.) C) Programación Tras completar el montaje del Ingenio Mecánico, damos paso a mostrar la programación, diseñada con objeto de cumplir con los Objetivos inicialmente señalados. Fig.( 5.4.2.C): Programa cuarto montaje. 1. Con este bloque empezamos la fase inicial que ira desde esta hasta el giro hacia la base del Palet. Fig.( 5.4.2.C.1): Función “ Primera base”.. David Recaj Fernández 87 1.1 En este bloque, las horquillas bajarán 0,6 rotaciones (punto en el que las horquillas pueden recoger el Palet). 1.2 Ordenamos al Robot que se dirija hacia delante 2,103 rotaciones. Se ha obtenido este calculo de la siguiente manera: Siendo el Radio de la rueda 23 mm., sabiendo que una circunferencia mide 2nR. Con ello la distancia que avanza la rueda en una vuelta es 2 x 3,14 x 23 (mm.). Con el dato obtenido medimos la distancia que deseamos recorrer y volcamos esos datos en la formula para obtener las vueltas necesarias para conseguir el objetivo. 1.3 El robot girará 90º. 2. En este Bloque función, definimos la búsqueda de Bloque, con el objetivo de asegurar la entrada de material. Fig.( 5.4.2.C.2): Función “Buscando”. 2.1 En este Bloque se trabaja con el Sensor de Ultrasonidos. Si detecta un objeto, si hay Palet estará a 30 cm. de distancia y si no detecta objeto, no detecta nada a 30 cm. de distancia. Tras esto enviara un valor lógico al siguiente Bloque. 2.2 Si el valor en entrada es True, escogerá el camino numero “3” y si devuelve un valor False, escogerá el camino numero “4”. 2.3 Al detectar un Palet, con una señal de Audio lo confirmamos y daremos paso a seguir el programa. David Recaj Fernández 88 2.4 Al no detectar un palet, se da paso a ejecutar el siguiente Bloque función cuyo objetivo es volver al punto de partida. Fig.( 5.4.2.C.2.4): Función “Error”. 2.4.1 A través de una señal de Audio indicamos que el Robot va a moverse hacia atrás ( al igual que un AGV en una planta). 2.4.2 En este Bloque el Robot girara 90º. 2.4.3 En este bloque el Robot vuelve a indicar con una señal de Audio que esta yendo hacia atrás. 2.4.4 En este Bloque motor, el Robot se mueve hasta la base inicial 2.4.5 Las Horquillas vuelven a su posición inicial, moviéndose hacia arriba 0,6 rotaciones. 2.4.6 En este Bloque Stop, el Robot finaliza el programa totalmente. 3. Al detectar que hay un Palet en la entrada de material. Se da paso a ejecutar el siguiente Bloque función. Fig.( 5.4.2.C.3): Función “Segunda base”. 3.1 En este Bloque motor el robot avanza 1 rotación e introduce las horquillas bajo el Palet. David Recaj Fernández 89 3.2 El Robot ya esta en posición de recoger el Palet, por lo que sube las horquillas utilizando el 75% de la potencia que puede comunicar el Servomotor, recogiendo así el Palet. 3.3 El Robot se mueve hacia atrás 1 rotación. 3.4 El Robot gira 90º con objeto de posicionarse en la trayectoria e ir a almacenar. 3.5 Avanza hasta la siguiente base 1 rotación. 4. En este bloque función realizaremos el almacenaje y la vuelta al punto inicial. Fig.( 5.4.2.C.4): Función “Almacenar”. 4.1 En el Primer bloque función del almacenaje, ejecutamos un Bloque Sensor, ya que en esta base se indicara al Robot en que estantería puede dejar el Palet. 4.2 A este Bloque le va a llegar una orden de tipo lógico enviada por el Bloque Sensor de Luz que indicara lo siguiente: - Si la señal recibida es True(detectado color Blanco) se escoge el camino con los números “3 y 4”. - Si la señal recibida es False(detectado color Negro) se escoge el camino con los números “5 y 6”. 4.3 En este bloque se ejecuta la orden de almacenar en la referencia libre. David Recaj Fernández 96 5.5.1 OBJETIVOS DEL MONTAJE A. Objetivos específicos del montaje • Viendo el funcionamiento de un puente grúa y sus distintas partes, simular dicha estructura con los elementos de los que se dispone con LegoMindStorms. • Mostrar la capacidad de diversificación de este producto y con ello su ilimitado campo para la educación. B. Aplicaciones en el ámbito docente • Demostrar la capacidad de aprendizaje obtenida con los anteriores montajes, construyendo un puente grúa, dando, únicamente imágenes y videos de su funcionamiento. • Simular el manejo de un puente grúa, utilizando los sensores como mando. 5.5.2 CONSTRUCCIÓN DEL EXPERIMENTO A) Diseño del montaje A.1 Problemas encontrados. Soluciones implementadas. Al montar los pilares sobre los que sostenemos las guías. Como problema se observa que no se dispone de las piezas necesarias en el Kit LegoMindStorms para su montaje. Como Solución, se utilizan piezas de otra línea de productos de Lego, puesto que toda su gama de productos tiene en común su principio de unión. Con ello se montan los pilares y se consigue elevar el Puente grúa para su simulación. El Kit LegoMindStorm trae un motor que funciona con un pulsador conectado a este, en el montaje se va a utilizar para subir el Gancho. Como problema se observa que el movimiento del motor es fijo y no se puede variar la potencia que se suministra, lo que ocasiona una velocidad de desplazamiento alta y posibles choques. Como solución, se opta por utilizarlo con cuidado para no dañar la estructura. Como problema, al moverse el carro longitudinal se observa una inclinación en el movimiento de la guía transversal, es causado por que solo comunica movimiento una de las guías longitudinales mientras que en la otra guía longitudinal, la guía transversal es arrastrada. La solución encontrada, se haya en adquirir mas engranajes sin fin con el objeto de hacer una guía totalmente simétrica a la existente y con ello eliminar este problema ( en el actual Kit no se dispone de mas engranajes Sin Fin). David Recaj Fernández 97 B) Montaje B.1 Piezas utilizadas. El siguiente montaje se va a dividir en tres conjuntos: La piezas del primer conjunto, guías para el movimiento longitudinal, son las siguientes: Fig.( 5.5.2.B.B1.1): Piezas para el montaje de la parte longitudinal. David Recaj Fernández 98 Las piezas del segundo conjunto, guías para el movimiento transversal y grúa, son las siguientes: Fig.( 5.5.2.B.B1.2 ): Piezas para el montaje de la parte transversal. Las piezas del tercer conjunto, pilares y Bloque NXT con sensores, son las siguientes: Fig.( 5.5.2.B.B1.3 ): Piezas para el montaje de los pilares y los mandos de control. David Recaj Fernández 99 B.2. Ensamblaje. Tras escoger las piezas que van a formar parte de nuestro ingenio mecánico, damos paso al montaje: Primera parte del montaje, ensamblaje de la guía longitudinal y servomotor que comunica el movimiento: Fig.( 5.5.2.B.B2.1 ):Ensamblaje de las guías longitudinales. David Recaj Fernández 100 Fig.( 5.5.2.B.B2.2 ):Ensamblaje de las guías longitudinales. David Recaj Fernández 101 Segunda parte del montaje, ensamblaje de la guía transversal y grúa con motor que le comunica el movimiento: Fig.( 5.5.2.B.B2.3 ): Ensamblaje de las guía transversal. David Recaj Fernández 102 Fig.( 5.5.2.B.B2.4 ): Ensamblaje de la guía transversal. David Recaj Fernández 103 Tercera parte, ensamblaje del conjunto final: Fig.( 5.5.2.B.B2.5 ): Ensamblaje de los pilares y conjunto final. David Recaj Fernández 104 B3. Dimensiones Cotas expresadas en milímetros. Fig.( 5.5.2.B.B3 ): Dimensiones quinto montaje. Largo (417,5 mm.) x Ancho (265 mm.) x Alto (250 mm.) David Recaj Fernández 105 C) Programación Tras completar el montaje del Ingenio Mecánico, damos paso a mostrar la programación, diseñada con objeto de cumplir con los Objetivos inicialmente señalados. Fig.( 5.5.2.C ): Programa principal del Quinto Montaje. 1. Indicamos el comienzo del programa con una señal de Audio. 2. Introducimos un bloque de espera de 3 segundos. 3. Con un bloque Sensor de Tacto, se decide cual es el camino a escoger. 4. Si la señal dada por el Bloque Sensor de Tacto envía una señal de carácter “True”, escogerá el camino marcado como “5”. Si envía una señal de carácter “False”, escogerá el camino marcado como “6”. 5. En este bloque función llamado “Dirección Item”, manejaremos el puente grúa hasta llegar al Item Fig.(5.5.2.C.5 ): Bloque “dirección Item”. 5.1 Con una señal de Audio se Indica que camino se ha escogido. 5.2 Introducimos un bloque de espera de 3 segundos. David Recaj Fernández 112 los engranajes Sin Fin de la guía transversal (al activar el Sensor de Tacto número 2). Al estar sobre el objetivo (movimiento transversal anulado pulsando el Sensor de tacto Número 1), se baja la grúa (con el pulsador) y se deposita la carga en la posición inicial. Pulsamos el botón inferior del Bloque NXT (botón de Paro), con objeto de finalizar el programa. David Recaj Fernández 113 6. RESULTADOS A) Conclusiones sobre los resultados obtenidos. En este apartado se detallan las conclusiones obtenidas tras cada montaje. • En el transcurso de cada montaje, se observa su gran aplicación al campo docente, en Ingeniería Mecánica (calculo de modelos cinematicos, calculo de cargas en poleas, elasticidad y resistencia de materiales…) y en el campo de la Automatización (al ser un software libre y adaptable a Programas como Labview). Se puede obtener así, un Aprendizaje tanto teórico como práctico aportando Valor a los usuarios que experimentan este producto. Y todo ello con un coste económico Muy Bajo. • Con el Kit inicial disponemos de pocos sensores, aunque como se ha demostrado con solo estos 4 tipos de sensores (luminosidad, sonido, ultrasonidos y tacto) se puede llegar a plantear un amplio abanico de situaciones que nos rodean día a día. • Es posible optimizar el Kit, tanto en precisión (adquiriendo nuevos sensores de un amplio abanico de fabricantes) como en la posibilidad de realizar programas aún más complejos (utilizando Software como labview,etc.) • Tras todo el trabajo realizado, se demuestra la veracidad del aprendizaje por descubrimiento. Hecho que se ha demostrado a lo largo de todos los montajes, tras la realización de cada uno de ellos se han creado nuevas ideas, entrando en un ciclo de Innovación. Fig. (6.A): Ciclo de la evolución del Proyecto, Aprendizaje por descubrimiento. David Recaj Fernández 114 B) Conclusiones personales En el ámbito personal, he disfrutado llevando a cabo este proyecto ampliando mis conocimientos y mis inquietudes en el campo de la Automatización. Viendo también la aplicación de este producto en Materias de Ingeniería como pueden ser Estructuras, Teoría de mecanismos, etc , destacando su facilidad de montaje, junto con la posibilidad de utilizar Software libre para su configuración y todo ello con un gasto económico muy bajo. Agradecer la flexibilidad que he tenido en este proyecto y la posibilidad de tener El Kit LegoMindStorm durante todo el desarrollo de proyecto. David Recaj Fernández 115 7. BIBLIOGRAFÍA PÁGIAS WEB COSULTADAS: [1] Manual básico de elementos estructurales y otros. http://www.ier-unab.cl/home/capacit/doc/manual-completo.pdf Consulta en 2011 [2] Web de Robótica Educativa. http://ro-botica.com/LEGO_ciudad_ecologica.asp Consulta de 2011 [3] Pagina Web Oficial de LEGO . http://www.lego.com/en-gb/default.aspx Consulta en 2011. [4] Consulta de definiciones. www.rae.es/ Consulta en 2011. [5] Web de Robótica Educativa. http://complubot.educa.madrid.org/pruebas/lego_nxt_version_educativa/lego_nxt_versi on_educativa_index.php . Consulta en 2012 [6] Web de Robótica Educativa, introducción a la Robótica de Lego .http://ladrillikos.wikidot.com/descripcion-de-lego-mindstorms Consulta en 2011 [7] Historia de la Robótica. http://jjazdanethe16.blogspot.es/1258950780 Consulta en 2011. [8] Proyecto EATS, Luís González. http://eats.wordpress.com/2007/04/09/robotica-con-lego-mindstorms/ Consulta en 2012. [9] Projects for XT 2.0 http://www.nxtprograms.com/projects.html Consulta en 2012. [10] Robotica móvil con Lego Mindstorm. David Pellicer Martín. Noviembre 2010. Consulta en 2012 [11] Proyectos con Lego, Colegio San Judas Tadeo, Republica Dominicana http://aularobotica.blogspot.com/2008/05/robtica-educativa.html Consulta en 2012 David Recaj Fernández 116 [12] Proyecto de Lego MindStorm. http://hrsbstaff.ednet.ns.ca/mhirtle/Elec%2011%20CPA%20FALL%202011/Apress.LE GO.Mindstorms.NXT.The.Mayan.Adventure.Dec.2006.pdf. Consulta en 2012 [13] Foro sobre Lego. http://codigoeon.wordpress.com/2007/02/06/draftrobot-lego-mindstorms-nxt-review/ Consulta 2012 [14] Motivadas por la Ingeniera Mecánica, Articulo por Graciela M.Muñiz Julio de 2009 http://www.uprm.edu/news/articles/as2009102.html Consulta en 2012 [15] Practical Exercises on Lego MindStorm Robots. http://arti.vub.ac.be/cursus/2003-2004/autosys/material/mindstorms/mindstorm.html. Consulta en 2012 [16] Incorporating Lego MindStorms and the 900. http://talk.maemo.org/showthread.php?t=78139 Consulta en 2012 [17] Distribuidor de Sensores adaptables a Lego MindStorms. http://www.robotica-personal.es/2010/12/ro-botica-distribuidor-oficial-de.html Consulta en 2012. [18] Distribuidor de Sensores adaptables a Lego MindStorms. http://mindsensors.com/index.php?module=pagemaster&PAGE_user_op=view_page& PAGE_id=97&MMN_position=37:37 Consulta en 2012 [19] El buen rumbo de los vehículos guiados. Antonio Alonso LIBROS COSULTADOS: [1] Ingeniería de la Automatización Industrial. Modulo de Automatización impartido por Ramón Piedrafita Moreno [2] Innovación Tecnológica. Modulo Máster de Organización Industrial impartido por Antonio Hidalgo