abonneren

mBot-tutorial: Programmeren in mBlock

In een eerdere workshop bouwden we ons eigen Arduino-robotje, de mBot. Die lieten we standaard acties ondernemen via afstandsbediening en app. Nu is het tijd om zelf te programmeren met mBlock.

Lees eerst: mBot-tutorial: Bouw je eigen robot met Arduino

mBlock is een grafische programmeeromgeving gebaseerd op Scratch 2.0. Je programmeert er je robot mee door blokjes met opdrachten aan elkaar te klikken. Download eerst de nieuwste versie van mBlock. Voer het installatieprogramma uit en kies daarin je taal (Nederlands is beschikbaar). mBlock installeert onder andere Adobe AIR en de Arduino IDE. 

De eerste keer dat je mBlock start, krijg je waarschijnlijk een melding van Windows Firewall. Klik op Toegang toestaan. Klik daarna op het kruisje om het splash screen van mBlock af te sluiten. Ga dan naar het menu Language en vink Nederlands aan om de taal van de interface te veranderen.

Overigens bestaat er ook een app-versie van mBlock, Makeblock.

mBot verbinden met pc

Om de mBot te programmeren, verbind je die eerst met je pc. Dat is mogelijk via Bluetooth, de draadloze seriële module (als je mBot ook zo’n module heeft) of usb. We tonen hoe dat gaat met usb. Gebruik je overigens usb, dan heb je de kabel alleen nodig tijdens het uploaden van je programma naar de mBot. Daarna kan de kabel er gewoon af en is de robot weer vrij. 

Je mBot verbinden kan o.a. via Bluetooth en usb

Installeer eerst de usb-drivers. Dat doe je in het menu Verbinden / Arduino Stuurprogramma Installeren. Kijk daarna in het menu Boards na of mBot (mCore) staat aangevinkt. Sluit de usb b-connector aan de zijkant van de mCore op je robot aan. De a-connector steek je in je computer. Schakel je mBot in. Wacht even tot Windows de driver heeft geladen. Open dan in het menu Verbinden het onderdeel Seriële Poort en kies de poort die in het submenu staat, zoals COM3. Als alles goed gaat, piept je mBot nu.

De verbinding is er dus, maar nu moet mBlock nog met je pc kunnen communiceren. Daarvoor installeren we het communicatieprotocol op de mBot. Dat doen we in het menu Verbinden / Firmware Upgraden. Als het gelukt is, krijg je de melding Upload gelukt en geeft je mBot twee korte piepjes.

mBlock, de basics

Nu zijn we klaar voor ons eigen programma. We houden dit eerste programma simpel, gewoon om te tonen hoe je je mBot programmeert. Klik in het midden van het hoofdvenster van mBlock op Robots en sleep het blokje mBot Programma naar rechts, waar je programma komt te staan. Sleep ook het blokje Laat een C4 horen in Halve maat naar rechts en klik dat in het blokje mBot Programma. Verander de C4 in F4 en de Halve maat in Hele maat. Dubbelklik op het blokje dat je daar hebt geplaatst om de opdracht op je mBot uit te voeren. Je robot speelt de toon af.

Je hebt je eerste mBot-programma nu al uitgevoerd, maar de robot hangt nog altijd van je pc af. Daar gaan we iets aan doen door het programma naar het interne geheugen van de mBot te uploaden. Klik daarvoor eerst op het menu Bewerken / Arduino mode. Rechts krijg je nu de Arduino-code te zien die overeenkomt met je mBlock-programma. Klik bovenaan rechts op Upload naar Arduino. Als er Upload gelukt staat, staat het programma op je mBot. Om dat te controleren, verwijder je de usb-kabel, schakel je de mBot uit en weer in. Hij begroet dan de wereld door de gevraagde toon af te spelen.

mBot scripts

Ons ‘hello world’ programma bevat eigenlijk al veel wat in elk mBot-programma zit. Je begint altijd met een blok mBot Programma. Dit geeft de start van je programma aan. De bult onderaan het blokje klik je dan in een uitsparing van een volgend blokje. Elk blokje met een bult klik je terug in een uitsparing van het volgende blokje. Zo’n blokje met uitsparingen is een opdracht. Zo zijn er opdrachten om de robot te verplaatsen, om de snelheid van de motoren te wijzigen, om de leds in een bepaalde kleur te laten oplichten enzovoort.

Als je in de scripts van categorie Robots kijkt, zie je ook blokjes die geen bult en uitsparing hebben, maar een ovale vorm hebben. De lijnvolgmodule en ultrasone sensor, maar ook optionele modules zoals een temperatuur- of bewegingssensor zijn voorbeelden hiervan. Zo’n ovaal blokje geeft altijd een bepaald getal terug. Dit soort blokjes klik je op de plaats van een getal (in een ovaal) in een ander blokje.

Een laatste soort blokjes zijn zeshoekig. Zo’n blokje voert een test uit, bijvoorbeeld of de knop van de robot is ingedrukt. Zo’n testblokje klik je normaal in een blokje zoals als … dan …, wacht tot … en herhaal tot … …. Die laatste blokjes vind je in de scripts van categorie Bediening. Kijk tot slot ook eens in de categorie Operatoren. Daar vind je onder andere zeshoekige blokjes … en … of … of … om tests te combineren, of een ovaal blokje kies willekeurig van … tot … om een willekeurig getal te kiezen.

Lees verder op de volgende pagina om je mBot rond te laten rijden aan de hand van je eigen commando's.

Aangemaakt: 1 maand,2 weken geleden, door: Koen Vervloesem

Category: Hardware

Tags: arduino , mbot