CẢM BIẾN NHIỆT ĐỘ DS18B20 18B20 1M
-Nguồn: 3 – 5.5V
-Dải đo nhiệt độ: -55 đến 125 độ C ( -67 đến 257 độ F)
-Sai số: +- 0.5 độ C khi đo ở dải -10 – 85 độ C
-Độ phân giải: người dùng có thể chọn từ 9 – 12 bits
-Chuẩn giao tiếp: 1-Wire ( 1 dây ).
-Có cảnh báo nhiệt khi vượt ngưỡng cho phép và cấp nguồn từ chân data.
-Ống thép không gỉ (chống ẩm , nước) đường kính 6mm, dài 50mm
-Đường kính đầu dò: 6mm
-Chiều dài dây: 1m
Code mẫu để đọc giá trị cảm biến và hiển thị lên LCD
Thư viện OneWire.h : https://github.com/PaulStoffregen/OneWire
Thư viện DallasTemperature.h: https://github.com/milesburton/Arduino-Temperature-Control-Library
Thư viện LCD16x2 https://github.com/arduino-libraries/LiquidCrystal
/*
ĐIỆN TỬ VIETNIC - 816 TÔN ĐỨC THẰNG - ĐÀ NẴNG
*/
/*
Kết nối:
VCC ---- 5V (Arduino)
GND ---- GND (Arduino)
DATA ---- 13 (Arduino)
*/
#include <OneWire.h>
#include <DallasTemperature.h>
#include<LiquidCrystal.h>
#define ONE_WIRE_BUS 13
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);
LiquidCrystal lcd (5, 4, 3, 2, 1, 0); // khởi tạo các chân giao tiếp
void setup(void)
{
Serial.begin(9600);
// Start up the library
sensors.begin();
lcd.begin(16, 2); // khởi tạo màn hình LCD 16×2
lcd.setCursor (0, 0); // đặt con trỏ tại hàng 0 cột 0
lcd.print ("vietnic.cvn"); // In ra màn hình lcd dòng
delay(2000);
lcd.clear();
}
void loop(void)
{
Serial.print(" Requesting temperatures...");
sensors.requestTemperatures();
Serial.println("DONE");
Serial.print("Temperature is: ");
Serial.print(sensors.getTempCByIndex(0));
lcd.setCursor (0, 0);
lcd.print ("Temperature");
lcd.setCursor (0, 1);
lcd.print (sensors.getTempCByIndex(0));
delay(1000);
}