Mindstorms | |
Teema | |
Elinikä | 1997-nykypäivä |
Järjestelmä | TECHNIC |
Yläteema | TECHNIC |
Mindstorms on The LEGO Groupin valmistama tuotesarja, josta voi rakentaa erilaisia robotteja. Nämä robotit rakentuvat keskuksena toimivasta ohjelmoitavasta tietokoneesta eli niin sanotusta älypalikasta, siihen liittyvistä moottoreista ja antureista sekä tavanomaisista TECHNIC-osista. Älypalikka sisältää sisäinen tietokoneen, anturiportteja sekä sähkömoottoriportteja joilla voidaan ohjata erilaisia moottoreita. Ensimmäinen versio, RCX, julkaistiin vuonna 1997. Seuraava versio, NXT, julkaistiin vuonna 2006.
Mindstorms on myynnissä sekä tavallisissa lelukaupoissa kuin myös kouluihin tarkoitetulla LEGO Education-myyntikanavalla. Useimmat setit ovat myynnissä vain toisessa myyntikanavassa.
Historia[]
RCX[]
Vuonna 1997 ilmestyi Mindstorms-sarjan ensimmäinen virallinen setti, Robotic Innovation System (RIS). Tähän 727 palikan settiin kuului tavallisten TECHNIC- ja SYSTEM-palikoiden lisäksi moottoreita sekä erityinen RCX-älypalikka siihen liittyvine ohjauskomponentit (esimerkiksi johto sen kiinnittämiseen tietokoneeseen). Mukana tuli myös RIS-ohjelmiston ensimmäinen versio CD-levyllä. RIS-ohjelmistolla pystyy tekemään konekielisiä ohjelmia joita RCX-palikka toteuttaa itsenäisesti.
RCX-palikka itsessään sisältää seuraavat elementit:
- Hitachi H8 mikro-ohjain joka sisältää 32 kilobittiä RAM muistia
- 16 kilobittiä ROM muistia
- Kolme moottorin ohjaukseen käytettyä porttia
- Kolme antureille tarkoitettua porttia
- Infrapuna-anturi jonka avulla voidaan tietokoneelta lähettää valmiit ohjelmat RCX-palikalle
- Näyttö
RCX-palikasta ja sen mukana tulleesta RIS-ohjelmistosta tuli uusi versio vuonna 1999. Version numero oli 1.5 ja se sisälsi useita erilaisia muutoksia palikan ja ohjelmiston ohjelmakoodiin mutta palikkaan tai moottoreihin ei tullut mitään muutoksia. Versio numero 2 tuli vuonna 2001.
NXT[]
NXT on RCX-älypalikan seuraaja joka käyttää uudenlaisia johtoja eikä ole suoraan yhtenäinen RCX-aikakauden osiin. NXT julkaistiin vuonna 2006. NXT 2.0 julkaistiin vuoden 2009 syksyllä.
Setit[]
1998[]
- 9709 RCX Programmable LEGO Brick - v1
- 9713 Infrared Transmission Tower - v1
- 9719 Robotics Invention System - v1
- 9730 Robo Sports - v1
- 9732 Extreme Creatures -v1
1999[]
- 3803 Robotics Invention System Upgrade Kit - v1.5
- 9735 Robotics Discovery Set - v1
- 9738 RCX Remote Control Unit - v1
- 9747 Robotics Invention System - v1.5
- 9748 Droid Developer Kit - v1, Star Wars aiheinen setti, jonka mukana tuli erilainen versio RCX-palikasta
- 9755 Temperature Sensor - v1
- 9756 Rotation Sensor - v1
- 9757 Touch Sensor - v1
- 9758 Light Sensor - v1
2000[]
- 3801 Ultimate Accessory Set - v1.5
- 9731 Vision Command - v1.5
- 9736 Exploration Mars - v1.5
- 9739 Micro Scout PC Link - v1.5
- 9754 Dark Side Development Kit - v1.5, Star Wars aiheinen setti, jonka mukana tuli erilainen versio RCX-palikasta
- 9917 DCP Sensor Connector Cable - v1.5
2001[]
- 3800 Ultimate Builders Set - v1.5
- 3804 Robotics Invention System V2.0 - v2
- 3805 Robotics Invention System Upgrade Kit - v2
2004[]
- 9889 Temperature Sensor - v1
- 9911 Touch Sensor and Leads - v1
2006[]
- 8527 Mindstorms NXT - NXT
- 8528 Converter Cables for Mindstorms NXT - NXT, RCX v1.5
- 8529 Connector Cables for Mindstorms NXT - NXT, RCX v1.5
- 9798 Rechargeable Battery - NXT
- 9833 Transformer - NXT
- 9841 NXT Intelligent Brick - NXT
- 9842 Interactive Servo Motor - NXT
- 9843 Touch Sensor - NXT
- 9844 Light Sensor - NXT
- 9845 Sound Sensor - NXT
- 9846 Ultrasonic Sensor - NXT
- 9847 Bluetooth Dongle - NXT
- MS1034 Compass Sensor for Mindstorms NXT - NXT
2007[]
- 9797 Mindstorms Education Base Set - NXT
- MS1038 Colour Sensor for Mindstorms NXT - NXT
- MS1040 Accelerometer Sensor for Mindstorms NXT - NXT
- MS1042 Infrared Seeker - NXT
- MS1044 Gyroscopic Sensor - NXT
- MS1046 Infrared Link Sensor - NXT
- 4524081 Mindstorms NXT CD - NXTv1.1
2008[]
- MS1048 RF ID Sensor - NXTv1.1
- MS1049 Keyfob Transponder - NXTv1.1
2009[]
- 8547 Mindstorms NXT 2.0 - NXTv2
- 9749 NXT Temperature Sensor - NXTv2
- 10287 Intelligent NXT Brick - NXTv2
Media[]
Ottaen huomioon Mindstorms-teeman erilaiset lähtökohdat verrattuna muihin LEGO teemoihin, on ymmärrettävää että siitä on tehty monia kirjoja, jotka muiden teemojen kirjallisuudesta eroten ovat täysin asiapitoisia. Useimmat niistä kertovat siitä kuinka RCX and NXT palikoilla voidaan rakentaa tietynlaisia rakennelmia. Kirjat sisältävät hieman rakennusohjeita, mutta ohjeet eivät ole kirjojen pääasiat. Iso osa kirjoista käytetään ohjelmointipuolen selittämiseen.
Ohjelmoitavuus[]
Sekä RCX- että NXT-keskuspalikka ovat ohjelmoitavissa. Yleisin tapa ohjelmoida keskuspalikoita on käyttää setin mukana tulevaa koodausohjelmaa. Ohjelmat rakennetaan erilaisista palikoista, joiden avulla voidaan määritellä esimerkiksi tiettyjen moottorien pyöriminen anturien luvut, ynnä muuta. Näin voidaan esimerkiksi rakentaa ohjelma, joka vierittää keskuspalikkaa moottorien avulla pyörittämällä renkaita X kierrosta ja sitten lukea kosketusanturin arvon. Lego Group on julkaissut jokaiselle keskuspalikalleen software development kit:n[1] ja näiden avulla ovat Mindstorms-fanit tehneet omia ohjelmia päästäkseen eroon alkuperäisten ohjelmien rajoitteista (esim. ehtolauseiden poissa-olo). Esimerkki tällaisesta ohjelmasta on Bricx Command Center (BricxCC), jonka avulla voi RCX-keskuspalikkaan lähettää C-kieleen perustuvalla NQC-kielellä tehtyjä ohjelmia. Näitä ohjelmia pyörittää keskuspalikassa keskuspalikan oma sisäinen ohjelmisto (firmware).
Koska keskuspalikka voi kommunikoida tietokoneen avulla, on tiedon lähettämisen keskuspalikkaan mahdollista myös muokata keskuspalikan sisältöä. Tämän kaksisuuntaisen yhteyden avulla on mahdollista poistaa alkuperäinen firmware ja korvata se uudella. Tunnetuimmat korvaajat ovat Lejos joka korvaa firmwaren Java-kieltä ymmärtävällä, Brickos joka korvaa firmwaren C-kieltä ymmärtävällä ja pbForth joka korvaa firmwaren Forth-kieltä ymmärtävällä.
Keskuspalikan ohjelmat, jotka on tehty kehittyneellä kielellä, kuten C:llä, on mahdollista tehdä tehokkaita ehtolauseisiin perustuvia robotteja, jotka voivat reagoida tilanteisiin reaaliaikaisesti. On myös mahdollista kehittää keskuspalikoiden kommunikaatiota ja työn jakoa.