ESP8266 Khóa điện từ điều khiển bằng nút nhấn
Hướng dẫn này cho bạn cách sử dụng ESP8266 và một nút bấm để điều khiển khóa điện từ. Khi nút được nhấn, ESP8266 sẽ mở khóa cửa trong một khoảng thời gian (ví dụ 10 giây). Sau đó, cửa sẽ được khóa lại.
Chúng ta sẽ đi từ dễ sang khó bằng hai bước:
- ESP8266 điều khiển khóa điện từ bằng một nút nhấn không có debounce (dễ).
- ESP8266 điều khiển khóa điện từ bằng một nút nhấn có debounce (khó).
Phần cứng cần chuẩn bị
| 1 | × | ESP8266 NodeMCU ESP-12E | ||
| 1 | × | Recommended: ESP8266 NodeMCU ESP-12E (Uno-form) | ||
| 1 | × | USB Cable Type-A to Type-C (for USB-A PC) | ||
| 1 | × | USB Cable Type-C to Type-C (for USB-C PC) | ||
| 1 | × | Electromagnetic Lock | ||
| 1 | × | Relay | ||
| 1 | × | 12V Power Adapter | ||
| 1 | × | DC Power Jack | ||
| 1 | × | breadboard-mount Button with Cap | ||
| 1 | × | breadboard-mount Button Kit | ||
| 1 | × | Panel-mount Push Button | ||
| 1 | × | mô-đun nút nhấn | ||
| 1 | × | breadboard | ||
| 1 | × | dây jumper | ||
| 1 | × | (Khuyến nghị) Screw Terminal Expansion Board for ESP8266 | ||
| 1 | × | (Khuyến nghị) Power Splitter for ESP8266 Type-C |
Or you can buy the following kits:
| 1 | × | DIYables Sensor Kit (30 sensors/displays) | ||
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Về Nút và Khóa Điện Từ
Nếu bạn chưa quen với khóa điện từ và các nút bấm (bao gồm sơ đồ chân, nguyên lý hoạt động và lập trình), các bài hướng dẫn sau đây có thể giúp:
Sơ đồ đấu dây

This image is created using Fritzing. Click to enlarge image
Xem thêm Sơ đồ chân ESP8266 và Cách cấp nguồn cho ESP8266.
Mã ESP8266 - Điều khiển khóa điện từ bằng nút mà không cần lọc nhiễu
Hướng dẫn từng bước
Để bắt đầu với ESP8266 trên Arduino IDE, hãy làm theo các bước sau:
- Xem ESP8266 - Cài đặt phần mềm nếu đây là lần đầu bạn sử dụng ESP8266.
- Nối các thành phần như được thể hiện trong sơ đồ.
- Kết nối bo mạch ESP8266 với máy tính của bạn bằng cáp USB.
- Mở Arduino IDE trên máy tính của bạn.
- Chọn bo mạch ESP8266 phù hợp, ví dụ NodeMCU 1.0 (ESP-12E Module), và cổng COM tương ứng của nó.
- Kết nối một ESP8266 với máy tính bằng cáp USB.
- Mở Arduino IDE, chọn bo mạch và cổng phù hợp.
- Sao chép mã và mở nó trong Arduino IDE.
- Nhấn nút Upload trong Arduino IDE để biên dịch và tải mã lên ESP8266.
- Đưa tấm cổ từ lại gần nam châm điện.
- Nhấn nút một lần.
- Kiểm tra sự hút giữa tấm cổ từ và nam châm điện trong 10 giây.
Giải thích mã nguồn
Xem lời giải thích theo từng dòng được ghi trong các chú thích của mã nguồn!
※ Lưu ý:
Trong thực tế, mã được đề cập ở trên không phải lúc nào cũng hoạt động đúng. Để đảm bảo nó hoạt động đúng, chúng ta cần ESP8266 - Nút - Lọc nhiễu. Khử nhiễu cho nút bấm có thể gặp khó khăn đối với những người mới bắt đầu. May mắn thay, thư viện ezButton làm cho việc này trở nên đơn giản hơn.
Mã ESP8266 - Nút điều khiển Khóa điện từ với Chống nhiễu
Mục đích của khử nhiễu là gì? ⇒ Xem ESP8266 - Nút - Lọc nhiễu để hiểu tại sao khử nhiễu là cần thiết.
Hướng dẫn từng bước
- Nối các thành phần theo như sơ đồ.
- Kết nối bo mạch ESP8266 với máy tính của bạn bằng cáp USB.
- Mở Arduino IDE trên máy tính của bạn.
- Chọn bo mạch ESP8266 phù hợp, chẳng hạn (ví dụ NodeMCU 1.0 (ESP-12E Module)), và cổng COM tương ứng.
- Cài đặt thư viện ezButton. Tham khảo Cách làm để được hướng dẫn.
- Mở mã trong Arduino IDE và nhấp nút Upload để nạp nó lên ESP8266.
- Đưa tấm armature plate lại gần nam châm điện và nhấn nút một lần.
- Kiểm tra sự hút giữa tấm armature plate và nam châm điện trong 10 giây.
※ Lưu ý:
Trong đoạn mã ở trên, chúng ta đã sử dụng hàm delay. Do đó, không cần xử lý debounce cho nút nhấn. Tuy nhiên, chúng tôi vẫn cung cấp mã có debounce để phòng trường hợp bạn muốn làm thêm nhiều tác vụ mà không sử dụng hàm delay. Hãy xem Cách sử dụng millis() thay thế cho delay() để biết thêm thông tin.
Video Tutorial
Việc sản xuất video tốn rất nhiều thời gian. Nếu video hướng dẫn hữu ích cho việc học của bạn, hãy đăng ký kênh YouTube để ủng hộ. Nếu nhu cầu đủ cao, chúng tôi sẽ cố gắng làm thêm nhiều video.