M4




Laporan Akhir
Project Demo Modul IV
Alarm Peringatan di Kawasan Bebas Asap Rokok 

1.   Tujuan Perancangan (DAFTAR ISI)

        Tujuan perancangan smart green house ini adalah agar mempermudah pemilik dalam pengukuran suhu ruangan agar tanaman dapat terjaga dengan baik.

2.   Komponen (DAFTAR ISI)

 

a.      Arduino Uno



 

b.      Sensor Soil Moisture

     

c.       Sensor DHT11


 

d.      Sensor PIR



 

                     e.      Motor Servo



f.        LCD



g.       LED



h.      Buzzer



i.        Relay





j.        Pompa Air



 

k.      Kipas DC



                    l.        Resistor

                            



m.    Breadboard



n.      Jumper



                    o.      Potensiometer

                            

                

p.      Kabel USB





3.   Dasar Teori (DAFTAR ISI)

a.     Komunikasi UART

     UART atau 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. UART sekarang ini termasuk di dalam beberapa mikrokontroler, contohnya PIC16F628.

 

     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.


Gambar 1. 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, kemudia di transfer secara parallel ke data bus penerima.


b.     Arduino Uno

Arduino adalah kit elektronik atau papan rangkaian elektronik open source yang di dalamnya terdapat komponen utama yaitu sebuah chip mikrokontroler dengan jenis AVR dari perusahaan Atmel. Arduino yang kita gunakan dalam praktikum ini adalah Arduino Uno yang menggunakan chip AVR ATmega 328P. Dalam memprogram Arduino, kita bisa menggunakan komunikasi serial agar Arduino dapat berhubungan dengan komputer ataupun perangkat lain.



Gambar 2. Arduino

 

Adapun spesifikasi dari Arduino Uno ini adalah sebagai berikut :


 

Bagian-bagian Arduino UNO :

1.     Power USB

Digunakan untuk menghubungkan Papan Arduino dengan komputer lewat koneksi USB.

2.     Power Jack

Supply atau sumber listrik untuk Arduino dengan tipe Jack. Input DC 5 – 12 V.

3.     Crystal Oscillator

Kristal ini digunakan sebagai layaknya detak jantung pada Arduino. Jumlah cetak menunjukkan 16000 atau 16000 kHz, atau 16 MHz.

4.     Reset

Digunakan untuk mengulang program Arduino dari awal atau Reset.

5.     Digital Pins I / O

Papan Arduino UNO memiliki 14 Digital Pin. Berfungsi untuk memberikan nilai logika (0 atau 1). Pin berlabel " ~ " adalah pin-pin PWM (Pulse Width Modulation) yang dapat digunakan untuk menghasilkan PWM.

6.     Analog Pins

Papan Arduino UNO memiliki 6 pin analog A0 sampai A5. Digunakan untuk membaca sinyal atau sensor analog seperti sensor jarak, suhu dsb, dan mengubahnya menjadi nilai digital.

                    7.     LED Power Indicator

Lampu ini akan menyala dan menandakan Papan Arduino mendapatkan supply listrik dengan baik.

 

c.     Sensor Soil Moisture



Gambar 3. Sensor SoilMoisture

Soil Moisture Sensor merupakan suatu modul yang berfungsi untuk mendeteksi tingkat kelembapan tanah menggunakan mikrokontroler seperti arduino. Sensor kelembapan tanah ini dapat dimanfaatkan pada sistem pertanian, perkebunan, maupun sistem hidroponik menggunakan hidroton.

Cara penggunaan modul ini cukup mudah, yakni dengan memasukkan sensor ke dalam tanah dan setting potensiometer untuk mengatur sensitifitas dari sensor. Keluaran dari sensor akan bernilai 1 / 0 ketika kelembapan tanah menjadi tinggi/ rendah yang dapat di treshold dengan potensiometer.

Spesifikasi dari sensor ini adalah :

1.     Comparator menggunakan LM393

2.     Hanya menggunakan 2 plat kecil sebagai sensor

3.     Supply Tegangan 3.3-5 VDC

4.     Digital output D0 dapat secara langsung dikoneksikan dengan MCU dengan mudah

 

d.     Sensor DHT11

 

Sensor DHT11 adalah module sensor yang berfungsi untuk mendeteksi suhu dan kelembaban yang memiliki output tegangan analog yang dapat diolah lebih lanjut menggunakan mikrokontroler. Module sensor ini tergolong kedalam elemen resistif seperti perangkat pengukur suhu seperti contohnya yaitu NTC.

Kelebihan dari module sensor ini dibanding module sensor lainnya yaitu dari segikualitas pembacaan data sensing yang lebih responsif yang memliki kecepatan dalam hal sensing objek suhu dan kelembaban, dan data yang terbaca tidak mudah terinterverensi. Sensor DHT11 pada umumya memiliki fitur kalibrasi nilai pembacaan suhu dan kelembaban yang cukup akurat.

Penyimpanan data kalibrasi tersebut terdapat pada memori program OTP yang disebut juga dengan nama koefisien kalibrasi.Sensor ini memiliki 4 kaki pin, dan terdapat juga sensor DHT11 dengan breakout PCB yang terdapat hanya memilik 3 kaki pin seperti gambar dibawah ini.



Gambar 4. Sensor DHT 11

 

 

e.     Sensor PIR



Gambar 5. Sensor PIR

 

Sensor PIR (Passive Infrared Receiver) adalah sebuah sensor yang biasa digunakan untuk mendeteksi keberadaan manusia. Aplikasi ini biasa digunakan untuk system alarm pada rumah-rumah atau perkantoran. Sensor PIR adalah sebuah sensor yang menangkap pancaran sinyal inframerah yang dikeluarkan oleh tubuh manusia maupun hewan. Sensor PIR dapat merespon perubahan- perubahan pancaran sinyal inframerah yang dipancarkan oleh tubuh manusia.
 
Sensor PIR ini terdapat bagian-bagian yang mempunyai perannya masing-masing, yaitu Fresnel Lens, IR Filter, Pyroelectric sensor, amplifier, dan comparator.
 Bagian PIR Sensor

a) Fresnel Lens
     Fresnel Lens untuk memfokuskan sinar terang, tetapi juga karena intensitas cahaya  yang relatif konstan di seluruh lebar berkas cahaya
 
b) IR Filter
     IR Filter di modul sensor PIR ini mampu menyaring panjang gelombang sinar infrared pasif antara 8 sampai 14 mikrometer, sehingga panjang gelombang yang dihasilkan dari tubuh manusia yang berkisar antara 9 sampai 10 mikrometer ini saja yang dapat dideteksi oleh sensor. Sehingga Sensor PIR hanya bereaksi pada tubuh manusia saja.
 
c) Pyroelectric sensor
    Seperti tubuh manusia yang memiliki suhu tubuh kira-kira 320 C, yang merupakan suhu panas yang khas yang terdapat pada lingkungan. Pancaran sinar inframerah inilah yang kemudian ditangkap oleh Pyroelectric sensor yang merupakan inti dari sensor PIR. 
 
d) Amplifier
     Sebuah sirkuit amplifier yang ada menguatkan arus yang masuk pada material pyroelectric.
 
e) Komparator
     Setelah dikuatkan oleh amplifier kemudian arus dibandingkan oleh komparator sehingga menghasilkan output.
Berikut ini adalah Karakteristik dari sensor PIR :
1. Tegangan operasi 4.7 - 5 Volt
2. Arus standby (tanpa beban) 300 μA
3. Suhu kerja antara -20 oC - 50 oC
4. Jangkauan deteksi 5 meter
5. Kecepatan deteksi 0.5 detik
 

 



Gambar 6. Grafik Pir terhadap arah , jarak, dan kecepatan

 

Pada grafik tersebut ; (a) Arah yang berbeda mengasilkan tegangan yang bermuatan berbeda ; (b) Semakin dekat jarak objek terhadap sensor PIR, maka semakin besar tegangan output yang dihasilkan ; (c) Semakin cepat objek bergerak, maka semakin cepat terdeteksi oleh sensor PIR karena infrared yang ditimbulkan dengan lebih cepat oleh objek semakin mudah dideteksi oleh PIR, namun semakin sedikit juga waktu yang dibutuhkan karena sudah diluar jangkauan sensor PIR.

 

f.      Motor Servo



Gambar 7. f.        Motor Servo

Motor servo adalah motor yang mampu bekerja dua arah (CW dan CCW) dimana arah dan sudut pergerakan rotornya dapat dikendalikan dengan memberikan variasi lebar pulsa (duty cycle) sinyal PWM pada bagian pin kontrolnya.

Spesifikasinya kurang lebih sebagai berikut :

tegangan kerja : 4,8 – 6 Vdc

torsi : 1,6 kg/cm

arus : < 500 mA

dimensi : 22 x 12,5 x 29,5 cm

berat : 9 gr

kecepatan putaran: 0,12 detik/60 derajat

