SeBOT – ROS2-oppimisen uusi, avoin mobiilirobottialusta SEAMKissa
SEAMKin Tulevaisuuden ajoneuvoteknologiat -tutkimusryhmän eräänä mielenkiinnon kohteena on älykäs ulkorobotiikka. Tällä käsitteellä viitataan sekä autonomisiin työkoneisiin että muihin, usein termeillä UGV (unmanned ground vehicle) tai rover kuvattuihin, pienempiin mobiilirobotteihin.
ROS2 älykkäiden robottien kehittämisessä
Kehitettävän laitteen kokoluokasta riippumatta sen ohjauskerroksen rakentamiseen voidaan hyödyntää Robot Operating System 2 (ROS2) -nimistä kokonaisuutta, joka käsittää teknologian kehittämiseen tarvittavia resursseja ohjelmistokirjastoista ohjelmointiperiaatteisiin ja avoimen lähdekoodin projektin kehittäjäyhteisöön saakka. SEAMKissa on toteutettu ROS2:een liittyviä hankkeita vuodesta 2023 eteenpäin. Hanketoiminnassa on todettu sekä tarve luoda aiheeseen liittyvää suomenkielistä koulutusta, että myös ROS2-kokonaisuuden riittävän haltuunoton vaatiman oppimiskäyrän jyrkkyys. Tämän tarpeen ratkaisemiseksi kehitettiin mahdollisimman yksinkertainen, SeBOT-nimen saanut mobiilirobotti-oppimisalusta. Alkuperäinen kehitystyö tehtiin osana OpenUGV-hanketta ja sen kehittämistä on jatkettu Sähköiset voimalinjat -hankkeessa.
SeBOT on täysin avoin mobiilirobottialusta, jonka tavoitteena on helpottaa ja selkeyttää ROS2-ohjelmoinnin perusteiden opiskelua konkreettisen fyysisen robotin avulla. Robotin lähdekoodi, esimerkkimittakuvat ja opetusmateriaali ovat vapaasti saatavilla GitHub-repositoriossa (SeAMKedu/sebot). SeBOTin keskeinen idea on tarjota selkeä visuaalinen ja vaihe vaiheelta etenevä oppimisympäristö: oppija näkee fyysisen laitteen ja sen osien toiminnan, mikä auttaa ymmärtämään ROS2-ympäristöön liittyvien keskeisten käsitteiden merkitystä käytännössä. Kaikki SeBOTiin liittyvä materiaali on lähdekoodien kommentteja myöten kokonaan suomeksi, mikä helpottaa aloittelevan ohjelmoijan perehtymistä aiheeseen.
Vaiheittain kohti toimivaa ROS2-ohjattua robottia
SeBOT on fyysisesti yksinkertainen, kahden DC-moottorin ja ns. casterpyörän varaan rakentuva alusta, jolle on asemoitu tarvittava ohjauselektroniikka Arduino-mikrokontrollereineen ja Raspberry Pi5 -tietokoneineen (kuva 1). SeBOTin ohjemateriaali etenee yksinkertaisista suorista PWM-moottoriohjauksista PID-ohjaimen kautta lopulta varsinaiseen ROS2-ohjelmointiin asti. Harjoituksissa Arduino-mikrokontrolleria ohjataan ensin suoraan sarjaporttiin kirjoitettavina teho-ohjausviesteinä. Kun moottorit on saatu pyörimään hallitusti, siirrytään varsinaiseen nopeusohjaukseen ensin erillisinä Python-ohjelmina ja lopulta osana ROS2-nodejen muodostamaa kokonaisuutta. Näin opiskelijalla säilyy käsitys siitä, mitä mikäkin osa robotissa oikeastaan tekee ja millaisista osista kokonaisuus lopulta rakentuu.

Kuva 1. SeBOT mobiilirobotti-oppimisalusta GitHub-repositorion osalistan mukaan rakennettuna (kuva: Tommi Ylimäki, 2025).
GitHub-repositorioon sisältyvä valmis, avoimesti saatavilla oleva materiaali kattaa kaiken tarvittavan: ohjeet laitteen fyysisten osien hankintaan ja kytkentään, käyttöjärjestelmän ja ROS2-ympäristön asentamiseen sekä kattavat, vaiheisiin jaetut tekstiosiot, jotka ohjaavat opiskelijan harjoituksesta toiseen. Tämä tekee SeBOTista erityisen soveltuvan opetuskäyttöön, sillä aloittelijakin pystyy etenemään harjoituksissa omassa tahdissaan. SeBOTin ROS2-arkkitehtuuri on korostetun yksinkertainen (kuva 2), joten kokonaisuus on helpohkoa hahmottaa.
Kuva 2. SeBOT ROS2- ja Arduino-arkkitehtuuri.
Turvallisuus ja laajennettavuus opetuksen tukena
SeBOTin fyysinen muoto ja koko ovat tietoisesti suunniteltu opetuskäyttöä varten: pieni ja hidas laite on turvallinen käyttää luokassa tai työpajassa ilman riskiä fyysisistä vahingoista. Edullisuus takaa sen, että laitteen mahdollinen rikkoutuminenkaan ei aiheuta suurta menetystä, mikä lisää opiskelijoiden rohkeutta kokeilla ja oppia tekemällä. Lisäksi mahdollisuus nähdä liikkuva laite toiminnassa luo usein syvemmän ja mieleenpainuvamman oppimiskokemuksen kuin simulaattoriympäristössä ajettu malli. Mikäli opiskelija kuitenkin haluaa käydä materiaalin läpi ilman fyysistä laitetta, sekin onnistuu ohjeiden pohjalta.
SeBOTin avulla voidaan myös havainnollistaa laajempia robotiikan ja autonomisten järjestelmien periaatteita. Alusta on helposti laajennettavissa: siihen voidaan liittää erilaisia sensoritekniikoita ja toimilaitteita, kuten lidarit, kamerat, ultraäänianturit, rajakytkimet ja servot. Erityisen helppoa on niiden laitteiden käyttöön ottaminen, joille valmistaja tai joku ROS-yhteisön edustaja on kirjoittanut valmiin ROS2-paketin. Tämä avaa mahdollisuuksia edetä ROS2:n perusteista kohti monipuolisempia sovelluksia, esimerkiksi reaaliaikaista paikannusta, ympäristön havainnointia tai edistyneitä navigointiominaisuuksia. Tällaisesta jatkokehittämisestä on erinomaisena esimerkkinä opiskelijan harjoitustyönä tekemä ultraäänietäisyysmittaus, jonka ohjaamana SeBOT välttää törmäykset staattisiin kohteisiin.
SeBOTin edullisuudesta johtuen niitä on taloudellisesti mielekästä hankkia useita kappaleita. Tämä mahdollistaa niiden hyödyntämisen myös usean robotin yhteistyön ja laivueohjauksen harjoitteluun. Tällaiset monirobottisovellukset ovat tärkeä osa nykyaikaista robotiikan opetusta ja tutkimusta. SeBOT onkin osoittautunut antoisaksi väyläksi paitsi aloittelijoille myös niille, jotka haluavat syventää ymmärrystään ROS2:n arkkitehtuurista käytännössä.
SEAMKissa SeBOT toimii myös esimerkkinä siitä, miten avoin ja vaiheistettu materiaali tukee oppimista: alkukesästä 2025 järjestettiin päivän työpaja, jossa alueen yritysten tietotekniikkainsinöörit pääsivät tutuiksi ROS2-ohjelmoinnin perusteiden kanssa. Tästä syntyneitä kokemuksia hyödynnetään syksyllä 2026 ensimmäisen kerran toteutettavalla tietotekniikan ja automaatiotekniikan opiskelijoille tarjottavalla opintojaksolla, joka perehdyttää opiskelijat sekä ROS2-perusteisiin, että nykyaikaisiin mobiilirobottien paikannustekniikoihin ja navigointialgoritmeihin.
Tommi Ylimäki
Lehtori
SEAMK
Ylimäki on toiminut ROS2-aiheisten hankkeiden projektipäällikkönä ja TKI-asiantuntijana SEAMKissa vuodesta 2023 saakka. Hänen DI-työnsä käsitteli pienen mobiilirobotin paikannustarkkuuden kehittämistä RTK-teknologian avulla.
