modellering met Arduino mini module

Maat: px
Weergave met pagina beginnen:

Download "modellering met Arduino mini module"

Transcriptie

1 2017 modellering met Arduino mini module F. Vonk versie

2 inhoudsopgave 1. inleiding de Arduino programmeren voor Arduino breadboards en elektronica verder met programmeren flowcharts appendix A: Arduino IDE configureren Dit werk is gelicenseerd onder een Creative Commons Naamsvermelding NietCommercieel GelijkDelen 3.0 Unported licentie Deze module is gebaseerd op: Aan de slag met Arduino Overleven in een ruimtestation ; ESoE bètadidactiek opdracht ; R. Eggenkamp, R. van Elst, J. Geurts en M. Savelsberg. De afbeelding op het voorblad is verkregen via INFOwrs. Copyright 2010 INFOwrs Serviços em informatica

3 1. inleiding Modelleren wordt steeds belangrijker in onze maatschappij. Producten die ontwikkeld worden, zijn steeds complexer. Om de kwaliteit en kosten van deze producten goed te kunnen managen, is het belangrijk eerst een goed model van een product te maken. Er zijn veel modelleringsmethoden op veel verschillende gebieden 1. In deze module gaan we naar een methode kijken op het gebied van software modellering, te weten flowcharts (stroomdiagrammen). Om het levendiger te maken, ga je de gemaakte modellen ook implementeren met behulp van een zogenaamde microcontrollerbord, in dit geval een Arduino. Zo'n Arduino bestaat uit een eenvoudige CPU met weinig RAM die beide op een printplaat zijn gemonteerd. Op deze printplaat wordt een relatief groot aantal IO (input-output) poorten aangeboden om sensoren en actuatoren aan te sluiten, zoals LED lampjes, drukknopjes, buzzers enzovoorts. Figuur 1: Een Arduino Uno Rev3 microcontrollerbord. De Arduino en andere microcontroller oplossingen worden voor de meest waanzinnige dingen gebruikt. Een aantal voorbeelden: YouTube Arduino Robot Hand YouTube Arduino Tetris YouTube Arduino 3D LED cube Dus welkom bij de module modellering met Arduino mini module. We gaan je kennis laten maken met de Arduino en een aantal actuatoren. Daarnaast ga je leren over flowcharts. 1 Zie bijvoorbeeld Wikipedia Systems Modeling

4 In deze module kom je opgaves tegen, die je moet maken om de lesstof te verwerken. opgave Opgaves in blauw moet je maken. Je kunt deze, op verzoek, ook aan je leraar laten zien. Kun je dit niet, dan beïnvloedt dat je cijfer voor de uitdagingen. In deze module kom je uitdagingen tegen, die je moet maken om dit onderdeel van het vak informatica af te ronden. Je oplossingen moet je inleveren en eventueel als groep met je leraar bespreken. uitdaging Opgaves in paars zijn uitdagingen. Het goed uitvoeren van de uitdagingen in deze module resulteert in het cijfer 5,5. Bij iedere uitdaging hoort een deelverslag. Uiteindelijk lever je 1 verslag in dat alle deelverslagen bevat. Per uitdaging worden eisen beschreven waaraan je moet voldoen. Gebruik voor code in je verslag het lettertype "Courier New". Laat de oplossing voor je uitdaging zien aan je leraar. Afhankelijk van hoe je werkt in de les en wat de leraar van je observeert, moet je je resultaat en verslag uiteindelijk wel of niet mondeling toelichten. Als je je resultaat moet toelichten, dan kan dat buiten de lestijd ingepland worden. Je cijfer zal in dat geval ook afhangen van je toelichting. Let op, links in dit document hebben een rode kleur. Voor leerlingen die informatica als extra vak doen: Het kan zijn dat je niet alle lessen aanwezig kunt zijn en dat je thuis geen Arduino tot je beschikking hebt. In dat geval doe je zoveel mogelijk met de Arduino in de les. In de beoordeling wordt er dan rekening mee gehouden, dat je niet alle delen die met de Arduino zelf af hebt gekregen. Je maakt natuurlijk wel voor alle uitdagingen de modellen en geeft er de uitleg bij. Ter compensatie doe je een extra uitdaging in de mini en extra module

5 2. de Arduino Naast de Arduino, die je afgebeeld ziet in Figuur 1 in het vorige hoofdstuk, heb je nog een type A/B USB kabel en een computer nodig. Om software voor de Arduino te schrijven heb je de Arduino ontwikkelomgeving nodig. Deze is al geïnstalleerd op de computers in het informaticalokaal. Je kent intussen het programma "Hello World!". Dit programma doet niks meer of minder dan Hello World! op het scherm laten zien. Dit programma wordt vaak gebruikt om snel te testen of de ontwikkelomgeving goed werkt. Binnen de elektronicawereld gebruikt men een variant op "Hello World!" en die heet "Blink". Het "Blink" programma zorgt ervoor dat je een LED lampje kunt laten knipperen. Het programma, ook wel "sketch" genoemd in de Arduino wereld, "Blink" wordt standaard meegeleverd met de Arduino ontwikkelomgeving. Hiermee ga je testen of alles goed werkt. opgave 2.1 Voer de volgende stappen uit en kijk of alles goed werkt: 1) Sluit de Arduino met de USB kabel aan op de PC. 2) Start de Arduino IDE op via Start All Programs Vakken Informatica Arduino (dit kan even duren als de IDE nog nooit op de PC gebruikt is). Je ziet dan het volgende venster. Dit is de Arduino IDE

6 3) Kijk of het "Arduino Uno" bord ingesteld is bij Tools Board, zie appendix A: Arduino IDE configureren. 4) Kijk of de juiste USB poort ingesteld is bij Tools Port, zie appendix A: Arduino IDE configureren. 5) Ga naar File Examples in het menu. Je ziet hier een grote verzameling voorbeelden staan. Kies het Blink programma onder Basics. 6) De omgeving opent een nieuw venster met de sketch erin. Linksboven staan twee knoppen die je nodig hebt om een sketch te verifiëren en installeren op de Arduino. De linker knop Verify gebruik je om de code te controleren, de rechter knop Upload om de sketch op de Arduino te installeren. 7) Klik nu eerst op de Verify knop. Onderin beeld zie je dat de code gecontroleerd wordt (dit noemen we compileren). Als dit succesvol verloopt zie je het volgende. 8) Klik vervolgens op de Upload knop. De Arduino ontwikkelomgeving compileert de sketch nu nogmaals en upload deze vervolgens naar de Arduino. Als dit gelukt is zie je de melding Done uploading. Als alles goed is gegaan, dan zie je nu op de Arduino het indicatie LED knipperen met een snelheid van ongeveer 1 seconde, zie afbeelding hieronder

7 Proficiat, je hebt je eerste programma uitgevoerd op een Arduino bord. Nu ga je zelf de code wat aanpassen. opgave 2.2 Bekijk de code van de Blink sketch goed. Pas de code nu zo aan, dat het indicatie LED twee keer zo snel gaat knipperen. Als het niet lukt, geen probleem, dan ga je gewoon door met de module en probeer je het straks nog een keer

8 3. programmeren voor Arduino In het vorige hoofdstuk heb je de Blink sketch geladen in de ontwikkelomgeving, gecompileerd, naar de Arduino overgezonden en gekeken of het echt werkt op de Arduino. Misschien is het je zelf al gelukt om het LED lampje twee keer zo snel te laten knipperen. In dit hoofdstuk gaan we kijken hoe zo n sketch er uitziet, en zullen we er meer wijzigingen in maken. De sketch zelf staat in het tekstgedeelte van de Arduino ontwikkelomgeving. Sketches zijn geschreven in een op C/C++ gebaseerde taal. C en C++ zijn programmeertalen die erg veel gebruikt worden. Als je Verify vanuit het menu kiest, dan gaat de omgeving de tekst lezen en vertalen naar de Arduino machinetaal (compileren) zodat de Arduino het programma uit kan voeren. De Blink sketch is niet in alle versies van de ontwikkelomgeving hetzelfde. Waarschijnlijk ziet de versie die jij hebt er anders uit dan het onderstaande voorbeeld. Als dat het geval is, verander de sketch die je hebt dan in de onderstaande. /* * Blink * * The basic Arduino example. Turns on an LED on for one second, * then off for one second, and so on... We use pin 13 because, * depending on your Arduino board, it has either a built-in LED * or a built-in resistor so that you need only an LED. * * */ int ledpin = 13; // LED connected to digital pin 13 void setup() { pinmode(ledpin, OUTPUT); } // run once, when the sketch starts // sets the digital pin as output void loop() { } // run over and over again digitalwrite(ledpin, HIGH); // sets the LED on delay(1000); // waits for a second digitalwrite(ledpin, LOW); // sets the LED off delay(1000); - 8 -

