راهنمای کامل سنسور DS18B20 (نسخه کابلی)
سنسور DS18B20 یک سنسور دمای دیجیتال با دقت بالا است. نسخه کابلی و ضدآب آن برای اندازهگیری دمای مایعات و استفاده در محیطهای مرطوب بسیار مناسب است.
مشخصات کلیدی سنسور (دیتاشیت)
ویژگی (Feature) | مقدار (Value) |
پروتکل ارتباطی | 1-Wire (دیجیتال) |
ولتاژ کاری | 3.0 ولت تا 5.5 ولت |
محدوده اندازهگیری دما | 55- تا 125+ درجه سانتیگراد |
دقت | ±0.5 درجه سانتیگراد (در محدوده 10- تا 85+) |
دقت تفکیکپذیری (Resolution) | قابل تنظیم از 9 تا 12 بیت |
پیشنیاز نرمافزاری: دانلود و نصب کتابخانهها
برای کار با این سنسور به دو کتابخانه نیاز دارید. آنها را از لینکهای رسمی زیر دانلود کرده و به صورت دستی نصب کنید.
راهنمای دانلود و نصب:
- وارد هر یک از لینکهای بالا شوید و در صفحه باز شده، روی بخش **Releases** کلیک کنید.
- آخرین نسخه (latest) را با فرمت ZIP. دانلود نمایید.
- در نرمافزار آردوینو، به منوی Sketch > Include Library > Add .ZIP Library... بروید.
- فایل ZIP دانلود شده را انتخاب کنید. این کار را برای هر دو فایل تکرار نمایید.
کد تست آردوینو برای DS18B20
این کد برای خواندن دما از سنسور DS18B20 که به پین D2 متصل است، نوشته شده است.
#include
#include
// پین دیتا روی کیت شما به D2 متصل است
const int ONE_WIRE_BUS_PIN = 2;
OneWire oneWire(ONE_WIRE_BUS_PIN);
DallasTemperature sensors(&oneWire);
void setup(void) {
Serial.begin(9600);
Serial.println("DS18B20 (Cabled) Sensor Test");
sensors.begin();
}
void loop(void) {
Serial.print("Requesting temperatures...");
sensors.requestTemperatures();
Serial.println(" DONE");
float tempC = sensors.getTempCByIndex(0);
if (tempC == -127.00) {
Serial.println("Error: Failed to read from sensor! Please check the connection.");
} else {
Serial.print("Temperature is: ");
Serial.print(tempC);
Serial.println(" C");
}
delay(2000);
}