Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
  1. Tee ohjelma, joka lukee luvun, joka sisältää kolme numeroa sarjaportin kautta Arduinolle muuttujaksi. Vähän apuja saa esimerkistä MultiSerialMega tai Dimmer. Tee tehtävä siten, että aina on annettava kolme merkkiä. Jos luvun arvo on pienempi kuin 100, annetaan etunollat. Näytä arvo ledin kirkkautena. 2p

  2. Tee edelliseen ohjelmaan lisäys, joka skaalaa annetun arvon välille 0...255 eli sisään 0...999 ja ulos 0...255.Näytä arvo ledin kirkkautena. 2p
  3. Lisää edelliseen ohjelmaan toinen ledi ja "saturoi" sille vietävä arvo arvoon 255. Näytä arvo ledin kirkkautena. 2p
  4. Tee ohjelma, joka lukee sarjaportilta enimmillään neljä numeroa ja kun on annettu A, viedään luku muuttujaan. Tee ohjelmaan tarkastus, ettei hyväksytä muita kuin numeroja (kts. esimerkki CharacterAnalysis)  esim. isDigit(merkki) ja ettei syötettäviä numeroita ole yli neljää. Lopuksi tarkasta, ettei luku ole yli 1024. Jos kaikki ehdot toteutuvat, talleta sarjaportilta tullut arvo muuttujaan. 6p
  5. Tee edellinen tehtävä siten, että luet kaikki merkit merkkijonomuuttujaan String jono ja muutat arvon String luokan funktiolla stringToInt kokonaisluvuksi. 3p
  6. Tee ohjelma, joka säätää aseklmoottorin nopeuta. Kts. ohjeitA http://www.instructables.com/id/Arduino-Motor-Shield-Tutorial/
  7. Tee ohjelma, joka lukee kaksi analogia-arvoa ja saturoi ensimmäisen arvon suurimmillaan arvoon 100 ja skaalaa toisen arvon 0...1024 -> 0...200. Tämän jälkeen arvot lasketaan yhteen. Summa saturoidaan välille 0...255 ja laitetaan lediin 13. 4p
  8. Tee liikennevalot Arduinolla 1 autoille ja 1 jalankulkijoille (etsi apuja googlella, esim. täältä) Tee kytkennät koekytkentälevylle.  6p
  9. Lisää kytkentään potentiometri, jolla säädät autoille määräytyvää vihreää aikaa. 2p
  10. Lisää kytkentään nappi, jolla jalankulkijat voivat pyytää valojen vaihtoa. 2p
  11. Simuloi tien magneettikierukkaa napilla, siten että jalankulkijoille on aina vihreä valo, kun autoa ei ole tulossa. 2p
  12. Tee Arduinolle ohjelmallinen laskuri, joka laskee dig.tulon 1 nousevia reunoja. 2p
  13. Muuta tehtävää siten, että estetään kosketinvärähtelyjen laskeminen. Eil kaikki kytkennät jotka tapahtuvat 0.2 sekunnin aikana ensimmäisestä kytkennästä pitää estää. 2p
  14. Kytke Arduinoon pulssianturi(simuloi kahdella napilla) ja tee ohjelma, joka laskee ylöspäin kun anturia pyöritetään myötäpäivään ja vastapäivään pyöritettäessä laskurin arvoa vähennetään.  2p . Tee ohjelmaan lisäys, joka tarkastaa, että molemmat pulssianturijn kanavat tulevat oikeassa järjestyksessä. Ohjelma ei saa pysähtyä odottelemaan toista kanavaa 5p.
  15. Lisää ohjelmaan ominaisuus, joka nollaa laskurin, kun anturin indeksipulssi on tilassa 1 ja kotiasemapulssi on tosi. 2 p.
  16. Suunnittele yksinkertainen polttoaineen suihkutusjärjestelmä. Järjestelmä sisältää  lambda-säädön  lambda control tuloina ovat pyyntö, lämpötila -30+120 astetta Celsiusta ja  lambda-arvo 0...5 V  ja lähtöinä kaasuläpän 0..255 ja polttoainesuihkutuksen asema(määrä) 0..255 .  Demoa järjestelmää potentiometrilla ja ja lähtöjä kahdella ledillä. Kun lämpötila on alle 80 astetta, rikastetaan polttoaineen syöttöä. Jos labda-arvo on välillä 0..0,5 V tai 4,5...5 V, ollaan virhetilassa. 2,5 V on oike seos ja alle 2,5 V rikkas seos. Jos lämpötila on yli 100 astetta, annetaan hälytys ledillä. 6 p.
  17. Liitä edelliseen tehtävään servomoottori säätämään kaasuläppää. 5 p