Modul 4 : Laporan Demo Projek


Kontrol smart greenhouse



A.Jurnal
1. Sari, Indah Arsita, Handayani, Anik Nur, dan Lestari, Dyah. 2018. Smart Greenhouse sebagai Media Pembibitan Kentang Granola Kembang Berbasis Mikrokontroler. Prosiding seminar Nasional Teknologi Elektro Terapan 2018. ISSN: 2581-0049. 

2. Musthafa, A., Utama, S., & Harmini, T. (2018). Sistem Kontrol Suhu Ruangan dan Penyiraman Tanaman Bawang Merah pada Greenhouse dengan Smartphone. MULTITEK INDONESIA, 12(2), 95 - 103. doi:https://doi.org/10.24269/mtkind.v12i2.1254

3. Sujadi, Harun dan Nurhidayat, Yayat. 2019. SMART GREENHOUSE MONITORING SYSTEM BASED ON INTERNET OF THINGS. Jurnal J-Ensitec: Vol.06 No. 01. 

4. Rianti, Kurnia Paranita Kartika dan Prastyo, Yogi . Analysis Of The Use Of Temperature And Humidity Sensors For Arduino-Based Greenhouse Environment Monitoring 

5. R. Geethamani and S. Jaganathan, "IoT Based Smart Greenhouse for Future using Node MCU," 2021 7th International Conference on Advanced Computing and Communication Systems (ICACCS), Coimbatore, India, 2021, pp. 1615-1620, doi: 10.1109/ICACCS51430.2021.9441708.

B.Tips and trik
1. https://bibitonline.com/artikel/membuat-green-house-sendiri
2. https://berita.99.co/cara-membuat-rumah-kaca/
3. https://www.pinhome.id/blog/green-house-sederhana/
4. https://rumahlia.com/desain/cara-membuat-green-house
5. https://www.mitrausahatani.com/strategi-cara-membuat-green-house.html

1. Tujuan Perancangan
[Kembali]
    1. Untuk mengetahui pemakaian mikroprosesor dan mikrokontroler pada prototype yang dibuat 
    2. Untuk menghasilkan alat yang dapat bekerja secara otomatis berbasis mikroprosesor dan mikrokontroler


2. Komponen [Kembali]
    1. Arduino uno
Operating Voltage5V
Input Voltage (recommended)7 - 12V
Input Voltage (batas)6-20 V
Digital I/O Pins14 ( 6 sebagai output PWM)
Analog Input Pins6
DC Current per I/O pin40 mA
DC Current untuk 3.3 V pin50 mA
    2. Flame sensor

Spesifikasi dari sensor flame :

·       Tegangan operasi : 5V untuk analog, 3.3V untuk digital

·       Pin keluaran digital dan analog

·       Sensitifnya dapat disesuaikan

·       Deteksi panjang gelombang IR : 760nm – 1100nm

·       Ukuran : 30 15mm

·       Berat : 3g

Pinout dari sensor flame :

Pin

Deskripsi

A0

Pin output analog, mengeluarkan sinyal tegangan output real-time pada resistansi termal. Dengan pin Analog Output bisa diperkirakan letak api karena pembacaan sensor ini yaitu 60 derajat. Dengan memasang sensor secara parallel, dapat diperkirakan kira – kira posisi api dimana, meskipun tidak terlalu akurat.

D0

Pin output digital, mengeluarkan sinyal rendah atau tinggi saat suhu mencapai ambang tertentu yang disesuaikan melalui potensiometer. Dengan pin Digital Output dapat diketahui ada api atau tidak namun tidak dapat mengetahui letak api.

+

Power (5V untuk analog, 3.3V untuk digital)

G

Ground

 


    3. soil moisture

Spesifikasi dari sensor soil moisture :

·       Supply : 3.3V atau 5V

·       Sinyal tegangan keluaran : 0 – 4.2V

·       Arus : 35mA

·       Definisi pin :  a. Keluaran analog (kabel biru)

                       b. GND (kabel hitam)

                       c. Daya (kabel merah)

·       Ukuran: 60 x 20 x 5mm

·       Kisaran nilai :   a. 0 – 300 : tanah kering

                          b. 300 – 700 : tanah lembab

                          c. 700 – 950 : dalam air

Pinout dari sensor soil moisture :

Pin

Deskripsi

A0

(Keluaran Analog) dihubungkan ke Pin Analog

D0

(Keluaran Digital) dihubungkan ke Pin Digital

VCC

Disarankan untuk menyalakan sensor dengan tegangan antara 3.3V – 5V

GND

Ground

    
4. DHT11

Spesifikasi dari sensor dht11 :

·       Tegangan operasi : 3.5V hingga 5.5V

·       Arus : 0.3mA (mengukur) 60uA (siaga)

·       Keluaran data serial

·       Kisaran suhu: 0°C hingga 50°C

·       Kisaran kelembaban: 20% hingga 90%

·       Resolusi: suhu dan kelembaban keduanya 16-bit

·       Akurasi: ±1°C dan ±1%

Pinout dari sensor dht11 :

Pin

Deskripsi

VCC

Supply 3.5V hingga 5.5V

Data

Menampilkan suhu dan kelembaban melalui data serial

NC

Tidak ada koneksi dan karenanya tidak digunakan

GND

Terhubung ke ground sirkuit

    
5. Breadboard

    6. Kabel USB


    7. kabel jumper

    8. potensiometer
Konfigurasi pin:
VCC (+)
output
ground (-)

    9.LCD

Spesifikasi :

·       Format tampilan : 16 x 2 karakter

·       Pengontrol bawaan : ST 7066 (atau setara)

·       Siklus kerja : 1/16

·       5 x 8 titik termasuk kursor

·       Supply + 5 V (juga tersedia untuk + 3 V)

·       LED dapat digerakkan oleh pin 1, pin 2, pin 15, pin 16 atau A dan K

·       N.V. opsional untuk supply + 3 V

    10. motor driver

Spesifikasi :

·       Tegangan Input : 3.2V - 40V

·       Driver : Driver Motor L298N Dual H Bridge DC

·       Supply : 5V

·       Arus puncak : 2A

·       Kisaran operasi : 0 - 36 mA

·       Konsumsi daya maksimum : 20W (ketika suhu 75 ℃)

·       Suhu penyimpanan : -25 ℃ ~ +130 ℃

·       Keluaran pin 10 (sumber tegangan IC) jika berfungsi sebagai pin output : 5V

·       Ukuran : 3.4cm x 4.3cm x 2.7cm


    11. motor pump

Spesifikasi :

·       Nilai Tegangan : DC 12V

·       Beban : Air

·       Penyerapan air : 1L – 1.2L/min

·       Arus (dengan beban) : Kurang dari 320mA

·       Arus : 2.0LPM

·       Ukuran total : D27 x 75mm

·       Diameter lubang air : 6.5mm

·       Tekanan maksimum : Lebih dari 360mmHg

·       Kebisingan : Kurang dari <60dB

    12. baterai

Spesifikasi :

·       Kapasitas nominal : 2200mAh (0.2Ca, debit)

·       Kapasitas minimum : 2100mAh (0.2Ca, debit)

·       Tegangan nominal : 3.7V

·       Metode pengisian : CC – CV (tegangan konstan dengan arus terbatas)

·       Pengisian arus :  a. Biaya standar : 1300mA

                               b. Pengisian cepat : 2600mA

·       Waktu pengisian daya :  a. Biaya standar : 3jam

                                           b. Pengisian cepat : 2.5jam

·       Maks. mengisi arus : 2600mA

·       Maks. debit saat ini : 5200mA

·       Tegangan cut-off discharge : 2.75V

·       Berat sel : maks. 47.0g

·       Dimensi sel :  a. Diameter (maks.) : 18.40mm

                           b. Tinggi (maks.) : 65.00mm

    13. buzzer

Spesifikasi :

·       Nilai tegangan : 6V DC

·       Tegangan pengoperasian : 4 hingga 8V DC

