Πίνακας περιεχομένων:

Αυτόματο IoT Night Light Hall With ESP8266: 4 βήματα (με εικόνες)
Αυτόματο IoT Night Light Hall With ESP8266: 4 βήματα (με εικόνες)

Βίντεο: Αυτόματο IoT Night Light Hall With ESP8266: 4 βήματα (με εικόνες)

Βίντεο: Αυτόματο IoT Night Light Hall With ESP8266: 4 βήματα (με εικόνες)
Βίντεο: How To Make Simple Automatic Night Lamp With BC547 Transistor LED Night Light LDR Project #ldr 2024, Νοέμβριος
Anonim
Image
Image
Συγκεντρώστε όλα τα απαραίτητα υλικά
Συγκεντρώστε όλα τα απαραίτητα υλικά

Ξεκίνησα αυτό το έργο εμπνευσμένο από ένα φως σκάλας από μια άλλη διδακτική θέση. Η διαφορά είναι ότι ο εγκέφαλος του κυκλώματος χρησιμοποιεί ESP8266, πράγμα που σημαίνει ότι θα έρθει μια συσκευή IoT.

Αυτό που έχω στο μυαλό μου είναι να έχω το φως του διαδρόμου για τα παιδιά, όταν βγαίνουν από το δωμάτιό τους, φωτίζει το μονοπάτι που πηγαίνει στο μπάνιο. Για αυτό χρησιμοποιώ το ESP8266 για να ανιχνεύσω την κίνηση από τον αισθητήρα PIR. Χρησιμοποίησα 2 αισθητήρες PIR, έναν σε κάθε άκρο για το ταξίδι της επιστροφής. Δεδομένου ότι το ESP8266 είναι ικανό για IoT, τότε μπορώ επίσης να το χρησιμοποιήσω για να ανιχνεύσω εάν υπάρχει κάποια κίνηση στο διάδρομο, δημοσιεύοντας μήνυμα MQTT στον Home Assistant.

Βήμα 1: Συγκεντρώστε όλα τα απαραίτητα υλικά

Συγκεντρώστε όλα τα απαραίτητα υλικά
Συγκεντρώστε όλα τα απαραίτητα υλικά
Συγκεντρώστε όλα τα απαραίτητα υλικά
Συγκεντρώστε όλα τα απαραίτητα υλικά

Για αυτό το έργο χρησιμοποιώ τα ακόλουθα υλικά:

- ESP8266

- Αισθητήρας PIR

- Αντίσταση 330 Ohm που λειτουργεί ως περιοριστής ρεύματος

- Λωρίδα LED με δυνατότητα διεύθυνσης 5 V (WS2812B)

- Ηλεκτρικός αγωγός για να στεγάσει τα φώτα

Βήμα 2: Συνδέστε το κύκλωμα

Συνδέστε το κύκλωμα
Συνδέστε το κύκλωμα
Συνδέστε το κύκλωμα
Συνδέστε το κύκλωμα
Συνδέστε το κύκλωμα
Συνδέστε το κύκλωμα

Ουσιαστικά συνδέουμε τη γραμμή δεδομένων της λωρίδας LED στην καρφίτσα D2 ή ESP8266 μέσω αντίστασης 330 Ohm για να περιορίσουμε το ρεύμα. Λάβετε υπόψη ότι η τάση λειτουργίας του ESP8266 είναι 3,3V.

Οι αισθητήρες PIR συνδέονται με τα pin D5 και D6, ένα για τον αριστερό αισθητήρα και ένα για το δεξί. Μην ξεχάσετε να συνδέσετε την τροφοδοσία για PIR και λωρίδα LED σε 3.3V σε αυτή την περίπτωση.

Βήμα 3: Ανεβάστε τον κώδικα

Ανεβάστε τον Κώδικα
Ανεβάστε τον Κώδικα
Ανεβάστε τον Κώδικα
Ανεβάστε τον Κώδικα

Για να λειτουργήσει ο κώδικας θα χρειαστείτε την ακόλουθη βιβλιοθήκη:

- Βιβλιοθήκη "FastLed" του Daniel Garcia, σε αυτήν την περίπτωση έχω εγκατεστημένη την έκδοση 3.3.3

- TimeLib

- ESP8266Wifi

- ESP8266WebServer

- ArduinoOTA

Εάν δεν τα έχετε ήδη εγκαταστήσει, μπορείτε να τα εγκαταστήσετε από το "Tools-> Manage Library" στη διεπαφή Arduino.

Στην επόμενη ενότητα του κώδικα

#define FASTLED_ESP8266_D1_PIN_ORDER#περιλαμβάνει "FastLED.h" FASTLED_USING_NAMESPACE

#ορίστε NUM_LEDS 30

#define LEDS_PER_STAIR 2 // Αριθμός οδηγήσεων ανά σκάλα. Δεν έχει ακόμη τροποποιηθεί - μόνο αξιοσημείωτο #define BRIGHTNESS 120 // 0… 255 (χρησιμοποιείται στο fade7) #define PIN_LED 04 // LED pin pin (GPIO4) D2 #define PIN_PIR_DOWN 14 // PIR Downstairs Pin (GPI14) D5 #define PIN_PIR_UP 12 // PIR Πάνω καρφίτσα (GPI12) D6

Μπορείτε να διαμορφώσετε τον Αριθμό LED στη λωρίδα LED σας, επίσης τη σύνδεση του LEDStrip εάν αποφασίσετε να το συνδέσετε σε διαφορετικό πείρο και επίσης τον πείρο αισθητήρα PIR εάν αποφασίσετε να το συνδέσετε σε διαφορετικό πείρο του MCU.

Η παραπάνω διαμόρφωση βρίσκεται στο αρχείο "ledsettings.h".

Μπορείτε να κατεβάσετε τον πλήρη πηγαίο κώδικα από τον παρακάτω σύνδεσμο.

Μόλις μπορέσετε να μεταγλωττίσετε τον κώδικα με επιτυχία, μπορείτε να τον ανεβάσετε στο ESP8266.

Βήμα 4: Δοκιμή και δοκιμή και Αντιμετώπιση προβλημάτων

Δοκιμή και δοκιμή και αντιμετώπιση προβλημάτων
Δοκιμή και δοκιμή και αντιμετώπιση προβλημάτων
Δοκιμή και δοκιμή και αντιμετώπιση προβλημάτων
Δοκιμή και δοκιμή και αντιμετώπιση προβλημάτων

Εάν όλα πάνε καλά, θα πρέπει να έχετε ένα φώτα στο διάδρομο για τα οποία μπορείτε να είστε περήφανοι. Όταν ενεργοποιείτε το κύκλωμα για πρώτη φορά, η λωρίδα LED θα ανάψει με κάποια σειρά ουράνιου τόξου. Στη συνέχεια, το δοχείο ESP8266 θα λειτουργήσει ως σημείο πρόσβασης (AP) για να σας επιτρέψει να διαμορφώσετε τη σύνδεση WiFi.

Εάν χρησιμοποιείτε τον κωδικό που έχω, θα πρέπει να μπορείτε να δείτε το "ESP-HallLight" ως το σημείο πρόσβασης. Για ασφάλεια έχω βάλει προστασία με κωδικό πρόσβασης για το AP. Ο προεπιλεγμένος κωδικός πρόσβασης είναι "arduino", μπορείτε να το αλλάξετε στο αρχείο settings.h, στην ακόλουθη ενότητα.

#define CLOCK_NAME "ESP-HallLight"

#define WIFI_AP_NAME CLOCK_NAME #define WIFI_APPSK "arduino" // προεπιλεγμένος κωδικός πρόσβασης AP

Μόλις συνδεθείτε με επιτυχία χρησιμοποιώντας ένα κινητό τηλέφωνο ή φορητό υπολογιστή μέσω WiFi, θα πρέπει να μπορείτε να κατευθύνετε το πρόγραμμα περιήγησής σας στο 192.168.4.1, θα πρέπει να δείτε την οθόνη ρυθμίσεων όπως φαίνεται στην παραπάνω εικόνα. Μπορείτε τώρα να εισαγάγετε τις ρυθμίσεις WiFi και μόλις εισαγάγετε το ESP8266 θα επανεκκινήσετε και θα προσπαθήσετε να συνδεθείτε στο WiFi σας. Εάν είναι σε θέση να συνδεθεί με επιτυχία, δεν θα βλέπετε πλέον το σημείο πρόσβασης "ESP-HallLight".

Εάν εξακολουθείτε να είστε συνδεδεμένοι στη διεπαφή Arduino, μπορείτε να το παρακολουθείτε μέσω της σειριακής οθόνης.

Σημείωση: Δεν χρειάζεται να διαμορφώσετε το WiFi για να λειτουργούν οι αισθητήρες, θα πρέπει να λειτουργεί μετά από μερικά δευτερόλεπτα όταν τα αρχικά φώτα είναι σβηστά.

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

Κατά την πρώτη μου κατασκευή συνδέω κατά λάθος το λάθος άκρο της λωρίδας LED, με αποτέλεσμα να μην ανάψει κανένα LED.

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

Κάποιοι μετά από σκέψη θα ήταν να προσθέσουμε επιπλέον χαρακτηριστικά όπως:

  • Έχοντας μια διεπαφή για να γυρίσετε τα LED ανεξάρτητα από τον αισθητήρα, παρόμοια με την προηγούμενη ανάρτησή μου σχετικά με την ένδειξη λωρίδας LED με ελεγχόμενη WiFi ή ένδειξη κατάστασης λωρίδας LED.
  • Προσθέστε πρόσθετη λειτουργία για την ανάρτηση μηνύματος MQTT στο Home Assistant παρόμοια με την ακόλουθη ανάρτηση.

Συνιστάται: