Anda di halaman 1dari 11

Jurnal Electronics, Informatics, and Vocational Education (ELINVO), Volume 1, Nomor 3, November 2016

SMART DOOR LOCKS


BASED ON INTERNET of THINGS CONCEPT
WITH MOBILE BACKEND as a SERVICE
Muhammad Izzuddin Mahali
Jurusan Pendidikan Teknik Elektronika dan Informatika FT UNY
Email : izzudin@uny.ac.id

ABSTRACT

Smart Door Locks System Based on Internet of Things Concept with Mobile Backend
as s Service is the smart door locks development are supported by cloud computing technology
as data storage. Methods of development that exist in this system is to combine technology (1)
ESP8266 (2) Firebase and (3) Android Apps. Firebase is one of cloud-based services that are
used to store data online. ESP8266 able to communicate with firebase well to process the read
and write data directly using internet communication channels. Android application used to
direct communication to the firebase for monitoring and controlling simultaneously to the
system. Android app can control / monitoring Indirectly to ESP8266 module via Firebase that
serves as a mobile Backend as a Service to apply the rules of the Internet of Things.

Keywords : ESP8266, IoT, Backend Service, Firebase,

ABSTRAK

Sistem Smart Door Locks Based on Internet of Things Concept with Mobile Backend as
s Service merupakan pengembangan kunci pintu pintar yang didukung dengan teknologi cloud
computing sebagai penyimpan data. Metode pengembangan yang ada pada sistem ini adalah
menggabungkan teknologi (1) ESP8266 (2) Firebase dan (3) Aplikasi Android. Firebase
merupakan salah satu layanan berbasis cloud computing yang digunakan untuk menyimpan
data secara online. ESP8266 mampu melakukan komunikasi dengan firebase baik untuk proses
membaca data maupun menulis data secara langsung menggunakan jalur komunikasi internet.
Aplikasi android digunakan untuk monitoring sekaligus mengendalikan sistem dengan cara
melakukan komunikasi langsung ke firebase. Aplikasi android dapat mengontrol/monitoring
modul ESP8266 melalui Firebase yang berfungsi sebagai mobile Backend as a Service dengan
menerapkan kaidah Internet of Things.

Kata kunci : ESP8266, IoT, Backend Service, Firebase

PENDAHULUAN sistem sehingga dapat memberikan


Perkembangan teknologi bidang kemanfaatan yang lebih besar. Perangkat fisik
elektronik saat ini sudah sampai pada generasi (hardware/embedded system) dalam
Internet of Things. Internet of Things (IoT) infrastruktur Internet of Things merupakan
merupakan kumpulan benda-benda (things), hardware yang tertanam (embedded) dengan
berupa perangkat fisik (hardware /embedded elektronik, perangkat lunak, sensor dan juga
system) yang mampu bertukar informasi antar konektivitas. Perangkat embedded system
sumber informasi, operator layanan ataupun melakukan komputasi untuk pengolahan data
perangkat lainnya yang terhubung kedalam dari input sensor dan beroperasi dalam

171
Jurnal Electronics, Informatics, and Vocational Education (ELINVO), Volume 1, Nomor 3, November 2016

infrastruktur internet. Menurut hasil elektronik berbasis internet of things.


