3.6 Arduino: een schakelaar programmeren


Kijk eerst eens naar onderstaande afbeelding:

  • De schakelaar  wordt via lijn 18 van het breadboard met een draadje verbonden aan de plus.
  • Als we op de schakelaar drukken maken we een verbinding tussen lijn 18 van het breadboard en lijn 20.
  • Vanaf lijn 20 kan de stroom door de weerstand naar lijn 26 gaan en zo verbinding maken met het ledje .
    Denk erom, het langste pootje of het pootje met de knik komt aan de + zijde.
  • De stroom gaat dan door het ledje naar lijn 27 die weer gekoppeld zit aan de GND aansluiting.
  • Daarmee is er, als we de schakelaar indrukken, sprake van een stroomkring. De stroom kan immers van de 5 volts aansluiting (5V) naar de 0 volt (GND) komen en dus gaat het ledje branden.

De meeste Arduino’s werken met een spanning van 5 volt. En voor de meeste LED’s is dat een te hoge spanning. Door in serie met een LED een weerstand van 220 Ω te plaatsen kun je dat oplossen. Daarmee daalt de spanning over de LED naar ongeveer 2 volt.
De waarde van een weerstand kun je aflezen aan de kleuren die erop staan.

In het materiaal van Freek Pols wordt uitgebreider ingegaan op het aansluiten van een LED en de kleurcoderingen van weerstanden (Opdracht 1 uit de Arduino module basis cursus)

Maar dit is niet de manier waarop we een schakelaar met een Arduino willen gebruiken!

In de bovenstaande schakeling kan de schakelaar maar één ding. Ingedrukt worden waardoor het ledje aan gaat. Maar stel nu dat we juist willen dat het ledje brandt als we niet op de schakelaar drukken en dat het uit gaat als we er wel op drukken.

Kijk nu eens naar de volgende schakeling en vooral naar de verschillen met de vorige schakeling:

Hoe gebruik je een schakelaar en hoe sluit je een LED aan op de Arduino?

  • We zien hier in feite twee stroomkringen:
    1. De stroomkring met de schakelaar. Dit zit immers, met de bijbehorende weerstand van 10 kΩ (= 10.000 Ω), aangesloten op de plus en de min.
    2. De stroomkring van het ledje. Via de groene draad aan poort 5 krijgt de schakeling zijn plus. De stroom loopt dan door de weerstand en het ledje naar de min toe.
  • Als we de schakelaar indrukken dan wordt poort 10 van de Arduino dus verbonden met de 5 volt. Laten we de schakelaar los dan is poort 10 van de Arduino via de weerstand verbonden met de GND.
  • Bij de schakeling van het ledje is er eigenlijk maar één verschil met de eerdere schakeling: de pluszijde van het ledje is nu via de weerstand van 220 Ω verbonden met poort 5 van de Arduino.
  • Bij het programmeren van de Arduino gaan we poort 10 definiëren als een poort voor input. D.w.z. de Arduino luistert als het ware aan poort 10 of er wat gebeurt.
  • Poort 5 van de Arduino gaan we definiëren als een poort voor output. De Arduino kan dan op die poort een 1 of een 0 zetten. Vertaald voor het ledje is dat een spanning van 5 volt of van 0 volt.

De weerstand van 10 kΩ is een zogenaamde pull-down weerstand. Die trekt, als er niet op de schakelaar gedrukt wordt, als het ware de spanning aan poort 10 naar 0 volt.  Als je namelijk op de schakelaar drukt is het wel duidelijk dat er op poort 10 een spanning komt te staan van 5 volt. Maar als je de schakelaar los laat is helemaal niet zeker of poort 10 dan wel 0 volt wordt. Dankzij die weerstand dus wel.

Samengevat:
Door te programmeren kunnen we één type schakelaar op allerlei manieren gebruiken. Je gaat dus altijd de werking van een sensor door middel van de software dusdanig programmeren dat daardoor wordt bepaald hoe de Arduino zijn werk doet.


3.6.0.1 De schakelaar programmeren
3.6.0.2 Eindopdracht voor dit hoofdstuk: hotelschakeling in Arduino
3.6.0.3 Extra opdracht

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *