• Κανένα προϊόν στο καλάθι σας.

Φανάρια οδικής κυκλοφορίας με Arduino

Φτιάξε το δικό σου σύστημα οδικής κυκλοφορίας, με Arduino

Χρησιμοποιήσαμε κάποια modules τα οποία είναι μικροσκοπικά φανάρια, έτοιμα με τρύπες για να τα βιδώσουμε σε κατασκευή σε περίπτωση που θελήσουμε να φτιάξουμε μακέτα.

Το συγκεκριμένο project δεν είχε ιδιαίτερες απαιτήσεις όσον αφορά τον προγραμματισμό αλλά είναι μία καλή ευκαιρία ώστε να αντιληφθούμε τις καταστάσεις (states) που μπορεί να έχει ένας αυτοματισμός.

Πως λειτουργούν τα φανάρια;

Στην απλούστερή τους μορφή, τα φανάρια οδικής κυκλοφορίας εξασφαλίζουν ότι η κυκλοφορία σε δύο κάθετους μεταξύ τους δρόμους θα είναι απρόσκοπτη και χωρίς κωλύματα.

Το ένα φανάρι ανάβει πράσινο, ενώ το άλλο είναι κόκκινο, στη συνέχεια το πράσινο ανάβει πορτοκαλί, κόκκινο κοκ.

Αυτή η απλή λειτουργία είναι μία ωραία άσκηση για αρχάριους στον προγραμματισμό και έχει φυσικά το επιθυμητό αποτέλεσμα.

Το project και τα υλικά

Για το συγκεκριμένο project, χρησιμοποιήσαμε το Arduino mega 2560 αλλά οποιαδήποτε έκδοση (όπως το UNO) θα έκανε εξίσου καλή δουλειά.

Τι χρειαζόμαστε;

  • 1 Breadboard
  • Wires
  • 2 modules 3 LED traffic light τα οποία μπορείτε να βρείτε εδώ

Οι καταστάσεις στις οποίες βρίσκονται τα LED κάθε στιγμή φαίνονται στην παρακάτω εικόνα. Οι χρόνοι είναι ενδεικτικοί και μπορείτε να τους αλλάξετε σύμφωνα με τις δικές σας ανάγκες.

Καταστάσεις των δύο φαναριών

Το σχέδιο

Με τη χρήση του Fritzing, υλοποιήσαμε το παρακάτω σχέδιο.

Ο κώδικας

Για τον κώδικα δεν χρειάστηκαν ιδιαίτερες εντολές, πέραν της pinMode και της digitalWrite

Δεν χρειάστηκε κάποια βιβλιοθήκη για την λειτουργία.

int green1 = 8;
int orange1 = 7;
int red1 = 6;

int green2 = 5;
int orange2 = 4;
int red2 = 3;

void setup() {
pinMode(green1, OUTPUT);
pinMode(orange1, OUTPUT);
pinMode(red1, OUTPUT);
pinMode(green2, OUTPUT);
pinMode(orange2, OUTPUT);
pinMode(red2, OUTPUT);
}

void loop() {
digitalWrite(green1, HIGH);
digitalWrite(orange1, LOW);
digitalWrite(red1, LOW);
digitalWrite(green2, LOW);
digitalWrite(orange2, LOW);
digitalWrite(red2, HIGH);
delay(10000);

digitalWrite(green1, LOW);
digitalWrite(orange1, HIGH);
digitalWrite(red1, LOW);
digitalWrite(green2, LOW);
digitalWrite(orange2, LOW);
digitalWrite(red2, HIGH);
delay(3000);

digitalWrite(green1, LOW);
digitalWrite(orange1, LOW);
digitalWrite(red1, HIGH);
digitalWrite(green2, LOW);
digitalWrite(orange2, LOW);
digitalWrite(red2, HIGH);
delay(1500);

digitalWrite(green1, LOW);
digitalWrite(orange1, LOW);
digitalWrite(red1, HIGH);
digitalWrite(green2, HIGH);
digitalWrite(orange2, LOW);
digitalWrite(red2, LOW);
delay(10000);

digitalWrite(green1, LOW);
digitalWrite(orange1, LOW);
digitalWrite(red1, HIGH);
digitalWrite(green2, LOW);
digitalWrite(orange2, HIGH);
digitalWrite(red2, LOW);
delay(3000);

digitalWrite(green1, LOW);
digitalWrite(orange1, LOW);
digitalWrite(red1, HIGH);
digitalWrite(green2, LOW);
digitalWrite(orange2, LOW);
digitalWrite(red2, HIGH);
delay(1500);
}

Το Βίντεο

Και τέλος, το βίντεο που υλοποιήσαμε την εφαρμογή, για να το αναπαράγετε.

Γίνετε συνδρομητές στο κανάλι του GetCert Tutorials. Αν χρειάζεστε επιπλέον βοήθεια, δείτε τα μαθήματά μας

16 Μαΐου 2021

0 responses on "Φανάρια οδικής κυκλοφορίας με Arduino"

Leave a Message

Η ηλ. διεύθυνση σας δεν δημοσιεύεται.

Template Design © VibeThemes. All rights reserved.