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
- Siapkan alat dan juga bahan
- kedua Lakukan proses wiring dengan menggunakan Gambar skematik rangkaian diatas
- kemudian Buka software Arduino IDE yang telah terinstal pada laptop/komputer
- Unduh semua library di atas dan juga masukkan libray tersebut dengan cara buka Arduino IDE pilih Sketch->Include Library->Add.Zip Library
- Ketikkan sketch program pada halaman Arduino IDE
- Sesuaikan Auth Tokens dengan proyek aplikasi Blynk. Cara setting dan mendapatkan Auth Tokens dapat dilihat pada tutorial berikut:
Setting Blynk untuk NodeMCU ESP8266 - Ganti ssid dan juga pass dengan nama wifi dan password wifi yang kalian gunakan
- Lakukan proses uploading program
- Buka aplikasi Blynk
- kemudian Buat layout Blynk seperti gambar di atas.
- 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!