Konfigurasi Pin :




 

g.     LCD



Gambar 8. LCD

LCD atau Liquid Crystal Display merupakan suatu peralatan elektronika yang berfungsi untuk menampilkan output dari suatu sistem dengan cara membentuk suatu citra atau gambaran pada layar. Sebuah citra dibentuk dengan mengombinasikan kondisi nyala dan mati dari pixel-pixel yang menyusun layar sebuah LCD.

LCD terdiri atas dua bagian utama yaitu bagian Backlight (Lampu Latar Belakang) dan bagian Liquid Crystal (Kristal Cair). LCD tidak memancarkan pencahayaan apapun, tetapi hanya merefleksikan dan mentransmisikan cahaya yang melewatinya. Oleh karena itu, LCD memerlukan Backlight atau Cahaya latar belakang untuk sumber cahayanya. Cahaya Backlight tersebut pada umumnya adalah berwarna putih. Sedangkan Kristal Cair (Liquid Crystal) adalah cairan organik yang berada diantara dua lembar kaca yang memiliki permukaan transparan yang konduktif.

                          Keterangan:

1        Film dengan polarizing filter vertical untuk memolarisasi cahaya yang masuk.

2        Glass substrate yang berisi kolom-kolom elektroda Indium tinoxide (ITO).

3        Twisted nematic liquid crystal (kristal cair dengan susunan terpilin).

4        Glass substrate yang berisibaris-baris elektroda Indium tinoxide (ITO).

5        Film dengan polarizing filter horizontal untuk memolarisasi cahaya yang masuk.

6        Reflektor cahaya untuk memantulkan cahaya yang masuk LCD kembali ke pengamat.

 

Umumnya LCD sudah memiliki integrated circuit tersendiri sehingga para pengguna dapat mengontrol tampilan LCD dengan mudah menggunakan mikrokontroler untuk mengirimkan data melalui pin-pin input yang sudah tersedia.



  

h.     Buzzer



Gambar 9.Buzzer

Buzzer adalah sebuah komponen elektronika yang berfungsi untuk mengubah getaran listrik menjadi getaran suara getaran listrik menjadi getaran suara.

Pada dasarnya prinsip kerja buzzer hampir sama dengan loudspeaker, jadi buzzer juga terdiri dari kumparan yang terpasang pada diafragma dan kemudian kumparan tersebut dialiri arus sehingga menjadi elektromagnet, kumparan tadi akan tertarik ke dalam atau keluar, tergantung dari arah arus dan polaritas magnetnya, karena kumparan dipasang pada diafragma maka setiap gerakan kumparan akan menggerakkan diafragma secara bolak-balik sehingga membuat udara bergetar yang akan menghasilkan suara.

Buzzer biasa digunakan sebagai indikator bahwa proses telah selesai atau terjadi suatu kesalahan pada sebuah alat (alarm).


i.      Relay



Gambar 10. Relay

Relay adalah Saklar (Switch) yang dioperasikan secara listrik dan merupakan komponen Electromechanical (Elektromekanikal) yang terdiri dari 2 bagian utama yakni Elektromagnet (Coil) dan Mekanikal (seperangkat Kontak Saklar/Switch).

Relay menggunakan Prinsip Elektromagnetik untuk menggerakkan Kontak Saklar sehingga dengan arus listrik yang kecil (low power) dapat menghantarkan listrik yang bertegangan lebih tinggi. Sebagai contoh, dengan Relay yang menggunakan Elektromagnet 5V dan 50 mA mampu menggerakan Armature Relay (yang berfungsi sebagai saklarnya) untuk menghantarkan listrik 220V 2A.



 

j.      Pompa Air

                                     


                                                     

Gambar 11.Pompa Air

Pompa Air DC merupakan jenis pompa yang menggunakan motor dc dan tegangan searah sebagai sumber tenaganya[8]. Dengan memberikan beda tegangan pada kedua terminal tersebut, motor akan berputar pada satu arah, dan bila polaritas dari tegangan tersebut dibalik maka arah putaran motor akan terbalik pula. Polaritas dari tegangan yang diberikan pada dua terminal menentukan arah putaran motor, sedangkan besar dari beda tegangan pada kedua terminal menentukan kecepatan motor.

Pompa Air DC memiliki 3 bagian dasar :

1.     Bagian yang tetap/stasioner yang disebut stator. Stator ini menghasilkan medan magnet, baik yang dibangkitkan dari sebuah koil (elektro magnet) ataupun magnet permanen.

