miércoles, 29 de agosto de 2007

Mi Material NXT

Por si alguien está interesado en comprar el Mindstorm, voy a indicar que es lo que compre yo:

Ref: 09797 Conjunto básico LEGO MINDSTORMS Educación NXT (260€)
Ref: 09648 Conjunto de recursos MINDSTORMS NXT (56€)
Ref: 09844 Sensor de luz para MINDSTORMS NXT (15€)

El motivo de preferir la versión de educación a la comercial (232€) es por la batería recargable, que comprandola separada vale 49€. Cierto es que viene alguna pieza menos en la versión educacional, pero esto lo compensé con el conjunto de recursos que pensaba comprar de todas las maneras. Tampoco viene el software de Lego, pero yo aún no lo he necesitado, ya que me apaño perfectamente con el Bricx. En cambio, además de la batería vienen unos cables para poder conectar sensores y motores de la versión antigua RCX, así como un sensor de contacto extra. Aquí os pongo un enlace de una muy buena comparativa entre ambas versiones.

Con el Lego NXT ya viene un sensor de luz, pero se me hacía poco de cara a hacer robots siguelineas, y preferí gastarme los 15€ de más para poder tener 2.

Ahora ando tras comprarme un sensor que integra un giroscopio de Hitechnic, que detecta rotaciones y devuelve el valor en grados/segundo.

domingo, 26 de agosto de 2007

Dispensador de papel higiénico con Lego Mindstorm

Si es que no queda nada por inventar...

NXT siguiendo lineas

Ya tenemos los primeros resultados del mindstorm NXT. He construido un robot muy simple que jugando con la programación consigue seguir una línea negra sobre fondo blanco.

En la primera aproximación partimos de que el robot se encuentra sobre la línea negra y le ponemos a andar, pero generando cierta deriva a la derecha para que intente salirse de la línea siempre por la derecha, y tan pronto detecte que se ha salido, corrige bruscamente a la izquierda. Con esto ya tenemos un robot sigue-líneas pero que solo es capaz de girar en una dirección.



En una segunda aproximación y para que pueda girar en ambas direcciones, le hacemos andar mas despacito con las siguientes premisas, si ve blanco gira a la izquierda, si ve negro a la derecha. Con esto conseguimos girar en ambos sentidos, pero a una velocidad bastante lenta.



En la tercera aproximación volvemos al primer algoritmo con deriva, pero en caso de que al girar para corregir la deriva no encuentre la línea, supone que se ha confundido y gira hacia el otro sentido. No es ninguna maravilla, pero va más rápido que el segundo.



¿A alguien se le ocurre un algoritmo mejor con un sólo sensor de luz?

Usando dos sensores de luz, ya se puede tener una mejor referencia de donde está el robot y se consiguen mejores resultados. En este programa controlo si la línea negra está a la izquierda o derecha del centro del robot según se ve por uno u otro sensor. El robot puede ir bastante más rápido sin perder el control.

Mindstorm NXT

Ayer me llegó mi nuevo juguete tras encargarlo por Internet, el Mindstorm NXT. Es un miniordenador de LEGO, que dispone de 4 entradas (para sensores), y 3 salidas (para motores) que permite mediante programación en varios lenguajes (de momento yo uso uno muy similar a C llamado NXC, Not eXactly C) y ayudado de cualquier pieza de LEGO construirte tu propio Robot.


En YouTube hay un montón de videos al respecto, y los que mas me gustan son los que consiguen hacer un robot con solo dos ruedas y que se estabiliza perfectamente de manera como lo hace un Segway, sólo que en vez de utilizar giroscopios (aunque ya los hay para mindstorm) utiliza un sensor de luz para saber la distancia al suelo. De momento yo estoy haciendo un robot con 3 ruedas que hace poco más que moverse por la habitación y esquivar malamente algún que otro obstáculo. También he hecho amago de un robot “sigue líneas” (se pinta una línea en negro sobre fondo blanco y el robot es capaz de seguirla), pero al no ser el fondo blanco ni la línea negra no lo hace muy bien. Mañana compraré cinta aislante negra y “dibujaré” la línea sobre unas DIN A3.

También son interesantes los robots de sumo que luchan de dos en dos sobre un tatami para ver cual de los dos es el que sobrevive, aunque por lo que he indagado por ahí no parece que los robots mindstorm lo hagan muy bien, ya tengo previsto un robot específico de SUMO para dentro de unos meses.

Os pongo un video de unos robots de sumo japoneses para mientras soy capaz de hacer algo yo mismo con el NXT: