Ohjelmoitavan LEGOn historiaa

Artikkeli on alun perin julkaistu Skrollin numerossa 2013.2.

LEGO-palikoiden käyttö ohjelmoinnin opetusvälineenä yleistyy parhaillaan Suomen kouluissa. Robottisarjojen käyttö opetustarkoituksiin ei ole uusi idea: ensimmäiset ohjelmoitavat LEGOt julkaistiin jo 1986. Skrolli tutustuu LEGO-ohjelmoinnin historiaan ja käytännön sovelluksiin.

Ensimmäinen ohjelmoitava LEGO oli vuonna julkaistu 1986 LEGO TC Logo, joka käytti Seymour Papertin Massachusetts Institute of Technologyn Media Labissa lasten ja nuorten opetukseen kehittämää Logo-kieltä. Se pohjautui LCSI:n LogoWriteriin, joka oli jo aiemmin levinnyt koulumaailmaan myös Suomessa. Tuotteen toi markkinoille kouluille tarkoitettuja rakennussarjoja valmistava, kuusi vuotta aiemmin perustettu LEGOn Institutional Division.

Logoa käytettiin myös vuonna 1993 julkaistussa Control Labissa. Sen suosio kasvoi tasaisesti. Control Labeja tuli paikoitellen myös Suomen kouluihin, joissa ne tunnettiin myös ID:n uudella nimellä LEGO Dactana. Niiden käyttöä opetuksessa tutkittiin Oulun yliopistossa 90-luvun loppupuolella.

Control Labin rajoitteena oli jatkuva langallinen yhteys tietokoneen sarjaporttiin. Sillä ei voinut tehdä itsenäisesti liikkuvia mekanismeja vaan kiinteitä järjestelmiä, kuten hissejä tai liikennevaloja. Lisäksi monet opettajat kokivat ohjelmointiympäristön liian vaikeaksi. Tekstipohjainen ympäristö oli herkkä kirjoitusvirheille, eikä ympäristö ollut tarpeeksi kehittynyt auttaakseen aloittelevia ohjelmoijia muistamaan oikeita käskyjä.

Liikkuvien legorobottien kehitys oli aloitettu MIT:ssä jo 1987, jolloin ohjelmoitava legopalikka, The 6502 Programmable Brick, näki päivänvalon. Jatkoprojektit huipentuivat, kun Model 120, The Red Brick, valmistui 1994.

Tie kehittelystä tuotteeksi

Model 120 oli epäkaupallinen prototyyppi, mutta näytti ulkoisesti varsin valmiilta tuotteelta. Sen ominaisuudet olivat samankaltaisia kuin nykyisissä LEGOn älypalikoissa. Punatiileen sai kiinni kuusi anturia ja neljä moottoria. Virran näille antoi sisäinen akku. Kontrolleina toimivat infrapunavastaanotin, kaksi nappia ja nuppi, joita täydensi pieni lcd-näyttö ja kaiutin. Logo-tulkkia pyöritti Motorola 6811 -prosessori varustettuna 32 kilotavun keskusmuistilla.

MIT:n prototyypit eivät kuitenkaan päässeet myyntiin asti. LEGO kehitti kotikäyttäjille Logon tilalle graafisen RCX Code -ohjelmistoympäristön, ja yhdessä Tufts Universityn kanssa National Instruments LabViewiin pohjautuvan, kouluille tarkoitetun RoboLabin.

Vuonna 1998 RCX ja RoboLab julkaistiin uuden robottialustan kanssa. Kaupalliseksi nimeksi tuli Mindstorms: Robotics Invention System, kouluille tarkoitetusta puolestaan RoboLab: Mindstorms for Schools. Sarja tunnetaan myös ikonisen keltaisen Robotic Command eXplorer -keskusyksikön eli RCX:n nimellä.

RCX oli suunnittelultaan hyvin samankaltainen MIT:n mallin kanssa, joskin hieman rajoitetumpi. Siihen sai kytkettyä kolme moottoria ja kolme anturia. Kontrolleina toimivat infrapunavastaanotin ja neljä nappulaa. Yksikössä oli LCD-näyttö, mutta ei akkua. Se käytti kuutta AA-paristoa, joskin ensimmäisiin versioihin sai myös ulkoisen virtalähteen. Vaikka yhteistyö MIT:n kanssa oli päättynyt, LEGO nimesi sarjan kunnianosoituksena Mindstormsiksi Seymour Papertin samannimisen kirjan mukaan.

Ensimmäinen sarjatuotettu ohjelmoitava LEGO oli valtava menestys ja sille tehtiin paljon epävirallisia firmwareja. Lisäksi RCX:lle tehtiin ohjelmistoympäristöjä lukuisille kielille, esimerkiksi C:lle, Javalle ja Matlabille.

Suomen kouluihin LEGO-robotiikkaa

RCX:n ensimmäisiä käyttäjiä Suomessa oli Oulun yliopistosta Exeterin yliopistoon siirtynyt Esa-Matti Järvinen. Hänet palkattiin 2001 Ylivieskan AMK:n perustamaan teknologiakeskus Teknokkaaseen. Jo vuonna 2002 järjestettiin Oulussa Suomen Tekoälyseuran, VTT Elektroniikan ja Oulun yliopiston voimin ensimmäiset Robocup Junior -kisat, jossa lajeina olivat jalkapallo, pelastus ja tanssi.

Seuraavina vuosina kisat järjestettiin Heurekassa ja uudelleen Oulussa, ja ne vakiintuivat jokavuotisiksi. RCJ:n päätyminen yleisimmäksi kilpailutapahtumaksi oli Pohjois-Euroopassa harvinaista, sillä LEGO järjestää myös omaa First LEGO League -tapahtumaansa. Esimerkiksi Ruotsissa ja Virossa FLL on saanut suuren suosion.

RCX uusittiin täysin vuonna 2006, kun Mindstorms NXT julkaistiin. Sekä kaupalliset että kouluversiot käyttivät uutta graafista NXT-G-ympäristöä, joka pohjautui vieläkin LabViewiin, mutta ei ollut yhteensopiva RoboLabin kanssa. Sarja muuttui ulkoisesti suuresti, sillä uudessa sarjassa käytetään pääasiassa nappulattomia, moderneista tekniikkalegoista tuttuja palkkeja. Myös kaikki sähköiset osat kiinnitettiin uudella liitännällä, joskin kouluversion mukana toimitettiin adaptereita vanhojen RCX-osien käyttämiseksi.

NXT:n suosio näkyy sensoreiden tarjonnassa. Niitä voi ostaa LEGOn lisäksi kolmelta muultakin yritykseltä. Yksinkertaisimmat näyttävät ulkopuolisesti virallisilta osilta, mutta sisältävät kalliimpia sensoreita, kuten kompassin tai kiihtyvyyssensorin. Mutta tarjolla on myös osia LEGOn maailman ja yleisen elektroniikan rajapinnan hämärtämiseksi, kuten adaptereita LEGOn kaapeleille ja tavalliselle koekytkentälaudalle. Koska NXT:n liittimien tiedot ovat julkisia, niiden avulla kuka tahansa voi liittää keskusyksikköön oman analogisen tai I2C:tä käyttävän sensorinsa.

RCX oli viimeisenä vuotenaan ehtinyt levitä myös korkeakouluopetuksen puolelle. Turun yliopistossa LEGOt oli otettu käyttöön yhteistyöprojektissa Uppsalan yliopiston kanssa. Kurssilla loppuvaiheen opiskelijat suunnittelevat Internetin läpi käytettävän robotin, joka pystyy tutkimaan tuntematonta aluetta yhteistyössä toisen robotin kanssa. Esikuvana toimivat tälläkin hetkellä Marsin pintaa kartoittavat robotit. Hyvien kokemuksien jälkeen Turussa LEGOt on otettu käyttöön myös fukseille insinöörityöhön johdattavalla kurssilla.

Myös Helsingin Yliopisto opettaa fukseille legoilla ohjelmoinnin perusteita, ja käytäntö on levinnyt sieltä myös Metropoliaan. Valkoisiin NXT-robotteihin voi törmätä myös Tampereen ja Lappeenrannan teknillisillä yliopistoilla, jossa sulautettujen järjestelmien kursseilla liikkuvat laitteet on huomattu motivoivemmiksi kuin perinteiset kehitysalustat.

Tämä motivoiva vaikutus on myös keskeisimpiä syitä, miksi Opetushallitus on rahoittanut parina viime vuonna LEGOjen hankintaan kymmeniin eri peruskouluihin. Robotiikan opetus on vaatinut aiemmin hyvin suurta kiinnostusta opettajilta, sekä onnea oikeiden kontaktien suhteen. Nyt uutta teknologiaa tuodaan kuitenkin opetukseen mukaan määrätietoisesti.

Uutta on yhä luvassa

LEGOkaan ei lepää rattaillaan. Viime vuonna esiteltiin ja julkaistiin uusi versio Mindstormsista: EV3. Ulkoisesti se muistuttaa NXT:tä hyvin pitkälti, mutta sisus on päivittynyt reippaasti. Sekä muistia että prosessointitehoa on moninkertaisesti, joten EV3:n sisällä pyörii täysiverinen Linux-järjestelmä.

Ohjelmointiympäristöjen mahdollisuudet laajenevat valtavasti, kun vanhemman sulautetun kehitysympäristön sijaan mitä tahansa ARMille siirrettyä Linux-ohjelmaa voidaan käyttää suoraan. EV3 sisältää microSD-muistipaikan, yhden lisäpaikan moottoreille ja USB-portin, johon voi kytkeä vaikka wlan-mokkulan.

Uusia sensoreita ovat ennen vain ulkopuolisten valmistajien tekemät gyroskooppi ja IR-lähetinvastaanotin. Myös kaikki vanhat sensorit toimivat myös uudessa keskusyksikössä. EV3:n ohjelmisto seuraa uusia trendejä, ja mukana tulee suoraan LEGOn viralliset Android ja iOS-sovellukset. Itse rakennusohjeetkin ovat jatkossa paperin lisäksi saatavana myös tabletilla pyöriteltävinä 3D-malleina.

Juttua varten haastateltiin Erkki Hautalaa Espoon Vanttilan koulusta, Petteri Kartimoa Rovaniemen Saaren koulusta, Arto Karsikasta Jokilaakson koulutuskuntayhtymästä, Tero Ahosta Lappeenrannan teknillisestä yliopistosta, Seppo Virtasta ja Ville Taajamaa Turun yliopistosta ja Simo Silanderia Metropoliasta.

Lisätietoja: http://www.lego.com/fi-fi/mindstorms/products/ev3/31313-mindstorms-ev3/


Teksti: Tomi Pieviläinen
Kuvat: Risto Mäki-Petäys