Lego Mindstorms

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by 148.75.43.254 (talk) at 20:54, 30 November 2022 (Fixed spaces.). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Lego Mindstorms
Robot based on the NXT platform
SubjectRobotics
Licensed fromThe Lego Group
Availability1 September 1998 (1998-09-01)–31 December 2022 (2022-12-31)
Total sets91[1]
Official website

Lego Mindstorms is a hardware and software structure which develops programmable robots based on Lego building blocks. Each version includes computer Lego bricks, a set of modular sensors and motors, and Lego parts from the Technic line to create the mechanical systems. The system is controlled by the Lego bricks.

While originally conceptualized and launched as a tool for supporting educational constructivism, Mindstorms has become the first home robotics kit available to a wide audience. It has developed a community of adult hobbyists and hackers following the product's launch in 1998. In October 2022, The Lego Group announced Lego Mindstorms will be discontinued at the end of 2022.[2]

Pre-Mindstorms

Background

In 1985, Seymour Papert, Mitchel Resnick and Stephen Ocko created a company called Microworlds with the intent of developing a construction kit that could be animated by computers for educational purposes.[3]: 14  Papert had previously created the Logo programming language as a tool to "support the development of new ways of thinking and learning",[4]: xiv  and employed "Turtle" robots to physically act out the programs in the real world.[4]: 55–56  As the types of programs created were limited by the shape of the Turtle, the idea came up to make a construction kit that could use Logo commands to animate a creation of the learner's own design.[5]: 3  Similar to the "floor turtle" robots used to demonstrate Logo commands in the real world, a construction system that ran Logo commands would also demonstrate them in the real world, but allowing the child to construct their own creations benefitted the learning experience by putting them in control [6] In considering which construction system to partner with, they wanted a "low floor high ceiling" approach, something that was easy to pick up but very powerful. To this end, they decided to use LEGO bricks due to the system and diversity of pieces, and the Logo language due to the groups familiarity with the software and its ease of use.[3]: 14  LEGO was receptive to collaboration, particularly because its educational division had founding goals very similar to those of the Microworlds company. The collaboration very quickly moved to the newly minted MIT Media lab, where there was an open sharing of ideas.[3]: 14  As a sponsor of the entire lab, LEGO was allowed royalty free rights to mass-produce any technology produced by Papert, Resnick and Ocko's group; and was also allowed to send an employee over to assist with research, so they sent engineer Alan Tofte (also spelled Toft) who helped with the design of the programmable brick.[3]: 35 [7]: 74  As another part of the MIT Media Lab was community outreach, so the bricks would be used working with children in schools for both research and educational purposes.

LEGO/Logo, lego tc Logo (1985)

The first experiments of combining LEGO and the Logo programming language was called LEGO/Logo and it started in 1985.[6] Similar to the "floor turtles" used to demonstrate Logo commands in the real world, LEGO/Logo used Logo commands to animate Lego creations. It is important that children could build their own machines to program, as they would then care more about their projects and be more willing to explore the mathematical concepts involved in making them move. The LEGO/Logo system allowed children to create their own designs and experiments, offered multiple paths for learning and encouraged a sense of community. First, machines are built out LEGO. The machines are then connected to a computer and programmed in a modified version of Logo. The LEGO/Logo system introduced new types of parts for making creations such as: motors, sensors and lights. The motors and sensors are connected to an interface box which is communicates with a computer.[6] LEGO/Logo would later be commercialized by the LEGO group LEGO tc Logo.[5]: 3  It was observed that using the LEGO/Logo system, children developed a form of knowledge about the physical world that allowed those even without mathematics or verbal skills to solve problems effectively using the system.[7]: 23 

Logo Brick 1st Generation, "Grey Brick" (1986)

While LEGO/Logo was powerful, it was restricted somewhat by the requirement to have the creations attached to a computer.[5]: 3  The group began working on further iterations of the LEGO/ LOGO environment to produce a robot that could interact not only with the environment but with other robots programmed in the same system.[7]: 24  The experiments with an untethered brick (called the Logo Brick or "Grey Brick") began in the fall of 1986. To speed up the design process, the Logo Brick contained the processor chip from an Apple II computer. It ran an adapted version of LEGO/Logo written for the Apple II computer.[7]: 74  The LEGO/Logo interface box, The previous development of the group, had only two sensor ports available, which the design team observed were not always enough. To address this, they gave the Logo Brick four sensor ports. The Logo Brick was made out of a modified LEGO battery box and was about the size of a deck of cards.[7]: 74, 23  The Logo Brick was tested in schools.