9 We gaan nu het programma ontleden. commentaar Het eerste stuk is het zogenaamd commentaar. /* * Blink * * The basic Arduino example. Turns on an LED on for one second, * then off for one second, and so on... We use pin 13 because, * depending on your Arduino board, it has either a built-in LED * or a built-in resistor so that you need only an LED. * * */ Commentaar is tekst die niet wordt vertaald naar Arduino machinetaal, het is er alleen om mensen te vertellen wat er gaat gebeuren. Commentaar verduidelijkt de code. Commentaar begint met een /* en eindigt met een */. Alles tussen de /* en */ wordt genegeerd bij het compileren. In dit voorbeeld wil de auteur het er netjes uit laten zien met extra * s, maar dat hoeft niet. Commentaar is essentieel en het is belangrijk dat je zelf ook voldoende commentaar in je eigen sketches zet. Zonder commentaar is het voor anderen veel moeilijker om jouw code te begrijpen. Dit geldt natuurlijk voor je groepsgenoten, maar ook voor de docent die jouw werk moet beoordelen. Aan het begin van de sketch zet je de naam en het doel van je sketch. variabelen Daarna komen de variabelen. int ledpin = 13; // LED connected to digital pin 13 Dit is de eerste regel van de echte Arduino instructies. Het gedeelte aan de rechterkant is het commentaar. Als je een enkele commentaarregel of een deel daarvan wilt schrijven, dan kun mag je het achter // zetten. Het gedeelte voor de // noemen we een statement, ofwel een computer opdracht. In het Nederlands eindigen we een zin met een. (punt), maar in veel computertalen gebruiken we de ; (puntkomma). De computer regel hierboven is een opdracht voor de computer om een variabele, een speciaal soort doosje, te maken die ledpin heet, en waar de waarde 13 in gestopt wordt. Het heet een variabele, omdat de inhoud gedurende de uitvoering van de sketch kan veranderen; de inhoud is "variabel"

10 Het eerste gedeelte van de regel is int, dit geeft aan wat voor soort variabele we gaan maken; we noemen dit het type. Het is de afkorting van integer en dat betekent geheel getal. Dit wil zeggen dat in deze variabele alleen gehele getallen gestopt kunnen worden. Als je er iets anders is stopt dan faalt het compileren. opgave 3.1 Verander de waarde 13 bij de variabele ledpin in "Jantje" en druk op de Verify knop. Kijk wat er gebeurt. Het tweede gedeelte van de regel is ledpin, dit is de naam van de variabele. Het derde gedeelte van de regel is de =, dit geeft aan dat de variabele ledpin de waarde krijgt die aan de rechterkant van de = staat. Deze = spreek je uit als "wordt", omdat het aangeeft dat de waarde van de variabele verandert. Het vierde gedeelte van de regel is 13, een geheel getal dat aan ledpin toegekend wordt. functies Het volgende, en laatste, stuk van de sketch bestaat uit functies. In iedere sketch worden twee speciale functies verwacht namelijk: void setup() en void loop() Daarnaast kun je ook zelf functies maken. void setup() { pinmode(ledpin, OUTPUT); } // run once, when the sketch starts // sets the digital pin as output Het woord void slaan we even over. Daarna staat de naam van de functie, in dit geval setup. Na de naam staan ALTIJD een openings- en een sluithaakje. Tussen deze haakjes mag iets staan, maar dat hoeft niet. Daarna staat wat de functie moet doen, dit staat altijd tussen accolades. Wat de functie moet doen wordt aangegeven door middel van instructies/statements. Dit alles noemen we een functiedeclaratie. De instructie in deze functie geeft aan dat de ledpin in de output modus staat, dat wil zeggen dat de Arduino verwacht dat we waardes gaan schrijven naar deze pin

11 pinmode is de naam van een functie die binnen de Arduino ontwikkelomgeving al voor ons gemaakt is en die we daarom kunnen gebruiken. Als we de pinmode functie gebruiken noemen we dat een functieaanroep. Ook bij een functieaanroep zetten we ALTIJD een openings- en een sluithaakje na de naam van de functie. Meestal staat er iets tussen de haakjes, maar dat hoeft niet! In het geval van pin- Mode staan er twee dingen tussen haakjes. Dit zijn de argumenten die we aan de functie doorgeven. Je scheidt de argumenten door middel van komma's. Je kunt dit vergelijken met wat je in de wiskunde gebruikt. Bijvoorbeeld sin(30), die de sinus van 30 graden voor je uitrekent. Een overzicht van functies die je kunt gebruiken vind je bijvoorbeeld op de Arduino website. De volgende functie heet loop en ziet er als volgt uit. void loop() // run over and over again { digitalwrite(ledpin, HIGH); // sets the LED on delay(1000); // waits for a second digitalwrite(ledpin, LOW); // sets the LED off delay(1000); } In deze functie worden 4 instructies uitgevoerd. De tweede en de vierde regel zijn identiek en hebben met wachten te maken. Deze instructie zegt: Arduino, doe 1000 milliseconden niets. De instructie roept de functie delay aan die ook bekend is binnen de Arduino ontwikkelomgeving. Dit is handig, want dan hoeven we niet zelf de code te schrijven om de Arduino te laten wachten. De eerste instructie bevat ook een functie aanroep. Ditmaal wordt de functie digitalwrite aangeroepen, die uiteraard ook bekend is in de Arduino ontwikkelomgeving. Hiermee kun je de spanning op een pin van de Arduino zetten of weghalen. Wanneer die pin met een LED verbonden is kun je daarmee die LED aan- en uitzetten. Aanzetten doe we met de speciale waarde HIGH en uitzetten met LOW. opgave 3.2 Als het in het vorige hoofdstuk niet gelukt is, pas dan nu de code van de Blink sketch zo aan, dat het indicatie LED twee keer zo snel gaat knipperen

12 de speciale functies setup en loop De functies setup en loop zijn speciaal voor de Arduino. De setup functie wordt altijd helemaal aan het begin aangeroepen, dus vanaf het moment dat er spanning op de Arduino staat. Nadat de setup functie is uitgevoerd, wordt telkens opnieuw de loop functie aangeroepen. De loop functie wordt dus steeds weer en net zolang aangeroepen totdat de spanning van de Arduino wordt gehaald. opslaan van je code Nu we de hele sketch geanalyseerd en aangepast hebben is het tijd om de veranderingen op te slaan. Als je dat probeert, dan krijg je de melding dat de sketch read-only is, zie de afbeelding hieronder. Sla hem nu op in een eigen map onder een zinvolle naam. Vervolgens ga je de volgende opdrachten uitvoeren. opgave 3.3 Verander de sketch zodat de code ervan er precies hetzelfde uitziet als de code aan het begin van dit hoofdstuk. Sla de sketch vervolgens op onder een nieuwe naam. opgave 3.4 Verander de sketch zo, dat de indicatie LED 100ms aan is en 900ms uit. Sla de sketch vervolgens op onder een nieuwe naam

13 uitdaging 1: Blink In deze uitdaging ga je spelen met de aan en uit duur van het LED. Benodigdheden: Arduino Verander de Blink sketch zo, dat de LED 50 ms aan is en 50 ms uit. Sla de sketch vervolgens op onder een nieuwe naam. Verander de zojuist gemaakte sketch zo, dat de LED 10 ms aan is en 10 ms uit. Sla de sketch vervolgens op onder een nieuwe naam. Verklaar wat je ziet, en vergelijk het met het resultaat van de vorige sketch uit deze uitdaging. Als alles werkt, laat het je leraar dan even zien! In je verslag neem je het volgende op: De uitleg van je observaties. De code die je gemaakt hebt (met voldoende commentaar)

14 4. breadboards en elektronica Je gaat in de rest van deze module aan de slag met elektronica in de vorm van sensoren en actuatoren. In dit hoofdstuk krijg je uitleg over de basis van de elektronicacomponenten die we gaan gebruiken. Hiernaast zie je een breadboard. Dit gebruik je om componenten op elkaar aan te sluiten. Belangrijk om te weten is dat de verschillende gaatjes in een patroon met elkaar verbonden zijn. Zoek zelf uit hoe dit bij jouw breadboard zit. Hiernaast zie je enkele enkel kleurige LED lampjes, in dit geval rode. Zo'n LED lampje heeft twee pootjes. Het ene pootje (positieve pootje) sluit je aan op een hoge spanning, bijvoorbeeld 3,3 of 5 volt. Het andere pootje (negatieve pootje) sluit je aan op de 0 volt. Je sluit het positieve pootje via een weerstand aan op een digitale poort van de Arduino. Deze stuurt ongeveer 3,3 volt uit. Het negatieve pootje sluit je op de GND (ground, oftewel 0 volt) van de Arduino aan. Het lange pootje van het LED lampje is het positieve pootje, het korte is het negatieve pootje. Je kunt dit ook zien aan het hoedje, de platte kant zit bij het negatieve pootje. Hiernaast zie je drie weerstanden van 220Ω (Ohm). Een weerstand heeft geen positieve en negatieve kant, dus het maakt niet uit hoe je hem aansluit. Hiernaast zie je M/M jump wires afgebeeld. Dit zijn draadjes met aan weerszijden pinnetjes, die je in Arduino's en breadboards kunt steken. M/M staat voor male/male en dat betekent dat er pinnetjes aan de uiteinden zitten

