Pendahuluan

Pada artikel ini, kita akan membahas cara mengakses sensor suhu tahan air DS18B20 menggunakan Arduino UNO. Sensor suhu DS18B20 merupakan salah satu sensor suhu digital yang akurat dan dapat diandalkan, Selain itu sensor ini juga sudah Waterproff jadi sangant cocok untuk keperluan project yang mengharuskna pengukuran pada cairan atau lingkungan yang sering terkena aliran air.

 

Komponen Yang Digunakan

Berikut adalah daftar komponen yang digunakan dalam proyek ini beserta link pembelian di Golite Store:

  1. Arduino UNOBeli Disini
  2. Sensor Suhu DS18B20Beli Disini
  3. Kabel Jumper – Beli Disini
  4. Resistor 4k7 – Besi Disini

 

Skema Sistem

Konfigurasi pinout antara Arduino dan Sensor Suhu DS18B20 adalah sebagai berikut:

  • Microcontroller -> Sensor Suhu DS18b20
    • 3.3V -> Kabel Merah
    • GND -> Kabel Hitam
    • D2 -> Kabel Kuning / Putih
    • D2 -> Kaki Kiri Resistor
    • Kaki Kanan Resistor -> 3.3V

Penjelasan singkat mengenai skema sistem: kabel Merah terhubung ke port 3.3v pada Arduino, kabel Hitam ke ground pada Arduino, dan kabel Kuning / Putih ke pin D2 pada Arduino.

Resistor 4k7 ditambahkan ke dalam daftar komponen yang digunakan. Penambahan resistor ini penting untuk menstabilkan sinyal pada jalur data dari sensor. Pemilihan resistor 4k7 adalah umum digunakan dalam koneksi sensor suhu DS18B20.

Baca juga Membuat Kipas Angin Otomatis Menggunakan Arduino UNO, Mofet Dan Sensor DHT11

 

Program Arduino

#include <OneWire.h>
#include <DallasTemperature.h>

// Inisialisasi sensor suhu DS18B20
OneWire oneWire(2);  // D2 pada Arduino
DallasTemperature sensors(&oneWire);

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

void loop() {
  sensors.requestTemperatures();  // Meminta data suhu

  // Membaca suhu dalam derajat Celsius
  float suhu = sensors.getTempCByIndex(0);

  // Menampilkan suhu pada Serial Monitor
  Serial.print("Suhu: ");
  Serial.print(suhu);
  Serial.println(" °C");

  delay(1000);  // Menunggu 1 detik sebelum membaca suhu lagi
}

Penjelasan Program:

  1. Library yang Digunakan:
    • Program menggunakan dua library, yaitu OneWire dan DallasTemperature. OneWire digunakan untuk komunikasi satu kabel dengan sensor, sementara DallasTemperature digunakan untuk mengambil data suhu dari sensor.
  2. Inisialisasi Sensor dan Serial Communication:
    • OneWire oneWire(2);: Menginisialisasi objek oneWire pada pin D2 Arduino sebagai jalur komunikasi satu kabel.
    • DallasTemperature sensors(&oneWire);: Menginisialisasi objek sensors menggunakan jalur komunikasi oneWire.
  3. Setup Function:
    • Serial.begin(9600);: Menginisialisasi komunikasi serial pada baud rate 9600 untuk berkomunikasi dengan Serial Monitor.
    • sensors.begin();: Memulai komunikasi dengan sensor suhu DS18B20.
  4. Loop Function:
    • sensors.requestTemperatures();: Meminta sensor untuk mengukur suhu.
    • float suhu = sensors.getTempCByIndex(0);: Membaca suhu dalam derajat Celsius dan menyimpannya dalam variabel suhu.
    • Serial.print("Suhu: ");, Serial.print(suhu);, Serial.println(" °C");: Menampilkan suhu pada Serial Monitor.
    • delay(1000);: Menunda program selama 1 detik (1000 milidetik) sebelum melakukan pembacaan lagi, ini dilakukan untuk menghindari pembacaan suhu yang terlalu cepat dan memberikan waktu pada sensor untuk mengukur suhu dengan akurat

Program ini secara berulang membaca suhu dari sensor DS18B20 dan menampilkannya pada Serial Monitor. Hasilnya dapat diawasi melalui Serial Monitor pada Arduino IDE, dan Anda akan melihat suhu aktual yang terbaca dari sensor DS18B20 ditampilkan secara berkala.

Pastikan kamu telah mendownload library disini :

  1. One Wire Library : Download Disini
  2. DallasTemperature : Download Disini

 

Pengujian

Selanjutnya, kita akan melakukan pengujian. Pastikan sensor DS18B20 terhubung dengan benar ke Arduino. Setelah mengunggah program di atas ke Arduino, buka Serial Monitor pada Arduino IDE. Anda akan melihat suhu aktual yang terbaca dari sensor DS18B20 ditampilkan sesui dengan delay yang kita tuliskan pada program Arduino yaitu 1 detik atau 1000 milidetik.

Berikut adalah percobaan kedua dimana saat sinyal atau kabel data dari sensor tidak di tambah pull-up resistor 4k7 maka hasil tidak akan terbaca dengan baik.

 

Kesimpulan

Dengan mengikuti langkah-langkah di atas, Kita telah berhasil mengakses sensor suhu tahan air DS18B20 menggunakan Arduino. Project dapat kita update lagi, seperti pengintegrasian dengan layar LCD atau pengiriman data suhu ke server.

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *






Hubungi Kami

Hubungi Kami

Kami menyediakan jasa proyek Arduino, Electrical, dan IoT (Internet of Things):
- Penyediaan komponen.
- Perancangan hardware dan software.
- Pemrograman.
- Hingga deploy server.


Cocok untuk hobi, edukasi (skripsi atau tugas akhir), dan industri.
Serahkan kepada kami, Anda tinggal terima hasil jadi!



Hubungi via WhatsApp



Ikuti Kami di TikTok (Inspirasi Project IoT)



Kunjungi YouTube Kami (Tutorial Project IoT)



Temukan Kami di Facebook



Beli Komponen Di GoLite Store