Αυτόματο Φως Νύχτας

 Arduino Οδηγός για Αρχάριους - Μάθημα 3: Αυτόματο Φως Νύχτας (Βήμα - Βήμα)

Τι θα χρειαστείτε: 

  • Ένα Arduino (Uno κατά προτίμηση)
  • Breadboard
  • Καλώδια σύνδεσης (Jumper Wires)
  • LED (ό,τι χρώμα θέλετε)
  • Αντίσταση για led (220Ω - 330Ω)
  • Αντίσταση για LDR(10kΩ ή 1kΩ)
  • LDR Sensor

Κατασκευή:

Βήμα 1:

Συνδέουμε δύο καλώδια:

  • Το ένα από το GND του Arduino στο - του Breadboard
  • Το άλλο από το 5V του Arduino στο + του Breadboard

Βήμα 2:

Συνδέουμε το μικρό ποδαράκι του LED (κάθοδος, -) στο - του Breadboard με ένα καλώδιο.

Βήμα 3:

Συνδέουμε μία άκρη της αντίστασης στο ίδιο σημείο με το μεγάλο ποδαράκι του LED (άνοδος, +).

Βήμα 4:

Συνδέουμε την άλλη άκρη της αντίστασης με ένα καλώδιο στο pin 5 του Arduino.

Βήμα 5:

Συνδέουμε την μία άκρη του αισθητήρα στο + του Breadboard με ένα καλώδιο.

Βήμα 6:

Συνδέουμε την άλλη άκρη με ένα καλώδιο στο - του Breadboard με ένα καλώδιο.

Βήμα 7:

Συνδέουμε στο ίδιο πόδι το ένα ποδαράκι της αντίστασης και στο άλλο ποδαράκι της αντίστασης το συνδέουμε με ένα καλώδιο στο A0 του Arduino.

Τελικό Κύκλωμα:

Προγραμματισμός:

void setup()
{
  pinMode(A0, INPUT);
  pinMode(5, OUTPUT);
}

void loop()
{
  if (analogRead(A0) < 500) {
    digitalWrite(5, HIGH);
  } else {
    digitalWrite(5, LOW);
  }
  delay(10); 
}

Ανάλυση κώδικα, γραμμή-γραμμή:

Γραμμή    Εξήγηση
void setup(){                                Ανοίγει η συνάρτηση setup(), όπου γίνονται οι αρχικές ρυθμίσεις.

pinMode(A0, INPUT);           Ορίζει το pin A0 ως είσοδο (INPUT).

pinMode(5, OUTPUT);           Ορίζει το pin 5 ως έξοδο (OUTPUT).

}                                                    Κλείνει τη συνάρτηση setup().

void loop(){                                  Ανοίγει η loop(), η οποία εκτελείται συνεχώς.

if (analogRead(A0) < 500) {        Διαβάζει την αναλογική τιμή από το A0. Αν η τιμή είναι 
μικρότερη από 500, τότε εκτελεί τον κώδικα μέσα στις αγκύλες                                                  

digitalWrite(5, HIGH);                 Ανάβει τη συσκευή στο pin 5 (LED).

} else {                                          Αν η προηγούμενη συνθήκη δεν ισχύει (δηλαδή το analogRead(A0) 
είναι 500 μεγαλύτερο), εκτελείται ο παρακάτω κώδικας.                                                      

digitalWrite(5, LOW);                  Σβήνει τη συσκευή στο pin 5.

}                             Κλείνει το if-else.

delay(10);                                      Περιμένει 10 milliseconds πριν την επόμενη εκτέλεση του loop(),  
για σταθερότητα.

}                                                    Κλείνει τη συνάρτηση loop().

🔁 Ο κώδικας εκτελείται επαναλαμβανόμενα: Το LED ανάβει θα ανάβει όταν υπάρχει σκοτάδι.
✅ Συμπέρασμα:

Μόλις ολοκληρώσετε αυτή την άσκηση, θα έχετε κατανοήσει:

✔️ Πώς να συνδέετε ένα LDR σε Arduino
✔️ Πώς να χρησιμοποιείτε το if else, analogRead
✔️ Πώς να γράφετε βασικούς αυτοματισμούς στο Arduino

🚀 Συνέχισε να πειραματίζεσαι! Μπορείς να δοκιμάσεις να αλλάξεις τις τιμές κατωφλίου (500) για να προσαρμόσεις την ευαισθησία του αισθητήρα! 😉


  





Σχόλια

  1. Αυτό βγάζει αρκετό φως

    ΑπάντησηΔιαγραφή
  2. Μπορούμε να το κάνουμε να βγάζει διάφορα χρώματα

    ΑπάντησηΔιαγραφή
    Απαντήσεις
    1. Καλησπέρα. Ναι και βέβαια απλά θέλει ένα RGB led και αλλάζει η σύνδεση και ο προγραμματισμός. Μπορείς να στείλεις μήνυμα στην φόρμα επικοινωνίας και να σου απαντήσουμε στο email σου για να έχεις έτοιμο κώδικα και να δεις την συνδεση

      Διαγραφή
  3. Σας ευχαριστώ πολύ

    ΑπάντησηΔιαγραφή

Δημοσίευση σχολίου

Δημοφιλείς αναρτήσεις από αυτό το ιστολόγιο

🚀 Διαγωνισμός Ρομποτικής & Αυτοματισμού! 🤖

🚗🤖 Φτιάξε το Δικό σου Μίνι Ρομποτικό Αυτοκίνητο με Arduino!