Markku Leino
Viitasaari & Lounais-Suomen LUMA-keskus
Ev3 on uudempi, mutta jos varastosta löytyy Nxt2, sitä kannattaa ehdottomasti yhä käyttää.
Ev3:n ohjelmointiympäristö on mukavampi käyttää, mutta Nxt2 toimii uudella Ev3-G:llä. Katso ohjeet ultraäänisensorin ja valosensorin käyttöön Luntista.
Legot ovat tuttu ja turvallinen oppimisympäristö ainakin nuoremmille (ja vanhemmille) oppijoille. Oppimispolku menee
Alakouluissa, lukioissa ja korkeakouluissa legot soveltuvat erittäin hyvin opetukseen. Yläkouluissa olen havainnut ongelmia — liian lapsellisia? Ota yhteyttä hyvistä yläkoulun käytänteistä. Niitä riittää, esimerkiksi teknologiakursseilta.
Perustehtäviä legoroboteille
Helppo koodata; suoraan mäkeä ylös. Lisää myös alastulo joko siltamaisella rakenteella tai kääntämällö robotti ylhäällä.
Optimaalinen geometria ylöspäin ja alaspäin on erilainen.
Sumo on mielenkiintoinen, mutta mukava kaksintaistelu. Robotit eivät yleensä hajoa, mutta oppilaat innostuvat. Peruskoodaus sumoon on helppo;
Sumo on Suomessa kisalaji.
Viivanseurannassa oikeasti seurataan viivan toista reunaa. Tässä riittää mielenkiintoa pidemmäksikin ajaksi.
Yksinkertaisin on kaksitasoinen viivanseuranta. Sen oppilaat osaavat tehdä yksin. Tasoja voi lisätä, vaikka kolmi- tai viisitasoiseksi.
Kolmitasoisessa robotti kulkee suoraan, jos anturin arvot ovat sopivat.
Rahalla voit lisätä toisen valosensorin; hevosella saa myös valmiita viivanseurantasensoreita.
Verrannollissa viivanseurannassa on äärettömän monta tasoa.
Miksi tyytyä muutamaan, kun meillä on suora (verrannollisuuskerroin) käytettävissä?
Lisätään viivanseuraajarobottiin termi, mikä muistelee, kuinka paljon virhettä (eli kuinka paljon on käännytty) tähän mennessä.
Muisti parantaa hieman robotin suorituskykyä, mutta vaikeuttaa parametrien arvailua. Mahdollisesti robotti korjaa liikaa.
Viivan käyryyttä voidaan ennustaa edellisen valoanturin lukeman perusteella. Otetaan se huomioon käännössä, ja johan robotti kulkee hienosti ja nopeaan.
PID-robotti kannattaa näyttää oppilaille, innostuvat usein. Joku ymmärtää tai saa idean, mutta itse koodaus voi olla vaikeaa.
Move steering ja Move tank -blokeissa on sisäänrakennettu PID robotin suorassa kulkemiselle. Se on tehty moottoreille B ja C, joita siis kannattaa aina käyttää kulkemismoottoreihin. Käytä moottoreita A ja D käsiin ja muihin työkaluihin.
Sokkeloalgoritmi löytyy vaikka Umberto Econ Ruusun nimestä. Robotit tykkäävät siitä.
Ohessa pätkä Pekka Piholan lokakuun alussa julkaistavasta legorobotti-kirjasta ja sen sokkelo-osuudesta.
Ev-G on monipuolinen softa, ja ev3 on nopea (800 MHz, ARM) prosessori. Se antaa mahdollisuuden ohjelmoida graafisesti lähes mitä vain.
Kielestä löytyy pyöristysblokki ja matemaattiset peruslaskutoimitukset ja perusfunktiot, esimerksi mod, sin, cos. Myös satunnaislukugeneraattori ja pyöristys.
Sijoitetaan muuttujaan Integraali uusi arvo; ensin lasketaan, sitten kirjoitetaan ja viimeinen blokki lukee arvon jotta sitä voidaan käyttää muuhun.
Taulukoiden käyttö on suotavaa.
Range-blokki antaa 0/1. Selkeät Venn-diagmmitkuvat.
Käytä niitä. Jos teet oman blokin yhdellä sisäänmenolla, mutta tarvitset toisen, aloita alusta. Jos teet oman blokin kahdella sisäänmenolla, mutta tarvitset vain yhden, aloita alusta tai jätä toinen huomiotta.
Rinnakkaiset blokit voidaan synkronoida.
Ev3-palikan teho riittää Segwayn tekoon.
LEGOLAND Hackathon 2015 -tapahtumassa rakennettiin mm. bluetoothilla toimiva liikennejärjestelmä autoineen ja valoineen.
Valmis algorimi, Mindcub3r. Mutta, kaikki tykkäävät tästä.
Muutkin kielet onnistuvat, esimerkiksi Enchanting, C#, BricxCC, NBC, NXC, Robolab, RobotC, NXTGCC, leJOS NXJ, nxtOSEK, ICON, Matlab, Simulink, Lua, Ada, URBI, FLL NXT, ruby-nxt, Robotics.nxt, LibNXT, PyNXC jne.
Innokas järjestää Suomessa Robocuppia, missä kisataan useassa eri lajissa
tanssi, jalkapallo, pelastus, sumo ja freestyle.
RoboCupJr:n lisäksi Suomesta löytyy maailman suurin robottikisa, First Lego League. SM-kisat järjestetään keväällä RoboCup:n yhteydessä, mutta aiemmin pääsee jo kisaamaan. Ota yhteyttä Markkuun.
FLL on iloinen festivaalityylinen kilpailu, missä toisten kunnioittaminen, uuden löytäminen ja hauskanpito on erittäin oleellisia.
FLL:ssä kisataan rakentamalla autonominen robotti, joka ratkoo ennalta annettuja tehtäviä. Tehtävät ovat yleensä haasteellisia, ja mielestäni soveltuvat hyvin yläkouluun.
Robottiohjelmoinnin lisäksi FLL:ssä tuotetaan tieteellinen työ, esitellään tuloksia sekä verkostoidutaan.
Uudet tehtävät julkaistaan vuosittain, ja ne liittyvät johonkin teemaan. Esimerkiksi
Tehtäviä on parisenkymmentä pelilaudalla joka pysyy samana vuodesta toiseen. Laudalla oleva matto ja siihen kiinnitetyt tehtävät saa vuosittain.
Viitasaaren kunta.