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 orange Kabel,
  • 3 schwarze Kabel, und
  • 1 Steckbrett

Die Schaltung hierzu ist wieder ähnlich wie auch zur blinkenden LED nur das wir hier 3 LEDs auf einem Steckbrett haben anstatt einer. Diese LEDs werden an 3 verschiedene PINs 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 PINs 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

Der Quellcode zum Download.

4 Kommentare

    1. 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.

Kommentar hinterlassen

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