ID.nl logo
Huis

Arduino programmeren met Arduino IDE: De basis

Een Arduino-bordje doet niets als er geen software op draait. In deze workshop zetten we de Arduino IDE-ontwikkelomgeving op, schrijven we wat code en uploaden we die naar het bordje zodat het een led doet knipperen. Dit zijn de basics van het Arduino programmeren.

De makers van Arduino produceren niet alleen de microcontrollerbordjes, maar ook de ontwikkelsoftware om er je eigen code op te draaien: de Arduino IDE. Die bestaat zowel voor Windows, Linux als macOS. Download de nieuwste versie (op het moment van schrijven was dat versie 1.8.8).

Voor Windows heb je de keuze tussen een exe- en een zip-bestand. De eerste is gemakkelijker, omdat dit een installatieprogramma is dat onmiddellijk ook de juiste driver voor de usb-verbinding met je Arduino installeert. De standaardinstellingen van het installatieprogramma zijn oké.

Arduino-schetsen

Een schets of ‘sketch’ is de naam die Arduino geeft aan een programma. Elke Arduino-schets bestaat uit twee functies: setup en loop. In die eerste zet je de code die je Arduino-bordje één keer dient uit te voeren, vlak nadat de microcontroller opgestart of gereset is. Daarna wordt de functie loop continu herhaald. De code die je in deze functie zet, draait dus zolang je Arduino ingeschakeld is, telkens opnieuw.

De Arduino IDE komt standaard al met talloze voorbeeldschetsen. Klik in het menu Bestand op Voorbeelden en kies dan in de categorie 01.Basics voor Blink. De code begint met een groot blok tekst tussen regels die beginnen met /* respectievelijk */. Daarmee geef je aan dat de tekst hiertussen commentaar is: de Arduino IDE negeert dit, zodat je hier zelf uitleg voor anderen kunt typen. De makers van de voorbeeldschets leggen hier uit wat de schets doet en verwijzen naar een webpagina met meer informatie. Het is aan te raden om je eigen Arduino-schetsen ook te beginnen met zo’n blok commentaar.

Daarna komen de twee verplichte Arduino-functies, setup en loop. We zien hier ook regels die beginnen met // en we zien ook in het midden van regels // met een tekst erachter. Dit is een tweede manier om commentaar in een Arduino-schets op te nemen: de Arduino IDE negeert alles vanaf // tot het einde van de regel.

Het is niet de bedoeling dat je in je eigen schetsen bij élke regel code commentaar zet zoals in dit voorbeeld, maar maak er wel een gewoonte van om wat complexere regels code van commentaar en uitleg te voorzien, zodat je ze nog begrijpt als je de code over enkele maanden opnieuw bekijkt.

©PXimport

Setup en loop

Laten we even naar de code van het voorbeeld Blink kijken. In de functie setup is er maar één regel code nodig:

pinMode(LED_BUILTIN, OUTPUT);

Hiermee stellen we de digitale pin met de naam LED_BUILTIN in als uitvoerpin, zodat we er later in de code een 0 of 1 naar kunnen schrijven. De naam LED_BUILTIN verwijst op alle Arduino-bordjes naar de ingebouwde led op het printplaatje, meestal pin 13. Door de voorgedefinieerde naam LED_BUILTIN te gebruiken, hoef je je code niet aan te passen als je ze op een ander bordje wilt draaien waar de ingebouwde led een ander pinnummer heeft.

In de functie loop willen we de ingebouwde led doen knipperen. Eerst schrijven we HIGH naar de juiste digitale pin:

digitalWrite(LED_BUILTIN, HIGH);

Omdat het om een digitale pin gaat, kunnen we twee mogelijke waardes naar de pin schrijven: HIGH (overeenkomend met 1) of LOW (overeenkomend met 0). Waarom heet de waarde hier HIGH en niet 1? Omdat dit de spanning is die op de pin gezet wordt: hoog. Je vindt de spanning van jouw Arduino-bordje in deze tabel met de specificaties in het begin van de kolom Operating/Input Voltage. Als jouw Arduino-bordje op 5 V werkt, komt HIGH hier overeen met een spanning van 5 V. Het gevolg? Er vloeit stroom door de ingebouwde led, die begint te branden.

