martes, 18 de marzo de 2008

Avances en robots cuadrúpedos

No es un mindstorm, pero me parece totalmente impresionante lo que se puede hacer con la tecnogía actual:

jueves, 6 de diciembre de 2007

Resumen FIRST LEGO Liga FLL Madrid

Al final el Domingo 2 de Diciembre se celebró la FIRST Lego League en Madrid, en concreto en el CosmoCaixa.

Se presentaron 14 equipos de colegios de toda España que contaban desde 4 a 10 participantes de entre 10 y 16 años. Cada equipo presentaba un robot realizado con piezas de lego basado en RCX o NXT que tenía que superar unos retos preestablecidos sobre un tablero también conocido por ellos donde han podido realizar prácticas.

La mayoría (¿todos?) de los robots no usaban ningún tipo de sensor, sino que se basaban en el posicionamiento del robot en un lugar y orientación concreta y movían los motores tal y como habían practicado en sus mesas de entrenamiento. Con ello, un pequeño fallo a la hora de posicionar el robot y fallaban la misión...



Se veía a los chavales muy ilusionados y con muchas ganas de participar. Se supone que en este evento se seleccionaban ¿los 5 mejores equipos? para que compitan de nuevo en Barcelona junto con otros 30 equipos y de ahí los seleccionados irán a USA a la competición internacional.


Para evaluar a los mejores equipos, situaban sus robots en la mesa y durante 2 minutos y 30 segundos debían realizar las misiones propuestas, puntuando según las normas establecidas.
Para ello estábamos los árbitros a pie del campo de juego aplicando las normas y sanciones oportunas así como contabilizando la suma de puntos obtenidos finalmente. También los niños presentaban sus proyectos ante unos jueces explicando como habían realizado los robots y respondiendo a las preguntas que estos les hicieran.



Las 5 plazas de ¿promoción? a Barcelona se concedieron de la siguiente manera: 1 de ellas se concedió al equipo que gano el torneo de robots en la mesa de juego, mientras que las otras 4 se dieron a dedo por los jueces, dándose el caso de que algún equipo que tenía unos robots que funcionaban de una manera fenomenal en la pista, pero por un descuido no pudieron quedar los primeros, quedaron descalificados sin plaza para Barcelona ya que los jueces tampoco les dieron ninguno de los premios.

A mi me parece una forma totalmente injusta, ya que no se premian los resultados obtenidos, sino otros valores que pueden ser muy subjetivos y asignados de una manera muy discutible, pero así lo quiso la organización.

También me gustaría comentar que la organización fue muy poco detallista con los voluntarios y con los árbitros, ya que a pesar de la dedicación y esfuerzo de todos ellos, ni siquiera se dignaron a darnos un bocadillo para comer...

Por lo demás, fue un día muy interesante con muchas emociones y que no tendría ningún problema en repetir.

martes, 27 de noviembre de 2007

FIRST LEGO Liga FLL Madrid


La FLL en España se celebrará el día 2 de Diciembre en Madrid. Irá orientada sobre las Energías Renovables. Tenéis toda la información disponible en la página roboteca. También tenéis este video FLL [youtube] donde podemos hacernos una idea de en que consiste la competición.

Yo estaré en el evento en calidad de árbitro aunque de momento aún estoy empapándome las reglas para poder hacer un digno papel.

lunes, 1 de octubre de 2007

9833-1 Transformador de 9V LEGO

Como muchos sabéis, con el Kit de educación de lego mindstorm NXT viene una batería recargable, pero no viene el cargador, teniendo que comprarlo aparte.


Según las especificaciones de lego el cargador da 9V AC, aunque mirando en la misma batería que Lego proporciona nos indica que la entrada debe ser entre 9 y 12 Voltios AC.

Pues bien, si por casa tenemos un adaptador universal que nos de algún voltaje entre 9 y 12 en principio nos vale. Yo encontré uno por casa con voltajes seleccionables entre 1,5V, 3V, 4,5V, 6V, 7,5V, 9V, 12V. Como la batería a recargar es de 7,4V, en principio con 9V debería ser suficiente, pero como la misma batería tiene serigrafiado entre 9 y 12 preferí ponerlo a 12V. La batería nos pide también que sea corriente alterna, pero está claro que para cargar una batería necesitamos corriente continua DC, entonces está claro que lo primero que hace la batería es internamente cambiar la corriente a DC. Por lo tanto no es problema ninguno enchufarle directamente un transformador que nos de corriente continua, lo único que pasará es que se usarán más unos diodos internos que otros de los que tenga en el puente del rectificador.

