lauantai 29. heinäkuuta 2017

Arduinon testailua

Jipii, vihdoin Amazonista tilaamani Arduinon aloituspaketti saapui! Kerron myöhemmin mitä kaikkea se sisältää, kunhan tutustun ensin kaikkiin osiin. Siellä oli ainakin sensoreita, johtoja, koekytkentälevy, ledejä ja resistoreja (vai sanotaanko niitä vain vastuksiksi, en ole varma suomenkielisistä termeistä), ja ennen kaikkea Arduino! Osat olivat menneet kuljetuksen aikana sikin sokin, toivottavasti kaikki ovat ehjiä. Kuvassa on laatikko, jonka olen jo järjestänyt. Tarkistin, että se sisältää kaikki osat, ja sisälsihän se! Cd-levyn tiedostoja en saanut vielä purettua koneelleni, mutta en jaksanut vielä selvittää mistä se johtuu. Aloituspaketti maksoi postikuluineen 57 euroa.




Tässä itse Arduino! Pääsinkin kokeilemaan sitä ennen Raspberry Pitä. Luulin aluksi, että Arduino ja Raspberry ovat samanlaisia laitteita, mutta Arduinoa käytetään tietokoneen välityksellä, kun taas Raspberry Pi on tietokone itsessään, eli siihen kytketään näyttö ja näppäimet sun muut. Wikipedia tiesi kertoa Arduinosta seuraavaa: "Arduino on avoimeen laitteistoon perustuva mikro-ohjain-/elektroniikka-alusta ja ohjelmointiympäristö. Laitteisto perustuu 8-bittiseen Atmel AVR -mikro-ohjaimeen, jonka pinneihin voi kytkeä erilaisia antureita, moottoreita, LED-valoja ja muita komponentteja. Laitteistoa ohjelmoidaan C++:aan perustuvalla Arduino-ohjelmointikielellä.". Arduino-laitteita on eri malleja, minulla on UNO R3. Mallit eroavat Wikipedian mukaan toisistaan mm. keskusmuistin, Flash-muistin ja digitaalisten ja analogisten pinnien määrässä.


Ohjelmoinnissa käytetään Arduino Alpha-ohjelmaa. Seurasin Arduinon käynnistämisessä kirjan "Make: Sensors -Projects and Experiments to Measure the World with Arduino and Raspberry Pi" (Tero Karvinen, Kimmo Karvinen ja Ville Valtokari) ohjeita. Kirja on vaikuttanut tähän mennessä todella hyvältä: se kertoo Raspberryn ja Arduinon eroista ja miten kummankin laitteen avulla voi rakentaa samanlaisia projekteja. 


Latasin kyseisen kirjain ohjeiden mukaisesti ensimmäiseksi Arduinon ohjelmointiohjelmiston täältä. Kytkin Arduinon USB-johdon avulla tietokoneeseeni ja jippii! Siihen syttyi valot! Vihreä valo oli koko ajan päällä, keltainen vilkkui. Tuntui hienolta: tästä kaikki lähtee! 


Ohjelmiston lataaminen ja asentaminen sujui hyvin, ja pääsin käynnistämään itse ohjelman, joka näkyy alla olevassa kuvassa. Piinkin ohjelmoinnissa käytetään Arduinon ohjelmistoa, joten se näytti tutulta. Latasin ohjelman nähtävästi vahingossa suomeksi. Englanninkielinen versio olisi parempi, koska kirjatkin ovat englanniksi. No, en jaksanut ladata sitä ainakaan vielä uudestaan. Näkisin ainakin mitä eri termit ovat suomeksi, kun niitä Piin kanssa välillä pohdiskelin.


Valitsin kirjan ohjeen mukaan boardeista (Työkalut -> Kortti) oletuksen, eli Arduino / Genuino Unon. Yleisin ensimmäinen Arduinolle siirrettävä ohjelma eli koodinpätkä on Blink, joka vilkuttaa yhtä Arduinon sisäänrakennettua LED-valoa. Siitä näkee, toimiiko kaikki niin kuin pitääkin. Eli jos Blinkin lataa Arduinoon ja led alkaa vilkkua, kaikki on sujunut oikein. Kannattaa siis ensimmäiseksi kokeilla sitä.
     Ohjelmia ladataan Arduinolle kuvassa näkyvää nuolta (Tiedosto-kohdan alla) painamalla. Kun laittaa hiiren sen kohdalle, siinä lukee lähetä (englanniksi varmaan upload). Kun ohjelma ladataan Arduinoon, Arduinon valot vilkkuvat nopeasti. En ole varma, mitä lähetä-painikkeen vasemmanpuoleinen merkki "varmista" tekee, pitää tarkistaa! 
     Hoksasin, että minullahan kyseinen LED-valo vilkkui koko ajan. Olikohan Arduinoni rikki? Netissä joku sanoi, että monissa Arduinoissa kyseinen Blink-ohjelma on jo valmiiksi ladattuna. Ehkä minullakin oli kyse siitä? Yritin kuitenkin testausmielessä ajaa Blink-ohjelmaa (Tiedosto -> Esimerkit -> 01.Basics -> Blink), mutta siihen tuli alla näkyvä virhe. Kirja oli onneksi varoittanut, että virhe saattaa ilmaantua, mikäli ei ole vielä valinnut oikeaa porttia. Valitsin porteista (Työkalut -> Portti) ainoan vaihtoehdon eli COM5:en. Sen jälkeen virhettä ei tullut. Mutta kuten saattoi olettaa, mikään valon toiminnassa ei muuttunut, koska led vilkkui muutenkin koko ajan.


Miten siis saisin testattua, että kaikki toimii kuin pitääkin? Hoksasin, että voisin kokeilla vilkuttamisen sijaan LED-valon sammuttamista. Esimerkkien koodeissa onneksi kerrotaan, mitä kukin koodin kohta tekee. Koodin muokkaaminen onnistui siis helposti sellaiseksi, että valon pitäis sammua. Alla olevassa kuvassa on kyseinen koodi.

Ja kyllä, valo todellakin sammui! Olin hurjan ylpeä itsestäni! LED-valon sammuttaminen on pieni askel konkareille, mutta suuri askel aloittelijalle. Ystäväni keksi, että Arduinon LED-valon voisi laittaa morsettamaan jotain. Sekin oli helppo toteuttaa! Kuka keksii, mitä LED-valo sanoo? Alla on video itse morsetuksesta ja sen koodi.



Olen ilokseni huomannut itsessäni edistymistä: kun tutkailin kuukausia sitten Piin ohjelmointia, en kunnolla ymmärtänyt mistä on kyse, koska kaikki tuntui niin uudelta ja oudolta. En olisi varmaan silloin osannut muokata tämän päiväisiä koodeja toimiviksi. Todella hienoa huomata kehittyneensä! 

Ei kommentteja:

Lähetä kommentti