RobotAlibot

INTRODUCCIÓN

Cuando iniciamos con este proyecto tuvimos un sinnúmero de interrogantes, las cuales se fueron despejando a medida que se construía y programaba el robot, esto fue de gran importancia ya que adquirimos conocimientos durante este proceso.

Estos kits que son para la construcción de robots, están diseñados para estimular el aprendizaje de conceptos y métodos relativos a nuestra educación, la misma cuenta con pequeños motores, sencillos sensores, ruedas, engranajes, cables, equipamientos de radio que posibilita la conexión con la PC, y todo aquello que como estudiantes podemos necesitar para logar la construcción del robot.

La robótica en cuanto a educación se visualiza como un espacio de experimentación, el cual se basa en el aprendizaje activo y por ende construccionista, en el que los estudiantes buscan las posibles soluciones de forma creativa.

Nuestro trabajo cuenta con la explicación del proceso de construcción y programación del robot, así como aspectos relacionados a este proceso.

OBJETIVOS

OBJETIVOS GENERALES
• Diseñar y construir un robot con la ayuda de un simulador.
• Elaborar con el kit de LEGO® MINDSTORMS® NXT una programación de robótica para el robot aplicando creatividad y manejo eficaz del lenguaje icónico.

OBJETIVOS ESPESIFICOS
 Investigar sobre el uso y la implementación de aplicaciones de robot utilizando legos.
 Aprender sobre el programa NXT-G utilizado para la programación del ladrillo NXT.
 Diseñar un robot con el objetivo de ver la importancia que están teniendo en el mundo de la tecnología e informática.

JUSTIFICACIÓN

En la elaboración de este trabajo, precedimos la importancia del desarrollo del aprendizaje y conocimiento del uso de las nuevas tecnologías que están dando un avance inmedible en la actualidad. Al ser próximamente licenciados en informática debemos saber utilizar estas nuevas tecnologías, las cuales son las de robótica, y estar a la vanguardia con los avances tecnológicos existentes.

Ya es cierto que la robotica surgió hace algunos años atrás, pero no era aplicable dentro de las aulas de clases, pero según informaciones recabadas, fue al final de los noventas que surge la introducción al mercado las ventas de kits educativos de robotica que solucionan el desconocimiento del mismo. Estas tecnologías no exigen conocimiento electrónico profundo en cambio permite la fácil y eficaz construcción de robot autónomos.

En la actualidad se podría decir que la tecnología robótica es como una extensión de la enseñanza de la programación, por lo tanto nosotros no nos podíamos quedar atrás ante tanto que aprender, así que nos propusimos a diseña y a programar una aplicación de robótica propia, en la cual destacaríamos nuestro conocimiento ofrecido por la profesora y por los recursos disponibles.

DEFINICIÓN DE LA ACTIVIDAD

Una vez entregado el kit de Lego Mindstorms nxt; nos dispusimos a investigar sobre el uso y la implementación de aplicaciones de robot utilizando legos, para luego conocer sobre el programa que es utilizado para la programación de el, y poder aprender a programarlo. Este tipo de aplicaciones aplican el conocimiento de la utilización del programa NXT-G, el cual es el lenguaje gráfico basado en LabView de National Instrument para la creación y aplicación de nuestro robot y presentar una aplicación de robótica, haciendo uso de lo aprendido e investigado.

PRODUCTO FINAL

Al finalizar el trabajo se construyo un robot que ejecutaba las siguientes funciones, estas son:
- La primera acción era detectar un sonido para iniciar, luego este iba en busca de un objeto (el cual era una bola de color rojo), este hacia la búsqueda mediante el sensor de luz y al detectar el objeto lo tomaba y realizaba la tarea de determinar con ayuda del sensor de vista un receptor para colocar el objeto que tomo anteriormente.
- La segunda funcionalidad era el de esquivar obstáculos, por medio del sensor de vista y cuando detectase el mismo el robot daba la vuelta en otro camino en búsqueda de una mejor ruta sin obstáculos, también al chocar con un objeto cuando disponía al dar el giro este avisaba de él y reaccionaba avanzado un poco y girando una vez más.
Para esto se utilizaron los siguientes sensores: luz, sonido, Ultrasónico, tacto y motores.

-ELEMENTOS UTILIZADOS
Aquí representamos los componentes esenciales que le dieron vida a nuestra creación esto los representamos en dos aspectos:
- EN EL DISEÑO
Sensores utilizados dentro de la arquitectura del robot:

Sensor Ultrasónico
Le proporciona al robot un sentido de visión. Este sensor se utilizó para calcular la distancia a la cual se encuentra el objeto u obstáculos.
ultrasonido.jpg

Sensor de Luz
Le proporciona al robot el sentido de la visión. Le permite al robot distinguir entre luz y oscuridad. Se utilizo en la segunda aplicación para que siguiera la línea oscura.

luz.jpg

Sensor de sonido
Le permite reconocer los sonidos exteriores y así poder ejecutar las funciones establecidas en la programación, en este caso sería el de dar inicio a su programación.

sonido.jpg
Sensor de tacto
Le permite identificar por medio de choque hacia el receptor, el cual interpreta como tacto, para así poder realizar la tarea de captación de objetos cuando retrocede.tacto.jpg
Los motores
Son los que le dan movimiento al robot.

Se implemento 3 motores; 2 de movimientos en las llantas y uno para hacer el brazo de agarre de la pelota

motores.jpg

Es el cerebro de nuestro robot, básicamente es un microprocesador, con puertas de entradas, de salida y memoria para almacenar nuestros programas, se comunica con el computador a través de una puerta USB.

cerebro.jpg

Aquí detallamos algunas de las piezas que implementamos en la construcción del robot.

piezas.jpg

DURANTE LA EJECUCIÓN

ejecucion1.jpg
PROGRAMACIÓN
Código desarrollado para la primera tarea que ejecuta el robot.

A continuación se detalla las propiedades y el funcionamiento de la aplicación:

ciclodedetecciondesonido.jpg sonido1.jpgciclodeladetenciondelabola.jpg ciclobuscamarco-1.jpgmovimientodelapalankygiratorio.jpgciclodedetecciondesonido-1.jpg Este es un ciclo que muestra una imagen, y el indicador de salida sería un sonido, el cual interpretaría para seguir con la siguiente sección de código.

Aquí se muestra la imagen con las propiedades que ella detalla. ejecucion2.jpg

Aquí se muestra las propiedades del ciclo, este indica que el sonido a capturar debe ser mayor que 85, este valor es interpretado por el programa y el robot el cual ejecutara la acción establecida.

propiedadesdelciclodedetenciondelabola.jpg

Después que la acción del ciclo del sonido fue realizada, el robot emitirá un sonido el cual indica que la acción se realizo correctamente.

sonido1.jpg

Aquí se muestra un ciclo cuya función es determinar por el sensor de luz un objeto, este procede a buscarlo y al encontrarlo cierra el hilo de ejecución.

ciclodeladetenciondelabola.jpg

Las propiedades del ciclo, es el de determinar el objeto a una distancia de 27 pulgadas. Y al encontrar el objeto este sale del ciclo y procede con la siguiente línea de código.

Permite agarra el obstáculo ya encontrado, en este caso sería la bola.

movimientodelapalankygiratorio.jpg

Las propiedades aplicadas al giro son de 30 grados, este alzará el objeto para luego colocarlo en otro lado.

Permite retroceder el robot, cuando ya este haya tomado el objeto. Y en la imagen de la parte inferior se detalla el movimiento.

propiedadesdelmovegiratorio.jpg

Este ciclo permite captar el receptor a cierta distancia y lo hace a través de búsquedas en vueltas, cuando ya lo detecte pueda seguir con la programación ya planteada.

Aquí se detalla las propiedades del ciclo, se muestra que debe reconocer el objeto a 27 pulgadas para luego ejecutar otra función.

propiedadesdelciclodedetenciondelabola.jpg

Permite bajar el objeto tomado dentro del receptor ya encontrado.

Estas son las propiedades del giro al bajar la bola, este giro lo hace a través de 20 grados hacia abajo, el cual mueve la palanca situada en el motor a.

propiedadesdefin1.jpg

Permite mover el robot en retroceso cuando ya ha colocado la bola.

Aquí se muestran las propiedades aplicadas al movimiento de retroceso.

Muestra una voz indicando que el trabajo ya finalizo.

sonido1.jpg

Aquí se representa las propiedades del sonido aplicado.

propiedadesdefin3.jpg

Aquí se muestra la documentación de la segunda tarea que el robot realiza.
new.jpg

Bloque 1: en esta secuencia el robot dará un sonido para empezar el ciclo de movimiento, una vez lo empieza giraran los motores b y c, giraran un número determinado de rotaciones para llegar al sensor de ultrasonido.

Bloque 2: la secuencia de código que sigue es la que detectara el objeto a una distancia predefinida, en este caso se trabajo a la distancia de 21 cm. y si no detecta pasara el bloque 3.

