Skip to content

Activiteit

Eenvoudig deur alarm

Gevorderd | MakeCode, Python | Knoppen, Kompas, LED scherm | Magnetisme, Relationele operators, Selectie

Stap 1: Maak het

Wat is het?

Is er iemand in jouw kamer geweest? Met een micro:bit, een batterijpakket en een magneet kun je een alarm maken om je te waarschuwen voor stiekeme snuffelaars...

Inleiding

Codeer instructies

Zo werkt het

  • In dit project maak je een deuralarm dat werkt als een echte deursensor in een huisbeveiligingssysteem.
  • Jouw micro:bit heeft een ingebouwde kompas sensor, een magnetometer genoemd. Je kunt het gebruiken om het aardmagnetisch veld als kompas te meten - of om te voelen hoe sterk magnetische velden veel dichter bij huis zijn!
  • Bevestig een magneet in de hoek van een deur en een micro:bit met het deuralarm programma er dichtbij op het deurkozijn zoals in de video.
  • Het programma gebruikt de micro:bit kompas (magnetometer) invoersensor en eenvoor altijd lus om de sterkte van het magnetische veld te blijven meten.
  • Het maakt gebruik van selectie, dus wanneer het onder een bepaald niveau (de drempel) komt, toont het een boos gezicht op het LED display. Dit betekent dat de magneet zich van de micro:bit verwijderde - toen de deur werd geopend - dus er kan iemand in je kamer zijn geweest!
  • Door op knop A te drukken, wordt de huidige magnetische krachtmeting weergegeven. Gebruik dit om te beslissen welk drempel getal moet worden gebruikt door metingen te doen met de deur open en gesloten. We gebruikten 200 in ons voorbeeld, maar dit hangt af van hoe sterk je magneet is en of er andere magnetische velden in de buurt zijn. De codeer video hierboven laat zien hoe je dit doet.
  • Druk op knop A om het boze gezicht te wissen en het alarm te resetten.

Benodigdheden

  • een micro:bit
  • MakeCode online code-editor
  • batterij pakket
  • magneet
  • een manier om de magneet, micro:bit en batterij aan de deur en het deurkozijn te bevestigen

Step 2: Codeer het

1# Python uses nanoteslas to measure magnetism.
2# Experiment with different numbers depending on the
3# strength of your magnet, which you can read by 
4# pressing button A.
5
6from microbit import *
7
8while True:
9    if button_a.was_pressed():
10        display.scroll(compass.get_field_strength())
11    if compass.get_field_strength() < 200000:
12        display.show(Image.ANGRY)

Stap 3: Verbeter het

  • Voeg een luidspreker en een hoorbaar alarm toe
  • Gebruik een variabele om het aantal keren te tellen dat jouw deur is geopend - je moet een code toevoegen om te voelen wanneer deze is geopend en gesloten
  • Maak een timer om te meten hoe lang een deur open is gebleven