De Arduino IDE komt met een groot aantal voorbeeldprogramma’s meegeleverd. Deze programma’s kunnen we gebruiken om te leren hoe we met een Arduino werken. We kunnen ze bijvoorbeeld gebruiken als startpunt voor ons eigen programma of om te bekijken hoe een ander iets voor elkaar heeft gekregen. In dit lab maken we gebruik van het blink voorbeeld. We zullen dit voorbeeld gebruiken om te leren en testen hoe we programma’s op onze Arduino zetten.

Wat heb je nodig?

Voor dit lab hebben we een laptop nodig waarop de Arduino IDE geïnstalleerd staat. Heb je de Arduino IDE nog niet geïnstalleerd? Dan kun je het volgende lab volgen: ‘Arduino installeren’.

Ook zullen we gebruikmaken van een Arduino. Wij maken gebruik van een Arduino Nano, maar het lab is te volgen met elk type Arduino waar een USB-kabel op aangesloten kan worden. We hebben ook het type USB-kabel nodig wat bij ons type Arduino past.

Een voorbeeld openen

Laten we beginnen door het gewenste voorbeeldprogramma te openen.


Om het voorbeeldmenu te openen klikken we op ‘Bestand’, en dan op ‘Voorbeelden’. Als de computer op Engels staat ingesteld drukken we op ‘File’ en dan op ‘Examples’.

Hier zien we een lijst met alle voorbeelden die geïnstalleerd zijn. Onder ‘Ingebouwde Voorbeelden’ staan de voorbeelden die je waarschijnlijk het meest zult gebruiken. Het grootste deel van deze voorbeelden zal op elk Arduino apparaat werken.

Onder ‘Voorbeelden voor ieder board’ zien we heel wat andere voorbeelden staan. De voorbeelden die we hier te zien krijgen hangt af van het type Arduino dat we hebben geselecteerd (hierover later meer). We kunnen verwachten dat deze voorbeelden werken op het type Arduino dat we geselecteerd hebben, de kans is er echter wel dat dit voorbeeld niet werkt op andere apparaten.

Wanneer we een library hebben geïnstalleerd zoals in het lab ‘Een Arduino library downloaden’ beschreven staat, zullen de voorbeelden hiervan helemaal onderaan staan. Als de lijst te lang is, zien we helemaal onderaan de lijst een pijl. Hier kunnen we met de muis overheen om te scrollen.


In dit lab kiezen we voor het ‘Blink’ voorbeeld. Deze openen we door eerst op ’01.Basics’ te klikken en dan op ‘Blink’.


Er zal een nieuwe editor openen met het ‘Blink’ voorbeeld.

Uploaden

Wanneer we het voorbeeld geopend hebben, stellen we in welk type Arduino we gebruiken.


Klik hiervoor op ‘Hulpmiddelen’, dan op ‘Board’. Klik vervolgens op het type Arduino wat jij gebruikt. Wij gebruiken een Arduino Nano, hier zullen wij dus op klikken. Weet je niet welk type Arduino je hebt? Kijk dan op de Arduino website: arduino.cc/en/main/products.


Voor sommige typen Arduino’s is het ook van belang dat we de juiste processor instellen. Hiervoor klikken we op ‘Hulpmiddelen’ (Engels: ‘Tools’) en dan op ‘Processor’. Als deze optie er niet tussen staat, mag deze stap overgeslagen worden. In het geval van de Arduino Nano hebben we drie keuzes. ‘ATmega328P’, ‘ATmega328P (Old Bootloader)’ en ‘ATmega168’. In onze werkplaats hebben we twee van deze typen Arduino Nano’s, de rode Arduino Nano heeft een ‘ATmega168’ processor, de gele heeft de ‘ATmega328P (Old Bootloader)’.

Als je niet weet van welke processor jouw Arduino gebruikt kun je beginnen met de bovenste, als het niet werkt, kun je de volgende in de lijst kiezen.


