1. Perusasiat

Mikä on Arduino?

Alla näet kuvassa Arduino Uno:n. Se on monipuolinen avoimeen lähdekoodiin perustuva mikro-ohjain/ elektroniikka kehitysalusta.

Piirikortissa on 14 digitaalista sisään/ulostuloa (joista kuutta voidaan käyttää PWM, Pulse with Modulation, -ulostuloina, merkitty ~merkillä), kuusi analogista sisääntuloa, 16 MHz oskillaattori, ICSP-portti, reset-nappi, USB- sekä virtaliitäntä. Kuulostaako heprealta? Älä huoli, niin muistakin. Kysy vaikka kavereilta :)

Harrastaja pääsee alkuun helposti: netistä ladataan valmis kehitysympäristön (ArduinoIDE: Win, Mac, Linux), kytket Arduino-kortin kiinni tietokoneen USB-liitäntään ja rock’n roll. Vaihtoehtona on myös eCraft2Learnin oppimisympäristöstä löytyvä graafinen ohjelmointiympäristö Snap4Arduino.

Hinta: 15-30 euroa. Ns. Arduinon kopiot ovat halvempia, mutta toimivat yhtälailla.


TEHTÄVÄ: Hae Arduino + USB-johto. Kytke Arduino tietokoneeseen USB-johdolla. Ota mukaan myös alta kuvasta löytyvä kytkentälevy.

Breadboard

Tässä näet kytkentälevyn eli Breadboardin. Tätä käytetään apuna kun kytketään erilaisia komponentteja. Tästä sinun täytyy tietää, mitkä rivit ovat yhteydessä toisiinsa!

Eli jos kytket johdon kuvan + tai - rivin mihin tahansa kohtaan, se on yhteydessä koko rivin pituudelta vaakatasossa, kuten vihreä väri osoittaa. Eli kaksi riviä ylhäällä ja kaksi alhaalla.

Keskellä näet rivejä, jotka ovat numeroitu ja merkitty kirjaimin. Kaikki ovat pystysuuntaisesti yhteydessä toisiinsa. Tässä on esimerkinomaisesti värjätty muutamia satunnaisia rivejä vihreällä. Kaikki rivit toimivat samoin. Huomaa, että kortin keskellä on ”kuilu”, joka toimii katkona. Eli rivit a, b, c, d, ja e ovat oma kokonaisuutensa. Luonnollisesti alakerran + ja + rivit eivät ole yhteydessä ylärivin + ja - riveihin.

Yleisesti ottaen voit tökkiä johtoja mihin tahansa, kunhan sähkö kulkeutuu haluamaasi paikkaan. Voit valita siis paikat ihan vapaasti.

Ensimmäinen kytkentä

Sähkökytkennät perustuvat suljettuun virtapiiriin:
Sähkö virtaa aina plussasta miinukseen. Voit kuvitella sen olevan joki. Jos sähkö ei pääse plussasta miinukseen, kytkentä ei toimi; ”veden virtaus lakkaa”.


Vasemmalla suljettu virtapiiri, oikealla avoin virtapiiri.

Esimerkkinä taskulamppu. Mitä tapahtuu, kun painat kytkintä? Kun lamppu on pois päältä, virtapiiri on avoin kuten yllä kuvassa oikealla. Kun painat nappulaa uudestaan, virtapiiri sulkeutuu ja lamppu palaa. Yksinkertaista, eikö?

Lähtemättä tarkemmin selvittämään sähkön ominaisuuksia, sinun on hyvä tietää, että miinusta kutsutaan oikeastaan maadoitukseksi tai maaksi: Arduinosta löydät kolme pinniä, joissa lukee GND, eli ground, eli maa, siis miinus. Plussaa saat mistä tahansa digitaalisesta tai analogisesta pinnistä.

Komponenttien kytkennässä pitää tietää, mihin haaraan kytketään miinus ja mihin plus. Joissain komponenteissa ne on merkitty näkyviin, joissain ei. Jos merkintää ei näy, etsitään tieto esimerkiksi netistä. Esimerkiksi LED:issä merkintää ei ole näkyvissä, vaan siinä lyhyempi jalka on aina miinus. Jos kytket ledin väärinpäin, se ei pala. LED on rakennettu niin, että sähkö voi virrata sen läpi vain yhteen suuntaan. Joissain komponenteissa tällä ei ole mitään väliä (kuten esimerkiksi valosensori tai vastus).


