Disusun Oleh :
1. Abdullah Azizi Akbar (19051204071)
2. Udkhul Rogodan Chalata D (19051204072)
3. M. Arif Rahman Hakim (19051204085)
4. Ingwer Ludwig B N (19051204104)
5. Haifa’ Syadza ‘Adilah (19051204106)
2. Udkhul Rogodan Chalata D (19051204072)
3. M. Arif Rahman Hakim (19051204085)
4. Ingwer Ludwig B N (19051204104)
5. Haifa’ Syadza ‘Adilah (19051204106)
BAB I
PENDAHULUAN
1.1
Latar Belakang
Internet of Things
adalah suatu konsep dimana objek tertentu punya kemampuan untuk mentransfer
data lewat jaringan tanpa memerlukan adanya interaksi dari manusia ke manusia ataupun dari manusia ke perangkat komputer. Internet of Things lebih sering
disebut dengan singkatannya yaitu IoT. IoT ini sudah berkembang pesat mulai
dari konvergensi teknologi nirkabel, micro-electromechanical systems (MEMS),
dan juga Internet. IoT ini juga kerap diidentifikasikan dengan RFID sebagai
metode komunikasi. Walaupun begitu, IoT juga bisa mencakup teknologi-teknologi
sensor lainnya, semacam teknologi nirkabel maupun kode QR yang sering kita
temukan di sekitar kita.
Salah satu bentuk
pengembangan dari teknologi IoT ini adalah monitoring cuaca. Alat ini berfungsi
sebagai pemantau cuaca. Dalam kasus ini, alat ini tidak hanya menampilkan
temperatur cuaca saja, namun juga tekanan udara, kelembaban udara, dan deteksi
hujan. Kelebihan dari alat ini yaitu informasi bisa didapatkan dari jarak jauh
melalui browser.
1.2
Rumusan Masalah
Dalam pembahasan di latar belakang, dapat ditarik pernyataan apa saja yang timbul dari projek kami, yaitu :
a. Apa yang dimaksud dengan Weather Monitoring ?
b. Apa saja alat dan bahan yang diperlukan dalam membuat Weather Monitoring ?
c. Bagaimana cara kerja dari Weather Monitoring ?
d. Bagaimana cara pembuatan Weather Monitoring ?
b. Apa saja alat dan bahan yang diperlukan dalam membuat Weather Monitoring ?
c. Bagaimana cara kerja dari Weather Monitoring ?
d. Bagaimana cara pembuatan Weather Monitoring ?
1.3
Tujuan
Adapun tujuan dardi
pembuatan projek Weather Monitoring ini, yaitu :
a. Untuk menambah wawasan kita tentang penggunaaan IoT
b. Pemahaman praktek dari mata kuliah Sistem Digital dan Pengantar Teknologi Informasi
BAB II
PEMBAHASAN
PEMBAHASAN
2.1 Pengertian Weather
Monitoring
Weather Monitoring adalah perangkat
yang kami buat untuk mengetahui informasi tentang temperatur udara, tekanan
udara, kelembaban, dan deteksi hujan. Perangkat ini mengumpulkan
informasi-informasi tersebut dari sensor yang bersangkutan. Kemudian
sensor-sensor tersebut mengirim informasi ke NodeMCU dan diteruskan ke
perangkat pengguna. Pengguna dapat melihat informasi melalui browser secara
realtime.
2.2 Alat dan Bahan
Alat :
Bahan :
2.4 Cara Kerja
No.
|
Alat
|
Spesifikasi
|
Jumlah
barang
|
Harga
|
1.
|
Laptop
|
RAM 8GB
|
1
|
Rp 16.500.000
|
2.
|
Smartphone Android
|
RAM 3GB
|
1
|
Rp 1.600.000
|
3.
|
Aplikasi Arduino
|
Versi 1.8.3
|
1
|
Rp -
|
4.
|
Library ESP8266-12E
|
2.6.0
|
1
|
Rp -
|
5.
|
Library DHT11
|
-
|
1
|
Rp -
|
6.
|
Kabel Data
|
USB to Android
|
1
|
Rp -
|
Bahan :
No.
|
Nama
bahan
|
Harga
satuan
|
Jumlah
barang
|
Harga
|
1.
|
NodeMCU v.3
|
Rp40.000
|
1
|
Rp40.000
|
2.
|
Kabel Jumper male to female
|
Rp500
|
10
|
Rp5.000
|
3.
|
Kabel Jumper male to male
|
Rp500
|
10
|
Rp5.000
|
4.
|
BreadBoard
|
Rp20.000
|
1
|
Rp20.000
|
5.
|
Rain Sensor
|
Rp15.000
|
1
|
Rp15.000
|
6.
|
Sensor BMP180
|
Rp12.000
|
1
|
Rp12.000
|
7.
|
Sensor DHT11
|
Rp12.000
|
1
|
Rp12.000
|
8.
|
Resistor
|
Rp.100
|
10
|
Rp1.000
|
TOTAL
|
Rp117.000
|
Untuk tempat pembelian
bahan-bahan tersebut kami lakukan secara offline di toko Akhishop yang terletak
di jalan Keputih Raya Timur no.6, Surabaya.
2.3 Analisis Bahan
1. Modul ESP8266-12E
Modul ESP8266 ini merupakan modul chip WiFi dan AP sekaligus.Oleh karena itu, perangkat IoT kita bisa terhubung dengan WiFi dikarenakan menggunakan alat ini. Modul ini kami manfaatkan sebagai komunkasi melalui koneksi internet pada jaringan WiFi.
2. Sensor BMP180
BMP180 adalah sensor tekanan barometrik (digital barometric pressure sensor) dari Bosch Sensortec yang berkinerja sangat tinggi yang dapat diaplikasikan pada berbagai perangkat bergerak seperti smartphone, komputer tablet, dan peralatan olahraga portabel. Sensor ini bekerja dengan menghubungkan antara mikro dengna sensor adalah mealui jaluar SCL dan SDA pada kedua komponen.
3. Sensor DHT11
Merupakan sensor yang bekerja dengan sistem saklar dan magnetic. Cara kerjanya dengan menempelkan alat pada pintu atau jendela. Alat ini memiliki dua sisi yaitu sisi saklar sendiri dan sisi pemicu yang berupa magnet. Saat sisi magnet berpisah karena pergeseran pintu atau jendela, maka sensor ini akan mengubah kondisi dan memicu sinyal ke sistem.
4. Rain Sensor
Sensor DHT11 adalah module sensor yang berfungsi untuk mensensing objek 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 segi kualitas pembacaan data yang lebih responsif yang memliki kecepatan dalam hal sensing objek suhu dan kelembaban, dan data yang terbaca tidak mudah terinterverensi.
2.4 Cara Kerja
1. NodeMCU akan mencoba untuk melakukan koneksi
internet dari access point dengan modul WiFi ESP8266 milik NodeMCU.
2. Setelah terhubung, setiap sensor akan bekerja dan
mengirimkan informasi ke NodeMCU.
3. Kemudian NodeMCU akan mengirimkan informasi dari
setiap sensor ke internet, kemudian ditangkap oleh perangkat.
4. Perangkat akan menampilkan informasi dari sensor
tadi.
2.5 Metode Pembuatan
3. Pengerjaan Projek
Dalam proyek
pembuatan IoT ini kami melakukan beberapa tahap. Tidak hanya itu kami juga melakukan pencarian beberapa referensi tentang cara pembuatan IoT. Adapun tahap
– tahapannya yaitu:
1. Mengumpulkan
Referensi
Pada tahap ini kami mengumpulkan informasi dan
referensi tentang IoT. Adapun sumber yang kami dapatkan yaitu channel Youtube
How To Electroincs dan beberapa blog terpercaya lain seperti https://arduino.cc
sebagai pedoman teori.
2. Memprogram Mikrokontroller
Tahap memprogram mikrokontroller ini adalah
tahap merealisasikan perintah kita ke dalam otak rangkaian. Pada tahap ini,
kami memprogram mikrokontroller menggunkan software Arduino IDE dengan bahasa
C++. Adapun syntax programnya yaitu :
Code Program
Untuk NodeMCU ESP8266-12E
|
#include <ESP8266WiFi.h>
#include <WiFiClient.h>
#include <ESP8266WebServer.h>
#include <SFE_BMP180.h>
#include <Wire.h>
#include "index.h" //Our HTML webpage contents with
javascripts
#include "DHTesp.h" //DHT11 Library for ESP
#define LED 2 //On board LED
#define DHTpin 14 //D5 of NodeMCU is GPIO14
SFE_BMP180 pressure;
#define ALTITUDE 1655.0 // Altitude in meters
DHTesp dht;
//SSID and Password of your WiFi router
const char* ssid = "ASUS-X00TD";
const char* password = "hngzhowxiantan";
ESP8266WebServer server(80); //Server on port 80
void handleRoot() {
String s = MAIN_page; //Read HTML contents
server.send(200, "text/html", s); //Send web page
}
float humidity, temperature;
void handleADC() {
char status;
double T,P,p0,a;
double Tdeg, Tfar, phg, pmb;
status = pressure.startTemperature();
if (status != 0)
{
// Wait for the measurement to complete:
delay(status);
status = pressure.getTemperature(T);
if (status != 0)
{
// Print out the measurement:
Serial.print("temperature: ");
Serial.print(T,2);
Tdeg = T;
Serial.print(" deg C, ");
Tfar = (9.0/5.0)*T+32.0;
Serial.print((9.0/5.0)*T+32.0,2);
Serial.println(" deg F");
status = pressure.startPressure(3);
if (status != 0)
{
// Wait for the measurement to complete:
delay(status);
status = pressure.getPressure(P,T);
if (status != 0)
{
// Print out the measurement:
Serial.print("absolute pressure: ");
Serial.print(P,2);
pmb = P;
Serial.print(" mb, ");
phg = P*0.0295333727;
Serial.print(P*0.0295333727,2);
Serial.println(" inHg");
p0 = pressure.sealevel(P,ALTITUDE); // we're at 1655 meters (Boulder,
CO)
Serial.print("relative (sea-level) pressure: ");
Serial.print(p0,2);
Serial.print(" mb, ");
Serial.print(p0*0.0295333727,2);
Serial.println(" inHg");
a = pressure.altitude(P,p0);
Serial.print("computed altitude: ");
Serial.print(a,0);
Serial.print(" meters, ");
Serial.print(a*3.28084,0);
Serial.println(" feet");
}
else Serial.println("error retrieving pressure
measurement\n");
}
else Serial.println("error starting pressure
measurement\n");
}
else Serial.println("error retrieving temperature
measurement\n");
}
else Serial.println("error starting temperature
measurement\n");
int rain = analogRead(A0);
//Create JSON data
String data =
"{\"Rain\":\""+String(rain)+"\",\"Pressuremb\":\""+String(pmb)+"\",\"Pressurehg\":\""+String(phg)+"\",
\"Temperature\":\""+ String(temperature) +"\",
\"Humidity\":\""+ String(humidity) +"\"}";
digitalWrite(LED,!digitalRead(LED)); //Toggle LED on data request ajax
server.send(200, "text/plane", data); //Send ADC value,
temperature and humidity JSON to client ajax request
delay(dht.getMinimumSamplingPeriod());
humidity = dht.getHumidity();
temperature = dht.getTemperature();
Serial.print("H:");
Serial.println(humidity);
Serial.print("T:");
Serial.println(temperature); //dht.toFahrenheit(temperature));
Serial.print("R:");
Serial.println(rain);
}
void setup()
{
Serial.begin(115200);
Serial.println();
// dht11 Sensor
dht.setup(DHTpin, DHTesp::DHT11); //for DHT11 Connect DHT sensor to
GPIO 17
pinMode(LED,OUTPUT);
//BMP180 Sensor
if (pressure.begin())
Serial.println("BMP180 init success");
else
{
Serial.println("BMP180 init fail\n\n");
while(1); // Pause forever.
}
WiFi.begin(ssid, password); //Connect to your WiFi router
Serial.println("");
// Wait for connection
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
//If connection successful show IP address in serial monitor
Serial.println("");
Serial.print("Connected to ");
Serial.println(ssid);
Serial.print("IP address: ");
Serial.println(WiFi.localIP()); //IP address assigned to your ESP
server.on("/", handleRoot); //Which routine to handle at
root location. This is display page
server.on("/readADC", handleADC); //This page is called by
java Script AJAX
server.begin(); //Start server
Serial.println("HTTP server started");
}
void loop()
{
server.handleClient(); //Handle client requests
}
|
3. Pengerjaan Projek
Selanjutnya yaitu tahap perakitan, semua rangkaian disusun sesuai dengan diagram diatas tadi. Setiap komponen seperti sensor DHT11, sensor BMP180, dan Rain sensor dihubungkan ke NodeMCU ESP8266-12E sesuai dengan port-port yang sudah ditentukan. Setelah semua dihubungkan, langkah selanjutnya yaitu mengunggah coding dari program yang telah ditentukan sebelumnya. Namun sebelum itu, pastikan library dari perangkat ESP8266 dan library sesnsor DHT11 sudah terpasang pada software arduino. Di bagian coding, user perlu memodifikasi bagian ssid dan password supaya NodeMCU supaya bisa terhubung dengan hotspot / access point yang telah disediakan. Selanjutnya, tekan tombol upload hingga proses upload selesai. Jika di bagian system monitor sudah muncul IP, maka NodeMCU sudah terhubung dengan internet.
BAB
III
PENUTUP
3.1 Kesimpulan
IoT ini
merupakan suatu alat yang terdiri dari modul WiFi atau Modul SIM Card yang
berfungsi untuk menghubungkan atau bisa juga diartikan sebagai suatu konsep
dimana objek tertentu punya kemampuan untuk mentransfer data lewat jaringan
tanpa memerlukan adanya interaksi dari manusia ke manusia ataupun dari manusia
ke perangkat komputer.
IoT yang kami
buat adalah IoT Weather Monitoring dengan 4 fungsi, yaitu monitoring temperatur
udara, tekanan udara, kelembaban, dan hujan. Cara kerja dari alat ini sangat
mudah, kita tinggal menghubungkan NodeMCU ke internet, kemudian informasi cuaca
yang dari NodeMCU bisa dibuka melalui browser.
LAMPIRAN
Gambar 1 : IoT Weather Monitoring
Gambar 2 : Informasi dari Weather Monitoring
Gambar 3 : NodeMCU v3 (Mikrokontroller yang telah terpasang modul wifi)
Gambar 4 : Kabel Jumper Male to Female
Gambar 5 : Kabel Jumper Male to Male
Gambar 6 : BreadBoard
Gambar 7 : Rain Sensor (Sensor hujan)
Gambar 8 : Sensor BMP180 (Sensor tekanan udara)
Gambar 9 : Sensor DHT11 (Sensor suhu dan kelembaban)
Gambar 10 : Resistor
Gambar 11 : Foto Kelompok
Tidak ada komentar:
Posting Komentar