Minggu, 23 Mei 2021

Multiple Sensor DS18B20 Pada Arduino

Melanjutkan postingan sebelumnya yaitu Menampilkan Nilai Sensor DS18B20 - Arduino, kali ini akan dibahas bagaimana menggunakan sensor DS18B20 lebih dari satu atau kita sebut juga multiple. Apa saja komponen-komponen yang digunakan? tentusaja kita hanya menambahkan sensor DS18B20. Untuk menggunakan sensor DS18B20 ini lebih dari satu, yang perlu diperhatikan adalah kita harus mengetahui alamat (kode) masing-masing sensor, bagaimana cara mengakses kode unik DS18B20? dapat dilihat DISINI.Setelah kita mendapatkan alamat masing-masing sensor, dan menyimpan alamat tersebut pada notepad dilanjutkan merubah alamat tersebut dengan menambahkan kode "0x", sebagai contoh berikut alamat sensor DS18B20 : 

28 C8 0 0 5F 13 0 BD   diubah dengan menambahkan kode "0x" sehingga menjadi 
0x28, 0xC8, 0x0, 0x0, 0x5F, 0x13, 0x0, 0xBD

Terlebih dahulu siapkan rengkaian DS18B20 dengan resistor 4.7K sebagai berikut:

Multiple DS18B20



Berikut adalah contoh program Multiple Sensor DS18B20 Pada Arduino :

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


#define ONE_WIRE_BUS 4        // Data Sensor pada Arduino PIN 4
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);

// Alamat Sensor 1
DeviceAddress AlamatSensor1 = { 0x28, 0xC8, 0x0, 0x0, 0x5F, 0x13, 0x0, 0xBD }; 

// Alamat Sensor 2
DeviceAddress AlamatSensor2 = { 0x28, 0xAF, 0x0, 0x0, 0x2C, 0xD0, 0x0, 0x11 }; 

// Alamat Sensor 3
DeviceAddress AlamatSensor3 = { 0x28, 0x1F, 0x0, 0x0, 0x2D, 0x12, 0x0, 0xAF }; 

int Sensor1;        
int Sensor2;  
int Sensor3;  


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


void loop()
{
 sensors.requestTemperatures();             // Membaca sensor
 Sensor1 = sensors.getTempC(AlamatSensor1);   
 Sensor2 = sensors.getTempC(AlamatSensor2);
 Sensor3 = sensors.getTempC(AlamatSensor3);
 Serial.print("Temperatur 1 = ");
 Serial.println(Sensor1); 
 Serial.print("Temperatur 2 = ");
 Serial.println(Sensor2); 
 Serial.print("Temperatur 3 = ");
 Serial.println(Sensor3);
 delay(1000);
}

Setelah berhasil upload program Multiple Sensor DS18B20, silahkan buka serial monitor untuk menampilkan pembacaan nilai sensor.

Selamat mencoba...Semoga sukses....


0 comments: