Arduino-ohjelmointiympäristön asennus

Arduino-ohjelmointiympäristön asennus

Arduino-ohjelmointiympäristön asennus

Yleistä

Kun asennat Arduino IDE:n tietokoneellesi, ohjelman nimi on pelkästään Arduino. Lataa ensin Arduino IDE osoitteesta www.arduino.cc > Downloads. Kun olet asentanut Arduino IDE-ohjelmointiympäristön, voit avata ohjelman.

 

 

Osat

Arduino

USB a-b

Asennus

Jos uusi projekti ei avaudu automaattisesti, tai sinulla on auki vanha projekti, valitse Tiedosto -> Uusi. Liitä Arduino kiinni tietokoneeseen USB A-B -kaapelilla.

Tarkista seuraavaksi, että sinulla on Arduino IDE:ssä oikeat asetukset oikealle Arduino-kehitysalustalle. Mene valikkoon Työkalut -> Kortti ja valitse Arduino/Genuino Uno. Mikäli käytät jotakin toista Arduino-kehitysalustaa, valitse sen mukainen nimi valikosta.

Seuraavaksi valitse käyttöön oikea USB-portti menemällä Työkalut -> Portti -valikkoon. Mikäli käytät Windows- käyttöjärjestelmää, löytyy oikea yhteysportti listalta jostakin COM-alkuisesta vaihtoehdosta. Applen käyttöjärjestelmissä valitse /dev/cu.usbmodem-alkuinen vaihtoehto. Linux-käyttöjärjestelmissä oikea portti löytyy /dev/ttyACM-alkuisesta vaihtoehdosta.

Arduino-mikrokontrollerin ja koekytkentälevyn perusteet

Arduino-mikrokontrollerin ja koekytkentälevyn perusteet

Arduino-mikrokontrollerin ja koekytkentälevyn perusteet

Yleistä

Arduino on laite, jonka avulla voit itse rakentaa ohjelmoitavia laitteita. Ne voivat olla vaikkapa robotteja tai vaikkapa vuorovaikutteisia taideteoksia.

Arduinoa voidaan kutsua kehitysalustaksi, jolloin tarkoitetaan itse fyysistä laitetta ja sen ohjelmoimiseen käytettävää ohjelmointiympäristöä Arduino IDE:tä.

Toinen nimitys mitä Arduinosta usein käytetään on mikrokontrolleri. Mikrokontrolleri on järjestelmä, jonka avulla on mahdollista luoda sulautetettuja järjestelmiä. Sulautettu järjestelmä tarkoittaa laitetta, jossa on kiinni elektroniikan analogisia komponentteja, kuten esimerkiksi ledejä, moottoreita, erilaisia kytkimiä, transistoreja, vastuksia; kaikkia yleisimpiä elektroniikan osia joista meitä ympäröivät laitteet rakentuvat. Sulautetuissa järjestelmissä näitä laitteita kuitenkin ohjaa koodi, jonka ohjelmoija on ladannut mikropiireihin. Arduino pitää sisällään yhden ison mikropiirin, johon myös sinä pystyt itse ohjelmoimaan ja lataamaan haluamasi toiminnon. Näin voit itse rakentaa sulautettuja järjestelmiä.

Yksinkertaisimmillaan tämä voi tarkoittaa vaikkapa valoa, joka on ohjelmoitu vilkkumaan määrättyyn tahtiin eli halutulla taajuudella. Taajuus on se syklin nopeus, jolla valo vuorottelee päällä ja pois päältä olemista. Arduinolla on myös mahdollista lukea informaatiota ympäröivästä maailmasta.

Käymme läpi Arduino-mikrokontrollerin käyttämisessä keskeisiä asioita, mikä syventää ymmärrystä ja helpottaa Arduino-ohjelmoinnin hahmottamista. Tämän lisäksi kerromme miten asennat Arduino-ohjelmointiympäristön koneellesi.

Tarvitset tehtävään tietokoneen. Voit tehdä kytkennän alla mainituilla osilla tai hyödyntää valmista permaproto-kytkentää, jonka löydät Meta-boxi tarvikkeista. Permaproto-kytkennän kanssa tarvitset Arduino-mikrokontrollerin, tietokoneen ja USB-johdon. Suosittelemme kuitenkin että teet tämän irto-osilla. Voit vaikka käyttää permaproto-kytkentää mallina!

Osat

Arduino

USB-kaapeli (A-B)

Koekytkentälevy

Led

Hyppylangat

Hyppylangan värillä ei ole väliä. Voit kuitenkin selkeyden takia käyttää ensin saman värisiä hyppylankoja kuin esimerkissä.

Vastus

220 ohmia.

Vastuksen raitojen värit: punainen-punainen-ruskea-kulta.

Kytkennät

Arduinon kanssa käytetään usein koekytkentälevyä. Koekytkentälevy on levy jolle on helppo asettaa kiinni eri elektroniikan komponentteja, joita mikrokontrolleri käyttää eri tavoin.

Koekytkentälevyn pinnalla on pieniä reikiä, joihin komponenttien jalat voidaan painaa sisään. Jokainen rivi koekytkentälevyssä muodostaa yhteyden jokaisen rivissä olevan reiän kautta. Sivuilla olevat kiskot yhdistävät jokaisen reiän koko matkalta. Keskiosiossa kiskot muodostavat lyhyet rivit ja välissä on aukko, joka halkaisee puoliskot toisistaan.

Rakenna yllä olevan kuvan mukainen kytkentä ledistä, vastuksesta ja hyppylangoista.

Arduinossa on reikiä, joita sanotaan pinneiksi. Jokaisen pinnin viereen on painettu tunnus, joka kertoo mikä pinni on kyseessä. Kytkennässä punainen johto on liitetty pinniin joka antaa 5V jännitteellä sähkövirtaa. Kytkentä on sama kuin käyttäisit 5V paristoa. HUOM! Kytke Arduino tietokoneeseen USB-johdolla.

Punainen johto johtaa virran koekytkentälevyn kiskolle joka on merkattu +-tunnuksella. Voit päättää itse mihin kytket 5V-virtajohdon, mutta vakiintunut tapa on ollut käyttää koekytkentälevyssä valmiiksi merkattuja +/– -kiskoja. Jatka kytkentää liittämällä hyppylanka (punainen) + -kiskolta koekytkentälevyn vapaalle riville. Liitä sammalle riville vastus kuvan mukaisesti, niin että sen jalat ovat koekytkentälevyn eri puolilla. Vastuksen jalat voidaan kytkeä kummin päin vain.

Laita seuraavaksi led valo. Ledin jalkojen järjestyksellä sen sijaan on väliä. Kun katsot tarkkaan lediä, huomaat että sen jalat ovat eri mittaiset. Eri mittaiset jalat ovat usein hyvä merkki siitä, että jalkojen järjestyksellä on merkitystä. Pidempi jalka on + -jalka. Kytke vastuksen kanssa samalle riville ledin pidempi jalka (eli + -jalka).

Ledin lyhyempi jalka liitetään koekytkentälevyllä jälleen uudelle kiskolle. Kiskolta johon ledin lyhyempi jalka tulee, täytyy vetää hyppylanka  – -kiskolle ja toinen hyppylanka Arduinon GND-pinniin. Tällöin muodostuu virtapiiri. Virtapiirissä sähkövirta pääsee kulkemaan halutun komponentin kautta, jolloin komponentti aloittaa toiminnan. Tässä tapauksessa led syttyy päälle.

 

Mitä seuraavaksi?

Kokeile seuraavaksi ledin vilkuttamista.

Snap4Arduino-ohjelmointiympäristön asennus

Snap4Arduino-ohjelmointiympäristön asennus

Snap4Arduino-ohjelmointiympäristön asennus

Yleistä

Snap4Arduino on graafisen Scratch ja tekstipohjaisen Arduino -ohjelmointialustojen yhdistelmä. Scratch on tarkoitettu ainoastaan graafisten ohjelmien ja pelien ohjelmointiin. Snap4Arduinon avulla voit ohjelmoida laitteita.

Meta-Boxin mukana tulevissa koneissa kaikki tarvittavat ohjelmat on jo valmiiksi asennettu.

 

 

Osat

Arduino

 

USB-kaapeli (A-B)

Asennus

Lataa Snap4Arduino osoitteesta snap4arduino.rocks -> Download.