LEGO Mindstorms and RCX (1996)

Development

While LEGO had been interested in mass-producing the programmable brick concept for a while, they had to wait until enough people owned personal computers and the components required to produce the intelligent brick went down in price.[3]: 25  Development of what would later be known as LEGO Mindstorms started in 1996 as the first product of the newly created home-learning division of LEGO Education (LEGO Dacta). The product's name of "Mindstorms" was intended to express the user experience of the product, it is named after Papert's book Mindstorms, as the user experience was similar to the educational constructivism concepts described in his book.[8] The LEGO home education team used the insights that MIT researchers discovered from testing the 3rd Generation Logo Brick ("Red Brick") in schools as the basis for the development of the mass-produced programmable brick.[5]: 5  The physical programmable brick was re-engineered from the ground up, as the experimental programmable bricks were not designed for robustness or cost-effective manufacturing.[3]: 19, 26  The programming language of the product was developed with help from members of the MIT Media lab. LEGO decided to use a Visual programming language for Mindstorms, inspired by the LOGOBlocks language previously used with programmable brick experiments, in order to make the product accessible to children who might be unfamiliar with programming.[3]: 29  While the technology that Mindstorms was based on was aimed towards "all children", the chosen target demographic of LEGO Mindstorms was intentionally narrow, in order to garner positive press by outselling expectations. The decision was made to aim the product towards 10 to 14-year-old boys, partially because it was LEGO's bread-and-butter demographic, and partially based on market research (not substantiated by the findings of the MIT Media Lab) which concluded that this demographic would be most attracted to computerized toys. This choice of target demographic directly informed the color of the RCX brick (which was made yellow and black to resemble construction equipment) and the sample uses for the Mindstorms kit (such as making autonomous robots).[3]: 28 

The project's at-first low profile allowed the Mindstorms team the freedom to develop the product using operating procedures then-unorthodox to the LEGO Group.[9]: 1062  Unlike traditional LEGO sets, the Mindstorms Robotics Invention System did not have a main model, nor was the play driven by storytelling. [citation needed] To bridge the gap between this new play experience and pre-existing LEGO ones, the Mindstorms team created a lot of opportunities for people interested in the product to engage with each other, such as the creation of Mindstorms.com, Mindstorms Discovery Centers, and the FIRST Lego League.[8] The creation of these experiences was done through partnerships with a relatively large amount of external groups that the Mindstorms team interacted with as equal partners, something that was uncommon for the LEGO group at the time.[9]: 1063  To ease tensions between Mindstorms and more conventional products, the project team was given autonomy from LEGO's product development process and instead reported directly to the company's senior management.[9]: 1064 

Promotion of the LEGO Mindstorms Robotics Invention System began 6 months before the product was planned to launch.[8] The product was first soft launched with the opening of the Mindstorms Discovery Center at the Museum of Science and Industry, where children could interact with the Mindstorms Robotics Invention System to complete set tasks, getting them familiar with the product.[10] The Mindstorms product was launched concurrently with LEGO Cybermaster, another LEGO product spun off from the MIT programmable brick technology that was more in line with the traditional product philosophies of the LEGO group.[9]: 1067 

Instead of being sold at toy stores, the product was sold at electronics stores like BestBuy and CompUSA, due to the relatively high cost of the set.[8]

Launch

LEGO Mindstorms was released on 1 September 1998[11] at a retail price of $199. The entire production run (of between 60-100 thousand units[12]) sold out within 3 months.[13]: 181 [3]: 30  Despite being aimed towards children, the kit quickly found an audience with adults and hackers of all ages; Lego company surveys had determined that seventy percent of Lego Mindstorms Hobbyists were adults. Shortly following the product's launch, hobbyists began sharing reverse-engineered versions of the RCX brick's Microcode and Firmware on the internet, leading to the development of alternative programming languages for the RCX such as "Not Quite C" (NQC) and alternative operating systems for the brick like legOS. The Lego Group was surprised by the products embrace by adult hobbyists, and was not sure how to respond to the sharing of proprietary code. The Mindstorms team would determine that the embrace of the product by the hacking community proved that the product was worth developing; In order to foster this burgeoning community, an official forum was established on the Lego website and a "right to hack" clause was added to end user license agreement of the Lego Mindstorms software.[13]: 181–184 

Robotics Discovery Set and Droid / Dark Side Developer Kit

The Robotics Discovery Set was a more affordable and simpler package than the Robotics Invention Set. Instead of being based on the RCX, it had its own programmable brick called the Scout. An even simpler version of the Scout would be featured in two Star-Wars-themed Mindstorm sets as well.

Scout

Lego also released a blue computer called the Scout, which has 2 sensor ports, 2 motor ports (plus one extra if linked with a Micro Scout using a fiber optic cable), and a built-in light sensor, but no PC interface. It comes with the Robotics Discovery Set. The Scout can be programmed from a collection of built-in program combinations. In order to program the Scout, a user must enable "power mode" on it. The Scout can store one program.

The Scout is based on a Toshiba microcontroller with 32 KB of ROM and 1 KB of RAM, where about 400 bytes are available for user programs. Due to the extremely limited amount of RAM, many predefined subroutines were provided in ROM. The Scout only supports passive external sensors, which means that only touch, temperature and other unpowered sensors can be used. The analog-to-digital converters used in the Scout only have a resolution of 8 bits, in contrast to the 10-bit converters of the RCX.[14]

There was a plan for Lego to create a booster set that allows you to program the Scout from a computer with software such as RCX code. However, due to the complexity of this project, it was abandoned.

The RCX can control the Scout brick using the "Send IR Message" program block. The RCX does all of the controlling, and therefore can be programmed with the PC, while the Scout accepts commands. The Scout brick must have all of its options set to "off" during this process.

Micro Scout

The Micro Scout was added as an entry-level to Lego robotics. It is a very limited Pbrick with a single built-in light sensor and a single built-in motor. It has seven built-in programs and can be controlled by a Scout, Spybotics or RCX unit using VLL. Like the Scout, the Micro Scout is also based on a microcontroller from Toshiba.

The unit was sold as part of the Droid Developer Kit (featuring R2-D2) and later the Dark Side Developer Kit (featuring an AT-AT Imperial Walker).

Robotics Invention System

The main core of the first generation of Mindstorms sets were the Robotics Invention System sets. These were based around the RCX (Robotic Command eXplorers) brick and the 9 V LEGO Technic peripherals available at the time. It also includes three touch-sensors and an optical sensor, using the technology from the earlier 9 V sensors from the pre-Mindstorms sets.

RCX

First-generation RCX programmable brick

The RCX is based on the 8-bit Renesas H8/300 microcontroller, including 32 KB of ROM for low-level IO functions, along with 32 KB of RAM to store high-level firmware and user programs. The RCX is programmed by uploading a program using a dedicated infrared interface. After the user uploads a program, the RCX can run it on its own without the need for computer access. Programs may make use of three sensor input ports and three 9 V output ports, in addition to the IR interface, enabling several RCX bricks to communicate. A built-in LCD can display the battery level, the status of the input/output ports, which program is selected or running, and other information.[15]

Version 1.0 RCX bricks feature a power adapter jack in addition to batteries. In version 2.0 (as well as later 1.0s included in the RIS 1.5), the power adapter jack was removed. Power adapter-equipped RCX bricks were popular for stationary robotics projects (such as robot arms) or for controlling Lego model trains. In the latter context, the RCX might be programmed with Digital Command Control (DCC) software to operate multiple wired trains.

The IR interface on the RCX is able to communicate with Spybots, Scout Bricks, Lego Trains, and the NXT (using a third-party infrared link sensor). The RCX 1.0 IR receiver carrier frequency is 38.5 kHz, while the RCX 2.0 IR carrier frequency is 76 kHz. Both versions can transmit on either frequency. The RCX communicates with a computer using a Serial or USB IR tower. As the RCX is discontinued, support for the interface is limited on more recent operating systems than Windows XP.

All RCX versions have a unique number printed on them, which could be registered on the now-defunct Lego Mindstorms RCX website. This was necessary to obtain technical support. The first RCX produced is marked "000001," and was on display at the Mindstorms 10th Anniversary event.[16]