15 opgave 4.1 Bouw de schakeling na die je hieronder ziet. Het rode LED lampje zit via het rode draadje op poort 12 aangesloten en via het zwarte draadje op de "gnd" (ground, oftewel aarde). Pas vervolgens de Blink sketch uit het vorige hoofdstuk zo aan, dat je niet het indicatie LED op het Arduino bord laat knipperen, maar het LED lampje op het breadboard. opgave 4.2 Breid de schakeling die je in de vorige opgave hebt gebouwd uit. Voeg een groen LED lampje toe en sluit dat aan op Arduino poort 11. Maak een nieuwe sketch om beide LED lampjes aan te sturen. Neem de Blink sketch als uitgangspunt. Zorg ervoor dat de LED lampjes om en om een seconde aan zijn. Er mag dus maar 1 LED lampje tegelijkertijd branden

16 5. verder met programmeren Tot nu toe heb je enkel een vast aantal regels code uitgevoerd. Deze regels worden niet beïnvloed door de omgeving, maar uiteindelijk wil je dit natuurlijk wel graag. Je hebt immers veel meer mogelijkheden als jouw sketch kan reageren op een actie van de gebruiker (bijvoorbeeld een druk op de knop) of de verandering van een sensor. Om dit te kunnen heb je controle structuren nodig, zoals de if-else (de selectie). Door een if-else structuur te gebruiken, voer je een stukje code conditioneel uit zoals je ooit geleerd hebt. Dit betekent dat het stukje code enkel wordt uitgevoerd indien er aan een voorwaarde (de conditie) voldaan wordt. Je kunt hierdoor reageren op bijvoorbeeld het indrukken van een knop. Wanneer je code, zonder controle structuren, binnen de loop functie wordt uitgevoerd, dan wordt alle code in de loop functie continue herhaald. Door de if-else constructie te gebruiken kun je hier controle op uitoefenen. Je kunt bijvoorbeeld code uitvoeren elke derde keer dat de loop functie doorlopen wordt. Een voorbeeld hiervan, zie je in de code hieronder. int ledpin = 13; // LED connected to digital pin 13 void setup() { pinmode(ledpin, OUTPUT); // sets the digital pin as output } int teller = 0; // var to control code in loop void loop() { if (teller == 3) // execute code only when teller equals 3 { digitalwrite(ledpin, HIGH); // sets the LED on teller = 0; // restart counting with teller } else // execute code when teller is not equal to 3 { } digitalwrite(ledpin, LOW); // sets the LED off teller = teller + 1; } delay(1000); // waits for a second Figuur 2: Voorbeeld van een if-else constructie

17 uitdaging 2: LED lampjes In deze uitdaging ga je spelen met de aan en uit duur van het LED. Benodigdheden: Arduino breadboard 2 LED lampjes (groen en rood) 2 weerstanden van 220Ω (Ohm) M/M jump wires (draadjes) Pas de code van opgave 4.2 aan met een if-else controle structuur, zodat de delay functie maar één keer in de code voorkomt. Zet voldoende commentaar in je code! Als alles werkt, laat het je leraar dan even zien! In je verslag neem je het volgende op: Een foto van je opstelling. De code die je aangepast hebt (met voldoende commentaar)

18 6. flowcharts Aangezien dit een module over modellering is, wordt het tijd om de flowcharts modelleringsmethode te gaan bekijken. Wie de comedy serie The Big Bang Theory kent, herkent misschien het diagram uit Figuur 3. Figuur 3: "The friendship algorithm" diagram. 2 In Figuur 3 zie je de flowchart van het "friendship algorithm" uit de aflevering "Stu the Cockatoo is New at the Zoo". De clip met, een deel van, de uitleg over deze flowchart vind je op YouTube. Je ziet dat flowcharts handig zijn om diagrammen te maken die processen voorstellen. Feitelijk is de uitvoering van een computerprogramma ook een proces. En daarom worden flowcharts gebruikt om computerprogramma's te modelleren

19 opgave 6.1 Bekijk de flowchart uit Figuur 3 (en eventueel de uitleg in het YouTube filmpje) en zorg dat je precies snapt wat er gebeurt. Je ziet dat in Figuur 3 een aantal symbolen worden gebruikt. Deze symbolen hebben een afgesproken betekenis in het diagram. Op die manier leest iedereen een flowchart op dezelfde manier. Er staan ook pijlen en lijnen in het diagram die aangeven welke symbolen een volgordelijke relatie met elkaar hebben. Zij laten de flow van het diagram zien. In Figuur 4 zie een overzicht van veel voorkomende flowchart symbolen en een beknopte uitleg van elk van deze symbolen. Figuur 4: Overzicht van veel gebruikte flowchart symbolen

20 Je zult in deze module niet alle in Figuur 4 afgebeelde symbolen gaan gebruiken. De symbolen die je mogelijk nodig gaat hebben zijn de: Terminator, Proces, Decision, Delay, Data en Subroutine. In Figuur 3 worden al deze symbolen gebruikt behalve de Terminator en de Delay. In Figuur 5 staan nog meer symbolen, daarvan heb je alleen de Merge nodig. Figuur 5: Overzicht van minder gebruikte flowchart symbolen. 4 flowcharts kun je met de hand tekenen op papier, maar het is handiger om het via een tekentool op de computer te doen. Een gratis online tool is GliffyOnline. In het menu aan de linkerkant van dit tool, kun je, onder Basic Shapes, kiezen voor flowchart. Daar vind je veel van de symbolen uit Figuur 4 en Figuur De naamgeving is iets anders, zo gebruikt Gliffy start end i.p.v. Terminator, input/output i.p.v. data en predefined proces i.p.v. Subroutine

21 opgave 6.2 Probeer zelf een flowchart te maken van het Blink algoritme. Laten we eens kijken naar de sketch uit Figuur 2. Een mogelijke flowchart voor deze sketch zie je in Figuur 6. Figuur 6: Een mogelijke flowchart voor de sketch in Figuur

22 Hierbij is het essentieel om op te merken dat we bij informatica standaard beginnen te tellen bij 0! Verder betekent tellen dat we met 1 omhoog gaan. En reset betekent dat we weer bij 0 beginnen te tellen. Bij het aan- en uitzetten gebruiken we de Subroutine, omdat we een (hulp)functie nodig hebben om dit te realiseren. Deze kan in theorie weer in detail gemodelleerd worden een aparte flowchart. Er zitten geen Terminator symbolen in de flowchart, omdat het programma oneindig lang door blijft gaan vanwege de eigenschap van de loop functie op de Arduino. opgave 6.3 Ga voor jezelf na dat de flowchart uit Figuur 6 inderdaad klopt bij de sketch uit Figuur 2. Toch is Figuur 6 geen model voor het probleem dat de sketch oplost. De reden is dat het eigenlijk een vertaling is van de sketch in een symbolische notatie. Een model hoort een vereenvoudigde weergave van de werkelijkheid te zijn. Een model van een computerprogramma moet dan ook niet alle details van het programma bevatten; oftewel, het moet een abstractie zijn van het computerprogramma. Je zou vanuit een model meerdere verschillende computerprogramma's moeten kunnen maken die hetzelfde resultaat hebben en daarbij ook nog verschillende programmeertalen moeten kunnen gebruiken. Een model is dan ook iets dat je moet maken vóór je een computerprogramma maakt. Een model maak je op basis van de beschrijving (vaak de specificatie met producteisen) van het probleem dat je wilt oplossen. Laten we eens naar het probleem kijken dat we op proberen te lossen met de sketch uit Figuur 2. We willen zorgen dat de built-in LED 3 seconden uit is, dan 1 seconde aan en dat zich dat oneindig lang herhaalt. Een goed model voor dit probleem zie je in Figuur 7. Je ziet in Figuur 7 als het goed is ook meteen, dat je een eenvoudigere sketch (zie Figuur 8) kunt maken om het probleem op te lossen dan we hebben in Figuur 2. De sketch in Figuur 2 is zo complex omdat we maar 1 keer de delay functie wilden gebruiken. Je ziet nu dat je daar beter niet naar kunt streven, omdat het de sketch onnodig veel complexer maakt. Door eerst een goed model te maken van je probleem, kun je ervoor zorgen dat je een zo eenvoudig mogelijk computerprogramma maakt

23 Figuur 7: Een goede flowchart voor de sketch in Figuur 2. int ledpin = 13; // LED connected to digital pin 13 void setup() { pinmode(ledpin, OUTPUT); // sets the digital pin as output } void loop() { } digitalwrite(ledpin, LOW); // sets the LED off delay(3000); digitalwrite(ledpin, HIGH); // sets the LED on delay(1000); Figuur 8: Een eenvoudigere sketch dan in Figuur 2. Maar zoals gezegd kun je nog meer verschillende sketches maken die het probleem oplossen op basis van het model

