Monitoring Kualitas Air Kolam Ikan dengan Sensor TDS berbasis IoT

Indobot Academy

Arduino Droid Project : Pakan Ikan Otomatis dengan Arduino Uno dan RTC DS1307
Arduino Droid Project : Pakan Ikan Otomatis dengan Arduino Uno dan RTC DS1307

Salah satu faktor yang mempengaruhi pertumbuhan ikan adalah kualitas air kolam itu sendiri. Kualitas air dapat dinilai berdasarkan banyak faktor salah satuya dari kadar TDS. Tutorial kali ini kita akan membuat alat yang bisa membaca kualitas air berdasarkan input dari sensor TDS meter.

Monitoring Kualitas Air Kolam Ikan dengan Sensor TDS berbasis IoT

1. Alat / Bahan

  • Arduino IDE                                     Download
  • Library: Blynk                                  Download
  • Library: ESP8266                            Download
  • Library: I2C                                      Download
  • NodeMCU                                       1 Buah
  • Project Board                                  1 Buah
  • TDS Sensor                                    1 Buah
  • LCD I2C                                          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

Berikut Rangkaian Monitoring Kualitas Air Kolam Ikan dengan Sensor TDS berbasis IoT

Keterangan:

  • VU – VCC TDS Sensor, VCC I2C
  • GND – GND TDS Sensor, GND I2C
  • A0 – Data TDS Sensor
  • D1 – SCL
  • D2 – SDA

 

3. Layout Blynk

Keterangan:

  • Notifikasi
  • Kualitas Air (Gauge)
    • Input V1, Low = 0, High = 1000
    • Label = /pin./ ppm

4. Langkah Kerja sensor

  1. Siapkan alat dan juga bahan
  2. kedua Lakukan proses wiring dengan menggunakan Gambar skematik rangkaian pada gambar
  3. Ketiga Buka software Arduino IDE yang telah terinstal pada laptop/komputer
  4. Unduh semua library di atas dan masukkan libray tersebut dengan cara buka Arduino IDE pilih Sketch->Include Library->Add.Zip Library 
  5. kemudian 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. Buat layout Blynk seperti gambar di atas.
  11. Tekan tombol Play pada aplikasi Blynk lalu tunggu hingga proyek kalian terhubung dengan aplikasi Blynk

 

Belajar Elektronika, Arduino, dan juga IoT step by step dengan bantuan tangga belajar? Daftar sekarang dan dapatkan PROMO

 

5. Sketch Program

 
/* Program Monitoring Kualitas Air Kolam Ikan dengan Sensor TDS berbasis IoT 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 <LiquidCrystal_I2C.h>      //Library LCD I2C
LiquidCrystal_I2C lcd(0x27, 16, 2); //Alamat I2C

#include <Wire.h>
float teg[10];
double tds, konduktifitas;
float rata_rata_teg;

void setup() {
  Blynk.begin(auth, ssid, pass);          //Inisialisasi token, wifi dan password
  timer.setInterval(1000L, sendSensor);   //Kirim data sensor
  Serial.begin(9600);
  lcd.init();       //Mulai LCD
  lcd.backlight();  //Nyalakan backlight
}

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

  for ( int i=0; i<10; 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(tds > 300){
    Blynk.notify("Air Kolam Tidak Layak!");
  }
  
  Serial.println(tds);
  
  lcd.setCursor(0,0);
  lcd.print("TDS= ");
  lcd.print(tds);
  lcd.print(" ppm      ");
}

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

Kesimpulan:

Data dari sensor akan dikirim secara real time ke aplikasi Blynk. Ketika kadar ppm melebihi ambang batas yang telah ditentukan maka alat akan mengirimkan notifikasi ke smartphone pengguna.

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:

Tags

Tinggalkan komentar

whatsapp whatsapp