TEHTÄVÄ: Tee ensimmäinen kytkentä alla olevan kuvan mukaisesti. Kytkentä tapahtuu Arduinon mihin tahansa digital pinniin (kuvassa pinni numero 13).

Nouda tarvikkeet: Breadboard, kaksi asennusjohtoa, yksi vastus ja yksi led.

Huomaa, että kuvassa on merkitty:
- plus punaisella värillä ja miinus mustalla. Johdoituksessakin näitä kannattaa käyttää, ainakin jos johtoja on paljon. Sinun on helpompi tarkistaa tekemäsi kytkennät, kun johdot ovat värikoodatut. Muuta merkitystä väreillä ei ole. 
- vihreällä värillä on merkitty kytkentälevyn toisiinsa yhteydessä olevat rivit

KYTKIN OIKEIN, MUTTA LAMPPU EI PALA? MIKSI?
Siis. Sähkövirta lähtee pinnistä numero 13. Se on johdettu kulkemaan vastuksen läpi, joka rajoittaa virran kulkua. Tämä suojaa LED:iä, ettei se saa liikaa virtaa. Jos komponentti saa liikaa virtaa, se voi mennä rikki. Siksi vastus on tärkeä. (Tosin tässä kohden voi mainita, että mitään ei mene Arduinon kanssa rikki, vaikka vastusta ei olisi.) Virta menee vastuksen läpi LED:iin ja sieltä maahan (GND). Kytkentä on kunnossa, mutta nyt meidän pitää sanoa Arduinolle, että se laittaa virtaa pinniin 13, siis ohjelmoimaan!

ECraft2Learn oppimisympäristö

TEHTÄVÄ: Avaa tietokoneelta Chrome selaimella nettisivu:
https://ecraft2learn.github.io/uui/#

TEHTÄVÄ: Kirjoita käyttäjänimeksi tiimin nimi, jonka muistatte jatkossa. Kirjoittakaa tarvittaessa se muistiin. Muut osiot voi jättää tyhjäksi.
- Huomioi isot ja pienet kirjaimet.
- Se on jatkossa käyttäjätunnuksesi ja tekemäsi työt pysyvät tallessa.
- Klikkaa LOGIN.

Nyt sinulle avautuu eCraft2Learnin oppimisympäristö, jossa näkyvät tulevan projektisi työvaiheet omina osioinaan. Tutki alla olevan kuvan ja nettisivun avulla:

1. Imagine: Ideoidaan, pohditaan mitä työ voisi olla. Etsitään ideoita esim. netistä. Mistä projektin ilmiössä on oikeastaan kysymys?


2. Plan: Suunnitellaan työ, mitä elementtejä siinä on, mitä kaikkea pitää tehdä. Voidaan tehdä ryhmässä pienimuotoista työnjakoa tehtävistä. Lista tehtävistä on myös. Apuna voi käyttää ”eCraft2Learn ToDo” sovellusta. Kurkkaa ja kokeile!

3. Create: Suunnitelmat ovat valmiit ja aloitetaan rakennustyöt. Osa rakentaa työtä, osa tekee koekytkentöjä, askarrellaan, ehkä 3D-tulostetaan. TÄRKEÄÄ! Tehkää yhteistyötä. Rakentajien tulee ottaa huomioon koekytkentöjen tuloksia; miten johdotetaan, minne tulee sensori jne.

4. Program: Ohjelmointi. Kun työ on kasattu, tehdään luonnollisesti se viimeinen ohjelmointi, jotta kokonaisuus toimii. Tässä käytetään apuna koekytkentöjen ohjelmaa, joka kenties oli myös lähes se lopullinen versio.

5. Share: Työ on nyt valmis. Se esitellään muille; kenties kuvataan video, ehkä jaetaan eCraft3Learn yhteisölle tai järjestetään koulussa näyttely.

Jokaiseen osioon on tarjolla omat työkalut. Testatkaa ja löytäkää itsellenne sopivat!

 

TEHTÄVÄ: Nyt ohjelmoimaan! Klikkaa Program -osiosta Snap4Arduino

