Maak een AI-lichtschakelaar met micro:bit CreateAI die het licht aandoet wanneer je klapt en het uitdoet wanneer je zwaait.
Stap-voor-stap projectgids
Stap 1: Begrijp het
Hoe werkt het?
In dit project train je een machine learning (ML) model om te herkennen wanneer je aan het klappen en zwaaien bent.
Je gaat dat model combineren met een MakeCode programma dat een 'lichtAan' radiosignaal stuurt naar een andere micro:bit wanneer je klapt en een 'lichtUit' radiosignaal wanneer je zwaait.
Wanneer de ontvangende micro:bit het signaal "lichtAan" ontvangt, dan lichten alle LED's op. Wanneer het ‘lichtUit’ signaal wordt ontvangen, wordt het LED display gewist..
Wat is machine learning?
Machine learning (ML) is een vorm van kunstmatige intelligentie (AI) waarbij computers kunnen leren en besluiten kunnen nemen op basis van gegevens.
De ML-modellen zijn door mensen getraind om hen te helpen deze beslissingen te nemen, bijvoorbeeld om verschillende 'acties' te herkennen wanneer je je micro:bit op verschillende manieren verplaatst.
Wat moet ik doen?
AI-systemen hebben mensen nodig om ze te ontwerpen, te bouwen, te testen en te gebruiken. Je gaat gegevens verzamelen om een ML-model te trainen, te testen, te verbeteren en te combineren met computercode om een slim apparaat te maken dat AI gebruikt. Je gaat een micro:bit en de micro:bit CreateAI website gebruiken om dit te doen.
Stap 2: Maak het
Benodigdheden
- Twee micro:bit V2s, USB kabel, één of twee batterijpakketten
- Een computer (bijv. desktop, laptop of Chromebook) met toegang tot de micro:bit CreateAI website, gebruik makend van een Chrome of Edge webbrowser.
- Als je computer Bluetooth niet ingeschakeld heeft, heb je een extra micro:bit V2 nodig
- Een bandje en houder, of een andere manier om de micro:bit vast te maken (bijv. flexibele pijpenragers of elastiekjes)
- Misschien vind je onze micro:bit CreateAI tips voor leraren nuttig
Verzamel data samples
Wanneer je het project opent in micro:bit CreateAI, zie je een aantal data samples voor 'zwaaien', 'klappen' en 'stil' acties:
waving
clapping
still
Je kunt je eigen voorbeelden van de bewegingen toevoegen door gebruik te maken van micro:bit'sbewegingssensor of acellerometer.
In micro:bit CreateAI, klik op de 'Verbinden' knop om je data collectie micro:bit te koppelen en volg de instructies.

Bevestig de micro:bit aan je pols. Klik op de eerste actie, ‘zwaaien’ en klik op ‘Record’. Als je een fout maakt, kun je alle samples verwijderen die je niet wilt. Je kunt ook op knop B op de micro:bit drukken om de opname te starten.
Als je continu wilt opnemen gedurende 10 seconden om 10 samples te krijgen, klik op de drie stippen naast de opnameknop en selecteer die optie.
Neem nu je eigen data samples op voor de ‘klappen’ en ‘stil’-acties, zorg ervoor dat je voor 'stil' monsters verzamelt op verschillende posities, zoals naar boven en naar beneden.
Train en test het model
Klik op de knop 'Train model' om het model te trainen. Probeer eens te klappen, zwaaien en stil te houden om te zien of deze acties worden ingeschat. Geef je micro:bit aan iemand anders om te dragen (zorg ervoor dat ze hem op dezelfde pols en in dezelfde richting plaatsen) en kijk of het net zo goed werkt voor hen.
Verbeter je model
De meeste modellen kunnen worden verbeterd met meer gegevens. Als het model verbeterd moet worden, klik dan op ‘← Bewerk data samples’.
Je kunt alle data samples verwijderen die volgens jou niet juist zijn of meer voorbeelden toevoegen.
Train het model opnieuw en test het opnieuw.
Plaats het model en de code op je micro:bit
Klik in micro:bit CreateAI op 'Bewerk in MakeCode' om de project code te zien in de MakeCode editor.
Je kunt de code wijzigen of het gewoon uitproberen zoals het nu is. Verbind de eerste micro:bit met behulp van een USB-datakabel, klik op de 'Download' knop in het MakeCode scherm en volg de instructies om je AI model en de codeblokken naar de micro:bit te verplaatsen. Download het daarna opnieuw op een andere micro:bit.
Voeg een batterijpakket toe aan de zendende micro:bit. Je kunt de ontvangende micro:bit aangesloten houden op de computer of aan het batterij pakket koppelen. Draag nu de zendende micro:bit en test het uit.
Hoe de codeblokken werken
Wanneer het programma start, is de radiogroep ingesteld op 52. Radio groepen zijn als kanalen, dus elke micro:bit die dezelfde groep gebruikt krijgt het bericht. Je kunt elk groepnummer kiezen dat je leuk vindt van 0 tot 255. Als je dit project in een klas- of codeerclub gebruikt, dan wil je misschien elk paar of groep leerlingen aanmoedigen om een andere radiogroep te gebruiken dan anderen in de klas.
De 'op ML... start' blokken worden geactiveerd wanneer het afzender micro:bit's ML model bepaalt dat je begint te zwaaien, klappen of nog steeds wordt gebruikt.
Als je klapt, het 'op ML clapping start'-blok zorgt ervoor dat een tick pictogram wordt weergegeven op de LED weergave van de afzender micro:bit en het radiobericht 'lightsOn' wordt verzonden naar de ontvanger micro:bit. Als je zwaait, het 'op ML zwaaien van startblok' zorgt ervoor dat een kruispictogram wordt weergegeven op de LED-weergave van de afzender micro:bit en het radiobericht 'lightsOff' wordt verzonden naar de ontvanger micro:bit.
Als je er nog steeds bent of de afzender micro:bit je bewegingen niet kan herkennen, is het Led-scherm gewist en wordt er geen radio bericht verzonden.
De 'op radio ontvangen' blokken zetten alle LED's op de micro:bit aan als een bericht wordt ontvangen met het gezegde 'lightsOn' en wissen het scherm als een bericht wordt ontvangen met het gezegde 'lightsOff'.
De “Op de radio ontving lightsOn / lightsOff” blokken zijn afkomstig van een MakeCode extensie genaamd “Radio broadcast”. Als je zelf dit project wilt coderen, kun je de blokken vinden door op 'Extensies' te klikken en vervolgens 'Radio broadcast' te kiezen.
Beoordeling
Hoe accuraat is de lichtschakelaar in reactie op uw bewegingen? Hoe kun je het verbeteren als dat nodig is?
Hoe nuttig zou dit apparaat zijn in het echte leven? Hoe is de vergelijking met een normale lichtschakelaar?
Stap 3: Breid het uit
- Je kunt een kamer oplichten door dezelfde code op meerdere micro:bits te zetten. Houd de andere micro:bits stil terwijl iemand een andere beweegt om ze allemaal aan of uit te zetten.
- Voeg een vierde actie toe die ervoor zorgt dat de micro:bit van de ontvanger gedimde lampen laat zien. Gebruik het ‘helderheid’-blok, gevonden in het LED-gedeelte onder ‘Meer’.
This content is published under a Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) licence.