Materiaali 12.09.2018

LED-keppihevoset micro:bitillä

Testasimme Anjalan leirikeskuksessa elokuun lopussa uutta työpajaa, jossa keppihevosia tuunattiin rakentamalla niille kiiluvat LED-silmät ja ohjelmoimalla niitä micro:bit -mikrokontrollerilla. Tässä temppu, ja miten se tehtiin.

Uutinen Anjalan keppihevospajasta on luettavissa täällä. Koska teknologinen värkkäily jää usein omaksi saarekkeekseen, eikä aina ole helppoa perustella miksi kyse on nuorisotyöstä, yhdistimme tässä työpajassa värkkäilyn olemassaolevaan nuorisotyölliseen toimintaan (kädentaidot) sekä nuorisokulttuuriseen ilmiöön (keppihevoset).

Ja se pakollinen vastuulauseke: Tämä ohje on täysin amatöörin kirjoittama ja olen pähkinyt itsekseni, kuinka tämä projekti toteutetaan. Vaikka tälläinen rakentelu ei ole erityisen vaarallista hengelle tahi ympäristölle, kannattaa käyttää esimerkiksi suojalaseja juottaessa ja muistaa, että kolvi on kuuma. Olen kokeillut. 🙂 Verke ei ota vastuuta mahdollisista pienistä palovammoista, tinatuista pöydänkansista tai etenkään ylettömästä ja kasvavasta innostuksesta teknologiseen puuhasteluun.

Siispä eteenpäin!

Tarvikkeet

Tämä projekti toteutettiin kutakuinkin allaolevilla tykötarpeilla. Pihtien tarkka merkki, tinan ostopaikka tai johdon paksuus eivät ole tässä ne kaikkein olennaisimmat asiat, vaan samaan lopputulokseen voi päästä myös hyvin erilaisilla välineillä.

LED -kepparin rakentamiseen käytettäviä tarvikkeita. Osat listattuna kuvaa klikkaamalla.

Lisäksi muita sekalaisia tarvikkeita kuten neula ja lankaa keppihevosen kasaan kursimiseen operaation jälkeen .

Valmistelu

Laita kolvi valmiiksi lämpenemään.

 Leikkaa kytkentäjohto sopiviksi pätkiksi. Mitta on sopiva, kun kaksi pätkää + puolikas hauenleukajohto riittää suunnilleen kattamaan matkan micro:bitin ja patterikotelon sijoituspaikasta kepparin silmiin asti. Jätä johtoihin myös hieman varaa; ylimääräinen johto jää joka tapauksessa piiloon kepparin sisälle.

Leikkaa hauenleukajohto puoliksi puolestavälistä. Hommaa selkeyttää, jos käytät puolikasta kahdesta eri johdosta jolloin saat kaksi eri väristä pätkää.

Kuori kaikki johtojen päät. Noin 5mm kuorittua johtoa riittää.

Johtojen ja ledien juottaminen

Laita johdot apukäsiin vierekkäin siten, että kuoritut päät ovat limittäin. Tarkoitus on juottaa nämä yhteen sulattamalla tinaa niiden väliin. Tinaa voi ajatella ikäänkuin sähköäjohtavana liimana; sen lisäksi että virta kulkee juotoksesta läpi, tina muodostaa myös mekaanisen liitoksen, eli johdot eivät irtoa toisistaan. Jos aiot käyttää kutistesukkaa liitosten suojaamiseen, pujota se johtoon tässä vaiheessa.

Jotta liitoksesta tulee hyvä, älä sulata kolvilla tinaa johtoon vaan lämmitä johtoja alapuolelta ja kosketa tinalangalla johtoja. Tällöin tinaa sulaa johtoihin eikä kolvin kärkeen. Apukädet auttavat tässä paljon, mutta työpajassa tuli testattua myös että tästä saa hyvin ryhmätoimintaa: toinen voi lämmittää johtoja kolvilla ja toinen syöttää tinaa liitokseen. Tietysti tässä mennään samalla hieman luottamusharjoituksen puolelle, mutta sekään ei välttämättä ole huono asia.

Toista toimenpide kaikille johdoille; kolvaa hauenleualla varustettu johto yhteen päähän asennusjohdon pätkää ja toiseen päähän kaksi asennusjohdon pätkää lisää. Tavoitteena on Y:n muotoinen hässäkkä, jonka alaspäin osoittavassa kärjessä on hauenleukaliitin.

Kun olet kolvannut johdot kasaan, on aika liittää LEDit ketjuun. Laita yksi LEDeistä apukäsiin ja toiselle puolelle toinen tekemistäsi Y-johdoista. Valitse, kumpi johdoistasi on + ja kumpi – ja valitse ensimmäiseksi positiivinen johto. Ledien toinen jalka on aina hieman pidempi, tämä on + -jalka. Juota + johdon toinen vapaa pää ensimmäisen LEDin pidempään jalkaan. Vaihda tilalle toinen LED ja juota toinen + johto pidempään jalkaan. Sen jälkeen vaihda hauenleukoihin toinen Y-johdoistasi – aivan oikein, se miinusmerkkinen! – ja toista sama molempien LEDien lyhyemmille jaloille.

Testaa kytkentöjen toimivuus esimerkiksi kytkemällä nappiparisto virtapiiriin; yksinkertaisesti kosketa hauenleukojen toista puolta pariston positiiviseen napaan ja toista negatiiviseen. LEDien pitäisi syttyä. Huraa!

Mikäli valoa ei kansalle tule, on pari vaihtoehtoa: joko johtosi ovat väärin päin (käännä patteri) tai kytkennöissäsi on virhe. Tarkista kytkennät ja korjaa tarvittaessa; tina on helppo sulattaa johdoista pois.

Micro:bitin kytkentä ja ohjelmointi

Nyt kun tiedät, että LED -virtapiiri toimii, on aika hypätä ohjelmoinnin kimppuun.

Micro:bit -ohjelmointialustan peruskäyttöön on paljon myös suomenkielistä materiaalia, joten en ohjeista tässä aivan perusasioita. Erinomainen resurssi on esimerkiksi Innokas -verkoston materiaalipankki. Käy lukaisemassa selkeä perusohje ja tule takaisin.

Hyvä, miltä näytti? Ohjelmoitpa micro:bittiäsi sitten tietokoneella tai mobiililaitteella, perusidea on sama: laite ajaa kerrallaan vain yhtä koodia, heti ja välittömästi kun micro:bit laitetaan päälle (yleensä kytkemällä paristokotelon johto kiinni laitteeseen).

Itse en ole kummoinen koodari, mutta micro:bitissä käytettävä visuaalinen ohjelmointiympäristö on onneksi erittäin helppo käyttää. Pohdittavaksi jääkin lähinnä se, mitä haluan saada laitteen tekemään. Mietitäänpä hetki:

  • Haluan, että kun micro:bittiä ravistetaan, tapahtuu jotain (esimerkiksi LED-valot vilkkuvat)

Ylläoleva lause on itseasiassa jo ohjelmointia; käytännössä lähestulkoon kaikki ohjelmointi perustuu yksinkertaistetusti logiikkaan ”kun tapahtuu asia x, tee asia y”. Vaikka ”asia y” on joskus melko monimutkainen kokonaisuus, tässä päästään vielä onneksi melko helpolla.

Mene osoitteeseen makecode.microbit.org ja tutkaile hetki ohjelmointimpäristöä. Voit halutessasi vaihtaa kielen suomaksi klikkaamalla rattaan kuvaa.

Koodaamaan! Ohjelmamme kuuluu siis näin: kun microbittiä ravistetaan, vilkuta led-valoja. Otetaan pala kerrallaan:

1 Ota ”syöte” välilehdeltä – kyllä, arvasit oikein – ehtolause ”Kun ravistetaan” ja raahaa se koodialustalle.

2 Koska haluamme ohjata ulkoisia LED -valoja, älä valitse välilehteä ”LED” vaan klikkaa edistyneet ja etsi välilehti ”Pinnit”. Sieltä löydät ”Digitaalinen kirjoittaminen pin [p0] arvoon [0]”. Raahaa tämä koodinpala edellisen kohdan toistolauseen sisään. ”Koodinpalat” lukittuvat yhteen kun laitat ne oikeaan kohtaan.

Tässä kohtaa on hyvä todeta, että ”pin 0” vastaa tässä micro:bitin alareunassa olevaa kullanväristä liitintä. Liittimiä on useita, mutta toinen johdoistamme tullaan kytkemään reunimmaiseen ”gnd” pinniin ja toisen voit valita itse. Pin 0 on ehkä helpoin jotta johdot eivät ole aivan vierekkäin. 

”Digitaalinen kirjoittaminen” tarkoittaa tässä sitä, että jokainen pinni on joko päällä tai pois. Arvo 1 on tietenkin päällä ja arvo 0 tarkoittaa että pinniin ei lähetetä signaalia.

3 Koska haluamme sytyttää valot kun micro:bittiä / kepparia ravistetaan, vaihda digitaalinen kirjoittaminen -koodinpätkästä arvoksi ”1”

Koska haluamme myös sammuttaa valot, kopioi ”Digitaalinen kirjoittaminen” -koodinpätkä ja vaihda arvoksi 0.

Koska micro:bit on pienestä koostaan huolimatta melko hätäinen kaveri ja vilkuttaa valoja niin nopeasti kuin pystyy, kannattaa väliin lisätä pieni tauko. Ota siis yleiset -välilehdeltä sininen palikka ”tauko” ja lisää haluamasi mittainen tauko (sekunnin sadasosina, 100ms on siis yksi sekunti).

Vaikka koodin pitäisi periaatteessa toimia jo tälläisenään, halusin vielä hienosäätää sitä hieman. Siispä lisäsin silmukat -välilehdeltä lausekkeen ”toista x kertaa”, jotta sain valot vilkkumaan kuusi kertaa jokaisen ravistuksen jälkeen.

Tallenna koodi micro:bittiin ohjeiden mukaan, joko siirtämällä se usb -kaapelilla tietokoneelta tai bluetooth -yhteydellä puhelimelta. Toim. huom: Verken micro:bit -yksilöt eivät halunneet siirtää koodia ainakaan allekirjoittaneen puhelimesta, ennenkuin micro:bitin laittoi joka kerta uudelleen paritustilaan koodin siirron ajaksi. Uutta paritusta ei siis tarvitse tehdä, vaan riittää kun micro:bitin laittaa paritustilaan ennen koodin siirtoa.

Testaus ja asennus

Kytke rakentamasi LED -hässäkkä hauenleuoilla micro:bittiin. Huomaa, että leuat eivät saa osua viereisiin kultaisiin pinneihin, muuten tuloksena on oikosulku, josta ei onneksi ole suurempaa haittaa kuin virtapiirin hetkellinen toimimattomuus. Kytke positiivinen johtosi pinniin 0 (tai minkä määrittelitkään ohjelmointivaiheessa) ja miinusjohto gnd -merkittyyn pinniin (maa). Nyt kun kytket virtajohdon micro:bittiin, valojen pitäisi vilkkua!

Jos mitään ei kuitenkaan tapahdu, tarkista seuraavat: ovatko johtosi oikein päin? Ovatko kytkentäsi edelleen ehjät? Onko koodissasi jotain vikaa, kenties huolimattomuusvirhe jossain? Vianetsintä on joskus turhauttavaa, mutta toisaalta monesti myös erittäin palkitsevaa.

Kun toteat, että kaikki toimii ja micro:bit ohjaa ledejä haluamallasi tavalla, voit asentaa LEDit ja johdot pysyvästi paikoilleen keppariin. Taiteellinen ja luova vapaus on sinulla, mutta itse toteutin asennuksen siten, että pujotin johdot LEDeineen kepparin pään sisälle ja otin LEDit silmien paikoista ulos. Sitten laitoin LEDit pieniin pahvinpaloihin kiinni ja liimasin pahvinpalat kuumaliimalla paikoilleen. Hauenleukapäät johdoista ja micro:bitin paristokoteloineen  jätin ulkopuolelle siten, että saan tarvittaessa micro:bitin helposti irroitettua.