Jotta pystyt käyttämään Snap4Arduinoa yhdessä Arduino-mikrokontrollerin kanssa tulee sinun asentaa myös tekstipohjainen Arduino-ohjelmointi ympäristö. Ohjeet löydät täältä.

Kun olet asentanut molemmat ohjelmat tulee sinun yhdistää Snap4Arduino Arduino-mikrokontrolleriin. Aloita yhdistäminen liittämällä Arduino-mikrokontrolleri ensin tietokoneeseen USB a-b kaapelilla.

Avaa tämän jälkeen Arudino IDE -ohjelma ja lataa Arduino mikrokontrolleriin Firmata-koodi. Avaa Firmata-koodi Arduino IDE:n ylävalikosta (Tiedosto->Esimerkit->Firmata->StandartFirmata).  Lataa koodi Arduinoon painamalla oikealle osoittavaa nuolta Arduino-ohjelman ylälaidassa. Kun Arduino IDE on ladannut Firmatan, jolloin alalaidassa lukee ”Lähetetty”.

Voit tämän jälkeen siirtyä Snap4Arduino -ohjelmaan. Yhdistä Arduino-mikrokontrolleri ohjelmointiympäristöön painamalla ”Connect Arduino” turkoosin värisestä Arduino-valikosta.

 

Mitä seuraavaksi?

Voit nyt aloittaa ohjelmoimisen Snap4Arduinolla. Voit edetä nyt seuraaviin tehtäviin, kuten ledin vilkuttamiseen. Suosittelemme kuitenkin tutustumaan ensin koekytkentälevyyn ja Arduino-mikrokontrolleriin.

Led-valo

Led-valo

Yleistä

Miksi ohjelmoidun ilmiön pitäisi tapahtua vain näytöllä, kun se voi tapahtua esimerkiksi liikkeenä, äänenä tai valona missä vain?  Miten saat ledin päälle ja pois ja vilkkumaan halutulla nopeudella, eli taajuudella?

Huom! Tarvitset tehtävään tietokoneen.

Voit tehdä kytkennän alla mainituilla osilla tai hyödyntää valmista permaproto-kytkentää, jonka löydät Meta-boxi tarvikkeista. Permaproto-kytkennän kanssa tarvitset Arduino-mikrokontrollerin, tietokoneen ja USB-johdon.

Osat

Arduino

Mikrokontrolleri voi olla myös merkitltään Genuino, mutta mallin tulee olla UNO.

Vastus

220 ohmia (Värikoodi: punainen, punainen, ruskea, kulta).

 

USB-kaapeli (A-B)

Koekytkentälevy

Led

Voit kokeilla eri värisiä tai kokoisia ledejä.

Hyppylangat

Kytkentä

Tee alla oleva kytkentä ennen siirtymistä ohjelmointi osioon. Voit tehdä kytkennän joko edellä mainituista irto-osista tai kokeilla ensin valmiilla perma-proto kytkennällä. Tällöin riittää että kytket hyppylangat kuvan mukaisesti oikeisiin kohtiin Arduinossa.

Huomaathan että ledin suunnalla on väliä, joten laita pitkä ja lyhyt ledin jalka kuvan mukaisesti. Pidempi jalka on kuvassa taitettu. Vastuksen suunnalla ei ole väliä. Hyppylankojen värillä ei ole väliä.

Ohjelmointi

Graafinen ohjelmointi Snap4Arduinolla

Snap4Arduino ja Arduino-mikrokontrollerin yhdistäminen
  1.     Avaa Arduino IDE.
  2.     Kytke Arduino UNO koneeseen USB kaapelilla.
  3.     Avaa Firmata-koodi ylävalikosta (Tiedosto->Esimerkit->Firmata->StandartFirmata).  Lataa koodi Arduinoon painamalla oikealle osoittavaa nuolta Arduino-ohjelman ylälaidassa.
  4.     Kun Arduino IDE on ladannut Firmatan (Alalaidassa lukee ”Lähetetty”) sulje Arduino IDE.

Avaa Snap4Arduino-ohjelmointiympäristö ja yhdistä Arduino-mikrokontrolleri ohjelmointiympäristöön painamalla ”Connect Arduino” turkoosin värisestä Arduino-valikosta.

Koodin rakentaminen Snap4Arduino -ohjelmointiympäristössä

Rakenna koodi esimerkin mukaan.

 

  1. Raahaa oranssista Ohjaus-välilehdestä ”kun klikataan (vihreä lippu)” -palikka ruudun keskellä olevalle Skriptit alueelle.
  2. Valitse Arduino-välilehdestä ”set digital pin (  ) to < >”-komento ja raahaa se rakennettavan ohjelmakoodin jatkoksi. 
  3. Valitse pinniksi pinni nro 13 avaamalla edellisen komennon alasvetovalikko mustasta alaspäin osoittavasta nuolesta.
  4. Klikkaa ”to”  sanan perässä olevaan timantinmuotoista laatikkoa jolloin pinni 13 aktivoituu (muuttuu vihreäksi).
  5. Klikkaa vihreää lippua oikeassa ylälaidassa. Ledin pitäisi syttyä.

Olet nyt sytyttänyt ledin. Saat ledin sammumaan seuraavasti:

  1. Valitse Ohjaus-välilehdestä “odota (1) sekuntia”-komento ja raahaa se koodin jatkoksi.
  2. Mene Arduino-välilehteen ja raahaa koodin perään”set digital pin (  ) to < >” palikka. Muuta pinnin numero taas 13:sta, mutta jätä käynnistys nappi off-asentoon.
  3. Klikkaa vihreää lippua oikeassa ylälaidassa.

Voit myös luoda vilkkuvan ledin lisäämässä edellisen koodin ympärille toistorakenteen.

  1. Aloita lisäämällä edellisen komennon jatkoksi odotus-komento, valitsemalla Ohjaus-välilehdestä ”odota (1) sekuntia” ja raahaa tämä koodin jatkoksi. Tätä vaihetta tarvitaan, jotta led pysyisi myös pois päältä tietyn aikaa.
  2. Toistorakenne löytyy Ohjaus-välilehdestä. Valitse toistokomento ”toista (10) kertaa”-komento ja raahaa se ”kun klikataan (vihreä lippu) alle ja muut koodit sisälle.
  3. Paina taas vihreää lippua, niin koodi aktivoituu.
  4. Voit muokata toistojen määrää korvaamalla luvun 10 haluamallasi toistomäärällä sekä muuttaa vilkkumisen taajuutta (eli nopeutta) vaihtamalla odotettavaa aikaa ledien päällä olon välillä esimerkiksi sekunnin murto-osiksi.

Muistathan että muokattu koodi tulee aina ladata uudelleen Arduinoon.


 

Tekstipohjainen ohjelmointi Arduino IDE:ssä

  1. Avaa Arduino IDE ohjelmointiympäristö.
  2. Kytke Arduino kiinni koneeseen USB A-B kaapelilla.
  3. Avaa uusi ohjelmointialusta valitsemalla Tiedosto valikosta Uusi
  4. Kopioi ja liitä seuraava koodi ohjelmointialustalle.
  5. Lataa koodi Arduino kehitysalustaan painamalla ylälaidassa olevaa oikealle osoittavaa nuolta eli Lähetä-painiketta. Mikäli lataamisessa ilmenee ongelmia, palaa lukuun Arduinon perusteisiin ja tarkista että oikea dataportti on valittu.

 

void setup() {

  pinMode(13, OUTPUT);

}

void loop() {     

  digitalWrite(13, HIGH);  

  delay(1000);          

  digitalWrite(13, LOW);

  delay(1000); 

}

 

Koodi rakentuu kahdesta funktiosta: setup-funktiosta ja loop-funktiosta. Ensimmäisen setup-funktion voi  ajatella käynnistävän Arduinon ja kaikki ne pinnit, joita tullaan käyttämään. Siinä määritellään, että pinni 13 valmistautuu antamaan ulos sähkövirtaa. Pinni 13:aan on liitetty ledin (+)-jalka ja (–)-jalka Arduinon GND pinniin.

Loop-funktio puolestaan toteuttaa varsinaisen toiminnan Arduino-kehitysalustalla. Tätä koodia luetaan ylhäältä alas. Esimerkkikoodissa pinni 13 aktivoidaan antamaan sähkövirtaa komennolla ”digitalWrite(13, HIGH);” Puolipiste (;) päättää komennon ja on siksi erittäin tärkeä.

