Workshop Arduino - deel 2

Vergelijkbare documenten
MAKERKLAS WORKSHOP ARDUINO. Maandag 7 december 2015

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 voor beginners. door TkkrLab Enschede

Arduino[4KIDS] Maak je eigen muziekinstrument!

RCL Arduino Workshop 1

Werkbladen voor Arduino workshop 1

Naam + Klas: Laptop Nr: Cijfer:

Arduino Workshop 1 Zuid-Limburg

Tweede workshop Arduino

Logo quiz Project Inleiding op de Logo!

Programmeren met Arduino-software

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

Project 1 Een discolamp

Hand-out Introductieworkshop LED programmeren

AAN DE SLAG MET DE MBOT!

Oefening 1 - Seriële communicatie via USB

Antwoorden Systeembord Fysische informatica voor de onderbouw havo/vwo

Boe-Bots - Arduino robots

Een verkeerslicht met Arduino

Programmeren met Arduino

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

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

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

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

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

Auto Alarm FM5000 FM500 FM600 FM700 LCD MINI

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

Programmeer-handleiding Easyboard MB

Gebruiksaanwijzing RGB(W) controller type LLD-10Z

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

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

Workshop Arduino voor beginners deel 2

EM2 Microcontroller Project. LED cube

Montagehandleiding Hager rookmelders - opbouwmontage op voet -

Serviceblad SolarEdge

Booreenheid. De Booreenheid & de PLC in het TIBBLTO / VICTO lokaal. Werkplek 2. Leer & werkboek.

INSTALLATIE HANDLEIDING DANALOCK V3 BTHK (Apple HomeKit).

Ar-doe-wie-no. Voorwoord

Arduino Zuid-Limburg Workshop 2

NETBOX-LIVE + CQ-3 Alarmzender INSTALLATIEHANDLEIDING

De Arduino-microcontroller in de motorvoertuigentechniek (6)

Thuispracticum schakelingen Natuur/scheikunde 1 vmbo 3 H.1. Schakelingen Banas deel 2 KGT

Heeft u ondersteuning nodig bij het verhelpen van een storing? Houd volgende gegevens bij de hand:

Duurzaam rijden, samen met ECOdrive

Arduino. C.F.J. Pols.

DDS chips. DDS = Direct Digital (frequency) Synthesis. Output = sinusvormig signaal. Maximum frequentie = ½ klokfrequentie

Installatie in 5 stappen Huawei HG655D Modem

Fysische Informatica met FLEC

Installatie- en gebruikershandleiding Arseus barcode scanner

HANDLEIDING - LEVEL INDICATOR M A N U A L

Project BedroomX.isc. Joe verhuist naar een nieuw huis. Hij mag zijn slaapkamer zelf inrichten. s Nachts droomt hij er al van. Hoe zal hij dat doen?

c o n t r o l Computerbesturing voor basisscholen Laurence Rogers en Doug Dickinson, School of Education, University of Leicester

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

Installatie- en gebruikershandleiding Arseus barcode scanner

Opladen Opmerkingen Vragen?... 11

modellering met Arduino mini module

OEFENINGEN. in de cursus 'PLC'

KAEDU : Outputs en inputs

ewon Reset en Recovery

Ravi Ramcharan Arduino PRO Smart leeslampje

Draadloze zoneregelaar HCE80. Handleiding bij het inleren

Gebruikershandleiding

Bij manueel trein elke keer vanaf spoor 1 te starten, dus altijd twee ritten. StartLED gaat aan en pas uit als trein op 1 arriveert.

Montagehandleiding Hager rook- en hittemelders - montage op centraaldoos -

technologisch LEGO Control Lab en Coach Junior LEGO Control Lab en Coach Junior Bijlage bij DOCENTENHANDLEIDING vmbo-t/havo/vwo leerjaar 2

INSTALLATIE HANDLEIDING DANALOCK V3 BTHK (Apple HomeKit).

Inleiding Tijdens deze les maken de leerlingen een programma om een bericht in morsecode te versturen en ontcijferen ze gecodeerde berichten.

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

Neem een signaal-kabel en sluit hiermee het input-onderdeel aan, aan de kant van het Easyboard waar input bij staat.

Gebruikershandleiding. VieConnector Sociale alarmering

Handleiding trap-verlichting Ledstrip-Specialist.nl

De mbot. Je wilt zeker meteen al aan de slag. Maar voordat we beginnen moet je 3 dingen weten.

Inleiding / Aanleiding Nieuwe firmware op je Weatronic zendermodule Instellen van je DV module... 3

Scratch. Gemaakt door: Déjan van Noordt en Leroy van den Driesche Leerlingen HAVO 5 SG Spieringshoek Als onderdeel voor het vak Informatica

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

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

modellering met Arduino project module

Arduino Workshop. door Geert Roumen (CC) BY-SA. lemio.nl/arduino/

Seven segments of Pi

Di-Control HANDLEIDING Di-Control versie: 2.6

