Web-käyttöliittymä sulautetun tietokonelaitteiston ohjaamiseen
Jernström, Harri (2012)
Jernström, Harri
Metropolia Ammattikorkeakoulu
2012
All rights reserved
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2012121219175
https://urn.fi/URN:NBN:fi:amk-2012121219175
Tiivistelmä
Insinöörityön tavoitteena oli kehittää WWW-pohjainen käyttöliittymä ja tarvittava ohjelmisto Beagleboard-mallisen sulautetun tietokoneen laitteiston ohjaukseen. Ohjattavaksi laitteistoksi määritettiin Beagleboardilla olevat laajennusväylät ja niiltä löytyvät signaalit. Työssä oli tarkoitus valita käyttöjärjestelmä ja sopivat ohjelmistot ja asentaa ja konfiguroida nämä toimivaksi kokonaisuudeksi.
Beagleboardin laitteisto toimii ARM-prosessorilla, ja työssä perehdyttiin myös ristiinkääntämisen eri vaiheisiin ja yksityiskohtiin. Työssä asennettiin ja konfiguroitiin ristiinkääntämistä varten crosstools-ng -työkaluketju ja käytettiin sitä sekä Lighttpd WWW-palvelimen että oheiskirjastojen kääntämiseen. Kaikki kirjastot käännettiin dynaamisesti linkitettäviksi.
Laitteiston ohjaamiseksi työssä perehdyttiin Beagleboardin eri laajennusväyliin ja niiltä löytyviin signaaleihin, kuten GPIO ja I²C, ja niiden käyttöön omissa ohjelmissa. GPIO:n käyttö sysfs-tiedostorakenteen kautta osoittautui yksinkertaiseksi ja helpoksi. I²C:n käyttöön perehdyttiin lähinnä teoriassa.
Työssä kehitettiin myös WWW-pohjainen demo-ohjelma, jonka avulla voi ohjata Beagleboardissa olevia ledivaloja GPIO:n avulla. Ohjelmaa kehitettäessä ja testattaessa löytyi joitain mahdollisia ongelmakohtia ledivalojen tilatiedon synkronoinnissa, jotka kannattaa ratkaista, jos tällaista ohjausohjelmistoa halutaan käyttää jossakin todellisessa projektissa.
Beagleboardin laitteisto toimii ARM-prosessorilla, ja työssä perehdyttiin myös ristiinkääntämisen eri vaiheisiin ja yksityiskohtiin. Työssä asennettiin ja konfiguroitiin ristiinkääntämistä varten crosstools-ng -työkaluketju ja käytettiin sitä sekä Lighttpd WWW-palvelimen että oheiskirjastojen kääntämiseen. Kaikki kirjastot käännettiin dynaamisesti linkitettäviksi.
Laitteiston ohjaamiseksi työssä perehdyttiin Beagleboardin eri laajennusväyliin ja niiltä löytyviin signaaleihin, kuten GPIO ja I²C, ja niiden käyttöön omissa ohjelmissa. GPIO:n käyttö sysfs-tiedostorakenteen kautta osoittautui yksinkertaiseksi ja helpoksi. I²C:n käyttöön perehdyttiin lähinnä teoriassa.
Työssä kehitettiin myös WWW-pohjainen demo-ohjelma, jonka avulla voi ohjata Beagleboardissa olevia ledivaloja GPIO:n avulla. Ohjelmaa kehitettäessä ja testattaessa löytyi joitain mahdollisia ongelmakohtia ledivalojen tilatiedon synkronoinnissa, jotka kannattaa ratkaista, jos tällaista ohjausohjelmistoa halutaan käyttää jossakin todellisessa projektissa.