Vervolgens kunnen we de USB-poort kiezen. Op verschillende besturingssystemen zal het naamschema van poorten verschillen. Op Windows zal de naam van een poort altijd beginnen met COM en eindigen met een getal. Als er meerdere opties zijn, is de kans groot dat de Arduino het apparaat is met het grootste getal in de naam. Als het later blijkt niet te werken kunnen we altijd een andere poort selecteren.

De dunne HP-laptops die wij in onze werkplaats gebruiken zullen altijd COM3 als optie geven. Dit zal echter nooit de Arduino zijn. Dit is namelijk een intern apparaat.


Nu we alle instellingen goed gezet hebben, drukken we op de upload knop om ons programma op de Arduino te zetten. Deze knop is links-boven in de editor te vinden, zoals ook in de afbeelding te zien is.


Als alles gelukt is krijgen we de tekst ‘Uploaden voltooid’ (Engels: ‘Done uploading.’) te zien boven de zwarte terminal. Er zal nu elke seconde een lampje op onze Arduino knipperen.

Als de upload niet geslaagd is, kun je het opnieuw proberen met andere processor en poort instellingen. Als geen enkele combinatie werkt, is het probleem misschien te vinden onder het kopje ‘Verschillende problemen oplossen’ verder in dit artikel.

Aanpassen

We zien in de Arduino IDE een stuk tekst staan. Dit is de computercode van het voorbeeld. Laten we hier eens naar kijken.

De lichtgrijs gekleurde tekst is commentaar, dit wordt bij het uitvoeren van deze code door de computer genegeerd. Ook alle tekst wat na ‘//’ komt, is commentaar. We kunnen al dit commentaar weghalen zonder dat er iets veranderd bij het draaien van de code. Wees niet bang om ook in je eigen editor te doen, als er iets stuk gaat kunnen we het voorbeeld altijd opnieuw openen. Ons programma zal er na de verandering als volgt uitzien:

void setup() {
  pinMode(LED_BUILTIN, OUTPUT);
}

void loop() {
  digitalWrite(LED_BUILTIN, HIGH);
  delay(1000);
  digitalWrite(LED_BUILTIN, LOW);
  delay(1000);
}

In dit lab leren we nog niet wat elk stukje code precies doet. Wel kijken we naar de algemene structuur.

We zien bovenin ‘void setup()’, daarachter staat een stuk code in accolades ({}). De code binnen deze accolades zal gelijk wanneer het programma begint één keer draaien.

Onder de ‘void setup()‘ zien we de ‘void loop()‘, de code binnen de accolades die hierbij horen wordt nadat de setup is uitgevoerd, telkens herhaald uitgevoerd.

Elk Arduino programma zal ‘void setup()‘ en ‘void loop()‘ bevatten. In het blink programma zien we dat in beide functies code staat, in de loop zien we onderanderen de volgende code:

delay(1000);

Deze code geeft aan dat de Arduino duizend milliseconden (een seconde) moet wachten voordat de volgende instructie uitgevoerd mag worden. We kunnen deze wachttijd veranderen. Probeer dit eens! Vergeet niet, wanneer je klaar bent, opnieuw op de upload knop te drukken om het nieuwe programma uit te proberen.

En nu?

Wanneer je klaar bent kun je een van onze andere labs volgen, kijk eens in onze verzameling van labs: ‘Labs’. Het vervolg van dit lab gaan we leren hoe we onze eigen Arduino programma’s kunnen maken, dit vervolg is echter nog in ontwikkeling.

 

Verschillende problemen oplossen

Niets is perfect. Er kunnen altijd wel problemen ontstaan. In onze werkplaats hebben we gemerkt dat de problemen die hieronder genoemd worden het vaakst voorkomen.

Ik kan de poort niet vinden

Het komt soms voor dat onze Arduino niet in de lijst van USB-poorten te vinden is, dit kan drie oorzaken hebben:

  • De lijst met poorten moet herladen worden

