Werkblad Arduino Nano

Opdracht:

Programmeer een Blink op de Arduino

Leerdoel:

Je leert de weg te vinden in de technieken zodat je hierna zelf ook spannendere programmeeropdrachten kunt uitvoeren.

Lesprogramma:

Benodigdheden:

  • Laptop met PORTABLE Arduino IDE, met drivers voor onze Arduino Nano
  • 1x Arduino Nano, https://www.aliexpress.com/item/Top-Micro-USB-Nano-V3-0-ATmega328P-CH340G-5V-16M-Micro-controller-board/32660903735.html
  • 1x micro USB kabel

Voor de extra uitdagingen:

  • losse leds
  • RGB led
  • soldeergereedschap.

Je moet voor de extra uitdagingen wel hebben geleerd hoe je moet solderen, bijvoorbeeld als je de oefening met de trilrobot hebt gedaan.

Opmerking:

Als je de mobiele arduino IDE op je eigen computer gaat gebruiken, dan moet je eerst de driver voor deze nano installeren. In de mobiele folder zie je een subfolder “Drivers”, met daarin twee folders “01” en “02”, elk met een driver. Installeer ze allebei.

 

Werkwijze:

Uitleg van de Arduino onderdelen (als je de trilrobot hebt gedaan)

We kijken naar de arduino Nano. Dit is hetzelfde als alle andere arduino’s, maar dan kleiner en met een handige micro-USB aansluiting.

Je programma maak je op je computerscherm en dan stuur je het via de usb naar de chip waar veel pootjes aan zitten. Voor al die pootjes zie je aan de zijkant van het bordje ook aansluit gaatjes. In het zakje van de arduino zie je ook aansluitpootjes. Die gebruiken we vandaag niet.

Op de achterkant van de arduino zie je een wat grote zwarte chip. Die zorgt voor de communicatie met de usb. Daarvoor hebben we in de computer de juiste driver gekozen.

Het kleinere zwarte blokje op de achterkant converteert de stroom van de usb van 5 volt naar ongeveer 3 volt. Dat is hetzelfde als de batterij die we bij de trilrobot hebben gebruikt. Je kunt hier dan ook dezelfde leds gebruiken.

Ohja, aan de zijkant van de arduino zie je bij die gaatjes allerlei nummertjes staan. Zie je bijvoorbeeld waar D2 en D3 staan?

Je eerste blink

Open op de laptop het Arduino scherm via de link of shortcut op de desktop.

(Dit scherm heet de arduino IDE. Je gebruikt een portable versie, zodat je de hele folder met programma, libraries en jouw code in één keer op een usb stick zou kunnen kopiëren. Dat is handig als je bijvoorbeeld thuis verder wilt werken. Je kunt zelfs de Arduino IDE vanaf de usb stick openen.)

Sluit de Arduino via de usb kabel aan op de laptop.

Open de voorbeeld code op je scherm via bestand/voorbeelden/01 basics/Blink

Kijk bij Hulpmiddelen/board en zorg dat deze is geselecteerd: Arduino Nano

Kijk bij Hulpmiddelen/poort, en selecteer de juiste poort (dat is meestal het hoogste nummer)

Stuur het Blink programma naar de Arduino door op je scherm links boven de tweede ronde knop te kiezen, met het pijltje.

Je ziet dan rechts onder dat het programma wordt klaargemaakt en de computer probeert deze naar de Arduino te sturen. Als er onderin een oranje balk komt is er een probleem, maar meestal gaat het goed. Bij een probleem kijk je welke tekst in de oranje balk staat, misschien is de poort niet goed gekozen of je kan een foutje in de code hebben.

Knippert de arduino?

Even opruimen op je scherm

Het programma staat nu midden op je scherm. Wat staat op de bovenste regel? Nee, helemaal bovenaan.  De eerste regel begint met twee rare tekens: /*

Daarna komen er een aantal lichtgrijze regels en dan zie je weer een regel met twee rare tekens: */

Dat hele stuk gaan we weg halen. Ga met je cursor helemaal naar links op de bovenste regel. Houdt dan Shift ingedrukt en met pijltje naar beneden selecteer je alle grijze tekst mét de rare tekens. Druk op Delete of Backspace. De tekst en de rare tekens zijn dan weg. Je kunt nu het programma beter zien.

Stuur het programma nog een keer naar de arduino  om te kijken of het nog steeds goed is. Als er een oranje balk komt heb je misschien nog wat rommeltjes op het scherm laten staan. Zorg even dat het goed gaat.

Je tweede blink

Nu staan er nog maar een paar regels op je scherm. Daarin zie je op twee plaatsen het getal 1000. Daarbij zie je allerlei haakjes en puntkomma’s. Die moet je niet veranderen, maar de getallen mag je aanpassen.

Maak van het eerste getal 300 en van het tweede getal 2000. Dat zijn milliseconden. Stuur je programma naar de arduino.

Knippert de arduino nu anders?

Je mag het nog een keer proberen met andere getallen. De snelste knipper die ik heb gezien is met de getallen 1 en 10; de led knippert dan niet maar staat vaag aan.

Zet de getallen weer terug naar 300 en 2000.

We kijken naar de code

Leraar: haal nu de leerlingen even weg bij de schermen en vertel…

In je programma kan je twee delen zien. Het eerste deel heet Setup, en dit wordt uitgevoerd wanneer je de arduino aanzet, of het programma geladen is, of als je op reset drukt. In de opdracht kan je lezen dat de arduino weet  welk poortje we gaan gebruiken voor de knipper led. Dat heet LED_BUILDIN, maar ik weet dat dit poortje 13 is.

