La Red de Conocimientos Pedagógicos - Conocimientos históricos - Información sobre Lego Mindstorms

Información sobre Lego Mindstorms

En el corazón de un set LEGO Mindstorms hay un ladrillo programable llamado RCX o NXT o EV3. El RCX tiene seis puertos de entrada y salida: tres para conectar dispositivos de entrada, como sensores, y tres para conectar dispositivos de salida, como motores. NXT tiene un puerto de entrada más que RCX. Lo más atractivo de los kits LEGO mindstorms es que, al igual que los ladrillos LEGO tradicionales, los jugadores pueden usar libremente su creatividad para armar varios modelos y hacerlos realmente moverse.

RCX se divide en tres versiones: 1.0 (primera generación 1998), 1.5 (revisión menor 1999), 2.0 (última revisión desde 2001 hasta la actualidad). La diferencia entre 1.0 y 1.5 es que la versión 1.0 puede funcionar con una fuente de alimentación externa a través de un transformador, mientras que la versión 1.5 solo puede funcionar con una batería. La diferencia entre 2.0 y 2.0 es que el dispositivo de infrarrojos conectado a la computadora se cambia a USB, mientras que antes se usaba el puerto serie. La diferencia más importante es que las herramientas de desarrollo de programas y firmware de la versión 2.0 proporcionan algunas características nuevas. El objetivo principal del firmware RCX es convertir programas de código de bytes en código de máquina que el procesador pueda entender. Afortunadamente, el firmware del RCX es reemplazable al igual que el BIOS de una computadora, por lo que no hay mucha diferencia entre las versiones. El firmware del RCX se almacena en SRAM (memoria estática accesible), por lo que, en efecto, el firmware desaparece unos segundos después de que el RCX pierde energía. Cuando la computadora envía el programa, también envía el firmware al RCX.

Si utiliza el método tradicional para aprender a fabricar robots, primero debe aprender la introducción básica a las computadoras y luego comprender los circuitos electrónicos, la lógica digital y los microprocesadores antes de poder crear circuitos básicos de control de microcomputadoras. Luego hay que aprender lenguaje ensamblador o lenguaje C y escribir programas de microprocesador... Por cierto, quizás lo más problemático sea la estructura mecánica. Tenemos que decidir si utilizar motores paso a paso o motores de CC normales. Diferentes formas de transmisión tienen diferentes métodos de procesamiento de retroalimentación y transmisión de señal. E incluso si se utilizan los neumáticos u orugas más simples como método para caminar, es posible que sea necesario combinar varias marchas para ajustar el par y la velocidad. Al pensar en aprender y hacer tantas cosas por sí mismo, muchos jugadores aficionados que anhelan robots caseros están emocionados y relajados.

El set Lego mindstorms contiene RCX, dos motores, dos sensores táctiles y un sensor de infrarrojos, varios tamaños de neumáticos y orugas, varios tamaños de engranajes y poleas y, por supuesto, una variedad de bloques de construcción para ayudarnos. Resolver problemas con circuitos electrónicos y estructuras mecánicas. Para el resto de la parte de "programación", LEGO (o los investigadores del MIT) también desarrollaron una herramienta de programación visual llamada RCX Code. Al igual que apilar árboles, los usuarios de código RCX pueden completar programas RCX apilando varios "bloques de construcción" en la pantalla que representan diferentes lógicas de programa. Una vez escrito el programa, éste se puede transferir al RCX a través del dispositivo de infrarrojos proporcionado en el kit. ¡Realmente genial!

Pero la definición que cada uno tiene de “cool” es diferente. Las herramientas de programación visual proporcionadas por LEGO son muy adecuadas para principiantes o jugadores que no están familiarizados con la programación. Algunas personas piensan que usar esta interfaz para escribir programas es en realidad un obstáculo. Por ejemplo, los programas complejos "escritos" mediante código RCX pueden no ser eficientes y el código de programa "visual" puede no ser fácil de leer y mantener. Por lo tanto, muchos entusiastas de LEGO Mindstorms y expertos en programación han desarrollado varios lenguajes de programación "normales" para ello.

Entre estos jugadores, el más famoso (y quizás el mayor contribuyente) es el profesor Kekoa Proudfoot, quien analizó cuidadosamente la estructura interna y los protocolos de E/S de RCX y los publicó en su sitio web interno de RCX. Mucha documentación. . Otro jugador conocido es David Baum, quien desarrolló un programa tipo C llamado NQC (no exactamente C) para liberar a los programadores de las limitaciones de las herramientas de desarrollo visual. Aunque NQC no es el primer lenguaje de programación "no oficial" de RCX, probablemente sea el más utilizado. El propio NQC se maneja a través de una interfaz de texto. Si desea utilizar un entorno de desarrollo integrado (IDE) de interfaz gráfica, puede instalar brixcc (versión para Windows) o MacNQC (versión para Mac), o incluso instalar NQC para WinCE (PDA para PC de bolsillo).

Además, el programa de herramientas de visualización de código RCX de Lego solo está disponible en la versión para Windows, y solo se pueden utilizar herramientas del programa no oficiales en sistemas Mac y Linux. No a todos los jugadores les gusta o están familiarizados con el lenguaje C. José Solórzano desarrolló una máquina virtual Java (JVM) llamada leJOS Java Operating System que permite a RCX ejecutar programas Java. Algunos jugadores también adoran Pb Forth (conocido como pbForth (ladrillo programable Forth)) desarrollado por Ralph Hempel. El primer proyecto de implementación del lenguaje Forth es controlar el gran telescopio del observatorio (consulte la introducción de esta página web). ). La mayor diferencia entre su sintaxis y otros lenguajes informáticos comunes es que utiliza la llamada "notación polaca inversa (RPN)". Por ejemplo, la expresión 3 * (4+7) debe escribirse como: 3. 4 7+*, y el otro, Expression, fue desarrollado por Markus Noga y permite a los programadores aprovechar al máximo el rendimiento del hardware RCX, pero a diferencia de NQC, los usuarios deben estar familiarizados con el lenguaje C y sus herramientas de desarrollo no. fácil de instalar, por lo que hay menos usuarios LEGO MINDSTORMS, LEGO también vende un kit para instituciones educativas llamado ROBOLAB, que contiene más sensores (como detección de presión, volumen y temperatura), cámaras vinculadas (no se limita a los productos Vision Command propios de LEGO). ) y proporciona reconocimiento visual. Más específicamente, su software también tiene funciones de análisis, comparación y gráficos de datos. El software RoboLab también puede conectarse al servidor ROBOLAB (incluido en el software de este producto) a través de Internet y presentar los datos recopilados. una página web. El software integrado de ROBOLAB está disponible en versiones para Windows y Mac.

Lego ha lanzado una nueva generación de LEGO mindstorms llamada LEGO MINDSTORMS NXT. Este nuevo LEGO mindstorms utiliza un microprocesador de 32 bits. USB y Bluetooth integrados (este diseño mejora en gran medida la velocidad y la estabilidad de la transmisión del programa), lo que permite a los usuarios crear robots controlados por dispositivos Bluetooth (como PDA o teléfonos móviles). Las herramientas de edición de programas incluidas en NXT son compatibles con PC y Mac. Para atraer más jugadores han participado en la expansión y transformación de NXT, y LEGO ha lanzado especialmente firmware de código abierto y herramientas de desarrollo, incluso el hermano mayor de Microsoft no puede evitar unirse a las filas del software de desarrollo de robots y lanzar Microsoft Robotics Studio. software además de funciones de host muy mejoradas. Además, el motor de NXT también se ha cambiado a servocontrol, lo que permite que el programa ajuste con precisión la velocidad, y esta vez se agregaron tres motores y los sensores también se han diversificado y son más. Potente: sensores ultrasónicos (usados ​​principalmente para detectar obstáculos), que pueden distinguir sensores de luz por color y brillo... espera, me pregunto qué sorpresas traerán los jugadores de LEGO con NXT.