The Lego RCX was available in new sets from 1998 (Lego Set 9719: Robotics Invention System 1.0) through 2003 (Lego Set 9786: Robo Technology Set, with USB cable). The original RCX 1.0 worked with existing Lego power supply products from the Lego Train theme, 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 thru 1996). Both of these products converted wall power to 12VAC, through a coaxial power connector (also called a "barrel connector"), 5.5 mm outside, 2.1 mm inside. These were sometimes sold alone and sometimes available as part of other sets such as Lego Set 4563: Load N' Haul Railroad (Year: 1991) and Lego Set 10132: Motorized Hogwarts Express (Year: 2004).[17][18][19][20][21][22]

Lego Mindstorms NXT

Lego Mindstorms NXT Kit
Robot built from the NXT kit

Lego Mindstorms NXT was a programmable robotics kit released by Lego in August 2006, replacing the first-generation LEGO Mindstorms kit.[23] The kit consists of 577 pieces, including: 3 servo motors, 4 sensors (ultrasonic, sound, touch, and light), 7 connection cables, a USB interface cable, and the NXT Intelligent Brick. The Intelligent Brick is the "brain" of a Mindstorms machine. It lets the robot autonomously perform different operations. The kit also includes NXT-G, a graphical programming environment that enables the creation and downloading of programs to the NXT. The software also has instructions for 4 robots: Alpha-Rex (a humanoid), Tri-Bot (a car), Robo-Arm T-56 (a robotic arm), and Spike (a scorpion)

Lego Mindstorms NXT 2.0

The Lego Mindstorms NXT 2.0 was launched on 5 August 2009. It contains 619 pieces (includes sensors and motors), two Touch Sensors, an Ultrasonic Sensor, and introduced a new Color Sensor. The NXT 2.0 uses Floating Point operations whereas earlier versions use Integer operation.[24] The kit costs around US$280.

Lego Mindstorms EV3

Brick of Lego Mindstorms EV3

The Lego Mindstorms EV3 is the third generation Lego Mindstorms product. EV3 is a further development of the NXT.[25][26] The system was released on 1 September 2013. The LEGO MINDSTORMS EV3 set includes motors (2 large servo motor and 1 medium servo motor), sensors (2 touch sensors, ultrasonic sensor, color sensor, infrared sensor, and the new gyro sensor), the EV3 programmable brick, 550+ LEGO Technic elements and a remote control (the Infrared Beacon, which is only on Home/Retail mode). The EV3 can be controlled by smart-devices. It can boot an alternative operating system from a microSD card, which makes it possible to run ev3dev, a Debian-based operating system.

Lego Education Spike Prime

Spike Prime was announced in April 2019.[27] While not being part of the Mindstorms product line, the basic set includes three motors (1 large 2 medium) and sensors for distance, force and color[28] a controller brick based on an STM32F413 microcontroller[29] and 520+ LEGO Technic elements.[30]

Lego Mindstorms Robot Inventor

Lego Mindstorms Robot Inventor was announced in June 2020[31] and released later in autumn. It has four medium motors from Spike Prime, two sensors (distance sensor and color/light sensor) also from Spike Prime, a Spike Prime hub with a six-axis gyroscope, an accelerometer, and support for controllers and phone control. It also has 902+ LEGO Technic elements.

Programming languages