24 int ledpin = 13; // LED connected to digital pin 13 void setup() { pinmode(ledpin, OUTPUT); // sets the digital pin as output } int teller = 0; // counter to determine even or odd int delaymult = 0; // multiplier for delay function void loop() { if (teller % 2 == 0) // when teller is even, turn light off { delaymult = 3; // multiplier of 3 for delay when off digitalwrite(ledpin, LOW); // sets the LED off } else // when teller is odd, turn light on { delaymult = 1; // multiplier of 1 for delay when on digitalwrite(ledpin, HIGH); // sets the LED on } } teller = teller + 1; delay(1000 * delaymult); // wait correct amount of time Hier kiezen we er weer voor om maar 1 keer de delay functie te gebruiken. Ook deze oplossing is weer onnodig veel complexer dan de oplossing in Figuur 8. opgave 6.4 Maak zelf een flowchart voor het systeem van opgave 4.2. opgave 6.5 Is de flowchart in Figuur 3 helemaal correct of kun je Dr. Sheldon Cooper, Ph. D verbeteren? Zo ja, hoe dan?

25 uitdaging 3: verkeerslicht In deze uitdaging ga je een werkend driekleurig verkeerslicht bouwen. Benodigdheden: Arduino breadboard 3 LED lampjes (groen, oranje/geel en rood) 3 weerstanden van 220Ω (Ohm) M/M jump wires (draadjes) Maak een verkeerslicht bestaande uit drie LED lampjes (groen, oranje/geel en rood). Maak hiervoor zelf een opstelling. In de afbeelding hierna zie je een voorbeeldopstelling: Maak eerst flowcharts om het gedrag van het verkeerslicht te modelleren. Het gedrag is als volgt: het stoplicht staat 4 seconden op groen, vervolgens 1 seconde op oranje en tot slot 6 seconden op rood. Maak een programma, dat de gebouwde opstelling laat werken volgens het model en de specificaties. Zet voldoende commentaar in je code! Het kan zijn, dat je gaandeweg je flowcharts nog moet aanpassen. Dat mag. Bewaar de eerste versie van je flowchart, zodat je die ook in je verslag kunt zetten. Als alles werkt, laat het je leraar dan even zien!

26 Je resultaat moet aan de volgende eisen voldoen: 1. De opstelling en code werken correct. 2. De modellen voldoen aan de voorgeschreven notaties. 3. De modellen beelden het bedachte systeem uit, niet de implementatie ervan. 4. De modellen bevatten voldoende uitleg. 5. De code bevat voldoende commentaar. In je verslag neem je het volgende op: De initiële flowcharts met uitleg waar nodig. De uiteindelijke flowcharts met uitleg over de veranderingen. Een foto van je opstelling. De code die je gemaakt hebt (met voldoende commentaar). uitdaging voor leerlingen met extra vak In deze uitdaging ga je een cruise control systeem van een auto modelleren. Maak flowcharts om het gedrag van het cruise control systeem te modelleren. Leg uit waarom het model er zo uitziet. Je mag natuurlijk op het internet opzoeken hoe een cruise control systeem werkt. Let wel op, dat je niet een flowchart van het internet pakt. Je moet het systeem zelf modelleren! Je resultaat moet aan de volgende eisen voldoen: 1. De modellen voldoen aan de voorgeschreven notaties. 2. De modellen beelden het bedachte systeem uit, niet de implementatie ervan. 3. De modellen bevatten voldoende uitleg. In je verslag neem je het volgende op: De flowcharts met uitleg waar nodig

27 7. appendix A: Arduino IDE configureren Je moet altijd controleren of het juiste Arduino bord en de juiste USB poort zijn ingesteld in de Arduino omgeving. Wij werken met Arduino Uno borden. De Arduino bord instellingen vind je bij Tools Board, zie hieronder

28 De USB poort instellingen vind je bij Tools Port, zie hieronder. Welke USB poort je nodig hebt kan per computer verschillen en zelfs per keer dat je de Arduino omgeving opstart. Meestal staan er twee COM poorten waaruit je kunt kiezen, 1 daarvan is COM1 en dat is de verkeerde, je moet de andere kiezen

modellering met Arduino project module

modellering met Arduino project module 2016 modellering met Arduino project module F. Vonk versie 1 2-9-2016 inhoudsopgave 1. inleiding... - 2-2. regelsystemen... - 3-3. lichtsterkte meten... - 4-4. een knop uitlezen... - 8-5. aansturen van

Nadere informatie

modellering met Arduino extra module

modellering met Arduino extra module 2017 modellering met Arduino extra module F. Vonk versie 2 27-7-2017 inhoudsopgave 1. inleiding... - 3-2. meet- en regelsystemen... - 5-3. lichtsterkte meten... - 6-4. een knop uitlezen... - 10-5. (optioneel)

Nadere informatie

modellering met Arduino

modellering met Arduino 2015 modellering met Arduino F. Vonk versie 1 30-7-2015 inhoudsopgave 1. inleiding... - 2-2. de Arduino... - 5-3. programmeren voor Arduino... - 8 - commentaar... - 9 - variabelen... - 9 - functies/procedures...

Nadere informatie

MAKERKLAS WORKSHOP ARDUINO. Maandag 7 december 2015

MAKERKLAS WORKSHOP ARDUINO. Maandag 7 december 2015 1 MAKERKLAS WORKSHOP ARDUINO Maandag 7 december 2015 2 AAN DE SLAG! ONDERDELEN Je hebt de beschikking over een Arduino Starter Kit met een heleboel onderdelen. We gaan ze in de ze workshop niet allemaal

Nadere informatie

Workshop Arduino - deel 2

Workshop Arduino - deel 2 Workshop Arduino - deel 2 Inleiding In het vorige deel van de workshop Arduino heb je voor het eerst kennis gemaakt met deze microcontroller. In dit deel, deel 2, ga je meer leren over de software: het

Nadere informatie

RCL Arduino Workshop 1

RCL Arduino Workshop 1 RCL Arduino Workshop 1 Leren door doen april 2015 - slides voor RCL Arduino workshop 1 ON4CDU & ON8VQ Workshop Leren door doen Werken in een groep Beperkte tijd Alleen essentiele vragen stellen Thuis oefenen

Nadere informatie

1. Sluit de LED aan zoals afgebeeld 2. Sluit de USB-kabel aan op de Arduino 3. Klik op de knop uploaden 4. De LED begint te knipperen

1. Sluit de LED aan zoals afgebeeld 2. Sluit de USB-kabel aan op de Arduino 3. Klik op de knop uploaden 4. De LED begint te knipperen Workshop Arduino Inleiding In deze workshop werk je in tweetallen met een Arduino microcontroller. Dit is een kleine computer die je kunt programmeren om te doen wat jij wilt. Om dit te doen gebruik je

Nadere informatie

Werkbladen voor Arduino workshop 1

Werkbladen voor Arduino workshop 1 De aansluitingen van de Arduino Uno Werkbladen voor Arduino workshop 1 Arduino Arduino is een open-source ontwikkelbord, waarmee het eenvoudig is om informatica aan fysieke objecten te koppelen. Je kunt

Nadere informatie

Arduino[4KIDS] Maak je eigen muziekinstrument!

Arduino[4KIDS] Maak je eigen muziekinstrument! Arduino[4KIDS] Maak je eigen muziekinstrument! Wat is een Arduino? Open jullie doos! Hierin vind je: Wat is een Arduino? Er gaat slechts één 'programma' op Dit gaat via de USB ingang, met de USB kabel:

Nadere informatie

Arduino Workshop 1 Zuid-Limburg

Arduino Workshop 1 Zuid-Limburg Arduino Workshop 1 Zuid-Limburg Leren door doen Mei 2016 - slides voor Arduino workshop 1 v2.5 Zuid-Limburg PA3CZS, PA0FOT, ON4CDU, PE1EAM 1 Workshop 1 Workshop 1 concentreert op kennismaking en eenvoudige

Nadere informatie

Android apps met App Inventor 2 antwoorden

Android apps met App Inventor 2 antwoorden 2014 Android apps met App Inventor 2 antwoorden F. Vonk versie 1 11-11-2014 inhoudsopgave Mollen Meppen... - 2 - Schrandere Scholier... - 15 - Meteoor... - 21 - Dit werk is gelicenseerd onder een Creative

Nadere informatie

Programmeren met Arduino-software

Programmeren met Arduino-software Programmeren met Arduino-software De software waarin we programmeren is Arduino IDE. Deze software is te downloaden via www.arduino.cc. De programmeertaal die hier gebruikt wordt, is gebaseerd op C en

Nadere informatie

van PSD naar JavaScript

van PSD naar JavaScript 2015 van PSD naar JavaScript F. Vonk versie 2 19-9-2015 inhoudsopgave 1. inleiding... - 2-2. ontwikkelomgeving... - 3-3. programmeerconcepten... - 4 - statement... - 4 - sequentie... - 4 - variabele en

Nadere informatie

De Arduino-microcontroller in de motorvoertuigentechniek (6)

De Arduino-microcontroller in de motorvoertuigentechniek (6) De Arduino-microcontroller in de motorvoertuigentechniek (6) E. Gernaat (ISBN 978-90-79302-11-6) 1 De Arduino Programmeeromgeving (IDE) 1.1 Inleiding Als we naar de Arduino site gaan kunnen we daar de

Nadere informatie

Tweede workshop Arduino

Tweede workshop Arduino Tweede workshop Arduino In deze workshop zal veel gewerkt worden met voorbeelden die meegeleverd worden met de Arduino IDE. Deze zijn te vinden onder het menu File >Examples. Oefening 1 - Seriële communicatie

Nadere informatie

Arduino Cursus, Deel 2 Programmeren. Simon Pauw, ZB45, Amsterdam

Arduino Cursus, Deel 2 Programmeren. Simon Pauw, ZB45, Amsterdam Arduino Cursus, Deel 2 Programmeren Simon Pauw, ZB45, Amsterdam Programmeren Geen zorgen als je niet alles begrijpt. Doel: Het snappen van bestaande code. Meeste kennis ook toepasbaar buiten de Arduino

Nadere informatie

Workshop Arduino voor beginners. door TkkrLab Enschede

Workshop Arduino voor beginners. door TkkrLab Enschede Workshop Arduino voor beginners door TkkrLab Enschede Tkkrlab TkkrLab (Tukkerlab) bestaat uit een groep mensen die geïnteresseerd zijn in in technologie, digitale techniek en wetenschap, kortom geeks.

Nadere informatie

Boe-Bots - Arduino robots

Boe-Bots - Arduino robots Boe-Bots - Arduino robots Voorbereiding - wat hebben we allemaal nodig? 1) Een laptop met de Arduino IDE 2) Een Boe-Bot 3) Een USB printerkabel 4) De Boe Bot Library én NewPing library. Hier te downloaden.

Nadere informatie

Deel 1: Arduino kennismaking. Wat is een microcontroller, structuur van een programma, syntax,

Deel 1: Arduino kennismaking. Wat is een microcontroller, structuur van een programma, syntax, Deel 1: Arduino kennismaking Wat is een microcontroller, structuur van een programma, syntax, Wat is een microcontroller Wat is een microcontroller? Microcontroller = kleine dedicated computer. - Beperkt

Nadere informatie

Hand-out Introductieworkshop LED programmeren

Hand-out Introductieworkshop LED programmeren Hand-out Introductieworkshop LED programmeren Inleiding Deze hand-out is bedoeld als naslag voor de introductie workshop LED programmeren. In deze handout vind je de uitleg over LEDs, Arduino s en LED

Nadere informatie

MS Word opzet verslag

MS Word opzet verslag 2014 MS Word opzet verslag F. Vonk versie 1 7-5-2014 inhoudsopgave terminologie... - 3 -... - 5 - stap 1: voorblad toevoegen... - 5 - stap 2: paginanummers op de bladzijdes zetten... - 6 - stap 3: lege

Nadere informatie

algoritmiek - antwoorden

algoritmiek - antwoorden 2016 algoritmiek - antwoorden F. Vonk versie 1 28-8-2016 inhoudsopgave eenvoudige algoritmes... - 3 - complexe algoritmes... - 7 - zoeken (vwo)... - 10 - sorteren (vwo)... - 12 - Dit werk is gelicenseerd

Nadere informatie

intro informatica F. Vonk versie

intro informatica F. Vonk versie 2017 intro informatica F. Vonk versie 2 7-8-2017 inhoudsopgave 1. inleiding... - 4-2. ELO... - 4-3. opzet... - 5-4. plagiaat en eigen inbreng... - 5-5. leerlijnen... - 6-6. soorten opdrachten en beoordeling...

Nadere informatie

Workshop Arduino voor beginners deel 2

Workshop Arduino voor beginners deel 2 Workshop Arduino voor beginners deel 2 Voor deze workshop is het van belang dat je deel 1 van de workshop hebt afgerond. In deze workshop zitten meerdere opdrachten die elkaar niet allemaal op hoeven te

Nadere informatie

DE ASTRO PI PROGRAMMEREN VOOR MISSION ZERO

DE ASTRO PI PROGRAMMEREN VOOR MISSION ZERO DE ASTRO PI PROGRAMMEREN DOCENTENHANDLEIDING 1 Deze handleiding is bedoeld om leerlingen te ondersteunen bij de Astro Pi Challenge, waarbij leerlingen een programma voor de Astro Pi-computer in het ISS

Nadere informatie

Naam + Klas: Laptop Nr: Cijfer:

Naam + Klas: Laptop Nr: Cijfer: Naam + Klas: Laptop Nr: Cijfer: Les 1a: 1: Verander de aan - en uit tijden in de sketch en bekijk het resultaat. 2: Je hebt 14 (0 t/m 13) digitale pinnen ter beschikking om je ledje op aan te sluiten.

Nadere informatie

Elektor Uno R4 Installatie & Test

Elektor Uno R4 Installatie & Test Elektor Uno R4 Installatie & Test Vereisten Elektor Uno R4 Kabel USB-A naar micro-b Computer met Windows (XP of later), Linux of OSX (10.7 of later) Arduino IDE 1.6.7 of recenter (niet 1.6.8) We raden

Nadere informatie

BEGINNER JAVA Inhoudsopgave

BEGINNER JAVA Inhoudsopgave Inhoudsopgave 6 Configuratie Hallo wereld! Praten met de gebruiker Munt opgooien Voorwaarden Lussen......6 Configuratie Met deze Sushi kaarten ga je een simpel spel maken met één van de meest populaire

Nadere informatie

Module 3: Scratch programmeren: is het logisch of is het niet logisch?

Module 3: Scratch programmeren: is het logisch of is het niet logisch? Module 3: Scratch programmeren: is het logisch of is het niet logisch? Inhoudsopgave Module 3: Scratch programmeren: is het logisch of is het niet logisch?...1 Wat is een computerprogramma eigenlijk?...2

Nadere informatie

Meet the Arduino FAMILY

Meet the Arduino FAMILY www.arduino.cc Arduino is HARDWARE Meet the Arduino FAMILY Mega Lilypad Ethernet Mini En meer... Gemeenschappelijke kenmerken Printkaartje met een ATMEL microcontroller Digitale en analoge in- en/of uitgangen

Nadere informatie

logische schakelingen & logica antwoorden

logische schakelingen & logica antwoorden 2017 logische schakelingen & logica antwoorden F. Vonk versie 4 2-8-2017 inhoudsopgave waarheidstabellen... - 3 - logische schakelingen... - 4 - meer over logische schakelingen... - 8 - logica... - 10

Nadere informatie

PROS1E1 Handleiding ( ) Kf/Dd/Bd

PROS1E1 Handleiding ( ) Kf/Dd/Bd 1 Inleiding De eerste oefening In deze eerste oefening wordt het voorbeeld 2-1 van bladzijde 11 uit het boek De taal C van PSD tot C-programma (enigszins aangepast) ingevoerd in de computer. Tevens wordt

Nadere informatie

Onderdelen. Programmeer Kabel. button. Reset. Transistor. npn. Breadbord. Infrarood lampje. Fabschoolino. Draadjes

Onderdelen. Programmeer Kabel. button. Reset. Transistor. npn. Breadbord. Infrarood lampje. Fabschoolino. Draadjes Onderdelen Programmeer Kabel Reset button Weerstand 1K ohm Weerstand 10K ohm npn Transistor Infrarood lampje Breadbord Draadjes Fabschoolino Dit is een overzicht van alle componenten uit zakje 2 plus de

Nadere informatie

Arduino. HCC Vlaanderen - Mechelen 7 februari 2011. Luc De Cock

Arduino. HCC Vlaanderen - Mechelen 7 februari 2011. Luc De Cock Arduino HCC Vlaanderen - Mechelen 7 februari 2011 Luc De Cock Inhoud Wat is Arduino? Wat hebben we nodig? Arduino IDE Voorbeelden Extra tools Uitbreidingen Wat is Arduino? Open source electronica platform

Nadere informatie

computerarchitectuur antwoorden

computerarchitectuur antwoorden 2017 computerarchitectuur antwoorden F. Vonk versie 1 2-8-2017 inhoudsopgave hardware... - 3 - CPU... - 3 - bussen... - 4 - bridges... - 4 - RAM... - 4 - hardware architectuur... - 5 - Dit werk is gelicenseerd

Nadere informatie

Accelerometer project 2010 Microcontroller printje op basis van de NXP-LPC2368

Accelerometer project 2010 Microcontroller printje op basis van de NXP-LPC2368 Accelerometer project 2010 Microcontroller printje op basis van de NXP-LPC2368 Handleiding bij het gebruik van een microcontroller in het Accelerometerproject (Project II) Er zijn speciaal voor het Accelerometerproject

Nadere informatie

Workshop IOT. Handleiding V5 Vincent Verheggen 6 november Taal: Nederlands.

Workshop IOT. Handleiding V5 Vincent Verheggen 6 november Taal: Nederlands. Workshop IOT Handleiding V5 Vincent Verheggen 6 november 2017 Taal: Nederlands Meer informatie: Contact: www.vincentverheggen.nl/workshop vincent@vincentverheggen.nl Woord vooraf Voor je ligt de handleiding

Nadere informatie

Je gaat leren programmeren en een spel bouwen met de programmeertaal Python. Websites zoals YouTube en Instagram zijn gebouwd met Python.

Je gaat leren programmeren en een spel bouwen met de programmeertaal Python. Websites zoals YouTube en Instagram zijn gebouwd met Python. 1 Je gaat leren programmeren en een spel bouwen met de programmeertaal Python. Websites zoals YouTube en Instagram zijn gebouwd met Python. Voordat je leert programmeren, moet je jouw pc zo instellen dat

Nadere informatie

Oefening 1 - Seriële communicatie via USB

Oefening 1 - Seriële communicatie via USB Werkbladen voor Arduino workshop 2 In deze workshop zal gewerkt worden met de voorbeelden die meegeleverd worden met de Arduino IDE. Deze zijn te vinden onder het menu Bestand->Voorbeelden. Oefening 1

Nadere informatie

Arduino. Arduino UNO. Sam Decoster. CoderDojo Roeselare. Sam Decoster

Arduino. Arduino UNO. Sam Decoster. CoderDojo Roeselare. Sam Decoster Arduino Arduino UNO Sam Decoster CoderDojo Roeselare Sam Decoster Inleiding Arduino is een open-source ontwikkelbord, waarmee het mogelijk wordt om informatica te koppelen aan fysieke objecten. Het is

Nadere informatie

by Jody Culkin Bronnen die gratis gebruikt, verspreid of aangepast kunnen worden. meestal software of hardware.

by Jody Culkin Bronnen die gratis gebruikt, verspreid of aangepast kunnen worden. meestal software of hardware. Wat is een Arduino??? Vertaling naar NL: Johan Korten by Jody Culkin Arduino is een open source elektronica prototype platform. Wat houdt dat in? Open Source Bronnen die gratis gebruikt, verspreid of aangepast

Nadere informatie

Wat is Arduino? Arduino = microprocessor (Atmel)

Wat is Arduino? Arduino = microprocessor (Atmel) Intro tot Arduino Wat is Arduino? Volgens de website: Arduino is an open-source electronics prototyping platform based on flexible, easy-to-use hardware and software. It's intended for artists, designers,

Nadere informatie

Workshop Arduino Uno. Touw dag 6 juni 2015 Harold Pootjes en Simon Pauw

Workshop Arduino Uno. Touw dag 6 juni 2015 Harold Pootjes en Simon Pauw Workshop Arduino Uno Touw dag 6 juni 2015 Harold Pootjes en Simon Pauw Arduino Uno Pagina 2 Een programmeerbare controller The Arduino Uno is a programmable microcontroller board based on the ATmega 328.

Nadere informatie

Workshop Engino. 1 Aanvang workshop. 2 Bouwen. 1.1 Wat kan ik voor de workshop doen?

Workshop Engino. 1 Aanvang workshop. 2 Bouwen. 1.1 Wat kan ik voor de workshop doen? Workshop Engino 1 Aanvang workshop 1.1 Wat kan ik voor de workshop doen? Zorg dat je voldoende opgeladen batterijen hebt voor de ERP s (6 per ERP). Zorg dat de zes engino dozen aanwezig zijn in het lokaal.

Nadere informatie

Logo quiz Project Inleiding op de Logo!

Logo quiz Project Inleiding op de Logo! Logo quiz Project Inleiding op de Logo! Project ontwikkelt door: Tim van Schuylenburg Ben van Kruisbergen Inhoudsopgave Projectbeschrijving en Planning 2 Blz. De benodigdheden en aansluitschema 4-8 Complete

Nadere informatie

Verkeerslichten. De Verkeerslichten & de PLC in het TIBBLTO / VICTO lokaal. Werkplek 1. Leer & werkboek.

Verkeerslichten. De Verkeerslichten & de PLC in het TIBBLTO / VICTO lokaal. Werkplek 1. Leer & werkboek. Verkeerslichten. Werkplek 1 De Verkeerslichten & de PLC in het TIBBLTO / VICTO lokaal. Leer & werkboek. Bij dit boek hoort een antwoordboekje waarin de antwoorden, op de vragen uit dit boek, geschreven

Nadere informatie

Programmeren met Arduino

Programmeren met Arduino Programmeren met Arduino Lieve Van Bastelaere Programmeren met Arduino. 1. Werken met een breadboard. a. Wat is een breadboard? Een breadboard is een bord waarop je elektronische schakelingen kunt maken

Nadere informatie

USB Webserver installatie en gebruik

USB Webserver installatie en gebruik 2014 USB Webserver installatie en gebruik F. Vonk versie 2 14-8-2014 Inhoudsopgave 1. Inleiding... - 2-2. Installatie... - 3-3. USB Webserver... - 4-4. De MySQL omgeving... - 5-5. Een PHP script runnen...

Nadere informatie

g. Je kan nu door op de play knop te drukken je programma versturen naar de EV3 brick waarna het zal uitgevoerd worden.

g. Je kan nu door op de play knop te drukken je programma versturen naar de EV3 brick waarna het zal uitgevoerd worden. EV3 brick verbinden via bluetooth. 1) Alvorens de LEGO software op te starten kijk je het best of bluetooth op je PC is geactiveerd. Vooral bij laptops schakelt men deze functie vaak uit om batterij te

Nadere informatie

bug fixen F. Vonk versie

bug fixen F. Vonk versie 2017 bug fixen F. Vonk versie 1 24-7-2017 inhoudsopgave 1. inleiding... - 3-2. bug fixen... - 4-3. Sokoban... - 5-4. Breakout... - 7-5. Pac-Man... - 8-6. Asteroids... - 9-7. Snake... - 10-8. Super Mario...

Nadere informatie

Je kunt de mbot ook draadloos programmeren via Bluetooth of met 2.4G Wireless. Bekijk de instructies op mbot draadloos.

Je kunt de mbot ook draadloos programmeren via Bluetooth of met 2.4G Wireless. Bekijk de instructies op mbot draadloos. Wat is een mbot? mbot is een robot die je eerst zelf in elkaar moet zetten en daarna kunt programmeren. De programmeer omgeving die je erbij kan installeren is mblock welke lijkt op Scratch 2.0 : mblock

Nadere informatie

HANDLEIDING PROGRAMMEREN IN PASCAL (LAZARUS)

HANDLEIDING PROGRAMMEREN IN PASCAL (LAZARUS) HANDLEIDING PROGRAMMEREN IN PASCAL (LAZARUS) Vereiste voorkennis Voldoende kennis van het besturingssysteem (in deze handleiding wordt uitgegaan van Windows) De basisprincipes van programmeren Vereiste

Nadere informatie

Het aansluiten van uw Victron op een computer; met VE Bus Quick Configure

Het aansluiten van uw Victron op een computer; met VE Bus Quick Configure Het aansluiten van uw Victron op een computer; met VE Bus Quick Configure Voor het aansluiten van uw Victron op een computer is het volgende belangrijk: - Alleen identieke modellen met VE Bus software

Nadere informatie

TECHNOLOGIE TECHNIEK. Vervangende opdracht voor produceer de sleutelhanger. H.O. Boorsma.

TECHNOLOGIE TECHNIEK. Vervangende opdracht voor produceer de sleutelhanger. H.O. Boorsma. TECHNOLOGIE TECHNIEK Vervangende opdracht voor produceer de sleutelhanger. H.O. Boorsma. A r d u I n o N a n o Woord vooraf.. In het vierde leerjaar GL/GT Technologie werken de leerlingen die techniek

Nadere informatie

Arduino. Workshop. 20 juni 2014 Peter Struwe Stichting De Jonge Onderzoekers Groningen

Arduino. Workshop. 20 juni 2014 Peter Struwe Stichting De Jonge Onderzoekers Groningen Arduino Workshop Beta-docentendag 20 juni 2014 Peter Struwe Stichting De Jonge Onderzoekers Groningen Wat is een microcontroller? Maak een computer met alleen het meest noodzakelijke: processor geheugen

Nadere informatie

Deel 8: stappenmotoren en interrupts

Deel 8: stappenmotoren en interrupts Deel 8: stappenmotoren en interrupts Stappenmotor Kan hoek van as instellen zonder een gesloten feedbacksysteem. Het is een simpel en precies open loop systeem. Werkt met discrete stappen, dus schokkerig

Nadere informatie

WELKOM BIJ UNICODING PROCESSING. Unicoding 1. Handleiding docent LES 1 DEEL A: Vormen, coördinaten en kleuren

WELKOM BIJ UNICODING PROCESSING. Unicoding  1. Handleiding docent LES 1 DEEL A: Vormen, coördinaten en kleuren WELKOM BIJ UNICODING Bedankt voor het kiezen van Unicoding Coding for Kids. Unicoding is een workshop coderen voor basisscholieren van groep 8. In de cursus leren de leerlingen stap voor stap hoe ze een

Nadere informatie

ES1 Project 1: Microcontrollers

ES1 Project 1: Microcontrollers ES1 Project 1: Microcontrollers Les 1: Installeren en verifiëren van de SDE Door Hugo Arends, augustus 2012 Microcontrollers Een microcontroller is een elektronische component dat gebruikt wordt om (complexe)

Nadere informatie

Temperatuur Les 8 Leerkrachtenhandleiding. Basis

Temperatuur Les 8 Leerkrachtenhandleiding. Basis Leerkrachtenhandleiding Inleiding Deze les maken de leerlingen een automatische ventilator. Ze ervaren dat temperatuur niet altijd goed gemeten kan worden met de hand. Lesdoelen De leerlingen zijn in staat

Nadere informatie

ES1 Project 1: Microcontrollers

ES1 Project 1: Microcontrollers ES1 Project 1: Microcontrollers Les 3: Eenvoudige externe hardware & hardware programmeren in C Hardware programmeren in C Inmiddels ben je al aardig op gang gekomen met het programmeren van microcontrollers.

Nadere informatie

Installeren van de Arduino programmeer omgeving

Installeren van de Arduino programmeer omgeving Installeren van de Arduino programmeer omgeving Voor het programmeren van de Arduino maakt het niet uit welk besturingssysteem je gebruikt. Je kunt het downloaden voor Windows, OS X en Linux. Op deze link

Nadere informatie

Single Board computers. Ruud van der Meer (voor HCC d.d. 4 dec2017 Leiderdorp)

Single Board computers. Ruud van der Meer (voor HCC d.d. 4 dec2017 Leiderdorp) Microcontroller projecten Single Board computers Ruud van der Meer (voor HCC d.d. 4 dec2017 Leiderdorp) Micro Controllers Wat ging er aan vooraf: De 8051 Basic controller De Basic-Stamp. De C-Control van

Nadere informatie

Inleiding Tijdens deze les programmeren de leerlingen hun eigen verkeerslicht. Lesdoelen. Materiaal

Inleiding Tijdens deze les programmeren de leerlingen hun eigen verkeerslicht. Lesdoelen. Materiaal Leerkrachtenhandleiding Inleiding Tijdens deze les programmeren de leerlingen hun eigen verkeerslicht. Lesdoelen De leerlingen zijn in staat om: zelf een verkeerslicht te programmeren; te herkennen wat

Nadere informatie

AVR-DOPER MINI ASSEMBLAGE HANDLEIDING + LAYOUT. Geschreven door: Tom Vocke

AVR-DOPER MINI ASSEMBLAGE HANDLEIDING + LAYOUT. Geschreven door: Tom Vocke AVR-DOPER MINI ASSEMBLAGE HANDLEIDING + LAYOUT Geschreven door: Tom Vocke Datum: 28-09-2010 Inleiding: Dit document bevat alle hardware informatie betreffende de AVR-Doper mini. Het eerste deel zal zich

Nadere informatie

Computervaardigheden. Universiteit Antwerpen. Computervaardigheden en Programmatie. Grafieken en Rapporten 1. Inhoud. Wat is scripting?

Computervaardigheden. Universiteit Antwerpen. Computervaardigheden en Programmatie. Grafieken en Rapporten 1. Inhoud. Wat is scripting? Inhoud Computervaardigheden Hoofdstuk 4 Scripting (Let op: dit is enkel voor studenten Biologie.) Dit hoofdstuk bekijkt heel kort de basis van scripting. - Opstellen van functies. - Conditionele code.

Nadere informatie

Mini Handleiding over Elektronica-onderdelen

Mini Handleiding over Elektronica-onderdelen Mini Handleiding over Elektronica-onderdelen Deze handleiding is speciaal geschreven voor kinderen vanaf 10 jaar. Op een eenvoudige manier en in begrijpelijke tekst leer je stapsgewijs wat elk elektronica-onderdeel

Nadere informatie

De Arduino-microcontroller in de motorvoertuigentechniek (8)

De Arduino-microcontroller in de motorvoertuigentechniek (8) De Arduino-microcontroller in de motorvoertuigentechniek (8) E. Gernaat (ISBN 978-90-79302-11-6) 1 Assembly (Assembleertaal) 1.1 Inleiding De Arduino kan ook in assembleertaal (assembly) worden geprogrammeerd.

Nadere informatie

Installatiehandleiding

Installatiehandleiding ICY1801TP Thermostat Programmer Installatiehandleiding en gebruiksaanwijzing I.C.Y. B.V. Introductie De Thermostat Programmer vergemakkelijkt het programmeren van de Timer-Thermostaat, doordat u één keer

Nadere informatie

//enable de interne pull-up weerstand. //variabele sensorval. //naar de seriële monitor

//enable de interne pull-up weerstand. //variabele sensorval. //naar de seriële monitor Keuzestructuren void setup() { Serial.begin(9600); pinmode(0, INPUT_PULLUP); pinmode(2, OUTPUT); pinmode(3, OUTPUT); void loop() { int sensorval = digitalread(0); Serial.println(sensorVal); //start seriële

Nadere informatie

Tool Gebruikershandleiding E46 Mods

Tool Gebruikershandleiding E46 Mods Tool Gebruikershandleiding E46 Mods Versie 1.0 Inhoudsopgave 1 Algemene informatie... 3 2 Aansluiten... 4 2.1 Opstarten en Updaten... 4 2.2 Verbinden... 8 2.2.1 Verbindingsproblemen... 9 3 Basis Informatie...

Nadere informatie

Bouw je eigen minicomputer

Bouw je eigen minicomputer Bouw je eigen minicomputer Soldeer stap-voor-stap de Diavolino, een open-source computerplatform 1 1 2 3 Je hebt nodig: kniptang, soldeerbout, soldeerdraad, batterijhouder, Diavolino kit van Evil Mad Scientist:

Nadere informatie

Level ① Van A naar B Je leert...

Level ① Van A naar B Je leert... Robot Programming Class Level 2 Van A naar B Je leert... Hoe je een auto maakt met DC-motoren en je het kunt programmeren door de tijd, snelheid en afstand te meten! Naam Wat heb je nodig Studuino x Batterijhouder

Nadere informatie

by Jody Culkin Bronnen die gratis gebruikt, verspreid of aangepast kunnen worden. meesta software of hardware.

by Jody Culkin Bronnen die gratis gebruikt, verspreid of aangepast kunnen worden. meesta software of hardware. Wat is een Arduino??? Vertaling naar NL: Johan Korten by Jody Culkin Arduino is een open source elektronica prototype platform. Wat houdt dat in? Open Source Bronnen die gratis gebruikt, verspreid of aangepast

Nadere informatie

Project Kerstverlichting T&T - Fioretti College Veghel

Project Kerstverlichting T&T - Fioretti College Veghel Auteur Roel van der Sloot Laatst gewijzigd 13 December 2016 Licentie CC Naamsvermelding 3.0 Nederland licentie Webadres http://maken.wikiwijs.nl/75388 Dit lesmateriaal is gemaakt met Wikiwijs Maken van

Nadere informatie

talstelsels F. Vonk versie 1 30-7-2013

talstelsels F. Vonk versie 1 30-7-2013 2013 talstelsels F. Vonk versie 1 30-7-2013 inhoudsopgave 1. inleiding... - 2-2. binair... - 4-3. hexadecimaal... - 10-4. octaal (vwo)... - 17-5. bonus opgaves... - 20-6. wat heb je geleerd... - 21 - Dit

Nadere informatie

PWS informatica. F. Vonk versie

PWS informatica. F. Vonk versie 2015 PWS informatica F. Vonk versie 2 3-9-2015 inhoudsopgave 1. inleiding... - 2-2. de ontwerpopdracht... - 3-3. de praktische leeropdracht... - 6-4. de theoretische leeropdracht... - 9 - Dit werk is gelicenseerd

Nadere informatie

Besturing van de Miniatuurwereld RM-U. Gebruik van de Bootloader

Besturing van de Miniatuurwereld RM-U. Gebruik van de Bootloader Besturing van de Miniatuurwereld RM-U Gebruik van de Bootloader Auteur: Leon J.A. van Perlo Versie: 1.0 Datum: 24 december 2012 Release beheer Deze handleiding is van toepassing op Print o RM-U Rev 00

Nadere informatie

Zo gaat jouw kunstwerk er straks uitzien. Of misschien wel heel anders.

Zo gaat jouw kunstwerk er straks uitzien. Of misschien wel heel anders. Spirograaf in Python Een kunstwerk maken Met programmeren kun je alles maken! Ook een kunstwerk! In deze les maken we zelf een kunstwerk met Python. Hiervoor zal je werken met herhalingen en variabelen.