2.     Bagian yang berputar disebut rotor. Rotor ini berupa sebuah koil dimana arus listrik mengalir.

3.     Gear Box yang dipasang pada pompa. Gear box ini didalamnya terdapat gear yang dipasang pada ujung rotor untuk menghisap air.Gaya elektromagnet pada motor DC timbul saat ada arus yang mengalir pada penghantar yang berada dalam medan magnet. Medan magnet itu sendiri ditimbulkan oleh megnet permanen. Garis-garis gaya magnet mengalir diantara dua kutub magnet dari kutub utara ke kutub selatan.

 

 

k.     Kipas DC

Rangkaian kontrol fan kipas 5 volt dc ini berfungsi untuk mengendalikan kecepatan putaran motor dc 5 volt. Pengertian motor dc dan prinsip kerjanya motor listrik dc atau dc motor adalah suatu perangkat yang mengubah energi listrik menjadi energi kinetik atau gerakan motion motor dc ini juga dapat disebut sebagai motor arus searah. Motor dc atau motor arus searah sebagaimana namanya menggunakan arus langsung dan tidak langsung direct unidirectional



Gambar 12. Kipas

 

l.      Resistor

Resistor merupakan komponen penting dan sering dijumpai dalam sirkuit Elektronik. Boleh dikatakan hampir setiap sirkuit Elektronik pasti ada Resistor. Tetapi banyak diantara kita yang bekerja di perusahaan perakitan Elektronik maupun yang menggunakan peralatan Elektronik tersebut tidak mengetahui cara membaca kode warna ataupun kode angka yang ada ditubuh Resistor itu sendiri. Seperti yang dikatakan sebelumnya, nilai Resistor yang berbentuk Axial adalah diwakili oleh Warna-warna yang terdapat di tubuh (body) Resistor itu sendiri dalam bentuk Gelang. Umumnya terdapat 4 Gelang di tubuh Resistor, tetapi ada juga yang 5 Gelang. Gelang warna Emas dan Perak biasanya terletak agak jauh dari gelang warna lainnya sebagai tanda gelang terakhir. Gelang Terakhirnya ini juga merupakan nilai toleransi pada nilai Resistor yang bersangkutan. Tabel dibawah ini adalah warna-warna yang terdapat di Tubuh Resistor:



Gambar 13. Resistor




Tabel Kode Warna ResistorPerhitungan untuk Resistor dengan 4 Gelang warna :



Cara menghitung nilai resistor 4 gelang Masukkan angka langsung dari kode warna Gelang ke-1 (pertama) Masukkan angka langsung dari kode warna Gelang ke-2 Masukkan Jumlah nol dari kode warna Gelang ke-3 atau pangkatkan angka tersebut dengan 10 (10n) Merupakan Toleransi dari nilai Resistor tersebut .


m.   LED







LED adalah suatu semikonduktor yang memancarkan cahaya, LED mempunyai kecenderungan polarisasi. LED mempunyai kutub positif dan negatif (p-n) dan hanya akan menyala bila diberikan arus maju. Ini dikarenakan LED terbuat dari bahan semikonduktor yang hanya akan mengizinkan arus listrik mengalir ke satu arah dan tidak ke arah sebaliknya. Bila LED diberikan arus terbalik, hanya akan ada sedikit arus yang melewati LED. Ini menyebabkan LED tidak akan mengeluarkan emisi cahaya.

Prinsip Kerja LED:

Karena LED adalah salah satu jenis dioda maka LED memiliki 2 kutub yaitu anoda dan katoda. Dalam hal ini LED akan menyala bila ada arus listrik mengalir dari anoda menuju katoda. Pemasangan kutub LED tidak boleh terebalik karena apabila terbalik kutubnya maka LED tersebut tidak akan menyala. Led memiliki karakteristik berbeda-beda menurut warna yang dihasilkan. Semakin tinggi arus yang mengalir pada led maka semakin terang pula cahaya yang dihasilkan, namun perlu diperhatikan bahwa besarnya arus yang diperbolehkan 10mA- 20mA dan pada tegangan 1,6V – 3,5 V menurut karakter warna yang dihasilkan. Apabila arus yang mengalir lebih dari 20mA maka led akan terbakar. Untuk menjaga agar LED tidak terbakar perlu kita gunakan resistor sebagai penghambat arus.

 

n.     Potensiometer



Gambar 15. Potensiometer

Potensiometer adalah salah satu jenis Resistor yang Nilai Resistansinya dapat diatur sesuai dengan kebutuhan Rangkaian Elektronika ataupun kebutuhan pemakainya. Potensiometer merupakan Keluarga Resistor yang tergolong dalam Kategori Variable Resistor. Secara struktur, Potensiometer terdiri dari 3 kaki Terminal dengan sebuah shaft atau tuas yang berfungsi sebagai pengaturnya. Gambar dibawah ini menunjukan Struktur Internal Potensiometer beserta bentuk dan Simbolnya.

Pada dasarnya bagian-bagian penting dalam Komponen Potensiometer adalah:

·       Penyapu atau disebut juga dengan Wiper

·       Element Resistif

·       Terminal

 

Berdasarkan bentuknya, Potensiometer dapat dibagi menjadi 3 macam, yaitu:

Potensiometer Slider, yaitu Potensiometer yang nilai resistansinya dapat diatur dengan cara menggeserkan Wiper-nya dari kiri ke kanan atau dari bawah ke atas sesuai dengan pemasangannya. Biasanya menggunakan Ibu Jari untuk menggeser wiper-nya

Potensiometer Rotary, yaitu Potensiometer yang nilai resistansinya dapat diatur dengan cara memutarkan Wiper-nya sepanjang lintasan yang melingkar. Biasanya menggunakan Ibu Jari untuk memutar wiper tersebut. Oleh karena itu, Potensiometer Rotary sering disebut juga dengan Thumbwheel Potentiometer.

Potensiometer Trimmer, yaitu Potensiometer yang bentuknya kecil dan harus menggunakan alat khusus seperti Obeng (screwdriver) untuk memutarnya. Potensiometer Trimmer ini biasanya dipasangkan di PCB dan jarang dilakukan pengaturannya.

Sebuah Potensiometer (POT) terdiri dari sebuah elemen resistif yang membentuk jalur (track) dengan terminal di kedua ujungnya. Sedangkan terminal lainnya (biasanya berada di tengah) adalah Penyapu (Wiper) yang dipergunakan untuk menentukan pergerakan pada jalur elemen resistif (Resistive). Pergerakan Penyapu (Wiper) pada Jalur Elemen Resistif inilah yang mengatur naik-turunnya Nilai Resistansi sebuah Potensiometer.

Elemen Resistif pada Potensiometer umumnya terbuat dari bahan campuran Metal (logam) dan Keramik ataupun Bahan Karbon (Carbon). Berdasarkan Track (jalur) elemen resistif-nya, Potensiometer dapat digolongkan menjadi 2 jenis yaitu Potensiometer Linear (Linear Potentiometer) dan Potensiometer Logaritmik (Logarithmic Potentiometer).

Dengan kemampuan yang dapat mengubah resistansi atau hambatan, Potensiometer sering digunakan dalam rangkaian atau peralatan Elektronika dengan fungsi-fungsi sebagai berikut: ·     

·       Sebagai pengatur Volume pada berbagai peralatan Audio/Video seperti Amplifier, Tape Mobil, DVD Player.

·       Sebagai Pengatur Tegangan pada Rangkaian Power Supply

·       Sebagai Pembagi Tegangan Aplikasi Switch TRIAC

·       Digunakan sebagai Joystick pada Tranduser

·       Sebagai Pengendali Level Sinyal

 

4.   Listing Program (DAFTAR ISI)

1)  Master 

#include <DHT.h>                 

#include <DHT_U.h>

#include <LiquidCrystal.h>       

#include <Servo.h>

#define DHTPIN 6

#define DHTTYPE DHT11  

DHT dht(DHTPIN, DHTTYPE);

 

#define SOIL A1  // deklarasi sensor soil di pin analog 1

#define PIR 7 // deklarasi sensor pir di pin DIGITAL 5

LiquidCrystal lcd(8, 9, 10, 11, 12, 13);         

 

Servo myservo; 

 

int nilaiSOIL;

int LED[] = {2, 3, 4};

int pinPIR = 7;

int statusPIR;

int pintu = 5;

int pos = 0;   

 

 

void setup()    

{

  pinMode(6, INPUT);                          

  pinMode(A1, INPUT);

pinMode(5, OUTPUT );

pinMode(pinPIR, INPUT);

  lcd.begin(16, 2);                            

  for (int i = 0; i <= 3; i++) {

    pinMode (LED[i], OUTPUT);

  }

 

  Serial.begin(9600);

  dht.begin();

 

  myservo.attach(5); 

 

}

void loop()  

{

  float nilaiSuhu = dht.readTemperature() ;   

  nilaiSOIL = analogRead(SOIL);

  if (nilaiSuhu > 0 && nilaiSuhu < 25)

  {

    nilaiSOIL = analogRead(SOIL);

 

    if ( nilaiSOIL >= 600 && nilaiSOIL <= 700) {

      digitalWrite(2, HIGH);

      digitalWrite(3, LOW);

      digitalWrite(4, LOW);

      Serial.print("1");

 

      lcd.clear();                            

      lcd.setCursor(0, 0);                   

      lcd.print("Suhu : ");          

      lcd.setCursor(8, 0);                   

      lcd.print(nilaiSuhu);                   

      lcd.setCursor(0, 1);                   

      lcd.print("Kondisi : Normal");

      delay(1000);

      lcd. setCursor(10,1);

      delay(3000);

    }

 

    else if (nilaiSOIL > 700) {

      digitalWrite(2, HIGH);

      digitalWrite(3, LOW);

      digitalWrite(4, LOW);

      Serial.print("2");

 

      lcd.clear();                            

      lcd.setCursor(0, 0);                    

      lcd.print("Suhu : ");          

      lcd.setCursor(8, 0);                    

      lcd.print(nilaiSuhu);                   

      lcd.setCursor(0, 1);                    

      lcd.print("Kondisi : Kering");

            delay(500);

      lcd. setCursor(10,1);

      delay(3000);

    }

 

 

    else if (nilaiSOIL < 600) {

      digitalWrite(2, HIGH);

      digitalWrite(3, LOW);

      digitalWrite(4, LOW);

      Serial.print("3");

 

      lcd.clear();                            

      lcd.setCursor(0, 0);                    

      lcd.print("Suhu : ");          

      lcd.setCursor(8, 0);                    

      lcd.print(nilaiSuhu);                   

      lcd.setCursor(0, 1);                    

      lcd.print("Kondisi : Basah");

            delay(500);

      lcd. setCursor(10,1);

      delay(3000);

    }

  }

  else if (nilaiSuhu > 24 && nilaiSuhu < 31)

  {

    nilaiSOIL = analogRead(SOIL);

 

    if ( nilaiSOIL >= 600 && nilaiSOIL <= 700) {

      digitalWrite(2, LOW);

      digitalWrite(3, HIGH);

      digitalWrite(4, LOW);

      Serial.print("4");

 

      lcd.clear();                            

      lcd.setCursor(0, 0);                     

      lcd.print("Suhu : ");          

      lcd.setCursor(8, 0);                    

      lcd.print(nilaiSuhu);                   

      lcd.setCursor(0, 1);                    

      lcd.print("Kondisi : Normal");

            delay(500);

      lcd. setCursor(10,1);

      delay(3000);

    }

    else if (nilaiSOIL > 700) {

      digitalWrite(2, LOW);

      digitalWrite(3, HIGH);

      digitalWrite(4, LOW);

      Serial.print("5");

 

      lcd.clear();                            

      lcd.setCursor(0, 0);                   

      lcd.print("Suhu : ");          

      lcd.setCursor(8, 0);                    

      lcd.print(nilaiSuhu);                   

      lcd.setCursor(0, 1);                    

      lcd.print("Kondisi : Kering");

            delay(500);

      lcd. setCursor(10,1);

      delay(3000);

    }

 

 

    else if (nilaiSOIL < 600){

      digitalWrite(2, LOW);

      digitalWrite(3, HIGH);

      digitalWrite(4, LOW);

      Serial.print("6");

 

      lcd.clear();                             

      lcd.setCursor(0, 0);                    

      lcd.print("Suhu : ");          

      lcd.setCursor(8, 0);                    

      lcd.print(nilaiSuhu);                   

      lcd.setCursor(0, 1);                    

      lcd.print("Kondisi : Basah");

            delay(500);

      lcd. setCursor(10,1);

      delay(3000);

    }

 

  }

 

  else if (nilaiSuhu >= 31) {

 

    nilaiSOIL = analogRead(SOIL);

 

    if ( nilaiSOIL >= 600 && nilaiSOIL <= 700) {

      digitalWrite(2, LOW);

      digitalWrite(3, LOW);

      digitalWrite(4, HIGH);

      Serial.print("7");

 

      lcd.clear();                            

      lcd.setCursor(0, 0);                    

      lcd.print("Suhu : ");          

      lcd.setCursor(8, 0);                     

      lcd.print(nilaiSuhu);                   

      lcd.setCursor(0, 1);                    

      lcd.print("Kondisi : Normal");

            delay(500);

      lcd. setCursor(10,1);

      delay(3000);

    }

 

    else if (nilaiSOIL > 700) {

      digitalWrite(2, LOW);

      digitalWrite(3, LOW);

      digitalWrite(4, HIGH);

      Serial.print("8");

 

      lcd.clear();                           

      lcd.setCursor(0, 0);                    

      lcd.print("Suhu : ");          

      lcd.setCursor(8, 0);                    

      lcd.print(nilaiSuhu);                   

      lcd.setCursor(0, 1);                    

      lcd.print("Kondisi : Kering");

            delay(500);

      lcd. setCursor(10,1);

      delay(3000);

    }

 

 

    else if (nilaiSOIL < 600){

      digitalWrite(2, LOW);

      digitalWrite(3, LOW);

      digitalWrite(4, HIGH);

      Serial.print("9");

 

      lcd.clear();                            

      lcd.setCursor(0, 0);                    

      lcd.print("Suhu : ");           

      lcd.setCursor(8, 0);                    

      lcd.print(nilaiSuhu);                   

      lcd.setCursor(0, 1);                    

      lcd.print("Kondisi : Basah");

            delay(500);

      lcd. setCursor(10,1);

      delay(3000);

    }

 

  }

{

statusPIR = digitalRead(pinPIR);

if (statusPIR == 1) {           

digitalWrite(pinPIR, HIGH);

      digitalWrite(5, HIGH);

 lcd.clear();                            

      lcd.setCursor(0, 0);                    

      lcd.print("   WELCOME      ");          

      lcd.setCursor(0, 1);                    

      lcd.print("SELAMAT DATANG");

       for (pos = 0; pos <= 180; pos += 1) {

   

    myservo.write(pos);             

    delay(15);                      

  }

  for (pos = 180; pos >= 0; pos -= 1) {

    myservo.write(pos);             

    delay(15);                      

  }

          

delay(100);

}

else if(statusPIR == 0)  {

 

digitalWrite(pinPIR, LOW);      

      digitalWrite(5, LOW);

delay(1000);

}

}

 

}


2) Slave

//Slave

#define buzzer 8

 

const int relay1 = 7; //KIPAS

const int relay2 = 6; //POMPA AIR

int relayON = HIGH; //relay nyala

int relayOFF = LOW; //relay mati     

int LED = 2;

 

 void setup()

{

  pinMode(relay1, OUTPUT);

  pinMode(relay2, OUTPUT);

  pinMode(LED, OUTPUT);

  pinMode(buzzer, OUTPUT);

 

  Serial.begin(9600);

}

 

void loop()

  {

    int data = Serial.read();

    if(data == '1')

    {

     Serial.println("1") ;

     digitalWrite(relay1, relayOFF);

     digitalWrite(relay2, relayOFF);

     digitalWrite(LED, HIGH);

     digitalWrite(buzzer, LOW);

    }

     else if(data == '2')

    {

      Serial.println("2") ;

      digitalWrite(relay1, relayOFF);

      digitalWrite(relay2, relayON);

      digitalWrite(LED, HIGH);

       digitalWrite(buzzer, HIGH);

    }

    else if(data == '3')

    {

      Serial.println("3") ;

      digitalWrite(relay1, relayOFF);

      digitalWrite(relay2, relayOFF);

      digitalWrite(LED, HIGH); 

      digitalWrite(buzzer, LOW);

    }

     else if(data == '4')

    {

      Serial.println("4") ;

      digitalWrite(relay1, relayOFF);

      digitalWrite(relay2, relayOFF);

      digitalWrite(LED, LOW);

      digitalWrite(buzzer, LOW); 

    }

     else if(data == '5')

    {

      Serial.println("5") ;

      digitalWrite(relay1, relayOFF);

      digitalWrite(relay2, relayON);

      digitalWrite(LED, LOW);

      digitalWrite(buzzer, LOW); 

    }

     else if(data == '6')

    {

      Serial.println("6") ;

      digitalWrite(relay1, relayOFF);

      digitalWrite(relay2, relayOFF);

      digitalWrite(LED, LOW);

      digitalWrite(buzzer, LOW);

    }

     else if(data == '7')

    {

      Serial.println("7") ;

      digitalWrite(relay1, relayON);

      digitalWrite(relay2, relayOFF);

      digitalWrite(LED, LOW);

      digitalWrite(buzzer, LOW);

    }

     else if(data == '8')

    {

      Serial.println("8") ;

      digitalWrite(relay1, relayON);

      digitalWrite(relay2, relayON);

      digitalWrite(LED, LOW); 

      digitalWrite(buzzer, HIGH);

    } 

    else if(data == '9')

    {

      Serial.println("9") ;

      digitalWrite(relay1, relayON);

      digitalWrite(relay2, relayOFF);

      digitalWrite(LED, LOW); 

      digitalWrite(buzzer, LOW);

    }

 

}


 

5.     5. Flowchart (DAFTAR ISI)



6.     6. Rangkaian Simulasi (DAFTAR ISI)




7.     7. Hardware dan Video (DAFTAR ISI)

1)   Hardware





2)   Video




8.     8. Analisis (DAFTAR ISI)

       Input : Sensor SoilMoisture, Sensor PIR dan Sensor DHT11 

             Output : Motor Servo SG90, Kipas serta pompa air 

    Sensor PIR berperan sebagai pendeteksi adanya manusia dimana sensor PIR dihubungkan ke motor servo SG90 yang nantinya akan membuka dan menutup pintu secara otomatis jika terdeteksi adanya manusia.  Sensor DHT11 berperan untuk mendeteksi suhu sekitar tanah yang nanti nya akan di hubungkan ke LED sebagai indikator suhu, serta sensor soilmoisture yang berfungsi untuk mendeteksi kelembaban. Pada sensor DHT 11 terdapat 3 buah kondisi yang dapat dilihat pada indikator suhu yang berupa LED dimana ada suhu rendah, suhu normal dan suhu tinggi. Kemudian untuk nilai suhu akan ditampilkan di LCD. Untuk sensor kelembaban akan digunakan sebagai penentu motor akan menyiram atau tidak, output nya akan diarahkan ke pompa dan kipas serta sebuah LED sebagai Pemanas ruangan ketika suhu rendah atau dingin. Sensor soilmoisture juga memiliki 3 keadaan saat sensor bekerja, ketika terkena air maka tidak akan mengeluarkan tegangan dan jika kering akan mengeluarkan tegangan. Itu artinya jika kondisi basah maka tegangan rendah (0-600) sehingga motor tidak akan bergerak, sementara jika 600-800 itu tergolong normal dan kelembaban nya pas akan tetapi motor tidak akan bergerak dan jika diatas 800 itu tergolong kering dan motor akan bergerak. Pada LCD akan ditampilkan keadaan kelembaban pada baris kedua dibawah penampilan nilai suhu. ketika kelembaban nya kering motor bergerak menandakan bahwa tanaman sedang disiram . Lalu apabila suhu rendah atau dingin, maka sinyal dikirim dari master ke slave sebagai indikator dan membuat LED menyala sebagai pemanas ruangan. Apabila suhu sudah normal maka LED akan mati. Lalu apabila suhu tinggi atau panas, maka sinyal dikirim dari master ke slave sebagai indikator dan membuat motor DC (kipas) menyala sebagai pendingin ruangan. Apabila suhu sudah normal maka motor DC akan mati. Selain itu juga terdapat buzzer yang akan hidup apabila suhu sangat tinggi dan kondisi kelembaban kering.


9.      9. Kesimpulan (DAFTAR ISI)

Berdasarkan percobaan yang telah dilakukan maka didapatkan kesimpulan bahwa dengan menggunakan Sensor PIR, Sensor SoilMoisture dan Sensor DHT11 serta arduino dan komponen pendukung lainnya melalui komunikasi UART  yang merupakan komunikasi . 

10    10. Link Download (DAFTAR ISI)

        ·    HTML
        ·       Rangkaian Simulasi         
        ·       ProgramArduino Master       
        ·       ProgramArduino Slave             
        ·       Datasheet PIR                              
        ·       Datasheet DHT11                       
        ·       DatasheetSoil Moisture          
        ·       DatasheetMotor DC                
        ·       Datasheet Motor Servo            
        ·       Datasheet LED                          
        ·       DatasheetLCD                           
        ·       DatasheetRelay 2 Channel     
        ·       DatasheetPotensiometer      
        ·       DatasheetArduino Uno          
        ·       DatasheetResistor                  
        ·       LibraryArduino Uno               
        ·       LibraryPIR                                 
        ·       LibrarySoil Moisture                 

Tidak ada komentar:

Posting Komentar

  Bahan Presentasi untuk Mata Kuliah ELEKTRONIKA 2020/2021 OLEH:     Yhunia Rosa 2010951026 Dosen Pengampu: Darwison, M.T Referensi: 1. Robe...