Arduino Lektion 3: Einfache Ampelschaltung

Nun wollen wir eine einfache Ampelschaltung realisieren, dazu benötigen wir folgende Bauelemente:

  • 1 LED in rot,
  • 1 LED in gelb,
  • 1 LED in grün,
  • 3 Widerstände zu je 220 Ohm,
  • 3 orangene Kabel,
  • 3 schwarze Kabel, und
  • 1 Steckbrett

Die Schaltung hierzu ist wieder ähnlich wie auch zur blinkenden LED nur das wir hier 3 LED’s auf einem Steckbrett haben anstatt einer. Diese LED’s werden an 3 verschiedene PIN’s angeschlossen (hier 10, 7 und 4) und per Quellcode gesteuert.

Schaltplan Ampelsteuerung.
Schaltplan zur Ampelsteuerung.

Für diese einfache Ampelschaltung wollen wir von der Farbe Rot auf Rot & Gelb zu Grün wechseln. Dann wieder von Gelb zu Rot usw.

 

Wie im Code zu sehen ist, ist die Ampelschaltung relativ einfach zu schreiben denn wir setzen „nur“ die entsprechenden digitalen PIN’s auf HIGH oder LOW. Quasi brauchen wir nur einmal die Schaltung im Quellcode schreiben und den „Rest“ erledigt die Loop.

int ledrot=10;   // Definiert den digitalen PIN10 für die LED rot
int ledgelb=7;   // Definiert den digitalen PIN7 für die LED gelb
int ledgruen=4;  // Definiert den digitalen PIN4 für die LED gruen

void setup() {
  pinMode(ledrot,OUTPUT);   // Setzt den PIN10 als Ausgangssignal.
  pinMode(ledgelb,OUTPUT);  // Setzt den PIN7 als Ausgangssignal.
  pinMode(ledgruen,OUTPUT); // Setzt den PIN4 als Ausgangssignal.
} 

void loop() {    
   digitalWrite(ledrot,HIGH);   // LED rot einschalten    
   delay(1500);                 // 1,5 Sekunden  warten (1500 Millisekunden)
   digitalWrite(ledgelb,HIGH);  // LED gelb einschalten
   delay(1000);                 // 1 Sekunde warten (1000 Millisekunden)
   digitalWrite(ledrot,LOW);    // LED rot ausschalten
   digitalWrite(ledgelb,LOW);   // LED gelb ausschalten
   digitalWrite(ledgruen,HIGH); // LED gruen einschalten
   delay(1500);                 // 1,5 Sekunden  warten (1500 Millisekunden)    
   digitalWrite(ledgruen,LOW);  // LED gruen ausschalten 
   digitalWrite(ledgelb,HIGH);  // LED gelb einschalten
   delay(1000);                 // 1 Sekunde warten (1000 Millisekunden)
   digitalWrite(ledgelb,LOW);   // LED gelb ausschalten
}   

Hier nun ein kurzes Video zur Ampelsteuerung.

Ampelschaltung mit dem Saintsmart Mega2360
Dieses Video ansehen auf YouTube.

Der Quellcode zum Download.

4 Gedanken zu „Arduino Lektion 3: Einfache Ampelschaltung

  • 29. September 2016 um 08:14
    Permalink

    Kann man den Widerstand auch direkt an GND anlegen, sodass man nur einen braucht? Oder muss an jeder Leitung zu einer LED ein Widerstand sein?

    Antwort
    • 1. Oktober 2016 um 07:21
      Permalink

      Hallo Niklas,
      es muss für jede LED ein Widerstand verwendet werden da die Summe der Lasten von allen LED’s zu für einen Widerstand zu hoch wären.

      Antwort
  • 5. September 2018 um 16:15
    Permalink

    Es heißt Widerstand, nicht Wiederstand 🙂

    Antwort
    • 7. September 2018 um 09:59
      Permalink

      Dankeschön, beim erneuten Review sind mir noch ein paar andere Fehler aufgefallen.

      Gruß,

      Stefan

      Antwort

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.