·       Arus : ≤30mA

·       Keluaran suara pada 10cm : ≥85dB

·       Frekuensi resonansi : 2300 ±300Hz

·       Nada : Berkelanjutan

·       Suhu operasional : -25°C hingga +80°C

·       Suhu penyimpanan : -30°C hingga +85°C

·       Berat : 2g


3. Dasar Teori [Kembali]

1.     PWM (Pulse Width Modulation)

            PWM (Pulse Width Modulation) adalah salah satu teknik modulasi dengan mengubah lebar pulsa (duty cylce) dengan nilai amplitudo dan frekuensi yang tetap. Satu siklus pulsa merupakan kondisi high kemudian berada di zona transisi ke kondisi low. Lebar pulsa PWM berbanding lurus dengan amplitudo sinyal asli yang belum termodulasi. Duty Cycle adalah perbandingan antara waktu ON (lebar pulsa High) dengan perioda. Duty Cycle biasanya dinyatakan dalam bentuk persen (%).

·       Duty Cycle = tON / ttotal

·       tON = Waktu ON atau Waktu dimana tegangan keluaran berada pada posisi tinggi (high atau 1)

·       tOFF = Waktu OFF atau Waktu dimana tegangan keluaran berada pada posisi rendah (low atau 0)

·       ttotal = Waktu satu siklus atau penjumlahan antara tON dengan tOFF atau disebut juga dengan “periode satu gelombang”

            Pada board Arduino Uno, pin yang bisa dimanfaatkan untuk PWM adalah pin yang diberi tanda tilde (~), yaitu pin 3, 5, 6, 9, 10, dan pin 11. Pin-pin tersebut merupakan pin yang bisa difungsikan untuk input analog atau output analog. Oleh sebab itu, jika akan menggunakan PWM pada pin ini, bisa dilakukan dengan perintah analogWrite();.

            PWM pada arduino bekerja pada frekuensi 500Hz, artinya 500 siklus/ketukan dalam satu detik. Untuk setiap siklus, kita bisa memberi nilai dari 0 hingga 255. Ketika kita memberikan angka 0, berarti pada pin tersebut tidak akan pernah bernilai 5 volt (pin selalu bernilai 0 volt). Sedangkan jika kita memberikan nilai 255, maka sepanjang siklus akan bernilai 5 volt (tidak pernah 0 volt). Jika kita memberikan nilai 127 (kita anggap setengah dari 0 hingga 255, atau 50% dari 255), maka setengah siklus akan bernilai 5 volt, dan setengah siklus lagi akan bernilai 0 volt. Sedangkan jika jika memberikan 25% dari 255 (1/4 x 255 atau 64), maka 1/4 siklus akan bernilai 5 volt, dan 3/4 sisanya akan bernilai 0 volt, dan ini akan terjadi 500 kali dalam 1 detik.

2.     ADC (Analog to Digital Converter)

            ADC atau Analog to Digital Converter merupakan salah satu perangkat elektronika yang digunakan sebagai penghubung dalam pemrosesan sinyal analog oleh sistem digital. Fungsi utama dari fitur ini adalah mengubah sinyal masukan yang masih dalam bentuk sinyal analog menjadi sinyal digital dengan bentuk kode-kode digital. Ada 2 faktor yang perlu diperhatikan pada proses kerja ADC yaitu kecepatan sampling dan resolusi.

            Kecepatan sampling menyatakan seberapa sering perangkat mampu mengkonversi sinyal analog ke dalam bentuk sinyal digital dalam selang waktu yang tertentu. Biasa dinyatakan dalam sample per second (SPS). Sementara Resolusi menyatakan tingkat ketelitian yang dimilliki. Pada Arduino, resolusi yang dimiliki adalah 10 bit atau rentang nilai digital antara 0 - 1023. Dan pada Arduino tegangan referensi yang digunakan adalah 5 volt, hal ini berarti ADC pada Arduino mampu menangani sinyal analog dengan tegangan 0 - 5 volt. Pada Arduino, menggunakan pin analog input yang diawali dengan kode A (A0- A5 pada Arduino Uno). Fungsi untuk mengambil data sinyal input analog menggunakan analogRead(pin);.

3.     Mikrokontroler

            Arduino Uno adalah board mikrokontroler berbasis ATmega328 (datasheet). Memiliki 14 pin input dari output digital dimana 6 pin input tersebut dapat digunakan sebagai output PWM dan 6 pin input analog, 16 MHz osilator kristal, koneksi USB, jack power, ICSP header, serta tombol reset. Untuk mendukung mikrokontroler agar dapat digunakan, cukup hanya menghubungkan Board Arduino Uno ke komputer dengan menggunakan kabel USB atau listrik dengan AC yang ke adaptor DC atau baterai untuk menjalankannya.

            Setiap 14 pin digital pada arduino uno dapat digunakan sebagai input dan output, menggunakan fungsi pinMode(), digitalWrite(), dan digitalRead(). Fungsi – fungsi tersebut beroperasi di tegangan 5 volt. Setiap pin dapat memberikan atau menerima suatu arus maksimum 40 mA dan mempunyai sebuah resistor pull-up (terputus secara default) 20-50 kOhm.

 

4.     Komunikasi

4.1.  Universal Asynchronous Receiver Transmitter (UART)

            UART (Universal Asynchronous Receiver-Transmitter) adalah bagian perangkat keras komputer yang menerjemahkan antara bit-bit paralel data dan bit-bit serial. UART biasanya berupa sirkuit terintegrasi yang digunakan untuk komunikasi serial pada komputer atau port serial perangkat periperal.



Cara Kerja Komunikasi UART :

            Data dikirimkan secara paralel dari data bus ke UART1. Pada UART1 ditambahkan start bit, parity bit, dan stop bit kemudian dimuat dalam satu paket data. Paket data ditransmisikan secara serial dari Tx UART1 ke Rx UART2. UART2 mengkonversikan data dan menghapus bit tambahan, kemudian ditransfer secara parallel ke data bus penerima.

5.     Sensor

5.1.  Sensor Flame

   Flame Sensor adalah komponen elektronika yang memiliki fungsi dapat mendeteksi nyala api dengan panjang gelombang 760nm – 1100nm. Sensor nyala api ini mempunyai sudut pembacaan 60 derajat, dan beroperasi pada suhu -25 derajat -85 derajat. Dan jarak pembacaan antara sensor dan objek yang dideteksi tidak boleh terlalu dekat, untuk menghindari kerusakan sensor.

5.2.  Sensor Soil Moisture

    Soil Moisture Sensor adalah sebuah jenis sensor yang fungsinya adalah untuk mengukur kelembaban tanah. Prinsip operasinya adalah mendeteksi kelembaban di sekitar tanah, meskipun secara teknis sensor ini tidak dapat mendeteksi kelembaban tanah.

    Sensor mengenakan dua konduktor yang di buat untuk mengalirkan arus melalui tanah yang di ukur kelembabanya dan kemudian sensor mulai membaca nilai resistansi untuk menentukan tingkat kelembabanpada tanah. Semakin banyak air dalam tanah berarti konduktivitas yang lebih baik dan akan menghasilkan resistansi yang lebih rendah. Semakin sedikit air dalam tanah berarti konduktivitas yang buruk dan akan menghasilkan resistansi yang lebih tinggi.


5.3.  Sensor DHT11

            Sensor DHT11 merupakan sensor yang berfungsi untuk mengukur suhu dan kelembaban udara sekaligus yang di dalamnya terdapat thermistor tipe NTC (Negative Temperature Coefficient) untuk mengukur suhu, sebuah sensor kelembapan dengan karkteristik resistif terhadap perubahan kadar air di udara serta terdapat chip yang di dalamnya melakukan beberapa konversi analog ke digital dan mengeluarkan output dengan format single-wire bi-directional (kabel tunggal dua arah).

6.     LCD

            LCD (Liquid-Crystal Display) atau Penampil Kristal Cair adalah layar panel datar atau perangkat optik elektronik termodulasi yang menggunakan sifat modulasi cahaya dari kristal cair (liquid crystal) yang dikombinasikan dengan polarizer. Kristal cair tidak memancarkan cahaya secara langsung, melainkan menggunakan lampu latar atau reflektor untuk menghasilkan gambar berwarna atau monokrom.

7.     Buzzer

    Buzzer adalah sebuah komponen elektronika yang dapat menghasilkan getaran suara berupa gelombang bunyi. Buzzer akan menghasilkan getaran suara ketika diberikan sejumlah tegangan listrik dengan taraf tertentu sesuai dengan spesifikasi bentuk dan ukuran buzzer itu sendiri. Pada umumnya, buzzer ini sering digunakan sebagai alarm karena penggunaannya yang cukup mudah yaitu dengan memberikan tegangan input maka buzzer akan menghasilkan getaran suara berupa gelombang bunyi yang dapat didengar.

8.     Baterai

            Baterai merupakan alat listrik-kimiawi yang menyimpan energi serta mengeluarkan tenaganya dalam bentuk listrik. Baterai ialah perangkat yang mampu menghasilkan tegangan DC, yaitu dengan cara mengubah energi kimia yang terkandung di dalamnya menjadi energi listrik melalui suatu reaksi elektrokimia, Redoks (Reduksi – Oksidasi). Baterai yang biasa dijual (disposable/sekali pakai) ini mempunyai tegangan listrik 1,5 volt. Baterai ada yang berbentuk tabung ataupun kotak.

9.     Motor driver

    Motor driver adalah sebuah modul yang sering sekali digunakan untuk mengendalikan motor DC. Dengan menggunakan motor driver dapat dengan mudah mengendalikan baik itu kecepatan maupun arah rotasi 2 motor sekaligus. Motor driver dirancang menggunakan IC L298 Dual H-Bridge Motor Driver berisikan gerbang gerbang logika yang sudah sangat populer dalam dunia elektronika sebagai pengendali motor.

10.  Motor Pump

            Motor pump / pompa air adalah alat untuk menggerakan air dari tempat bertekanan rendah ke tempat bertekanan yang lebih tinggi. Pada dasarnya motor pump sama dengan motor DC pada umumnya, hanya saja sudah di-packing sedemikian rupa sehingga dapat digunakan di dalam air.

4. Listing Program [Kembali]

MASTER

#include <LiquidCrystal.h>

LiquidCrystal lcd (8, 7, 6, 5, 4, 3);

#include <Adafruit_Sensor.h>

#include "DHT.h"

#define DHTPIN A5

#define DHTTYPE DHT11

DHT dht(DHTPIN, DHTTYPE);

#define out 13

int SensorSoil = A0;

int flame_sensor = 12 ;

 

void setup()

{

  Serial.begin(115200);

  pinMode(flame_sensor, INPUT);

  pinMode(SensorSoil, INPUT);

  pinMode(out, OUTPUT);

  dht.begin();

  lcd.begin(16, 2);

  lcd.setCursor(0,0);

  lcd.print("     Status     ");

  delay(500);

  lcd.clear();

}

void loop() {

  ////flame

  int flame_detected = digitalRead(flame_sensor) ;

  if (flame_detected == 1) {

    digitalWrite(out, HIGH);

  }

  else {

    digitalWrite(out, LOW);

  }

  delay(100);

 

  ////DHT 11

  float t = dht.readTemperature();

  float h = dht.readHumidity();

  lcd.setCursor(0, 0);

  lcd.print("t=");

  lcd.setCursor(2, 0);

  lcd.print(t);

  lcd.setCursor(7, 0);

  lcd.print("|H=");

  lcd.setCursor(10, 0);

  lcd.print(h);

 

  ////Sensor Soil moisture

  int SoilValue = analogRead(SensorSoil);

  lcd.setCursor(0, 1);

  if ( SoilValue < 700 ) {

    Serial.println('1');

    lcd.print("kelembapanT >70");

  }

  else {

    Serial.println('2');

    lcd.print("kelembapanT <70");

  }

  delay(100);

}