Als we onze Arduino aansluiten wanneer het hulpmiddelen menu is geopend, zal de Arduino niet in de lijst met poorten te vinden zijn. We zullen de lijst opnieuw moeten laden. Om dit voor elkaar te krijgen sluiten we het hulpmiddelen menu door ergens ander op het scherm te klikken. Vervolgens openen we het menu weer door op ‘Hulpmiddelen’ (Engels ‘Tools’) te klikken.

Als dit het probleem niet heeft opgelost, kunnen we de Arduino IDE opnieuw opstarten, sluit het programma af door op het kruisje rechts boven te klikken. Open vervolgens het programma opnieuw.

Als ons probleem nog steeds niet verholpen is, kunnen we proberen of het opnieuw opstarten van de computer het probleem oplost.

  • We maken gebruik van een USB-kabel zonder data verbinding

Sommige USB-kabels hebben geen data verbinding. Deze data verbinding is voor het uploaden van ons programma juist hard nodig. Probeer eens of een andere USB-kabel wel werkt.

  • De CH340 drivers zijn niet geïnstaleerd

Bepaalde Arduino’s maken gebruik van een CH340 chip om met de computer te communiceren. Om met deze chip te communiceren hebben we een driver nodig. Sommige Windows computers zullen deze drivers niet geïnstalleerd hebben. In het lab ‘Arduino installeren’ wordt onder het kopje ‘Drivers’ uitgelegd hoe we deze drivers installeren.

‘Er trad een error op’


Wanneer we het probleem ‘Er trad een error op gedurende het laden van de sketch’ (Engels: ‘Problem uploading to board’) krijgen, betekend dit vaak dat onze instellingen verkeerd staan. Check dus of je de juiste board, processor en poort hebt gekozen. Wanneer je niet weet welke processor of poort je gebruikt, zal je elke mogelijke optie uit moeten testen. Weet je niet welke board je hebt? Kijk dan op de Arduino website: arduino.cc/en/main/products.

Als helemaal niets werkt, betekend dit waarschijnlijk dat de juiste USB-poort niet in de lijst van poorten staat. Waarschijnlijk helpt een van de oplossingen onder het kopje ‘Ik kan de poort niet vinden’.

Lang bezig en dan ‘programmer is not responding’


Deze foutcode komt bij dezelfde soort problemen voor als ‘Er trad een error op’, probeer eens of de oplossing wat bij dat kopje gegeven wordt werkt.

Ook komt deze foutcode voor wanneer we gebruikmaken van een type Arduino zonder de auto-reset functionaliteit. Misschien heb jij er zo een. Probeer eens op de reset knop,de knop op het Arduino apparaat, te drukken wanneer je het volgende in de Arduino IDE ziet verschijnen:

‘Probleem bij het uploaden naar board’


Dit probleem komt voor wanneer we geen of de verkeerde poort hebben geselecteerd. Probeer eens een andere poort te selecteren.

Gebruik je een Linux besturingssysteem? Heb je de Arduino IDE wel toestemming gegeven om met USB-apparaten te communiceren? Kijk hier, onder het kopje ‘Linux’, hoe je dit voor elkaar krijgt: ‘Arduino installeren’.

Probleem met code


Soms zit er een foutje in de code. De foutcode zal er dan ongeveer zo uitzien als in het plaatje hierboven. Probeer eens opnieuw het ‘Blink’ voorbeeld te openen en deze opnieuw te uploaden. Werkt dit wel? Dan zal je in jouw code dus grondig moeten zoeken naar het foutje! Vergeet niet om de foutcode te lezen, hierin is meestal ongeveer te zien wat er fout is gegaan en waar de fout gemaakt is.

Andere problemen

Als je andere problemen tegen bent gekomen kun je kijken of de oplossing hier te vinden is: arduino.cc/en/guide/troubleshooting. Of je kunt het probleem op internet opzoeken. Ook kun je aan andere mensen vragen of zij weten hoe het probleem opgelost kan worden!