Deteksi Suhu Air Aquarium Ikan Hias dengan Smartphone

Indobot Academy

Suhu air merupakan salah satu faktor yang harus diperhatikan dalam memelihara ikan hias. Suhu yang kurang tepat berakibat kurang optimalnya pertumbuhan ikan. Kali ini kita akan membuat alat pengukur suhu air yang dapat dipantau lewat internet.

[membership level=”0,1,2,4″]

1. Alat / Bahan
  • Arduino IDE                                     Download
  • Library: Blynk                                  Download
  • Library: ESP8266                            Download
  • Library: DS18B20                           Download
  • NodeMCU                                        1 Buah
  • DS18B20                                          1 Buah
  • Buzzer                                              1 Buah
  • R 4.7k ohm                                       1 Buah
  • Project Board                                  1 Buah
  • Kabel Jumper                                  Secukupnya
  • Smartphone                                     1 Buah

Kemudian untuk mendapatkan komponen elektronik di atas silahkan temukan disini.

2. Skema Rangkaian

Gambar berikut merupakan Rangkaian Deteksi Suhu Air Aquarium Ikan Hias dengan Smartphone

Keterangan:

  • VU – VCC DS18B20
  • GND – GND DS18B20, GND Buzzer
  • D3 – Data DS18B20
  • D4 – (+) Buzzer
  • Data DS18B20 – R 4.7k – VU

[/membership]

3. Layout Blynk

Keterangan:

  • Notifikasi
  • Suhu Air (Gauge)
    • Input V0, Low = 0, High = 100
    • Label = /pin.#/°C
    • Design Text = Red
4. Langkah Kerja
  1. Siapkan alat dan juga bahan
  2. kedua Lakukan proses wiring dengan menggunakan Gambar skematik rangkaian diatas
  3. kemudian Buka software Arduino IDE yang telah terinstal pada laptop/komputer
  4. Unduh semua library di atas dan juga masukkan libray tersebut dengan cara buka Arduino IDE pilih Sketch->Include Library->Add.Zip Library 
  5. Ketikkan sketch program pada halaman Arduino IDE
  6. Sesuaikan Auth Tokens dengan proyek aplikasi Blynk. Cara setting dan mendapatkan Auth Tokens dapat dilihat pada tutorial berikut:
    Setting Blynk untuk NodeMCU ESP8266
  7. Ganti ssid dan juga pass dengan nama wifi dan password wifi yang kalian gunakan
  8. Lakukan proses uploading program
  9. Buka aplikasi Blynk
  10. kemudian Buat layout Blynk seperti gambar di atas.
  11. Tekan tombol Play pada aplikasi Blynk lalu tunggu hingga proyek kalian terhubung dengan aplikasi Blynk
5. Sketch Program

Dapatkan puluhan ebook gratis dengan registrasi melalui tombol di bawah!

 
/* Program Deteksi Suhu Air Aquarium Ikan Hias dengan Smartphone dibuat oleh Indobot */

#include <ESP8266WiFi.h>              //Library ESP8266
#include <BlynkSimpleEsp8266.h>       //Library Blynk

char auth[] = "HoP9z23_PbWp-iEyMBYFGnnALYBvvcXS"; //Token
char ssid[] = "Wifi.id";                          //Nama wifi
char pass[] = "alam oye";                         //Password wifi

BlynkTimer timer;

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

float tAir;               //Variabel penampung nilai suhu

#define Buzzer 2          //Buzzer pada pin D4

unsigned long TSekarang;
unsigned long TAkhir;

void setup() {
  Blynk.begin(auth, ssid, pass);          //Inisialisasi token, wifi dan password
  timer.setInterval(1000L, sendSensor);   //Kirim data sensor
  Suhu.begin();                           //Mulai sensor suhu
  pinMode(Buzzer, OUTPUT);                //Setting I/O
}

void loop() {
  Blynk.run();                        //Jalankan pembacaan Blynk
  timer.run();

  Suhu.requestTemperatures();       //Baca suhu
  tAir =  Suhu.getTempCByIndex(0);  //Masukkan pada variabel

  if(tAir > 33){                    //Jika suhu > 33, maka
    TSekarang = millis();
    if(TSekarang - TAkhir > 10000){   //Kirim notifikasi setiap 10 detik
      Blynk.notify("Suhu Air Terlalu Tinggi");
      TAkhir = TSekarang;
    }
    
    for(int i = 0; i < 5; i++){     //Ulang prosedur alarm(); sebanyak 5 kali
      alarm();
    }
  }
}

void sendSensor(){                  //Kirim data sensor
  Blynk.virtualWrite(V0,tAir);
}

void alarm(){                         //Prosedur alarm
  digitalWrite(Buzzer, HIGH);         //Nyalakan buzzer
  delay(125);                         //Selama 125 ms
  digitalWrite(Buzzer, LOW);          //Matikan buzzer
  delay(125);                         //Selama 125 ms
}

Kesimpulan:

Jika suhu melebihi batas yang telah ditentukan maka buzzer akan menyala dan nodeMCU akan mengirimkan notifikasi ke smartphone. Data suhu akan dikirimkan setara realtime melalui aplikasi Blynk.

[/membership]

Mau belajar elektronika dasar? Arduino? atau bahkan Internet of Things? Ikuti kursus online Indobot Academy!

Ingin Tahu Program Kami Lebih Lanjut?

Silahkan isi Formulir Dibawah Ini untuk Diskusi dengan Tim Indobot Academy.

Baca Juga

Bagikan:

Tinggalkan komentar

whatsapp