Het tweede deel heet Loop, en dit wordt telkens herhaald. Als je goed kijkt dan zie je dat er vier opdrachtregels zijn. De eerste regel zet het poortje met de led aan, want HIGH betekent 3 volt of “aan”. Dan is er een regel die aangeeft hoeveel hij moet wachten, dat zijn de milliseconden. De derde regel zet het poortje met de led weer uit, want LOW betekent 0 volt of “uit”. En daarna zie je weer een wacht-regel. En je ziet de knipper omdat de Loop steeds wordt herhaald..!

Leraar: laat de leerlingen nu weer naar de computer gaan om te kijken of dat er inderdaad staat.

Gefeliciteerd!

Het is gelukt je eerste programma te maken.

Nu mag je iets moeilijkers proberen. Je mag kiezen: een morse-code met deze led, of als je kunt solderen kan je extra leds monteren, of een fade-voorbeeld opzoeken.

Als je niet weet hoe dat moet kan je elkaar om hulp vragen.

Keuze 1. Morse code lang-lang-kort

Kijk nu goed naar de gewone blink code. Zie je de vier regels met de gekleurde woorden, die na het woord Loop tussen de krulhaakjes staan? Dit zijn de regels die de knipper maken. Krukhaakjes zien er zo uit:  {    }

De vier regels die de knipper maken willen we een paar keer verdubbelen. Selecteer de vier regels en gebruik control-c.  Met control-v kan je ze nu een paar keer plakken. Het is mooi als je er telkens een lege regel achter zet.

Kijk telkens of de code nog werkt door deze naar de arduino te sturen.

Bij elk blokje van vier regels kan je nu de wacht-getallen veranderen. Probeer eens in morse een ritme te maken; lang-lang-kort

Keuze 2. Extra leds. D2-D3, D5-D6, D8-D9

Begin met de gewone blink code. Zie je de regel met de gekleurde woorden, die na het woord Setup tussen de krulhaakjes staat? Dit is de regel die vertelt dat we LED_BUILDIN gebruiken.

Verdubbel nu deze regel, zodat hij er drie keer staat. De eerste regel laat je dan zoals hij was. Op de tweede vervang je het woord LED_BUILDIN voor het nummer 2. Op de derde regel verander je LED_BUILDIN naar 3.

Hiermee vertellen we dat we ook poort D2 en D3 wilen gebruiken. Kijk telkens of de code nog werkt door deze naar de arduino te sturen.

 

Kijk nu weer naar de blink code. Zie je de vier regels met de gekleurde woorden, die na het woord Loop tussen de krulhaakjes staan?

De eerste regel waarin je het woord LED_BUILDIN ziet wil je ook verdubbelen, nu zodat het er twee keer staat. Op de tweede regel verander je het woord LED_BUILDIN in het getal 2. Wordt de led daar aan- of uit gezet?

Na de wacht-regel zie je weer een regel waarin je het woord LED_BUILDIN ziet. Wordt de led hier aan- of uit gezet?  ook deze regel wil je verdubbelen, zodat het er twee keer staat. Op de tweede regel verander je weer het woord LED_BUILDIN in hetzelfde getal 2.

Kijk telkens of de code nog werkt door deze naar de arduino te sturen.

 

Neem nu een led en prik deze in gaatjes D2 en D3, en kijk of deze gaat knipperen. Het kan zijn dat je de led om moet draaien. Als de led knippert mag je deze vast solderen.

Een ledje op de arduino vastsolderen is niet moeilijk. De schone soldeerpunt zet je zo dat je vanaf de zijkant het gaatje verwarmt. Na 1 of 2 seconden doe je ook een heel klein beetje soldeertin tegen het gaatje. Als je het goed doet zie je dat de soldeertin het gaatje ingezogen wordt. Soldeer ook het tweede gaatje van de led. Knip het uitstekende deel van de pootjes van de led af.

Als je met twee personen op één computer werkt dan kan je nu ook de tweede arduino programmeren, en een ledje testen. Als deze ook goed knippert kan je deze vast solderen.

 

Voor een volgende ledje kies je D5 en D6. We slaan expres een gaatje over. Verander de code weer totdat deze led ook werkt en soldeer deze daarna vast.

Hetzelfde doe je dan met D8 en D9.

 

Probeer ook eens extra wacht-regels toe te voegen tussen de verschillende led-aan regels, en ook tussen de verschillende led-uit regels.

 

Keuze 3. RGB led.

Deze opdracht kan je kiezen nadat je de drie leds hebt gedaan. We moeten eerst ontdekken welke gaatjes aan de andere kant we willen gebruiken. En we moeten ontdekken welke gaatjes we plus of min moeten maken.

Neem een RGB led en een batterij. Ontdek welke pootjes je gebruikt om verschillende kleuren aan te zetten. Moet het langste pootje altijd HIGH of LOW zijn?

Voeg in Setup de extra regel toe om ook de vier pootjes A??? te gebruiken.

Zorg in de Setup dat het langste pootje altijd HIGH of LOW is. Hiervoor kan je een regel kopiëren uit de Loop en dan aanpassen.

In de Loop zet je extra regels neer om de R G B kleuren afzonderlijk aan- en uit te zetten. Deze regels kan je kopiëren van wat er al staat, en verder aanpassen.

 

Keuze 4. Fade?

Kan je bij de voorbeelden ook een programma met een fade vinden? Hiermee gaat de led langzaam aan, en dan langzaam weer uit. Probeer eens?

In de code lees je welke poortjes worden gebruikt. Hierbij heb je vast een soldeerbout en een ledje nodig.

 

Keuze 5. RGB rainbow fade?

Deze mag je zelf uitzoeken nadat je alle andere keuzes al hebt gedaan.