Daarna wachten we een seconde met:

delay(1000);

De 1000 staat voor 1000 milliseconden. In de volgende regel schrijven we LOW naar de digitale pin. Dat komt overeen met een spanning van 0 V. Daardoor vloeit er geen stroom door de ingebouwde led, die daarop uitdooft. Daarna wachten we weer een seconde. We komen nu aan het einde van de functie loop, die daarna weer herhaald wordt: het knipperen begint weer van voren af aan. En op deze manier blijft de ingebouwde led continu knipperen tot de Arduino geen stroom meer krijgt.

Code uploaden

We hebben nu uitgelegd hoe de code werkt uit het voorbeeld Blink, maar je hebt de led nog niet zien knipperen. De code moet eerst geüpload worden naar de Arduino om hem te laten werken. De instructies om met een Arduino-bordje aan de slag te gaan hangen af van het type bordje. Ga via deze link naar de pagina Getting Started with Arduino and Genuino products en klik met rechts op de link die bij je bordje hoort. We tonen in deze workshop hoe dit verloopt met de Arduino Nano, omdat we dit door zijn kleine afmetingen een handig bordje vinden voor heel wat toepassingen.

©PXimport

Steek de ene kant van de mini-usb-naar-usb-kabel in de mini-usb-connector op je Arduino Nano. Sluit de andere kant aan op een usb-poort van je pc. Klik in het menu Hulpmiddelen van Arduino IDE op Board en selecteer in het lange submenu dat verschijnt Arduino Nano. Controleer of er bij Poort een seriële poort vermeld staat, zoals COM1 op Windows of /dev/ttyUSB0 op Linux. Als alles correct lijkt, klik dan linksboven op het knopje met het pijltje naar rechts.

Arduino IDE compileert nu je schets naar machinecode voor de microcontroller en uploadt je code naar het bordje. De voortgang krijg je in het zwarte tekstveld onderaan te zien. Als alles goed gaat (en je dus geen foutmeldingen in rode letters te zien krijgt in het tekstveld onderaan), begint de ingebouwde led van je Arduino te knipperen. Dat werkt ook als je naderhand je Arduino rechtstreeks van een voedingsadapter van stroom voorziet: de code blijft opgeslagen tot je die met een nieuwe schets overschrijft.

▼ Volgende artikel
Nederlandse ACM onderzoekt veiligheid van jeugdige Roblox-spelers
Huis

Nederlandse ACM onderzoekt veiligheid van jeugdige Roblox-spelers

Toezichthouder Autoriteit Consument & Markt (ACM) start een onderzoek naar het gameplatform Roblox om te controleren of minderjarige spelers genoeg worden beschermd.

ACM zegt (via NU.nl) meldingen te hebben ontvangen over verschillende problemen binnen Roblox. De toezichthouder gaat dan ook onderzoeken of het platform de veiligheid en privacy van kinderen goed genoeg waarborgt. Het onderzoek zal naar schatting ongeveer een jaar duren.

Roblox en minderjarige spelers

Roblox is een gameplatform op pc en diverse spelcomputers waarin mensen allerlei spellen gemaakt door andere spelers kunnen ervaren. De game is vooral in trek bij kinderen, maar Roblox ligt de laatste jaren ook onder vuur. Er zijn bijvoorbeeld gewelddadige spellen te vinden, en minderjarige spelers zouden benaderd kunnen worden door criminelen of kwaadwillende mensen. Er zouden zelfs complete netwerken met kindermisbruikers actief zijn op het platform.

Afgelopen oktober gaf het Nederlandse kabinet al aan de veiligheidsrisico's van Roblox te willen onderzoeken. Demissionair staatssecretaris Eddie van Marum van Binnenlandse Zaken sprak van "pesten, schokkende beelden, ongewenste contacten en gezondheidsproblemen door te veel schermtijd".

Maatregelen van Roblox zelf

Het bedrijf achter Roblox is ook op de hoogte van de kritiek en lijkt de situatie te willen verbeteren. Afgelopen december werd er dan ook een systeem uitgerold waarbij de leeftijd van Nederlandse spelers in Roblox wordt ingeschat via de camera van de smartphone. Daarnaast mogen spelers alleen chatten met andere spelers rond dezelfde leeftijd.