penelitian dari Juniper Research terdapat ESP8266 modul digunakan sebagai jembatan
pertumbuhan perangkat IoT 3 kalilipat antara komunikasi antara smart lock dengan Cloud
tahun 2016 s/d 2021. Menurut hasil penelitian Database dalam mBaaS. Cloud Database
ini perkiraan jumlah peralatan IoT yang diigunakan untuk menyimpan data
terhubung ke internet baik itu device, sensor pendukung sistem. Smart Door Locks dapat
maupun aktuator di mencapai lebih dari 46 dikontrol dan dimonitoring secara jarak jauh
billion sampai dengan tahun 2021[1].  dengan menggunakan smart phone berbasis
Cloud Computing berkembang pesat Android.
dalam kurun waktu tiga tahun terakhir. Saat
ini Cloud Computing juga merambah ke ranah INTERNET OF THING
mobile communication. Sudut pandang Internet of Things (IoT) merupakan
pengguna layanan Teknologi Informasi kumpulan benda-benda (things), berupa
berubah dari hardware oriented menjadi perangkat fisik (hardware /embedded system)
service oriented dengan adanya berbagai yang mampu bertukar informasi antar sumber
macam layanan yang diberikan pada informasi, operator layanan ataupun
perkembangan Cloud Computing. Layanan perangkat lainnya yang terhubung kedalam
service tersebut antara lain Infrastructure as a sistem sehingga dapat memberikan
Service (IaaS) , Platform as s Serviece (Paas) kemanfaatan yang lebih besar. Perangkat fisik
dan Software as a Service (SaaS). Dengan (hardware/embedded system) dalam
adanya penggabungan ketiga layanan IaaS, infrastruktur Internet of Things merupakan
PaaS, and SaaS sangat mempengaruhi hardware yang tertanam (embedded) dengan
perkembangan mobile communication. elektronik, perangkat lunak, sensor dan juga
Berdasar pada riset yang dilakukan oleh konektivitas. Perangkat embedded system
Michael Facemire, 12 April 2012 seorang melakukan komputasi untuk pengolahan data
Professional Application Development & dari input sensor dan beroperasi dalam
Delivery pada lembaga Forrester, infrastruktur internet. "A Things" pada
mengungkap bahwa permintaan aplikasi Internet of Things dapat didefinisikan sebagai
berbasis mobile menjadi sangat tinggi mulai subjek misalkan orang dengan monitor
dari end user sampai dengan perusahaan implant jantung, hewan peternakan dengan
besar. Cloud Database merupakan salah satu transponder biochip, sebuah mobil yang telah
layanan yang dimiliki Mobile Backend as a dilengkapi built-in sensor untuk
Service (mBaaS). memperingatkan pengemudi ketika tekanan
Kunci merupakan salah satu dari alat ban rendah. Sejauh ini, IoT paling erat
pengamanan rumah. Sistem pengaman rumah hubungannya dengan komunikasi machine-
yang baik sangat di pengaruhi oleh kualitas to-machine (M2M) di bidang manufaktur dan
kunci. Berbagai jenis kunci yang digunakaan listrik, perminyakan, dan gas. Produk
untuk sistem pengaman rumah mulai dari dibangun dengan kemampuan komunikasi
kunci manual sampai dengan kunci otomatis M2M yang sering disebut dengan sistem
dengan bantuan energi listrik. Smart Door cerdas atau "smart". (contoh: smart label,
Locks Based On Internet Of Things (IoT) smart meter, smart grid sensor).
Concept with Mobile Backend as a Service
merupakan penelitian pengembangan kunci

172
Jurnal Electronics, Informatics, and Vocational Education (ELINVO), Volume 1, Nomor 3, November 2016

dapat digunakan secara sendiri (Standalone)


ataupun digabungkan dengan perangkat
pengendali lainnya seperti mikrokontroler.
ESP8266 memiliki kemampuan networking
yang lengkap dan menyatu baik sebagai client
maupun sebagai Access Point. Firmware yang
dimiliki ESP88266 begitu banyak, dapat juga
sebuah chip ESP8266 diprogram dengan
tujuan khusus sesuai degan kebutuhan
Gambar 1. Internet of Things(http://www.iscoop.eu) sebagai contoh kemampuan untuk
Untuk membangun sistem Internet of berkomunikasi dengan web yang
Things membutuhkan komponen yaitu device menggunakan port HTTPS.
connection dan Data sensing. Selain Chip ESP8266 disempurnakan oleh
komponen untuk membangun sistem IoT Tensilica’s seri L106 Diamond dengan
kemampuan berkomunikasi antara sistem prosesor 32-bit. ESP8266 memiliki tiga mode
juga dibutuhkan dalam IoT. Untuk akses : sebagai wifi access menggunakan AT
menyimpan serta melakukan Data analytics command, biasanya dimanfaatkan oleh
dari data hasil akusisi Data Sensing Arduino untuk koneksi wifi, sebagai sistem
digunakan server database. Komponen yang berdiri sendiri menggunakan NodeMCU
terakhir adalah pemanfaatan dari komunikasi dan menggunakan bahasa LUA, sebagai
yang dijalankan terus menerus antara device sistem yang berdiri sendiri dengan
connection dengan data sensing yang mampu menggunakan Arduino IDE yang sudah bisa
menyiman serta melakukan data analytics terhubung dengan ESP8266. ESP 8266 dapat
daan digunakan untuk membantu manusia bertindak sebagai client ke suatu wifi router,
dalam hal tertentu. sehingga saat konfigurasi dibutuhkan setting
"Internet of Things" dikenalkan nama access pointnya dan juga passwordnya,
pertama kali oleh visioner Inggris yaitu Kevin selain itu ESP8266 dapat digunakan sebagai
Ashton, pada tahun 1999. IoT merupakan Access Point dimana ESP8266 dapat
teknologi yang diharapkan mampu menerima akses wifi.
menawarkan perangkat sistem canggih
dengan kemampuan konektivitas, sehingga
mampu melakukan komunikasi mesin-ke-
mesin (M2M) dan mencakup berbagai
protokol, domain, dan aplikasi. Interkoneksi
pada perangkat ini tertanam (embedded)
Gambar 2. ESP8266-1 AI Cloud
diharapkan untuk mengantarkan otomatisasi
dalam hampir semua bidang. Fitur yang dimiliki oleh ESP8266-1 sebagai
berikut :
MODUL ESP8266  Frekuensi wifi 802.11 b/g/n
ESP8266 adalah sebuah embedded chip  Prosesor 32 - bit MCU
 10 - bit ADC
yang di desain untuk komunikasi berbasis
 TCP/ IP protocol stack
wifi. Chip ini memiliki output serial TTL dan  TR switch, LNA , power amplifier dan jaringan
juga mempunya GPIO 2 buah. ESP8266  PLL , regulator , dan unit manajemen daya

173
Jurnal Electronics, Informatics, and Vocational Education (ELINVO), Volume 1, Nomor 3, November 2016

 Mendukung keragaman antena adalah (IaaS) kemudian layer PaaS, setelah


 WiFi 2.4 GHz , mendukung WPA / WPA2 itu layer mBaaS hingga pada Mobile
 Dukungan STA mode operasi /AP / STA + AP
 Dukungan Smart link Fungsi untuk kedua Middleware. mBaaS memberikan layer
perangkat Android dan iOS layanan antara penyedia layanan PaaS dengan
 SDIO 2.0 , ( H ) SPI , UART , I2C , I2S , IR ranah solusi end-to-end yang dihasilkan dari
Remote Control , PWM , GPIO platform aplikasi berbasis mobile.
 STBC , 1x1 MIMO , 2x1 MIMO
 A - MPDU & A - MSDU agregasi & 0.4s Atas dasar tuntutan teknologi dalam
guard interval pengembangan aplikasi berbasis mobile saat
ini, penyedia layanan mBaaS memberikan
Mobile Backend as s Service (mBaaS) layanan berupa : (1) Fasilitas penyimpanan
Cloud Computing berkembang pesat data berbasis cloud computing (2)
dalam kurun waktu tiga tahun terakhir. Saat Pembentukan antar muka pemrograman
ini Cloud Computing juga merambah ke ranah aplikasi yang bersifat Representational State
mobile communication. Sudut pandang Transfer (RESTfull) dan otomatis untuk
pengguna layanan Teknologi Informasi menyediakan akses baca/tulis terhadap data
berubah dari hardware oriented menjadi (3) Optimasi pengaksesan data enggunakan
service oriented dengan adanya berbagai JavaScript Object Notation (JSON) (4)
macam layanan yang diberikan pada Fasilitas otentikasi pengguna dan (5) Data
perkembangan Cloud Computing. Layanan anaytics.
service tersebut antara lain Infrastructure as a
Service (IaaS) , Platform as s Serviece (Paas)
dan Software as a Service (SaaS). Dengan
adanya penggabungan ketiga layanan IaaS,
PaaS, and SaaS sangat mempengaruhi
perkembangan mobile communication
Mobile Backend as a Service (mBaaS)
merupakan salah satu layanan cloud
computing yang memungkinkan seorang Gambar 3. Piramida framework pengembangan aplikasi
mobile app developer melakukan integrasi mobile
antara database, cloud storage, push Firebase merupakan salah satu dari
notification, management user, API sejumlah penyedia layanan mBaaS. Firebase
(Application Program Interface) dan SDK mengalami perubahan besar-besaran sejak
(Software Development Kit). Berbagai Mei 2016 dengan versi terakhirnya diberi
macam dukungan integrasi disediakan nama Firebase 3.0. Dibandingkan dengan
mBaaS pada banyak platform. Kemudahan versi terdahulu saat ini dengan Firebase 3.0
dalam pengelolaan user database, file memberikan service layanan yang lebih
management, social networking integration, lengkap dari layanan terdahulu yang hanya
location services, dan mengelola load memberikan layanan authentication service
balancer dari trafic yang masuk kedalam dan real-time database saja. Saat ini lebih
aplikasi mobile juga merupakan kemudahan kurang 15 layanan yang disediakan Firebase
yang ditawarkan dalam mBaaS. 3.0 seperti ditunjukkan pada gambar 3.
Piramida framework pengembangan
aplikasi berbasis mobile layer paling bawah

174
Jurnal Electronics, Informatics, and Vocational Education (ELINVO), Volume 1, Nomor 3, November 2016

Gambar 4. Firebase Service (http://firebase.com)

Firebase memberikan layanan untuk mengembangkan sistem ini. Pada awal


Service Develop pada saat pengembangan berdirinya android yang merupakan
applikasi yaitu (1) Realtime Database (2) perusahaan dengan nama Android inc.
Authentication (3) Cloud Messaging (4) Selanjutnya pada perkembangannya Google
Storage (5) Hosting (6) Test Lab (7) Crash membeli android inc yang bergerak pada
Reporting dan (7) Cloud Functions. Selain pendatang baru piranti lunak unruk ponsel /
layanan untuk pengembang aplikasi pada sisi smart phone. Pada awal perkembangan
service untuk end user aplikasi Firebase 3.0 android dibentuklah Open Handset Alliance
memberikan service berupa (1) Notification yang merupakan forum konsorsium 34
(2) Remote Config (3) App Indexing (4) perusahaan piranti keras, piranti lunak, dan
Dynamic Link (5) Invites dan (7) Adword telekomunikasi termasuk didalamnya
Firebase 3.0 juga menyediakan Google, HTC, Intel, Motorola, Qualcomm, T-
layanan untuk berbagai merchane dalam Mobile dan Nvidia.
menawarkan produk dalam service layanan
AdMob. Layanan Data Analytics untuk
analisa data juga disematkan dalam firebase
3.0 seiring dengan tren analisa Big Data saat
ini.
ANDROID
Android merupakan sebuah sistem
yang digunakan untuk perangkat mobile
berbasis linux yang mencakup sistem operasi,
middleware dan aplikasi. Android
mempunyai sifat open source sehingga siapa Gambar 5. Arsitektur Android
saja orang dapat ikut berperan dalam (http://developer.android.com)

175
Jurnal Electronics, Informatics, and Vocational Education (ELINVO), Volume 1, Nomor 3, November 2016

Gambar 6. Diagram blok sistem

Android mempunyai empat Apabila salah satu dari device melakukan


karakteristik yaitu (1) terbuka, (2) Semua update data, secara otomatis smartphone
aplikasi (3) Memecahkan hambatan pada lainnya yang sudah terinstall aplikasi juga
aplikasi dan (4) Memiliki banyak library dan akan mendapatkan update terakhir keadaan
tool pendukung yang banyak. Secara garis kondisi dari database. Firebase yang
besar arsitektur android tersusun atas (1) berfungsi sebagai Mobile Backend as Service
Application (2) Application Framework (3) memiliki banyak fasilitas dan diatur oleh App
Libraries (4) Android Runtime dan (5) Linux Engine (gambar 6).
Kernel. Komponen yang menjadi dasar
aplikasi android antara lain : (1) Activities (2) HASIL DAN PEMBAHASAN
Services (3) Content providers (4) Broadcast a. mBaaS Firebase Configuration
receivers. Pengunaan firebase sebagai
backend database membutuhkan
METODE PENELITIAN konfigusi. Konfigurasi untuk akses
Penelitian ini dilaksanakan di database dilakukan untuk 2 jenis platform
Laboratorium Jurusan Pendidikan Teknik yang berbeda. Yang pertama adalah untuk
Elektronika dan Informatika. Berikut ini platform Embedded sistem dan yang
adalah gambaran sistem yang dibuat seperti kedua adalah untuk platform android.
pada gambar 6. ESP8266 sebagai modul wifi Konfigurasi realtime database untuk
juga berperan sebagai peralatan kontrol yang embedded sistem yang dibutuhkan adalah
dapat memutar motor yang terdapat pada address host dan key database. Dalam
pintu dan berfungsi sebagai kunci. ESP8266 pengaturan rule database juga diatur
melakukan komunikasi baik baca dan tulis semua device dapat melakukan read/write
dengan Firebase realtime database secara data. Pengaturan ini dilakukan untuk
online dengan terhubung ke access point. komunikasi antara ESP8266 dengan
Smart phone android yang sudah terinstall firebase baik membaca data maupun
apikasi dapat melakukan pengontrolan menulis data. Data konfigurasi untuk
dengan merubah status kunci. Aplikasi penelitian ini adalah
android dapat melakukan pembacaan dan
penulian realtime database secaa online.

176
Jurnal Electronics, Informatics, and Vocational Education (ELINVO), Volume 1, Nomor 3, November 2016

HOST "smart-door-lock-df527.firebaseio.com"
Databse key
motor dan 1 buah port input untuk tombol.
"bWIBYTvPXUGjxQNXDf1z6DjToDQU27ZAzt5U2aIL" ESP8266 secara umum hanya memiliki 2
buah GPIO untuk general input/output.
Sedangkan untuk rule database sebagai
Pemanfaatan port serial Rx sebagai input
berikut :
{
data tombol digunakan sebagai alternatif
"rules": { tambahan port. Dalam program yang
".read": true,
".write": true
dimasukkan dalam ESP8266 serial
} communication hanya diaktifkan untuk
}
port TX saja, kemudian port RX diseting
Konfigurasi setting untuk
sebagai port input dan bertipe PULLUP.
platform android sudah diberikan file
Pengendali motor dengan menggunakan
konfigurasi dalam bentuk satu buah file
IC L293 membutuhkan 2 port untuk
yang bisa di untuh dari firebase.com
mengendalikan sehingga motor dapat
setelah nama package aplikasi yang akan
bergerak 2 arah (searah dan berkebalikan
dibuat ditambahkan dalam sistem
arah jarum jam) karena keadaan Smart
tersebut. Nama file yang harus
Door Lock terdapat 2 proses membuka
dimasukkan dalah package aplikasi
dan mengunci. IC L293 hanya
supaya dapat mengakses realtime
dimanfaatkan 1 buah jembatan karena
database di firebase adalah google-
motor yang digunakan hanya satu buah.
services.json.Berikut ini tampilan project
Gambar 8 adalah gambar rangkaian
setting dalam firebase sekaligus lokasi
sistem secara keselurunan.
untuk mengunduh file konfigurasi
b. Perancangan Program ESP8266-1.
ESP8266 merupakan embedded
chip yang dapat di program dengan
menggunakan arduino IDE dan juga
bahasa LUA. Pada penelitian ini pada
proses programming ke ESP8266
menggunakan bantuan board Arduino
UNO tanpa chip ATMEGA sebagai
interface dengan IDE. Berikut ini adalah
skematik diagram pada saat programming
Gambar 7. Diagram ESP8266 pada saat programming
ESP8266
Pada penelitian ini dibutuhkan 2
buah port GPIO untuk mengendalikan

177
Jurnal Electronics, Informatics, and Vocational Education (ELINVO), Volume 1, Nomor 3, November 2016

Gambar 8. konfigurasi Firebase untuk Android SDK

if (val == HIGH)
{
lockstate = Firebase.getInt("lock");
if (lockstate == 1){
Firebase.setInt("lock", 0);
bukakunci;
} else {
Firebase.setInt("lock", 1);
kunci;
}
}
}

Serial.println(Firebase.getInt("lock"));
lockstate = Firebase.getInt("lock");

if (Firebase.failed()) {
Serial.print("pushing /logs failed:");
Serial.println(Firebase.error());
Gambar 9. Rangkaian sistem return;
}

Berikut ini adalah source code if (lockstate != lockstatebefore){


if (lockstate == 1){
smart door lock dengan menggunakan Serial.println("Terkunci");
Arduino IDE kunci;
} else {
#include <ESP8266WiFi.h> Serial.println("Terbuka");
#include <FirebaseArduino.h> bukakunci()
#define FIREBASE_HOST "smart-door-lock-df527.firebaseio.com" }
#define FIREBASE_AUTH }
"bWIBYTvPXUGjxQNXDf1z6DjToDQU27ZAzt5U2aIL" lockstatebefore = lockstate
#define WIFI_SSID "HTC6545LVW"
#define WIFI_PASSWORD "meteora1" String name = Firebase.pushInt("logs", n++);
// handle error
const int motorPin1 = 0; //pin 15 L293 if (Firebase.failed()) {
const int motorPin2 = 2; //pin 10 L293 Serial.print("pushing /logs failed:");
const int tombol = 3; //pin tombol Serial.println(Firebase.error());
return;
int val = 0; }
Serial.print("pushed: /logs/");
void setup() { Serial.println(name);
//Serial hanya pin TX yang digunakan pin
Serial.begin(115200,SERIAL_8N1,SERIAL_TX_ONLY); delay(1000);
pinMode (motorPin1,OUTPUT); }
pinMode (motorPin2,OUTPUT);
pinMode (tombol,INPUT_PULLUP); //GPIO RX untuk //Membuka Kunci
void bukakunci(){
digitalWrite (motorPin1, LOW); digitalWrite (motorPin1, HIGH);
digitalWrite (motorPin2, LOW); digitalWrite (motorPin2, LOW);
delay (3000);
// connect to wifi. digitalWrite (motorPin1, LOW);
WiFi.begin(WIFI_SSID, WIFI_PASSWORD); digitalWrite (motorPin2, LOW);
Serial.print("connecting"); }
while (WiFi.status() != WL_CONNECTED) {
Serial.print("."); //Mengunci
delay(500); void kunci(){
} digitalWrite (motorPin1, LOW);
Serial.println(); digitalWrite (motorPin2, HIGH);
Serial.print("connected: "); delay (3000);
Serial.println(WiFi.localIP()); digitalWrite (motorPin1, LOW);
digitalWrite (motorPin2, LOW);
Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH); }

}
Dalam program diatas secara garis
long n = 0;
int lockstate; besar terbagi menjadi 4 bagian (1)
int lockstatebefore = 0;
Menghubungkan ESP8266-1 ke akses
void loop() {
val = digitalRead(tombol);
point (2) Pengecekan input tombol
if (val == LOW) dengan anti bounch support (3) Akses
{
val = digitalRead(tombol); read/write data pada firebase dan (4)

178
Jurnal Electronics, Informatics, and Vocational Education (ELINVO), Volume 1, Nomor 3, November 2016

Kendali motor untuk membuka dan d. Implementasi dan pengujian


mengunci. Implementasi pada mBaaS
c. Perancangan Aplikasi Android firebase realtime database terlebih dahulu
Pada tahap pengembangan dibuat filed data sebagai basis
aplikasi android yang mampu penyimpanan data. Pada penelitian ini
berkomunikasi dengan firebase terdapat field yang dibutuhkan ada 2 yaitu fields
beberapa point penting mengenai pertama adalah “lock” dengan type data
konfigurasi yang dilakukan. Setelah long, field ini digunakan untuk
konfigurasi pada sisi mBaaS firebase merepresentasikan keadaan smart door.
dilakukan selanjutnya pada sisi Nilai 1 merepresentasikan smart door
pengembangan aplikasi dilakukan proses dalam keadaan terkunci dan nilai 0
memasukkan file konfigurasi firebase ke merepresentasikan keadaan terbuka. Field
dalam package. Adapun nama file yang kedua yaitu “pass” dengan type data
konfigurasi yang diberikan dari firebase long, field ini digunakan untuk
adalah google-service.json. Ketika menyimpan password akses pada sistem.
android mengakses layanan Firebase Pada penerapan untuk aplikasi Android
perlu ditambahkan library service pada sebelum melakukan kendali smart door
build.gradle 'com.google.gms:google- lock terlebih dahulu memasukkan
services:3.0.0'. Selain itu diperlukan password dan harus sesuai dengan isi field
library firebase realtime database dalam database. Apabila password tidak
'com.google.firebase:firebase- sama smart door lock tidak akan
database:9.6.1' yang berfungsi untuk menjalankan perintah Lock ataupun
mengakses realtime database pada mBaaS Unlock.
Firebase [9] . Pada proses inserting data
source code yang digunakan untuk
menuliskan data dalam firebase realtime
database adalah sebagai berikut :
mFirebaseInstance = FirebaseDatabase.getInstance();
mFirebaseInstance.getReference("lock").setValue(1);

Terdapat perbedaan yang besar


antara membaca dan menulis firebase
realtime database . Dalam proses mebaca
realtime database dilakukan
menggunakan listener, berikut ini adalah
Gambar 10. Data Structure Realtime Database pada
sourcode untuk membaca data dari Firebase
firebase realtime database . Berikut ini adalah implementasi
ValueEventListener getPass = new ValueEventListener() { aplikasi android Smart Door Lock.
@Override
public void onDataChange(DataSnapshot dataSnapshot) { Terdapat 3 buah komponen utama dalam
codepass = (long) dataSnapshot.getValue();
}
aplikasi ini yaitu : (1) Icon Lock/Unlock
@Override (2) Password Field dan (3) Button. Icon
public void onCancelled(DatabaseError databaseError) {
} dalam bentuk gembok dalam aplikasi ini
}; akan merepresentasikan keadaan dalam
mFirebaseInstance.getReference("pass")
.addValueEventListener(getPass); database filed “lock”, apabila field

179
Jurnal Electronics, Informatics, and Vocational Education (ELINVO), Volume 1, Nomor 3, November 2016

tersebut bernilai 1 yang ESP8266 mengirimkan data logs pada


merepresentasikan keadaan pintu terkunci sistem database.
maka tampilan dalam aplikasi akan Pada implementasi sistem, tombol
seperti pada Gambar 9 (a) dengan icon digunakan sebagai kontrol manual untuk
gembok terkunci dan berwarna merah. proses membuka dan mengunci Smart
Apabila filed “lock” bernilai 0 maka Door Lock. Pada saat tombol ditekan
dalam aplikasi akan menampilkan icon sistem Smart Door Lock akan melakukan
gembok terbuka dan berwarna hijau. pengecekan keadaan terakhir selanjutnya
Tampilan icon akan berubah secara sistem akan merubah keadaan yang
otomatis ketika database dalam firebase semula terbuka menjadi terkunci atau
berubah, sebagai contoh ketika terdapat 4 sebaliknya. Sistem ini menggunakan
buah smartphone android yang akses 1 tombol untuk membuka dan
menggunakan aplikasi Smart Door Lock, mengunci pintu.
apabila salah satu dari 4 smart phone
tersebut mengunci ataupun membuka
kunci smart door lock maka ke 3
smartphone yang lainnya akan
menampilkan keadaan terakhir dari smart
door lock.

Gambar 12. Response Arduino dengan Firebase


Gambar 11. Aplikasi android Smart Door Locks
(a)Lock dan (b) Unlock SIMPULAN
Pada saat implementasi Pengembangan sistem pada penelitian
komunikasi yang terjadi antara ESP8266 ini mampu menghubungkan embedded sistem
dengan firebase realtime database ESP8266 yang berfungsi sebagai kontrol
dilakukan secara online ditunjukkan pada dengan firebase realtime database yang
gambar 12. Dalam database field “lock” berperan sebagai mobile Backend as a Service
untuk menyimpan data. Modul ESP8266
akan selalu dibaca oleh ESP8266. mampu membaca keadaan database dan
ESP8266 akan selalu mengikuti nilai yang melaksanakan perintah sesuai dengan data
terdapat dalam field “lock”. Warna yang ada. Selain itu Modul ESP8266 juga
kuning dalam firebase realtime database mampu mengirimkan data ke Firebase
menandakan bawah ada update data realtime database . Aplikasi berbasis Android
dalam field “logs”. Pada proses ini juga digunakan sebagai alat untuk membuka

180
Jurnal Electronics, Informatics, and Vocational Education (ELINVO), Volume 1, Nomor 3, November 2016

ataupun mengunci smart door locks melalui Juniper Research, “‘Internet of Things’
jalur komunikasi internet. Seluruh device Connected Devices to Almost Triple to
yang sudah terinstal aplikasi ini akan over 38 Billion Units by 2020,” press
melakukan sinkronisasi dengan ESP8266 release, July 28, 2015. diakses Agustus
melalui firebase realtime database sehingga 2016
akan mendapatkan keadaan yang sama Juniper Research, Retail Spend on ‘Internet of
apabila smart door locks pada keadaan Things’ to reach $2.5Bn by 2020,
terkunci maupun terbuka. Oleh karena itu http://www.juniperresearch.com/press/pr
penelitian Smart Door Lock sudah dapat ess-releases/retail-spend-on-iot-to-reach-
dikategorikan dalam sistem berbasis Internet 2-5bn-by-2020 diakses Agustus 2016
of Things. Madakam, Somayya. 2015. Internet of
DAFTAR RUJUKAN Things: Smart Things International.
Journal of Future Computer and
Aulia Faqih Rifa’I , 2016, Sistem Pendeteksi Communication, Vol. 4, No. 4,
Dan Monitoring Kebocoran GAS Nazrudin Safaat. 2012 , Android :
(Liquefied Petrolum Gas) Berbasis Pemrograman Aplikasi Mobile
Internet of Things, JISKa, Vol. 1, No. 1, Smartphone dan Tablet PC (Edisi
Mei, 2016, Pp. 5 – 13 ISSN 2527-5836 Revisi), Bandung, Informatika,
Berkah I Santosa. 2012, Ebook : Santoso, Onno W. Purbo, 2015, Membuat Sendiri
Mobile Backend as a Service, Internet of Things untuk Pemula,
http://www.cloudindonesia.or.id/mobile- Khususnya di Indonesia,
backend-services.html. diakses agustus https://infokomputer.grid.id/2015/10/fitu
2016 r/membuat-sendiri-internet-of-things-
Developer Android, Application untuk-pemula-khususnya-di-indonesia/.
Fundamental, diakses agustus 2016.
https://developer.android.com/guide/co R. Das, "Stage 1 - Introduction to the Internet
mponents/fundamentals.html, diakses of Things: What, Why and How -
agustus 2016 CodeProject:," Grasshopper.iics, 26
Google Firebase, Add Firebase to Your Oktober 2014. [Online]. Available:
Android Project, http://www.codeproject.com/Articles/83
https://firebase.google.com/docs/android 2492/Stage-Introduction-to-the-Internet-
, diakses Agustus 2016 of-Things-Wha. [Accessed 20 Agustus
Gupta ,Neetu; Mandal, Ritabarta dan 2016].
Chaddha, Vinary. 2016. Internet of Yu Liu, dkk. 2015. Combination of Cloud
Things based Boor Locking System-An Computing and Internet of Things (IOT)
Architecture. International Science Press. in Medical Monitoring Systems.
IJCTA , pp. 385 = 390 International Journal of Hybrid
I-SCOOP,-, Internet of Things – IoT guide Information Technology. Vol.8, No.12,
with definitions example, trends dan use pp. 367 – 376.
cases. http: https://www.i- Zanella, Andrea dan Vangelista, Lorenzo,
scoop.eu/internet-of-things-guide/. 2014, Internet of Thing for Smart Cities,
diakses agustus 2016 Internet of Things Journal, vol. 1, no 1,
Internet of Things; privacy and security in the Feb 2014.
connected world, FTC Staff Report,
January 2015.

181

Anda mungkin juga menyukai