Yuverta

Programmeren met de mBot

M'bition - AVO Plus
Programmeren met de mBot
1 / 33
volgende
Slide 1: Tekstslide
InformaticaProgrammerenMiddelbare schoolmavo, havo, vwoLeerjaar 1,2

In deze les zitten 33 slides, met tekstslides.

time-iconLesduur is: 180 min

Onderdelen in deze les

M'bition - AVO Plus
Programmeren met de mBot

Slide 1 - Tekstslide

Computers
Computers doen overal hun taak. De computer in de wasmachine zorgt ervoor dat het wasprogramma goed verloopt. Precies de juiste temperatuur, op tijd het wasmiddel erbij, op de goede snelheid gecentrifugeerd. Een stoplicht zorgt ervoor dat er verkeerslichten op rood springen en jij bij groen licht veilig kan oversteken. In een auto werken tientallen computers samen, om de benzinetoevoer voor de motor te regelen of de parkeersensoren in de gaten te houden.

Slide 2 - Tekstslide

Enen en nullen
Een computer kan niet tot 2 tellen. Een computer ‘werkt’ met enen en nullen. 
1 of 0 dat is hetzelfde als aan/uit, ja/nee, true/false. Er bestaat geen ‘misschien’ of ‘een beetje’.
Een computerbrein is dus opgebouwd uit onvoorstelbaar veel schakelaars. Deze noemen we ‘bits’. 


Slide 3 - Tekstslide

Algoritme
Een computer kan niets zonder opdrachten. Er moet ze verteld worden wat ze moeten doen, wanneer ze dat moeten doen en wanneer niet. Echt álles moet omschreven worden.
Zo’n reeks van opdrachten noemen we een algoritme. Dat algoritme maak je met programmeertaal. Een programmeertaal bestaat uit woorden, codes en getallen die mensen begrijpen en zet deze om in enen en nullen (machinetaal die wordt gebruikt door computers).

Slide 4 - Tekstslide

Programmeertalen
Er zijn heel veel programmeertalen. Er zijn programmeertalen waarmee je slimme websites kan maken, waarmee je machines in een fabriek kunt aansturen of waarmee de apps op je telefoon gemaakt zijn. 

Slide 5 - Tekstslide

Scratch
Scratch is een programmeertaal waarmee je kunt leren hoe een programmeertaal werkt. Je kunt met Scratch games, interactieve filmpjes en gewoon mooie dingen maken. Interactief betekent dat je iemand anders iets kunt laten doen, zoals op een knop drukken of tekst invullen, waardoor er iets gebeurt. 

Slide 6 - Tekstslide

Scratch blokken
In Scratch klik je met blokken je eigen programma aan elkaar. De blokken hebben per functie een eigen kleur. 
Sommige blokken hebben een speciale vorm, zodat je snel ziet hoe ze in elkaar passen. Zo geef je de logische volgorde aan waarin het algoritme moet worden uitgevoerd: van boven naar beneden. Zo werkt een echte programmeertaal ook, maar deze bestaat uit (Engelse) tekst en getallen. Met als nadeel dat je al snel een tikfout maakt en je script niet meer werkt.

Slide 7 - Tekstslide

Voorbeeld Scratch

Slide 8 - Tekstslide

Open source
Scratch is ‘open source’ software, wat betekent dat wie het wil het programma zelf kan aanpassen en verbeteren.
 
Er bestaat ook open source hardware. Arduino is daar een voorbeeld van en maakt goedkope minicomputers waarop sensors, schakelaars, lampjes en motoren kunnen worden aangesloten. Arduino heeft ook een eigen programmeertaal.

Slide 9 - Tekstslide

mBot

Dit is de mBot. De mBot is een kleine robot die je helemaal zelf kunt programmeren. Hij kan rijden, geluid maken, heeft verschillende kleuren lampjes, kan lijnen op de grond volgen en heeft zelfs een ultrasonische afstandsdetectie module. Hiermee kun je bijvoorbeeld voorkomen dat de mBot ergens tegenaan rijdt. 


Slide 10 - Tekstslide

mBlock
Om de mBot te kunnen programmeren gebruiken we het programma mBlock. Dit programma is gebaseerd op Scratch. Door verschillende blokken onder elkaar te zetten schrijf je een programma. 
In mBlock heb je 10 verschillende soorten blokken, zoals beweging, geluid en gebeurtenissen.

Slide 11 - Tekstslide

Starten op laptop
  1. Log in met je schoolaccount op de laptop
  2. Ga naar de map mBlock en dubbelklik hierop
  3. Plaats de dongel in de USB-poort (klik dopje op achterkant)
  4. Zet de mBot aan
  5. Ga in mBlock linksonder naar 'apparaten'
  6. Klik op toevoegen en selecteer de mBot
  7. Klik op verbinden - bijv. COM3 (de mBot laat een muziekje horen)

Slide 12 - Tekstslide

Starten op iPad
  1. Download de app mBlock
  2. Klik aan de linkerkant op 'coding'
  3. Klik op +
  4. Selecteer de mBot
  5. Klik op 'verbinden'
  6. Ga terug naar coderen

Slide 13 - Tekstslide

mBlock Blockly op iPad
mBlock heeft ook een app waarmee je de mBot kunt leren besturen. In deze app krijg je allerlei programmeeropdrachten. Je kunt pas naar een volgend level als je de opdracht goed hebt uitgevoerd. 

Slide 14 - Tekstslide

Starten met programmeren
  • Selecteer bij gebeurtenis 'wanneer op vlag wordt geklikt'
  • Voeg een actie toe, bijvoorbeeld: speel noot A3
  • Om de actie uit te voeren klik je op de vlag
  • Hoor je geluid? 

Slide 15 - Tekstslide

Licht en geluid
Verander de kleur van de ledlampjes en laat de mBot geluid maken.

Tip: 

Slide 16 - Tekstslide

Rijden
Laat de mBot een stukje rijden. Maak gebruik van verschillende richtingen en snelheden.
Tip: 

Slide 17 - Tekstslide

Combineren 
  • Zet een sirene op je mBot met licht en geluid.
  • Laat je mBot gebruik maken van een knipperlicht als hij naar rechts of links rijdt.
  • Laat de mBot 'dansen'  met licht en geluid. Varieer in snelheid en seconden.

Slide 18 - Tekstslide

Sensoren
Tot nu toe was je mBot nog geen echte robot. Je hebt de mBot alleen bestuurd. Een echte robot kan zelfstandig taken verrichten en reageert op zijn omgeving. Hiervoor gebruikt een robot sensoren, deze laten het computerbrein "zien, horen, voelen en ruiken". De resultaten die een sensor meet, kan je gebruiken om de robot dingen te laten doen. Je kunt de mBot bijvoorbeeld op tijd laten stoppen  als de ultrasone sensor een te kleine afstand meet tot een obstakel. 

Slide 19 - Tekstslide

Ultrasone sensor
Met een ultrasone sensor kun je de afstand meten tot een object, zoals een muur. De sensor zendt geluid uit. Dit geluid is zo hoog dat mensen het niet kunnen horen. Dat noemen we ultrasoon. Wanneer geluid ergens tegenaan botst, wordt dit teruggekaatst. De sensor vangt dit geluid op en berekent hoe lang het geluid erover heeft gedaan om weer terug te komen en hoe groot de afstand is. 

Slide 20 - Tekstslide

Afstand houden 
Probeer het volgende programma uit. Wat gebeurt er als je je hand voor de mBot houdt?


Slide 21 - Tekstslide

Volgen
Probeer het volgende programma uit. Houd je hand voor de mBot. 
Wat gebeurt er nu?




Slide 22 - Tekstslide

Ontwijken
Als je mBot een obstakel tegenkomt, kan hij stoppen, maar ook een andere route kiezen, bijvoorbeeld naar rechts.



Extra:
Laat de mBot geluid maken en even achteruit rijden wanneer hij een obstakel detecteert.

Slide 23 - Tekstslide

Lijnvolg-module
De mBot heeft een lijnvolg-module waarmee de robot een zwarte lijn kan volgen. Deze module heeft twee sensors, één voor rechts en één voor links. Die sensor zendt infrarood licht uit en vangt het weerkaatste licht weer op. Dat hangt af van de kleur van de achtergrond. Wit kaatst het licht goed terug, zwart doet dat nauwelijks. 

Slide 24 - Tekstslide

Lijnvolg-module
De lijnvolg-module kan 4 waarden teruggeven:

Slide 25 - Tekstslide

Lijnvolg-module
Let op:
De lijn moet dik genoeg zijn. De twee sensors op de lijnvolg-module moeten tegelijk de lijn kunnen zien.
Extra:
Met de lijnvolg-module kun je de mBot ook op een witte tafel laten rijden zonder dat hij eraf valt. Op de lijnvolg-module zitten 2 blauwe lichtjes. Zolang het wit van de tafel (of vel papier) terugkaatst, branden de lichtjes, maar wanneer je de lijnvolger naast de tafel houdt gaan ze uit (=omgekeerde van lijnvolg-script).

Slide 26 - Tekstslide

Voorbeeld lijnvolg-module

Slide 27 - Tekstslide

Opdracht
Laat de mBot vooruit rijden met groene ledlampjes. 
Als je je hand voor de mBot houdt stopt de mBot met rijden en worden de leds geel. 
Zorg ervoor dat de mBot achteruit rijdt met rode leds als je hem 'terugduwt'. 
Haal je je hand weg, dan gaat hij weer vooruit.

Slide 28 - Tekstslide

Uitvoering - 1
Deel de opdracht in twee stukken. 

Programmeer eerst 'laat de mBot vooruit rijden met groene leds, meet de sensor waarden kleiner dan 30 cm dan rijdt de mBot achteruit met rode leds. 

Slide 29 - Tekstslide

Uitvoering - 1

Slide 30 - Tekstslide

Uitvoering - 2
Nu moeten we de extra voorwaarde nog in het programma krijgen, namelijk dat de mBot stopt bij een afstand kleiner dan 30cm en pas achteruit rijdt bij een gemeten afstand kleiner dan 20cm. 
Die extra voorwaarde is weer een 'als...dan...anders...'

Slide 31 - Tekstslide

Uitvoering - 2

Slide 32 - Tekstslide

Eigen programma's maken
Probeer de dingen die je hebt geleerd met elkaar te combineren om eigen programma's te schrijven voor de Mbot. Wat moet de mBot gaan doen (of wat juist niet) en hoe krijg je dat voor elkaar?


Slide 33 - Tekstslide