In deze les zitten 16 slides, met interactieve quizzen en tekstslides.
Lesduur is: 120 min
Onderdelen in deze les
Robotica Niveau B
Workshop 3: Programmeren
Klik hier om de les te beluisteren
Slide 1 - Tekstslide
Hoi! Welkom bij deze workshop waarin we aan de slag gaan met programmeren!
Programmeren
Wat is programmeren?
Het schrijven van een computerprogramma,
zodat de robot weet wat zijn taak is
en hoe hij deze taak moet uitvoeren.
Slide 2 - Tekstslide
Wat is programmeren?
Als een robot niet is geprogrammeerd kan de robot helemaal niets doen.
Dus: Door de robot te programmeren weet de robot welke taak hij moet uitvoeren.
Aan het eind van de les heb jij je eigen manybot geprogrammeerd.
-------
In het geval de leerlingen ook niveau A hebben gevolgd:
Bij de Anybot zagen we dat we de robot een taak kunnen laten uitvoeren, bijvoorbeeld volg het licht. Wil je de taak van de robot veranderen bijvoorbeeld ga weg van het licht, dan moet je de draden van de robot anders aansluiten.
Dat is natuurlijk niet zo handig.
Als je de robot programmeert dan kan je een verandering van de taak vooraf aan de robot doorgeven.
Op deze manier kan je de robot veel meer verschillede dingen laten doen en ben je veel flexibeler.
Handig dat programmeren!
Raspberry pi pico
Met de computer kan je de
microcontroller programmeren.
De informatie van de sensor
gaat de microcontroller in.
De microcontroller geeft
informatie aan de motor.
Slide 3 - Tekstslide
De microcontroller is de verbinder tussen verschillende apparaten.
De microcontroller moet eerst geprogrammeerd worden. Dat doen we door middel van de computer. We vertellen de microcontroller dan wat hij moet doen met informatie die de microcontroller ontvangt.
De microcontroller kan informatie ontvangen van bijvoorbeeld een sensor. Op basis van deze informatie weet de microcontroller of hij iets moet doen, bijvoorbeeld de motor aan of uit zetten.
Pinout
Pin#
GP#
sensor / motor + richting
4
2
rechter sensor
5
3
linker sensor
14
10
B (rechts)achteruit
15
11
B (rechts) vooruit
16
12
A (links) vooruit
17
13
A (links) achteruit
Slide 4 - Tekstslide
Bij het programmeren is het belangrijk om te weten op welke plek, met welke pin, de sensoren en de motoren gekoppeld zijn aan de raspberry pi pico.
Deze gegevens vind je op de pinout.
Als we dit weten kunnen we de raspberry pi pico opdracht geven om bijvoorbeeld te lezen wat de pin zegt waaraan de sensor is gekoppeld.
Het GP# (General Purpose nummer) gebruiken we bij het programmeren van de raspberry pi pico.
Dus welk GP# moeten we uitlezen om te weten of de rechtersensor iets 'ziet'? Inderdaad: GP2.
Dus welk GP# moeten we aan-zetten om te zorgen dat de linkermotor vooruit gaat draaien? Inderdaad: GP13.
Stel mijn sensor is verbonden met pin 5.
Welk GP# moet ik gebruiken bij het programmeren?
A
GP7
B
GP0
C
GND
D
GP3
Slide 5 - Quizvraag
Deze slide heeft geen instructies
Sturen van de robot
Als ik linksaf wil:
Wat is de opdracht voor:
Motor A?
en Motor B?
Slide 6 - Tekstslide
Wat moet de robot doen als hij aan de rechterkant een object ziet en deze wil ontwijken?
Antw: naar links draaien.
Hoe kunnen we zorgen dat de robot naar links gaat? (de robot heeft immers geen stuur)
Wat moeten we dan als opdracht geven aan het linkerwiel (A)? en aan het rechterwiel (B)? Antw: De snelheid van het rechterwiel (B) moet groter zijn dan de snelheid van linkerwiel (A).
Je zou het bijvoorbeeld zo kunnen programmeren:
linkerwiel (A): stop (achteruit kan ook, maar we gaan nu verder met stop)
rechter wiel (B)? Vooruit
Sturen van de motoren
Linksaf: motor B vooruit. motor A stop
pin#
GP#
motor + richting
waarde
14
10
B (rechts) achteruit
0
15
11
B (rechts) vooruit
65000
16
12
A (links) achteruit
0
17
13
A (links) vooruit
0
Slide 7 - Tekstslide
Nu moeten we deze opdracht doorgeven aan de robot.
Om motor B vooruit te laten gaan moet GP10 op 0 en GP11 op 65000
Om motor A te laten stoppen moet GP12 op 0 en GP13 op 0
Stel ik wil rechtsaf met de robot. Welke opdracht moet ik geven aan Motor A en Motor B?
A
A:stop en B:vooruit
B
A: achteruit en B: achteruit
C
A:vooruit en B:stop
D
A: achteruit en B: vooruit
Slide 8 - Quizvraag
Deze slide heeft geen instructies
Programmeertalen
Hoe geven we opdrachten door aan de robot?
Met een programmeertaal. Er zijn bloktalen en teksttalen.
Bloktaal
Teksttaal
Slide 9 - Tekstslide
Hoe geven we opdrachten door aan de robot?
Met een programmeertaal. Er zijn bloktalen en teksttalen.
Wij gaan de bloktaal gebruiken, want dan maak je minder gemakkelijk een typefoutje.
Mirte.org/ide
1
2
3
4
Slide 10 - Tekstslide
Wij gaan gebruik maken van mirte.org/ide.
Laten we kijken hoe dat eruit ziet.
Er zijn 4 velden:
1) balk met knoppen:
Hier kan je: verbinding maken met de robot, je bestanden opslaan en het script uitvoeren.
2) Midden veld: Hier plaats je de blokken. Zij vormen samen je script.
3) kolom aan de linker kant: hier vind je al de blokken die je kunt gebruiken om je script te maken.
4) kolom aan de rechter kant: De output: Hier komt de informatie die de sensor geeft.
Mirte.org/ide blokken
Slide 11 - Tekstslide
Deze slide heeft geen instructies
Blokvormen
Slide 12 - Tekstslide
Deze slide heeft geen instructies
Analoog
Sleep naar het juiste vak
Digitaal
1 of 0
tekst
waar of onwaar
65000
Slide 13 - Sleepvraag
Deze slide heeft geen instructies
Werkblad: Stappenplan
Stap 1: Mirte.org/ide openen en de Manybot verbinden