Hopp til innhald
Nynorsk

Fag

Oppgåve
Interaktivt innhald

Bygg ein trådlaus vêrstasjon med Arduino MKR WiFi 1010 og BMP280/BME280

Lag eit trådlaust sensorsystem i Arduino med ein Arduino MKR WiFi 1010 og ein kombinert temperatur-, trykk- og fuktsensor.

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 til sensoren må du kople sensoren til pin SCL (pin 12) og SDA (pin 11).

Sjå vedlegg for pinout-diagram av MKR WiFi 1010.

Oppkopling: MKR WiFi 1010 og BME280

MKR WiFi 1010

BME280

VCCVCC
GNDGND
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

Installasjon (Arduino IDE)

Om du ikkje har installert noko frå før av, kan du gjere følgande:

  1. Først installerer du Arduino IDE ved å følge oppstartsguiden for Arduino.

  2. Deretter må du laste ned ein såkalla Board Manager, Arduino SAMD Boards og kanskje òg ein COM Port Driver. Filmane om Deploii viser deg korleis du kan gjere dette.

  3. Så må du laste ned biblioteket for Deploii i Arduino IDE. Dette gjer du via den innebygde bibliotekfunksjonen i Arduino.

  4. Til slutt må du installere biblioteket for sensoren BMP280/BME280. Dette biblioteket heiter @@BMx280MI og er laga av Gregor Christandl.

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.

Programmering med KI

Viss du vil programmere ved hjelp av KI, er det viktig at du fortel prateroboten kva rolle han skal ha, og kva du ønsker at han skal gjere. Her får du eit døme på ein slik instruksjon. Du må fylle inn din eigen informasjon i felta som er merkte med XXXXXX.

Det er òg viktig at du limer inn koden du får når du har sett opp Deploii, for å sikre rett kommunikasjon mellom mikrokontrollaren og Deploii. Slik kan instruksen til prateroboten sjå ut:

Du skal vere den digitale hjelparen min når eg skal programmere min Arduino MKR WiFi 1010. Eg skal kople MKR WiFi 1010 versjon XX til ein sensor av typen BME280 for å måle temperatur, fukt og trykk (Alternativ: BMK280 for å måle temperatur og trykk).

MKR WiFi 1010 skal koplast med pin SCL til pinne 12 og SDA til pinne 11.

Data MKR får, skal sendast til nettportalen Deploii, og datastraumane skal heite temperatur, trykk og fukt.

Måleverdiar skal òg visast i seriell monitor på Arduino IDE med ein fart på 9600.

Nettverksnamnet mitt er XXXXXXXX, og passordet er XXXXXXXX. MKR WiFi 1010 har definert kort-ID XXXXXXXX.

Det skal sendast data kvart sekund, og dataa som blir viste, skal reknast om og visast i celsius, prosent og mBar.

Gi meg eit døme på kode, ei liste over komponentane eg treng for å kople ein slik krets, og ein instruksjon i korleis eg skal kople kretsen.

Du skal ta utgangspunkt i denne koden frå Deploii som beskriv korleis mikrokontrollar og Deploii blir kopla saman: LIM INN KODE FRÅ DEPLOII HER.

Test ut

No som du har sett opp og programmert alt, skal du teste systemet.

  1. Klarer du å få inn nokon data på kontrollpanelet?

  2. Kva slags data ser du?

  3. I kva format synest du dataa er enklast å lese av?

  4. Fungerer datainnsamlinga òg om du koplar Arduinoen din til ein annan pc?

  5. Klarer du å laste ned dataa du har målt?

  6. 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

Introduksjon til Deploii

Deploii let deg kople mikrokontrollarar til nettsida deploii.no, slik at du kan samle inn og visualisere data via eit kontrollpanel.

Deploii – hurtigguide

For å opprette kommunikasjon mellom eit utviklarkort og Deploii må du gjere nokre grunnleggande oppsett på Deploii og programmere mikrokontrolleren din.

Skrive av Roger Rosmo. Rettshavar: Company of Things AS.
Sist oppdatert 11.09.2025