ESP32 Khóa Solenoid
Khóa Solenoid còn được gọi là Khóa Điện Tử (Electric Strike Lock). Nó có thể được sử dụng để khóa/mở khóa tủ, ngăn kéo, cửa ra vào. Hướng dẫn này sẽ chỉ bạn cách sử dụng ESP32 để điều khiển khóa solenoid.
Một giải pháp thay thế cho Khóa Solenoid là Khóa Điện Từ. Bạn có thể tìm hiểu thêm trong ESP32 - Khóa Điện Từ (Electromagnetic Lock)
Linh Kiện Cần Thiết
| 1 | × | mô-đun phát triển ESP-WROOM-32 | ||
| 1 | × | Alternatively, ESP32 Uno-form board | ||
| 1 | × | Alternatively, ESP32 S3 Uno-form board | ||
| 1 | × | Cáp USB Type-C | ||
| 1 | × | Khóa Solenoid | ||
| 1 | × | Relay | ||
| 1 | × | Adapter Nguồn 12V | ||
| 1 | × | breadboard | ||
| 1 | × | Dây Jumper | ||
| 1 | × | (Tùy chọn) DC Power Jack | ||
| 1 | × | (Khuyến nghị) Screw Terminal Expansion Board for ESP32 | ||
| 1 | × | (Khuyến nghị) Breakout Expansion Board for ESP32 | ||
| 1 | × | (Khuyến nghị) Power Splitter for ESP32 |
Or you can buy the following kits:
| 1 | × | DIYables ESP32 Starter Kit (ESP32 included) | ||
| 1 | × | DIYables Sensor Kit (30 sensors/displays) | ||
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Về Khóa Solenoid
Sơ Đồ Chân
Khóa Solenoid bao gồm hai dây:
- Dây dương (+) (màu đỏ): cần được kết nối với nguồn 12V DC
- Dây âm (-) (màu đen): cần được kết nối với GND của nguồn DC

Cách Thức Hoạt Động
- Khi Khóa Solenoid được cấp nguồn, then khóa (strike) được đẩy ra ⇒ cửa được khóa
- Khi Khóa Solenoid KHÔNG được cấp nguồn, then khóa (strike) được rút vào ⇒ cửa được mở khóa
※ Lưu ý:
Khóa solenoid thường sử dụng nguồn 12V, 24V hoặc 48V. Do đó, chúng ta KHÔNG THỂ kết nối khóa solenoid trực tiếp với chân ESP32. Chúng ta phải kết nối nó với chân ESP32 thông qua relay
Nếu chúng ta kết nối khóa solenoid với relay (chế độ thường mở):
- Khi relay mở, cửa được mở khóa
- Khi relay đóng, cửa được khóa
Bằng cách kết nối ESP32 với relay, chúng ta có thể lập trình cho ESP32 để điều khiển khóa solenoid. Tìm hiểu thêm về relay trong ESP32 - Relay.
Sơ Đồ Đấu Nối
- Cách kết nối ESP32 và khóa solenoid sử dụng breadboard (cấp nguồn qua cáp USB)

This image is created using Fritzing. Click to enlarge image
Nếu bạn chưa rõ cách cấp nguồn cho ESP32 và các linh kiện khác, xem: Cách Cung Cấp Nguồn Điện Cho ESP32.
- Cách kết nối ESP32 và khóa solenoid sử dụng breadboard (cấp nguồn qua chân Vin)

This image is created using Fritzing. Click to enlarge image
- Cách kết nối ESP32 và khóa solenoid sử dụng bo mạch breakout với đầu nối vít (cấp nguồn qua cáp USB)

- Cách kết nối ESP32 và khóa solenoid sử dụng bo mạch breakout với đầu nối vít (cấp nguồn qua chân Vin)

Mã Nguồn ESP32
Đoạn code dưới đây sẽ khóa/mở khóa cửa mỗi 5 giây
Các Bước Thực Hiện
- Nếu đây là lần đầu tiên bạn sử dụng ESP32, hãy xem ESP32 - Cài Đặt Phần Mềm.
- Thực hiện đấu nối như hình ảnh trên.
- Kết nối bo mạch ESP32 với PC của bạn qua cáp micro USB
- Mở Arduino IDE trên PC của bạn.
- Chọn đúng bo mạch ESP32 (ví dụ: ESP32 Dev Module) và cổng COM.
- Sao chép đoạn code trên và dán vào Arduino IDE
- Biên dịch và tải code lên bo mạch ESP32 bằng cách nhấn nút Upload trên Arduino IDE
- Quan sát trạng thái then khóa
ESP32 - Nút Nhấn Điều Khiển Khóa Solenoid
Xem ESP32 - Button điều khiển Solenoid Lock
※ Lưu ý:
Trong đoạn code trên, chúng tôi đã sử dụng hàm delay. Do đó, chúng ta không cần phải chống dội cho nút nhấn. Tuy nhiên, chúng tôi vẫn cung cấp code có chống dội phòng trường hợp bạn muốn thực hiện thêm các tác vụ khác mà không sử dụng hàm delay. Xem Cách sử dụng millis() thay cho delay()
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.