ESP8266 Hệ thống sưởi ấm
Trong bài hướng dẫn này, chúng ta sẽ sử dụng ESP8266, phần tử gia nhiệt và cảm biến nhiệt độ DS18B20 để điều khiển nhiệt độ của một căn phòng.
- Khi nhiệt độ quá thấp, ESP8266 kích hoạt bộ phận gia nhiệt.
- Khi nhiệt độ ấm, ESP8266 tắt bộ phận gia nhiệt.
Ngoài ra, mã có thể được điều chỉnh cho các cảm biến nhiệt độ khác như DHT11, DHT22 hoặc LM35 thay vì cảm biến DS18B20.
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 | × | DS18B20 Temperature Sensor (WITH Adapter) | ||
| 1 | × | DS18B20 Temperature Sensor (WITHOUT Adapter) | ||
| 1 | × | 4.7 kΩ Resistor | ||
| 1 | × | Relay | ||
| 1 | × | Heating Element | ||
| 1 | × | 12V Power Adapter | ||
| 1 | × | DC Power Jack | ||
| 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ề Phần tử gia nhiệt và Cảm biến nhiệt độ DS18B20
Thiết bị gia nhiệt được sử dụng trong hướng dẫn này yêu cầu nguồn cấp 12V. Nếu thiết bị gia nhiệt được cấp nguồn, nó sẽ sinh nhiệt. Để điều khiển thiết bị gia nhiệt bằng ESP8266, cần dùng một rơ-le làm trung gian.
Nếu bạn chưa quen với cảm biến nhiệt độ và các phần tử làm nóng (bản đồ chân, hoạt động, lập trình, v.v.), các bài hướng dẫn dưới đây có thể giúp ích:
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ách hệ thống hoạt động
- ESP8266 theo dõi nhiệt độ từ cảm biến nhiệt độ.
- Nếu nhiệt độ giảm xuống dưới một ngưỡng nhất định, ESP8266 sẽ kích hoạt các phần tử gia nhiệt.
- Khi nhiệt độ vượt quá một ngưỡng nhất định, ESP8266 sẽ vô hiệu hóa các phần tử gia nhiệt.
Vòng lặp được lặp lại liên tục.
Mã ESP8266 cho hệ thống làm mát với cảm biến DS18B20
Trong đoạn mã ở trên, khi nhiệt độ thấp hơn 15°C, ESP8266 sẽ kích hoạt phần tử làm nóng. Phần tử làm nóng sẽ vẫn bật cho đến khi nhiệt độ tăng lên trên 20°C.
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:
- Hãy xem hướng dẫn 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 linh kiện theo sơ đồ.
- Kết nối bảng 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 bảng ESP8266 phù hợp, chẳng hạn (ví dụ: NodeMCU 1.0 (ESP-12E Module)), và cổng COM tương ứng.
- Kết nối ESP8266 của bạn với máy tính bằng cáp USB
- Mở Arduino IDE và chọn đúng bảng và cổng
- Nhấp vào biểu tượng Libraries ở thanh bên trái của Arduino IDE.
- Tìm kiếm “Dallas”, sau đó tìm thư viện DallasTemperature của Miles Burton.
- Nhấn nút Install để cài đặt thư viện DallasTemperature.

- Bạn sẽ được yêu cầu cài đặt phụ thuộc. Nhấp nút Install All để cài đặt thư viện OneWire.

- Sao chép mã ở trên và mở nó bằng Arduino IDE.
- Nhấp vào nút Tải lên trong Arduino IDE để biên dịch và tải mã lên ESP8266.
- Thay đổi nhiệt độ của môi trường quanh cảm biến.
- Kiểm tra nhiệt độ của phần gia nhiệt và của căn phòng.
Kiến thức nâng cao
Kỹ thuật được đề cập ở trên là bộ điều khiển bật-tắt, còn được gọi là một signaller hoặc bộ điều khiển 'bang-bang'. Phương pháp này rất dễ triển khai.
Có một phương pháp tiếp cận thay thế được biết đến với tên bộ điều khiển PID. Phương pháp điều khiển nhiệt độ này ổn định hơn, nhưng phức tạp và khó hiểu cũng như khó áp dụng vào thực tế. Do đó, bộ điều khiển PID không được sử dụng rộng rãi.