Bloque nº 3: en este bloque de código no se realizara ninguna acción ya que es la parte negativa de la decisión del sensor ultrasónico, dirá las siguientes voces, “no” “objetc” y el ciclo principal se repetirá.

Bloque nº 4: la siguiente sentencia de códigos presentara 2 decisiones, la positiva que es la que hace que el “auch” y se desplazara en un movimiento hacia delante, es la decisión negativa la que presentara la que no hará ninguna acción

Bloque nº 5: en esta sección del código el robot después de haber salido del ciclo principal saldrá a buscar el objeto recipiente donde soltara la bolita, en este caso será especia de un marquito, una vez lo haya depositado el robot finalizara todo movimiento.

Código robot 1 y Código robot 2:

ejecucion3.jpg

Bloque 3:

codigor1.jpg
Sensor 1:

En esta sección del bloque se presenta todos los parámetros necesarios para que el robot detecte el objeto a recoger.

Sensor 2:

En esta sección del el robot reaccionar cuando toque un objeto a su espalda, el pasara a seguir su movimiento hacia delante.

Sensor 3:

Reaccionara al sonido y se detendrá.

blques.jpg

EXPERIENCIAS

Arianis Zamorano: con la construcción del robot adquirí conocimientos en el campo de la robótica, ya que tuvimos que construir y luego como quien dice dar vida al robot, mediante programación lo cual desconocíamos; esto mediante el uso de una máquina virtual, un entorno de programación de ladrillo Nxt el cual es sencillo, pero requiere de tiempo y dedicación, algo que es importante resaltar es el trabajo colaborativo en proyectos de esta magnitud, aunque el robot que se confecciono fue pequeño y sencillo, esa fue la prueba de los conocimientos adquiridos mediante el desarrollo de nuestro proyecto.

José Espinoza: Desde que adquirimos el kid del robot, fue algo novedoso para mí, ya que no tenía ningún conocimiento de cómo ensamblar cada componente del mismo, pero a medida que fuimos construyendo me pareció muy divertido, ya que este iba adquiriendo un muy alto valor de apreciación del esfuerzo que le dedicábamos en su construcción.

En la construcción hubo algunas dificultades pero como grupo pudimos ayudarnos y resolver cada una de ellas. Este trabajo me pareció muy importante, puesto que es una de las experiencias enriquecedoras que nos fomentan al trabajo en equipo y la interacción con una tecnología de mucho hincapié en la actualidad.

Luis Pinto: La experiencia con el robot fue grandiosa ya que primero que todo hubo que organizarse para poder tomar un modelo final, cuando empecé a armar el robot, funciono para desarrollar el trabajo en equipo, se requiere de mucha imaginación para poder armar diversas formas con el kit.

Aprendí acerca de la programación icónica y a pesar que no pudimos hacer que el robot hiciese lo planeado las acciones que logramos nos ayudo a aprender a programar en lego mindstorm. Lo único que estuvo en nuestra contra era el tiempo ya que fue muy corto.

CONCLUSIONES

• La creación de un robot conlleva mucha dedicación, creatividad y la lógica de programación que se implemente.
• Fue una gran experiencia haber tenido la oportunidad de construir un robot, y agregar funciones o tareas a este mediante programación.
• Un inconveniente al momento de la demostración de nuestro robot, fue el entorno en el que se programo y ejecuto el mismo las condiciones son muy importante y se deben de tener muy presente.

RECOMENDACIONES

• Al momento de armar el robot es muy importante la ubicación de cada uno de los sensores que se van a utilizar ya que al momento de las pruebas pueda que haya que hacer cambios.
• Los cables de cada uno de los sensores debemos de saber su respectiva numeración esto para efectos de programación.
• Es importante las pruebas antes de presentar o ejecutar las aplicaciones que se han cargado al robot.

VIDEO

[VIDEO DEL ROBOT http://www.youtube.com/watch?v=UObg-wJ75iU]

REFERENCIAS

Archivo PDF:
Guia de Robótica NXT
Manuales Del Kit y CD de instrucciones - ofrecido por la Universidad de Panamá sede Veraguas.

http://rbtnxt.blogspot.com/2009/01/bluetooth.html
http://www.blauden.com/robot-lego-mindstorms-nxt-2-0
http://lrobotikas.net/mediawiki/index.php?title=Programaci%C3%B3n_NXT
http://lrobotikas.net/mediawiki/index.php?title=Programaci%C3%B3n_NXT