Dari awal banyak hal yang harus diperhatikan jika kita akan memelihara ikan pada aquarium. Tutorial kali ini kita akan membuat alat yang dapat memantau kadar TDS serta suhu air melalui aplikasi Blynk. Aquarium Cerdas berbasis IoT
[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 Waterproof 1 Buah
- TDS Sensor 1 Buah
- Buzzer 1 Buah
- Resistor 4k7 1 Buah
- Project Board 1 Buah
- Kabel Jumper Secukupnya
- Smartphone 1 Buah
Untuk mendapatkan segera komponen elektronik di atas silahkan temukan disini.
2. Skema Rangkaian
Gambar Rangkaian Membuat Aquarium Cerdas berbasis IoT
Keterangan:
- VU – VCC DS18B20, VCC TDS
- GND – GND DS18B20, GND TDS, GND Buzzer
- A0 – Data TDS
- D3 – Data DS18B20, (R 4k7 – VU)
- D4 – (+) Buzzer
[/membership]
3. Layout Blynk
Keterangan:
- Notifikasi
- Suhu Air (Gauge)
- Input V0, Low = 0, High = 100
- Label = /pin.#/ °C
- Design Text = Red
- TDS (Gauge)
- Input V1, Low = 0, High = 1000
- Label = /pin./ ppm
- Design Text = Yellow
4. Langkah Kerja
- Pertama siapkan alat dan bahan yang akan digunakan
- Kedua lakukan proses wiring dengan menggunakan Gambar skematik rangkaian diatas
- Ketiga Buka software Arduino IDE yang telah terinstal pada laptop/komputer
- Kemudian Unduh semua library di atas dan masukkan libray tersebut dengan cara buka Arduino IDE selanjutnya pilih Sketch->Include Library->Add.Zip Library
- Kemudian Ketikkan sketch program pada halaman Arduino IDE
- Untuk selanjutnya sesuaikan Auth Tokens dengan proyek aplikasi Blynk. Cara setting dan mendapatkan Auth Tokens dapat dilihat pada tutorial berikut:
Setting Blynk untuk NodeMCU ESP8266 - Selanjutnya Ganti ssid dan pass dengan nama wifi dan password wifi yang kalian gunakan
- Kemudian Lakukan proses uploading program
- Selanjutnya Buka aplikasi Blynk
- Seterusnya Buat layout Blynk seperti gambar di atas.
- Kemudian Tekan tombol Play pada aplikasi Blynk lalu tunggu hingga proyek kalian terhubung dengan aplikasi Blynk
5. Sketch Program
Maka dapatkan akses ratusan video tutorial dan pembelajaran dengan registrasi melalui tombol di bawah!
/* Program Membuat Aquarium Cerdas berbasis IoT dibuat oleh Indobot */ #include //Library ESP8266 #include //Library Blynk char auth[] = "HoP9z23_PbWp-iEyMBYFGnnALYBvvcXS"; //Token char ssid[] = "Wifi.id"; //Nama wifi char pass[] = "alam oye"; //Password wifi BlynkTimer timer; #include //Library komunikasi one wire #include //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 int tAir; //Variabel penampung nilai suhu #include float teg[10]; double tds, konduktifitas; float rata_rata_teg; #define Buzzer 2 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); } void loop() { Blynk.run(); //Kemudian Jalankan pembacaan Blynk timer.run(); Suhu.requestTemperatures(); //Baca suhu tAir = Suhu.getTempCByIndex(0); //Masukkan pada variabel for ( int i=0; i++){ int val = analogRead(A0); teg[i] = val * (3.3/1023); } rata_rata_teg = (teg[0] + teg[1] + teg[2] + teg[3] + teg[4] + teg[5] + teg[6] + teg[7] + teg[8] + teg[9])/10 ; delay(1000); tds = (211.2254 * rata_rata_teg) - 144.1466; if(tds 0){ tds = 0; } if(tAir 35){ Blynk.notify("Suhu Air Terlalu Tinggi!"); alarm(); } } if(tds 300){ Blynk.notify("Air Kolam Keruh!"); for(int i = 0; i i++){ // Ulang prosedur alarm(); sebanyak 5 kali alarm(); } } } void sendSensor(){ //Kirim data sensor Blynk.virtualWrite(V0,tAir); Blynk.virtualWrite(V1,tds); } void alarm(){ //Prosedur alarm digitalWrite(Buzzer, HIGH); //Nyalakan buzzer delay(500); //Selama 500 ms digitalWrite(Buzzer, LOW); //Matikan buzzer delay(500); //Selama 500 ms }
Kesimpulannya:
Kesimpulannya suhu air dan nilai TDS akan tertampil secara real time pada aplikasi blynk. Jika nilai tersebut melebihi ambang batas yang telah ditentukan pada program maka buzzer akan menyala dan notifikasi akan terkirim ke smartphone.
[/membership]
Dari waktu ke waktu kamu ingin memperbanyak jam terbang dan portofolio bikin project elektronika/ Arduino/ IoT? Ikuti program dari Indobot!