Seuraava komento on ”delay(1000);” joka määrittää, että edellinen komento pidetään toiminnassa 1000 millisekuntia, eli yhden sekunnin ajan. Tämän jälkeen siirrytään seuraavalle koodin riville.

Komento ”digitalWrite(13, LOW);” määrittää ledin pois päältä.

Jälleen ”delay(1000);”-komennolla led pidetään sekunnin ajan pois päältä.

Kokeile rohkeasti muuttaa delay(1000)-komennon aikoja. Kokeile esimerkiksi kolmen sekunnin vilkutusta laittamalla delayn arvoksi 3000. Muistathan että muokattu koodi tulee aina ladata uudelleen Arduinoon.

 

Mitä seuraavaksi?

Osaisitko rakentaa liikennevalot? Lisää kytkentään ledejä ja ohjelmoi ne syttymään vuorollaan.

Voit myös siirtyä kokeilemaan painokytkintä!

Painokytkin

Painokytkin

Yleistä

Tässä ohjeessa käymme läpi painokoytkimen käyttöä Arduinolla. Painokytkimellä voit ohjata esimerkiksi valoa, moottoria tai muuta Arduinoon liitettyä laitetta.

Laite voidaan ohjelmoida tunnistamaan erilaisia ärsykkeitä ympäröivästä maailmasta. Tällöin tarvitaan sensoreita. Sensorien avulla laitteen voi rakentaa aistimaan erilaisia asioita, kuten kosketusta tai tunnistamaan valoisuutta. Laite joka tunnistaa kosketuksen on yksinkertaisinta rakentaa painokytkimellä. 

Tarvitset tehtävää varten tietokoneen.

Voit tehdä kytkennän alla mainituilla osilla tai hyödyntää valmista permaproto-kytkentää, jonka löydät Meta-boxi tarvikkeista. Permaproto-kytkennän kanssa tarvitset Arduino-mikrokontrollerin, tietokoneen ja USB-johdon.

 

Osat

Led

 

Vastukset

  • 220 Ohmin (värikoodi: punainen, punainen, ruskea, kulta)
  • 4,7 kOhmin (värikoodi: keltainen-violetti-punainen-kulta; vastuksen oma pohjaväri on tiilenpunainen)

Painokytkin

 

Arduino

 

Hyppylankoja

 

USB A-B

Koekytkentälevy

Kytkennät

Tee alla oleva kytkentä ennen siirtymistä ohjelmointi osioon. Voit tehdä kytkennän joko edellä mainituista irto-osista tai kokeilla ensin valmiilla perma-proto kytkennällä. Tällöin riittää että kytket hyppylangat kuvan mukaisesti oikeisiin kohtiin Arduinossa.

Ohjelmointi

 

Graafinen ohjelmointi Snap4Arduinolla

Snap4Arduino ja Arduino-mikrokontrollerin yhdistäminen
  1.     Avaa Arduino IDE
  2.     Kytke Arduino UNO koneeseen USB kaapelilla
  3.     Avaa Arduino IDE ja lataa Arduinoon Firmata-koodi. (Tiedosto -> Esimerkit -> Firmata -> StandartFirmata). 
  4.     Avaa Snap4Arduino-ohjelmointiympäristö ja aktivoi Arduino ohjelmointiympäristöön painamalla ”Connect Arduino”.
Koodin rakentaminen Snap4Arduino -ohjelmointiympäristössä

Rakenna koodi esimerkin mukaan.

Koodin rakentaminen Snap4Arduino-ohjelmointiympäristössä

Alla koodi rakennetaan kohtakohdalta.

Tietääksesi onko nappi painettu, on napin tila tallennettava. Tälläisten tietojen tallentamiseen ohjelmoinnissa käytetään muuttujia. Muuttuja voi olla mikä vain sana ja se tulee määritellä itse.

  1. Määrittele muuttuja Muuttujat-välilehdestä. Valitse ”Uusi muuttuja” ja anna muuttujan nimeksi jokin kuvaava nimi. Esimerkiksi ”nappi”.
  2. Aloita koodi valitsemalla Ohjaus-välilehdestä komento ”kun klikataan (vihreä lippu)”.
  3. Valitse Ohjaus-välilehdestä ”ikuisesti”-komento ja raahaa se koodin jatkoksi.
  4. Seuraavaksi määritellään aiemmin luodun muuttujan pinni Arduinosta. Valitse Muuttujat-välilehdestä komento ”aseta muuttujan [ ] arvoksi [ ]” ja raahaa se ohjelman jatkoksi.
  5. Valitse koodissa muuttujan alasvetovalikoista muuttujaksi ”nappi” ja arvoksi määrittele pinni 9. Pinni määritellään oikeaksi valitsemalla Arduino-välilehdestä ”<digital reading ( )>” ja raahamalle se koodiin. Valitse alasvetovalikosta käyttöön pinni 9.

