Skip to content

Activiteit

Klap lichten

Beginner | MakeCode, Python | LED scherm, Microfoon | Boolean logica, Selectie, Sensoren

Stap 1: Maak het

Wat is het?

Maak van de micro:bit een licht dat je kan aan- en uitzetten door te klappen of een luid geluid te laten horen.

Inleiding

Codeer instructies

Wat je gaat leren

  • Hoe schakel je outvoer in reactie op sensor invoer
  • Hoe je Booleaanse logica gebruikt om een schakelaar te maken die aan- en uit schakelt geactiveerd door dezelfde gebeurtenis

Zo werkt het

  • Het programma gebruikt een variabele genaamd lightsOn om de status van de verlichting bij te houden: ingeschakeld of uitgeschakeld. We gebruiken het als een speciale variabele, een Booleaanse variabele. Booleaanse variabelen kunnen slechts twee waarden hebben: waar (aan) of onwaar (uit).
  • Wanneer de microfoonsensor een hard geluid detecteert, verandert de code de waarde van lichtenAan door deze in te stellen op niet lichtenAan.
  • Dit betekent dat wanneer je klapt, als lichtenAan onwaar is (en de lichten uit zijn), het waar wordt en het programma de LED's oplicht.
  • Als lichten Aan waar is (en het licht is aan), het wordt onwaar en de code schakelt de LEDs uit door het scherm te wissen.

Benodigdheden

  • Een micro:bit
  • MakeCode of Python editor
  • batterijpakket (optioneel)

Step 2: Codeer het

1from microbit import *
2lightsOn = False
3
4while True:
5    if microphone.was_event(SoundEvent.LOUD):
6        lightsOn = not lightsOn
7        if lightsOn:
8            display.show(Image('99999:'
9                               '99999:'
10                               '99999:'
11                               '99999:'
12                               '99999'))
13        else:
14            display.clear()
15    sleep(100)

Stap 3: Verbeter het

  • Je kunt het 'bij luide geluid' blok min of meer gevoelig maken door een 'luid geluid drempelwaarde' blok toe te voegen aan een 'bij opstarten'-blok. Gebruik kleinere getallen voor stillere geluiden en grotere getallen voor luider geluiden. De bovenstaande coderingsvideo toont je hoe je dit moet doen.
  • Gebruik in Python microfoon.set_threshold(SoundEvent.LOUD, 128) om de drempel voor harde geluiden te wijzigen - verander het getal 128 in de gewenste waarde tussen 0 en 255.
  • Laat de lichten ook een deuntje spelen wanneer ze aanstaan.
  • Gebruik geluid om andere projecten te besturen, zoals verlichtings LED's of servo motoren die zijn aangesloten op de pinnen op de micro:bit.