Menggunakan 3 Sensor Suhu DS18B20 pada Arduino

Semangat pagi buat teman-teman yang lagi sibuk mengerjakan projectnya, ngomong-ngomong sudah sampai tahap apa? hehe. Oke jumpa lagi bersama saya admin symask.blogspot.com, pada kesempatan ini saya akan membahas bagaimana caranya menggunakan 3 sensor suhu DS18B20 pada Arduino. Nah pada postingan saya sebelumnya sudah membahas tentang sensor ini (baca dulu), namun sensor yang digunakan hanya 1 sensor. Lalu bagaimana dengan 3 sensor? apa dengan 3 pin inputan juga?  Bukan teman-teman, caranya adalah memparalelkan data sensor ds18b20 ke 1 pin, misalnya pin A0 pada Arduino. Kemudian kita cari dulu address dari masing-masing sensornya, setelah itu masukkan tiap address pada sketch arduino. Untuk lebih jelasnya lihat rangkaian di bawah ini.

menggunakan 3 sensor suhu ds18b20
Penggunaan dengan banyak sensor ini biasanya digunakan pada objek yang lebih dari satu, misalnya untuk mengukur suhu tanah pada pot guna membedakan antara suhu masing-masing tanah pada pot, atau pada ruangan yang luas sehingga memerlukan jumlah sensor yang banyak.
Langsung saja yang diperlukan pada project 3 sensor suhu ds1b20 ini sebagai berikut :
Software :
  1. Arduino IDE
  2. Library yang digunakan library DS18B20, download.
  3. Library OneWire, download.
Hardware :
  1. Arduino Uno atau board lainnya
  2. 3 sensor suhu DS18B20
  3. Resistor 4.7k Ohm
  4. Kabel jumper
  5. Project board jika diperlukan.
Rangkaian :
Sensor suhu DS18B20
- Salah satu kabel data (kuning) dihubungkan dengan resistor 4.7k Ohm dan kabel merah (+)
  kemudian diparalelkan ke dan dihubungkan ke pin A0 Arduino.
- Kabel merah (+) dihubungkan ke 5V Arduino
- Kabel hitam (-) dihubungkan ke GND Arduino

Langkah-langkah :
  1. Rangkai komponen seperti yang sudah dijelaskan di atas (atau lihat gambar)
  2. Buka Arduino IDE, masukkan library DS18B20 yang sudah didownload.
  3. Pastikan Board sesuai dengan yang digunakan, dan Port : terceklis > misalnya COM12
  4. Cari address masing-masing sensor dengan mengupload sketch berikut :
  5. #include <OneWire.h>

    OneWire ds(A0);
    void setup(void) {
    Serial.begin(9600);
    }

    void loop(void) {
    byte i;
    byte addr[8];

    if (!ds.search(addr)) {
    Serial.println(" No more addresses.");
    Serial.println();
    ds.reset_search();
    delay(250);
    return;
    }
    Serial.print(" ROM =");
    for (i = 0; i < 8; i++) {
    Serial.write(' ');
    Serial.print(addr[i], HEX);
    }
    }
  6. Buka Serial Monitor dengan baudrate 9600, kemudian catat address masing-masing sensor.
mencari address ds18b20
Ubah address seperti dibawah ini :
- sensor1 = 0x28, 0xFF, 0xA0, 0x11, 0x33, 0x17, 0x3, 0x96
- sensor2 = 0x28, 0xFF, 0xB4, 0x6, 0x33, 0x17, 0x3, 0x4B
- sensor3 = 0x28, 0xFF, 0x77, 0x62, 0x40, 0x17, 0x4, 0x31
Jadi hanya menambahkan 0x di depannya.

Upload sketch berikut ini :

#include <onewire.h>
#include <dallastemperature.h>

#define ONE_WIRE_BUS A0

OneWire oneWire(ONE_WIRE_BUS);

DallasTemperature sensors(&amp;oneWire);
DeviceAddress sensor1= { 0x28, 0xFF, 0xA0, 0x11, 0x33, 0x17, 0x3, 0x96 };
DeviceAddress sensor2 = { 0x28, 0xFF, 0xB4, 0x6, 0x33, 0x17, 0x3, 0x4B };
DeviceAddress sensor3 = { 0x28, 0xFF, 0x77, 0x62, 0x40, 0x17, 0x4, 0x31 };

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

void loop(void){
Serial.print("Requesting temperatures...");
sensors.requestTemperatures();
Serial.println("DONE");

Serial.print("Sensor 1(*C): ");
Serial.println(sensors.getTempC(sensor1));

Serial.print("Sensor 2(*C): ");
Serial.println(sensors.getTempC(sensor2));

Serial.print("Sensor 3(*C): ");
Serial.println(sensors.getTempC(sensor3));

delay(2000);
}
Lihat hasilnya pada Serial Monitor. Selesai.

Mudah bukan? semoga pembahasan ini bermanfaat untuk teman-teman. Selamat Mencoba.
Baca juga : Menampilkan Suhu pada 8x8 Dot Matrix Arduino

Terima kasih.

0 Response to "Menggunakan 3 Sensor Suhu DS18B20 pada Arduino"

Post a Comment

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel

Iklan Bawah Artikel