DS18B20 là cảm biến nhiệt độ có giao thức 1-wire được tích hợp tối đa. Sử dụng rộng rãi để đo nhiệt độ trong các môi trường như trong dung dịch hóa chất, hầm mỏ hoặc đất, v.v.
Số chân | Tên chân | Mô tả |
1 | Ground | Chân nối đất |
2 | Vcc | Chân cấp nguồn cho cảm biến, có thể là 3.3V hoặc 5V |
3 | Data | Chân xuất đầu ra giá trị nhiệt độ có thể được đọc bằng giao thức giao tiếp 1-wire |
Lưu ý: Đọc thêm chi tiết thông số kĩ thuật trong datasheet DS18B20 ở cuối bài viết.
Thermocouple, TMP100, LM75, DHT11, SHT15, LM35DZ, TPA81, D6T
DS18S20
DS18B20 là cảm biến nhiệt độ có giao thức 1-wire được tích hợp tối đa. Sử dụng rộng rãi để đo nhiệt độ trong các môi trường như trong dung dịch hóa chất, hầm mỏ hoặc đất, v.v. Cảm biến rất chắc chắn và có thể mua với tùy chọn chống thấm nước giúp quá trình lắp đặt dễ dàng.
Có thể đo dải giá trị nhiệt độ từ -55 ° C đến + 125 ° với độ chính xác khá tốt ± 5°C. Mỗi cảm biến có một địa chỉ duy nhất để truyền dữ liệu qua một chân của MCU, vì vậy đây là lựa chọn rất tốt để đo nhiệt độ tại nhiều điểm mà không ảnh hưởng nhiều đến các chân digital trên bộ vi điều khiển.
Cảm biến hoạt động với giao thức 1-wire. Nó nó yêu cầu chân data được kết nối với bộ vi điều khiển bằng một điện trở pull-up và hai chân còn lại được sử dụng để cấp nguồn như hình dưới đây.
Điện trở pull-up được sử dụng để giữ đường truyền dữ liệu ở trạng thái logic cao khi không sử dụng. Giá trị nhiệt độ do cảm biến đo được sẽ được lưu trong thanh ghi 2byte bên trong cảm biến.
Dữ liệu này có thể được đọc bằng cách sử dụng giao thức 1-wire bằng cách gửi theo một chuỗi dữ liệu. Có hai lệnh được gửi để đọc các giá trị, một là lệnh ROM và lệnh kia là lệnh function. Giá trị địa chỉ của mỗi bộ nhớ ROM theo trình tự như trong datasheet bên dưới. Bạn phải đọc datasheet để hiểu cách giao tiếp với cảm biến.
Nếu muốn giao tiếp IC này với Arduino, bạn có thể sử dụng thư viện hỗ trợ sẵn và sử dụng các chức năng có sẵn để truy nhập dữ liệu.
>> Mời anh em xem thêm