Bygg ein trådlaus vêrstasjon med Arduino MKR WiFi 1010 og BMP280/BME280
Dagens læringsaktivitet
Du skal lage eit trådlaust sensorsystem som blir programmert i Arduino. Du skal bruke eit Arduino MKR WiFi 1010 utviklingskort og ein sensor som måler temperatur, trykk og fukt og sender data til Deploii-nettsida.
Dataa kan visast i sanntid på nettsida og lagrast i skya. Seinare kan du laste ned dataa i ønskt filformat (.csv, .txt osb.) og analysere dei vidare i Python eller Excel.
Slik kan eit ferdig oppsett sjå ut:
Utstyr
Til denne oppgåva treng du følgande utstyr:
Arduino MKR WiFi 1010
USB-A-til-mikro-USB-B-kabel med signallinje
pc som køyrer Windows, Mac OS eller Linux
BMP280/BME280 sensor (måler temperatur, trykk og nokre måler fukt)
leidningar og koplingsbrett (breadboard)
Arduino IDE installert (versjon 2.0 eller nyare)
Deploii-biblioteket installert, og dessutan Board Manager for Arduino MKR WiFi 1010 (eventuelt òg drivarar)
brukar på Deploii
Oppkopling
Det trengst berre fire koplingar for å drive ein BMP280/BME280. Han treng straum/VCC (3,3 volt) og jord for straumtilførsel. For å hente ut data gjennom I2C til sensoren må du kople sensoren til pin SCL (pin 12) og SDA (pin 11).
Sjå vedlegg for pinout-diagram av MKR WiFi 1010.
MKR WiFi 1010 | BME280 |
|---|---|
| VCC | VCC |
| GND | GND |
| SCL (12) | SCL |
| SDA (11) | SDA |
NDLA-boksen

Du kan òg velje å bygge prosjektet inn i ein støytsikker boks, til dømes NDLA-boksen.
Deploii-nettsida
Når alt er installert, loggar du deg inn på innloggingssida til Deploii. Deretter må du setje opp følgande (helst i rekkefølge):
eit kort av typen Arduino MKR WiFi 1010
datastraumar, gjerne kalla Temperatur, Trykk, Fukt og BME280
ein måleserie
eit kontrollpanel med
ein graf som viser datastraumane Temperatur, Trykk og Fukt
ein terminal som viser datastraumen BME280
ei talvisning som viser datastraumen Temperatur
ei talvisning som viser datastraumen Trykk
ei talvisning som viser datastraumen Fukt
Om du lurer på noko undervegs, kan du sjekke ut dei generelle guidane for Deploii på NDLA. Dei viser deg korleis du utfører dei ulike trinna i lista over. Deploii-filmane kan òg vere gode hjelpemiddel. Og så kan du sjølvsagt òg spørje læraren din om hjelp.
Programmering
Dømekode
Du finn ein dømekode for sensoren BME280 i eit vedlegg sist i denne artikkelen. Denne koden får sensoren til å måle temperatur, trykk og fukt. Så blir dataa sende til Deploii. Men du må tilpasse dømekoden litt og setje opp alt rett på nettsida.
Har du ein BMP280 utan fuktmåling, må du oppdatere koden ved å fjerne kodelinjene som inneheld avlesing av fukt.
Test ut
No som du har sett opp og programmert alt, skal du teste systemet.
Klarer du å få inn nokon data på kontrollpanelet?
Kva slags data ser du?
I kva format synest du dataa er enklast å lese av?
Fungerer datainnsamlinga òg om du koplar Arduinoen din til ein annan pc?
Klarer du å laste ned dataa du har målt?
Kva slags data finn du i fila du har lasta ned?
Dataanalyse med Python eller Excel
No skal du bruke kunnskapane dine til å hente ut og analysere data. Start ein ny måleserie på nettsida for datastraumen du har laga for temperatur, trykk og fukt.
Etter at du har fått ned eit tilstrekkeleg tal datapunkt, til dømes 200 i løpet av ein ti minutts periode, kan du laste ned måleserien.
Fila du får, vil ha same namn som datastraumen din, og ho er stempla med dato og tid slik at du kan halde oversikt over kva fil som er nyast. Når fila er på pc-en din, kan du laste ho inn i Python eller Excel og til dømes lage grafar og studere dataa i større detalj.
Filer for nedlasting
Her finn du eit døme på programvare som kan prøvast ut for å få systemet til å fungere.
Relatert innhald
Deploii let deg kople mikrokontrollarar til nettsida deploii.no, slik at du kan samle inn og visualisere data via eit kontrollpanel.
For å opprette kommunikasjon mellom eit utviklarkort og Deploii må du gjere nokre grunnleggande oppsett på Deploii og programmere mikrokontrolleren din.

