Hyppää sisältöön
    • Suomeksi
    • På svenska
    • In English
  • Suomi
  • Svenska
  • English
  • Kirjaudu
Hakuohjeet
JavaScript is disabled for your browser. Some features of this site may not work without it.
Näytä viite 
  •   Ammattikorkeakoulut
  • Turun ammattikorkeakoulu
  • Opinnäytetyöt (Avoin kokoelma)
  • Näytä viite
  •   Ammattikorkeakoulut
  • Turun ammattikorkeakoulu
  • Opinnäytetyöt (Avoin kokoelma)
  • Näytä viite

Implementing a fan controller

Teeri, Oskari (2017)

 
Avaa tiedosto
Teeri_Oskari.pdf (780.1Kt)
Lataukset: 


Teeri, Oskari
Turun ammattikorkeakoulu
2017
All rights reserved
Näytä kaikki kuvailutiedot
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2017052410110
Tiivistelmä
Tämän opinnäytetyön tarkoituksena oli toteuttaa yleinen – sulautettuihin järjestelmiin soveltuva projekti, käyttäen helposti saatavilla olevia avoimia ohjelmakirjastoja ja osia. Työ ei ollut toimeksianto, vaan se toteutettiin itsenäisenä projektina. Opinnäytetyössä toteutettiin tuuletinohjain, jota ohjattiin USB-väylän kautta annettavilla komennoilla. Tietorakenteita ja mahdollisia toteustapoja tutkittiin erityisesti sulautettuihin järjestelmiin soveltuvalla tavalla.

Alustana käytettiin Microchipin AVR-mikrokontrolleria, ja sille tarkoitettuja avoimen lähdekoodin kirjastoja. ATMega32u4 valittiin mikrokontrolleriksi, sen sisältämien ominaisuuksien vuoksi, ja sille toteutettiin opinnäytetyön aikana ohjelma, jonka tarkoitus oli ohjata useita tuulettimia käyttäjän komentojen perusteella.

Ohjelman USB-ohjaukseen käytetään LUFA-kirjastoa, joka on AVR-alustalle tarkoitettu avoin USB-ohjelmakirjasto. Mikrokontrolleri vastaanottaa käyttäjän komennot USB-CDC-protokollan kautta, jonka toteutus oli tehty LUFAssa. Lisäksi opinnäytetyössä tehtiin USB-ohjelmakirjastojen välistä vertailua.

Opinnäytetyössä tutkittiin teoriatasolla tietorakenteita, ja niiden yleistä soveltuvuutta sulautettuihin järjestelmiin. Erityistä huomiota kiinnitettiin linkitettyjen listojen toteutukseen. Työ selvitti sulautetuissa järjestelmissä käytettäviä C- ja C++-standardeja, sekä niiden eroavaisuutta tavallisen ohjelmistokehityksen näkökulmasta. Lisäksi vertailtiin modernia C++:aa ohjelman nykyiseen, C-kieliseen toteutukseen. Lopulta tutkittiin C++:an yleistä soveltuvuutta sulautettuihin järjestelmiin. Tähän kuului esimerkiksi C++:an turvallisuutta heikentävien ominaisuuksien tutkiminen reaaliaikasysteemeissä.

C++-osuutta ei toteutettu työn aikana, vaan se perustui teoreettiseen pohdiskeluun. Käytännössä työn aikana toteutettiin ainoastaan toimiva C-kielinen ohjelma. Työn tuloksia voisi soveltaa samankaltaista C++-projektia suunniteltaessa.
 
Kokoelmat
  • Opinnäytetyöt (Avoin kokoelma)
Ammattikorkeakoulujen opinnäytetyöt ja julkaisut
Yhteydenotto | Tietoa käyttöoikeuksista | Tietosuojailmoitus | Saavutettavuusseloste
 

Selaa kokoelmaa

NimekkeetTekijätJulkaisuajatKoulutusalatAsiasanatUusimmatKokoelmat

Henkilökunnalle

Ammattikorkeakoulujen opinnäytetyöt ja julkaisut
Yhteydenotto | Tietoa käyttöoikeuksista | Tietosuojailmoitus | Saavutettavuusseloste