Voorbeeld mBot

Deze oefening, staat gepland om in een Codeklas aan te bieden rond december, de codeklassers die onderstaande activiteit aanvatten hebben dus wel al wat voorkennis van Scratch!

Sensoren

In deze oefening zullen we kennis maken met de drie sensoren die jouw mBot heeft. We zullen zien hoe jij deze sensoren kan gebruiken.

Je leert:

  • De werking van de afstandssensor van je mBot.
  • Hoe je de afstandssensor kan gebruiken in een programma.
  • Hoe je de mBot obstakels kan doen vermijden.
  • Hoe de lijnsensor van je mBot werkt.
  • Programmeren dat de mBot automatisch een parcours volgt.
  • Hoe je de lichtsensor van mBot kan gebruiken in een programma.

Afstand meten

ultrasonische sensor

De uitdaging is onze mBot net voor een obstakel te laten stoppen en draaien.  Hiervoor moeten we de ultrasone sensor gebruiken, die er bij onze mBot wat uitziet als zijn oogjes. 

De ene sensor zendt een (voor ons) onhoorbaar geluid uit, de andere ontvangt het terug. Het tijdsverschil tussen zenden en ontvangen is afhankelijk van de afstand dat het geluid moest afleggen. Zo kan je mBot afstanden inschatten.

Voor deze activiteit zal je dus je mBot moeten programmeren zodat hij zelfstandig door de kamer rijdt. Uiteraard zal hij voor een obstakel moeten stoppen, een draai nemen en daarna verder rijden.

Je zal al zeker een nieuw blokje nodig hebben die de afstand in de kamer meet met de ultrasonische sensor. Kijk je eens of je dit blokje kan vinden? Probeer hiermee je programma te maken.

Nu hebben we een werkend programma!

uitdaging

a) Misschien vind jij het jammer dat de mBot bij een obstakel altijd naar dezelfde kant draait. Als je wilt dat hij afwisselt tussen en links en rechts, kan je mBot een willekeurig getal laten kiezen. Afhankelijk van de waarde van dit getal, kies je tussen en linkse of rechtse bocht.

b) Kan je je mBot een geluid laten spelen altijd als hij een obstakel ziet?

c) Kan je je mBot recht achteruit laten rijden als hij een obstakel ziet en dan pas hem laten draaien?

Licht meten

Zou het niet logisch zijn dat we de LED’s laten branden als het donker wordt? Net zoals in sommige auto’s, of bij de straatverlichting... Daarvoor kunnen we gebruik maken van de lichtsensor op de mBot.

lichtsensor op bord

Deze geeft een waarde tussen 0 (heel donker) en 1023 (heel veel licht).

lichtsensor

Zorg je nu dat de LED-lichtjes van mBot gaan branden als het te donker is?

Je zal een variabele moeten gebruiken. Als je alle oefeningen in Scratch al gemaakt hebt, weet je al wat een variabele juist is. Een variabele is een steeds veranderende waarde. Deze waarde moeten we een gepaste naam geven zodat we weten naar waar die verwijst.

uitdaging

Kan je er voor zorgen dat je lichten harder gaan branden als het donkerder wordt?

Lijn volgen

Onderaan je mBot, net aan het bolletje dat dienst doet als voorste wieltje, zit een lijnsensor.

lijnvolg sensorwerking lijnvolg sensor
Aan de hand van de tekening begrijp je direct de werking van de sensor. In geval 0 zit je mBot volledig op de lijn, in situatie 1 en 2 zit die rechts of links van de lijn. In situatie 3 is hij de lijn kwijt.

Schrijf nu een programma die je mBot een lijn laat volgen. Is hij de lijn kwijt? Dan laat je hem automatisch stoppen.

uitdaging

Probeer je de limieten van je mBot uit door te spelen met gekleurde lijnen, dikke lijnen, splitsingen,…? Ideeën vind je met deze pdf.