Bij de meeste Arduino workshops die ik geef, wordt gevraagd wat nu precies het verschil is tussen een Arduino en een Raspberry Pi (RPi). Het gegeven antwoord: “De RPi is veel meer een computer dan de Arduino en kan dus ook andere dingen dan alleen in en output pinnen aansturen”. Maar veel verder kwam ik niet met mijn uitleg. Anders dan voor het opzetten van een eigen mediacenter (die echt super is en ik elke dag gebruik), had ik de RPi niet gebruikt. In Nederland zijn er nog geen echte workshops RPi. Toen de mogelijkheid zich voor deed om een tweedaagse cursus te volgen in Engeland (picademy, gesponsord door Google), heb ik die dan ook maar met beide handen aangegrepen. De doelen voor mij voor deze cursus:
1 ervaring opdoen met de RPi,
2 de RPi vergelijken met de Arduino,
3 de didactische meerwaarde van de RPi voor het Nederlands onderwijs te onderzoeken,
4 de mogelijkheden voor een workshop RPi in Nederland te onderzoeken,
5 uitkomsten te rapporten aan de makers in Nederland zodat ook jullie een keuze kunnen uit de verschillende platforms.
Beginnend met punt vijf, werk ik elk doel hieronder uit.
1) Van te voren had ik mij aardig ingelezen over de diverse mogelijkheden van de RPi. Onder een van de geraadpleegde bronnen zat ook de gratis Magpi education. Een aantal van de programma’s die naar voren kwamen in het blad, had ik al verder uitgewerkt voor een eigen project.
Op dag 1 van de cursus werd er voornamelijk gewerkt met de tutorials die in de Magpi beschreven staan. Zo werkten we met SonicPi, Python in combinatie met GPIO (ledjes aansturen en bedienen van een camera) en Python in combinatie met Minecraft. Voor mij was het jammer dat het programmeren niet zo ver ging en dat mijn voorbereiding eigenlijk te goed was.
Op dag 2 moesten we aan een eigen bedacht project werken. Dit gaf de mogelijkheid om de diverse mogelijkheden verder te verkennen. Zo was er een informatica docent die minesweeper maakte in Minecraft. Als project probeerde ik de Arduino te laten communiceren met de RPi. Dit werd helaas vaak verhinderd door een power shortage waardoor de RPi herstartte.
Al met al heb ik wel ervaring opgedaan en gezien wat je met een RPi kunt, maar naar mijn idee had dit ook in de helft van de tijd gekund.
2) Zowel de RPi als de Arduino hebben voor- en nadelen. De Arduino is uitstekend geschikt om te leren hoe physical computing werkt vanuit de basis: het direct uitlezen van elektronica. Het verwerken van data in grafieken etc. vereist dan wel altijd weer een computer. De RPi is goed geschikt als computer. Je kunt er diverse programma’s op installeren en gebruiken. Maar voor het uitlezen van elektronica is de RPi naar mijn idee minder geschikt. Door het ontbreken van een analoge pin (wel mogelijk met een explorerhat, een uitbreiding voor ongeveer €15,-) moet je elektronica op een andere manier uitlezen. Daarnaast maak je bij het programmeren in Python veelal gebruik van voorgeschreven code. Naar mijn idee zie je dan nog steeds niet goed wat er in de microcontroller gebeurt en hoe de pinnen aangestuurd worden. Vergelijk de twee onderstaande code maar eens met elkaar: if(digitalRead(button)==HIGH){} (arduino) button.wait_for_press(): (RPi)
Ik houd het dus maar bij de Arduino in mijn lessen natuurkunde, maar voor leren programmeren wil ik best een keer wisselen naar RPi.
3) De meerwaarde van de RPi ligt vooral bij het leren programmeren. Als docent kun je zelf de goedkope computer (€35,-) beheren, programma’s installeren, en een nieuwe Operating System opzetten als er iets fout gaat. Ook kunnen diverse programma’s gecombineerd worden. Een combinatie van sonicpi, python en minecraft geven samen een meer gamegevoel aan minecraft doordat het interactiever wordt. Zo kun je met sonicpi achtergrond muziek afspelen en een geluidje afspelen als je karakter springt. Ook kun je games ontwikkelen in minecraft met behulp van python.
Voor natuurkunde zie ik wel de mogelijkheden om data eenvoudig te verkrijgen, te verwerken en door te sturen. Maar met behulp van een photon, zusje van Arduino, kan dit ook eenvoudig verwezenlijkt worden en heb je de voordelen van een grote en krachtigere computer weer tot je beschikking. Overigens zijn de genoemde programma’s niet alleen voorhanden op de RPi maar kun je daar ook een gewone computer voor gebruiken.
4) Door de vele programma’s die al op de RPi staan, is het lastig om focus aan te brengen in een workshop. Als workshopleider kun je nooit alle vragen aan, omdat die alle kanten op kunnen gaan. Ook mijn vragen tijdens de cursus konden alleen door de aanwezige programmeurs (en ook niet allemaal) beantwoord worden. Dit maakt het organiseren van een workshop waarin iedereen geholpen wordt met zijn/haar hulpvragen lastig. Wel zou een algemene indruk gegeven kunnen worden wat je met de RPi kunt doen. Als deelnemer kun je dan thuis verder met het ontwikkelen van expertise. Als je zoiets ziet zitten, laat het maar weten en kan ik kijken wat er gedaan kan worden. Ik heb overlegd met picademy, maar zij zullen niet naar Nederland komen.
Al met al was het een aardige nascholing die wat mij betreft zeker in de helft van de tijd kon. De raspberry pi is een aardig computertje waarmee je prima leerlingen kunt laten klooien. Maar voor de natuurkunde les zie ik op dit moment weinig meerwaarde t.o.v. de goedkopere Arduino.
Rpi en Ar zijn twee heel verschillende bordjes. Rp is een eenvoudige computer met besturingssysteem en Ar is een microcontroller voor slechts een of enkele taken tegelijk.