ESP8266 Công tắc giới hạn
Bài hướng dẫn này hướng dẫn bạn cách sử dụng ESP8266 với công tắc giới hạn. Cụ thể, chúng ta sẽ học:
- Cách kết nối ESP8266 với công tắc giới hạn.
- Cách lập trình ESP8266 để đọc trạng thái của công tắc giới hạn.
- Cách lập trình ESP8266 để kiểm tra xem công tắc giới hạn có bị kích hoạt hay không.

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 | × | Limit Switch (KW12-3) | ||
| 1 | × | Limit Switch (V-153-1C25) | ||
| 1 | × | Limit Switch (V-155-1C25) | ||
| 1 | × | Limit Switch (V-156-1C25) | ||
| 1 | × | Wires | ||
| 1 | × | (Tùy chọn) Heat Shrink Tubing | ||
| 1 | × | (Tùy chọn) Soldering Iron | ||
| 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ề công tắc hành trình
Nó được gọi là Công tắc giới hạn vì mục đích chính của nó là phát hiện khi một vật di chuyển đã đạt tới giới hạn.
Sơ đồ chân của công tắc giới hạn
Có nhiều loại công tắc giới hạn khác nhau, nhưng hai loại được ưa chuộng nhất là KW12-3 và V-156-1C25. Mỗi loại trong số này có ba chân:
- C: Đây là chân chung và được sử dụng cho cả hai chế độ mở thông thường và đóng thông thường.
- NO: Đây là chân mở thông thường và chỉ được sử dụng ở chế độ mở thông thường.
- NC: Đây là chân đóng thông thường và chỉ được sử dụng ở chế độ đóng thông thường.

Cách hoạt động
Mặc dù công tắc giới hạn có ba chân, một ứng dụng thông dụng thường chỉ sử dụng hai chân: chân C và một trong hai chân còn lại. Do đó, có bốn cách sử dụng công tắc giới hạn khác nhau. Dưới đây là bảng nối dây cho công tắc giới hạn và trạng thái đọc trên ESP8266 cho cả bốn phương pháp:
| C pin | NO pin | NC pin | ESP8266 Input Pin's State | |
|---|---|---|---|---|
| 1 | GND | ESP8266 Input Pin (with pull-up) | not connected | HIGH when untouched, LOW when touched |
| 2 | GND | not connected | ESP8266 Input Pin (with pull-up) | LOW when untouched, HIGH when touched |
| 3 | VCC | ESP8266 Input Pin (with pull-down) | not connected | LOW when untouched, HIGH when touched |
| 4 | VCC | not connected | ESP8266 Input Pin (with pull-down) | HIGH when untouched, LOW when touched |
Đối với mỗi phương pháp, chúng ta có thể tráo đổi giữa chân GND và chân đầu vào của ESP8266. Do đó có tám cách kết nối ESP8266 với một công tắc giới hạn.
Chúng ta phải chọn một trong bốn phương án được đưa ra. Phần còn lại của bài hướng dẫn sẽ sử dụng phương pháp đầu tiên.
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.
Để có một kết nối dây điện an toàn và đáng tin cậy, chúng tôi đề xuất sử dụng một Bút hàn để hàn các dây và các chân của công tắc giới hạn lại với nhau. Sau đó, phủ kết nối bằng Ống co nhiệt để tăng thêm an toàn.
ESP8266 Mã - Công tắc giới hạn
Giống như một nút nhấn, việc khử rung cũng cần thiết cho một công tắc giới hạn (để biết thêm thông tin, xem Tại sao cần khử rung cho nút/công tắc giới hạn?). Điều này có thể làm cho việc lập trình trở nên phức tạp. May mắn là thư viện ezButton hỗ trợ chức năng khử rung và có một điện trở kéo lên nội bộ, điều này làm cho việc lập trình nút dễ dàng hơn.
※ Lưu ý:
Có hai ứng dụng phổ biến với công tắc giới hạn:
- Đầu tiên: nếu công tắc ở trạng thái ĐÃ CHẠM, một hành động nhất định nên được thực hiện. Ngược lại, nếu đầu vào ở trạng thái CHƯA CHẠM, một hành động khác nên được thực hiện.
- Thứ hai: nếu công tắc được chuyển từ CHƯA CHẠM sang ĐÃ CHẠM (hoặc ngược lại), một hành động cụ thể nên được thực thi.
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 hướng dẫn thiết lập môi trường cho ESP8266 trên Arduino IDE tại ESP8266 - Cài đặt phần mềm nếu đây là lần đầu tiên 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 board 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 board ESP8266 phù hợp, ví dụ NodeMCU 1.0 (ESP-12E Module), và cổng COM tương ứng.
- Thực hiện dây kết nối như chỉ ra trong sơ đồ.
- Kết nối ESP8266 với máy tính bằng cáp USB.
- Mở Arduino IDE.
- Cài đặt thư viện ezButton, hướng dẫn có thể tham khảo tại đây.
- Chọn board và cổng đúng.
- Nhấn nút Upload trên Arduino IDE để biên dịch và tải mã lên ESP8266.
- Nhấn và thả công tắc giới hạn.
- Kiểm tra kết quả trên Serial Monitor.
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.