Mục lục:

Đèn đêm tự động IoT Hallway với ESP8266: 4 bước (có hình ảnh)
Đèn đêm tự động IoT Hallway với ESP8266: 4 bước (có hình ảnh)

Video: Đèn đêm tự động IoT Hallway với ESP8266: 4 bước (có hình ảnh)

Video: Đèn đêm tự động IoT Hallway với ESP8266: 4 bước (có hình ảnh)
Video: Slot 2 Giới thiệu tinkercad 2024, Tháng mười một
Anonim
Image
Image
Thu thập tất cả các tài liệu cần thiết
Thu thập tất cả các tài liệu cần thiết

Tôi bắt đầu dự án này lấy cảm hứng từ đèn cầu thang từ một bài viết hướng dẫn khác. Sự khác biệt là bộ não của mạch đang sử dụng ESP8266, có nghĩa là nó sẽ là một thiết bị IoT.

Điều tôi tâm niệm là phải trang bị đèn ngủ ở hành lang cho bọn trẻ, khi chúng bước ra khỏi phòng, nó sẽ sáng cả lối đi vào phòng tắm. Đối với điều này, tôi đang sử dụng ESP8266 để phát hiện chuyển động từ cảm biến PIR. Tôi đã sử dụng 2 cảm biến PIR, một cảm biến ở mỗi đầu cho chuyến trở về. Do ESP8266 có khả năng IoT, nên tôi cũng có thể sử dụng điều này để phát hiện xem có bất kỳ chuyển động nào trên hành lang hay không bằng cách đăng thông báo MQTT lên Home Assistant.

Bước 1: Thu thập tất cả các vật liệu cần thiết

Thu thập tất cả các tài liệu cần thiết
Thu thập tất cả các tài liệu cần thiết
Thu thập tất cả các tài liệu cần thiết
Thu thập tất cả các tài liệu cần thiết

Đối với dự án này, tôi đang sử dụng các tài liệu sau:

- ESP8266

- Cảm biến PIR

- Điện trở 330 Ohm hoạt động như bộ giới hạn dòng điện

- Dải LED địa chỉ 5 V (WS2812B)

- Ống luồn dây điện nhà đèn

Bước 2: Kết nối mạch

Kết nối mạch
Kết nối mạch
Kết nối mạch
Kết nối mạch
Kết nối mạch
Kết nối mạch

Thực chất chúng ta đang kết nối dải LED Data line với chân D2 hoặc ESP8266 thông qua điện trở 330 Ohm để hạn chế dòng điện. Hãy nhớ rằng điện áp hoạt động của ESP8266 là 3,3V.

Các cảm biến PIR được kết nối với Pin D5 và D6, một cho cảm biến bên trái và một cho bên phải. Đừng quên kết nối nguồn cho PIR và dải LED thành 3,3V trong trường hợp này.

Bước 3: Tải lên mã

Tải lên mã
Tải lên mã
Tải lên mã
Tải lên mã

Để mã hoạt động, bạn sẽ cần thư viện sau:

- Thư viện "FastLed" của Daniel Garcia, trong trường hợp này, tôi đã cài đặt phiên bản 3.3.3

- TimeLib

- ESP8266Wifi

- ESP8266WebServer

- ArduinoOTA

Nếu bạn chưa cài đặt chúng, bạn có thể cài đặt chúng từ "Công cụ-> Quản lý Thư viện" trong giao diện Arduino.

Trong phần sau của mã

# xác định FASTLED_ESP8266_D1_PIN_ORDER # bao gồm "FastLED.h" FASTLED_USING_NAMESPACE

#define NUM_LEDS 30

#define LEDS_PER_STAIR 2 // Số lượng đèn Led trên mỗi cầu thang. Chưa thể thay đổi hiện tại - chỉ đáng chú ý # xác định BRIGHTNESS 120 // 0… 255 (sử dụng trong fade7) #define PIN_LED 04 // Chân dữ liệu LED (GPIO4) D2 #define PIN_PIR_DOWN 14 // PIR Pin ở tầng dưới (GPI14) D5 #define PIN_PIR_UP 12 // Chân cầu thang PIR (GPI12) D6

Bạn có thể định cấu hình Số lượng LED trong dải LED của mình, cũng là kết nối của LEDStrip nếu bạn quyết định kết nối nó với một chân khác và cả chân cảm biến PIR nếu bạn quyết định kết nối nó với một chân khác của MCU.

Cấu hình trên nằm trong tệp "ledsettings.h".

Bạn có thể tải xuống toàn bộ mã nguồn từ liên kết sau.

Khi bạn có thể biên dịch mã thành công, bạn có thể tải nó lên ESP8266.

Bước 4: Kiểm tra và Kiểm tra và Khắc phục sự cố

Kiểm tra và Kiểm tra và Khắc phục sự cố
Kiểm tra và Kiểm tra và Khắc phục sự cố
Kiểm tra và Kiểm tra và Khắc phục sự cố
Kiểm tra và Kiểm tra và Khắc phục sự cố

Nếu mọi việc suôn sẻ, bạn sẽ có một Đèn hành lang hoạt động mà bạn có thể tự hào. Khi bạn cấp nguồn cho mạch lần đầu tiên, Dải LED sẽ sáng lên với một số chuỗi cầu vồng. Sau đó, ESP8266 có thể sẽ hoạt động như một điểm truy cập (AP) để cho phép bạn định cấu hình kết nối WiFi.

Nếu bạn đang sử dụng mã mà tôi có, bạn sẽ có thể thấy "ESP-HallLight" làm điểm truy cập. Để bảo mật, tôi đã đặt bảo vệ bằng mật khẩu cho AP. Mật khẩu mặc định là "arduino", bạn có thể thay đổi mật khẩu này trong tệp settings.h, trong phần sau.

#define CLOCK_NAME "ESP-HallLight"

#define WIFI_AP_NAME CLOCK_NAME #define WIFI_APPSK "arduino" // mật khẩu AP mặc định

Sau khi kết nối thành công bằng điện thoại di động hoặc máy tính xách tay qua WiFi, bạn có thể trỏ trình duyệt của mình đến địa chỉ 192.168.4.1, bạn sẽ thấy màn hình cài đặt như trong hình trên. Bây giờ bạn có thể nhập cài đặt WiFi của mình và sau khi nhập ESP8266 sẽ khởi động lại và cố gắng kết nối với WiFi của bạn. Nếu nó có thể kết nối thành công, bạn sẽ không còn thấy điểm truy cập "ESP-HallLight".

Nếu bạn vẫn kết nối với giao diện Arduino, bạn có thể theo dõi điều này thông qua màn hình nối tiếp.

Lưu ý: Bạn không phải định cấu hình WiFi để các cảm biến hoạt động, nó sẽ hoạt động sau vài giây khi đèn ban đầu tắt.

Để kiểm tra, bạn có thể thử đi bộ từ một bên hoặc vẫy tay, đèn sẽ sáng theo hướng di chuyển, nếu ngược lại thì bạn cần hoán đổi cảm biến trái phải trong mã.

Trong lần xây dựng đầu tiên, tôi đã vô tình kết nối sai đầu của dải đèn LED, dẫn đến không có đèn LED nào sáng lên.

Tôi hy vọng bạn thích bản dựng này, nếu điều này hữu ích, hãy bình chọn cho cuộc thi. Nếu bạn có bất kỳ câu hỏi nào, đừng ngần ngại để lại cho tôi một ghi chú, và tôi sẽ giải đáp ngay khi có thể.

Một số sau khi suy nghĩ sẽ thêm các tính năng bổ sung như:

  • Có giao diện để bật đèn LED độc lập với cảm biến, tương tự như bài đăng trước của tôi về Dải đèn LED được điều khiển bằng WiFi hoặc chỉ báo Trạng thái dải LED.
  • Thêm tính năng đăng tin MQTT lên Home Assistant tương tự như bài sau.

Đề xuất: