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:
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....