Ampel mit Fußgängerampel

Lese­zeit: 3 Minu­ten

Lösung
Seite als PDF

Eine Ampel soll zusam­men mit einer Fuß­gän­ger­am­pel in einem fest­ge­leg­ten Takt geschal­tet werden.

So sieht es aus:

Benö­tig­te Bauteile:

  • 2 rote LEDs 
  • 2 grü­ne LEDs
  • 1 gel­be LED
  • 5 Wider­stän­de 220 Ω
  • Lei­tungs­dräh­te

Beach­te die ➨ Vor­wi­der­stän­de ver­schie­de­ner LEDs

Board instal­lie­ren

Instal­lie­re mit dem Board­ver­wal­ter das pas­sen­de Board:

Schalt­plä­ne

(Fah­re mit der Maus über das Bild, um die Bezeich­nun­gen der Bau­tei­le zu sehen)

Ardui­no UNO

Wemos D1 Mini

ESP32-Wroom

Die Schal­tung der Fahrbahnampel:

1 Sekun­de Sicher­heits­zo­ne (bei­de Ampeln zei­gen für 1 Sekun­de rot)
5 Sekun­den rot
1 Sekun­de Sicher­heits­zo­ne (bei­de Ampeln zei­gen für 1 Sekun­de rot)
1 Sekun­de rot/gelb
5 Sekun­den grün
1 Sekun­de gelb

Die Schal­tung der Fußgängerampel:

1 Sekun­de Sicher­heits­zo­ne (bei­de Ampeln zei­gen für 1 Sekun­de rot)
5 Sekun­den grün
1 Sekun­de Sicher­heits­zo­ne (bei­de Ampeln zei­gen für 1 Sekun­de rot)
7 Sekun­den rot

Der zeit­li­che Ablauf:

Defi­nie­re zuerst die ➨Varia­blen für die Zuord­nung der Bau­tei­le.
Die Pro­gram­me für die ver­schie­de­nen Mikro­con­trol­ler unter­schei­den sich nur in der Zuwei­sung der Pins.

Ardui­no UNO

int ROT = 3;
int GELB = 4;
int GRUEN = 5;
int F_ROT = 6;
int F_GRUEN = 7;

Wemos D1 Mini

int ROT = D5;
int GELB = D6;
int GRUEN = D7;
int F_ROT = D1;
int F_GRUEN = D2;

ESP32-Wroom

int ROT = 26;
int GELB = 27;
int GRUEN = 14;
int F_ROT = 13;
int F_GRUEN = 12;

Füge dem set­up-Teil den pin­Mo­de für die LEDs hinzu.

void setup() 
{
  pinMode(ROT, OUTPUT);
  pinMode(GELB, OUTPUT);
  pinMode(GRUEN, OUTPUT);
  pinMode(F_ROT, OUTPUT);
  pinMode(F_GRUEN, OUTPUT);
}

Begin­ne den loop-Teil mit der Sicher­heits­zo­ne (bei­de Ampeln zei­gen für 1 Sekun­de rot).

void loop()
{
  digitalWrite(ROT, HIGH);
  digitalWrite(F_ROT, HIGH);

  // 1 Sekunde Sicherheitszone
  delay(1000);

  // Fußgängerampel wird von rot auf grün geschaltet
  digitalWrite(F_ROT, LOW);  
  digitalWrite(F_GRUEN, HIGH);
  delay(5000);

  // Fußgängerampel wird von grün auf rot geschaltet
  // F_GRUEN -> aus, F_ROT -> an
  digitalWrite(F_GRUEN, LOW);
  digitalWrite(F_ROT, HIGH);

  // 1 Sekunde Sicherheitszone, beide Ampeln bleiben rot
  delay(1000);

  // Fahrbahnampel auf rot-gelb und dann auf grün schalten
  // GELB -> an, 1 Sekunde warten, GELB und ROT -> aus, 
  // GRUEN -> an
  digitalWrite(GELB, HIGH);
  delay(1000); 
  digitalWrite(ROT, LOW);
  digitalWrite(GELB, LOW);
  digitalWrite(GRUEN, HIGH);

  // GRUEN -> 5 Sekunden, GRUEN -> aus, GELB 1 Sekunde an,
  // GELB aus
  delay(5000);
  digitalWrite(GRUEN, LOW);
  digitalWrite(GELB, HIGH);
  delay(1000);
  digitalWrite(GELB, LOW);
}

Startseite
Aufgaben A-Z
Suchen
Downloads
Fehlermeldungen
Seite als PDF

Ver­wand­te Aufgaben:


Letzte Aktualisierung: 2. Jan 2024 @ 9:49