Snap4Arduino: Toimintaperiaate ja Arduinon yhdistäminen

Snap4Arduino on graafinen ohjelmointiympäristö, joka toimii drag-drop periaatteella. Taustalla on C++ ohjelmointikieli.

Näet avautuneessa ikkunassa vasemmalla yläreunassa valikoita, kuten Motion, Looks, Control jne. Näistä avautuu erilaisia ohjelmapalikoita.

Ensimmäiseksi meidän pitää kuitenkin yhdistää Arduino tietokoneeseen.


TEHTÄVÄ:
- Valitse vasemmalta valikosta ”Arduino
- klikkaa ”Connect Arduino
- Avautuu pieni valikko, valitse siinä näkyvä portti (Esim. COM4, /dev0)
Tässä kerrotaan tietokoneelle, että Arduino löytyy tästä USB-portista. Jos vaihtoehtoja on useita, kokeile. JOS VALITSIT VÄÄRIN, sulje Snap ja käynnistä ohjelma uudestaan.

Jos yhdistäminen onnistui, pitäisi näkyviin tulla ikkuna: 

Snap4Arduino, Ohjelmointitehtävä 1

Teimme siis aiemmin alla olevan kytkennän:

Nyt huomioimme, mihin Arduinon pinniin kytkimme plus johdon? Jos teit kuvan mukaan, johto on pinnissä numero 13. Tosin tässä olisi ihan sama, vaikka käyttäisit Arduinon mitä tahansa pinniä 1-13, mutta huomioi pinnisi numero.

TEHTÄVÄ: valitse Snäpistä ”CONTROL” valikko ja sieltä ”When clicked”. Ota siitä kiinni, vedä ja tiputa se Script -pöydälle.



Nyt valitse ”ARDUINO”. Ota sieltä ”Set digital pin...” ja tiputa se pöydälle. Yhdistä se edelliseen palikkaan.


Nyt valitse alasvetopalkista se pinnin numero, johon olet kytkenyt Arduinossa LED:in.
Jos palkissa ei näy numeroita, et ole yhdistänyt Arduinoa tietokoneeseen.


Aseta virta päälle palikan kytkimestä:

Käynnistä ohjelmasi klikkaamalla "When Clicked” palikkaa. Ledin pitäisi nyt syttyä! 
- Aseta liukukytkin toiseen asentoon ja klikkaa ”When clicked”. Nyt LED sammuu.

Snap4Arduino, Ohjelmointi 2

Nyt vielä yksi harjoite ja sitten pääset soveltamaan taitojasi. Nyt ohjelmoimme ledin vilkkumaan.

TEHTÄVÄ:
1. Valitse ”Control” ja ota palikka ”When clicked”. 
2. Ota toinen control palikka ”Forever” ja liitä se tämän alle.
3. Siirrä pöydällä oleva ”Set digital pin” foreverin sisälle.
4. Lisää sen alapuolelle Control -palikka ”wait 1 secs
5. Klikkaa ”set digital pin” palikkaa oikealla hiiren napilla, valitse ”Duplicate”. Liitä setti joukon jatkeeksi. 
6. Muuta toisen ”Set digital pin” arvoksi ”pois päältä” liukukytkintä klikkaamalla.

Ohjelmasi pitäisi näyttää about tällaiselta:

Käynnistä ohjelma klikkaamalla kokonaisuutta. Kokeile vielä muuttaa wait aikoja, esimerkiksi 0.5 tai vaikkapa 0.05.





Soveltava tehtävä, The Joker!

Tehtäväsi on luoda alla olevan videon mukainen ”the Joker”, jonka silmät vilkkuvat. 


Vinkki: ota käyttöön alligaattorijohto (tunnetaan myös nimellä hauenleuka -johto)

Troubleshooting!
- Tässä tehtävässä joudut hieman soveltamaan ja hoksaamaan. Älä lannistu, vaan yritä ratkaista ongelma itse! Tämä on eräs keskeinen asia eCraft2Learn -projekteissa: yritys, erehdys, yritys, ratkaisu...


- Jos kuitenkin olet ihan jumissa ja vähän turhautunut, katso ratkaisu tästä.


PALAA TÄSTÄ ALOITUSSIVULLE!