Name Device Program Type Language type(s) Notes Links
RCX NXT EV3 Runs On Brick Remote Control
Actor-Lab Custom flowchart-like language
Ada Yes Ada Requires nxtOSEK
Ada Interface to MindStorms Ada
App Inventor Yes App Inventor Specific support for LEGO(tm) MINDSTORMS(tm) NXT sensors and motors
brickOS Yes No No C/C++ website
Ch C/C++ Interpreter Control Lego Mindstorms in C/C++ interactively without compilation
clang C, C++
CoderZ Yes Yes No Java Works with Blockly or with Java (using LejOS). Also includes an online 3D simulator[32] website
Cpp4Robots No No Yes Yes C/C++ Cpp4Robots is extension(plugin) for Microsoft Visual Studio environment. This extension allows programming of Lego EV3 in native C/C++ language and in Microsoft Visual Studio development environment. This Cpp4Robots extension works with default firmware in EV3 Brick. website
DialogOS Graphical Flowchart for voice controlled robots DialogOS combines speech recognition and speech synthesis with robotics, enabling you to build talking robots that react to your voice commands.
Enchanting Yes Drag and drop, similar to NXT-G Program your robots simply by dragging the line of functions.
EV3Basic No No Yes Yes Yes Microsoft Small Basic website
ev3_scratch Yes No Yes Scratch (programming language) Scratch code runs in the browser relaying commands to EV3 robot over Bluetooth.
FLL NXT Navigation Yes Uses NXT-G and .txt files
GCC C/C++, Objective-C, Fortran, Java, Ada, others
Gnikrap No No Yes Yes Yes JavaScript / Scratch like programming website
GNU Toolchain for h8300 C/C++, ASM
HVM Yes Development environment for the Java programming language for the Mindstorms EV3, Eclipse-based Works with Java 1.7. Works with the standard Lego firmware. Does not require a microSD card. Requires a wireless bluetooth dongle for the EV3 website
Interactive C C-style language. Language developed for the MIT Lego Robot Design Contest
jaraco.nxt Yes Yes Python Python modules providing low-level interfaces for controlling a Lego NXT brick via Bluetooth. Also includes code for controlling motors with an Xbox 360 controller using pyglet.
LabVIEW Yes Yes Yes Yes National Instruments LabVIEW visual programming language (G code) Core language used to develop Mindstorms NXT software. Can use available add-on kit to create and download programs to NXT, create original NXT blocks or control robot directly via USB or Bluetooth using NXT fantom.dll
LEGO MINDSTORMS EV3 API for .NET No No Yes No Yes .NET, WinJS and C++ A .NET API for the LEGO MINDSTORMS EV3 brick usable from desktop, Windows Phone and WinRT. With this API, you can connect, control and read sensor data from your LEGO EV3 brick over Bluetooth, WiFi, or USB. website
Lego.NET Anything that can compile to CIL, works best with C# Does not come with a compiler, converts CIL to machine code
Lego::NXT Yes No Yes Perl Set of Perl modules providing real-time low-level control of a Lego NXT brick over Bluetooth.
LegoLog Prolog Uses an NQC program to interpret commands send from the PC running the Prolog code
LegoNXTRemote Yes No Yes Objective-C Remote control program for remotely operating and programming a Lego NXT Brick. Supports NXT 2.0 and 1.0, sensors, all 3 motors, automatic "steering" control, and running preloaded programs.
leJOS Yes Yes Yes Yes Yes Java A java based system for advanced programmers can handle most sensors and things like GPS, speech recognition and mapping technology. Can be interfaced with the Eclipse IDE or run from the command line
Lestat C++ Allows you to control the NXT directly from any C++ program in Linux.
librcx C/C++ A library for GCC
Logitech SDK Visual Basic, Visual C++ Can be combined with an RCX control library such as spirit.ocx from the MindStorms SDK to make use of the Lego Cam
Microsoft Visual Programming Language (VPL) Yes No Yes Graphical flowchart, based on .NET With the Microsoft Robotics Studio, it uses a native NXT program msrs to send and receive messages to and from a controlling program on a computer via Bluetooth
Mindstorms SDK Visual Basic, Visual C++, MindScript, LASM You do not need VB to use the VB features as MS Office comes with a cut down version of VB for making macros
Monobrick Yes Yes Yes C# .NET 4.5. Firmware running from SD card. website
NQC Yes Yes NQC, a C-like language
NXT++ C++ Allows controlling the NXT directly from any C++ program, in Visual Studio, Windows.
NXT_Python Yes No Yes Python NXT_Python is a package for controlling a LEGO NXT robot using the Python language. It can communicate via USB or Bluetooth.
NXT-Python Yes No Yes Python Based on NXT_Python, includes additional advanced features, support for around 30 sensors, and multiple brick connection backends. Works on Windows, Linux, Mac.
NXTGCC Assembly, C, makefiles, Eclipse, etc. The first GCC toolchain for programming the Lego Mindstorms NXT firmware.
nxtOSEK C/C++
OCaml-mindstorm OCaml Module to control LEGO NXT robots using OCaml through the Bluetooth and USB interfaces.
OnScreen A custom language which can be programmed directly on the RCX
pbForth Yes Forth No longer developed.
pbLua Yes API for the Lua programming language for the Mindstorms NXT, text-based pBLua: ... is written in portable C, with minimal runtime requirements; can be compiled on the fly on NXT; is a small, easy to read, and easy to write language; has extensive documentation available online and in dead-tree format, and a very friendly newsgroup website
PBrickDev PBrickDev, a flowchart based language. Has more functionality than the RIS language, such as datalogs and subroutines/multithreading.
PRO-BOT A kind of Visual Basic/spirit.ocx-based language Designed for robots which are in contact with the workstation at all times
Processing Yes Java (Simplified / programmed C-style) Processing (programming language) is an open source programming language and environment for people who want to program images, animation, and interactions. It is used by students, artists, designers, researchers, and hobbyists for learning, prototyping, and production. To control the NXT with Processing you can use the NXTComm Processing library developed by Jorge Cardoso.
QuiteC C A library for use with GCC and comes with GCC for Windows.
RCX Code Yes RCX Code, a custom flowchart-based language Included in the Mindstorms consumer version sold at toystore
ROBOLAB Yes A flowchart language based on LabVIEW This is the programming environment offered to schools who use MindStorms, supports the Lego Cam. The programming structure simulates a flowchart design structure almost icon by icon. Therefore, it helps users a great deal in terms of translating from a flowchart design to Robolab icons.
RoboMind Simple educational scripting language available from Arabic to Ukrainian. The RoboMind learning environment allows to quickly develop and test scripts for a virtual robot environment. The scripts can then directly be transferred to a Lego Mindstorms NXT robot. It works on the standard firmware.
RoboRealm A multi-platform language that works with IRobot Roomba, NXT, RCX, VEX, and many other popular robotic sets. This language is also capable for video processing using a webcam, this gives your robot excellent vision since it can filter out certain colors, lock-on to a certain area of color, display variables from the robot or computer, and much more. The software works with keyboard, joystick, and mouse.
Robot JavaScript No Yes Yes Yes JavaScript A compiler that compiles JavaScript code for EV3 robots. Includes syntax highlighting, code sharing, over 100 example programs, and verbose compiler messages. Object oriented language. Free. website
ROBOTC Yes Yes Yes Yes An Integrated development environment targeted towards students that is used to program and control LEGO NXT, VEX, RCX and Arduino robots using a programming language based on the C programming language. ROBOTC gives the ability to use a text-based language based on the C language. It includes built-in debugger tools, as well as (but not limited to) code templates, Math/Trig operations (sin, cos, tan, asin, acos... etc.), user-friendly auto-complete function built into the interface, built-in sample programs. This deserves a special note for its debugging tool. For any developer, you will know how important it is to have a good debugging tool. Among all other robotics programming languages which support Mindstorms platform, RobotC's debugging environment does deserve a special note; although it is not free.
Robotics.NXT Yes Yes Haskell A Haskell interface over Bluetooth. It supports direct commands, messages and many sensors (also unofficial). It has also support for a simple message-based control of a NXT brick via remotely executed program (basic NXC code included).
ROS A Linux based library for writing robots. The stack "nxt" provides interface with the NXT.
ruby-nxt Yes Yes Ruby Provides low-level access to the NXT via Bluetooth as well as some preliminary high-level functionality.
RWTH – Mindstorms NXT Toolbox Yes Yes MATLAB Interface to control the NXT from MATLAB via Bluetooth or USB (open-source).
Simulink (LEGO MINDSTORMS NXT Support) Yes Simulink Provides a one-click rapid programming tool for the NXT. C code is automatically generated from a graphical Simulink model. The code is then deployed and downloaded onto the NXT, from where it can be run. The Mathworks provides an array of graphical blocks that represent the various sensors and actuators that the NXT uses.
SqLego Squeak
Swift / Robotary Yes Yes Swift (programming language) Robotary is a Mac robotics studio that uses the Swift programming language. website
TclRCX Yes Tcl
Terrapin Logo LOGO
TinySoar Soar An implementation of the Soar artificial intelligence architecture that runs on the RCX brick. Soar incorporates acting, planning, and learning in a rule-based framework.
TinyVM Yes Java A predecessor to the lejos language. An open source Java based replacement firmware for the Lego Mindstorms RCX microcontroller.
Transterpreter (The) Occam
TuxMinds (Linux) GUI for various distributions, an open source IDE based on Qt. Supports a lot of bots. RCX, NXT and Asuro are predefined. With the XML-based configuration file almost any kind of bot (or microcontroller) can be added. Own equipment can be added in the same manner.
URBI by Gostai for Lego Mindstorms NXT URBI, C++, Java, Matlab Easy to use parallel and event-driven script language with a component architecture and opensource interfaces to many programming languages. It also offers voice/speech recognition/synthesis, face recognition/detection, Simultaneous localization and mapping, etc.
Vision Command Yes RCX Code The official programming language for use with the Lego Cam, that allows you to control your robot with color, motion, and flashes of light.
XS Lisp

