Академический Документы
Профессиональный Документы
Культура Документы
bajo la misma licencia 3.0 Unported). Para cualquier duda respecto a la licencia contactar con el autor en
http://about.me/koldo_olaskoaga.
Contacto
Si deseas ponerte en contacto con su autor (sugerencias, propuestas de mejora) lo encontrars en
http://about.me/koldo_olaskoaga.
LEGO, TECHNIC, MINDSTORMS, y el logotipo LEGO son marcas registradas de The LEGO
Group
2 LA FLL ................................................................................................................................................................ 2
LOS EQUIPOS .............................................................................................................................................................. 2
EL RETO .................................................................................................................................................................... 2
CMO SE DESARROLLA LA COMPETICIN ........................................................................................................................... 2
LOS VALORES .............................................................................................................................................................. 2
EL JUEGO DEL ROBOT .................................................................................................................................................... 3
L A PRESENTACIN TCNICA ............................................................................................................................................ 3
EL PROYECTO CIENTFICO ............................................................................................................................................... 3
LOS RECONOCIMIENTOS ................................................................................................................................................ 4
3 POR DNDE EMPEZAR ....................................................................................................................................... 5
PRIMER PASO ............................................................................................................................................................. 5
ESTRATEGIAS .............................................................................................................................................................. 5
EVALUAR LAS IDEAS ...................................................................................................................................................... 5
PASO A PASO .............................................................................................................................................................. 6
4 EL ROBOT........................................................................................................................................................... 7
EL CENTRO DE GRAVEDAD .............................................................................................................................................. 7
SISTEMAS DE DIRECCIN ................................................................................................................................................ 7
UN POCO DE FSICA .....................................................................................................................................................10
RECURSOS ................................................................................................................................................................11
5 NAVEGACIN BSICA .......................................................................................................................................12
ALGORITMOS ............................................................................................................................................................12
PROGRAMACIN BSICA CON NXTPROGRAM ....................................................................................................................12
PROGRAMACIN CON NXT-G........................................................................................................................................13
BLOQUES PARA MOVER EL ROBOT ...................................................................................................................................14
MOVIMIENTOS BSICOS ...............................................................................................................................................16
COMENTARIOS EN LOS PROGRAMAS.................................................................................................................................17
POTENCIA MNIMA DE ARRANQUE ...................................................................................................................................18
REINICIAR MOTORES ....................................................................................................................................................18
UNA PEQUEA MEJORA ...............................................................................................................................................19
CONTROL DEL FLUJO DEL PROGRAMA ...............................................................................................................................19
MIS BLOQUES ...........................................................................................................................................................22
COMPARTIR PROGRAMAS..............................................................................................................................................24
ACTIVIDADES .............................................................................................................................................................25
RECURSOS ................................................................................................................................................................25
6 MEJORAS EN LA NAVEGACIN..........................................................................................................................27
CABLEADOS EN NXT-G ................................................................................................................................................ 27
MEJORA EN LA PRECISIN DE LOS GIROS ...........................................................................................................................28
ARRANQUE Y PARADA EN RAMPA ....................................................................................................................................29
USO DE FORMULAS MATEMTICAS ..................................................................................................................................30
MOVER HASTA EL TOPE ................................................................................................................................................31
CMO HACER DOS COSAS A LA VEZ ..................................................................................................................................32
ACTIVIDADES .............................................................................................................................................................32
7 USO BSICO DE SENSORES ...............................................................................................................................34
QU ES UN SENSOR .....................................................................................................................................................34
CMO TESTEAR SENSORES ............................................................................................................................................34
CARACTERSTICAS DE LOS SENSORES ................................................................................................................................35
CMO MONITORIZAR SENSORES .....................................................................................................................................39
ROBOT QUE SIGUE UNA LNEA ........................................................................................................................................41
CALIBRACIN DEL SENSOR DE LUZ ...................................................................................................................................42
ERRORES FRECUENTES .................................................................................................................................................43
ACTIVIDADES .............................................................................................................................................................44
RECURSOS ................................................................................................................................................................44
8 USO COMBINADO DE SENSORES ......................................................................................................................45
LGEBRA DE BOOLE ....................................................................................................................................................45
MONITORIZAR UN SENSOR ............................................................................................................................................48
CMO MONITORIZAR DOS SENSORES ...............................................................................................................................49
SEGUIR LNEA II ..........................................................................................................................................................50
MLTIPLE CALIBRACIN DE SENSORES DE LUZ.....................................................................................................................51
ACTIVIDADES .............................................................................................................................................................58
RECURSOS ................................................................................................................................................................59
9 NEUMTICA......................................................................................................................................................60
NEUMTICA Y FLL ......................................................................................................................................................60
ELEMENTOS NECESARIOS ..............................................................................................................................................61
10 DIBUJO DE MODELOS LEGO ..............................................................................................................................62
POR QU DIBUJAR .......................................................................................................................................................62
CON QU DIBUJAR ......................................................................................................................................................62
LEGO DIGITAL DESIGNER .............................................................................................................................................63
LDRAW....................................................................................................................................................................63
SR 3D BUILDER .........................................................................................................................................................64
RECURSOS ................................................................................................................................................................64
APNDICE 1: PIECERO ...............................................................................................................................................66
EL NXT ...................................................................................................................................................................66
MOTORES ................................................................................................................................................................68
SENSORES ................................................................................................................................................................68
ESTRUCTURAS ...........................................................................................................................................................70
ELEMENTOS DE UNIN .................................................................................................................................................75
TRANSMISIONES MECNICAS ......................................................................................................................................... 76
COMPRA DE NUEVAS PIEZAS ..........................................................................................................................................84
RECURSOS ................................................................................................................................................................86
1 Introduccin
Desde el inicio de la FLL Euskadi colaboro con Innobasque en su organizacin asumiendo responsabilidades en los
aspectos relacionados con la competicin de la mesa y ofreciendo formacin y soporte a los entrenadores. Disfruto de
ello y considero un lujo poder ser parte de este proyecto de personas e innovacin.
Esta gua es una recopilacin de recursos que he ido publicando en modo pblico o privado en el marco de la FLL
Euskadi y en la revista on-line Hispabrick Magazine y pretende ser una herramienta de ayuda para entrenadores y
entranadoras.
Los equipos
La mayora de los equipos estn creados en torno a centros escolares de secundaria, aunque tambin los hay promovidos
desde diferentes asociaciones o formados por grupos de amigos. Un equipo est constituido por un mximo de 10
jugadores que deben unir sus esfuerzos, con la ayuda de su entrenador, para enfrentarse a un problema y buscar
soluciones utilizando la creatividad y el pensamiento analtico.
Los equipos pueden recibir el apoyo de mentores que ofrecen de modo voluntario su apoyo al equipo en aspectos de
carcter tcnico, cientfico o incluso en el diseo de elementos que identifiquen al equipo.
El reto
El punto de partida de la FLL es un desafo que todos los aos es desvelado a los equipos participantes entre finales de
agosto e inicios de septiembre.
Aunque hay quin podra pensar que la FLL es slo una competicin de robots, es algo ms que eso. El reto no se reduce
a la competicin entre robots, aunque probablemente sea la parte que mayor motivacin genera, sino que los equipos
han de investigar y presentar un proyecto cientfico relacionado con el tema central. Adems de la parte tcnica y
cientfica la FLL cuenta con un cdigo de comportamiento que resume el espritu de esta competicin
Todo esto se ve reflejado en la propia competicin, la parte tcnica, la cientfica y los valores se valoran por igual en la
valoracin final. La organizacin de la FLL lo resume de la siguiente manera: el juego del robot y el proyecto son lo que
los equipos hacen, y los valores FLL el cmo lo hacen.
Los valores
Los valores son bsicos en la FLL y as ha de ser comprendido e interiorizado por equipos, entrenadores, escuelas,
familias y han de impregnar toda la actividad que se desarrolla en la FLL:
Somos un equipo
Trabajamos para encontrar soluciones con la ayuda de nuestros entrenadores
Honramos el espritu de una competencia amigable
Lo que descubrimos es ms importante que lo que ganamos
Compartimos nuestras experiencias con los dems
La presentacin tcnica
Si bien el resultado es importante, en un proceso de aprendizaje lo es mucho ms el camino recorrido.
Este es un aspecto relacionado con la competicin de robots, pero aqu lo importante no es la cantidad de puntos
conseguida sino la metodologa y estrategias utilizadas para resolver los problemas y las soluciones innovadoras
aplicadas (incluso si su xito ha sido limitado). Los equipos han de presentar al jurado aquello que ellos consideren
significativo en el proceso de diseo del robot: soluciones que consideren innovadoras, problemas que hayan
encontrado y estrategias utilizadas para resolverlos, resultados de aprendizaje...
Del mismo modo que sucede con el proyecto cientfico, el equipo tiene 5 minutos para exponer sus soluciones y otros 5
minutos para responder a las preguntas del jurado. La exposicin se realiza en torno a una mesa de competicin en la
que el jurado puede pedir que se muestre el resultado de alguna de las soluciones propuestas.
El proyecto cientfico
Cada equipo ha de identificar un problema relacionado con el tema central del reto. Se trata de un proceso de
observacin, recogida de informacin y anlisis en el entorno cercano.
Una vez que han seleccionado un problema hay que crear una solucin innovadora. Ello exige poner a trabajar la
imaginacin y el ingenio. Siempre es posible encontrar nuevas soluciones. A veces tras desarrollar una idea nos
preguntaremos cmo no se le haba ocurrido a nadie antes.
Durante este proceso de identificacin de problemas y creacin de soluciones innovadoras es importante buscar
contactos en otros pases, equipos con los que compartir inquietudes, y tratar de buscar soluciones que puedan ser
vlidas tanto en nuestro entorno como en otras comunidades.
Esto no es slo un trabajo acadmico as que es importante compartir con la comunidad nuestras propuestas:
presentaciones a padres y madres, crear una web...
Los reconocimientos
Aunque en un programa de promocin de ciencia y tecnologa como este lo importante es la experiencia, la oportunidad
de compartirla con jvenes de otros orgenes aqu tambin los equipos que han marcado la diferencia se ven
reconocidos.
Aproximadamente la mitad de los equipos participantes en un torneo reciben un trofeo. Entre ellos, los que hayan
conseguido un mejor resultado entre el juego del robot, el proyecto cientfico y los valores, tendrn la oportunidad de
pasar a la fase siguiente, nacional o internacional.
La falta de respeto a los valores FLL puede hacer que un equipo no reciba ningn trofeo a pesar de haber obtenido el
mejor resultado en alguna de las categoras.
El primer ao enfrentarse a la tarea que supone el reto de la FLL puede llegar a superarnos. Es por ello que me permito
dar algunas ideas que pueden ser tiles para algn equipo. Aqu s0olo me voy a referir a las misiones que ha de afrontar
el robot.
Primer paso
La lectura de los documentos bsicos es algo que hay que hacer una y otra vez a lo largo del proceso de construir el
robot, programarlo, probarlo y mejorarlo. Conviene empezar por ah, empaparse en el reglamento, conocer las
misiones y aclarar las dudas que se han presentado en esas primeras lecturas.
Una tcnica que se puede utilizar a la hora de estudiar las misiones puede ser la tcnica del puzle, es decir: repartir las
misiones en grupos de tres para que cada grupo analice las misiones que les correspondan, para a continuacin
explicrselas a los dems.
Estrategias
Si el reto del robot fuese resolver una misin, no habra mucho que hablar, pero desde el momento que es un conjunto
de misiones a desarrollar en un tiempo limitado, es importante reflexionar, analizar diferentes opciones y decidir cul
es la estrategia a desarrollar.
Pero alguno se preguntar, Qu quiere decir con lo de la estrategia? Bueno, hay una serie de misiones que, en la
mayora de los equipos, podemos pensar complicado resolver en su totalidad. Eso quiere decir que hay que analizarlas,
valorar su grado de dificultad, ordenarlas y establecer prioridades. El acuerdo que se llegue en el equipo ayudar a
planificar y repartir las tareas de construccin y programacin del robot y a obtener un mayor rendimiento del esfuerzo
que se haga.
Podemos imaginar que somos una persona que ha perdido su visin y que como mucho tengo unas ayudas que me
permiten saber si me voy a chocar pero nada ms. Vamos a pensar en una sucesin de acciones que nos permitir
conseguir el objetivo. Y si se nos ocurre ms de una para cada misin, pues mucho mejor, siempre hay tiempo para
optar por una u otra.
Y todava no hemos montado nada excepto la mesa. Para pensar en clave de estrategias no necesitamos ningn robot,
el robot nos va a distraer en el anlisis. Antes de montar nada pensaremos en los mecanismos que necesitaremos disear
para aplicar las estrategias que hemos recogido en esta primera ronda: palancas, levas, mecanismos compuestos de
engranajes
El centro de gravedad
Hay un factor muy importante que siempre hay que tener en cuenta en cualquier diseo mecnico: la posicin en que se
encuentra el centro de gravedad. El centro de gravedad va a condicionar el comportamiento del robot, sobre todo en los
arranques, paradas y giros. Un robot aparentemente estable puede balancearse o incluso volcar al arrancar si tiene el
centro de gravedad muy retrasado.
Puede volcar lateralmente al girar si lo tiene muy alto...
El centro de gravedad siempre se tiene que encontrar sobre el polgono que describen los apoyos del robot en el suelo
(tringulo, cuadriltero), pero no solo eso, cuando el robot se pone en marcha, se detiene o gira aparecen nuevas
fuerzas que pueden hacer que el robot se balancee o vuelque, esta es la razn de que, como con los coches, convenga
que el centro de gravedad est lo ms bajo posible.
Sistemas de direccin
Una de las primeras decisiones que hay que tomar al montar un robot es el sistema de locomocin que utilizar. Es algo
que condiciona tanto la complejidad de la construccin de un robot como su programacin, pero no solo eso, sino que
tambin su maniobrabilidad.
Podemos fijarnos en nuestro entorno para ver los sistemas que utilizan los automviles, los triciclos, las sillas de nios y
Direccin diferencial
Este sistema se basa en conectar un motor a la rueda o ruedas de cada uno de los lados del robot. Si los dos motores
giran a la misma velocidad el robot avanzar en lnea recta, si giran a diferentes velocidades el robot girar a uno u otro
lado.
Es el sistema ms sencillo de implementar, tanto si quiere controlarse la posicin del robot en base a los giros de las
ruedas utilizando formulacin matemtica como si se controla a tanteo.
Es importante tener en cuenta tanto la superficie sobre la que se mover el robot como la carga que ha de llevar antes de
decidirse por uno u otro. A continuacin se presentan cuatro soluciones diferentes.
Accesorios
El reglamento de la FLL define lo que es el robot a efectos de la competicin (lo hace as a partir del reto Senior
Solutions). Toma como elemento central la controladora y establece que todo aquellos elementos que se hayan unido a
la controladora con las manos (durante el proceso de montaje del robot) y que est diseado para no separarse de la
misma, excepto con las manos (desmontaje manual, no partes del robot diseadas para ser liberadas por l mismo),
forman parte del robot.
Eso quiere decir que tambin son robot todos los accesorios que se vayan montando a lo largo de la ronda siempre y
cuando estn diseados para no poder ser separados de otro modo que por las manos.
Es importante disear sistemas de enganche rpidos para los accesorios, de tal modo que se pierda el menor tiempo
posible.
Un poco de fsica
No est de ms recordar algunos conceptos de mecnica tiles a la hora de analizar el comportamiento de un robot.
Recursos
Blog BrickEngineer (http://goo.gl/zbN1cb): muestra cmo determinar el centro de gravedad de un motor, algo
que puede aplicarse para otros elementos o conjuntos de piezas.
Fsica en la wikipedia:
Leyes de Newwton (http://es.wikipedia.org/wiki/Leyes_de_Newton)
Movimiento rectilneo uniforme (http://goo.gl/Ob9yj6)
Movimiento circular uniforme (http://goo.gl/YAxvTJ)
Algoritmos
La definicin que da la wikipedia de algoritmo1 es la siguiente: "un algoritmo (...) es un conjunto pre-escrito de
instrucciones o reglas bien definidas, ordenadas y finitas que permite realizar una actividad mediante pasos sucesivos
que no generen dudas a quien deba realizar dicha actividad".
Todos los das utilizamos algoritmos de modo ms o menos consciente para vestirnos, asearnos, alimentarnos... A
continuacin se pueden leer los pasos dados para limpiarse los dientes (fuente: Programacin de Computadores con
Scratch Cuaderno de Trabajo para estudiantes 3 Edicin):
1. Coger la pasta de dientes
2. Destapar la pasta de dientes
3. Coger el cepillo de dientes
4. Aplicar la pasta de dientes al cepillo
5. Tapar la pasta de dientes
6. Abrir el grifo
7. Remojar el cepillo con la pasta de dientes
8. Cerrar el grifo
9. Frotar los dientes con el cepillo
10. Abrir el grifo
11. Enjuagarse la boca
12. Enjuagar el cepillo
13. Cerrar el grifo
14. Secarse la cara y las manos con una toalla
Reflexiona! Hay un nico algoritmo para cada tarea?
No, los puede haber muy diferentes del mismo modo que puede haber diferentes soluciones para un problema. A veces
decidirse por un algoritmo u otro ser cosa de gustos, pero otras veces un algoritmo ser ms eficiente que otro. Por
cierto, Estaba completo el anterior algoritmo? Dnde ha acabado el cepillo de dientes?
1 Algoritmo: http://es.wikipedia.org/wiki/Algoritmo
Actividad
Crea un programa que haga avanzar el robot hasta una posicin y a continuacin retroceda hasta encontrarse en la
posicin inicial.
Acceso al NXT
NXT-G ofrece acceso a los siguientes datos del NXT:
Nombre del NXT: es posible modificarlo. Conviene poner un nombre a cada uno (el nombre se visualiza en el
display del NXT).
Versin del firmware: la ltima 1.31.
Volumen de memoria libre
Directorio de archivos agrupados en Programas, Sonidos, Grficos y Otros. Se pueden subir, descargar o
eliminar archivos.
Para acceder al panel de control pulsar sobre el botn superior izquierda del controlador que aparece en el escritorio
cuando se abre un programa.
y a continuacin a la memoria:
El motor
El motor LMS tiene un motor de corriente continua y una reductora en su interior. Adems de ello un encder que enva
informacin a la controladora de tal modo que esta puede conocer la magnitud del giro realizado.
En la web de Philippe E. Hurbain (Philo en Internet) puede obtenerse completa informacin sobre el motor, con grficas
de su eficiencia y fotos de su interior. Muy interesantes las grficas potencia-velocidad en diferentes condiciones de uso.
El bloque "Motor"
El bloque Motor se encuentra en el men Accin de la paleta Completa.
Ejemplo
Imaginemos que hemos diseado un brazo que ha de girar un ngulo de 30 y que el motor est conectado directamente
al brazo. Habremos de calcular cul es la potencia ms adecuada para que no sea demasiado brusco, algo que se puede
hacer por tanteo. Dependiendo de la configuracin lo detendremos frenando o en flotacin. la solucin podra ser la
siguiente:
Este bloque permite controlar dos motores de modo sincronizado. Dichos motores pueden ser seleccionados por medio
del panel de control estableciendo cul es el de la izquierda y cul el de la derecha, facilitando de esa manera el control
del giro. El resto de las opciones son similares a las del bloque Motor. Es un bloque muy til para mover un robot mvil
aunque hay quien prefiere hacerlo utilizando dos bloques motor.
Movimientos bsicos
Para fijar cunto han de girar los motores, NXT-G permite hacerlo por tiempo, grados de giro del motor (con precisin
de 1 grado) y rotaciones. Adems de estas tres opciones tiene una cuarta, ilimitado, muy til para trabajar con sensores.
Los comportamientos ms bsicos a programar son el desplazamiento en lnea recta y el giro.
Movimiento en curva
Si utilizamos un robot con direccin diferencial, lo nico que hay que hacer para que gire es establecer diferentes
velocidades para los dos motores. En el bloque Mover se consigue desplazando el control deslizante de la opcin
Volante del panel de control a uno u otro lado mientras que si se utilizan los bloques motor con configurarlos con
diferentes velocidades se conseguir el objetivo. Los resultados deseados se pueden conseguir por tanteo.
Reiniciar motores
El bloque Reiniciar motor se encuentra en el men Avanzado de la paleta Completa.
Este bloque que permite reiniciar los motores, es decir, poner los encoders (los que controlan el giro) a cero. Es un
bloque que conviene incluir entes de los bloques Motor o Mover si nos parece que hay problemas de control del giro
de los motores. Hay quien incluso recomienda meterlo entre los bloques de movimiento cada vez que los utilizamos..
En el panel de control de configuracin se puede seleccionar uno, dos o los tres motores.
La funcin del bloque Bucle es ejecutar una y otra vez un conjunto de bloques mientras una condicin se cumpla. Para
ello lo nico que hay que hacer es arrastrar a su interior el conjunto de bloques cuya ejecucin ha de repetirse.
En el panel de control la opcin Control ofrece un men desplegable por medio del cul puede seleccionarse el
comportamiento deseado:
Siempre: El bucle se ejecutar sin fin, ser necesario utilizar el botn gris del NXT para detenerlo. Aunque hay
una opcin ms avanzada que tambin permitira detenerlo desde el mismo programa.
Sensor: El bucle repetir su ejecucin hasta que la lectura del sensor cumpla la condicin establecida.
Tiempo: El bucle se repetir durante el periodo de tiempo deseado. Una vez que el tiempo pase, el programa
continuar con el bloque que encuentre a continuacin del Bucle.
Contar: El bucle se repetir durante un determinado nmero.
Lgica: Es una opcin avanzada de uso que se ver en prximas unidades.
Al seleccionar una u otra de las anteriores opciones, el panel de control muestra un aspecto adaptado a las necesidades
de configuracin de cada una de ellas.
La opcin Contador que puede verse en la parte inferior permite acceder al nmero de veces que se ha repetido el bucle
desde el programa y utilizar o visualizar dicho valor.
Ejemplo
Un ejercicio de iniciacin con este bloque es hacer que un robot se mueva describiendo un cuadrado. Es algo que se
podra hacer utilizando el siguiente algoritmo:
1. Avanza
2. Gira 90 (a la derecha)
3. Avanza
4. Gira 90 (a la derecha)
Bloque "Espera"
El bloque Espera se encuentra en la paleta Comn, aunque tambin es posible acceder a l por medio del men Flujo
de la paleta Completa.
En la paleta Comn se puede elegir el bloque directamente adaptado al uso (espera tiempo o los diferentes sensores)
mientras que si lo utilizamos va la paleta completa lo primero que deberemos hacer ser seleccionar el control deseado,
sensor o tiempo.
Funcionamiento
Cuando el programa llega a un bloque Esperar, la ejecucin no pasa al bloque siguiente hasta que la condicin que
establece se cumpla. Puede ser tanto tiempo como la lectura de un sensor. Su uso ms habitual est ligado a los
sensores.
Tanto el bloque Mover como el bloque Motor llevan incluido la funcin Espera (la duracin en tiempo, giro en grados
o rotaciones) aunque no seamos conscientes de ello. No lo lleva si seleccionamos la opcin Ilimitado.
Los dos programas siguientes son equivalentes en su funcionamiento solo que en el primero el tiempo de ejecucin se
controla va el bloque Espera.
Mis Bloques
Cuando se programa un robot para describir un recorrido determinado en la mesa de competicin suele haber
fragmentos de programa que se repiten en varias misiones. NXT-G ofrece una herramienta que facilita la reutilizacin
de estos fragmentos de cdigo permitiendo convertirlos en un nuevo bloque de programacin que podremos utilizar
siempre que lo necesitemos en un mismo programa o en varios programas.
Convertir un fragmento de cdigo en un nuevo bloque de programacin ofrece las siguientes ventajas:
Comodidad: una vez creado cuando necesitemos ese fragmento de cdigo no habr que crearlo otra vez. Se
podr utilizar desde cualquier programa.
Programa ms legible: a la vez de reducir el nmero de bloques que constituye el programa lo estructura en
pasos que permiten comprenderlo mejor.
Mejor uso de la memoria: el NXT tiene una memoria limitada. Cuando se crea un bloque propio y se reutiliza
en un programa el consumo de memoria es inferior al que supondra el mismo programa sin utilizar bloques
propios.
El proceso de crear un nuevo bloque de programacin es bastante sencillo. Se empieza escribiendo el fragmento de
cdigo que habr de ejecutar el nuevo bloque. Por ejemplo una secuencia de notas que reproducirn una meloda.
A continuacin se seleccionan el fragmento de cdigo que ha de ejecutar el nuevo bloque y se selecciona Crear un
nuevo Mi bloque en el men Edicin.
En la ventana de dilogo que se abre se puede dar un nombre personalizado al bloque y escribir una descripcin. Si a
continuacin se pulsa el botn Finalizar, NXT-G crea un nuevo bloque con un icono genrico. Si se desea modificar el
A partir de este momento se podr acceder al nuevo bloque desde la paleta Personalizada.
Compartir programas
Compartir un programa es una tarea bien sencilla, es suficiente con enviar el archivo del programa a quien deseemos,
pero esto no es as cuando se han utilizado bloques creados por uno mismo. En dicho caso hay que hacerlo como se
explica a continuacin.
NXT-G incorpora a partir de la versin 2.0 la herramienta Pack and Go que permite crear un archivo que contenga el
programa y los nuevos bloques. Para utilizarla primero hay que abrir el programa a empaquetar y acceder a
Herramientas > Crear Pack and Go.
La opcin Crear Pack and Go abre un cuadro de dilogo que muestra los archivos que empaquetar. Es posible
modificar el nombre del archivo y el directorio donde lo ha de guardar. Pulsando Aceptar finaliza el proceso.
Actividad 1
Programar un robot que sea capaz de desplazarse hasta un punto determinado de modo preciso evitando todo contacto
con los objetos que pueda haber en el camino. Se puede utilizar con campo de operaciones un suelo con varias sillas o la
misma mesa de la FLL.
Es muy importante que aun siendo una actividad sencilla se siga el procedimiento propuesto: crear primero el algoritmo
y despus el programa.
Una vez superada la actividad se testearn las consecuencias en el comportamiento del robot al aadir algn accesorio a
cargo.
Actividad 2
El robot ha de desplazarse utilizando como referencia la pared. La clave est en la estructura y apoyarse en la pared con
una ligera deriva hacia el lado en el que se encuentra la pared que se ver compensada con la resistencia de ella.
Actividad 3
El robot ha de desplazarse hasta cierto punto con rapidez. Es una actividad de compromiso entre rapidez y precisin.
Permite analizar los efectos de las aceleraciones e influencia de la posicin del centro de gravedad en ello.
Los modos para obtener velocidad pueden ser utilizando ruedas grandes o por medio de una transmisin por engranajes.
Un ejercicio que se puede hacer de modo adicional es calcular las equivalencias entre un grado de giro del encder y el
desplazamiento longitudinal.
Actividad 4
El robot ha de describir una trayectoria con giros precisos. Esta es una actividad de construccin y sistemas de giro que
permite apreciar el efecto de utilizar diferentes tipos de ruedas, el del rozamiento...
Si se hace con diferentes sistemas de direccin y diferentes posiciones del centro de gravedad facilita compararlos y
sacar conclusiones.
Recursos
Estos documentos son de carcter general, no hacen referencias a NXT-G, pero son muy tiles a la hora de iniciarse en
el aprendizaje de la programacin. Los tres los ofrece Eduteka en su web.
Gua de Algoritmos y Programacin para docentes en http://www.eduteka.org/modulos/9/298/
Programacin de Computadores con Scratch. Cuaderno de Trabajo para estudiantes (Tercera
Edicin) en http://www.eduteka.org/modulos/9/298/
Currculum Algoritmos y Programacin en http://goo.gl/BmybBj
Los siguientes libros pueden ser adquiridos tanto en papel como en versin eBook.
"Winning Design!: LEGO MINDSTORMS NXT Design Patterns for Fun and Competition", James
Jeffrey Trobaug: Interesante libro dirigido a equipos de la FLL.
"Winning LEGO MINDSTORMS Programming LEGO MINDSTORMS NXT-G Programming for Fun
and Competition", James Trobaugh, Mannie Lowe: Este libro tambin dirigido a la FLL en el aspecto ms
especfico de la programacin.
"The Art of LEGO MINDSTORMS NXT-G Programming", Terry Griffin: Libro sobre programacin en
NXT-G
Vdeos:
Presentacin de NXT-G http://youtu.be/swWzEI0CVoo
Cmo crear un nuevo bloque http://youtu.be/9SKzBTFQ8UA
Cableados en NXT-G
NXT-G est basado en LabView, un lenguaje de programacin grfico que utiliza cables para unir los diferentes
bloques de programacin y transportar datos (valores numricos, cadenas de texto, valores lgicos verdadero/falso...).
NXT-G tambin utiliza cables para transportar datos, aunque no son necesarios al iniciarse en su programacin. Sin
embargo, si se quiere avanzar en el dominio de NXT-G y desarrollar programas ms complejos es necesario dominar el
uso de cables de datos.
Para las conexiones hay que desplegar los concentradores de datos de los bloques de programacin haciendo clic en su
parte inferior. En la siguiente imagen puede verse el bloque Visualizar con el concentrador cerrado y abierto.
Un ejercicio bsico de cableado es el convertir un nmero en texto para poder mostrarlo en el monitor del NXT, por
ejemplo la lectura del sensor de ultrasonidos. El programa ser el siguiente:
El primer bloque guarda en la variable Giro el valor deseado. El segundo lee el contenido de la variable y va el cable
amarillo asigna dicho valor a la toma de datos Volante.
Para avanzar utilizaremos el bloque Mover con potencia 100 y la opcin duracin en ilimitado, y a continuacin un
bloque Esperar con la opcin Tiempo 2s. Si en lugar de hacerlo as utilizsemos solo el bloque Mover con la opcin
duracin 2s no podramos controlar la frenada de este modo. El resto es similar al bucle inicial, solo que en este caso se
resta una unidad en lugar de sumar.
Actividad
Ahora se trata de practicar, intenta hacer esto ltimo sin utilizar una variable. Para ello fjate lo que sucede cuando en el
panel de control de la estructura Bucle (Loop) hacemos clic sobre la casilla de la parte inferior Contador.
Actividades
Actividad 1
Si bien la potencia de los motores puede fijarse entre 0 y 100, el robot no comenzar a moverse con potencia 1 sino que
necesitar un mnimo para ponerse en marcha, algo que depender de su peso y diseo mecnico. Si el robot utiliza
diferentes accesorios para diferentes tareas, tal y como se hace en la FLL, esa potencia mnima puede variar. Desarrolla
un programa que permita conocerla, se puede utilizar la pantalla del NXT para mostrarla.
Actividad 2
Trazar un recorrido con varios obstculos y tratar de que el robot lo recorra con precisin y vuelva al punto de inicio.
Se puede colocar una pelota sobre el robot, de un modo en el que si el arranque o parada es brusco la pelota caiga, e
intentar que se mueva sin que la pelota caiga.
Actividad 3
Cuando se utiliza una pinza o dispositivo asimilable, en la mayora de los casos tiene una posicin de inicio que
ajustamos a mano. Esto se puede hacer de modo automtico al iniciar el programa de tal modo que se asegura que
siempre lo hace en la misma posicin. Para ello lo que se puede hacer es primero cerrarla del modo que se ha visto en a
Mover hasta el tope y despus abrirla el ngulo deseado. Es algo que incluso se puede hacer mientras el robot est ya en
marcha.
Crea el programa de inicializa una pinza y despus convirtela en un nuevo bloque que puedes llamar "Inicializar
Pinza".
Qu es un sensor
Si vamos a la wikipedia2 encontramos la siguiente definicin de sensor: "Un sensor es un dispositivo capaz de detectar
magnitudes fsicas o qumicas (..) y transformarlas en variables elctricas."
Entre ellos los hay ms sencillos en su construccin y otros mucho ms complejos. Estas magnitudes pueden ser de muy
diferentes tipos: distancia, luminosidad, nivel de ruido, temperatura...
Diariamente, aunque sea de modo inconsciente, utilizamos sensores: de temperatura en el calentador de agua para
regular la temperatura, el acelermetro que detecta la orientacin de un smartphone o tablet, el pulsador con el que
tocamos el timbre, y muchos ms.
La oferta de sensores para utilizar con robots LEGO MINDSTORMS NXT es muy extensa, adems de LEGO hay otras
empresas que los comercializan aumentando la potencialidad del sistema.
2 http://es.wikipedia.org/wiki/Sensor
Try Me
Es otro modo de hacer pequeos test de un motor y sensores aunque es mucho menos til que View. Su utilidad no vas
ms all se saber si un conjunto sensor-cable funcionan.
Para hacerlo es necesario que las conexiones sean las siguientes:
Motor: puerto A
Sensor de contacto: Puerto 1
Sensor de sonido: Puerto 2
Sensor de luz: Puerto 3
Sensor de color: Puerto 3
Sensor de ultrasonidos: Puerto 4
Sensor de contacto
Este sensor sirve para detectar un objeto cuando se choca con l. Es el ms sencillo de todos, de hecho no es mas que un
pulsador que al apretar cierra un contacto y al soltarlo lo abre.
Adems de para detectar obstculos, tambin puede ser til para actuar sobre un programa en lugar de utilizar los
botones del NXT, o para detectar cuando un robot llega al borde de una mesa y evitar caerse. Su posicin de inicio
puede ser tanto pulsado como sin pulsar, dependiendo de lo que se desee hacer.
Valores de las lecturas
El valor que NXT-G ofrece como lectura del sensor de contacto es un 0 (no est presionado) o un 1 (presionado) aunque
normalmente no se necesita acceder al valor numrico.
Bloques de programacin
Si bien hay dos bloques de programacin que acceden a la lectura de los sensores, por ahora vamos a ver solo uno, el
que permite controlar el flujo de un programa utilizando sensores: el bloque Esperar que puede ser configurado tanto
para que el flujo de ejecucin del programa se detenga durante un determinado periodo de tiempo como para que espere
hasta que el sensor elegido cumpla la condicin que se desee.
Sensor de luz
El sensor de luz puede medir la intensidad de luz en un ambiente determinado o la luz reflejada por una superficie. Para
esto ltimo dispone de un led rojo que emite la luz que dicha superficie reflejar. Si la superficie es oscura reflejar
menos luz que si es clara. Si es necesario, es posible mantener este led emisor de luz apagado.
Valores de las lecturas
El valor que NXT-G ofrece como lectura del sensor est comprendido entre 0 y 100. El valor 0 se corresponde con una
baja luminosidad (poca luz) mientras que 100 es la lectura para altas luces. Son los lmites que pocas veces veremos.
Bloques de programacin
Si bien hay dos bloques de programacin que acceden a la lectura de los sensores, por ahora vamos a ver solo uno, el
que permite controlar el flujo de un programa utilizando sensores: el bloque Espera que puede ser configurado tanto
para que el flujo de ejecucin del programa se detenga durante un determinado periodo de tiempo como para que espere
hasta que el sensor elegido cumpla la condicin que se desee.
Factores perturbadores
Normalmente el robot va a desarrollar su tarea en entornos iluminados de un modo muy diferente. Incluso a medida que
el tiempo avanza, las condiciones de iluminacin pueden variar: el sol se mueve, las nubes lo ocultan, se enciende una
luz...
Si el robot ha de seguir una lnea, encontrar una zona oscura sobre un fondo claro... la luz del entorno va a ser un
elemento perturbador que alterar las lecturas del sensor provocando resultados inesperados.
Cmo evitarlos? Uno de los modos es montar el sensor lo ms cerca posible del suelo y protegido de tal modo que el
mnimo de luz del entorno llegue al sensor. Adems de ello conviene calibrar el sensor, es decir, indicarle lo que bajo
dichas condiciones de luz es blanco y lo que es negro.
Atencin!!! Si el sensor est demasiado cerca del suelo no ser capaz de ver el reflejo de la luz que genera el LED
rojo. Como consecuencia la lectura ser siempre "oscuro" independientemente del color de la superficie a la que mira.
Sensor de color
El sensor de color es el resultado de la evolucin del sensor de luz. Adems de cumplir las funciones del sensor de luz
es capaz de identificar 4 color diferentes adems del negro y blanco.
Valores de las lecturas
El sensor de color puede ser utilizado tanto como sensor de color o de luz. Si se utiliza como sensor de luz las lecturas
estarn comprendidas entre 0 y 100, de la misma manera que con el de luz.
Cuando se utiliza como sensor de color las lecturas sern Negro, Azul, Verde, Amarillo, Rojo o Blanco.
Bloques de programacin
Si bien hay dos bloques de programacin que acceden a la lectura de los sensores, por ahora vamos a ver solo uno, el
que permite controlar el flujo de un programa utilizando sensores: el bloque Esperar que puede ser configurado tanto
para que el flujo de ejecucin del programa se detenga durante un determinado periodo de tiempo como para que espere
hasta que el sensor elegido cumpla la condicin que se desee.
Su funcin es detener el flujo del programa hasta que la condicin que se establezca en el panel de control sea
verdadera. El panel de control permite seleccionar el modo en el que se desea utilizar el sensor (color o luz) as como
los rangos de color que determinan la condicin.
Sensor de ultrasonidos
El sensor de ultrasonidos es muy til para detectar objetos sin necesidad de tocarlos. Mide la distancia a los objetos que
se encuentran frente a l. Para ello, emite ultrasonidos que rebotan sobre los objetos que se interponen y mide el tiempo
que les cuesta volver tras rebotar. La medida de ese tiempo se convierte en distancia.
Valores de las lecturas
El valor que NXT-G ofrece como lectura del sensor de ultrasonidos la distancia al objeto que se interpone en
centmetros o pulgadas (mximo 2,50m).
Bloques de programacin
Si bien hay dos bloques de programacin que acceden a la lectura de los sensores, por ahora vamos a ver solo uno, el
que permite controlar el flujo de un programa utilizando sensores: el bloque Esperar que puede ser configurado tanto
para que el flujo de ejecucin del programa se detenga durante un determinado periodo de tiempo como para que espere
hasta que el sensor elegido cumpla la condicin que se desee.
Su funcin es detener el flujo del programa hasta que la condicin que se establezca en el panel de control sea
verdadera. El panel de control permite seleccionar adems de la distancia que define la condicin en centmetros o
pulgadas.
Factores perturbadores
Uno de los factores que puede generar problemas cuando se mide una distancia con un sensor de ultrasonidos es el
material del que est constituido el objeto interpuesto. Por ejemplo, ciertos tejidos no reflejan los ultrasonidos, as que el
robot no los ve. Las paredes tampoco son todas iguales y un sensor de ultrasonidos no dara el mismo valor de distancia
Sensor de rotacin
Los motores LEGO MINDSTORMS NXT disponen de un sensor de rotacin interno que ofrece una precisin de 1. El
giro de estos sensores pueden ser monitorizados de modo independiente y es posible utilizar las mismas herramientas de
programacin que se utilizan con el resto de los sensores.
Valores de las lecturas
El valor que NXT-G ofrece como lectura del sensor de rotacin en grados, aunque tambin puede pueden obtenerse las
lecturas por rotaciones.
Bloques de programacin
Si bien hay dos bloques de programacin que acceden a la lectura de los sensores, por ahora vamos a ver solo uno, el
que permite controlar el flujo de un programa utilizando sensores: el bloque Espera que puede ser configurado tanto
para que el flujo de ejecucin del programa se detenga durante un determinado periodo de tiempo como para que espere
hasta que el sensor elegido cumpla la condicin que se desee.
Su funcin es detener el flujo del programa hasta que la condicin que se establezca en el panel de control sea
verdadera. El panel de control permite seleccionar adems de el giro que define la condicin tanto en grados como en
rotaciones.
Ejemplo
El programa ms bsico con sensores es hacer avanzar un robot hasta que choque con una pared y que se detenga en ese
momento. El algoritmo correspondiente sera el siguiente:
1. Poner en marcha el robot
2. Esperar a que el sensor de contacto choque con la pared
3. Detener el robot
Este algoritmo se convertir en el siguiente programa (en este caso un bloque por cada lnea de algoritmo, observar que
el bloque Mover est configurado con duracin ilimitada, ya que al desconocer el espacio a recorrer ser otro bloque el
que se encargue de detenerlo). En estos programas el uso del bloque Espera (visto en la unidad anterior) resulta
imprescindible.
Mejora n 1
Veamos cmo hay que modificar el programa si queremos que despus de chocar el robot retroceda cierta distancia y
gire. El nuevo algoritmo ser el siguiente:
1. Poner en marcha el robot
2. Esperar a que el sensor de contacto choque con la pared
3. Detener el robot
4. Retroceder (por ejemplo una rotacin)
5. Girar (por ejemplo una rotacin)
El nuevo programa ser el siguiente:
Mejora n 2
Ahora vamos a hacer que se mueva por un entorno con obstculos de modo continuo, es decir, que repita lo anterior sin
fin. Para ello utilizaremos el bloque bucle en el que incluiremos todo lo anterior.
En el caso de la FLL deberemos hacerlo con sensores de luz o color. Si se hace con un solo sensor de luz el robot no
puede saber por qu lado se desva de la lnea as que hay que antes de nada hay que reflexionar y definir una estrategia
que nos permita hacerlo. Veamos un par de ellas:
Seguir el borde: El robot sigue uno de los bordes de la lnea, por ejemplo, el lado izquierdo de la lnea. De
este modo a la izquierda del sensor est el fondo blanco mientras que a la derecha est la lnea negra. Se puede
programar el robot de tal modo que cuando vea negro gire a la izquierda y cuando vea blanco gire a la derecha.
De este modo se puede seguir la linea.
Seguir la lnea: El robot sigue la lnea. Cuando lee blanco busca la lnea otra vez, girando primero hacia un
lado durante un determinado plazo de tiempo y si no la encuentra gira hacia el otro lado hasta encontrarla.
En general el primero ser ms eficiente y aqu veremos el modo bsico de abordarlo.
El algoritmo
Imaginemos que el robot tiene el motor izquierdo conectado al puerto A mientras que el derecho al puerto C.
El algoritmo para que el robot siga el borde izquierdo de la lnea ser el siguiente:
1. Repetir los siguientes pasos una y otra vez
Si se ve oscuro girar a la izquierda (esto se puede hacer deteniendo el motor izquierdo)
Si se ve claro girar a la derecha (esto se puede hacer deteniendo el motor derecho)
Mediremos la luz reflejada en una zona negra y en una zona blanca y tomaremos como referencia un valor intermedio.
En el ejemplo ese valor es 40. Si el valor supera 40 ser que est sobre blanco y habr girar a la derecha, en caso
contrario a la izquierda.
El programa
Que en NXT-G ser lo siguiente:
Procedimiento de calibracin
Para calibrar el sensor desde el NXT se utiliza el siguiente bloque que puede encontrarse en la paleta de bloques
Completa > Avanzado.
Este bloque se puede configurar va el panel correspondiente (puede verse en la siguiente imagen).
Errores frecuentes
Los dos bloques de programacin tienen un aspecto muy similar lo que hace que sea una fuente de errores.
El primero de ellos tiene una franja amarilla sobre l. Su funcin es conocer la lectura del sensor en el momento que el
programa pasa por l.
El segundo tiene una franja naranja y un reloj de arena sobre la mano. Su funcin es detener la ejecucin del programa
hasta que la condicin se cumpla (Espera), en este caso hasta que el sensor de contacto sea presionado.
Lo mismo ocurre con el resto de los sensores, as que en el caso de que se de un comportamiento inesperado
relacionado con sensores y flujo de programa conviene comprobar cul de los bloques se ha utilizado.
Actividad 1
Conecta las luces a los puertos A, B y C y un sensor de contacto a uno de los puertos de sensores.
Crea un programa que reproduzca el siguiente comportamiento tras poner en ejecucin el programa:
al pulsar el sensor se enciende la luz conectada al puerto A
al pulsar de nuevo el sensor se apaga la luz conectada al puerto A y se enciende la conectada al B
al pulsar de nuevo el sensor se apaga la luz conectada al puerto B y se enciende la conectada al C
al pulsar de nuevo el sensor las tres se encienden y apagan tres veces en periodos de 0,3 segundos tras lo que el
programa finaliza.
Actividad 2
El robot ha de desplazarse hasta la pared este y detenerse en contacto con ella. Sin eliminar ningn obstculo has de
programar una sucesin de movimientos de tal manera que llegue a la pared este sin derribar nada y se quede pegado a
ella.
Lo importante en esta actividad es trabajar con los encders y crear nuevos bloques que agrupen fragmentos de
programa que pudiesen sen reutilizados en otro momento. Utilizar un sensor de contacto para determinar cuando entra
en contacto con el muro pero hay que tener cuidado para que no rebote, ya que en ese caso no acabar en contacto
Actividad 3
Material necesario: un robot mvil con un un sensor de luz apuntando hacia el suelo para detectar zonas claras y
oscuras.
Escenario: una hoja de papel blanco, puede ser una de tamao A4, pegada a un fondo oscuro (puede ser una mesa de
madera, cualquiera que ofrezca un contraste claro-oscuro).
Comportamiento deseado: Colocar el robot sobre el papel. Al poner en ejecucin el programa el robot hace lo siguiente:
1. el robot avanza hasta el borde del papel
2. el robot retrocede hasta el otro borde del papel
3. el robot repite lo anterior indefinidamente
Actividad 4
El robot ha de avanzar hasta cruzar dos lneas negras, hacer un giro de 180 y detenerse.
Recursos
Oferta de sensores para el NXT (http://lrobotikas.net/wiki/index.php?title=Sensores): listado y caractersticas
de sensores utilizables con LEGO MINDSTORMS NXT.
lgebra de Boole
Las funciones del lgebra de Boole son muy tiles en programacin y NXT-G permite utilizar varias de ellas. Estas
funciones permiten operar con valores lgicos, es decir, con valores tales como Verdadero o Falso (estos valores
tambin pueden ser representados como 1 o 0).
Los resultados de las condiciones mencionadas anteriormente (por ejemplo, la temperatura en el balcn ha superado
220) son valores lgicos. Si se utiliza una sola condicin, o un solo sensor, se puede programar sin recurrir a estas
funciones, pero cuando se combinan dos o ms condiciones, como en este reto, las funciones del lgebra de Boole son
muy tiles.
En los cuatro operadores que se presentan a continuacin, se indica cmo se calcula el resultado y se presenta la
correspondiente tabla la verdad. Una tabla de verdad es algo similar a lo que en aritmtica es la tabla de multiplicar,
esta tabla nos da el resultado de aplicar estos operadores para distintos valores de entrada.
Bloques de programacin
Los bloques a utilizar con valores lgicos se encuentran en el men Datos que puede verse desplegado en la siguiente
figura. En los siguientes ejemplos se utilizar el primero de ellos, denominado Lgica.
Operador Y (AND)
El operador Y relaciona dos entradas. Para que el resultado sea Verdadero las dos entradas debern tener el valor
Verdadero. Si cualquiera de las dos es Falso la salida tambin ser Falso. La tabla de verdad de este operador es la
siguiente:
A B Resultado
Verdadero Verdadero Verdadero
Verdadero Falso Falso
Falso Verdadero Falso
Falso Falso Falso
En la imagen siguiente puede verse el modo en el que se utiliza este operador. Los maletines representan variables que
contienen valores lgicos.
A B Resultado
Verdadero Verdadero Verdadero
Verdadero Falso Verdadero
Falso Verdadero Verdadero
Falso Falso Falso
En la imagen siguiente puede verse el modo en el que se utiliza este operador. Los maletines representan variables que
contienen valores lgicos.
Un ejemplo de uso de este operador es el caso en el que un robot tiene dos sensores de contacto en la parte frontal uno
en cada lado. Utilizando este operador el robot podr controlar los dos sensores a la vez tal y como se muestra en el
siguiente programa:
Operador O exclusivo
En este caso para que el resultado sea Verdadero una y solo una de las condiciones ha de ser Verdadero, en el resto de
los casos el resultado ser Falso.
A B Resultado
Verdadero Verdadero Falso
Verdadero Falso Verdadero
Falso Verdadero Verdadero
Falso Falso Falso
En la imagen siguiente puede verse el modo en el que se utiliza este operador. Los maletines representan variables que
contienen valores lgicos.
Operador NO (NOT)
El operador NO da como resultado el valor opuesto al de entrada, es decir, si la entrada es Verdadero, la salida ser
Falso.
A Resultado
Verdadero Falso
Falso Verdadero
Monitorizar un sensor
Aunque ya se vio en el captulo anterior cmo utilizar el bloque de programacin Espera para controlar el flujo de un
programa utilizando sensores, vamos a ver aqu otro modo que ser muy til cuando se necesite monitorizar ms de un
sensor de modo simultneo.
Si utilizamos el sensor de contacto para controlar cundo un robot choca con un obstculo podemos utilizar el bloque
Esperar, aunque tambin lo podemos hacer de los otros dos modos que se ven en la figura:
La funcionalidad es exactamente la misma, sin embargo, la tercera opcin nos abre el camino para la monitorizacin de
varios sensores de modo simultneo.
Si se monta un robot que deba evitar obstculos detectndolos por medio de un sensor de contacto el programa podra
ser el siguiente:
En el interior del bucle lee continuamente los dos sensores y por medio de una operacin lgica (en este caso O),
combina dichas lecturas generando un valor lgico que ser Verdadero si alguno de los dos sensores o los dos de modo
simultaneo detectan un contacto.
Una vez detectado un contacto el robot girar hacia un lado u otro en funcin de cul de los dos sensores ha entrado en
contacto. El fragmento de cdigo para ello ser el siguiente (se encontrar en el programa a continuacin del anterior):
Seguir lnea II
Aunque esta propuesta utilice un solo sensor, se ha querido presentarla aqu ya que superaba los objetivos del uso bsico
de sensores.
El robot tiene el motor izquierdo conectado al puerto A y el derecho al B. El sensor de luz est conectado al puerto 3.
Vamos a seguir la lnea por el borde izquierdo pero vamos a intentar que el movimiento sea ms fluido que lo
conseguido en la unidad didctica 4. En ese caso el motor detena el motor derecho o izquierdo para volver al borde. Lo
que vamos a hacer ahora es definir ms situaciones intermedias entre el blanco y negro.
Primero calibraremos el sensor de luz para que negro sea 0 y blanco 100. Dividiremos 100 entre 5 para definir 5 estados
(se podra hacer con otros valores). A partir de ello definiremos un comportamiento para cada tramo de valores que se
presentan en la tabla siguiente:
El valor de lectura se divide entre 20, el valor se redondear al entrar en el bloque Bifurcacin. Para poder configurar el
bloque Bifurcacin para que pueda elegir el comportamiento en funcin del varios valores, tras seleccionar Control por
Valor, Visualizar Vista Plana deber configurarse como en la figura.
Junto a la condicin 5 aparece una marca que seala que si alguno de los resultados difiere de los de la lista esa ser la
opcin que ejecutar.
Estos dos mtodos permiten una nica calibracin para todos los sensores de luz conectados al NXT, as que si
deseamos una distinta calibracin para diferentes sensores o dos diferentes para uno de ellos tendremos que recurrir a
otra estrategia; lo haremos utilizando la capacidad que tiene el NXT de registrar datos en un archivo y despus leerlos.
Antes de entrar en cmo hacerlo vamos a ver cmo utilizar archivos.
Crear un archivo
El primer paso ser crear el archivo. Dado que probablemente ejecutaremos el programa en ms de una ocasin, lo
primero que habr que hacer ser eliminar el archivo creado previamente, en caso contrario, aadir los nuevos datos al
archivo antiguo.
En la imagen se puede ver el bloque Acceso a archivos configurando para que elimine el archivo de nombre
Utilizaremos este dato tantas veces como sea necesario para almacenar nuevos valores en el archivo.
Cerrar el archivo
Antes de leer los datos hay que cerrar el archivo, configurando el bloque Acceso a archivos tal y como se ve en la
siguiente imagen.
Ejemplo
Veamos cmo se puede aplicar lo anterior por medio de un ejemplo. La idea es registrar la variacin de la temperatura a
lo largo del tiempo: durante un proceso de enfriamiento o calentamiento, la temperatura atmosfrica... Para ello se
utiliza el sensor de temperatura para LEGO MINDSTORMS NXT.
Una vez registrados los valores, transferiremos el archivo al ordenador y los convertiremos en un grfico que ayude en
su interpretacin.
Esto es algo que se puede hacer de un modo ms sencillo con la aplicacin de registro de datos de NXT-G Educacin,
no as con su versin comercial. Por otra parte el uso de archivos permite un registro de datos ms flexible.
En el ejemplo, cuyo cdigo puede verse en la siguiente imagen, se mide la temperatura cada segundo durante 100
segundos. Esto significa que se registrarn 100 valores.
En la ventana NXT seleccionaremos la pestaa Memoria y en ella Otros y podremos ver varios de los archivos que
contiene el NXT, entre ellos el creado en este ejemplo.
Si pulsamos sobre el botn Cargar, podremos transferir el archivo (DataTemp.txt) al directorio que deseemos en nuestro
ordenador.
Una vez hecho esto, abriremos el archivo desde una hoja de clculo, en mi caso desde LibreOffice Calc. Una vez
abierto podremos observar que el separador que utiliza NXT-G para los decimales es un punto, por lo que la versin
espaola de LibreOffice Calc no interpretar como valores numricos las temperaturas; as que tendremos que sustituir
los puntos por comas (Buscar y reemplazar). Utilizando la herramienta Insertar Grfico podremos obtener una
representacin grfica de las temperaturas, tal y como puede verse en la siguiente imagen.
El programa consta de un bucle que se repite tantas veces como datos ha de leer. Para permitir que se visualice el
grfico todo el tiempo que se desee se ha aadido un bloque Espera configurado para un sensor de contacto. En
realidad no hace falta montar ninguno, ya que de este modo se mantendr la ejecucin del programa hasta que se pulse
el botn gris del NXT.
El bloque Visualizar permite dibujar puntos en la posicin que se desee a partir de las coordenadas x e y del punto. En
este caso la x ser el nmero de orden de la toma de temperatura y la y la temperatura. Se configura el bloque
Acceso archivos en modo lectura y se conecta su toma de salida Nmero de salida con la toma de entrada y del
bloque Visualizar. La x la obtendremos del contador del bucle.
De este modo tendremos el mismo grfico que anteriormente hemos representado en el ordenador, en la misma pantalla
del NXT.
Tras crear las variables va la opcin Definir variables del men Edicin, haremos los pasos 2 y 3 tal y como se ve en la
Se puede ver en este fragmento de cdigo (pasos 3a y 3b) cmo se obtiene el valor directo de la lectura del sensor de luz
conectado al puerto 1 y se compara con el valor almacenado en la variable valorMIN. Si es menor que dicho valor lo
almacena en ella, sino sigue adelante (los cableados aparecen en la imagen un poco revueltos debido a la organizacin
automtica que les da NXT-G).
A continuacin compara con el contenido de la variable valorMAX y si es mayor almacena la lectura en la variable
(paso 3c).
Una vez que se registren los dos contenidos de las variables en el archivo y se cierre, esta primera parte del proceso se
puede dar como finalizada.
Esto mismo lo podramos hacer con ms sensores conectados a otros puertos del NXT, crearamos un nuevo archivo de
calibracin para cada sensor que deseemos calibrar de un modo diferente. Cara al programa que va a hacer uso de estas
calibraciones he tomado como regla para los nombres de archivo Calibra1 para el sensor conectado al puerto 1,
Calibra2 para el segundo...
En el programa de la imagen, el nuevo bloque denominado Calibra lee el sensor conectado al puerto 1 y devuelve el
valor calibrado. El resto del cdigo es para mostrar de modo continuo las lecturas en la pantalla del NXT. As que
vamos a ver cmo es por dentro el nuevo bloque Calibra.
Este bloque tiene como entrada un nmero que se corresponde al puerto al que est conectado el sensor que queremos
leer. Si hemos nombrado los archivos del modo anteriormente mencionado, podr devolver el valor calibrado de
sensores conectados en diferentes puertos con diferentes calibraciones.
El algoritmo correspondiente a este bloque es el siguiente:
1. Crea el nombre de archivo a leer por medio de una operacin de texto: convierte el nmero de entrada en texto
y se lo suma a la palabra Calibra de tal manera que si el sensor es el 1 el archivo a leer ser Calibra1.
2. Lee el primer dato del archivo y lo almacena en la variable Vmin previamente creada.
3. Lee el segundo dato del archivo y lo almacena en la variable Vmax previamente creada.
4. Cierra el archivo.
5. Lee el sensor de luz conectado al puerto correspondiente al nmero de entrada (Valor directo)..
6. Convierte la lectura en un valor calibrado entre 0 y 100 para almacenarlo en la variable Vcal, para lo que
aplica la siguiente frmula:
Para acabar comprobando que el resultado est dentro del rango deseado y normalizando el resultado.
A partir de aqu cada uno ha de adaptarlo a sus necesidades, diferentes calibraciones para diferentes sensores o
diferentes calibraciones para un mismo sensor. Esto supondr que sern necesarios tantos archivos como diferentes
calibraciones se necesiten.
Actividades
Actividad 1
El robot se mueve por la mesa y llegado a una posicin determinada ha de posicionarse perpendicular a la pared sur
orientado hacia el norte. Para ello una vez que alcanza la posicin de giro gira y retrocede hacia atrs hasta encontrar la
pared con uno de los sensores. Se gira hasta que el otro contacta con la pared.
Actividad 2
El robot ha de avanzar hasta cierta posicin cruzando una lnea negra (cuando lo haga que emita un sonido para sealar
que la ha detectado) y detenindose cuando llega a la segunda. En ese momento se posicionar perpendicular a ella
utilizando dos sensores de luz.
Una actividad alternativa puede ser alinear el robot con la lnea, para lo que necesitar una configuracin diferente de
los sensores.
Actividad 3
Monta y programa un robot que siga una lnea utilizando dos sensores de luz.
Neumtica y FLL
Vamos a ver algunos de los puntos que hay que tener en cuenta para utilizar la neumtica en un robot para la FLL.
Produccin de aire
Cuando se disea un circuito neumtico una de las cosas en las que hay que pensar es en la produccin de aire
comprimido. LEGO ofrece para ello un cilindro que de modo manual permite producirlo y otro destinado a ser
motorizado. Dado que el uso de motores en un robot FLL est limitado a tres parece que lo ms adecuado ser elegir la
primera opcin, es decir, producirlo a mano.
Dado que no se puede tocar el robot una vez que sale de la base, la produccin de aire deber ser previa, as que ser
necesario un depsito para almacenarlo. Para ello se utilizar uno o ms depsitos de aire. Si se utiliza ms de un
Control
La segunda cosa en la que hay que pensar es en el control, para lo que se utilizan las vlvulas. Las vlvulas son las que
dejarn pasar el aire de tal modo que el actuador haga su trabajo.
Los actuadores
LEGO ofrece cilindros de doble efecto de dos tamaos diferentes aunque en un robot FLL probablemente haya que
utilizarlos para que trabaje solo en un sentido.
Elementos necesarios
Los elementos imprescindibles para montar un circuito neumtico para la FLL son los siguientes:
Un cilindro compresor manual
Tubo
Un depsito
Un cilindro de doble efecto (grande o pequeo)
Adems de estos elementos puede haber otros opcionales, por ejemplo una unin T si se quieren montar dos depsitos
en paralelo, o incluso un manmetro como el que se puede encontrar en la caja "Set adicional de neumtica LEGO
Educacin" de referencia 9641. Esta caja ofrece todo lo necesario mas algunas piezas adicionales.
Por qu dibujar
El dibujo es una herramienta de registro y comunicacin en los proyectos en ingeniera. Permite ir registrando los pasos
que se dan en un diseo as como comunicar una solucin con todos los datos necesarios para su fabricacin.
En la FLL puede haber diversas razones para dibujar un robot montado con LEGO, veamos algunas:
Experimentar y generar ideas: probablemente la mayora de los participantes en la FLL no disponen de
material propio para montar robots. Solo pueden explorar ideas cuando se juntan con el resto del equipo en la
escuela o local que utilicen. Los programas de dibujo permiten representar ideas sin necesidad de ninguna
pieza.
Registrar prototipos: teniendo en cuenta que normalmente se desarrollan las ideas con recursos limitados,
cuando se monta un prototipo y se quieren hacer cambios no queda otra que desmontar. El dibujo de los
modelos junto al uso de las cmaras digitales permite registrar el modelo, de tal modo que podremos volver
atrs si es lo que queremos.
Utilizar el dibujo en la presentacin del proyecto tcnico: mostrar en la presentacin del proyecto tcnico
dibujos del robot o de prototipos desechados puede ser algo interesante. Tambin puede hacerse con fotos, pero
el dibujo en ocasiones puede llegar a marcar la diferencia con una buena justificacin de su uso.
Con qu dibujar
Hay varios programas que permiten dibujar proyectos. Algunos de ellos estn especialmente creados para dibujar
modelos con piezas LEGO, mientras que hay otros de uso profesional que tambin permiten hacerlo.
Aqu nos vamos a centrar en tres programas de uso libre aunque primero vamos a ver una lista de otros tres que tambin
pueden ser muy interesantes:
Pro/ENGINEER y SolidWorks: La Robotics Academy de Carnegie Mellon University ofrece en su web las
piezas del NXT para dibujar robots LEGO con el software de dibujo 3D profesional Pro/ENGINEER tanto
en su versin comercial como educativa y con SolidWorks.
Google SketchUp: Google SketchUp es una herramienta de software de 3D de Google. Una vez que tienes
instalado Google SketchUp hay que descargar las piezas LEGO Technic y MINDSTORMS NXT.
Descarga e Instalacin
La aplicacin puede descargarse de la web de LDD (http://ldd.lego.com/). Existen versiones para Windows y Mac,
desde Linux puede utilizarse el programa mediante el emulador Wine. La instalacin no ofrece ninguna dificultad.
Si la aplicacin se ejecuta mientras se est conectado a Internet, comprueba automticamente la existencia de
actualizaciones.
Ventajas e Inconvenientes
LDD es un programa fcil de usar, probablemente el ms sencillo de todos los que se presentan aqu, as que de entrada
es el ms recomendable.
Sin embargo adolece de varios inconvenientes. Por una parte la limitacin en las piezas, aunque va mejorando con el
tiempo, hay piezas que no se encuentran. Por otra parte el control sobre el modo que genera las instrucciones de
montaje es nulo, algo que debera mejorar.
LDraw
LDraw es un proyecto colectivo que ha ido creciendo en el tiempo. A lo largo de los aos ha contado con las
aportaciones desinteresadas de una amplia comunidad que ha trabajado en el desarrollo de este software. Se pueden
utilizar diferentes interfaces con LDraw, dependiendo de gustos: MLCad o LeoCAD.
Una vez que se ha representado un proyecto es posible generar instrucciones o renderizarlo para conseguir un aspecto
ms real.
LDraw no trabaja directamente en 3D, sino que lo hace sobre las proyecciones didricas (alzado, planta y perfil).
Adems, de modo complementario, muestra una vista en isomtrico que nos permite tener una visin del modelo en 3D.
Ventajas e Inconvenientes
LDraw permite poner las piezas como se quieran y es posible controlar las coordenadas de las piezas con precisin. Es
posible montar submodelos que pueden ser reutilizables, adems de facilitar un montaje modular. Para montajes grandes
es ms sencillo de manejar que LDD gracias al montaje modular. El conjunto de aplicaciones generado alrededor de l
ha aumentado su potencial, siendo una herramienta excelente para generar instrucciones de montaje.
Entre sus pegas una es que no evita interferencias entre piezas, as que es posible colocar ms de una pieza en el mismo
lugar. Por otra parte, se trabaja sobre proyecciones didricas en lugar de sobre una vista 3D.
SR 3D Builder
SR 3D Builder es un programa de dibujo de modelos LEGO en 3D que entre otras cosas permite generar animaciones a
partir de modelos. El software est en desarrollo y promete seguir creciendo de la mano de Sergio Reano, su autor.
Est disponible un manual de uso en castellano en la misma web del autor.
Descarga e Instalacin
Descarga el fichero de instalacin de la web de SR 3D Builder y sigue las instrucciones del instalador. Si tienes algn
problema comprueba primero las indicaciones que Sergio ofrece en su web. Es un software en desarrollo as que puede
dar ciertos problemas.
El software se puede descargar de modo gratuito, aunque habr versin de pago.
Ventajas e Inconvenientes
Uno de los mayores puntos a favor de este software es la posibilidad de generar animaciones de mecanismos.
La pega es que no es tan intuitivo y el aprendizaje es ms largo.
Recursos
Hispabrick Magazine (http://goo.gl/li5BWv): hay varios artculos sobre el uso de Ldraw en la revista
Wiki Lrobotikas (http://wiki.lrobotikas.net): dispone de una seccin sobre herramientas de dibujo
El NXT
NXT es el nombre de la controladora de LEGO MINDSTORMS. Se puede decir que es un pequeo ordenador
(procesador, memoria, salidas, entradas...) que podemos programar para que realice diferentes tareas.
As como un ordenador necesita de su sistema operativo, el NXT necesita de su firmware que es susceptible de ser
actualizado (conviene tenerlo actualizado a la ltima versin disponible).
Una vez que se descargue un programa en el NXT (va conexin USB o bluetooth), ya no se necesitar del ordenador
Especificaciones tcnicas
Microprocesador principal de 32 bits ARM7TDMI|AT91SAM7S256 (256 KB de memoria flash y 64 KB
RAM)
Microcontrolador de 8-bit Atmel AVR|ATmega48 @ 4 MHz (4 KB de memoria flash y 512 Bytes RAM)
Pantalla matricial LCD de 100x64 pixeles
Puerto USB 2.0
Conectividad inalmbrica va Bluetooth (Class II)
4 puertos de entrada (1,2,4 y 4), cable digital de 6 hilos
3 salidas (A, B y C), cable digital de 6 cables
Altavoz, calidad de sonido de 8 KHz
Alimentacin, 6 pilas AA o batera recargable
Para comprobar si hay alguna versin nueva y descargarla pulsar sobre Comprobar. En una ventana del navegador de
Internet se abre la pgina de actualizaciones de LEGO Educacin. Seleccionar en el men de la parte izquierda
Firmware y la pgina se ver del siguiente modo:
Motores
Un motor NXT es un conjunto formado por un motor de corriente continua, una reductora y un sensor de rotacin
interno.
Gracias a la reductora interna es posible conectarlo directamente a una rueda sin necesidad de reducir ms su velocidad.
El sensor de rotacin interno permite que controlar el movimiento con una precisin de 1. Estos motores pueden
configurarse para que giren en un sentido u otro un nmero determinado de vueltas, grados o tiempo.
Adems del motor des sistema NXT tambin puede ser utilizado el nuevo motor del LEGO MINDSTORMS EV3, ms
compacto que el anterior (su referencia para pedidos es 6008577).
Sensores
Los sensores disponibles en LEGO NXT Educacin son dos sensores de contacto, uno de luz, el de ultrasonidos y el de
sonido. Adems de estos hay otro sensor oficial de LEGO que es el de color.
Adems de LEGO, hay otras empresas que tambin comercializan sensores para el NXT con los que se pueden medir
muy diversas magnitudes. Sin embargo en la FLL nicamente se pueden utilizar los sensores fabricados por LEGO.
Dado que el de sonido no es til en un ambiente de alto nivel de ruido no se presenta aqu.
Sensor de luz
El sensor de luz mide el nivel de luminosidad que llega a l. Dispone de un led rojo que emite luz y que es muy til para
detectar zonas negras y blancas en el suelo sin depender de la luz ambiente midiendo la luz reflejada. Este led puede ser
apagado va software de tal modo que pueda medir la luz ambiente de su entorno.
Cuando se utiliza para seguir una lnea sobre el suelo, hay que prever la influencia de la luz ambiente. Para ello, por una
parte conviene proteger el sensor de la luz externa y posicionarlo de tal modo que vaya lo ms cerca del suelo posible
(aunque tampoco en exceso ya que en ese caso no el sensor no podr ver la luz reflejada). Por otra parte tambin
conviene calibrarlo en el lugar en el que debe realizar su tarea ya que las condiciones del entorno influyen en el
resultado.
Da valores bajos cuando recibe poca luz (oscuridad o lnea negra) y altos cuando el brillo es alto (ofrece valores entre 0
y 100).
Sensor de color
Este sensor puede identificar hasta seis colores: Negro, Azul, Verde, Amarillo, Rojo y Blanco.
Tambin puede ser utilizado como sensor de luz. En este caso puede utilizarse para medir la luz ambiente o la luz
reflejada (en este caso se puede seleccionar que emita luz roja, verde o azul).
Algunas versiones de NXT-G no disponen del bloque de programacin de este sensor, en ese caso habr que
descargarlos de la web de LEGO Educacin3 (seleccionar Blocks en el men de la izquierda).
Sensor de ultrasonidos
Este es un sensor capaz de medir distancias por medio de ultrasonidos. Emite ultrasonidos y espera su retorno (el cul se
produce si encuentra algn obstculo intermedio). Basndose en el tiempo
transcurrido entre la emisin y la recepcin puede determinar la distancia.
Con este sensor es ms fcil montar robots que eviten obstculos sin tener que chocar contra ellos o encontrar objetos
sin tener que tocarlos previamente.
Los mejores resultados los obtiene cuando el objeto est en frente, aunque tambin puede medir distancias a objetos en
una posicin lateral.
Hay que tener en cuenta que no todos los objetos reflejan del mismo modo los ultrasonidos, por ejemplo paredes de
pladour o ladrillo no los reflejan igual e incluso hay otros materiales (como ciertos tejidos) que no se pueden detectar
por medio de estos sensores. As que conviene hacer algn test si los valores son inesperados.
Sensores RCX
El RCX fue la primera generacin de LEGO MINDSTORMS. Tanto el RCX como los motores y sensores que lo
acompaaban estaban adaptados al sistema clsico de construccin LEGO y fueron renovados para facilitar su montaje
con las nuevas piezas de construccin Technic (diferentes a los tradicionales ladrillos de LEGO).
Los sensores del RCX pueden ser utilizados con el NXT conectados va el cable adaptador que contiene la caja de
LEGO MINDSTORMS Educacin (es el mismo cable que se utiliza para conectar las bombillas).
Son sensores ms pequeos que en algn caso podran ser utilizados sustituyendo a los sensores del NXT.
3 http://goo.gl/J7SekV
Sensor de luz: sus caractersticas bsicas las mismas que las del sensor de luz
NXT.
Sensor de rotacin: Con este sensor es posible controlar giros con una precisin
de 2230', es decir, 16 puntos por giro. Si se utiliza este sensor en la FLL no
puede ser utilizado de modo simultneo con ms de dos motores (el lmite es
utilizar tres sensores de rotacin en un robot y dado que los motores ya contienen
uno, el uso de un sensor como este reduce el nmero de motores que se pueden
utilizar).
Para poder utilizarlos desde NXT-G habr que instalar primero los bloques de programacin correspondientes que
pueden ser descargados desde la web de LEGO Educacin4 (seleccionar Blocks en el men de la izquierda y buscar
RCX Legacy Sensor Blocks for NXT).
Estructuras
Un robot necesita de una estructura que soporte los motores, sensores, controladora... Estas estructuras pueden tener
diferente apariencia en funcin de las tareas que el robot haya de desarrollar y del entorno en el que se mueva.
Uno de los puntos a tener en cuenta cuando se disea una estructura es la rigidez. Siempre dentro de los lmites de
tamao y peso deseados, es importante que sea una estructura robusta y que as se mantenga cuando se somete a
esfuerzos deformndose lo menos posible. Tambin conviene ofrecer buenos apoyos a los ejes para que al apoyarlo
sobre el suelo se mantengan rectos y no se doblen por el peso.
Se tratar de limitar los grados de libertad de los mecanismos que se construyan a los estrictamente necesarios con el
objeto de conseguir una mayor precisin en los movimientos.
Vigas rectas
Vigas rectas tiles para montar estructuras aunque las dos primeras, por su corta longitud, son bsicamente para uniones
entre otras piezas. Se muestra solo la imagen de la de 7.
Cdigo Descripcin
4177444 Vga de 2
4142822 Vga de 3
4142135 Vga de 5
4495935 Vga de 7
4645732 Vga de 9
4156150 Vga de 11
4522933 Vga de 13
4542573 Vga de 15
4 http://goo.gl/J7SekV
4113805 Conector de ejes: Bsicamente su uso es el mismo que el anterior, pero tambin
se utiliza en sistemas de cambio de marcha.
4107085 Conector angular #1: Elemento inicial o final de una estructura con ejes.
4107783 Conector angular #2: Este y los siguientes permiten unir dos ejes con la
posibilidad de fijarlos a la estructura del robot.
Ejes flexibles
Los ejes flexibles pueden ser tiles para construir dispositivos que ayuden a realizar diferentes misiones. Pueden ser
combinados con las piezas del grupo Estructuras para ejes adems de con los diferentes tipos de conectores, ya que el
extremo de estos ejes encajan en ellos (solo se muestra el de longitud 7)
Ladrillos Technic
Si bien estas piezas han sido sustituidas en muchos casos por las nuevas vigas, todava estn presenten en LEGO
MINDSTORMS Educacin.
Si la resistencia de la estructura a construir es un factor crtico, se pueden consultar los estudios que comparan la
resistencia de las vigas y los ladrillos Technic (ver Recursos).
Cuando se utilizan los Ladrillos Technic es necesario asegurar la estructura por medio de vigas dispuestas en sentido
perpendicular a las primeras. Pero para ellos hay que intercalar placas para que la distancia entre los agujeros sea la
adecuada (solo se muestran el dey 4 de longitud).
Cdigo Descripcin
4211440 Ladrillo Technic de 2
4211441 Ladrillo Technic de 4
4211466 Ladrillo Technic de 6
4211442 Ladrillo Technic de 8
273001 Ladrillo Technic de 10
4210963 Ladrillo Technic de 12
4107558 Ladrillo Technic de 14
4211443 Ladrillo Technic de 16
Placas
A estas piezas se les puede dar diferentes usos, entre ellos intercalarlas entre los ladrillos Technic para crear una
estructura fuerte y resistente.
Las hay de diferentes longitudes y anchuras, y dada su abundancia aqu solo se dan ejemplos de ellas. En Peeron se
puede ver la variedad existente. Las hay tambin de mayor anchura.
Placa de 2x2. De dos unidades de ancho las hay de las siguientes longitudes:2,
3, 4, 6, 8, 10, 12, 16. Tambin las hay de mayor anchura.
Placa Technic de 2x6. La diferencia con las anteriores son los agujeros. Las
hay de las siguientes longitudes:4, 6, 8, 10
Elementos de unin
De la misma manera que en otros mbitos de la tecnologa se utilizan sistemas de unin tornillo-tuerca, remaches,
soldadura, colas... en las construcciones LEGO hay una serie de elementos cuya funcin es unir los distintos elementos
que las conforma.
Aunque no aparezcan en esta seccin los ejes tambin pueden ser utilizados para uniones.
Conectores bsicos
Las siguientes piezas se utilizan como elementos de unin. Por s solas pueden mantener unidas otras dos piezas.
Hay que tener en cuenta que adems de las siguientes piezas, los ejes de cualquier medida tambin pueden mantener
unidas piezas con agujeros en forma de cruz.
4206482 Conector-eje con friccin: Para unir una pieza con un agujero en forma de cruz
y otra con agujero cilndrico.
4186017 Conector-eje: Lo mismo que el anterior pero para cuando la unin va a ser una
articulacin. Anteriormente eran grises.
4140801 Conector largo con separador con tope: Adems de poder unir dos piezas
puede combinarse con el conector-eje o con un eje para prolongar la unin.
Otros conectores
Los siguientes conectores adems de facilitar la unin de piezas, pueden ser combinadas con los conectores bsicos para
unir piezas en sus laterales. Los dos primeros son muy tiles para construir estructuras.
Transmisiones mecnicas
La transmisin de movimiento y esfuerzos es un aspecto muy importante en la concepcin de un robot. Engranajes,
poleas, mecanismos biela-manivela, levas, palancas... son sistemas que permiten generar una ganancia o modificar el
movimiento (circular a lineal...).
En esta seccin se presentan una serie de piezas diseadas expresamente para transmitir movimiento. Sin embargo, hay
otras piezas que combinadas de diferentes maneras tambin pueden ser utilizadas con el mismo propsito.
Engranajes
Los engranajes permiten reducir o aumentar la velocidad ofrecida por los motores as como cambiar la direccin o
sentido del movimiento.
Para hacer moverse el robot, en la mayora de los casos, no hace falta utilizar engranajes pudiendo conectarse las ruedas
directamente a los motores.
No es recomendable utilizar largos trenes de engranajes ya que las holguras harn que pierdan precisin.
Transmisin entre ejes paralelos 1
Los siguientes engranajes permiten obtener una amplia gama de relaciones de transmisin, aunque puede adolecer de
excesivas holguras. No est de ms probar las diferentes combinaciones de engranajes antes de decidirse por una de
ellas.
4558690 Engranaje cnico de 20 dientes con agujero: A diferencia del anterior no arrastra o
es arrastrado por el eje que lo atraviesa.
4248204 Engranaje de 4 dientes: Este engranaje ha de ser combinado con s mismo, tanto si
se usa entre ejes paralelos como entre ejes perpendiculares entre s.
4211434 Corona de 24 dientes: Este engranaje puede ser combinado con cualquiera del grupo
"Transmisin entre ejes paralelos 1" para transmitir el movimiento a un eje
perpendicular.
Si lo que se desea es conseguir una reduccin muy importante en la velocidad de un eje, lo ms adecuado es utilizar una
combinacin sinfn-corona. Para ello LEGO dispone de un engranaje sinfn que puede combinarse con cualquiera del
grupo "Transmisiones entre ejes paralelos 1".
Cremallera
Combinando la cremallera y un engranaje se puede convertir un movimiento circular generado por un motor en un
movimiento rectilneo o un desplazamiento rectilneo en un giro. O viceversa. Se pueden combinar con cualquier
engranaje del grupo Trasmisin entre ejes paralelos 1.
Limitador de par
El engranaje de la figura permite limitar el par transmitido. De este modo el motor podr seguir girando sin daar partes
del robot cuando la resistencia supera un valor determinado. Conviene hacer pruebas con l.
4624645 Corona giratoria: permite montar una estructura en cada uno de sus lados de tal
modo que una puede girar respecto a la otra.
Cadena
En los casos en que la distancia entre los ejes entre los que hay que transmitir el movimiento sea grande, una de las
soluciones es utilizar una cadena para ello. No es un elemento que soporte grandes esfuerzos pero puede ser til en
ocasiones. Estas piezas se combinan con los engranajes del grupo Transmisin entre ejes paralelos 1.
Piezas complementarias
Las piezas del primer grupo han sido diseadas para montar engranajes de un modo compacto, mientras que las del
segundo se utilizan para montar cambios de marcha.
Las siguientes piezas se utilizan para cambio de marchas en modelos Technic as como en mecanismos en los que con
un solo motor de desee conseguir diferentes efectos (no de modo simultaneo y con necesidad de modificar la funcin de
modo manual). Para este propsito tambin son necesarios el engranaje de 24 dientes con embrague (vase en el
grupo Otros Engranajes) y el conector de ejes (vase en el grupo Accesorios para ejes; el liso no, el otro). Pueden
encontrarse muy buenos ejemplos de cmo montar estos mecanismos en las instrucciones de montaje de la mayora
de las cajas de LEGO Technic (a excepcin de las pequeas).
Ejes
Adems del uso como ejes, las siguientes piezas pueden utilizarse como elementos de unin, como separadores o
incluso para dar rigidez a estructuras.
4211815 Eje de 3
370526 Eje de 4
4211639 Eje de 5
370626 Eje de 6
4211805 Eje de 7
370726 Eje de 8
4499858 Eje de 8 con tope
4535768 Eje de 9
373726 Eje de 10
370826 Eje de 12
50451 (Peeron) Eje de 16
4233937 Eje de 32
4211622 Separador
Poleas
Se pueden utilizar poleas para transmitir movimiento, aunque hay que comprobar que cumple su funcin de modo
adecuado. En caso contrario son ms eficientes las transmisiones por engranajes.
Se pueden utilizar las siguientes piezas junto a gomas como elemento de transmisin.
Ruedas
Siendo LEGO la empresa que mayor nmero de ruedas fabrica al ao en el mundo (380 millones anuales), el nmero de
diferentes ruedas disponibles para los modelos LEGO es extenso. Sin embargo, no todas ellas son adecuadas para
construir robots. Veamos los factores que hay que tener en cuenta en su seleccin.
La anchura del apoyo de la rueda en el suelo: Las ruedas anchas con un buen apoyo sobre el suelo (como lo son las
de F1) ofrecen muy buen agarre y una excelente traccin. Para vehculos que han de moverse rectos y que al girar lo
hacen con grandes radios de giro son muy eficientes, no as para robots que giran en espacios reducidos.
Otras ruedas
A parte de las ruedas que se encuentran en la caja de LMS Educacin, hay un tipo muy interesante por su tamao y
forma. Esta rueda tambin se encuentra en la Caja de Recursos LMS Educacin. Otra opcin es el sistema de oruga.
290301 Llanta 81,6 x 15: esta llanta se monta con el neumtico 81,6 x
15
680c01 (Peeron) Oruga: Esta pieza puede ser combinada con las llantas
contenidas en la caja LMS Educacin para construir un
sistema de movimiento basado en oruga.
Neumtica
Una instalacin neumtica necesita de un sistema que genere aire comprimido, un recipiente en el que almacenar el aire
comprimido y un actuador que ser capaz de realizar trabajo cuando se le suministra aire comprimido.
LEGO dispone de todos estos elementos que con un poco de imaginacin se pueden motorizar para disear un sistema
automtico. Dada la limitacin en el uso de motores en la FLL no es posible utilizar dichos motores para generar el aire
comprimido (a no ser que un motor se utilice para ms de una funcin de modo simultneo). Pero eso no quiere decir
que no sean tiles para la FLL como se ver en la Unidad correspondiente.
Bricklink
BrickLink es un portal que rene un amplio conjunto de tiendas on-line que venden piezas LEGO por unidades. Se
encuentran en ms de 60 pases y muchas de ellas aceptan pedidos internacionales. En realidad cualquiera puede poner
sus piezas en venta en Bricklink.
Los precios los pone cada vendedor y la disponibilidad de piezas vara de un vendedor a otro. Esto quiere decir que es
importante explorar, y tras encontrar lo que buscamos valorar los precios, sin olvidar los gastos de envo (siempre hay
que mirar en ms de una tienda).
La bsqueda se puede hacer de distintas maneras, por el nombre, el cdigo de pieza de LEGO o utilizando el cdigo
Peeron de la pieza. Qu es Peeron? Es un repositorio no oficial de modelos y piezas de LEGO, de tal modo que es
posible ver qu piezas contiene una caja. La fuente de estos inventarios son los propios usuarios as que no hay un
100% de garanta de que no contengan errores pero a pesar de ello son muy tiles. Si encontramos la referencia de la
pieza que buscamos la podemos utilizar en Bricklink para localizarla.
Los precios suelen estar en dlares americanos, as que en las tiendas europeas conviene comprobar primero cul es el
cambio que aplica el vendedor para evitar sorpresas. Cada vendedor establece los medios de pago que considera
conveniente.
Una vez se hace el pedido se recibe una notificacin automtica. Tras ella, al poco tiempo, el vendedor se pone en
contacto con el comprador para que efecte el pago. Generalmente el proceso es rpido.
eBay
eBay es un portal en el que se pueden encontrar piezas de LEGO de segunda mano. A veces son modelos completos y
otras son diversas cantidades de piezas (individuales o mezcladas de mltiples orgenes). Aqu la pega, o la ventaja, es
que en muchos casos hay que pujar por ellas. A veces hay suerte y se puede conseguir material muy interesante. Tanto
en eBay como en Bricklink conviene mirar primero la reputacin del vendedor basada en la opinin de los usuarios que
le han comprado algo.
Recursos
Resultados de la investigacin sobre resistencia de las vigas y ladrillos Technic
(http://eprints.usq.edu.au/20528/)
Eficiencia en estructuras LEGO. Mediciones y consejos en mecnica Technic artculo publicado en el
nmero 12 de Hispabrick Magazine (http://goo.gl/WjRh2f)
"LEGO Technic Tora no Maki" by ISOGAWA Yoshihito 2007 (http://goo.gl/WhrMWe): Este libro es un
compendio de pequeas mecanismos con piezas LEGO que puede ser muy til para obtener ideas sobre cmo
combinar las piezas. Se puede obtener tanto en formato digital como en papel. Organiza los contenidos de
modo sistemtico basndose en el tipo de transmisin. Es un libro para ver imgenes, sin texto, imprescindible.
Los manuales de instrucciones de los modelos de LEGO Technic ofrecen muchas ideas tiles a la hora de
montar robots. (http://goo.gl/HkgIeQ)
Bricklink (http://www.bricklink.com/)
Peeron (http://www.peeron.com)