Jumat, 06 Desember 2019

IoT Smart Home




DISUSUN OLEH      :
1.    Herlina Syafhita Maharani ( 19051204005)
2.    Moch.Firda Dhita L           (19051204017)
3.    Wanhasib al aslamy           (19051204027)
4.    Maharani Nirmala D           (19051204032)
5.    Prima Lukito Wardana        (19051204041)
6.    M. Rico Salahuddin             (19051204053)






BAB I
PENDAHULUAN

      A.    Latar Belakang
Internet of Things adalah suatu sistem di mana semua alat-alat bisa terhubung menjadi dapat saling berkomunikasi. Ini memungkinkan pengguna mengontrol semua alat-alat di rumahnya dari jarak jauh hanya dengan menggunakan perangkat genggam yang terhubung dengan internet. Jangkauan dari internet ini sangat luas, sehingga ini bisa dimafaatkan dalam kontrol barang elektronik jarak jauh. Kebutuhan manusia akan mengontrol benda benda di sekitarnya tidak bisa dipungkiri lagi bahwa sangatlah penting. Dimasa depan, mengontrol segala sesuatu menjadi sangatlah mudah dengan adanya sistem internet of things ini.


Contoh penggunaan sehari hari dari internet of things ini begitu banyak. Contohnya, pagar dengan bantuan IOT bisa terbuka sendiri ketika informasi dari GPS Anda telah menyatakan bahwa jarak antara perangkat dan pagar itu dekat. Contoh lain yaitu, segala peralatan yang menggunakan listrik dirumah Anda akan dimatikan otomatis ketika sistem menentukan bahwa Anda sudah meninggalkan rumah. Masih banyak lagi contoh yang bisa membuktikan bahwa IOT ini sangat diperlukan dimasa depan. Selain itu, IOT ini juga memungkinkan dalam penghematan penggunaan daya. Banyak manfaat yang bisa didapatkan dengan pemanfaatan IOT ini. Dengan demikian, pengetahuan tentang IOT ini sangat perlu diasah dari sekarang melalui membuat sistem yang sederhana mengenai pemanfaatan IOT untuk menghubungkan benda disekitar Anda dalam satu sistem yang sama untuk dapat di kendalikan secara serentak menggukanan perangkat yang bisa Anda gunakan kapan saja dan di di mana saja.
     B.     Rumusan Masalah
              1.      Bagaimana merancang suatu sistem kontrol dengan menggunakan IOT?
              2.   Bagaimana cara mengimplementasikan dalam kehidupan sehari-hari?
              3.   Apa saja manfaat IOT dalam kehidupan sehari hari?

    C.    Tujuan Penyusunan Laporan 
Tujuan penyusunan laporan hasil kegiatan ini adalah : 
1.      Sebagai tugas nilai Ujian Akhir Semester 
2.      Menambah wawasan tentang Internet of Things



BAB II
PEMBAHASAN

A.    Pengertian

1.      Internet of Things
Internet of Things adalah suatu sistem di mana semua alat-alat bisa terhubung menjadi dapat saling berkomunikasi. Ini memungkinkan pengguna mengontrol semua alat-alat di rumahnya dari jarak jauh hanya dengan menggunakan perangkat genggam yang terhubung dengan internet. Jangkauan dari internet ini sangat luas, sehingga ini bisa dimafaatkan dalam kontrol barang elektronik jarak jauh.
2.         Smart Home
Smart home merupakan sistem rumah pintar yang digunakan untuk mengendalikan hampir semua perlengkapan dan peralatan yang ada di dalam sebuah rumah atau gedung dan perintah tersebut dapat dikendalikan jarak jauh.


 B.     Alat Dan Bahan
1.         NodeMCU ESP8266 
      Sebuah platform IOT yang bersifat opensource.Terdiri dari perangkat keras berupa System On Chip ESP8266 dari ESP8266 buatan Espressif System
2.        Kabel Jumper
        Suatu perangkat penghubung komponen satu dengan yang lainnya.
3.          Resistor
        Resistor sebagai pembagi tegangan
4.         Sensor DTH11
        Untuk mendeteksi Temperature dan Kelembaban
5.     Gabus
6.       Stick kayu
7.       Kardus
8.       Lampu Led
9.      Servos SG90



   
C.    Cara Kerja
Smart home mempunyai dua mode yaitu :
           1.Mode Auto
Mode auto merupakan  mode automatic menggunakaan suhu 27  untuk menetapkan suatu mode automatic.Apabila suhu ruang diatas 28  C Air Condinioner (AC) akan menyala dan jendela akan tertutup dan Apabila suhu dibawah 26  C Air Condinioner (AC) akan mati dan jendela akan terbuka.
           2.Mode Manual
Mode manual merupakan mode yang bisa mengatur salah satu yaitu menyalakan Air Condinioner (AC) atau membuka jendela ataupun keduanya


   
   D.     Program dan Flowchart
         Database Firebase:


Script :
#include <FirebaseArduino.h>
#include <ESP8266WiFi.h>
#include <Servo.h>
#include "DHT.h"

#define FIREBASE_HOST "tesprojek-12836.firebaseio.com"
#define WIFI_SSID "Rico ultah"
#define WIFI_PASSWORD "123456789"

Servo myservo;
int led=13;
DHT dht(2,DHT11);


void setup (){
  WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
  while (WiFi.status() != WL_CONNECTED){
    delay(500);
    Serial.print(".");
    }
  Serial.begin(9600);
  myservo.attach(16);
  pinMode(led,OUTPUT);
  dht.begin();
   Serial.println ("");
  Serial.println ("WiFi Connected!");
  Firebase.begin(FIREBASE_HOST);
  }