Tämän jälkeen rakennetaa ehtolauseet ledin toiminnalle painokytkimen perusteella.

  1. Valitse Ohjaus-välilehdestä ”jos”-ehtolause ja raahaa se koodin jatkoksi.
  2. Aseta ehtolauseen ehdoksi Laskenta-välilehdestä ”on yhtä kuin” eli ”[ ] = [ ]”-komento. Valitse Muuttujat-välilehdestä aiemmin itse luotu muuttuja ”nappi” ja raahaa se vielä edellisen komennon arvoksi. Seuraavaan vapaaseen laatikkoon valitaan Laskenta-välilehdestä ”<tosi>”-komento. Näin määrität muuttujan saamaan arvon sen perusteella, onko pinnissä 9 tunnistettu sähkövirta vai ei.
  3. Luo ehtolauseen sisään seuraavaksi tapahtuma, joka seuraa jos ehtolause toteutuu. Huomaa, että ehtolauseet menevät tässä tapauksessa väärinpäin. Tosi on epätosi ja epätosi on tosi. Tämä johtuu Arduinon tekniikasta. Klikkaa ehtolause siis epätodeksi.

Rakenna seuraavaksi koodi, joka vilkuttaa lediä päälle ja pois tämän ehtolauseen toteutuessa. Voit tarkistaa koodin rakenteen joko Led päälle ja pois -tehtävästä tai allaolevasta koodikuvasta.

Viimeiseksi luo uusi jos-ehtolause, missä määrität mitä tapahtuu kun painokytkintä ei paineta. Tällöin led pitää saada sammumaan.


 

Tekstipohjainen ohjelmointi Arduino IDE:ssä

Kopioi ja liitä alla oleva koodi Arduinoon. Voit kirjoittaa koodin myös kokonaan käsin alla olevan vaiheittaisen ohjeen mukaan.

Koodi kokonaisuudessaan:

const int buttonPin = 9;
const int ledPin = 13;

int buttonState = 0;
void setup() { 
pinMode(ledPin, OUTPUT); 
pinMode(buttonPin, INPUT_PULLUP); 
}
void loop() {
 buttonState = digitalRead(buttonPin);
 if (buttonState == HIGH) {
 digitalWrite(ledPin, HIGH);
 delay(1000);
 digitalWrite(ledPin, LOW);
 delay(1000);
 }
else {
 digitalWrite(ledPin, LOW);
 }
 }

 

VAIHEET:

1. Määrittele ensin muuttujat niille pinneille, joita kytkennässä käytetään. Ledi tulee pinniin 13 ja painokytkin pinniin 9.

const int buttonPin = 9;
const int ledPin =  13;

2. Määrittele muuttuja, joka on arvo jonka kytkin saa aluksi oletuksena. Toisinsanoen kytkin ei ole päällä kun sitä ei paineta.

int buttonState = 0;

3. Määrittele ensimmäinen funktio, joka aktivoi pinnit joissa on kiinni ledi ja painokytkin. Huomaa, että painokytkin onkin ”vastaanottajana” ja nimetty muotoon INPUT_PULLUP.

void setup() {
pinMode(ledPin, OUTPUT);
pinMode(buttonPin, INPUT_PULLUP);
}

4. Määrittele koodi, joka lukee aluksi painokytkimen arvon ja mahdollisen muutoksen. Arduino tunnistaa onko painike painettu seuraavalla koodilla. Sama koodi viestii myös kohdassa 2. määritellyn muuttujan muutoksen joksikin muuksi kuin arvoksi 0.

 
void loop() { buttonState = digitalRead(buttonPin);

5. Määrittele seuraavaksi mitä tapahtuu kun painokytkin on painettu alas. Tällöin se ilmenee Arduinolle arvona HIGH. Kun pinniin 9 virtaa sähkövirta, alkaa led vilkkumaan. Muussa tapauksessa (else) pinni on pois päältä.

if (buttonState == HIGH) { 
digitalWrite(ledPin, HIGH); 
delay(1000); 
digitalWrite(ledPin, LOW); 
delay(1000); } 

else { 
digitalWrite(ledPin, LOW); 
 } 
}

