سنسور DS18B20 بدون کابل

Mohammad Amin Raznahan Mohammad Amin Raznahan Mohammad Amin Raznahan · 1404/3/18 03:39 · خواندن 3 دقیقه
راهنمای سنسور DS18B20 (نسخه TO-92)

راهنمای کامل سنسور DS18B20 (نسخه بدون کابل TO-92)

این راهنما مخصوص نسخه بدون کابل سنسور DS18B20 است که به شکل یک ترانزیستور (پکیج TO-92) می‌باشد. این سنسور از نظر کارکرد داخلی و کدنویسی هیچ تفاوتی با نسخه کابلی ندارد.

مشخصات کلیدی سنسور (دیتاشیت)

ویژگی (Feature)مقدار (Value)
پروتکل ارتباطی1-Wire (دیجیتال)
ولتاژ کاری3.0 ولت تا 5.5 ولت
محدوده اندازه‌گیری دما55- تا 125+ درجه سانتی‌گراد
دقت±0.5 درجه سانتی‌گراد (در محدوده 10- تا 85+)
دقت تفکیک‌پذیری (Resolution)قابل تنظیم از 9 تا 12 بیت

پیش‌نیاز نرم‌افزاری: دانلود و نصب کتابخانه‌ها

برای کار با این سنسور به دو کتابخانه نیاز دارید. آن‌ها را از لینک‌های رسمی زیر دانلود کرده و به صورت دستی نصب کنید.

راهنمای دانلود و نصب:

  1. وارد هر یک از لینک‌های بالا شوید و در صفحه باز شده، روی بخش **Releases** کلیک کنید.
  2. آخرین نسخه (latest) را با فرمت ZIP. دانلود نمایید.
  3. در نرم‌افزار آردوینو، به منوی Sketch > Include Library > Add .ZIP Library... بروید.
  4. فایل 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 (TO-92) 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);
}