Ohjelmointia Arduinolla Kyösti Blinnikka, Olarin koulu ja lukio LUMA-keskus Aalto
Mikä on Arduino? Open Source Electronics Prototyping Platform Arduino on avoimeen laitteistoon ja ohjelmistoon perustuva mikrokontrolleri-elektroniikkaalusta ja ohjelmointiympäristö. Kotisivu: arduino.cc (Euroopassa tuotenimellä Genuino)
Arduinon toiminnot ohjelmoidaan Ulkoinen kytkentä: INPUT: erilaiset anturit, säätimet, kytkimet OUTPUT: ledit, releet, servot, moottorit Syötetty ohjelma: Laitteistoa ohjelmoidaan C-kieleen perustuvalla ohjelmointikielellä INPUT: Lämpötila-anturi Mikrokontrolleriin syötetty OHJELMA OUTPUT: Ledit ja kaiutin
Arduinokortin osat Arduino/Genuino Uno Suosituin Arduinoalusta Resetnappula 14 digitaalista kytkentäpinniä 0 13 (Voidaan ohjelmallisesti määrittää joko INPUT tai OUTPUT-pinneiksi) LOW = 0 = 0 V HIGH = 1 = +5 V USB-liitin (koodin ja virran syöttö) Jänniteregulaattori 5 V Pinniin 13 kytketty ledi Mikrokontrolleri Oikean Arduino/Genuino kortin hinta on noin 30 euroa Ulkoinen virran syöttö 6-15 V (ulkoinen virtaliitin 2,1 mm tai Vin-pinni) Virtaliitäntä kytkentöjä varten 5 V, GND 6 analogista kytkentäpinniä A0 A5 Lukevat jännitettä 0 5 V
Arduino on laajennettava Saatavana on erilaisia shieldejä Esimerkiksi ehealth-shield Esimerkkejä shieldeistä: GSM Shield WiFi Shield Bluetooth Shield Motor Shield GPS Shield
Arduino/Genuino Starter Kit Arduino Uno Board Kytkentäalusta Paljon komponentteja ja tarvikkeita Hyvä ohjekirja itseopiskelijalle Starter Kitin hinta on noin 100 euroa
Starter Kitin kytkentäalusta Koekytkentäalusta Vaakarivit samaa johdinta Pystyrivit samaa johdinta. Tähän kytketään yleensä +5 V ja 0 V (GND)
Valmis kytkentä
Ohjelmointiympäristö Yksinkertainen editoriohjelma on ladattavissa sivustolta arduino.cc Sivustolla arduino.cc on myös kattavat ohjeet (valikossa Learning)
Ohjelman käyttö Avaa Arduino-ohjelma koneelle Kytke Arduino-kortti USBjohdolla koneelle Tarkista Tools-valikosta Board ja Serial Port Ohjelma Sketch ladataan Arduinolle vasemman yläkulman nuolella merkitystä nappulasta
Ensimmäinen ohjelma BLINK /* Blink Sytyttää ja sammuttaa lediä sekunnin välein */ // Arduinolevyllä on pinniin 13 kytketty ledi // setup ajetaan, kun ohjelma käynnistetään void setup() { // asetetaan pinni 13 OUTPUT-navaksi. pinmode(13, OUTPUT); Ohjelman kommentit on erotettu joko /* */ tai // merkeillä. Varsinaiset ohjelman käskyt on merkitty oheiseen esimerkkiin lihavoidulla tekstillä. Setup Ohjelman kertaluonteiset asetukset } // silmukkaa LOOP pyöritetään, kunnes levyltä katkaistaan virta: void loop() { Loop Pääohjelma digitalwrite(13, HIGH); delay(1000); digitalwrite(13, LOW); delay(1000); // ledi päälle (HIGH 5 voltin jännite) // odotetaan sekunti (1000 millisekuntia) // ledi pois päältä (LOW 0 voltin jännite) // odotetaan sekunti }
Oppimateriaali Arduino tutuksi ledivilkkusysteemit painonappien kytkeminen äänen tuottaminen jännitteen mittaaminen (lämpötilan mittaus, valaistuksen mittaus) servon ohjaus moottorin ohjaus PWM - tehon säätäminen (ledin himmentäminen /moottorin kierrosluvun säätäminen) etäisyysmittaus ultraäänianturilla LCD-näytön kytkeminen PROJEKTITYÖ peli? mittalaite? hälytin? laskuri? ajastin? soitin? valoefektilaite? joku muu?
Tehtävä Tutustu ohjelmointiympäristöön ja lataa Arduinolle BLINK-ohjelma. Muuta DELAY-käskyn arvoa Kokoa ohjeen mukainen lämpötilahälytin. Mikäli aikaa jää, laadi hälyttimelle jokin uusi toiminto. Mieti miten Arduinoa voi hyödyntää opetuksessa, loppukeskustelu 10-15 min