Mitä seuraavaksi?

Tutustu seuraavaksi sähkömoottorin pyörittämistä. Voit sen jälkeen kokeilla saatko kontrolloitua moottoria painokytkimellä?

Sähkömoottori

Sähkömoottori

Yleistä

Sähkömoottori voidaan käynnistää ja sammuttaa halutuksi ajaksi käyttäen Arduino-kehitysalustaa.

Pyörittääksesi sähkömoottoria tarvitset avuksi transistorin. Transistori on katkaisija, jota voidaan käyttää Arduinon digitaali pinneistä otettavalla virralla. Transistori katkoo Arduinosta saatavaa 5V sähkövirtaa. Transistorin käyttäminen on välttämätöntä, koska suoraan Arduinon digitaalipinneistä saadaan vain 30mA sähkövirta, joka riittää ledin sytyttämiseen, mutta moottori vaatii käynnistyäkseen usein reilusti yli 200mA.

Osat

Sähkömoottori

Meta-Boxin irtokomponenteissa tuleviin moottoreihin on lisätty johdot, jotka helpottavat moottorin liittämistä koekytkentälevyyn.

Transistori (BD139)

Transistori on kuin ohjelmoitava katkaisija. Transistorin on kestettävä tarpeeksi suuri sähkövirta (ampeerit), joka riippuu käytettävästä moottorista. Esimerkissä käytetään BD139 transistoreja.

 

 

Vastus

220ohm (Värikoodi: Punainen-punainen-ruskea-kulta)

Diodi

Diodilla suojataan transistoria, sillä sähkömoottori toimii myös generaattorina silloin, kun se jatkaa pyörimistä vapaasti, ilman sille annettua sähkövirtaa.

Arduino

Koekytkentälevy

 

 

Hyppylangat

 

 

USB-kaapeli (A-B)

 

Kytkennät

Tee alla oleva kytkentä ennen siirtymistä ohjelmointi osioon. Voit tehdä kytkennän joko edellä mainituista irto-osista tai kokeilla ensin valmiilla perma-proto kytkennällä. Tällöin riittää että kytket hyppylangat kuvan mukaisesti oikesiin kohtiin Arduinossa.

Huomaathan että transistorin asennolla ja diodin suunnalla on merkitystä.

Ohjelmointi

Graafinen ohjelmointi Snap4Arduinolla

  1.     Avaa Arduino IDE
  2.     Kytke Arduino UNO koneeseen USB kaapelilla
  3.     Avaa Arduino IDE ja lataa Arduinoon Firmata-koodi. Kuvasta näkyy, mistä koodi löytyy.

4. Avaa Snap4Arduino-ohjelmointiympäristö.
5. Rakenna koodi esimerkin mukaan. Muista yhdistää Arduino ohjelmaan painamalla ohjelman valikosta ”Connect Arduino”. (Klikkaa
kuva suuremmaksi.)

 

Koodin rakentaminen Snap4Arduino ohjelmointiympäristössä

Rakenna koodi esimerkin mukaan.

 

 

  1.     Valitse Ohjaus-välilehdestä ”kun painetaan välilyönti” (huom. ´välilyönti´ löytyy komennon alasvetovalikosta.)
  2.     Valitse Ohjaus-välilehdestä ”toista (  ) kertaa”-komento ja raahaa se rakennettavan ohjelmakoodin jatkoksi. Täytä kenttään haluamasi kerta toistoja. Aloita pienellä toistomäärällä ja kasvata lukua kun kytkentä ja koodi toimii.
  3.      Valitse Arduino-välilehdestä aktiiviseksi digitaalipinni 6. Raahaa jälleen komento jatkoksi toista-komennon sisälle. Katso esimerkkikuvasta näkymä. Mikäli kytket useamman moottorin ohjelmoitavaksi, aktivoi aina se digitaalipinni, mihin kyseisen moottorin kytket.
  4.     Valitse Ohjaus-välilehdestä ”odota (  ) sekuntia”-komento ja raahaa se komennon jatkoksi. Tämä komento määrittelee kuinka monta sekuntia moottori on päällä.
  5.     Tämän jälkeen se tulee sammuttaa. Ilman sammutuskomentoa moottori olisi päällä jatkuvasti. Valitse siis jälleen Arduino-valikosta ”set digital pin (6) to…”-komento, raahaa se komennon jatkoksi ja määritä se sammuttamaan signaali klikkaamalla ”to” sanan jälkeistä ruutua kahdesti, niin että se muuttuu punaiseksi.
  6.     Määritä lopuksi kauanko moottori pidetään pois päältä ennen palaamista toistokomennon alkuun. Käytä tähän jällleen Ohjaus-valikon ”odota (  ) sekuntia”-komentoa.

Painamalla välilyöntiä, moottori käynnistyy ja sammuu määrittelemäsi määrän kertoja.


 

Tekstipohjainen ohjelmointi Arduino IDE:ssä

1. Avaa Arduino IDE ohjelmointiympäristö.
2. Kytke Arduino kiinni koneeseen USB A-B kaapelilla.
3. Avaa uusi ohjelmointialusta valitsemalla Tiedosto valikosta Uusi
4. Kopioi ja liitä seuraava koodi ohjelmointialustalle.
5. Tutustu koodin rakentumiseen joko kirjoittamalla koodi kokonaan itse ohjeiden mukaan, tai kopioimalla kokonainen koodi sivun lopusta. Lataa koodi Arduino kehitysalustaan painamalla ylälaidassa olevaa oikealle osoittavaa nuolta eli Lähetä-painiketta. Mikäli lataamisessa ilmenee ongelmia, palaa lukuun Arduinon perusteisiin ja tarkista että oikea dataportti on valittu.

6. Koodi rakentuu kahdesta funktiosta: setup-funktiosta ja loop-funktiosta. Ensimmäisen setup-funktion voi ajatella käynnistävän Arduinon ja aktivoivan kaikki ne pinnit, joita tullaan käyttämään. Siinä määritellään, että pinni 13 valmistautuu antamaan ulos sähkövirtaa. Pinni 13:aan on liitetty ledin (+)-jalka ja (–)-jalka Arduinon GND pinniin.

void setup() {
pinMode(13, OUTPUT);
}

7. Loop-funktio puolestaan toteuttaa varsinaisen toiminnan Arduino-kehitysalustalla. Tätä koodia luetaan ylhäältä alas. Esimerkkikoodissa pinni 13 aktivoidaan antamaan sähkövirtaa komennolla ”digitalWrite(13, HIGH);” Puolipiste (;) päättää komennon ja on siksi erittäin tärkeä.

void loop() {
digitalWrite(13, HIGH);

8. Seuraava komento on ”delay(1000);” joka määrittää, että edellinen komento pidetään toiminnassa 1000 millisekuntia, eli yhden sekunnin ajan. Tämän jälkeen siirrytään seuraavalle koodin riville.

delay(1000);

9. Komento ”digitalWrite(13, LOW);” määrittää ledin pois päältä.
Jälleen ”delay(1000);”-komennolla led pidetään sekunnin ajan pois päältä.

digitalWrite(13, LOW);
delay(1000);
}

10. Lopuksi vielä kokonainen koodi:

void setup() {
pinMode(13, OUTPUT);
}

void loop() {
digitalWrite(13, HIGH);
delay(1000);
digitalWrite(13, LOW);
delay(1000);
}

Kokeile rohkeasti muuttaa delay(1000)-komennon aikoja. Kokeile esimerkiksi kolmen sekunnin vilkutusta laittamalla delayn arvoksi 3000. Muistathan että muokattu koodi tulee aina ladata uudelleen Arduinoon.

Mitä seuraavaksi?

Mitä voisit pyörittää moottorilla? Tutustuitko jo painokytkimen toimintaan? Voit esimerkiksi kokeilla moottorin ohjausta painokytkimellä?

Voit seuraavaksi kokeilla joko interaktivisten graafisten ohjelmien tekemistä Processing-ohjelmointialustalla tai testata miten liiketunnistin toimii!