Programmeren met de mBot

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

In deze les zitten 32 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

mBlock Blockly 
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 12 - Tekstslide

Starten
  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 13 - Tekstslide

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

Slide 14 - Tekstslide

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

Tip: 

Slide 15 - Tekstslide

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

Slide 16 - Tekstslide

Oefening 3: 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 17 - 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 18 - 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 19 - Tekstslide

Oefening 4: 4x afstand houden 
1. De mBot rijdt vooruit. Telkens wordt gecheckt of er een obstakel binnen een afstand van 35 cm is. Is dat het geval, dan stopt de mBot. 

Slide 20 - Tekstslide

Oefening 4: 4x afstand houden 
2. Als je dat obstakel weghaalt, rijdt de robot verder. Totdat er weer iets anders op zijn pad komt.  

Slide 21 - Tekstslide

Oefening 4: 4x afstand houden 
3. Je kan de weg voor de mBot blokkeren en op een afstand van 35 cm houden door de mBot voor- en achteruit te laten rijden, afhankelijk van de gemeten afstand. 

Slide 22 - Tekstslide

Oefening 4: 4x afstand houden 
4. De mBot is nu wel erg onrustig, de afstand is immers nooit precies 35 cm. Je kan een bereik instellen, bijvoorbeeld tussen de 35 en 50 cm waarbinnen de mBot gewoon stil mag staan.

Slide 23 - Tekstslide

Oefening 5: Ultrasone sensor
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 24 - 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 25 - Tekstslide

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

Slide 26 - Tekstslide

Lijnvolg-module
Let op:
De lijn moet dik genoeg zijn. De twee sensors op de lijnvolt-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 27 - Tekstslide

Lijnvolg-module

Slide 28 - Tekstslide

Lichtsensor oefeningen

Slide 29 - Tekstslide

Stroomdiagram
Met een stroomdiagram laat je schematisch zien hoe, wanneer en welke beslissingen genomen moeten worden.

Slide 30 - Tekstslide

Opruimrobot
Gebruik een witte tafel of teken met een dikke zwarte stift of met zwart plakband een vak van 1 x 1 meter. Zet daarop wat rommel, zoals (plastic) bekertjes of proppen papier. Deze opdracht bestaat uit twee taken:
1. rommel zoeken
2. rommel opruimen

Slide 31 - Tekstslide

Opruimrobot

Slide 32 - Tekstslide