Arduino Cảm biến nhiệt độ Rơ-le
Hướng dẫn này trình bày cách sử dụng Arduino và cảm biến nhiệt độ DS18B20 để điều khiển một rơ-le. Cụ thể, Arduino được lập trình để liên tục đo nhiệt độ bằng cảm biến DS18B20. Rơ-le sau đó được điều chỉnh theo các quy tắc sau:
- Nếu nhiệt độ vượt quá ngưỡng được xác định trước, Arduino sẽ bật rơ-le.
- Nếu nhiệt độ dưới ngưỡng, Arduino sẽ tắt rơ-le.
Rơ-le sau đó có thể kết nối với quạt, phần tử gia nhiệt, phần tử làm mát hoặc các thiết bị khác.
Phần cứng cần chuẩn bị
| 1 | × | Arduino Uno R3 | ||
| 1 | × | USB 2.0 cable type A/B (for USB-A PC) | ||
| 1 | × | USB 2.0 cable type C/B (for USB-C PC) | ||
| 1 | × | DS18B20 Temperature Sensor (WITH Adapter) | ||
| 1 | × | DS18B20 Temperature Sensor (WITHOUT Adapter) | ||
| 1 | × | Relay | ||
| 1 | × | DC Power Jack | ||
| 1 | × | dây jumper | ||
| 1 | × | (Khuyến nghị) Screw Terminal Block Shield for Arduino Uno | ||
| 1 | × | (Khuyến nghị) Breadboard Shield for Arduino Uno | ||
| 1 | × | (Khuyến nghị) Enclosure for Arduino Uno | ||
| 1 | × | (Khuyến nghị) Prototyping Base Plate & Breadboard Kit for Arduino UNO |
Or you can buy the following kits:
| 1 | × | DIYables STEM V3 Starter Kit (Arduino included) | ||
| 1 | × | DIYables Sensor Kit (30 sensors/displays) | ||
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Về Rơ-le và cảm biến nhiệt độ
Nếu bạn chưa biết về rơ-le và cảm biến nhiệt độ (bố trí chân, cách hoạt động, cách lập trình ...), hãy tìm hiểu chúng trong các bài hướng dẫn sau đây:
Sơ đồ đấu dây
- Sơ đồ nối dây với breadboard

This image is created using Fritzing. Click to enlarge image
- Sơ đồ nối dây kèm bộ đổi nguồn (khuyến nghị)

This image is created using Fritzing. Click to enlarge image
Chúng tôi đề xuất mua một cảm biến DS18B20 đi kèm với một bộ điều hợp dây để dễ kết nối. Bộ điều hợp có một điện trở tích hợp, loại bỏ nhu cầu sử dụng một điện trở riêng trong hệ thống dây dẫn.
Mã Arduino - Cảm biến nhiệt độ kích hoạt rơ-le
Hướng dẫn từng bước
- Thực hiện nối dây giữa Arduino, cảm biến nhiệt độ và rơ-le như sơ đồ ở trên.
- Kết nối Arduino với máy tính bằng cáp USB.
- Mở Arduino IDE, chọn board và cổng phù hợp.
- Đi tới biểu tượng Thư viện ở thanh bên trái của Arduino IDE.
- Tìm kiếm “DallasTemperature”, sau đó tìm thư viện DallasTemperature của Miles Burton.
- Nhấp nút Cài đặt để cài đặt thư viện DallasTemperature.

- Bạn sẽ được yêu cầu cài đặt các phụ thuộc của thư viện
- Nhấp vào nút Cài đặt Tất cả để cài đặt thư viện OneWire.

- Sao chép mã ở phía trên và mở bằng Arduino IDE
- Nhấn nút Tải lên trên Arduino IDE để nạp mã vào Arduino
- Điều chỉnh nhiệt độ quanh cảm biến nhiệt độ
- Xem sự thay đổi của rơ-le
- Xem kết quả trên Serial Monitor, nó trông như dưới đây:
Mã Arduino - Cảm biến nhiệt độ kích hoạt rơ-le với sai số
Trong quá trình vận hành, nhiệt độ có thể dao động lên hoặc xuống ngưỡng đã được xác định trước, dẫn đến sự thay đổi trạng thái thường xuyên và đột ngột ở rơ-le, điều này có thể gây ra các vấn đề vận hành ngoài dự tính. Để giải quyết vấn đề này, có thể bao gồm một biên độ dung sai cho ngưỡng. Đoạn mã dưới đây minh họa cách triển khai giải pháp này:
Đoạn mã được trình bày ở trên xác định ngưỡng 20°C và độ lệch cho phép 0,5°C. Các điều kiện sau đây áp dụng:
- Nếu nhiệt độ dưới 19,5°C, rơ le được tắt.
- Nếu nhiệt độ trên 20,5°C, rơ le được bật.
- Nếu nhiệt độ nằm giữa 19,5°C và 20,5°C, trạng thái của rơ le được giữ nguyên.