Microsoft – Windows 10 IoT, sääasema

Aiemmin kirjoitin IoT -tietokoneille tarkoitetusta Microsoftin käyttöjärjestelmästä Windows 10 IoT Core ja tätä hyödyntävästä Adafruitin aloituspaketista Microsoft IoT Pack for Raspberry Pi 2, sekä suorittamastani lyhyestä harjoitustyöstä Hello Blinky.

Microsoft on koonnut näiden harjoitustöiden yksityiskohtaiset ohjeet sivulle Starter Pack for Windows 10 IoT Core on Raspberry Pi 2. Tämä kirjoitukseni kattaa kohdasta Lesson 2: Starter Projects harjoituksen Weather Station ja sieltä version, jossa käytetään anturia BMP280.

Raspberry Pi 2 - sääasema

Raspberry Pi 2 – sääasema

Kuvassa yllä on aloituspaketin harjoitussovelluksen sääasema kaikessa yksinkertaisuudessaan. Koekytkentälevylle on laitettu yksi BMP280 -anturi, joka on kytketty ohjeen mukaisesti Raspberry Pi 2 Model B -tietokoneeseen. Olen nyt suojannut Raspberryn tyylikkäällä kotelolla, joka myös kuuluu aloituspakettiin.

Alla vielä lähikuva Adafruit BMP280 Barometric Pressure & Altitude -anturista, josta saadaan tiedot lämpötilasta ja ilmanpaineesta, sekä ilmanpaineen perusteella myös korkeudesta suhteessa merenpintaan.

BMP280 -anturi koekytkentälevyllä

BMP280 -anturi koekytkentälevyllä

Jostakin syystä en tällä harjoituskerralla tarvinnut ollenkaan kiinteätä verkkoa, vaan langaton verkko toimi riittävän hyvin koko ajan. Sovellus ei kuitenkaan meinannut käynnistyä, joten yritin pariin otteeseen komentoja Rebuild ja Deploy. Nämä menivät lopulta läpi ja käynnistin sovelluksen komennolla Start Debugging.

Kuvassa alla varmistin, että IoT Dashboardissa näkyvä laitenimi on sama, jonka kirjoitin Visual Studiossa etäkoneen nimeksi projektin asetuksissa. Tässä asetetut valinnat ovat erityisen tärkeät ohjelman suorittamisen kannalta.

Visual Studio - asetusten tarkistelua

Visual Studio – asetusten tarkistelua

Täydennettävää koodia oli tässä harjoituksessa hieman aiempia enemmän, mutta ei paljon vieläkään. Kuten kuvasta alla näkyy, aiemmasta poiketen rohkenin kirjoittaa osan koodilistauksesta eri lailla kuin ohjeessa: suomensin joitakin muuttujien nimiä ja käyttäjälle näkyviä tekstejä.

Aiemmat suorittamani harjoitustyöt (Hello Blinky ja World Map of Makers) näyttivät sovelluksen onnistuneen suorituksen vilkuttamalla koekytkentälevylle laitettua ledivaloa. Tämä sääasema puolestaan kirjoittaa anturin tuottamaa säädataa Visual Studion Output -ikkunaan.

Visual Studio - sääasema käynnissä

Visual Studio – sääasema käynnissä

Sovelluksen mittaama lämpötila n. 25 astetta lienee melko tarkka lukema auringonpaisteiselta pöydältä. Ilmanpaine n. 99 500 Pa on koko lailla lähellä, mutta hieman alle Ilmatieteenlaitoksen ilmoittaman n. 1 000 hPa:n, eli n. 100 000 Pa:n paineen. Tästä erosta johtunee myös korkeusarvon melkoisen suuri ero todelliseen, vai olisiko vakiomuuttuja paineMerenPinnanTasalla pitänyt olla jotakin muuta kuin 1013.25F?

Jonkinlaisena kannustimena harjoitusten tekoon saa sovelluksen suorittaja oman merkkinsä Sääaseman maailmankartalle. Oma merkkini ilmaantui odotetusti IP-osoitteeni perusteella Mannerheimintielle. Mikäli et tiedä minne oma merkkisi ilmaantuu, voit tarkistaa asian internetin lukuisista what is my ip -palveluista.

Alla karttakuva ennen ja jälkeen harjoituksen. Luku 7 kertoo yksinkertaisesti sen, että suoritin sovelluksen 7 kertaa ja jokaisella kerralla se ajoi funktion MakePinWebAPICall(), joka ymmärrykseni mukaan lähettää sijaintitiedon Adafruitin Azure -palvelimelle.

Suomi maailmankartalle

Suomi maailmankartalle

No oliko tämä nyt sitä asioiden internettiä?

Asioiden internetissä (Esineiden ja asioiden internet, Teollinen internet ja Internet of Things, IoT) on hyvin pitkälti kyse siitä, että erilaisilla antureilla kerätään tietoa maailmasta ja tämä tieto lähetetään mieluiten langattomasti jonnekin tallennettavaksi, analysoitavaksi ja hyödynnettäväksi.

Tässä harjoituksessa aiemmista suorittamistani poiketen oli käytössä tyypillinen IoT -anturi BMP280. Harjoituksessa ei anturin tuottamaa dataa tallennettu tai lähetetty minnekään, eikä enemmälti myöskään analysoitu, se vain tulostettiin sovelluskehitysvälineen Output -ikkunaan.

Anturin ja Raspberryn näkökulmasta anturidataa lähti langattomasti maailmalle, vaikka se jäikin sovelluskehitysympäristön sisälle. Ulos maailmaan lähti oikeasti vain tieto sovelluksen suorittamisesta.

Sääasemaharjoituksessa on aidosti kyse asioiden internetistä, sen alkulähteestä, eli anturien tuottamasta datasta. Nämä säätiedot Raspberry Pi 2 keräsi BMP280 -anturilla ja onnistumisen merkiksi maailmalle lähti tieto, joka näkyy harjoituksen nettisivulla.

Kyllä. Tämä on nyt sitä asioiden internettiä. Ei puhtainta, eikä täydellistä, mutta hyvä alku.

Amorphis – You I Need

Teidän nöyrin,

P.Tärkeä

Mainokset