void loop() {
 
  delay(2000);
  float h = dht.readHumidity();
  float t = dht.readTemperature();
   Firebase.setFloat ("Temp",t);
  Firebase.setFloat ("Humidity",h);
  int aut = Firebase.getInt("auto");
    int ase = Firebase.getInt("AC");
    int jen = Firebase.getInt("Jendela");

   Serial.print("Humidity: ");
  Serial.print(h);
  Serial.print(" %\t");
  Serial.print("Temperature: ");
  Serial.print(t);
  Serial.print(" *C ");
  if (aut==1) {
     if(t>=28){
      Serial.println("Light ON");
      digitalWrite(led, HIGH);   //turn the led on
      myservo.write(0);  //spin the big servo to the left

  }
  else if (t<=26){
      Serial.println("Light OFF");
      digitalWrite(led, LOW);   //turn the led off
      myservo.write(90);  //spin the big servo to the right
  }
  }
  else {
    if (ase==1){
    Serial.println("Light ON");
      digitalWrite(led, HIGH);   //turn the led on
      }
      else {
        Serial.println("Light OFF");
      digitalWrite(led, LOW);   //turn the led off
        }
      if (jen==1){
      digitalWrite(led, LOW);   //turn the led off
      myservo.write(90);  //spin the big servo to the right
      }
      else {
              myservo.write(0);  //spin the big servo to the left

        }
      }
    }

E.Coding Home android
package com.example.coba;

import androidx.appcompat.app.AppCompatActivity;
import com.google.firebase.database.DataSnapshot;
import com.google.firebase.database.DatabaseError;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
import com.google.firebase.database.ValueEventListener;

import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.TextView;

import java.util.EventListener;

public class MainActivity extends AppCompatActivity {
    FirebaseDatabase database = FirebaseDatabase.getInstance();
    DatabaseReference myRef = database.getReference();
    final DatabaseReference h = myRef.child("Humidity");
    final DatabaseReference auto = myRef.child("auto");
    final DatabaseReference temp = myRef.child("Temp");
    final DatabaseReference jendela = myRef.child("Jendela");
    final DatabaseReference ac = myRef.child("AC");
    TextView tvsuhu;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        tvsuhu = (TextView)findViewById(R.id.suhu);
        temp.addValueEventListener(new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot dataSnapshot) {
                // This method is called once with the initial value and again
                // whenever data at this location is updated.
                String value = dataSnapshot.getValue().toString();
                Log.d("file", "Value is: " + value);
                tvsuhu.setText(value.toString());
            }

            @Override
            public void onCancelled(DatabaseError error) {
                // Failed to read value
                Log.w("file", "Failed to read value.", error.toException());
            }
        });
    }


    public void Pindah(View view) {
        Intent intent = new Intent(MainActivity.this, man.class);
        startActivity(intent);
    }

}

F.Coding Mode Manual :
package com.example.coba;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.CompoundButton;
import android.widget.Switch;
import android.widget.CheckBox;
import android.widget.Toast;

import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
import com.google.firebase.database.DataSnapshot;
import com.google.firebase.database.DatabaseError;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
import com.google.firebase.database.ValueEventListener;

public class man extends AppCompatActivity {

    FirebaseDatabase database = FirebaseDatabase.getInstance();
    DatabaseReference myRef = database.getReference();
    final DatabaseReference auto = myRef.child("auto");
    final DatabaseReference jendela = myRef.child("Jendela");
    final DatabaseReference ac = myRef.child("AC");
    private CheckBox chkIos, chkAndroid, chkWindows;
    private Button btnDisplay;
    private Switch sw1,sw2;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_man);

        sw1 = (Switch) findViewById(R.id.switch1);
        sw2 = (Switch) findViewById(R.id.switch2);

        addListenerOnChkIos();
    }

    public void addListenerOnChkIos() {

        chkIos = (CheckBox) findViewById(R.id.checkBox);

        chkIos.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                //is chkIos checked?
                if (((CheckBox) v).isChecked()) {
                    auto.setValue(0);
                }
                else {
                    auto.setValue(1);
                }
            }

        });

        sw1.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
            public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
                if (isChecked) {
                    ac.setValue(1);
                } else {
                    ac.setValue(0);                }
            }
        });
        sw2.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
            public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
                if (isChecked) {
                    jendela.setValue(1);
                } else {
                    jendela.setValue(0);                }
            }
        });
    }

}

    F.     Harga Pembuatan

Barang
Harga
NodeMCU
   Rp 80.000
Kabel Jummper
            Rp 6000
Resistor
            Rp.500
Gabus
            Rp.6000
Servos SG90  
 Rp.13500
Sensor DTH11           
            Rp15000
Wooden Stick (2 Pack)
Rp 4000
Jumlah
    Rp 125000
                                                                                                                       
                                               
                                   

    G.    Foto IoT



alat nodeMCU kabel jumper sensor dth11
udah dipasang
gabus
NodeMCU ESP8266

 Sensor DTH11

foto kelompok
Kabel Jumper





Servos SG90
resistor
stick kayu
foto IoT smarthome
foto aplikasi android
foto aplikasi android(2)

foto IoT smarthome



BAB III
PENUTUP

SIMPULAN
Internet of Things adalah suatu sistem di mana semua alat-alat bisa terhubung menjadi dapat saling berkomunikasi.



DAFTAR PUSTAKA













Tidak ada komentar:

Posting Komentar