Stap 1: Maak het
Wat is het?
Maak een hulpmiddel om ervoor te zorgen dat foto's, planken of werkbladen waterpas zijn. De ingebouwde luidspreker van de nieuwe micro:bit maakt het gemakkelijk om je waterpas te verbeteren met audiofeedback.
Inleiding
Codeer instructies
Wat je gaat leren
- Hoe gebruik je de acceleratiemeter sensor om hoeken te meten
- Wat 'helling' en 'kanteling' zijn
- Hoe sensor metingen in twee dimensies te combineren om een vlak oppervlak te vinden
Zo werkt het
- De acceleratiemeter van de micro:bit kan kantelhoeken in twee richtingen meten: op en neer (helling) en van links naar rechts (kanteling). Dit project gebruikt dit om te laten zien wanneer de micro:bit waterpas staat op het LED display en door een geluid te maken, wat handig kan zijn bij het ophangen van een foto of het maken van een werkoppervlak.
- Een lus zorgt ervoor dat het programma constant de hoek van de micro:bit meet.
- Als de acceleratiemeter een hellingshoek meet tussen +5 en -5 graden van zowel helling als kanteling, moet de micro:bit redelijk waterpas zijn. Het toont dan een vinkje op de LED display uitvoer en speelt een muzikale toon.
- Om de toon te horen, sluit je een koptelefoon of een luidspreker aan op pin 0 en GND, of als je een nieuwe micro:bit heeft, hoort je deze op de ingebouwde luidspreker.
- Als de helling of de kanteling buiten het bereik van +5 tot -5 graden valt, wordt er een kruis weergegeven op het LED display en stopt het geluid.
Benodigdheden
- Een micro:bit
- MakeCode of Python editor
- batterijpakket (optioneel)
Step 2: Codeer het
1from microbit import *
2import music
3
4# Uses accelerometer readings in the x and y axis
5# and also allows the micro:bit to be slightly off-level
6# to make it work better in practice
7while True:
8 if accelerometer.get_x() > -10 and accelerometer.get_x() < 10 and accelerometer.get_y() > -10 and accelerometer.get_y() < 10:
9 display.show(Image.YES)
10 music.play('C5:1')
11 sleep(200)
12 else:
13 display.show(Image.NO)
14
Stap 3: Verbeter het
- Kun je de muzikale toonhoogte veranderen afhankelijk van de hoek?
- Kun je een LED 'luchtbel' coderen die als een echte waterpas over het scherm beweegt?
This content is published under a Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) licence.