tutorial de programacion lego mindstorms nxt .pdf
TRANSCRIPT
-
GrupodeTecnologaEducativa(GTE)
UNIVERSIDADANDRESBELLO
ProyectoExploraED12/011
InterescolardeRobticaEducativaparatodoslosChilenos
TutorialdeProgramacin
LEGOMINDSTORMSNXT
-
Introduccin
El Grupo de Tecnologa Educativa, dependientes de la Facultad de Ingeniera de la Universidad Andrs Bello, en conjunto con el programa Explora Conicyt enmarcados en el Proyecto de Valoracin y Divulgacin adjudicado el ao 2008, que lleva por nombre Interescolar de Robtica Educativa para todos los Chilenos cdigo ED12/011, presenta una nueva herramienta educativa para las comunidades tecnolgicas formadas por el proyecto durante el transcurso del presente ao.
Esta herramienta permite a las comunidades tecnolgicas que poseen kit de robtica Lego NXT, conocer las distintas funciones que posee el software Lego Mindstorms NXT education para realizar su programacin y tambin permite conocer las distintas piezas que presenta el Kit en base a los distintos sensores, y la forma de aplicar conocimientos educativos en base a esta herramienta.
-
Conocer el Kit lego NXT, en base a las piezas y funciones que ste posee.
Entregar conocimientos bsicos de programacin, referente al software Lego Mindstorms NXT Education
Entregar una herramienta para los profesores y alumnos de las comunidades tecnolgicas, para realizar sus clases de robtica, relacionadas al Kit Lego NXT.
Objetivos
-
Primero que todo, debemos entender:
Que diferencia un robot de una mquina?
-
Sentidos Planificacin Accin
-
Los sensores del Kit LEGO NXT
SensordeTacto SensordeLuz SensordeSonido
SensorUltrasnico
-
Los sensores del Kit LEGO NXT
SensordeRotacinincorporadoconelmotor
-
Otros Sensores
SensorBrjula
SensordeColor
SensordeInclinacinyAceleracin
-
Controlador NXT
-
Controlador NXT
-
Men NXT
El robot NXT consta de una pantalla con varias opciones que nos permiten tener mas opciones para programar de forma mas optima nuestro robot, agregar sonidos, imgenes y hasta realizar pruebas sin necesidad de tener el programa NXT-G para realizar pruebas de motores y/o sensores.
-
Men NXT
-
Programacin del Robot NXT
-
El Programa
2
1
-
El Programa
-
Paletas de FuncionesBsica Completa Personalizada
-
Programacin Bsica
-
Paleta BsicaLa paleta bsica nos permite desarrollar un programa con todas sus caractersticas, pero si deseamos ahondar y ejecutar acciones mas especificas es recomendable utilizar la paleta Completa.
Movimiento
MostrarporPantalla
Sonido
Grabar/Reproducir
Esperarpor
Recursiones
Condicional
-
Ejercicio 1:
Realizar la siguiente accin con el robot:Que avance por 4 segundos con los motores
conectados en los puertos B y C y luego se detenga.
Para realizar esta accin debemos arrastrar el icono de movimiento y ubicarlo en la lnea del programa.
As, podremos ver las opciones de cada icono en la parte inferior del programa.
-
Ejercicio 1: SolucinNuestro primer programa queda as:
Estableciendo las siguientes opciones:
MotoresByCAvanzar 4Segundos Detenerse(Freno)
Solo nos falta descargar el programa al NXT!
-
Transferir un programa al NXTPara esto necesitamos conectar un extremo del cable USB al NXT, y el otro extremo al Computador.
-
Transferir un programa al NXT
Ahora solo nos queda transferir el programa a nuestro robot.
Hacemos clic en la opcin Download and Run y el programa buscara un NXT conectado, si lo encuentra comenzara a bajar el programa a nuestro robot y cuando lo descargue se comenzara a ejecutar automticamente.
-
SeleccionamosNXTWindows
ClickenlaPestaaMemory
Debido a los tipos de datos que podemos almacenar en el NXT, ya sea, sonidos , imgenes, o los mismos programas debemos tener siempre presente la cantidad de memoria que tenemos. As evitaremos posibles problemas de memoria al cargar nuestros programas al NXT.
Administracin de Memoria
-
1 Barraniveldeusodememoria2Memorianousada(reaGris)3ListaProgramas/Imagen/Sonido4BorrarSeleccin5DescargarseleccinalNXT6CargarseleccinalPC.7Borrartodo8InformacindelNXT:NombredelNXTNiveldebateraTipodeConexin(USB)EspaciolibredealmacenamientoVersindelFirmware
1 Barraniveldeusodememoria2Memorianousada(reaGris)3ListaProgramas/Imagen/Sonido4BorrarSeleccin5DescargarseleccinalNXT6CargarseleccinalPC.7Borrartodo8InformacindelNXT:NombredelNXTNiveldebateraTipodeConexin(USB)EspaciolibredealmacenamientoVersindelFirmware
Administracin de Memoria
-
Ejercicio 2:Realizar la siguiente accin con el robot:
Que avance por 4 segundos con los motores conectados en los puertos B y C, que reproduzca el sonido Good bye y se devuelva.
ArchivodeSonido Reproducir
SeleccionarelArchivodeSonido
Esperarquesereproduzcacompletamente
-
El robot debe avanzar por 3 segundos, girar a la derecha por 3 segundos y tocar una nota musical por 1,5 segundos.
Actividad 1:
-
El robot debe avanzar por 3 segundos, girar a la derecha por 3 segundos y tocar una nota musical por 1,5 segundos.
Actividad 1:
-
Sensores
-
Sensor de Rotacin
A diferencia del su antecesor (RCX), el NXT viene con un sensor de rotacin incorporado en cada motor, mas preciso ya que nos permite ingresar en la programacin si deseamos movernos por rotaciones o por grados (Angulo).
-
Hacer que el robot avance 5 vueltas y luego se detenga.
Actividad 2:
-
Hacer que el robot avance 5 vueltas y luego se detenga.
Actividad 2:
5RotacionesoVueltasdelMotor
ConestaopcinhacemosqueluegodecumplirsucondicinelmotorFrene
-
Sensor de Tacto
-
Cuando el sensor de contacto no se presione, los motores conectados en B y C deben retroceder y al presionar el sensor de tacto se deben apagar.
Actividad 3:
-
Cuando el sensor de contacto no se presione, los motores conectados en B y C deben retroceder y al presionar el sensor de tacto se deben apagar.
Actividad 3:
-
Sensor de Luz
-
Que el robot avance hasta una lnea negra, se detenga 2 segundos y luego que gire 3 segundos.
Actividad 4:
-
Que el robot avance hasta una lnea negra, se detenga 2 segundos y luego que gire 3 segundos.
Actividad 4:
-
Sensor de Sonido
-
Cuando no exista un sonido fuerte, el robot debe avanzar hasta que escuche un sonido sobre un porcentaje de 50.
Actividad 5:
-
Cuando no exista un sonido fuerte, el robot debe avanzar hasta que escuche un sonido sobre un porcentaje de 50.
Actividad 5:
-
Sensor Ultrasnico
-
Sensor UltrasnicoEl sensor ultrasnico tiene la capacidad de detectar objetos principalmente rectos ya que funciona por medio de un emisor de seales de ultrasonido y un receptor que recibe estas seales cuando rebotan en un objeto frente al sensor.
-
El robot debe avanzar hasta que encuentre un objeto a una distancia menor que 10 centmetros.
Actividad 6:
-
El robot debe avanzar hasta que encuentre un objeto a una distancia menor que 10 centmetros.
Actividad 6:
Mascercaque
Distancia
UnidaddeMedida
-
Recursiones / Loops
-
Recursiones
Las Recursiones o Loopsson estructuras de programacin que nos permiten hacer que una tarea se repita tantas veces como nuestro programa lo requiera. Las opciones de repeticin pueden ser las siguientes:
Recursin Infinita Condiciones de sensor Recursin por tiempo Recursin por Contador Por lgica (1/0 V/F)
-
Actividad 7:Explicar el funcionamiento del siguiente programa:
-
Actividad 7:Explicar el funcionamiento del siguiente programa:
Mientraselsensor detactoestesuelto,avanzarhastaqueelsensor desonidodetecteunsonidomasfuertequeelestablecido,detenerse.ReproducirunsonidodeunArchivoyesperar2segundos.
-
Bifurcaciones / Condicionales
-
Condicionales
Las bifurcaciones como su nombre lo dicen toman 2 caminos, pero en este caso depende de la variable que tomemos como condicin.
Estas pueden tomar la condicin por sensores o por valores lgicos (Verdadero/ Falso)
-
EjemploEl siguiente programa realizado con condicional enciende
una lmpara cuando se presiona el sensor de tacto y la apaga cuando este se suelta.
CondicinVerdadera
CondicinFalsa
-
Tareas Simultaneas
-
Tareas Simultaneas
En NXT-G no es necesario el utilizar un icono para realizar tareas simultaneas, sino que solo arrastrando una lnea de programa hacia nuestra nueva tarea podemos lograr mas de una tarea ejecutada al mismo tiempo
-
EjemploEn el siguiente programa podemos apreciar el uso de las
tareas simultaneas. Que hace el programa?
-
Variables
En las variables podemos guardar valores numricos, lgicos y de texto que podemos usar en sensores o para mostrar por la pantalla del NXT
1
2
3
-
EjemploEl siguiente programa toma el valor del sensor de luz y luego
lo muestra por pantalla.
SensordeLuz
GuardaValorenunaVariable
ConviertedeNumeroaTexto
MuestraTextoporPantalla
-
Bloques Personalizados
-
Bloques PersonalizadosCuando utilizamos la misma rutina varias veces seguidas, siempre es bueno tener un bloque de este tipo para ahorrar tiempo a la hora de programar, adems ahorras espacio en tu diagrama.
Seleccionarlarutinaqueharemosunbloque.
Ingresarnombreydescripcin
-
EjemploCrear un bloque de la siguiente rutina.
NombreyDescripcin
Crearunicono
-
Crear un bloque de la siguiente rutina.
Ejemplo
Yeliconodelarutinaquedaraasi.
-
Aplicando Conocimientos
-
Ejercicio Propuesto 1El robot debe avanzar hasta chocar, luego girar en 180 y
volver a realizar la misma accin.
Nota:Nonecesariamentedebemosutilizarelsensor derotacinparaelgiro,estodependedecmoesteconstruidonuestrorobot.Paraestecasoutilizaremostiempo,elquedepender delrocedellasuperficie.
-
Ejercicio Propuesto 2El robot debe seguir el borde de una lnea negra.
-
Ejercicio Propuesto 3El robot debe cumplir la funcin de despertador, cuando
salga el sol debe tocar un sonido (Alarma).
-
Ejercicio Propuesto 4El robot debe esquivar cualquier objeto que este a una
distancia de menos de 20 centmetros frente a l.
-
Ejercicio Propuesto 5El robot debe avanzar en cualquier direccin por 2 segundos
cuando escuche un sonido, y cuando no lo escuche debe detenerse.
-
Fin
-
TutorialdeProgramacin
LEGOMINDSTORMSNXT
Primero que todo, debemos entender: Los sensores del Kit LEGO NXTLos sensores del Kit LEGO NXTOtros SensoresControlador NXTControlador NXTMen NXTMen NXTPaletas de FuncionesProgramacin BsicaPaleta BsicaEjercicio 1:Ejercicio 1: SolucinTransferir un programa al NXTTransferir un programa al NXTAdministracin de MemoriaAdministracin de MemoriaEjercicio 2:Actividad 1:Actividad 1:SensoresSensor de RotacinActividad 2:Actividad 2:Sensor de TactoActividad 3:Actividad 3:Sensor de LuzActividad 4:Actividad 4:Sensor de SonidoActividad 5:Actividad 5:Sensor UltrasnicoSensor UltrasnicoActividad 6:Actividad 6:Recursiones / LoopsRecursionesActividad 7:Actividad 7:Bifurcaciones / CondicionalesCondicionalesEjemploTareas SimultaneasTareas SimultaneasEjemploVariablesEjemploBloques PersonalizadosEjemploEjemploAplicando ConocimientosFin