Taller de Construcción de Robots usando módulos Lego

Las piezas de ensamble se han convertido en una opción económica a la hora de armar robots. Como la construcción mecánica requiere de un sistema de control para manejar sensores y motores, la marca lego constructora de juguetes creo un ladrillo programable (RCX ) el cual puede guardar hasta 5 progrmas con un máximo de 32K de memoria RAM y controlar 3 puertos de entrada para sensores y 3 puertos de salida para actuadores de forma simultánea. El RCX puede programarse con ayuda de una torre de comunicación de rayos infrarrojos (se incluye en el paquete llamado Robotics Invention System http://mindstorms.lego.com/) la cual se conecta al puerto serial o USB según la versión.

Unidad RCX

En el se observa que los puertos de entrada estan etiquetados con los números 1, 2 y 3 , mientras q los puertos de salida se etiquetan con las letras A, B y C.

Los sensores se clasifican de la siguiente manera:

tipo funcionamiento
toque Detecta el nivel de presión ejercida al contacto con objetos al frente del sensor (zona amarilla)
luz Emite y recite un rayo infrarrojo para detectar la cantidad de luz en el ambiente.
temperatura Sensa la temperatura en grados celsius o farenheit según se halla programado
rotación Conectado a un motor detecta el águlo de rotación.

Crear un robot programado es muy sencillo para ver un ejemplo usaremos el lenguaje NQC.

  1. Bajar el ambiente de programación Bricx para NQC (es gratuito)
  2. Armar una estructura plástica con las piezas q contiene el lego.
  3. Instalar Bricx e iniciarlo (previa conección de la torre de comunicación)
  4. Una vez iniciamos Bricx abrimos una hoja en blanco y tecleamos un programa guardándolo con extensión .nq
  5. Compilamos el programa y si funciona lo "bajamos" al ladrillo con la instrucción download.
  6. Para ver el funcionamiento usamos la instrucción Run desde bricx o bien preionamos el boton run (verde) del RCX.

Notas importantes:
Siempre conecte los sensores en 1, 2 y 3 y motores en A,B y C pues el cambio de posición podria quemar los sensores.
Si no se conectó el brix antes de iniciar una sesión se puede establecer la comunicación utilizando el ícono en forma de llave.
Siempre revise que el programa en NQC incie los sensores con el mismo tipo y posición que en el modelo real para evitar dañarlos.
Puede pasar que al cargar un programa extenso en el espacio "programa 1" del RCX este no funcione adecuadamente por esto se sugiere usar los espacios 2 en adelante.

Tratare de ir completando este material en forma mas detallada por lo cual pido paciencia.

Les desero suerte con sus proyectos.

Información general
http://mindstorms.lego.com/
http://www.lego.com/dacta/robolab/default.htm
http://www.donosgune.net/2000/gazteler/docum.htm#VB
http://www.pulsar.org/archive/stormwatch/AboutLegoMindstorms.html

Información del hardware
http://graphics.stanford.edu/~kekoa/rcx/

Documentación
http://www.donosgune.net/2000/gazteler/prg_leng/NQCgaz.htm
"Guía del programador de NQC" por Dave Baum (crador de NQC) http://www.donosgune.net/2000/dokumen/NQC_Guia_Sp.pdf
"Programación de LEGO Robots con NQC" Mark Overmars. NQC (Not quite C) http://www.donosgune.net/2000/dokumen/NQCOvSp.pdf

Software de Programación
Para programar el lego con NQC usando Bricx entra a:
http://hometown.aol.com/johnbinder/bricxcc.htm

Si quieres usar los legos con java entra a:
http://www.escape.com/~dario/java/rcx/

Si quieres usar C++ para GNU visita la pagina:
http://rpmfind.net/linux/RPM/contrib/libc6/i386/rcx-egcs-c++-1.1.2-1.i386.html

Para usar visual C visita la pagina:
http://www.kyb.tuebingen.mpg.de/bu/people/berger/rcx_vc++.html

Para usar Microsoft Visual Basic, Borland Delphi/C++
Builder:(bajar libreria spirit.ocx)
http://www.webremote.co.uk/Down_Lego.html

Para usar C visita:
http://www.donosgune.net/2000/gazteler/prg_leng/IC_g.htm

Pagina con buen material(pero en Alemán):
http://www.ict.pwr.wroc.pl/mindstorms/materialy/

 

 

 

Hosted by www.Geocities.ws

1