Sensor DS18B20 seri non-waterproof dapat digunakan untuk membuat alarm suhu ruangan. DS18B20 akan digabungkan dengan buzzer sehingga jika suhu melebihi ketetapan yang ditentukan maka buzzer akan berbunyi. Dengan membuat alat ini, kita dapat dengan mudah mengetahui bahwa kondisi suatu ruangan berada pada suhu yang normal.
[membership level=”0,1,2,4″]
Alarm Suhu Ruangan dengan DS18B20
1. Alat / Bahan
- Arduino IDE Download disini
- Library OneWire Download disini
- Library DallasTemperature Download disini
- Arduino Uno 1 Buah
- Sensor DS18B20 1 Buah
- Buzzer 1 Buah
- Project Board 1 Buah
- Kebel Jumper Secukupnya
Untuk mendapatkan komponen elektronik di atas silahkan temukan disini.
2. Skema Rangkaian
Gambar Rangkaian Alarm Suhu Ruangan dengan DS18B20
Keterangan:
- 5V – VCC DS18B20
- GND – GND DS18B20, GND Buzzer
- D2 – Data DS18B20
- D8 – Data Buzzer
[/membership]
3. Langkah Kerja
- Siapkan alat dan bahan yang akan digunakan
- Lakukan proses wiring dengan menggunakan Gambar skematik rangkaian diatas
- Buka software Arduino IDE yang telah terinstal pada laptop/komputer
- Unduh semua library di atas dan masukkan libray tersebut dengan cara buka Arduino IDE pilih Sketch->Include Library->Add.Zip Library
- Ketikkan sketch program pada halaman Arduino IDE
- Lakukan proses uploading program
Belajar Elektronika, Arduino, dan IoT step by step dengan bantuan tangga belajar? Daftar sekarang dan dapatkan PROMO
4. Sketch Program
/* Program Alarm Suhu Ruangan dengan DS18B20 dibuat oleh Indobot */ #include <OneWire.h> #include <DallasTemperature.h> #define ONE_WIRE_BUS 2 #define sensor 2 OneWire oneWire(ONE_WIRE_BUS); DallasTemperature Suhu(&oneWire); #define Bzr 8 float t; void setup() { Serial.begin(9600); Suhu.begin(); pinMode(Bzr, OUTPUT); } void loop() { Suhu.requestTemperatures(); t = Suhu.getTempCByIndex(0); Serial.print("Suhu Ruangan: "); Serial.println(t); if(t > 35) { for(int i = 0; i < 5; i++){ //Ulang prosedur alarm(); sebanyak 5 kali alarm(); } } else { delay(1000); } } void alarm(){ //Prosedur alarm digitalWrite(Bzr, HIGH); //Nyalakan buzzer delay(500); //Selama 500 ms digitalWrite(Bzr, LOW); //Matikan buzzer delay(500); //Selama 500 ms }
Kesimpulan:
Program bekerja dengan mendeteksi kondisi suhu diruangan yang ditempatkan sensor. Jika suhu ruangan melebihi 35° atau melebihi ketentuan maka buzzer akan berbunyi sebanyak 5 kali.
[/membership]
Mau belajar elektronika dasar? Arduino? atau Internet of Things? Ikuti kursus online Indobot Academy!