Aan NU.nl gaf een woordvoerder van Roblox aan dat het al maanden in gesprek is met ACM om meer duidelijkheid te geven over de maatregelen die het treft om kinderen te beschermen.

Nieuw op ID: het complete plaatje

Misschien valt het je op dat er vanaf nu ook berichten over games, films en series op onze site verschijnen. Dat is een bewuste stap. Wij geloven dat technologie niet stopt bij hardware; het gaat uiteindelijk om wat je ermee beleeft. Daarom combineren we onze expertise in tech nu met het laatste nieuws over entertainment. Dat doen we met de gezichten die mensen kennen van Power Unlimited, dé experts op het gebied van gaming en streaming. Zo helpen we je niet alleen aan de beste tv, smartphone of laptop, maar vertellen we je ook direct wat je erop moet kijken of spelen. Je vindt hier dus voortaan de ideale mix van hardware én content.

▼ Volgende artikel
Pak je voordeel met alle Amazon Echo- en Kindle-producten
© ID.nl
Huis

Pak je voordeel met alle Amazon Echo- en Kindle-producten

Niets zo fijn als een complete webshop waar je alles vindt met betrekking tot het inrichten van een slim huis. Dat is wat tink te bieden heeft: alles wat je nodig hebt voor smart living vind je in de ruime catalogus van deze webshop. Alle merken hebben ze in huis, en onlangs zijn ook de nieuwste Amazon Echo-producten aan het assortiment toegevoegd.

Partnerbijdrage - in samenwerking met tink

Compleet aanbod

Op de webshop van tink kun je terecht voor een veelzijdigheid aan smarthomeproducten. Onlangs lanceerde Amazon een hele reeks nieuwe Echo-producten; de apparaten die je thuis installeert en waarmee je je slimme huis kunt aansturen. De nieuwe Echo-producten helpen je veel in huis te automatiseren met smarthome-apparatuur.

En ook nieuw en handig: De spraakassistent van Amazon - Alexa - is nu volledig Nederlandstalig. Of je nu wilt weten wat voor weer het wordt of de verlichting in de keuken wilt aanzetten: je vraagt het gewoon in het Nederlands. Geef commando’s als "Alexa, draai meezingers" om direct te genieten van muziek via Spotify, Apple Music of Amazon Music. Ook voor je favoriete radiozenders, het laatste nieuws of de uitslagen van je voetbalclub kun je bij haar terecht. Ter vermaak kan ze zelfs een liedje zingen of een verhaaltje voorlezen. Bovendien leert Alexa continu bij, waardoor deze steeds meer nieuwe vaardigheden en functies krijgt.

Compatibel met tal van apparaten

De Amazon Echo-producten en de Alexa spraakassistent zijn compatibel met een groot aantal smarthomeproducten. Zo kun je met een enkele Nederlandstalige opdracht als ‘lichten aan in de woonkamer’ je Philips Hue- of IKEA Trådfri-lampen inschakelen of laat je je huishoudelijke apparaten van Samsung bedienen met de SmartThings-koppeling. Veel Amazon Echo-apparaten zijn bovendien voorzien van een Zigbee-hub, waardoor je vrijwel alle Zigbee-apparaten, zoals de bekende Hue-lampen, direct kunt aansturen. Alle nieuwe Echo-producten vind je in de shop van link. We nemen de producten kort met je door.

Amazon Echo Show 8 - €199,99

Deze Amazon Echo Show 8 is voorzien van een een 8,68‑inch aanraakscherm met een resolutie van 800 × 1340 pixels en een in‑cell capacitieve touch‑technologie. Dit is dezelfde aanraaktechnologie die op smartphones wordt gebruikt. Het apparaat draait op Amazons eigen AZ3 Pro‑chip, een 64‑bit SoC met twee A78‑kernen en vier A55‑kernen en Wi‑Fi 6e‑ondersteuning.

De 13‑MP‑camera met auto‑framing en 3,3× zoom staat boven het scherm, samen met vier microfoons en een schuifje om de camera fysiek af te schermen. Het ingebouwde Zigbee/Matter/Thread‑huisautomatisatiecentrum en Bluetooth 5.3 bieden brede connectiviteit voor een scala aan apparaten . De audio komt van een 2,8‑inch woofer en twee full‑range drivers met een gezamenlijk vermogen van 40 watt en ondersteuning voor ruimtelijk geluid.