Use in education

Mindstorms kits are also sold and used as an educational tool, originally through a partnership between Lego and the MIT Media Laboratory.[33][34] The educational version of the products is called Mindstorms for Schools or Mindstorms Education, and later versions come with the ROBOLAB GUI-based programming software, developed at Tufts University[35] using the National Instruments LabVIEW as an engine.

See also

References

  1. ^ "LEGO is discontinuing MINDSTORMS in 2022". Brick Fanatics. Retrieved 26 October 2022.
  2. ^ a b c d e f g h i Beland, Cristopher (15 December 2000). LEGO Mindstorms: The Structure of an Engineering (R)evolution (conference paper). Docket 6.399J Structure of Engineering Revolutions. Archived from the original on 27 January 2021. Retrieved 25 March 2019.
  3. ^ a b Papert, Seymour (1993) [1980]. Mindstorms: Children, Computers, and Powerful Ideas. New York: Basic Books. ISBN 978-0-465-04674-4.
  4. ^ a b c d "To Mindstorms and Beyond: Evolution of a Construction Kit for Magical Machines" (PDF). MIT Media Laboratory. Archived (PDF) from the original on 22 August 2017. Retrieved 15 December 2017.
  5. ^ a b c Resnick, Mitchel; Ocko, Stephen (1 January 1991). "LEGO/Logo: Learning through and about design". MIT Media Lab (Thesis). Massachusetts Institute of Technology (MIT). Retrieved 13 August 2021.
  6. ^ a b c d e Martin, Fred (August 1988). "Children, Cybernetics, and Programmable Turtles" (PDF) (Thesis). Massachusetts Institute of Technology (MIT). Retrieved 13 August 2021.
  7. ^ a b c d Askildsen, Tormod (4 December 2018). "LEGO Mindstorms reflections – What happened before the announcement in January 1998". lan.Lego.com. The LEGO Group. Archived from the original on 26 March 2019. Retrieved 26 March 2019.
  8. ^ a b c d Oliver, David; Roos, Johnathan (2003). "Dealing with the unexpected: Critical incidents in the LEGO Mindstorms team". Human Relations. 56 (9): 1057–1082. doi:10.1177/0018726703569002. S2CID 145417935. Archived from the original on 27 January 2021. Retrieved 26 March 2019.
  9. ^ Hocker, Matt (3 February 2020). "A History of LEGO Education, Part 3: Mindstorms over matter [Feature]". The Brothers Brick. Retrieved 15 August 2021.
  10. ^ "Retailers Brace for Overwhelming Consumer Demand for LEGO MINDSTORMS Robotics Invention System" (Press release). Enfield, CT: The Lego Group. 26 August 1998. Archived from the original on 6 December 1998. Retrieved 3 July 2022.
    "LEGO MINDSTORMS announced today that the very first units...will arrive...during the first week of September."
  11. ^ The exact number of sets in the first production run varies between sources
  12. ^ a b Robertson, David (2013). Brick by Brick: How Lego rewrote the rules of innovation and conquered the global toy industry. United States: Crown Publishing. pp. 184–185. ISBN 9780307951618. Archived from the original on 29 November 2020. Retrieved 27 January 2021.
  13. ^ "ROBOTICS DISCOVERY SET - INFO FOR HACKERS". 10 February 2001. Archived from the original on 10 February 2001.
  14. ^ Kekoa Proudfoot (1999). "RCX Internals". mralligator.com. Archived from the original on 11 November 2018. Retrieved 14 December 2018.
  15. ^ "DSC03489.jpg". flickr.com. 20 November 2008. Archived from the original on 17 November 2016. Retrieved 4 April 2018.
  16. ^ "Peeron LEGO© Inventories - Lego Product 70931: Electric Train Speed Regulator 9V Power Adaptor for 120v 60Hz - US version (Years: 1991 thru 2004)". peeron.com. Peeron LEGO© Inventories. Retrieved 10 October 2021.
  17. ^ "Peeron LEGO© Inventories - Lego Product 70938: Electric Train Speed Regulator 9V Power Adaptor for 230v 50Hz - European version (Years: 1991 thru 1996)". peeron.com. Peeron LEGO© Inventories. Retrieved 10 October 2021.
  18. ^ "Peeron LEGO© Inventories - Lego Product 884: Electric Mindstorms RCX - Complete Assembly (Years: 1998 thru 2003)". peeron.com. Peeron LEGO© Inventories. Retrieved 10 October 2021.
  19. ^ "Lego RCX presentation - Clark Wood - BrickCon 2013". cementhorizon.com. BrickCon. Retrieved 10 October 2021.
  20. ^ "FIRST® LEGO® League Programming and Design Suggestions - Power". boardsailor.com. The Los Altos Robotics Community. Retrieved 10 October 2021.
  21. ^ "LEGO® MINDSTORMS™ Internals". crynwr.com. Crynwr Software. Retrieved 10 October 2021.
  22. ^ "What's NXT? LEGO Group Unveils LEGO MINDSTORMS NXT Robotics Toolset at Consumer Electronics Show". Press Release. LAS VEGAS: LEGO Company. 4 January 1986. Archived from the original on 8 July 2009. Retrieved 3 December 2008.
  23. ^ "Lego Robotics FAQ". 2009. Archived from the original on 8 August 2010. Retrieved 2 March 2010.
  24. ^ "EV3-Overview". Archived from the original on 24 June 2013.
  25. ^ Crook, Jordan. "LEGO Mindstorms EV3: The Better, Faster, Stronger Generation of Robotic Programming". TechCrunch. Archived from the original on 23 October 2017. Retrieved 22 May 2015.
  26. ^ "A new hands-on learning approach for classrooms, announced today". www.lego.com. Archived from the original on 10 August 2020. Retrieved 8 January 2021.
  27. ^ "LEGO® Education SPIKE™ Prime Set 45678 | LEGO® Education | Buy online at the Official LEGO® Shop US". www.lego.com. Archived from the original on 3 December 2020. Retrieved 8 January 2021.
  28. ^ "gpdaniels/spike-prime". 25 January 2021. Archived from the original on 25 December 2020. Retrieved 8 January 2021 – via GitHub.
  29. ^ Porter, Jon (15 June 2020). "Lego's new Mindstorms kit lets kids build their own walking, talking robots". The Verge. Retrieved 7 September 2021.
  30. ^ "New LEGO® MINDSTORMS® Robot Inventor lets creators build and bring to life anything they can imagine". www.lego.com. Archived from the original on 15 January 2021. Retrieved 8 January 2021.
  31. ^ "CoderZ, an online learning environment for MINDSTORMS robotics". www.thenxtstep.com. Archived from the original on 14 June 2017. Retrieved 30 May 2017.
  32. ^ "The MIT Programmable Brick". Epistemology and Learning Group. Massachusetts Institute of Technology. 13 February 1998. Archived from the original on 25 October 2005. Retrieved 1 October 2013.
  33. ^ "Programmable Bricks". Projects. MIT Media Lab. Archived from the original on 21 October 2013. Retrieved 3 December 2008.
  34. ^ Erwin, Ben; Cyr, Martha; Rogers, Chris (2000). "LEGO Engineer and RoboLab: Teaching Engineering with LabVIEW from Kindergarten to Graduate School" (PDF). International Journal of Engineering Education. 16 (3): 181–192. Archived (PDF) from the original on 23 September 2013. Retrieved 1 October 2013. For the past 6 years, faculty members at Tufts University have developed two different software packages between LabVIEW and Lego data acquisition systems. These packages allow us to teach engineering with both Lego bricks and LabVIEW to students from 5 to 50 years old. The versatility of the hardware and software allow a wide variety of possibilities in what students can build and program, from robots and remote sensing devices to kinetic sculptures. As students design and build their projects, they are motivated to learn the math and science needed to optimize their project. Both college students and kindergartners respond to this motivator. In the paper, we explain how we designed software to complement these projects in allowing automation and animation. The software uses LabVIEW, extending its capabilities to kindergartners and Lego bricks. Finally, we will show how we have used LabVIEW and Lego data acquisition to teach elementary school science, freshman engineering, instrumentation and experimentation, and how college seniors and graduate students have used both the hardware and software to solve various data acquisition problems

Further reading

External links