SLAVE

#define in3 10

#define in4 11

 

void setup()

{

  Serial.begin(115200);         

  pinMode(in3,OUTPUT);

  pinMode(in4,OUTPUT);

}

 

void loop()                         

{

  if ((Serial.available() > 0))

  {

    int data = Serial.read();  

      if(data == '1'){

      digitalWrite(in3,LOW);

      digitalWrite(in4,LOW);

      delay(10);

    }

      else if(data == '2'){

      digitalWrite(in3,HIGH);

      digitalWrite(in4,LOW);

      delay(10);

    } 

  }

}


5. Flowchart
[Kembali]



6. Rangkaian Simulasi [Kembali]


7. Hardware dan vidio [Kembali]

1. Hardware
2. vidio


8. Analisis [Kembali]

    ada ragkaian green house ini, pertama kali sensor soil moisture dengan pin A0 dihubungkan dengan arduino master pin A0, lalu pin Tx master terhubung ke pin Rx slave dan pin Rx master terhubung ke pin Tx slave. Kemudian pin – pin pada arduino master terhubung dengan LCD, yaitu pin RS ke pin CLK, pin RW ke ground, pin E ke pin AIN1 (pin 7 pada master), pin D4 ke pin AIN1 (pin 6 pada master), pin D5 ke pin T1, pin D6 ke pin T0, dan pin D7 ke pin INT1. Pin pada arduino slave terhubung dengan pin pada motor driver dengan pin OC1B ke IN3 dan OC2A ke pin IN4. Pin VS pada motor driver dihubungkan ke baterai, pin OUT3 dan OUT4 dengan motor pump.     Untuk sensor dht11, pin DATA dihubungkan dengan pin SCL pada arduino master, dan pin – pin pada arduino master terhubung dengan pin – pin yang ada pada LCD. Terakhir, pada sensor flame dengan pin OUT terhubung dengan pin MISO di arduino master, dan pin SCK arduino master dihubungkan ke buzzer.
    Pada rangkaian, digunakan 3 sensor (sensor soil moisture, dht11, dan flame), 2 arduino (master dan slave), LCD 2x16, buzzer, baterai, motor driver, dan motor pump. Komunikasi yang digunakan pada arduino adalah UART, dimana pin Tx master terhubung dengan pin Rx slave dan pin Rx master terhubung dengan pin Tx slave. Untuk penjelasan sensor, sensor yang digunakan yaitu sensor soil moisture, dht11, dan flame. Sensor soil moisture berfungsi untuk mendeteksi kelembapan tanah. Jika pembacaan sensornya di bawah 700 maka LCD akan menampilkan kalimat kelembapan tanah di atas 70 dan motor pump tidak akan berputar. Jika pembacaan sensornya di atas 700 maka LCD akan menampilkan kalimat kelembapan tanah di bawah 70 dan motor pump akan berputar. Kemudian, sensor dht11 untuk mengukur suhu di sekitar dalam green house dan kelembaban udara dengan outputnya ditampilkan pada LCD. Selanjutnya, sensor flame bekerja saat api terdeteksi, jika terjadi kebakaran maka buzzer akan berbunyi
    
9. Kesimpulan [Kembali]
    Smart greenhouse ini ditujukan untuk mengontrol tanaman agar kelembaman tanah tetap terjaga sehingga tanaman tumbuh secara maksimal, memproteksi greenhouse apabila terjadi kebakaran dengan berbunyi buzzer sehingga masalah pada greenhouse dapat diatasi dan memonitoring suhu dan kelembapan udara pada greenhouse dengan menampilkan nilai pada LCD

10. Link Download [Kembali]
download html disini
download rangkaian dan listing program disini
download vidio disini
download datasheet arduino uno disini
download datasheet flame sensor disini
download datasheet DHT11 disini
download datasheet soil moisture disini
download datasheet motor driver disini
download datasheet Buzzer disini
download datasheet  LCD [disini]
download datasheet motor pump [disini]
download datasheet  potensiometer [disini]