Este artículo necesita citas adicionales para su verificación . ( diciembre de 2017 ) |
Sujeto | Robótica |
---|---|
Con licencia de | El grupo Lego |
Disponibilidad | 1 de septiembre de 1998 –31 de diciembre de 2022 ( 1 de septiembre de 1998 ) ( 31-12-2022 ) |
Conjuntos totales | 91 [1] |
Sitio web oficial |
Lego Mindstorms (a veces estilizado como LEGO MINDSTORMS ) es una línea discontinuada de kits educativos para construir robots programables basados en bloques Lego . Se presentó el 1 de septiembre de 1998 y se discontinuó el 31 de diciembre de 2022.
Los kits Mindstorms permiten a los usuarios construir creaciones que interactúan con el mundo físico. Todos los kits Mindstorms constan de una selección de elementos Lego, un "bloque inteligente" (conocido internamente como un bloque programable o "pbrick"), que sirve como el "cerebro" de una máquina Mindstorms. Cada conjunto también incluye algunos accesorios para el bloque inteligente (como motores y sensores) y software de programación. A diferencia de los conjuntos Lego convencionales, los kits Mindstorms no tienen un modelo principal para construir. Se incluyen ejemplos de construcciones con cada versión de Mindstorms, pero el kit es abierto con la intención de que el usuario cree y programe sus propios diseños.
Además de su uso en el hogar, los productos Mindstorms se utilizan mucho en escuelas y en competiciones de robótica como la FIRST Lego League . Lego Education vende versiones de kits Mindstorms específicamente diseñados para su uso en entornos educativos.
Los niños son el público objetivo de Lego Mindstorms, pero un número significativo de aficionados a Mindstorms son adultos. Los aficionados adultos han desarrollado una gran cantidad de lenguajes de programación y sistemas operativos alternativos para el bloque inteligente, lo que permite funciones más complejas.
Aunque originalmente se concibió y lanzó como una herramienta para apoyar el constructivismo educativo , Mindstorms se ha convertido en el primer kit de robótica para el hogar disponible para un público amplio. Ha desarrollado una comunidad de aficionados y piratas informáticos adultos, así como de estudiantes y entusiastas de Lego en general tras el lanzamiento del producto en 1998. En octubre de 2022, Lego Group anunció que descontinuaría la línea Lego Mindstorms mientras continuaba brindando soporte al controlador SPIKE basado en Scratch . [2]
El Robotics Invention System (RIS) fue el producto estrella de la primera generación de la línea Lego Mindstorms. Se trata de una comercialización de tecnología producida por el MIT Media Lab en colaboración con el grupo LEGO. El RIS incluía el microcontrolador programable Robotic Command eXplorer (RCX), así como motores y sensores de 9 V compatibles con Lego y una selección de piezas de Lego. El RIS original se lanzó en otoño de 1998. Fue reemplazado por una segunda versión, RIS 1.5, en el verano de 1999; y una tercera versión, RIS 2.0, en 2001.
La línea de productos Lego Mindstorms fue el primer proyecto de "Home Education", una división de Lego Education establecida por el empleado Tormod Askildsen en 1995. Askildsen, que había pasado diez años trabajando para Lego Education, se había frustrado trabajando con profesionales de la enseñanza y quería crear una experiencia educativa mejorada que se entregara directamente a los niños. Home Education decidió incorporar tecnología a sus productos basándose en una investigación de mercado que concluyó que los niños encontraban interesante el aprendizaje que involucraba tecnología. [3] Lego Mindstorms comenzó a desarrollarse en abril de 1996. [4] : 1061 El concepto para el conjunto se basó en tecnología creada en asociación con el MIT Media Lab. MIT Media Lab había estado experimentando con la combinación de Lego y programación desde principios de la década de 1980, y Lego había comercializado previamente parte de esta tecnología como productos para el aula en la línea Lego Dacta . El ladrillo programable (o pbrick [5] ) fue un refinamiento de estos conceptos tempranos, que tenían un alcance limitado porque tenían que estar atados a una computadora para funcionar. [6] : 24
Lego había estado interesado en la producción en masa del pbrick desde su creación en la década de 1980, pero en ese momento se consideró inviable debido a la falta de computadoras en las escuelas y los hogares y el gasto relativo de los componentes eléctricos. [6] : 25 A principios de la década de 1990, la tecnología comenzó a convertirse en algo más en la vida de los niños y, en consecuencia, el mercado de juguetes comenzó a cambiar más hacia los juguetes computarizados. [7] : 37 Muchos de los intentos de Lego de producir juguetes electrónicos habían languidecido en el punto en que Lego comenzó a desarrollar el ladrillo programable del MIT en un producto de consumo. [4] : 1061 El MIT continuó desarrollando el concepto pbrick, creando una versión "Red Brick" entre 1994 y 1996 que mejoró la versión anterior. A mediados de la década de 1990, las computadoras personales eran relativamente comunes en los hogares y los componentes necesarios para producir el pbrick bajaron de precio, lo que hizo factible la producción en masa. [6] : 25 El desarrollo de lo que más tarde se conocería como el Sistema de Invención Robótica comenzó en 1996 como el producto estrella de la recién creada división de aprendizaje en casa de Lego Education (Lego Dacta). El nombre de la línea de productos "Mindstorms" tenía la intención de expresar la experiencia del usuario del producto, recibe su nombre del libro Mindstorms de Papert , ya que la experiencia del usuario era similar a los conceptos del constructivismo educativo descritos en su libro. [8]
El perfil bajo inicial del proyecto permitió al equipo de Mindstorms la libertad de desarrollar el producto utilizando procedimientos operativos que entonces eran poco ortodoxos para el Grupo Lego. [4] : 1062 A diferencia de los sets Lego tradicionales, el Sistema de Invención Robótica Mindstorms no venía con instrucciones paso a paso. [3] El kit tampoco tenía un modelo principal, ni el juego estaba impulsado por la narración. [ cita requerida ] Para cerrar la brecha entre esta nueva experiencia de juego y las preexistentes de Lego, el equipo de Mindstorms creó muchas oportunidades para que los usuarios interactuaran entre sí, como la creación de Mindstorms.com, Mindstorms Discovery Centers y FIRST Lego League . [8] La creación de estas experiencias se realizó a través de asociaciones con grupos externos con los que el equipo de Mindstorms interactuó como socios iguales, algo que era poco común para el grupo Lego en ese momento. [4] : 1063 Para aliviar las tensiones entre Mindstorms y productos más convencionales, se le dio al equipo del proyecto autonomía respecto del proceso de desarrollo de productos de Lego y, en su lugar, reportó directamente a la alta gerencia de la empresa. [4] : 1064
El equipo Lego Mindstorms utilizó los conocimientos que los investigadores del MIT descubrieron al probar el Logo Brick de tercera generación ("Red Brick") en las escuelas como base para el desarrollo del ladrillo programable producido en masa. [9] : 5 El ladrillo programable físico fue rediseñado desde cero, ya que los ladrillos programables experimentales no estaban diseñados para ser robustos o para una fabricación rentable. [6] : 19, 26 El lenguaje de programación del producto fue desarrollado con la ayuda de miembros del laboratorio de medios del MIT. Lego decidió utilizar un lenguaje de programación visual para Mindstorms, inspirado en el lenguaje LOGOBlocks utilizado anteriormente con experimentos de ladrillos programables, para hacer que el producto fuera accesible a los niños que podrían no estar familiarizados con la programación. [6] : 29 Si bien la tecnología en la que se basó Mindstorms estaba dirigida a "todos los niños", el grupo demográfico objetivo elegido de Lego Mindstorms fue intencionalmente limitado, con el fin de obtener prensa positiva superando las expectativas. La decisión de dirigir el producto a niños de entre 10 y 14 años se tomó en parte porque era el grupo demográfico objetivo principal de Lego y en parte basándose en una investigación de mercado (no corroborada por los hallazgos del MIT Media Lab) que concluyó que este grupo demográfico sería el más atraído por los juguetes computarizados. Esta elección del grupo demográfico objetivo influyó directamente en el color del ladrillo RCX (que se hizo amarillo y negro para parecerse a un equipo de construcción) y en los usos de muestra para el kit Mindstorms (como la fabricación de robots autónomos). [6] : 28
La promoción del sistema de invención robótica Lego Mindstorms comenzó 6 meses antes de que se planeara el lanzamiento del producto. [8] El producto se lanzó por primera vez de manera suave con la apertura del Centro de Descubrimiento Mindstorms en el Museo de Ciencia e Industria , donde los niños podían interactuar con el sistema de invención robótica Mindstorms para completar tareas establecidas, familiarizándose con el producto. [10] El producto Mindstorms se lanzó simultáneamente con Cybermaster, otro producto Lego derivado de la tecnología de ladrillos programables del MIT que estaba más en línea con las filosofías de producto tradicionales del grupo Lego. [4] : 1067
El sistema de invención robótica Lego Mindstorms (RIS) se lanzó en septiembre de 1998 [11] a un precio minorista de 199 dólares. En lugar de venderse en jugueterías, el producto se vendió en tiendas de electrónica como BestBuy y CompUSA , debido al costo relativamente alto del conjunto. [8] La producción completa (de entre 60.000 y 100.000 unidades [12] ) se agotó en 3 meses. [7] : 181 [6] : 30
La segunda edición del RIS, Robotics Invention System 1.5, se lanzó en el verano de 1999, [7] : 187 [5] con una tercera edición, RIS 2.0, lanzada en 2001. [13]
A pesar de estar dirigido a niños, el Sistema de Invención Robótica encontró rápidamente una audiencia entre adultos y hackers de todas las edades; las encuestas de la compañía Lego realizadas unos meses después del lanzamiento determinaron que el setenta por ciento de los aficionados a Lego Mindstorms eran adultos. Poco después del lanzamiento del producto, los aficionados adultos comenzaron a compartir versiones de ingeniería inversa del microcódigo y firmware del bloque RCX en Internet, lo que llevó al desarrollo de lenguajes de programación alternativos para el RCX como "Not Quite C" (NQC) y sistemas operativos alternativos para el bloque como lejOS. El Grupo Lego consideró brevemente enviar cartas de cese y desistimiento a los sitios web que compartían el código propietario del RCX. [7] : 183 Sin embargo, el equipo de Mindstorms argumentó con éxito que la aceptación del producto por parte de la comunidad de hackers demostró que valía la pena desarrollar el producto. Para fomentar esta floreciente comunidad, se estableció un foro oficial en el sitio web de Lego y se agregó una cláusula de "derecho a hackear" al acuerdo de licencia de usuario final del software Lego Mindstorms. Más tarde se publicó un kit oficial para desarrolladores de software para el RCX en el sitio web de Mindstorms. Varios aficionados adultos lanzaron una serie de productos centrados en el RIS, incluidos libros de instrucciones y sensores y hardware no oficiales. En 1999 se inició una convención para aficionados a Lego Mindstorms, llamada Mindfest. [7] : 181–184
A pesar de las buenas ventas, el equipo de desarrollo de Mindstorms fue desatendido por la alta gerencia. Como medida de reducción de costos , la oficina de Mindstorms se cerró en 2001 y los miembros del equipo fueron despedidos o asignados a otros proyectos. [5] El Grupo Lego continuó produciendo el Sistema de Invención Robótica 2.0, vendiendo alrededor de 40.000 unidades por año sin publicidad [7] : 189 hasta que el conjunto se discontinuó en 2006. [14]
El RCX se basa en el microcontrolador Renesas H8/300 de 8 bits , que incluye 32 KB de ROM para funciones de E/S de bajo nivel, junto con 32 KB de RAM para almacenar firmware de alto nivel y programas de usuario. El RCX se programa cargando un programa mediante una interfaz de infrarrojos dedicada . Después de que el usuario carga un programa, el RCX puede ejecutarlo por sí solo sin necesidad de acceso a una computadora. Los programas pueden utilizar tres puertos de entrada de sensor y tres puertos de salida de 9 V, además de la interfaz de infrarrojos, lo que permite que los bloques RCX se comuniquen entre sí. Una pantalla LCD incorporada puede mostrar información que incluye el nivel de batería, el estado de los puertos de entrada/salida y el programa que se está ejecutando actualmente. [15]
Los bloques RCX de la versión 1.0 cuentan con un conector para adaptador de corriente además de baterías. En la versión 2.0 (así como en las versiones 1.0 posteriores incluidas en el RIS 1.5), se eliminó el conector para adaptador de corriente. Los bloques RCX equipados con adaptador de corriente eran populares para proyectos de robótica estacionaria (como brazos robóticos) o para controlar trenes modelo Lego . En este último contexto, el RCX podría programarse con software de control de comando digital (DCC) para operar varios trenes cableados.
La interfaz IR del RCX puede comunicarse con Spybots , Scout Bricks, Lego Trains y el NXT (utilizando un sensor de enlace infrarrojo de terceros). La frecuencia portadora del receptor IR del RCX 1.0 es de 38,5 kHz, mientras que la frecuencia portadora IR del RCX 2.0 es de 76 kHz. Ambas versiones pueden transmitir en cualquiera de las dos frecuencias. El RCX se comunica con una computadora mediante una torre IR serial o USB . Como el RCX ya no se fabrica, la compatibilidad con la interfaz está limitada en sistemas operativos más recientes que Windows XP.
Todas las versiones RCX tienen un número único impreso en ellas, que se podía registrar en el sitio web RCX de Lego Mindstorms, que ya no existe. Esto era necesario para obtener asistencia técnica. El primer RCX producido está marcado como "000001" y se exhibió en el evento del décimo aniversario de Mindstorms. [16]
El Lego RCX estuvo disponible en nuevos sets desde 1998 (Lego Set 9719: Robotics Invention System 1.0) hasta 2003 (Lego Set 9786: Robo Technology Set, con cable USB). El RCX 1.0 original funcionaba con los productos de suministro de energía Lego existentes del tema Lego Train, Lego Product 70931: Electric Train Speed Regulator 9V Power Adaptor for 120v 60 Hz - US version (Years: 1991 thru 2004), Lego Product 70938: Electric Train Speed Regulator 9V Power Adaptor for 230v 50 Hz - European version (Years: 1991-1996). Ambos productos convertían la energía de la pared a 12 V CA [ dudoso – discutir ] , a través de un conector de energía coaxial (también llamado "conector de barril") , 5,5 mm en el exterior, 2,1 mm en el interior. A veces se vendían solos y a veces estaban disponibles como parte de otros sets, como Lego Set 4563: Load N' Haul Railroad (año: 1991) y Lego Set 10132: Motorized Hogwarts Express (año: 2004). [17] [18] [19] [20] [21] [22]
El Robotics Discovery Set era un paquete más asequible y sencillo que el Robotics Invention Set. En lugar de basarse en el RCX, tenía su propio bloque programable llamado Scout. Una versión aún más sencilla del Scout aparecería en dos sets Mindstorms con temática de Star Wars.
Lego también lanzó una computadora azul llamada Scout , que tiene 2 puertos de sensor, 2 puertos de motor (más uno adicional si se conecta con un Micro Scout usando un cable de fibra óptica ) y un sensor de luz incorporado, pero no tiene interfaz de PC. Viene con el Robotics Discovery Set. El Scout se puede programar a partir de una colección de combinaciones de programas incorporados. Para programar el Scout, un usuario debe habilitar el "modo de energía" en él. El Scout puede almacenar un programa.
El Scout se basa en un microcontrolador Toshiba con 32 KB de ROM y 1 KB de RAM, de los cuales unos 400 bytes están disponibles para programas de usuario. Debido a la cantidad extremadamente limitada de RAM, se proporcionaron muchas subrutinas predefinidas en ROM. El Scout solo admite sensores externos pasivos, lo que significa que solo se pueden utilizar sensores táctiles, de temperatura y otros sensores sin alimentación. Los convertidores analógicos a digitales utilizados en el Scout solo tienen una resolución de 8 bits, en contraste con los convertidores de 10 bits del RCX. [23]
Lego tenía previsto crear un set de refuerzo que permitiera programar el Scout desde un ordenador con software como RCX code. Sin embargo, debido a la complejidad de este proyecto, se abandonó.
El RCX puede controlar el bloque Scout mediante el bloque de programa "Enviar mensaje IR". El RCX realiza todo el control y, por lo tanto, se puede programar con la PC, mientras que el Scout acepta comandos. El bloque Scout debe tener todas sus opciones configuradas en "desactivado" durante este proceso.
El Micro Scout se añadió como un nivel de entrada a la robótica Lego. Es un Pbrick muy limitado con un solo sensor de luz incorporado y un solo motor incorporado. Tiene siete programas incorporados y puede ser controlado por una unidad Scout, Spybotics o RCX usando VLL. Al igual que el Scout, el Micro Scout también se basa en un microcontrolador de Toshiba .
La unidad se vendió como parte del Droid Developer Kit (que incluía a R2-D2 ) y más tarde del Dark Side Developer Kit (que incluía un AT-AT Imperial Walker ).
Lego Mindstorms NXT fue un kit de robótica programable lanzado por Lego en agosto de 2006, reemplazando al kit Lego Mindstorms de primera generación. [24] El kit consta de 577 piezas, que incluyen: 3 servomotores, 4 sensores ( ultrasónico , de sonido, táctil y de luz ), 7 cables de conexión, un cable de interfaz USB y el NXT Intelligent Brick. Permite que el robot realice de forma autónoma diferentes operaciones. El kit también incluye NXT-G, un entorno de programación gráfica que permite la creación y descarga de programas al NXT. El software también tiene instrucciones para 4 robots: Alpha-Rex (un humanoide), Tri-Bot (un automóvil), Robo-Arm T-56 (un brazo robótico) y Spike (un escorpión).
El desarrollo de Lego Mindstorms NXT comenzó en 2004. En ese momento, el grupo Lego estaba en medio de una crisis financiera. Como parte del esfuerzo de recuperación, la línea de productos desarrollada para su lanzamiento en 2006 incluiría relativamente pocos productos que tuvieran garantía de ser rentables. Se optó por un resurgimiento del sistema de invención robótica Mindstorms como uno de estos productos, ya que Lego Mindstorms tenía un gran número de seguidores y los kits seguían vendiéndose bien sin publicidad. [7] : 187–188
Los fans estuvieron muy involucrados en el desarrollo y la promoción de Mindstorms NXT. El equipo de desarrollo colaboró con cuatro aficionados considerados expertos en la comunidad de fans de Lego Mindstorms. Estos fans eran conocidos colectivamente como el Panel de Usuarios de Mindstorms (MUP). Se les enviaron los primeros prototipos del kit de Mindstorms y se comunicaron con los miembros del equipo de Mindstorms en un foro privado de Internet. El MUP dio una amplia retroalimentación sobre el hardware y el diseño del kit de NXT. Las características de NXT basadas directamente en las solicitudes del MUP incluyen el uso de un procesador de 32 bits, motores más potentes y compatibilidad con Bluetooth. [7] : 194
La promoción de Lego Mindstorms NXT se basó principalmente en el boca a boca, porque la empresa estaba en medio de una crisis financiera y no tenía suficiente dinero para una gran campaña de marketing. [7] : 189 Mindstorms NXT se presentó en enero de 2006 en el Consumer Electronics Show de 2006. En la feria, Lego solicitó solicitudes para una fase de prueba beta, donde 100 usuarios, conocidos como Mindstoms Community Partners (MCP) recibirían kits NXT a un precio descontado meses antes del lanzamiento. La intención del programa MCP era generar apoyo para el producto antes del lanzamiento y recibir comentarios sobre el kit casi final. [7] : 196–198 [5] Los fanáticos involucrados en el programa MCP proporcionaron una cantidad significativa de relaciones públicas para el conjunto en el lanzamiento, como modelos alternativos, borradores de libros terminados y contenido web como publicaciones de blogs. [5] Los medios de comunicación como Wired y CNN también proporcionaron publicidad gratuita para Mindstorms NXT al informar sobre la inclusión de los fanáticos en su proceso de desarrollo. [7] : 199 El lanzamiento de Mindstorms NXT, medido en horas de emisión, contenido web y páginas de revistas, generó más interés público del que toda la compañía había acumulado previamente en toda su vida. [5]
Lego Mindstorms NXT (número de producto 8527) se lanzó el 1 de agosto de 2006. [5] Se vendieron kits por un valor de 30 millones de dólares en el primer año. [7] : 199
El Lego Mindstorms NXT 2.0 se lanzó el 5 de agosto de 2009. Contiene 619 piezas y cinco sensores: dos sensores táctiles y un sensor de sonido, luz y distancia ultrasónico. El NXT 2.0 utiliza operaciones de punto flotante, mientras que las versiones anteriores utilizan operaciones de números enteros. [25] El kit cuesta alrededor de 280 dólares.
EV3, el producto Mindstorms de tercera generación, es un desarrollo posterior del NXT. [26] [27] El sistema fue lanzado el 1 de septiembre de 2013. El conjunto Lego Mindstorms EV3 incluye motores (2 servomotores grandes y 1 servomotor mediano), sensores (2 sensores táctiles, sensor ultrasónico, sensor de color, sensor infrarrojo y el nuevo sensor giroscópico), el bloque programable EV3, más de 550 elementos Lego Technic y un control remoto (el Infrared Beacon, que solo está en modo Hogar/Retail). El EV3 puede ser controlado por dispositivos inteligentes. Puede iniciar un sistema operativo alternativo desde una tarjeta microSD, lo que hace posible ejecutar ev3dev, un sistema operativo basado en Debian .
Spike Prime se anunció en abril de 2019. [28] Si bien no es parte de la línea de productos Mindstorms, el conjunto básico incluye tres motores (1 grande y 2 medianos) y sensores de distancia, fuerza y color [29], un bloque controlador basado en un microcontrolador STM32F413 [30] y más de 520 elementos Lego Technic. [31] La mayoría de estos motores y sensores, incluido el concentrador, servirían como componentes eléctricos para el próximo set Robot Inventor.
Lego Mindstorms Robot Inventor se anunció en junio de 2020 [32] y se lanzó más tarde en otoño. Es el último set de Mindstorms disponible comercialmente antes de la discontinuación del tema anunciada en octubre de 2022. Tiene cuatro motores medianos de Spike Prime, dos sensores (sensor de distancia y sensor de color/luz) también de Spike Prime, un concentrador Spike Prime con un giroscopio de seis ejes, un acelerómetro y soporte para controladores y control por teléfono. También tiene más de 902 elementos Lego Technic. Este set se discontinuó en 2022 y Lego prometió soporte para aplicaciones hasta 2024. [33]
Nombre | Dispositivo | Tipo de programa | Tipo(s) de idioma | Notas | Campo de golf | |||
---|---|---|---|---|---|---|---|---|
RCX | NXT | EV3 | Funciona con ladrillos | Mando a distancia | ||||
Laboratorio de actores | Lenguaje personalizado similar a un diagrama de flujo | |||||||
Ada | Sí | Ada | Requiere nxtOSEK | |||||
Interfaz ADA para Mindstorms | Ada | |||||||
Inventor de aplicaciones | Sí | Inventor de aplicaciones | Soporte específico para sensores y motores Lego Mindstorms NXT | |||||
sistema operativo brickOS | Sí | No | No | C , C++ | sitio web | |||
C | Intérprete de C, C++ | Controle Lego Mindstorms en C/C++ de forma interactiva sin compilar | ||||||
sonido metálico | C, C++ | |||||||
Codificador Z | Sí | Sí | No | Java | Funciona con Blockly o con Java (utilizando LejOS). También incluye un simulador 3D en línea [34] | sitio web | ||
Cpp4Robots | No | No | Sí | Sí | C/C++ | Cpp4Robots es una extensión (complemento) para el entorno Microsoft Visual Studio; permite programar Lego EV3 en lenguaje nativo C/C++ y en el entorno de desarrollo Microsoft Visual Studio; funciona con el firmware predeterminado en EV3 Brick | sitio web | |
DialogOS | Diagrama de flujo gráfico para robots controlados por voz | DialogOS combina el reconocimiento de voz y la síntesis de voz con la robótica, lo que permite construir robots parlantes que reaccionan a los comandos de voz. | ||||||
Encantador | Sí | Arrastrar y soltar, similar a NXT-G | Programa robots simplemente arrastrando la línea de funciones | |||||
EV3 Básico | No | No | Sí | Sí | Sí | Microsoft Pequeño Básico | sitio web | |
ev3_scratch | Sí | No | Sí | Scratch (lenguaje de programación) | El código se ejecuta en el navegador y transmite comandos al robot EV3 a través de Bluetooth | |||
Navegación FLL NXT | Sí | Utiliza archivos NXT-G y .txt | ||||||
CCG | C , C++ , Objective-C , Fortran , Java, Ada, otros | |||||||
Gnikrap | No | No | Sí | Sí | Sí | JavaScript , programación similar a Scratch | sitio web | |
Cadena de herramientas GNU para h8300 | C/C++, lenguaje ensamblador (ASM) | |||||||
MVM-alta | Sí | Entorno de desarrollo para el lenguaje Java para Mindstorms EV3, basado en Eclipse | Funciona con Java 1.7; funciona con el firmware Lego estándar; no necesita tarjeta microSD; necesita un adaptador bluetooth inalámbrico para el EV3 | sitio web | ||||
C interactivo | Lenguaje de estilo C | Lenguaje desarrollado para el concurso de diseño de robots Lego del MIT | ||||||
jaraco.nxt | Sí | Sí | Pitón | Módulos de Python que proporcionan interfaces de bajo nivel para controlar un bloque Lego NXT a través de Bluetooth; incluye código para controlar motores con un controlador Xbox 360 usando pyglet | ||||
LabVIEW | Sí | Sí | Sí | Sí | Lenguaje de programación visual LabVIEW de National Instruments (código G) | El lenguaje principal utilizado para desarrollar el software Mindstorms NXT. Puede utilizar el kit complementario disponible para crear y descargar programas a NXT y crear bloques NXT originales o controlar robots directamente a través de USB o Bluetooth utilizando NXT fantom.dll. También sirve como lenguaje de programación para EV3. | ||
API de Lego Mindstorms EV3 para .NET | No | No | Sí | No | Sí | .NET, WinJS y C++ | Una API .NET para el bloque Lego Mindstorms EV3 que se puede utilizar desde el escritorio, Windows Phone y WinRT; esta API puede conectar, controlar y leer datos de sensores de los bloques Lego EV3 a través de Bluetooth, WiFi o USB | sitio web |
Lego.NET | Todo lo que se pueda compilar en CIL funciona mejor con C# | No viene con un compilador, convierte CIL a código máquina | ||||||
Lego::NXT | Sí | No | Sí | Perl | Conjunto de módulos Perl que proporcionan control de bajo nivel en tiempo real de un bloque Lego NXT a través de Bluetooth. | |||
LegoLog | Prólogo | Utiliza un programa NQC para interpretar los comandos enviados desde la PC que ejecuta el código Prolog | ||||||
Control remoto LegoNXT | Sí | No | Sí | Objetivo-C | Programa de control remoto para operar y programar de forma remota un bloque Lego NXT. Admite NXT 2.0 y 1.0, sensores, los 3 motores, control de "dirección" automático y ejecución de programas precargados. | |||
leJOS | Sí | Sí | Sí | Sí | Sí | Java | Un sistema basado en Java para programadores avanzados puede manejar la mayoría de los sensores y elementos como GPS, reconocimiento de voz y tecnología de mapeo. Puede interactuar con el IDE de Eclipse o ejecutarse desde la línea de comandos. | |
Lestat | C++ | Permite controlar el NXT directamente desde cualquier programa C++ en Linux | ||||||
biblioteca | C/C++ | Una biblioteca para el CCG | ||||||
Kit de desarrollo de software de Logitech | Visual Basic , Visual C++ | Se puede combinar con una biblioteca de control RCX como spirit.ocx del SDK MindStorms para utilizar la Lego Cam | ||||||
Lenguaje de programación visual de Microsoft (VPL) | Sí | No | Sí | Diagrama de flujo gráfico, basado en .NET | Con Microsoft Robotics Studio , se utiliza un programa nativo NXT msrs para enviar y recibir mensajes hacia y desde un programa de control en una computadora a través de Bluetooth. | |||
SDK de Mindstorms | Visual Basic, Visual C++, MindScript, LASM | No necesita VB para usar las funciones de VB, ya que MS Office viene con una versión reducida de VB para crear macros. | ||||||
Monoladrillo | Sí | Sí | Sí | DO# | .NET 4.5. Firmware ejecutándose desde la tarjeta SD. | sitio web | ||
CNC | Sí | Sí | NQC, un lenguaje similar a C | |||||
NXT++ | C++ | Permite controlar el NXT directamente desde cualquier programa C++, en Visual Studio, Windows. | ||||||
NXT_Python | Sí | No | Sí | Pitón | Paquete para controlar un robot Lego NXT usando lenguaje Python; puede comunicarse vía USB o Bluetooth | |||
NXT-Python | Sí | No | Sí | Pitón | Basado en NXT_Python, incluye funciones avanzadas adicionales, compatibilidad con alrededor de 30 sensores y múltiples backends de conexión de bloques. Funciona en Windows, Linux y Mac. | |||
NXTGCC | Ensamblaje, C , makefiles, Eclipse , etc. | La primera cadena de herramientas GCC para programar el firmware Lego Mindstorms NXT. | ||||||
nxtOSEK | C / C++ | |||||||
Tormenta mental OCaml | OCaml | Módulo para controlar robots Lego NXT usando OCaml a través de las interfaces Bluetooth y USB. | ||||||
En pantalla | Un lenguaje personalizado que se puede programar directamente en el RCX | |||||||
pbAdelante | Sí | Adelante | Ya no se desarrolla. | |||||
pbLua | Sí | API para el lenguaje de programación Lua para Mindstorms NXT, basado en texto | pBLua: ... está escrito en C portable, con requisitos mínimos de tiempo de ejecución; se puede compilar sobre la marcha en NXT; es un lenguaje pequeño, fácil de leer y fácil de escribir; tiene una extensa documentación disponible en línea y en formato de árbol muerto, y un grupo de noticias muy amigable. | sitio web | ||||
Desarrollador de PBrick | PBrickDev, un lenguaje basado en diagramas de flujo. | Tiene más funciones que el lenguaje RIS, como registros de datos y subrutinas, subprocesamiento múltiple. | ||||||
PRO-BOT | Un tipo de lenguaje basado en Visual Basic/spirit.ocx | Diseñado para robots que están en contacto con la estación de trabajo en todo momento. | ||||||
Tratamiento | Sí | Java (simplificado, programado al estilo C) | Processing (lenguaje de programación) es un lenguaje de programación de código abierto y un entorno para programar imágenes, animaciones e interacciones. Lo utilizan estudiantes, artistas, diseñadores, investigadores y aficionados para el aprendizaje, la creación de prototipos y la producción; la biblioteca de Processing NXTComm desarrollada por Jorge Cardoso puede controlar el NXT con Processing | |||||
BastanteC | do | Una biblioteca para usar con GCC y viene con GCC para Windows. | ||||||
Código RCX | Sí | Código RCX, un lenguaje personalizado basado en diagramas de flujo | Incluido en la versión para consumidores de Mindstorms que se vende en jugueterías. | |||||
Laboratorio Robolab | Sí | Un lenguaje de diagrama de flujo basado en LabVIEW | Este es el entorno de programación que se ofrece a las escuelas que utilizan MindStorms y es compatible con Lego Cam. La estructura de programación simula una estructura de diseño de diagrama de flujo casi icono por icono. Por lo tanto, ayuda mucho a los usuarios en términos de traducir desde un diseño de diagrama de flujo a iconos de Robolab. | |||||
Mente robótica | Lenguaje de programación educativo sencillo disponible desde el árabe hasta el ucraniano. | El entorno de aprendizaje RoboMind permite desarrollar y probar rápidamente scripts para un entorno de robot virtual. Los scripts se pueden transferir directamente a un robot Lego Mindstorms NXT. Funciona con el firmware estándar. | ||||||
Reino Robo | Un lenguaje multiplataforma que funciona con iRobot Roomba, NXT, RCX, VEX y muchos otros conjuntos robóticos populares; también puede procesar video usando una cámara web, esto le da al robot una excelente visión ya que puede filtrar ciertos colores, fijarse en un área determinada de color, mostrar variables del robot o la computadora y mucho más; el software funciona con teclado, joystick, mouse | |||||||
Robot JavaScript | No | Sí | Sí | Sí | JavaScript | Un compilador que compila código JavaScript para robots EV3. Incluye resaltado de sintaxis, uso compartido de código, más de 100 programas de ejemplo y mensajes de compilación detallados. Lenguaje orientado a objetos. Gratuito. | sitio web | |
Robotic | Sí | Sí | Sí | Sí | Un entorno de desarrollo integrado dirigido a estudiantes que se utiliza para programar y controlar robots Lego NXT , VEX , RCX y Arduino utilizando un lenguaje de programación basado en el lenguaje C. | ROBOTC ofrece la posibilidad de utilizar un lenguaje de texto basado en el lenguaje C. Incluye herramientas de depuración integradas, (pero no limitadas a) plantillas de código, operaciones matemáticas/trigonométricas (sin, cos, tan, asin, acos... etc.), función de autocompletado fácil de usar integrada en la interfaz, programas de muestra integrados. Esto merece una mención especial por su herramienta de depuración. Cualquier desarrollador sabrá lo importante que es tener una buena herramienta de depuración. Entre todos los demás lenguajes de programación de robótica que admiten la plataforma Mindstorms, el entorno de depuración de RobotC es digno de mención; pero no es gratuito. | ||
Robótica.NXT | Sí | Sí | Haskell | Una interfaz Haskell a través de Bluetooth; admite comandos directos, mensajes y muchos sensores (también no oficiales), y admite un control simple basado en mensajes de un bloque NXT a través de un programa ejecutado de forma remota (código NXC básico incluido) | ||||
Sistema operativo robótico (ROS) | Una biblioteca basada en Linux para escribir robots; la pila "nxt" proporciona una interfaz con NXT | |||||||
ruby-nxt | Sí | Sí | Rubí | Proporciona acceso de bajo nivel al NXT a través de Bluetooth y algunas funciones preliminares de alto nivel. | ||||
RWTH – Caja de herramientas de Mindstorms NXT | Sí | Sí | MATLAB | Interfaz para controlar el NXT desde MATLAB vía Bluetooth o USB; código abierto | ||||
Simulink (compatible con Lego Mindstorms NXT) | Sí | Enlace simultáneo | Proporciona una herramienta de programación rápida con un solo clic para el NXT; el código C se genera automáticamente a partir de un modelo gráfico de Simulink; luego, el código se implementa y se descarga en el NXT, desde donde se puede ejecutar; Mathworks proporciona una serie de bloques gráficos que representan varios sensores y actuadores que utiliza el NXT | |||||
Lego cuadrado | Chirrido | |||||||
Rápido / Robótico | Sí | Sí | Swift (lenguaje de programación) | Robotary es un estudio de robótica para Mac que utiliza el lenguaje de programación Swift | sitio web | |||
TclRCX | Sí | Tcl | ||||||
Logotipo de la tortuga marina | LOGO | |||||||
Pequeño Soar | Remontarse | Una implementación de la arquitectura de inteligencia artificial Soar que se ejecuta en el bloque RCX; Soar incorpora acción, planificación y aprendizaje en un marco basado en reglas | ||||||
Pequeña máquina virtual | Sí | Java | Un predecesor del lenguaje lejos. Un firmware de reemplazo basado en Java y de código abierto para el microcontrolador RCX de Lego Mindstorms. | |||||
Transcribidor (El) | Occam | |||||||
TuxMinds | (Linux) Interfaz gráfica de usuario para varias distribuciones, un entorno de desarrollo integrado (IDE) de código abierto basado en Qt. Admite una gran cantidad de bots. RCX, NXT y Asuro están predefinidos. | Con el archivo de configuración basado en XML se puede añadir prácticamente cualquier tipo de robot (o microcontrolador). También se puede añadir equipo propio de la misma manera. | ||||||
URBI de Gostai para Lego Mindstorms NXT | URBI , C++, Java, Matlab | Lenguaje de programación fácil de usar, basado en eventos y en paralelo, con arquitectura de componentes e interfaces de código abierto para muchos lenguajes de programación. También ofrece reconocimiento y síntesis de voz, reconocimiento y detección de rostros, localización y mapeo simultáneos , etc. | ||||||
Comando de visión | Sí | Código RCX | Lenguaje de programación oficial para usar con Lego Cam, permite controlar robots con color, movimiento y destellos de luz. | |||||
XS | Ceceo |
Los kits Mindstorms también se venden y utilizan como herramienta educativa, originalmente a través de una asociación entre Lego y el MIT Media Laboratory . [35] [36] La versión educativa de los productos se llama Mindstorms for Schools o Mindstorms Education , y las versiones posteriores vienen con el software de programación basado en GUI ROBOLAB , desarrollado en la Universidad de Tufts [37] utilizando LabVIEW de National Instruments como motor.
Debido a su facilidad de uso para los niños, Lego Mindstorms se ha utilizado como plataforma para varias competiciones de robótica orientadas a niños, la más destacada de las cuales es la FIRST Lego League (FLL), pero también la Olimpiada Mundial de Robótica o la Robocup Junior [38].
FIRST Lego League Challenge (fundada como FIRST Lego League) es una competencia de robótica que utiliza productos Lego Mindstorms. [a] Fue fundada en 1998 al mismo tiempo que el lanzamiento de LEGO Mindstorms y continúa existiendo hasta el día de hoy. Es una colaboración entre FIRST y The Lego Group para involucrar a un grupo de edad más bajo que la FIRST Robotics Competition . [3] Los equipos FLL están formados por niños de entre 9 y 14 años y un entrenador adulto.
Durante los últimos 6 años, los miembros de la facultad de la Universidad de Tufts han desarrollado dos paquetes de software diferentes entre LabVIEW y los sistemas de adquisición de datos Lego. Estos paquetes nos permiten enseñar ingeniería con ladrillos Lego y LabVIEW a estudiantes de 5 a 50 años. La versatilidad del hardware y el software permiten una amplia variedad de posibilidades en lo que los estudiantes pueden construir y programar, desde robots y dispositivos de detección remota hasta esculturas cinéticas. A medida que los estudiantes diseñan y construyen sus proyectos, se sienten motivados a aprender las matemáticas y la ciencia necesarias para optimizar su proyecto. Tanto los estudiantes universitarios como los de jardín de infantes responden a este motivador. En el artículo, explicamos cómo diseñamos un software para complementar estos proyectos y permitir la automatización y la animación. El software utiliza LabVIEW, lo que amplía sus capacidades para los niños de jardín de infantes y los ladrillos Lego. Por último, mostraremos cómo hemos utilizado LabVIEW y la adquisición de datos Lego para enseñar ciencias a los estudiantes de primaria, ingeniería de primer año, instrumentación y experimentación, y cómo los estudiantes universitarios de último año y de posgrado han utilizado tanto el hardware como el software para resolver varios problemas de adquisición de datos.