Aufgabe: Eine Ampelschaltung erstellen.



Material: das Mikrocontrollerboard mit dem USB-Kabel, 3 LEDs (rot, gelb, grün)!

Das lange Bein einer LED ist die Anode (an Pluspol anschließen). Eigentlich sollte ein Vorwiderstand (220 Ω - 1000 Ω) beim Betrieb einer LED eingebaut werden, weil LEDs zwischen 2 V und 3 V betrieben werden, das Arduino-Board aber 3,3 V bzw 5 V liefert. In der Praxis geht es aber ohne Vorwiderstand.

Bild

Schaltung:

Die Minuspole werden gemeinsam mit grd (ground) verbunden. Die Pluspole der LEDs sind (s. Bild) an den Pins 12 , 9 bzw. 7 angeschlossen.
Im Sketch sollten Sonderzeichen (Umlaute oder Ähnliches) vermieden werden.
Die Ampelphasen: rot - rot-gelb - grün - gelb. Die jeweilige Dauer einer Phase (4 s, 1 s, 4 s, 1 s) ist natürlich veränderbar.


Der Sketch :


int rot=12; // Die Pins erhalten aussagekräftige Bezeichnungen
int gelb=9;
int gruen=7;

void setup() {
   pinMode(rot, OUTPUT); //Pins als Ausgang festlegen
   pinMode(gelb, OUTPUT);
   pinMode(gruen, OUTPUT);
}


void loop() {

   digitalWrite(rot,HIGH);
   digitalWrite(gelb,LOW);
   digitalWrite(gruen,LOW);
   delay(4000);
//Rot-Phase
   digitalWrite(rot,HIGH);
   digitalWrite(gelb,HIGH);
   digitalWrite(gruen,LOW);
   delay(1000);
//Rot-gelb-Phase
   digitalWrite(rot,LOW);
   digitalWrite(gelb,LOW);
   digitalWrite(gruen,HIGH);
   delay(4000);
//Grün-Phase
   digitalWrite(rot,LOW);
   digitalWrite(gelb,HIGH);
   digitalWrite(gruen,LOW);
   delay(1000);
//Gelb-Phase
}


Aufgaben:

  1. Überlege, welche Zeilen des Sketches im Hauptprogramm redundant sind.
  2. Programmiere ein gelbes Blinklicht.
  3. Programmiere eine Ampelschaltung (2 Ampeln) für Haupt- und Querverkehr.
  4. Programmiere eine Bedarfsampel, die auf Tastendruck reagiert.