dit stappenplan samengesteld waarin wordt uitgelegd hoe je via je telefoon verbinding maakt met de Nikon Keymission 360.

Een elektrische waterkoker kan in korte tijd water aan de kook brengen.

Over Betuwe College. Lego Mindstorm project

th_elt Hardware & Software

Handleiding apparatuur podiumzaal

TV Afstandsbediening. De volgende functies zijn van toepasinge op uw afstandsbediening.

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

Installatiehandleiding

De hardware 11. De ontwikkelomgeving 13. Programmeren van de ATtiny 17

Flashing Eye Robot! Knipperlicht Circuit! Clubjesmiddag 18 Mar Adam Dorrell

PowerView Motorisation

Arduino introductie. Wat is een Arduino? De IDE en Jij. Kennismaking met de Arduino

Project Kerstverlichting T&T - Fioretti College Veghel

Temperatuur Les 8 Leerkrachtenhandleiding. Basis

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

Inventarisatie Controleer, voor je aan de gang gaat, of je alle onderdelen ook daadwerkelijk hebt.

Test doc.

handleiding beeldschermloep Basic Simpleview. (zie voor foto s de originele Engelstalige handleiding)

Inleiding Deze les maken de leerlingen een vuurtoren. Ze gebruiken de CloudProfessor om een knipperend licht te maken. Lesdoelen

Transcriptie:

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 schrijven van het programma dat door de Arduino uitgevoerd wordt. 1. Één LED In de volgende opdracht gaan we drie LEDs op verschillende manieren laten knipperen. Daarvoor starten we met het programma Blink, dat je in deel 1 ook al een keer gezien hebt. Voordat we de volledige schakeling met 3 LEDs maken, maken we eerst de schakeling met één LED. Zie de tekening hiernaast, er wordt een weerstandje van 330 ohm (oranje-oranje-bruin) gebruikt. Start de Arduino-software op op je laptop. Klik in de menubalk op bestand, voorbeelden, 01.Basics en dan Blink. De tekst van hierboven komt nu ook op je eigen scherm te staan. Sluit de USBkabel aan en upload het programma naar de microcontroller. We gaan nu kijken wat elke regel in het programmaatje betekent. Belangrijk om te weten is dat alle tekst die tussen /* en */ staat of die op een regel na // staat niet bij het programmaatje hoort. Dit is alleen een toelichting, maar de Arduino doet er niks mee. Eerst de twee grote blokken in het programmaatje: void setup() { Alles wat tussen de { en staat achter void setup() wordt alléén uitgevoerd bij de eerste keer. Alles wat tussen de { en staat achter void loop() wordt telkens herhaald: wanneer het programmaatje onderaan is begint hij weer bij het begin van de loop.

En nu de afzonderlijke opdrachten die je ziet: Zo vertel je de Arduino dat poortje nummer 13 een uitgang (output) is. Stuur een hoog ( high ) signaal naar poortje 13. Er komt dus een spanning (van 5 volt) op poortje 13 te staan. De LED gaat hierdoor aan. Wacht 1000 milliseconde (= 1 seconde) voordat je verder gaat met de volgende opdracht. Stuur een laag ( low ) signaal naar poortje 13. Er komt dus géén spanning (dus 0 volt) op poortje 13 te staan. De LED gaat hierdoor uit. Wacht 1000 milliseconde (= 1 seconde) voordat je verder gaat met de volgende opdracht. Doordat het deel in de loop steeds herhaald wordt, blijft het LEDje aan en uit gaan. Blijf proberen tot het opdrachtje gelukt is. Loop je vast? Vraag gerust een doce nt of klasgenoot om hulp! a. Sluit het blauwe kabeltje (zie de tekening op de vorige pagina) aan op poort 12 in plaats van poort 13. Pas het programmaatje zó aan dat ook nu de LED knippert. (Vergeet niet om het programmaatje te uploaden.) b. Pas het programmaatje zó aan dat het LEDje eerst twee seconden aan staat en dan een halve seconde uit (en daarna opnieuw). c. Pas het programmaatje zó aan dat het LEDje eerst één seconde aan staat, dan één seconde uit, daarna drie seconden aan en dan drie seconden uit (en daarna alles opnieuw). Hint: hiervoor moet je zelf 4 nieuwe regels in je programmaatje typen. 2. Drie LEDs In deze opdracht ga je het programmaatje van opdracht 1 op verschillende manieren aanpassen om drie LEDs te laten knipperen. Maak daarvoor eerst de schakeling zoals op de tekening hiernaast. Er worden weerstandjes van 330 ohm (oranje-oranje-bruin) gebruikt. De kleur van de LEDjes is niet van belang. Open opnieuw het programma Blink in de menubalk via bestand, voorbeelden, 01.Basics en dan Blink. We willen nu alle drie de LEDs tegelijkertijd aan en uit laten gaan. Daarvoor moet het programmaatje gewijzigd worden. Hieronder staat het programmaatje, met aangegeven wáár je een regel moet toevoegen. De eerste twee regels die je toe moet voegen heb je nodig om de Arduino te vertellen dat poort 12 en 11 óók uitgangen zijn. De middelste twee regels zijn nodig om de twee nieuwe lampjes ook aan te zetten, de onderste twee regels gebruik je om de twee nieuwe lampjes ook uit te zetten.

void setup() { Schrijf zelf de ontbrekende regels zodat alle drie de LEDs samen (tegelijkertijd) gaan knipperen. Voeg ze toe in het programmaatje en upload het naar de Arduino. Als dit gelukt is weet je hoe je een LED aan en uit kunt zetten. Nu kun je de volgende opdrachtjes proberen: a. Maak een programmaatje dat ervoor zorgt dat de LEDs om de beurt aan staan (dus éérst alleen de eerste LED, dan na één seconde alleen de tweede LED, dan na één seconde alleen de derde LED en dat steeds opnieuw). b. Maak een programmaatje dat het volgende doet: - eerst brandt alleen de eerste LED - na een seconde branden de eerste en tweede LED samen - na de volgende seconde branden alle drie de LEDs samen - na de volgende seconde staan alle LEDs uit - na een seconde begint alles weer opnieuw c. Het eerste en derde LEDje knipperen samen, steeds één seconde aan en één seconde uit. Het middelste LEDje knippert sneller: steeds een halve seconde aan en een halve seconde uit. 3. Verkeerslicht We gaan, in stapjes, een verkeerslicht maken. Daarvoor combineren we de drukknop uit het vorige deel met de drie LEDs uit opdracht 2. Het is nu natuurlijk het mooiste wanneer je een rode, gele en groene LED gebruikt. De schakeling die je nodig hebt ziet er uit als in de tekening op de volgende pagina. Let op: de weerstandjes zijn verschillend. Het weerstandje dat je nodig hebt voor de schakelaar is 10 kilo-ohm (bruin-zwart-oranje). Het rode licht zit op poort 13, het gele licht op poort 12 en het groene licht op poort 11.

Je gaat nu een nieuw programmaatje schrijven, ga naar bestand nieuw om een leeg scherm te openen. Typ onderstaand programma in, en let op: het komt heel precies! int buttonstate = 0; void setup() { pinmode(2, INPUT); buttonstate = digitalread(2); if (buttonstate == HIGH) { else { Van de regels die je nog niet kent volgt hier de uitleg: pinmode(2, INPUT); buttonstate = digitalread(2); if (buttonstate == HIGH) { else { Zo vertel je de Arduino dat poortje nummer 2 een ingang (input) is, hier komt een signaal binnen. Het digitale signaal dat van de drukknop af komt noemen we buttonstate. Als je het knopje indrukt is buttonstate gelijk aan HIGH, als je het knopje loslaat is buttonstate gelijk aan LOW. Als ( if ) buttonstate HIGH is (dus het knopje is ingedrukt) dan moet poortje 13 HIGH worden (rode lampje brandt). En wanneer dat niet zo is ( else ) dan moet poortje 13 LOW worden (rode lampje brandt niet).

Upload het programma naar de Arduino en test het. Als het goed is brandt het rode lampje als je op het knopje drukt. Als je de volgende opdrachten goed uitvoert kom je uiteindelijk bij een verkeerslicht uit. Upload en test je programmaatje na elke opdracht! a. Verander het programma zo dat in plaats van het rode lampje het groene lampje gaat branden als je het knopje indrukt. b. Zorg ervoor dat, als je even kort op de knop drukt en dan weer los laat, het groene lampje 5 seconden blijft branden. Hiervoor moet je een regel toevoegen: delay(5000); Het is belangrijk dat je deze regel op de juiste plek in het programmaatje zet, bedenk zelf waar dat is. c. Zorg ervoor dat, als het groene lampje 5 seconden gebrand heeft - het groene lampje uit gaat. - het gele lampje aan gaat. - het gele lampje 2 seconden blijft branden. Let op: vergeet niet om de Arduino te vertellen dat poort 12 nu ook een uitgang is! d. Zorg ervoor dat, als het gele lampje 2 seconden gebrand heeft - het gele lampje uit gaat. - het rode lampje aan gaat. Let op: vergeet niet om de Arduino te vertellen dat poort 13 nu ook een uitgang is! e. Het verkeerslicht is nog niet helemaal klaar, je moet er nog voor zorgen dat het rode licht blijft branden als er niks gebeurt. Daarvoor moet je twee dingen doen: - de opdracht die na else { komt aanpassen (zodat het rode licht brandt als er niks gebeurt). - zorgen dat, als je op het knopje drukt, eerst het rode licht uitgezet wordt voordat de groene aan gaat. Hiervoor moet je een regel toevoegen na if (buttonstate == HIGH) {. f. Tot slot gaat het verkeerslicht natuurlijk niet meteen op groen, maar pas na drie seconden nadat je op het knopje gedrukt hebt. Verwerk dat in het programma.