Hack de Kerstverlichting

(disclaimer 😁 dit artikel is zwaar geïnspireerd door skillsdojo.nl)

Wat heb je nodig

  • micro:bit met USB-kabel en batterijhouder
  • kerstverlichting met 2 krokodilklemmen aan het einde
  • piëzo-toetertje
  • 6 snoertjes met krokodilklemmen
  • kopertape (of aluminiumfolie en lijm)
  • 3 Paperbits (hier te downloaden)
  • kerstboom van karton (lasergesneden of uitgeknipt volgens dit sjabloon) of helemaal zelfverzonnen en zelfgemaakt van bijv. hout of LEGO
  • schaar en plakband

Stap 1: test het geluid

  • Maak de Paperbits GND en Piëzo-Toeter door deze uit te knippen en kopertape (of strookjes aluminiumfolie met lijm) te plakken op de lichtbruine strookjes op de Paperbit (zie voorbeeld en foto hieronder).

  • Sluit alles precies aan zoals op deze foto staat:

  • Klik op de onderstaande knop om de programmeeromgeving te openen:
    Microsoft MakeCode for microbit editor

  • Klik op de grote plus (+) om een nieuw project te maken. Geef het project de naam Toetertest en druk op [Create].

  • Maak met programmablokken het volgende programma. De groene pijltjes geven aan waar de diverse blokken te vinden zijn.

  • Upload het programma naar de micro:bit, druk op knop [A] en luister of je muziektonen hoort. Zo ja, dan heb je alles goed aangesloten. Hoor je niks, controleer alle verbindingen nog eens goed…

Stap 2: test de kerstlampjes

  • Sluit nu de twee krokodilklemmen van de kerstverlichting aan zoals op deze foto te zien is:

  • Klik in de programmeeromgeving links bovenin op [Start]. Geen zorgen, je eerste programma blijft bewaard. Klik weer op de grote plus (+) om een nieuw project te maken. Geef het project de naam Lampjestest en druk op [Create].

  • Om de lampjes en aansluitingen te testen gaan we een lichtschakelaar maken van de micro:bit. Maak met programmablokken het volgende programma. De groene pijltjes geven aan waar de diverse blokken te vinden zijn.

  • Upload het programma naar de micro:bit, druk op knop [A] en kijk of de lichtjes aangaan en druk knop [B] om ze uit te schakelen. Lukt dit, dan heb je alles goed gedaan. Gaan de lampjes niet aan, niks aan de hand. Wissel de twee krokodilklemmen van de lichtjes van plek en druk nog eens op knop [A]. Nog steeds geen licht? Controleer je programma en alle verbindingen nog een keer…

Stap 3: test de lichtsensor

  • Maak de Paperbit LDR (LDR is een afkorting van Light Dependent Resistor oftewel een lichtsensor) door deze uit te knippen en kopertape (of strookjes aluminiumfolie met lijm) te plakken op de lichtbruine strookjes op de Paperbit.

  • Sluit het LDR kaartje precies aan zoals op deze foto staat:

  • Klik in de programmeeromgeving links bovenin op [Start]. Klik daarna weer op de grote plus (+) om een nieuw project te maken. Geef het project de naam Sensortest en druk op [Create].

  • Maak met programmablokken het volgende programma. De groene pijltjes geven weer aan waar de diverse blokken te vinden zijn.

  • Dit piepkleine programmaatje leest steeds de hoeveelheid licht die op de sensor valt en laat dat getal over het schermpje van de micro:bit scrollen. Voor het getal geldt: hoe lager hoe lichter, hoe hoger hoe donkerder. Houd je hand maar eens vlak boven de sensor…

