Sensor DS18B20 merupakan sensor yang dapat mendeteksi kondisi suhu disekitarnya. Versi waterproof sensor DS18B20 dapat digunakan untuk mendeteksi suhu dalam kondisi basah atau pada media cair. Dengan menggunakan DS18B20 ini kita dapat melakukan monitoring suhu air dengan sangat mudah.

1. Alat / Bahan
  • Arduino IDE                                     Download disini
  • Library OneWire                              Download disini
  • Library DallasTemperature              Download disini
  • Arduino Uno                                    1 Buah
  • Sensor DS18B20 Waterproof          1 Buah
  • Resistor 220 ohm                            1 Buah
  • Project Board                                  1 Buah
  • Kabel Jumper                                  Secukupnya

Untuk mendapatkan komponen elektronik di atas silahkan temukan disini.

2. Skema Rangkaian

Gambar Rangkaian Monitoring Suhu Air dengan DS18B20

Keterangan:

  • 5V – Resistor – VCC DS18B20
  • GND – GND DS18B20
  • D2 – Resistor – Data DS18B20
3. Langkah Kerja
  1. Siapkan alat dan bahan yang akan digunakan
  2. Lakukan proses wiring dengan menggunakan Gambar skematik rangkaian diatas
  3. Buka software Arduino IDE yang telah terinstal pada laptop/komputer
  4. Unduh semua library di atas dan masukkan libray tersebut dengan cara buka Arduino IDE pilih Sketch->Include Library->Add.Zip Library 
  5. Ketikkan sketch program pada halaman Arduino IDE
  6. Lakukan proses uploading program
4. Sketch Program
 
/* Program Monitoring Suhu Air dengan DS18B20 dibuat oleh Indobot */

#include <OneWire.h>                //Library komunikasi one wire
#include <DallasTemperature.h>      //Library sensor
#define ONE_WIRE_BUS 2              //Deklarasi pin komunikasi one wire
#define sensor 2                    //Sensor pada pin D2
OneWire oneWire(ONE_WIRE_BUS);      //Kenalkan pin komunikasi one wire
DallasTemperature Suhu(&oneWire);   //Masukkan pada library

float tAir;               //Variabel penampung nilai suhu

void setup() {
  Serial.begin(9600);     //Mulai komunikasi serial
  Suhu.begin();           //Mulai sensor suhu
}

void loop() {
  Suhu.requestTemperatures();       //Baca suhu
  tAir =  Suhu.getTempCByIndex(0);  //Masukkan pada variabel
  Serial.print("Suhu Air : ");
  Serial.println(tAir);             //Tampilkan nilai suhu
  delay(1000);                      //Jeda pembacaan 1000ms
}

Kesimpulan:

Program bekerja dengan mendeteksi kondisi suhu air disekitar sensor kemudian mengirimkan data tersebut untuk ditampilkan pada serial monitor sehingga mudah untuk memonitoring kondisi air.


Leave a Comment