Nadere informatie

Programmeerstructuren met App Inventor

Programmeerstructuren met App Inventor Programmeerstructuren met App Inventor Kevin Krul, Universiteit Utrecht Roncalli, Bergen op Zoom Inhoud: Les 1: Introductie tot App Inventor, when statement en variabelen. Les 2: Introductie if-statement

Nadere informatie

Ravi Ramcharan Arduino PRO Smart leeslampje

Ravi Ramcharan Arduino PRO Smart leeslampje Ravi Ramcharan Arduino PRO61 0861038 Smart leeslampje Contents 1 Kennismaking Arduino... 3 2 Idee: Leeslamp!... 4 3 Basis oefeningen... 6 4 Blokkenschema... 9 5 Hij doet het!... 10 6 Belangrijk: Arduino

Nadere informatie

Snel aan de slag met de Mini Squirrel datalogger

Snel aan de slag met de Mini Squirrel datalogger Snel aan de slag met de Mini Squirrel datalogger Datalogger type: MS47 MS47 Mini Squirrel datalogger is een datalogger voor het controleren van het binnenklimaat op de volgende parameters: Relatieve vochtigheid,

Nadere informatie

DE ASTRO PI KLAARMAKEN VOOR GEBRUIK

DE ASTRO PI KLAARMAKEN VOOR GEBRUIK De Astro Pi is een kleine computer aan boord van het internationale ruimtestation ISS die jij gaat programmeren. Om jouw programma goed te kunnen testen heb je van ESA een Astro Pi-kit gekregen. Deze ga

Nadere informatie

Handleiding ISaGRAF. Wil men het programma bewaren, dan is het verstandig een back-up te maken: C9 Back-up / Restore

Handleiding ISaGRAF. Wil men het programma bewaren, dan is het verstandig een back-up te maken: C9 Back-up / Restore Handleiding ISaGRAF C Handleiding ISaGRAF Deze handleiding beoogt een korte samenvatting te geven van handelingen die verricht moeten worden om met behulp van ISaGRAF een PLC-programma te schrijven en

Nadere informatie

Je gaat leren programmeren in Ruby. En daarna in Ruby een spelletje maken. Websites zoals Twitch en Twitter gemaakt zijn met behulp van Ruby?

Je gaat leren programmeren in Ruby. En daarna in Ruby een spelletje maken. Websites zoals Twitch en Twitter gemaakt zijn met behulp van Ruby? 1 Je gaat leren programmeren in Ruby. En daarna in Ruby een spelletje maken. Websites zoals Twitch en Twitter gemaakt zijn met behulp van Ruby? Voordat je begint met programmeren, moet je Ruby installeren.

Nadere informatie

Een stop-motion film maken

Een stop-motion film maken Naam: Een stop-motion film maken 1. Wat is een stop-motion? Voor je een stop-motion film kan maken, moet je weten wat een stop-motion film is. Dit is immers geen gewone film. Hoe maak je een (gewone) film?

Nadere informatie

A R D U I N O. addendum bij: Leren programmeren, meten en sturen met de Arduino. 3 e druk INHOUD

A R D U I N O. addendum bij: Leren programmeren, meten en sturen met de Arduino. 3 e druk INHOUD addendum bij: Leren programmeren, meten en sturen met de Arduino 3 e druk A R D INHOUD Errata Aanwijzigen en tips (inclusief errata) Basisset en aanvullingsset U I N O 2 Errata derde druk Pag. 71, afbeelding

Nadere informatie

Bouw je eigen minicomputer

Bouw je eigen minicomputer Soldeer stap-voor-stap de Fabschoolino, een open source Arduino. 1 2 3 Je hebt nodig: soldeerbout, soldeersel, batterijhouder, Fabschoolino board (het PCB, ATMEGA 328P (ic) en de losse componenten + beschrijving

Nadere informatie

VANTEK Discovery set. N. B. De OPITEC bouwpakketten zijn gericht op het onderwijs. N991240#1

VANTEK Discovery set. N. B. De OPITEC bouwpakketten zijn gericht op het onderwijs. N991240#1 9 9 1. 2 4 0 VANTEK Discovery set N. B. De OPITEC bouwpakketten zijn gericht op het onderwijs. 1 Inhoudsopgave Binair rekenen Pulse en Countermodule blz. 3 Informatieverwerking Input en outputmodules blz.

Nadere informatie

The Nike+ SportWatch GPS Powered by TomTom

The Nike+ SportWatch GPS Powered by TomTom The Nike+ SportWatch GPS Powered by TomTom Overzicht Welkom bij de Nike+ SportWatch GPS ontworpen in samenwerking met TomTom. Het horloge werkt met GPS en een Nike+ Sensor om afstand, snelheid, verstreken

Nadere informatie

Introductie TI-Innovator Hub

Introductie TI-Innovator Hub Introductie TI-Innovator Hub 1 Inleiding Voor je aan de slag kan met de TI-Innovator Hub moet je eerst de meegeleverde app Hub op je TI-84 Plus CE-T zetten. Dit kan vanaf een computer of via een andere

Nadere informatie

Raspberry Pi Interfacing.

Raspberry Pi Interfacing. Als je met je Raspberry Pi contact wil maken met de buitenwereld heb je het GPIO ( General Purpose Input Output) interface van de RPi nodig. Met het GPIO interface kun je besturingen maken voor heel veel

Nadere informatie

Ar-doe-wie-no. Voorwoord

Ar-doe-wie-no. Voorwoord www.conrad.nl Ar-doe-wie-no Voorwoord Leuk dat je meer wilt weten over Arduino. Wij helpen je graag een eindje op weg. De Conrad Arduino Starterkit dient om je te inspireren en biedt je een introductie

Nadere informatie

GEVORDERDEN 1 WEARABLES

GEVORDERDEN 1 WEARABLES Inhoudsopgave 8 Configuratie Licht, Actie! Je eigen circuit naaien Je eigen code schrijven Kleur en licht Knipperend licht Animeer! Regenboog magie........8 Configuratie Waarschuwing: In dit project wordt

Nadere informatie

programmeren leeromgeving

programmeren leeromgeving DO-ProLO programmeren leeromgeving Een leeromgeving voor iedereen in de leeftijd van 8 tot 80 jaar. Dit is een uitgave van Duurzame Onderneming Kennemerland. Voor meer informatie ga naar: www.duurzame-onderneming-kennemerland.nl

Nadere informatie

Aansluitles Les 1 Overzicht van de Componenten. Basis

Aansluitles Les 1 Overzicht van de Componenten. Basis Overzicht van de Componenten Lichtsensor Lichtsensoren worden gebruikt om licht te meten. Straatverlichting, sommige fietslampjes of tuinlampjes gebruiken een lichtsensor. Zo gaan ze pas aan als het donker

Nadere informatie

Inleiding De leerlingen maken deze les een alarm. Opent iemand stiekem hun broodtrommel? Dan worden ze dankzij het alarm gewaarschuwd!

Inleiding De leerlingen maken deze les een alarm. Opent iemand stiekem hun broodtrommel? Dan worden ze dankzij het alarm gewaarschuwd! Leerkrachthandleiding Inleiding De leerlingen maken deze les een alarm. Opent iemand stiekem hun broodtrommel? Dan worden ze dankzij het alarm gewaarschuwd! Lesdoelen De leerlingen zijn in staat om: uit

Nadere informatie

EM2 Microcontroller Project. LED cube

EM2 Microcontroller Project. LED cube EM2 Microcontroller Project LED cube Door: Dennis Koster Klas: Tc202 Studentnummer: 536496 Docent: Jan Derriks & Ruud Slokker Versie 1.0 (12-1-2009) Inhoudsopgave Inleiding 3 De onderdelen 4 t/ m 6 Het

Nadere informatie

De FOR lus: // terug naar waar je vandaan kwam Serial.begin(115200); // communicatie snelheid met de PC

De FOR lus: // terug naar waar je vandaan kwam Serial.begin(115200); // communicatie snelheid met de PC Verslag les -5-2-4-19 Werkende lussen: for-loop; while-loop; do while- loop. Wanneer iets twee of meerdere keren gedaan moet worden, dan gebruiken we een subroutine, loop, functie. (verschillende woorden

Nadere informatie

AAN DE SLAG MET DE MBOT!

AAN DE SLAG MET DE MBOT! AAN DE SLAG MET DE MBOT! Robotjes zijn plezant, maar niet altijd makkelijk: omdat er zo veel onderdelen en software in zit kan er vanalles mis lopen. En meestal is dat zelfs niet jouw fout ;-) In dit documentje

Nadere informatie

APP INVENTOR BEGINNER

APP INVENTOR BEGINNER Inhoudsopgave 5 6 Over deze serie Configuratie Een vraag maken Antwoorden nakijken Meerdere vragen Afronden.....5.6 Over deze serie Deze kaarten laten je kennis maken met App Inventor. Je krijgt de kans

Nadere informatie