Para comprobarlo conecte el cargador y puse la batería descargada a cargar. Tras aproximadamente el tiempo indicado por Lego se apagó el indicador led y pude dar por cargada la batería. La conecté al ladrillo NXT y funcionaba perfectamente detectándola como completamente cargada.

Así que ya sabéis, en principio cualquier cargador con esos voltios debería valer, si es AC mejor que DC, pero os aseguro que con DC me ha funcionado perfectamente.

Otra cosa a mirar es el amperaje que soporta vuestro cargador, el mío en concreto indicaba 500mA y la cargó perfectamente, pero si es superior mejor. Con uno inferior podríais tener problema de sobrecarga por lo que no recomiendo hacerlo.

Gracias a esto podemos ahorrarnos los 12 euros extras que Lego nos obliga a pagar aparte del pack.

miércoles, 19 de septiembre de 2007

Nuevo Firmware para el NXT versión 1.05

Desde el día 14 de Septiembre tenemos disponible una nueva versión del firmware del NXT, la 1.05.

Las mejoras son las siguientes:

- Multiple datafile control within user programs
- Communication with 3rd party external devices
- Bluetooth communication within user programs

Tendré que probar a ver si me soluciona mis problemas de incompatibilidad entre el bluetooth del NXT y de mi dell.

domingo, 9 de septiembre de 2007

Código NXC de robot siguelineas II

El robot que veíamos en el primer ejemplo sólo podía girar en un sentido, ya que según la programación realizada, cuando pierde la línea tuerce siempre hacia el mismo sitio para buscarla, siendo incapaz de torcer hacie el otro lado. Veamos ahora un ejemplo, que aunque a una velocidad inferior al primer robot, es capaz de girar para cualquier lado. El funcionamiento es el siguiente, giramos una de las ruedas (torcemos hacia un lado) mientras no veamos la línea, en cuanto la veamos giramos la rueda contraria (torcemos hacia el otro lado).

Aquí el código:

#include "NXCDefs.h"
#define MARGEN 50
//programa para seguir una línea con un solo sensor de luz
//Va bien para curvas en ambos sentidos, pero lento

int d;

task main()
{
ClearScreen();
SetSensorLight(IN_3);


Float(OUT_B);
OnFwd(OUT_C,30);

while (true)
{
NumOut (1,1,1,Sensor(IN_3));

if (Sensor(IN_3) > MARGEN)
{
NumOut (1,1,1,Sensor(IN_3));
Float(OUT_C);
OnFwd(OUT_B,30)
until(Sensor(IN_3) <= MARGEN) NumOut (1,20,1,Sensor(IN_3)); Float(OUT_B); OnFwd(OUT_C,30);
}
}
}

Y el video:

miércoles, 5 de septiembre de 2007

Código NXC de robot siguelineas I

Por si a alguien le puede ayudar en sus inicios de programación, voy a poner los códigos fuentes de mis robots siguelineas programados en NXC.

Empezaremos por el más simple, en el que el robot tiene una deriva conocida hacia un lado y en cuanto superamos el margen de luz marcado sabemos que nos hemos salido de la línea y giramos en el sentido contrario parando un motor en modo float (sin bloquearlo).

#include "NXCDefs.h"
#define MARGEN 50
//programa para seguir una línea con un solo sensor de luz
//el robot genera caída hacia la derecha, y en cuanto se sale de la línea
//gira a la izquierda para recueperarla. Con esto sólo puede girar en un sentido.
int d;

task main()
{
ClearScreen();
SetSensorLight(IN_3);


OnFwd(OUT_B,40);
OnFwd(OUT_C,50);

while (true)
{
NumOut (1,1,1,Sensor(IN_3));

if (Sensor(IN_3) > MARGEN)
{
NumOut (1,1,1,Sensor(IN_3));
Float(OUT_C);
until(Sensor(IN_3) <= MARGEN) NumOut (1,20,1,Sensor(IN_3));
OnFwd(OUT_B,40);
OnFwd(OUT_C,50);
}
}
}

El video con el resultado: