Anda di halaman 1dari 12

Tugas Mata Kuliah Pengembangan Dan Aplikasi IOT

Alat Menyiram Tanaman Otomatis

Kelompok 12

Dipersiapkan oleh:

Rayhan Gibran 1303193091

Amir Rachman Sulthan Sianipar 1303193124

Muhammad Humam Dhiya’ul Faaris 1303194105

Program Studi S1 Teknologi Informasi

Fakultas Informatika

Universitas Telkom

2022
Latar Belakang Masalah

Permasalahan : Banyak orang yang hobi mengoleksi tanaman hias atau berkebun,
namun terkendala dengan adanya aktifitas kewajiban dan minimnya waktu luang.
Terkadang, walaupun tanaman ditempatkan di tempat cukup adanya cahaya
matahari sebagian masih terdapat yang layu karena kering kekurangan air atau
terlalu banyak disiram air. Maka dari itu, kami membuat proyek IoT untuk
mengukur kelembapan tanah dan suhu sekitar sehingga mengetahui kapan waktu
harus di siram air.
Harapan : Solusi permasalahan tersebut bisa diciptakan alat untuk menyiram
tanaman secara otomatis, dengan cara mendeteksi kelembapan tanah dengan
sensor DHT11 dan sensor kelembapan tanah. Kemudian, dengan data yang
diperoleh tersebut perangkat mengetahui kondisi kapan harus menyiram tanah
dan berhenti sesuai tingkat kelembapan tanah.
Layer IoT penyiram tanaman otomatis.
1. Sensing Layer :
- Menggunakan sensor DHT11 untuk mengukur kelembapan dan suhu.
- Soil moisture hygrometer humidity untuk mengukur kelembapan tanah.
2. Network Layer :
- Karena menggunakan mikrokontroller node MCU maka jalur komukasi perangkat
menggunakan Wifi 2,5 Ghz.
3. Service Layer :
- Menggunakan perangkat cloud, untuk pengolahan data.
4. Aplication Layer :
- Menggunakan Web sebagai media interaksi antara perangkat dan user. Web
tersebut dapat menampilkan tingkat kelembapan tanah disaat itu juga.
Topologi Jaringannya dan Rangkaian Mikrokontroller
Alat Yang Digunakan
NodeMCU8266
Sensor Soil Moisture

Sensor Dht 11

Relay

Mini pump
Kabel Jumper
Tahapan Kerja Alat

1. Sensor pada alat akan membaca kondisi suhu dan kelembapan tanah disekitar
tanaman. kemudian, secara periodik mengirim data tersebut melalui jaringan wifi
ke layanan cloud.
2. Data yang diterima akan menentukan apakah tanaman perlu disiram atau tidak.
Salah satu contoh kasus apabila sensor mendeteksi bahwa suhu saat itu tinggi dan
tingkat kelembapan juga rendah maka menandakan tanaman perlu disiram, jika
sebaliknya maka tidak perlu.,atau jika suhu sekitar normal tapi tingkat
kelembapan tanah nya rendah maka tanaman perlu disiram
3. Informasi yang didapat sensor akan ditampilkan pada halaman web. serta
riwayat log activity ketika alat menyiram bunga.
Penjelasan Kode Program
//template from blynk cloud
#define BLYNK_TEMPLATE_ID " "
#define BLYNK_DEVICE_NAME " "
#define BLYNK_AUTH_TOKEN " "

//library
#define BLYNK_PRINT Serial
#include <ESP8266WiFi.h> //esp library
#include <BlynkSimpleEsp8266.h>//library esp for blynk
#include <DHT.h>//dht11 sensor library

char auth[] = BLYNK_AUTH_TOKEN;

char ssid[] = "Reddfabxx"; // wifi name


char pass[] = "Venusflyman"; // wifi password

BlynkTimer timer;

#define DHTPIN 4 //Connect Out pin to D2 in NODE MCU


#define DHTTYPE DHT11 //Define dht
#define soil A0 //define soil moisture sensor input in a0
DHT dht(DHTPIN, DHTTYPE);//initialize dht pin
//variable to save data from sensor
int r =D4;//for relay
float h;//for humidity
float t;//for temperature
int s;//for soil moisture

void setup()
{

Serial.begin(115200);

Blynk.begin(auth, ssid, pass);//start blynk


dht.begin();//start dht sensor
pinMode(soil, INPUT);//set pinmode for soil moisture sensor as input
pinMode(r,OUTPUT);//set pinmode for relay as output
timer.setInterval(100L, sendSensor);//interval each data send to blynk

void loop()
{

Blynk.run();//start blynk
timer.run();
h = dht.readHumidity();//read humidity from dht 11
t = dht.readTemperature(); // read temeperature from dht 11
s = analogRead(A0);//read moisture from soil sensor
//if fail to read sensor
if (isnan(h) || isnan(t)) {
Serial.println("Failed to read from DHT sensor!");
return;
}
else if (isnan(s)){
Serial.println("Failed to read from Soil Moisture sensor!");
}
//print data in serial monitor
Serial.print("Temperature : ");
Serial.println(t);
Serial.print(" Humidity : ");
Serial.println(h);
Serial.print(" Moisture : ");
Serial.println(s);

//condition for relay to work


if(s>850)//soil is dry{
digitalWrite(r,LOW);//relay on
delay(5000);
digitalWrite(r,HIGH);//relay off
}
if(s>550 && t>29)//soil is slightly dry and temperature is hot{
digitalWrite(r,LOW);//relay on
delay(1000);
digitalWrite(r,HIGH);//relay off;
}
else{
digitalWrite(r,HIGH);//relay off;
}

}
void sendSensor()
{

// You can send any value to blynk cloud


Blynk.virtualWrite(V0, t);
Blynk.virtualWrite(V1, h);
Blynk.virtualWrite(V2, s);

Tambahan :
Disini kami menggunakan 2 sensor yaitu sensor suhu dan sensor
kelembapan tanah. Jika kelembapan tanah tinggi > 850 dari 1023 yang di baca
oleh alat maka menandakan tanah itu kering dan pompa dinyalakan oleh relay
selama 5 detik. Jika tanah >550 yang menandakan masih memiliki kandungan air
tetapi sedikit kering sedangkan suhu di luar tanaman itu lebih tinggi > 29 derajat
menandakan suhu meningkat dan tanaman akan mengalami kekeringan, maka
pompa akan hidup selama 1 detik ( jika tanaman terlalu banyak disiram, tanaman
akan mengalami kebusukan).
Kesimpulan :
Tanaman perlu disiram jika kelembapan tanah sudah tinggi yang dibaca oleh
sensor kelembapan tanah yang menyebabkan kandungan air didalam air sudah
berkurang. Alat yang telah dirangkai oleh kami akan menghidupkan pompa
melalui relay secara otomatis saat sensor kelembapan tanah membaca
kelembapan tanah yang sudah tinggi > 850. Saat kelembapan tanah > 550 itu
menandakan tanah masih mengandung sedikit air tetapi suhu disekitar tinggi > 29
derajat maka tanaman perlu siram juga namun jangan terlalu banyak agar
tanaman tidak busuk karena terlalu banyak air yang disiram.

Link Video Presentasi Kelompok 12 :


https://youtu.be/z6hpsa-UTvg

Anda mungkin juga menyukai