W4 Wetenschap
NRCWEEKEND ZATERDAG 5 MAART & ZONDAG 6 MAART 2016
W5
WERKEN MET DE PI2B
Sudo apt-get update!
Kijk eens diep in je eigen minicomputer
Als je het SD-geheugenkaartje hebt voorzien van het Raspbian-besturingssysteem en de computer met een stekkervoeding van vijf volt gelijkspanning voorziet, start de Pi op. Op een zwart scherm rollen witte cijfers en letters voorbij – net als in films over hackers. Uiteindelijk zien we een grafisch welkomstscherm dat lijkt op Windows. Met de muis kun je een webbrowser aanklikken, en er is ook een officepakket met tekstverwerker, spreadsheet en powerpointvariant.
Informatica De jeugd moet weer leren programmeren, vindt computerwetenschapper Eben Upton. Hij ontwierp een ultraklein en ultragoedkoop computertje. Tot zijn eigen verbazing zijn er al acht miljoen verkocht.
T
Maar belangrijker is het icoontje dat een beeldscherm voorstelt. Als je dat aanklikt beland je in het echte werk: terminal mode. Een scherm waar de muis nutteloos is en waar je Linux-commando’s moet intikken die in witte letters afsteken tegen een diepzwarte achtergrond. raspi-config bijvoorbeeld (om de configuratie aan te passen) of sudo apt-get update (om automatisch de programma’s bij te werken). Vlakbij de netwerkstekker is de aansluiting voor de Pi camera. Die kost €25 en is een van de populairste uitbreidingen. Hij bestaat uit een klein zwart blokje met een lensje en een platte kabel met een stuk of twintig aders. Als de kabel in de aansluiting is geprutst, kun je foto’s maken. Niet met de muis, maar door met het toetsenbord raspistill –o image.png in te tikken – en elk typefoutje wordt afgestraft met een bits syntax error.
Door Warna Oosterbaan wee maanden geleden raapte Jeroen van Hamersveld een bijzonder nummer van het computertijdschrift Magpi van zijn mat. In het plastic dat het tijdschrift omhulde was een complete computer meegeseald: de Pi Zero. Gratis, als attentie voor de abonnees. De docent informatica aan het Calandlyceum in Amsterdam begreep meteen dat hij een collectors item in handen had. „Ik heb hem netjes in de verpakking laten zitten”, zegt Van Hamersveld. Groot was de computer niet. Een printplaatje van 6,5 bij 3 cm, met een chip in het midden en een paar aansluitingen aan de zijkant. Maar als je daar een toetsenbord, een muis en een scherm op aansloot had je een volwaardige computer. Waarmee je kon internetten, tekstverwerken en spelletjes kon spelen. Je kon er ook je centrale verwarming mee programmeren, of een robot. Het was het nieuwste product van de Britse Raspberry Pi Foundation. Een instelling die het tot zijn taak rekent ultrakleine en ultragoedkope computers op de markt te brengen. Wie de Pi Zero niet gratis kreeg, kon hem voor vijf dollar in de winkel kopen. Althans, dat was de bedoeling. De belangstelling is wereldwijd zo groot, dat er onmiddellijk leveringsproblemen ontstonden – die tot de dag van vandaag aanhouden. „Dat heb ik liever dan dat ik met onverkochte voorraden zit”, zegt Eben Upton, de bedenker van de Pi Zero, aan de telefoon. Hij is gewend aan dit soort dingen. In 2012 lanceerde hij zijn eerste computer op creditcardformaat, de Raspberry Pi. Die was ook meteen uitverkocht. Computers en vruchten hebben iets met elkaar. Apple is de bekendste. In de jaren tachtig was er een Britse computer die Apricot heette. In dezelfde tijd was er de Acorn – ook Brits. Acorn maakte de befaamde BBC-computer die in de jaren tachtig op elke Britse school te vinden was en die aan de basis stond van menige carrière in de wetenschap en de softwareindustrie.
FOTO NRC FOTODIENST
Het laatste model van de Raspberry Pi, de Pi2B, heeft één gigabyte intern geheugen en de processor draait met een snelheid van 900 Mhz. Ter vergelijking: een doorsneelaptop heeft minimaal 4 Gb geheugen en draait twee tot drie keer zo snel. De Pi presteert dus minder, maar produceert nauwelijks warmte en kan het zonder ventilator stellen.
De Raspberry Pi zou iets dergelijks moeten doen: kinderen vertrouwd maken met computers, en vooral met het programmeren van computers. De eerste Pi was zo goedkoop dat je hem van je zakgeld kon kopen: 25 dollar. „Ik dacht dat we er wel 10.000 konden wegzetten”, zegt Upton.
300.000 Pi's verkocht in Nederland Inmiddels werken in een Sonyfabriek in Zuid-Wales 500 man aan de productie van de Pi en zijn er acht miljoen Pi’s verkocht. Het Verenigd Koninkrijk neemt 20 procent van de afzet voor zijn rekening. De VS is in absolute aantallen de grootste markt, maar in Europa gaat de Pi ook goed. Upton schat dat er in Nederland 300.000 Pi’s zijn verkocht. „Met Zweden hebben jullie de meeste Pi’s per hoofd van de bevolking.” De Raspberry Pi is populair in het onderwijs, maar het zijn vooral computerhobbyisten en knutselaars die wel zo’n goedkoop klein computertje kunnen gebruiken. Om het hele huis van muziek te voorzien, om een internetradio te bouwen of om een camera te maken waarmee je vossen in het wild kunt betrappen. Het verhaal van de Pi begint zo’n tien jaar geleden. Upton werkte als computerwetenschapper aan de University of Cambridge (UK) en het begon hem op te vallen dat de studenten steeds minder van computers wisten. „Tien jaar daarvoor hadden de aankomende studenten in hun vrije tijd al een paar computertalen geleerd, ze wisten aardig wat van de hardware en vaak konden ze zelfs met assembler werken [een moeilijke computertaal die heel dicht bij de machinecode van een computer staat, WO]. De nieuwe studenten waren wel heel slim, en ze konden een website maken. Maar echt programmeren in een computertaal was er niet meer bij. Dat betekent dat je een jaar no-
dig hebt om ze op peil te brengen, en dan is er te weinig tijd om ze voor te bereiden op een promotieonderzoek of een baan in de industrie.” Als we nou eens op een open dag van de universiteit aan honderd schoolkinderen een gratis computertje zouden geven, bedacht Upton met een paar collega’s. En dan kijken of ze daar iets bijzonders mee programmeerden. Het project werd snel ambitieuzer. Upton werkte inmiddels bij chipfabrikant Broadcom en zag bij jonge sollicitanten hetzelfde gebrek aan diepe computerkennis. Hij vormde een klein team dat in zijn vrije tijd aan het brainstormen sloeg. Bij Broadcom had Upton toegang tot chips die in mobiele telefoons worden gebruikt. Zo groot als een vingernagel, met een laag energieverbruik en goed toegerust voor multimedia. Dat leek hem wel wat voor zijn project, want om de belangstelling van de jeugd te trekken moest het computertje wel iets te bieden hebben op het gebied van beeld en geluid.
Prototype In het voorjaar van 2011 hoorde een BBCjournalist van het project, hij maakte een foto van het prototype en zette dat op zijn blog. De foto ging viral. „En toen bleek dat we per ongeluk de hele wereld hadden beloofd dat we een computer gingen maken die 25 dollar kostte.” Om alles zo goedkoop mogelijk te ma-
En toen bleek dat we per ongeluk de hele wereld een computer hadden beloofd die 25 dollar kostte
ken, werd het een computer die je ook op een TV kon aansluiten, net als de roemruchte ZX81 uit de jaren tachtig, een schepping van uitvinder Clive Sinclair. Kern van de computer werd een aangepaste telefoonchip van Broadcom, die zowel de de centrale processor als het interne geheugen herbergde. Daarmee was de toepassing van zware besturingssystemen als Windows of Mac.OS onmogelijk, maar het gratis open-source besturingssysteem Linux was geknipt voor dit project – al moest het wel voor de Pi op maat worden gemaakt. De community van computerhobbyisten die zich inmiddels rond de Pi had verzameld speelde daar een belangrijke rol in. De eerste Raspberry Pi mat 8,5 bij 5,5 cm – zo groot als een creditcard. Toch kon je ermee websurfen, je kon er een muzieksysteem op draaien en hij kon films in hoge resolutie op een scherm afspelen. Op de dag dat de Pi besteld kon worden, deden alle 100.000 belangstellenden die zich voor de Pi-mailinglist hadden opgegeven meteen dat. Het ontwerp-
team ging in zee met een paar bedrijven die de fabricage en de levering op zich namen. Onmiddellijk bezweken hun websites onder de exploderende vraag. Maar de productie kwam op gang en begin 2013 was er een miljoen Pi’s verkocht. Er kwam een model B, voor 35 dollar, dat krachtiger en sneller was. Het model 2B (2014) deed daar nog een schepje bovenop, maar was iets duurder (37 euro in Nederland). En zeer recent zag de nog krachtigere Pi 3 het levenslicht (€43). Google-topman Eric Schmidt overtuigde Upton ervan dat het zinvol is ook een heel goedkope Pi te maken. Het resultaat kregen de abonnees van Magpi twee maanden geleden in hun brievenbus: de Pi Zero. Even krachtig als de eerste Pi, en nog goedkoper. Vijf dollar, en voorlopig overal uitverkocht.
200.000 Pi'sop Britse scholen Hoe is het met het oorspronkelijke doel van de Raspberry Pi? Wordt het computertje gebruikt in het Britse onderwijs? „Op scholen die naar de toekomst kijken is dat zeker het geval”, zegt Upton. Er zijn ongeveer 200.000 Pi’s bij Britse scholen beland – een groot deel ervan is gedoneerd door Google en de Raspberry Pi Foundation. „Training van de docenten is daarbij heel belangrijk. We sponsoren een programma met tweedaagse cursussen.” De Foundation is een ideële organisatie. De bescheiden winst die met de Pi’s wordt gemaakt gaat voor de helft naar
Hoe omslachtig het ook lijkt, die commando’s zijn in een programmaatje onder te brengen, zodat er automatisch elk uur een foto wordt gemaakt, of elke keer als een hertje de boom nadert waarin de Pi is opgehangen. Python is de meest gebruikte programmeertaal voor de Pi – en het is ook daarom dat de Pi Pi heet. Op internet zijn vele Pythoncursussen te vinden en honderden voorbeelden van inventieve toepassingen. De grote attractie van de Pi zijn de pinnetjes die vanuit de computer geprogrammeerd kunnen worden: de GPIO-poort (general purpose input/output). Via die pinnetjes kan alles bestuurd worden wat kan bewegen, licht geeft of geluiden maakt: motortjes, lampjes, schermpjes, luidsprekertjes. En op die pinnetjes kunnen sensors worden aangesloten die geluiden, temperaturen en drukveranderingen registreren. Er is inmiddels een netwerk van leveranciers ontstaan die de toebehoren levert. Je begint eenvoudig, met een breakout board. Dat is een experimenteerbordje dat via een brede kabel op de Pi wordt aangesloten. In het bordje kunnen ledjes, weerstanden en andere elektronische onderdelen worden geprikt. Dan gaan we een Pythonprogrammaatje maken. Eerst de Pi duidelijk maken dat hij de GPIO moet laden: import Rpi.GPIO as GPIO. Dan moet een pin worden aangewezen waarop een spanning komt te staan. We kiezen nummer 11, daar is een ledje mee verbonden: GPIO.setup (11, GPIO.OUT). De knock-out is GPIO.output (11,True). Het ledje begint te branden.
training- en onderwijsprogramma’s. Vorig jaar kwam een fusie tot stand tussen de Foundation en de Code Club, een organisatie die zich inzet voor meer computerkennis bij schoolkinderen. En de BBC heeft aangekondigd dit jaar aan een miljoen elfjarige kinderen een heel klein computerachtig apparaatje te schenken, de Micro Bit. Eenvoudiger dan de Pi, maar alweer een teken van de Britse vastbeslotenheid computer literacy te bevorderen. En het gaat niet alleen om kansen op banen, zegt Upton. „Ook als je niet in de ICT gaat werken leer je door te programmeren op een gestructureerde, heldere manier over de wereld te denken.” En in Nederland? Jeroen van Hamersveld werkt in zijn lessen informatica al drie jaar met de Pi, en hij vindt het een waardevol leermiddel. „Op de Pi word je gestimuleerd de terminal mode te gebruiken. Dan heb je niks aan je muis en je Windowsscherm. Dan moet je de computer besturen door met je toetsenbord commando’s in te tikken. Dat zijn essentiële ervaringen als je meer inzicht in ICT wilt krijgen.” Maar Van Hamersveld is een betrekkelijke uitzondering. „We zijn niet zo ver als in Engeland”, zegt Eelco Dijkstra. Hij adviseert onderwijsinstellingen over informaticaonderwijs en is betrokken bij de nascholing van docenten. „Hier wordt de Raspberry Pi incidenteel ingezet.” Dat is wel jammer, vindt hij. „Lange tijd is gedacht dat programmeren niet meer nodig was. Maar dat verandert snel. Want ook in de alfa- en gammawetenschappen wordt steeds meer aan data-analyse gedaan, en lang niet altijd zijn daar kant-en-klare computerprogramma’s voor beschikbaar. Vaak moeten er data uit verschillende bronnen worden verzameld en geanalyseerd. Dat kan alleen maar als je in staat bent om een computer door tekstopdrachten te besturen.”