MATA
KULIAH
Arsitektur
dan Organisasi Komputer
Dosen
Pengampu
Aditya
Prapanca, S.T., M.Kom.
Di Susun Oleh :
Nizar Alamsyah P. N (20050974031)
Orin Novita Sari (20050974039)
Mirna Milasari (20050974043)
M.
Iksanul Baigofik (20050974049)
Chayani
Suci Romasage (20050974067)
Kami kelompok 1 dari kelas PTI A 2020 akan memaparkan konsep materi UAS Arsitektur dan Organisasi Komputer yang berjudul “IOT SMART HOME GOOGLE ASSISTANT”. Kami memilih projek ini karena kami ingin membatasi penyebaran virus ditengah pandemi seperti sekarang ini serta, kami juga mengkolaborasikannya dengan alat listrik berteknologi digital makadari itu, projek ini tidak perlu disentuh. Namun meskipun begitu projek ini mampu melakukan fungsi dengan sebagaimana mestinya. Jadi, projek ini akan sangat membantu penggunannya.
Sebelum membahas lebih lanjut kita perlu mengetahui terlebih dahulu apa itu IoT. IoT atau Internet of Things adalah sebuah konsep yang bertujuan untuk memperluas manfaat dan konekvitas internet yang tersambung secara terus menerus. Jadi, secara sederhananya, IoT merupakan pemanfaatan internet untuk segala hal yang bertujuan untuk mempermudah pekerjaan manusia. Hal ini seperti projek yang telah kami buat yaitu Jordi.
Jordi merupakan sebuah perangkat IoT yang dilengkapi
oleh dua buah relay dan juga satu port untuk sensor analog. Perangkat ini juga
bisa diprogram ulang oleh pengguannya sesuai dengan keperluan, melalui port
micro USB yang telah terpasang di PCB. Sebelum mulai membahas lebih dalam
bagaimana kami dapat membuat berbagai macam projek IoT dengan sebuah module
Jordi ini, mari kita mulai untuk membedah design dari alat tersebut terlebih
dahulu.
Skematik Projek IoT
Jordi
Dari gambar blok
diagram diatas, dapat kita pecah menjadi beberapa bagian yaitu :
1. USB dan Rangkaian USB TTL
2. Regulator Tegangan 5V
3. Minimum Sistem ESP12E / ESP12F
4. Rangkaian Detektor Sensor Analog
5. Rangkaian Driver Relay / Module Relay
6. Rangkaian Buzzer
Layout PCB IoT Jordi
Proses Pembuatan IoT Jordi
1. Menyiapkan alat dan bahan
2. Sketch Arduino IoT Jordi
#include
<ESP8266WiFi.h>
#include
"Adafruit_MQTT.h"
#include
"Adafruit_MQTT_Client.h"
#define Relay1 12
#define
WLAN_SSID "Nizar
Oxy" // Your
SSID
#define WLAN_PASS "123456789" // Your
password
/*********
Adafruit.io Setup ***********/
#define
AIO_SERVER
"io.adafruit.com"
#define
AIO_SERVERPORT 1883 // use 8883 for SSL
#define
AIO_USERNAME "zura10" // Replace
it with your username
#define AIO_KEY
"aio_Yazx862Fdk9fP97F3F1v0RJ4xhv6" // Replace with your Project
Auth Key
/**** Global State
(you don't need to change this!) ******/
// Create an ESP8266
WiFiClient class to connect to the MQTT server.
WiFiClient client;
// or... use
WiFiFlientSecure for SSL
//WiFiClientSecure
client;
// Setup the MQTT
client class by passing in the WiFi client and MQTT server and login details.
Adafruit_MQTT_Client
mqtt(&client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);
/********** Feeds
*************/
// Setup a feed
called 'onoff' for subscribing to changes.
Adafruit_MQTT_Subscribe
Lampu = Adafruit_MQTT_Subscribe(&mqtt,
AIO_USERNAME"/feeds/Lampu"); // FeedName
void MQTT_connect();
void setup() {
Serial.begin(115200);
pinMode(Relay1, OUTPUT);
// Connect to WiFi access point.
Serial.println(); Serial.println();
Serial.print("Connecting to ");
Serial.println(WLAN_SSID);
WiFi.begin(WLAN_SSID, WLAN_PASS);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println();
Serial.println("WiFi connected");
Serial.println("IP address: ");
Serial.println(WiFi.localIP());
// Setup MQTT subscription for onoff feed.
mqtt.subscribe(&Lampu);
}
void loop() {
MQTT_connect();
Adafruit_MQTT_Subscribe *subscription;
while ((subscription =
mqtt.readSubscription(5000))) {
if (subscription == &Lampu) {
Serial.print(F("Got: "));
Serial.println((char *)Lampu.lastread);
int Light1_State = atoi((char
*)Lampu.lastread);
digitalWrite(Relay1, (Light1_State));
}
}
}
void MQTT_connect() {
int8_t ret;
// Stop if already connected.
if (mqtt.connected()) {
return;
}
Serial.print("Connecting to MQTT...
");
uint8_t retries = 3;
while ((ret = mqtt.connect()) != 0) { //
connect will return 0 for connected
Serial.println(mqtt.connectErrorString(ret));
Serial.println("Retrying MQTT
connection in 5 seconds...");
mqtt.disconnect();
delay(5000); // wait 5 seconds
retries--;
if (retries == 0) {
// basically die and wait for WDT to
reset me
while (1);
}
}
Serial.println("MQTT Connected!");
3. Perangkaian
a. Pertama-tama sambungkan kabel USB ke Micro USB.
Sebenarnya kabel USB ini bisa digunakan sebagai kabel power tetapi dalam projek
Jordi kabel ini di khususkan untuk membuat program.
b. Kemudian ada adaptor. Nah adaptor tersebut akan
disambungkan ke DC power
c. Lalu ada kabel lampu dan kabel lampu tersebut akan
disambungkan ke relay
4. Pengujian
Untuk menguji coba apakah rangkaian komponen diatas berhasil atau tidak,
maka kita harus mempraktekkannya. Berikut adalah Langkah-langkahnya :
a. Buka google assistant
b. Lalu klik tombol microfon dan kita
bisa mngatakan perintah “OKE GOOGLE TURN ON THE LAMP”, jika rangkaian komponen
tadi sudah benar secara otomatis lampu akan menyalah. Tetapi jika lampu tidak
menyalah berarti rangkaian komponen yang sudah kalian buat perlu diperbaiki.
c. Berikutnya adalah bagaimana
mematikan lampu. Untuk mematikan lampu kita bisa menggunakan perintah “TURN OFF
THE LAMP” dan lampu akan mati.
Kesimpulan
Dengan memanfaatkan internet dari fitur Wi-Fi
smartphone kami dapat menghubungkan ESP12E / ESP12F ke smartphone Android/IOS serta
dapat melakukan komunikasi antara kedua perangkat yaitu Google Assistant yang
ada dalam smartphone dan projek Jordi sehingga projek Jordi dapat melakukan
fungsi menyalakan atau mematikan lampu sesuai dengan perintah pengguna.
Lampiran
Gambar
11. Hasil Rangkaian
Gambar
12. Hasil Pengujian Rangkaian
Gambar
13. Foto perwakilan kelompok bersama projek Jordi
Tidak ada komentar:
Posting Komentar