Arduino - Menggunakan Sensor Temperatur DS18B20 (Membaca Suhu)

 

 

Sensor suhu DS18B20 adalah sensor digital yang sangat akurat dan cocok untuk proyek pemantauan suhu. 

Kelebihannya:

  • Komunikasi digital (1-Wire)
  • Bisa membaca banyak sensor dalam satu pin
  • Tahan air (versi waterproof)
  • Akurasi hingga ±0.5°C


Pada tutorial ini, kita akan belajar:

  • Wiring DS18B20 ke Arduino
  • Menggunakan pustaka OneWire dan DallasTemperature
  • Menampilkan data suhu di Serial Monitor


Alat dan Bahan

  • Arduino Uno (atau lainnya)
  • Sensor DS18B20 (biasa atau waterproof)
  • Resistor 4.7K Ohm
  • Kabel jumper
  • Breadboard
 

Wiring Rangkaian DS18B20 ke Arduino

 


Pin DS18B20:

GND → GND Arduino
VCC → 5V Arduino
DATA → Pin 3 Arduino

Pasang resistor 4.7K antara DATA dan VCC

Instalasi Library

Buka Library Manager di Arduino IDE dan cari lalu install:

 

Kode Program Membaca Suhu


//https://github.com/PaulStoffregen/OneWire
//https://github.com/milesburton/Arduino-Temperature-Control-Library

#include "OneWire.h" 
#include "DallasTemperature.h" 

#define temp_pin 3
OneWire oneWireTemp(temp_pin);
DallasTemperature sensors(&oneWireTemp);


void setup() {
  Serial.begin(9600);
  sensors.begin();
}

void loop() {

  sensors.requestTemperatures();

  //print the temperature in Celsius
  Serial.print("Temperature: ");
  Serial.print(sensors.getTempCByIndex(0));
  Serial.print("°C  |  ");

  //print the temperature in Fahrenheit
  Serial.print((sensors.getTempCByIndex(0) * 9.0) / 5.0 + 32.0);
  Serial.println("°F");

  delay(500);
}

Penjelasan Kode

  • sensors.begin() menginisialisasi sensor
  • requestTemperatures() memerintahkan sensor untuk mengambil data suhu
  • getTempCByIndex(0) digunakan jika hanya satu sensor terhubung
 

Tampilan Serial Monitor


 

Wokwi project link:


Selamat mencoba!

Selanjutnya
« Post Selanjutnya
Sebelumnya
Post Sebelumnya »

EmoticonEmoticon

Note: Only a member of this blog may post a comment.