JCWeetje

Historische JCWeetjesWist-Je-DatjesRuimtekidsTechniek & WetenschapCultuurkriebelsKiddoeVariaarchief

Zelf aan de slag als programmeur

Arduino is een platform dat gebaseerd is op een simpel bord met verschillende ingangen en uitgangen. Deze in- en uitgangen kunnen vrij gebruikt worden om te doen wat jij wil. Op die manier kan je het de dingen laten doe die jij zelf kan kiezen.

Hoe werkt dit dan precies? Het hart van het bord is een microcontroller. Een microcontroller is als een kleine computer, het kan berekeningen uitvoeren en de ingangen van het bord verwerken. Deze berekeningen kunnen dan weer dienen om bepaalde uitgangen aan te sturen.
Aan deze ingangen kunnen sensoren aangesloten worden zodat de omgeving waargenomen kan worden. Er kunnen heel wat eigenschappen opgemeten worden, zoals temperatuur, beweging, afstand tot een object, locatie, geluid en nog heel wat meer.
De uitgangen kunnen gebruikt worden om deze berekeningen om te zetten in iets zichtbaars. Dit kunnen lampjes zijn, maar ook motoren, schermpjes en nog veel meer.
Wat kan je dan allemaal ermee maken? Ontzettend veel: van looplichtjes tot afstandsbedieningen voor je TV tot robots die zelf hun weg vinden in het donker, het kan allemaal!

Een programma in Arduino wordt een sketch genoemd. Een sketch bestaat steeds uit een void setup() die de initialisatie van het programma bevat. In deze initialisatie staat een stuk code dat in het begin van het programma éénmaal wordt uitgevoerd. Een tweede item dat steeds in een sketch staat is de void loop(). Wanneer de code in de void setup() uitgevoerd is, zal de code in die in de voidloop() staat steeds opnieuw uitgevoerd worden, vandaar ook de naam loop.

In een eerste voorbeeld zullen we een LED (klein lampje) laten knipperen door middel van een Arduino. Omdat de maximale stroom die door een LED mag stromen beperkt is, hebben we ook nog een weerstand van 220 Ohm nodig (kleurcode: rood, rood, bruin). De weerstand zal ervoor zorgen dat de stroom door de LED beperkt blijft. Een te hoge stroom zal de LED stukmaken.

Voor we beginnen met programmeren, maken we eerst de elektrische schakeling. We verbinden de anode (+ kant) van de LED met pin 3 van de Arduino. De andere kant van de LED verbinden we via de weerstand van 220 Ohm aan de GND-pin (massa of ground) van de Arduino. Als alles perfect is aangesloten, kunnen we overgaan naar het programmeren van ons eerste programma.

Schema van de elektrische schakeling voor een knipperlichtje

 

Arduino code wordt geschreven in een programma dat de Arduino IDE noemt. Deze software kan men gratis downloaden op volgende website: www.arduino.cc/es/main/software. Een nieuwe sketch aanmaken doen we door op "Bestand" te klikken en vervolgens op "Nieuw".

We beginnen het programma door eerst de void setup() toe te voegen. In de setup willen we aangeven dat we pin 3 van de Arduino gebruiken als uitvoer. Dit doen we door middel van de instructie pinMode(3, OUTPUT). We moeten wel erop letten dat we elke coderegel afsluiten met een ';' op deze manier weet Arduino dat een regel gedaan is. Alle code die bij de setup-functie hoort, plaatsen we ook binnen '{}'. Arduino zal alle code binnen de accolades als een groep beschouwen die bij elkaar hoort.

De setup-functie is nu helemaal klaar. We kunnen nu overgaan naar de Loop-fucntie waarin we ervoor zorgen dat het ledje knippert. We willen dat het ledje eerst aangaat, vervolgens wachten we een seconde (ofwel 1000 milliseconden), dan laten we het ledje uitgaan en wachten we weer een seconde. Deze loop zal vervolgens oneindig herhaald worden.

De LED inschakelen doen we door pin 3 op hoog te zetten, dit wil zeggen dat we een positieve spanning op de pin zetten (vergelijk het met een schakelaar die sluit). De functie die we hiervoor gebruiken, is DigitalWrite(). We schrijven een digitale 1 naar pin 3. Het uitschakelen van het ledje kan via dezelfde instructie gebeuren, maar deze keer maken we de pin laag (we zetten de schakelaar open). Het wachten doen we met de instructie delay(). Tussen de haakjes geven we aan hoeveel milliseconden we willen wachten.

Wanneer het programma volledig klaar is, verbinden we de Arduino door middel van de USB-kabel met de computer. Wanneer we dan op de knop ‘Uploaden’ (de knop met het pijltje) drukken zal de code op de Arduino geplaatst worden en onmiddellijk ook uitgevoerd worden. Het ledje knippert!
Alle voorbeeldcode is ook terug te vinden op de JCW website: www.jcw.be/arduino-blink.

De code om de LED te laten knipperen staat ook op onze website.

Door Nick Steen & Gert-Jan Andries