Stap 4: laat alle onderdelen samenwerken

  • We gaan ervoor zorgen dat als je je hand (of een voorwerp) voor de sensor houdt, er een kerstliedje begint te spelen en dat de lampjes op de maat meeknipperen.

  • Omdat dit een wat groter programma wordt, gaan we het stap voor stap opbouwen en het beter leesbaar maken zodat je later makkelijker dingen in kunt aanpassen.

  • Klik in de programmeeromgeving links bovenin op [Start]. Klik daarna weer op de grote plus (+) om een nieuw project te maken. Geef het project de naam Hack de Kerstlampjes en druk op [Create].

  • Eerst maken we een aantal variabelen. Een variabele is een soort doosje of vakje in het computergeheugen waarin je een getal of stukje tekst kunt bewaren, eventueel aanpassen en weer kunt ophalen. Klik eerst op de blokjesgroep Variabelen en dan op knop [Maak een variabele…]. Maak op deze manier de volgende 3 variabelen en druk na elke variabele op knop [Ok] (de groene pijltjes in het plaatje hieronder wijzen je de weg):
    1. lampjes aan
    2. lampjes uit
    3. waarde lichtsensor

  • Nadat je de 3 variabelen hebt toegevoegd, zou je dit op het scherm moeten zien:

  • Gebruik het blokje “stel … in op …” om bij het starten van je programma de variabele lampjes aan op 1 te zetten en de variabele lampjes uit op 0 zoals hieronder:

  • In het blok “de hele tijd” lezen we telkens de waarde van de lichtsensor en stoppen die waarde in de variabele waarde lichtsensor. Als die waarde groter dan 600 is, dan vinden we het te donker en dan doen we de lampjes aan. Zo niet, dan doen we de lampjes uit. Zorg dat de juiste blokjes in het blok “de hele tijd” komen te staan, zoals hieronder:

  • Upload het programma weer naar de micro:bit. Kijk of de lampjes gaan branden als je je hand (of een voorwerp) voor de sensor houdt. Werkt het niet, controleer dan nog een keer goed je programma. Het zou ook kunnen dat je niet het getal 600 moet gebruiken, maar een andere waarde. Want je weet wat voor de lichtsensor geldt: hoe lager het getal hoe lichter, hoe hoger het getal hoe donkerder.

  • Voor het stukje programma dat geluidjes maakt en de lampjes laat knipperen maken we een functie, een apart stukje blokjescode dat je aan kunt roepen als je het wil laten beginnen. Daarmee maak je je programma overzichtelijker. Klik onder Geavanceerd op Functies en dan op knop [Maak een functie…], zoals hieronder met de groene pijltjes is aangegeven:

  • Vul in het scherm als naam van de functie maak geluid en licht in en klik op [Klaar] zoals je hieronder ziet:

  • Eerst zetten we het geluid op hard! Om daarna muzieknootjes te spelen en tegelijkertijd de lampjes op de maat te laten knipperen gaan we steeds 4 blokjes herhalen (dupliceren, dat is hetzelfde als kopiëren):

    1. eerst een blokje dat de lampjes aanzet
    2. dan een blokje dat een muzieknoot speelt gedurende een aantal beats
    3. vervolgens een blokje dat de lampjes weer uitzet
    4. als laatste een rustblokje van een aantal (delen van) beats

    Hieronder zie je hoe de eerste noot van “Oh Denneboom” wordt geprogrammeerd:

  • Om de functie “maak geluid en licht” te laten starten zodra je je hand (of een voorwerp) voor de sensor houdt, moeten we het programma een klein beetje aanpassen. Klik met je rechtermuisknop in blok “de hele tijd” op blokje “schrijf digitale pin P1 naar lampjes aan”, en kies dan Verwijder blokken om alleen dit ene blokje weg te halen. Kijk maar hieronder:

  • Klik op blokjesgroep “Functies” en sleep blokje “aanroep maak geluid en licht” op de plek waar het verwijderde blokje stond, zoals hieronder is aangegeven met de groene pijl:

  • Upload het programma weer naar de micro:bit. Als je nu je hand (of een voorwerp) voor de sensor houdt, zou je steeds de eerste noot van “Oh Denneboom” moeten horen en zouden de lampjes aan en uit moeten gaan.

  • Om het Kerstliedje verder af te maken, gaan we steeds de 4 eerder aangegeven blokjes dupliceren en passen we als het nodig is toon, beat en rust aan. Om makkelijk te zien waar je in het lied gebleven bent, kun je via je rechtermuisknop op het grijze gedeelte een reactie toevoegen naast de functie, waarin je aangeeft welke lettergreep er door die toon gespeeld wordt. Hieronder staat hoe dat eruitziet:

  • Maak nu het liedje af. Hieronder zie je de notenbalk met de letters eronder die je kunt gebruiken (als je op het plaatje klikt, kun je de melodie ook nog laten voorspelen):

  • Je kunt op dezelfde manier natuurlijk ook een ander liedje programmeren, zoals Jingle Bells (klik op het plaatje voor het hele liedje):

  • Alvast een fijne Kerst allemaal..!

Thuistip: je kunt ook je eigen luidspreker aansluiten om het geluid wat harder te laten klinken, zoals in deze video:

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s