Amazon Echo Dot - € 64,99

De Echo Dot is een compacte bolvormige slimme luidspreker met een diameter van slechts 10 centimeter en een gewicht van 340 gram. Binnenin zit een MediaTek MT8519‑processor met vier ARM Cortex‑A55‑kernen op 1,8 GHz en 512 MB LPDDR4‑geheugen.

De luidspreker heeft een volledig bereik met een frequentierespons tussen 100 Hz en 40 kHz. De Dot ondersteunt Wi‑Fi tot 802.11ac en Bluetooth 5. Het werkt als smart‑home‑hub voor Matter en Thread en heeft een microfoon met fysieke dempknop.

Amazon Echo Show 11 - € 239,99

De Echo Show 11 heeft een groter 10,95‑inch full-hd-scherm met een resolutie van 1200 × 1920 pixels en een in‑cell capacitieve aanraaklaag. De 13‑megapixelcamera beschikt over auto‑framing en 3,3× digitale zoom. Onder de motorkap vinden we een AZ3 Pro‑processor met twee A78‑kernen (1,8 GHz) en vier A55‑kernen (2 GHz). Draadloze connectiviteit vinden in Wi‑Fi 6e en Bluetooth 5.3 en er is ondersteuning voor Zigbee, Matter en Thread.

Het audiosysteem bevat een 2,8‑inch woofer en twee full‑range drivers met een gezamenlijk vermogen van 40 watt en frequentiebereik van 90 Hz tot 40 kHz. Een fysieke microfoonschakelaar en multi‑room‑functie maken de Echo Show 11 compleet. Je kunt deze Echo Show ook in een 2-pack-variant aanschaffen, zodat je er bijvoorbeeld eentje beneden hebt, en een in de slaapkamer.

Handige combi-sets

Op tink.nl vind je verschillende combinatie-sets met allerlei handige producten bij elkaar in één pakket. Bijvoorbeeld een Echo Show 11 in combinatie met een slimme deurbel van Amazon, of in combinatie met een slimme thermostaat van tado. Die combinatie-sets zijn in vrijwel alle gevallen zelfs goedkoper dan wanneer je de producten los zou kopen. Bovendien betaal je bij tink nooit verzendkosten, ongeacht de prijs van het product, dat is pas mooi meegenomen!

Amazon Echo Show 5 - € 109,99

De Amazon Echo Show 5 heeft een 5,5‑inch scherm met 960 × 480 pixels met een compacte driehoekige behuizing van 147 × 91 × 82 millimeter en weegt 456 gram. De MediaTek MT8169B‑octacoreprocessor en 1 GB RAM zorgen voor snelle bediening en afhankdelijk van je opdrachten .Er is een 2‑MP‑camera met fysieke sluiter en microfoonknop voor privacy. Connectiviteit omvat Wi‑Fi 5 (802.11ac) en Bluetooth 5.0.

De Echo Show 5 heeft geen ingebouwde smart‑home‑hub. Het geluid komt van een enkele 1,75‑inch full‑range driver en de speaker wordt gevoed door een 21‑watt netadapter. Multi‑room‑ondersteuning en een netsnoer worden meegeleverd. Je kunt de Amazon Echo Show 5 ook aanschaffen in een 2-pack variant.

Amazon Echo Dot Max - € 109,99

Deze Echo Dot Max is een krachtigere versie van de Dot en heeft een wat groter formaat. Binnenin draait de AZ3‑chip met 1 GB DDR4‑geheugen en 1 GB pNAND‑opslag. Hij fungeert als bridge voor Zigbee, Matter en Thread en ondersteunt Wi‑Fi 6e en Bluetooth 5.3.

De audioconfiguratie bestaat uit een 2,5‑inch woofer en 0,8‑inch tweeter met een frequentierespons van 53 Hz tot 16 kHz. Vier microfoons met fysieke mute‑knop zorgen voor stemopdrachten. Door de fysieke microfoonknop waarborg je je privacy.

Amazon Echo Studio - € 239,99

De Echo Studio is een cilindrische stevige luidspreker met een gewicht van 1,63 kilogram. Hij gebruikt vier A55‑cores tot 2,0 GHz en 2 GB LPDDR5‑geheugen en ondersteunt Wi‑Fi 6e en Bluetooth 5.3.

Qua audio zit je helemaal goed, want het bestaat uit meerdere luidsprekerdrivers (woofers en full‑range) met frequentiebereik van 40 Hz tot 20 kHz en Dolby Atmos‑ondersteuning. De Vega OS‑software biedt ondersteuning voor Alexa, Matter, Thread en Zigbee. Met de bijbehorende Echo-app kun je de bass‑ en treble‑instellingen aanpassen.

Lekker lezen!

Heb je niets met een slim huis en ben je meer van het lezen? Ook daarvoor kun je terecht bij tink, want verschillende Amazon Kindle e-readers zitten eveneens in het assortiment. We nemen de drie belangrijkste modellen even kort met je door.

Amazon Kindle Colorsoft Signature Edition - € 299,99

De Kindle Colorsoft Signature Edition beschikt over een 7‑inch kleurenscherm met 150 ppi voor kleurweergave en 300 ppi voor zwart‑wit, ondergebracht in een dunne behuizing. De Signature Edition is wat luxer uitgerust, onder meer door het automatisch aanpassen van de helderheid van de verlichting aan de omgeving, waardoor je ogen minder snel vermoeid raken. Lezen is nu nog natuurlijker, of het nu dag of nacht is.

De e-reader weegt slechts 218 gram en licht daardoor lekker in de hand. De e-reader ondersteunt Wi‑Fi 5 en Bluetooth 5.0 en laadt via usb-c of Qi‑draadloos. Een adapter wordt niet meegeleverd. De interne opslag van 32 GB wordt ondersteund door een 2310 mAh‑accu die wekenlang lezen mogelijk maakt; de reader is daarnaast IPX8‑waterdicht.

tink Plus

Ook handig: tink biedt een extra service aan: tink Plus. Met tink Plus krijg je extra voordeel op je aankopen, word je als eerste op de hoogte gehouden van nieuwe producten en krijg je toegang tot leuke deals. En nog leuker: tink Plus is helemaal gratis! Geen abonnementskosten!

Amazon Kindle Paperwhite Signature Edition - € 199,99

De Kindle Paperwhite Signature Edition heeft een 6,8‑inch E‑Ink‑scherm met 300 ppi en instelbare frontverlichting in een compacte behuizing van 176,72 × 127,56 × 7,83 millimeter en weegt maar 214 gram. De reader beschikt over 32 GB interne opslag. De helderheid van het scherm wordt ook bij deze Kindle automatisch aangepast aan de omgeving. Qua connectiviteit ondersteunt deze Kindle Wi‑Fi a/b/g/n/ac en Bluetooth 2.1/3.0/4.1.

Een 1900 mAh‑Li‑ion‑polymeeraccu biedt een batterijduur tot maar liefst 12 weken. De reader is IPX8‑waterdicht, ondersteunt Audible‑luisterboeken via Bluetooth en wordt geleverd met een usb-c-kabel en natuurlijk een handleiding. De adapter wordt niet meegeleverd, maar iedere usb-c-adapter is in principe geschikt om deze Kindle op te laden.

Amazon Kindle Colorsoft - € 269,99

De Kindle Colorsoft is een lichtere variant van de Signature Edition. Het 7,05‑inch scherm heeft een resolutie van 150 ppi voor kleurweergave en 300 ppi voor zwart‑wit. De reader meet 176,73 × 127,56 × 7,83 millimeter en weegt 215 gram. Binnenin zit een MTK MT8113S‑dual‑coreprocessor op 2 GHz met 1 GB RAM en 2310 mAh‑accu; er is 16 GB interne opslag.

Connectiviteit voor deze e-reader bestaat uit Wi‑Fi 5 en Bluetooth 5.0, opladen doe je via een usb-c-kabel. De reader is IPX8‑waterdicht en compatibel met een optionele EMR‑stylus. In de verpakking vind je naast de e-reader een usb-c-oplaadkabel (zonder adapter) en een snelstartgids