We kennen allemaal Arduino. Het is een van de meest populaire open source microcontrollerkaarten die zeer handig zijn voor doe-het-zelfprojecten. Deze op Arduino gebaseerde 3-weg verkeerslichtcontroller is een eenvoudig Arduino-doe-het-zelf-project dat handig is om de werking van verkeerslichten die we om ons heen zien te begrijpen. In dit verkeerslichtcircuit hebben we een eenvoudiger versie van verkeerslichten behandeld. Hier hebben we het voor 3 kanten of manieren gedemonstreerd. Laten we nu naar het project gaan…
Vereiste componenten:
- 3 * Rode LED-verlichting
- 3 * Groene LED-verlichting
- 3 * gele LED-verlichting
- 3 * 220ohm weerstanden
- Breadboard
- Male naar male connectoren
- Arduino Uno met Ide-kabel
Circuit uitleg:
Het schakelschema voor het Arduino Traffic Light Controller-project wordt hieronder gegeven:
Het is vrij eenvoudig en kan gemakkelijk op broodplank worden gebouwd, zoals uitgelegd in onderstaande stappen:
- Verbind de LED's in de volgorde Rood, Groen en Geel in het breadboard.
- Plaats de minpool van de LED's gemeenschappelijk en sluit de 220ohm-weerstand in serie aan.
- Sluit de connectordraden dienovereenkomstig aan.
- Verbind het andere uiteinde van de draad met de Arduino Uno in de opeenvolgende pinnen (2,3,4… 10)
- Schakel het breadboard in met behulp van de Arduino 5v en GND-pin.
Programma en werkuitleg:
De code voor dit Arduino Traffic Light Controller Project is eenvoudig en gemakkelijk te begrijpen. Hier hebben we verkeerslichten gedemonstreerd voor de weg met drie wegen en de code geeft LED's aan alle drie de zijden in een bepaalde volgorde op, waarin de werkelijke verkeerslichten werken. Alsof er tegelijkertijd twee rode seinen aan een van de twee zijden zijn en één groen licht aan de overgebleven zijde. En geel licht zal ook gloeien, elke keer gedurende 1 seconde, tussen de overgang van rood naar groen, betekent dat eerst rood licht gedurende 5 seconden oplicht, dan geel licht gedurende 1 seconde en dan uiteindelijk groen licht zal worden ingeschakeld.
In het programma hebben we eerst pinnen (2,3… 10) gedeclareerd als output in ongeldige setup () voor 9 LED's (drie aan elke kant dwz voorwaarts, rechts en links).
void setup () {// configureer de output pinnen pinMode (2, OUTPUT); pinMode (3, OUTPUT); pinMode (4, UITGANG); pinMode (5, UITGANG); pinMode (6, UITGANG); pinMode (7, UITGANG); pinMode (8, UITGANG); pinMode (9, UITGANG); pinMode (10, UITGANG); }
Vervolgens hebben we in de functie void loop () de code geschreven voor het in- en uitschakelen van verkeerslichten in volgorde zoals hierboven vermeld.
void loop () {digitalWrite (2,1); // maakt de eerste set signalen digitalWrite (7,1) mogelijk; digitalWrite (10,1); digitalWrite (4,0); digitalWrite (3,0); digitalWrite (6,0); digitalWrite (8,0); digitalWrite (9,0); digitalWrite (5,0); vertraging (5000);………………
Dit proces wordt goed gedemonstreerd in de onderstaande video. Eerst wordt de bovenkant / voorkant geopend (groen), terwijl de andere twee zijkanten (dwz linkerkant en rechterkant) gesloten blijven met een rood signaal, met een vertraging van 5 seconden. Dan gaat het gele lampje aan de rechterkant 1 seconde branden, gevolgd door het groene lampje, terwijl de andere twee kanten (dwz de bovenkant en de linkerkant is rood) gesloten blijven met rood licht en 5 seconden vertraging. Dan gloeit geel aan de linkerkant gedurende 1 seconde, gevolgd door groen, waardoor de bovenkant en rechterkant rood blijven met 5 seconden vertraging. Dit proces wordt doorgelust in de functie void loop () voor een continu proces. Hier kunnen we vertragingen wijzigen waarvoor het rode, gele en groene lampje aan en uit blijft.
De volledige Arduino-code en video voor dit Arduino-verkeerslichtproject wordt hieronder gegeven.