Hopp til innhold
Bokmål

Fag

Oppgave
Interaktivt innhold

Bygg et trådløst varslingssystem med MKR WiFi 1010 og PIR bevegelsessensor

Lag et trådløst varslingssystem for bevegelse med en Arduino MKR WiFi 1010 og en PIR-sensor som registrerer bevegelse i området foran sensoren.

Dagens læringsaktivitet

Du skal lage et trådløst sensorsystem som programmeres i Arduino. Med et Arduino MKR WiFi 1010 utviklingskort og en PIR-sensor registrerer du bevegelse i et område og sender data 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 oppgaven trenger du følgende utstyr:

  • Arduino MKR WiFi 1010

  • USB-A-til-mikro-USB-B-kabel med signallinje

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

  • PIR-sensor, eksempelvis Grove Digital PIR (måler bevegelse)

  • ledninger og koplingsbrett (breadboard)

  • Arduino IDE installert (versjon 2.0 eller nyere)

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

  • bruker på Deploii

Oppkopling

Det trengs bare tre koplinger for å drive en PIR-sensor. Den trenger strøm/VCC (3,3 volt) og jord for strømtilførsel. For å hente ut data gjennom SIG til sensoren må du kople den til pin 11 på Arduino MKR WiFi 1010.

Se vedlegg for pinout-diagram av Arduino MKR WiFi 1010.

Oppkopling: Arduino MKR WiFi 1010 og PIR-sensor

Arduino MKR WiFi 1010

PIR-sensor

11SIG
Brukes ikkeNC
VCCVCC
GNDGND

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 MKR WiFi 1010

  • en datastrøm, gjerne kalt PIR

  • en måleserie

  • et kontrollpanel med

    • en graf som viser datastrømmen PIR

    • ei tallvisning som viser datastrømmen PIR

    • en terminal som viser datastrømmen PIR

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

Programmering

Installasjon (Arduino IDE)

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

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

  2. Deretter må du laste ned en såkalt Board Manager for Arduino MKR WiFi 1010, Arduino SAMD Boards. Filmene om Deploii viser deg hvordan du kan gjøre dette.

  3. Så må du laste ned biblioteket for Deploii i Arduino IDE, dette gjør du via den innebygde biblioteksfunksjonen i Arduino.

Eksempelkode

Du finner en eksempelkode for sensoren Grove Digital PIR-sensor i et vedlegg sist i denne artikkelen. Den får sensoren til å registrere bevegelse. Så blir dataene sendt til Deploii. Men du må tilpasse eksempelkoden litt og sette 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 ønsker 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 MKR WiFi 1010. Jeg skal kople en MKR WiFi 1010 versjon XX til en sensor av typen Grove Digital PIR for å registrere bevegelse.

MKR WiFi 1010 skal koples med signal (SIG) til pinne 11. Pinne NC skal ikke brukes.

Data MKR WiFi 1010 mottar, skal sendes til nettportalen Deploii, og datastrømmen skal hete PIR.

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

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

Det skal sendes data hvert sekund, og dataene skal vises som verdien 0 for ingen bevegelse og verdien 1 for bevegelse.

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 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 Arduinoen din 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?

Datainnsamling

Du kan velge å samle inn data over et bestemt intervall og lagre disse dataene i en måleserie. Siden PIR-sensoren bare gir verdien 0 og 1, kan du kanskje ikke bruke data fra denne måleserien til så mye praktisk arbeid.

Filer for nedlasting

Her finner du et eksempel på programvare som kan prøves 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