Hopp til innhold
Bokmål
Oppgave
Interaktivt innhold

Bygg en trådløs værstasjon med Arduino Uno R4 og BMP180

Lag et trådløst sensorsystem i Arduino med en Arduino Uno R4 og en sensor som måler temperatur og trykk.

Dagens læringsaktivitet

Du skal lage et trådløst sensorsystem som du programmerer i Arduino. Med et Arduino Uno R4-utviklingskort og en BMP180-sensor måler du temperatur og trykk og sender dataene til Deploii-nettsida. Dataene kan vises i sanntid på nettsida og lagres i skya. Seinere kan du laste ned dataene i ønska filformat (.csv, .txt osv.) og analysere dem videre i Python eller Excel.

Slik kan et ferdig oppsett se ut:

Utstyr

Til denne oppgava trenger du følgende utstyr:

  • Arduino UNO R4 WiFi

  • USB-C-kabel med signallinje

  • pc som kjører Windows, Mac OS eller Linux

  • BMP180-sensor (måler temperatur og trykk)

  • ledninger og koplingsbrett (breadboard)

  • Arduino IDE installert (versjon 2.0 eller nyere)

  • Deploii-biblioteket installert, samt Board Manager for Arduino UNO R4 WiFi (eventuelt også drivere)

  • en bruker på Deploii

Oppkopling

Det trengs bare fire koplinger for å drive en BMP180. Den trenger strøm/VCC (3,3 volt) og jord for strømtilførsel. Dataene sendes fra sensoren via den innebygde I2C-modulen. Arduinoen koples til via pinnene SCL (pin 22) og SDA (pin 21) på kortet.

Se vedlegg for pinout-diagram av Arduino Uno R4 WiFi.

Oppkopling Arduino Uno R4 WiFi og BMP180

Arduino Uno R4 WiFi

BMP180

3,3 VVIN
GNDGND
SCLSCL
SDASDA

NDLA-boksen

Du kan også velge å bygge prosjektet inn i en støtsikker boks, for eksempel NDLA-boksen.

Deploii-nettsida

Når alt er installert, logger du deg inn på innloggingssida til Deploii. Deretter må du sette opp følgende (helst i rekkefølge):

  • et kort av typen Arduino UNO R4 WiFi

  • fem datastrømmer; kall dem gjerne Temperatur, Trykk, Høyde, BMP180 og Logg

  • en måleserie

  • et kontrollpanel med

    • en graf som viser datastrømmene Temperatur og Trykk

    • en terminal som viser datastrømmen BMP180

    • en terminal som viser datastrømmen Logg

    • en tallvisning som viser datastrømmen Temperatur

    • en tallvisning som viser datastrømmen Trykk

    • en tallvisning som viser datastrømmen Høyde

Om du lurer på noe underveis, kan du sjekke ut de generelle guidene for Deploii på NDLA. De viser deg, med mange bilder, hvordan du utfører de forskjellige stega i lista over. Deploii-filmene kan også være gode hjelpemidler. I tillegg kan du selvsagt spørre læreren om hjelp.

Programmering

Installasjon av Arduino IDE

Om du ikke har installert noe fra før, kan du gjøre følgende:

  1. Først installerer du Arduino IDE. Følg oppstartsguiden for Arduino.

  2. Deretter må du laste ned en såkalt Board Manager for Arduino UNO R4 WiFi, kanskje også en COM-portdriver. Filmene om Deploii viser deg hvordan du kan gjøre dette.

  3. Deretter må biblioteket for Deploii lastes ned i Arduino IDE. Dette gjør du via den innebygde bibliotekfunksjonen i Arduino.

  4. Til slutt må biblioteket for sensoren BMP180 installeres. Dette biblioteket heter Adafruit BMP085 Library og vil stå som "laga av Adafruit".

Eksempelkode

Nederst på denne sida finner du en eksempelkode for en BMP180-sensor. Denne sensoren kan registrere temperatur, fukt og trykk / høyde over havet, og eksempelkoden vil lese av sensoren og sende disse dataene til Deploii. Dette krever at du forandrer litt på eksempelkoden og setter opp alt riktig på nettsida.

Programmering med KI

Hvis du vil programmere ved hjelp av KI, er det viktig at du forteller prateroboten hvilken rolle den skal ha, og hva du vil at den skal gjøre. Her får du et eksempel på en slik instruksjon. Du må fylle inn din egen informasjon i felta som er merka med XXXXXX.

Det er også viktig at du limer inn koden du får når du har satt opp Deploii, for å sikre riktig kommunikasjon mellom mikrokontrolleren og Deploii. Slik kan instruksen til prateroboten se ut:

"Du skal være min digitale hjelper når jeg skal programmere min Arduino Uno R4 WiFi. Jeg skal kople en Arduino Uno R4 versjon XX til en sensor av typen BMP180 for å registrere temperatur, trykk og høyde over havet.

Arduino R4 og BMP skal koples sammen på følgende måte:: SCL på BMP180 til SCL på Arduino Uno R4, og SDA på BMP180 til SDA på Arduino Uno R4.

Dataene Arduino Uno R4 mottar, skal sendes til nettportalen Deploii, og datastrømmene skal hete Temperatur, Trykk, BMP180, Logg og Høyde.

Måleverdiene skal vises i seriell monitor på Arduino IDE med en hastighet på 9600.

Nettverksnavnet mitt er XXXXXXXX, og passordet er XXXXXXXX. Arduino R4 har definert kort-ID XXXXXXXX.

Det skal sendes data hvert sekund.

Gi meg et eksempel på kode, ei liste over komponentene jeg trenger for å kople en slik krets, og en instruksjon i hvordan jeg skal kople kretsen.

Du skal ta utgangspunkt i denne koden fra Deploii som beskriver hvordan mikrokontroller og Deploii koples sammen: LIM INN KODE FRA DEPLOII HER

Test ut

Nå som du har satt opp og programmert alt, skal du teste ut systemet.

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

  2. Hva slags data ser du?

  3. I hvilket format synes du dataene er enklest å lese av?

  4. Fungerer datainnsamlinga også om du kopler din Arduino til noen andres pc?

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

  6. Hva slags data finner du i fila du har lasta ned?

Dataanalyse med Python eller Excel

Nå skal du anvende kunnskapene dine til å hente ut og analysere dataene. Start en ny måleserie på nettsida for datastrømmene du har laga for temperatur og trykk.

Etter at du har fått et tilstrekkelig antall datapunkter, for eksempel 200 målinger fordelt på en ti minutters periode, kan du laste ned måleserien.

Filene du får, vil ha samme navn som datastrømmen din, og de er stempla med dato og tid slik at du kan holde styre på hvilke filer som er nyest. Når filene er på pc-en din, kan du laste dem inn i Python eller Excel og f.eks. lage grafer og studere dataene i større detalj.

Filer for nedlasting

Her finner du et eksempel på programvare som du kan prøve ut for å få systemet til å fungere.

Relatert innhold

Introduksjon til Deploii

Deploii lar deg kople mikrokontrollere til nettsida deploii.no, slik at du kan samle inn og visualisere data via et kontrollpanel.

Deploii – hurtigguide

For å opprette kommunikasjon mellom et utviklerkort og Deploii må du gjøre noen grunnleggende oppsett på Deploii og programmere mikrokontrolleren din.

Skrevet av Roger Rosmo. Rettighetshaver: Company of Things AS.
Sist oppdatert 11.09.2025