vi
Abstract
Smart Home Application with SMS base is designed to make things easier for home owners to control house’s appliances through handphones. In this high mobility society, people often worry about house security. This application only works upon the owners input, ignoring feedback from appliances.
This application uses c# as a primary languages. It also uses Visual Studio.Net 2005 with added components of ActiveXperts SMS and Pager Toolkit 3.2. XML files is used for database storage. In helping with real-life implementation it uses lamps that is controlled by computer through Microcontroller Atmel AT89S52.
Abstrak
Aplikasi Smart Home berbasis SMS ini ditujukan untuk mempermudah pemilik rumah agar dapat mengendalikan rumahnya dari jarak jauh melalui telepon genggam.
Kadang kala di dalam situasi masyarakat yang sering bergerak (jarang ada di rumah)
sering kali mengkhawatirkan tentang keadaan rumahnya. Aplikasi ini berjalan
berdasarkan masukkan dari pemilik rumah, tanpa memperhatikan balikan(feedback)
yang diberikan oleh lampu.
Pembuatan aplikasi ini didasarkan pada bahasa C# 2.0 dengan memanfaatkan
teknologi .Net yaitu Visual Studio.Net 2005 dan dengan bantuan komponen tambahan
ActiveXperts SMS and Pager Toolkit 3.2. Untuk penyimpanan data digunakan file XML. Serta untuk membantu implementasi nyata digunakan lampu yang akan dikendalian
oleh komputer melalui Microcontroller Atmel AT89S52.
Kata Kunci: SmartHome, SMS, sering bergerak, tanpa feedback, C# 2.0, Visual
Studio.Net 2005, ActiveXperts SMS and Pager Toolkit 3.2, XML, Atmel
viii
Daftar Isi
Kata Pengantar ...iii
Abstract... vi
Abstrak...vii
Daftar Isi ...viii
Daftar Tabel ... x
Daftar Gambar ... xi
Daftar Simbol ...xiii
Bab 1 Persyaratan Produk ... 1
1.1 Pendahuluan ... 1
1.1.1 Tujuan ... 2
1.1.2 Ruang Lingkup Proyek ... 2
1.1.3 Definisi, Akronim, dan Singkatan... 3
1.1.4 Sistematika Pembahasan... 3
1.2 Gambaran Keseluruhan ... 4
1.2.1 Perspektif Produk ... 4
1.2.2 Fungsi Produk ... 5
1.2.3 Karakteristik Pengguna ... 5
1.2.4 Batasan – Batasan ... 6
1.2.5 Asumsi dan Ketergantungan ... 6
1.2.6 Penundaan Persyaratan... 7
Bab 2 Spesifikasi Produk ... 8
2.1 Persyaratan Antarmuka Eksternal ... 8
2.1.1 Antarmuka dengan Pengguna ... 8
2.1.2 Antarmuka Perangkat Keras... 8
2.1.3 Antarmuka Perangkat Lunak ... 10
2.1.4 Antarmuka Komunikasi... 10
2.2 Fitur Produk Perangkat Lunak... 11
2.2.1 Fitur 1 : Mengupdate Status Controller Melalui SMS ... 11
2.2.2 Fitur 2 : Meminta Status Keseluruhan Melalui SMS ... 12
2.2.3 Fitur 3 : Membuat Setting Baru Melalui Desktop... 12
2.2.4 Fitur 4 : Mengubah Setting Melalui Desktop ... 13
2.2.5 Fitur 5 : Menampilkan Log Melalui Desktop ... 14
2.2.6 Fitur 6 : Menghapus Log Melalui Desktop... 14
2.2.7 Fitur 7 : Mengupdate Status Controller Melalui Desktop ... 15
2.2.8 Fitur 8 : Menyimpan setting dalam favorite Melalui Desktop ... 16
2.2.9 Fitur 9 : Menampilkan/Load favorite Melalui Desktop ... 16
2.2.10 Fitur 10 : Mengubah semua status controller di dalam rumah menjadi ON melalui SMS ... 17
2.2.11 Fitur 11 : Mengubah semua status controller di dalam rumah menjadi OFF melalui SMS ... 18
2.2.12 Fitur 12 : Meload favorite setting melalui SMS... 19
Bab 3 Desain Perangkat Lunak... 20
3.1. Pendahuluan ... 20
3.1.1 Identifikasi ... 20
3.1.2 Overview Sistem ... 21
3.2.1 Use Case Diagram ... 22
3.2.2 Activity Diagram... 24
3.2.3 Sequence Diagram... 35
3.2.4 Penjelasan XML ... 44
3.2.5 Flow Chart Komunikasi Microcontroller dengan serial port ... 46
3.3. Desain Arsitektur Perangkat Lunak ... 48
3.3.1 Komponen Perangkat Lunak ... 48
3.3.2 Desain Antar Muka... 52
Bab 4: Pengembangan Sistem... 61
4.1 Perencanaan Tahap Implementasi... 61
4.1.1 Pembagian Modul / Prosedur / Class Implementasi ... 61
4.1.2 Keterkaitan Antar Modul / Prosedur / Class ... 65
4.2 Perjalanan Tahap Implementasi (Coding) ... 66
4.2.1 Top Down / Bottom Up Implementasi ... 66
4.2.2 Debugging... 66
4.3 Ulasan Realisasi Fungsionalitas... 67
4.4 Ulasan Realisasi User Interface Design ... 68
Bab 5: Testing dan Evaluasi Sistem... 78
5.1 Perjalanan Metodologi Pengujian ... 78
5.1.1 Black Box ... 78
5.1 Ulasan Hasil Evaluasi... 84
Bab 6: Kesimpulan dan Saran... 86
6.1 Keterkaitan antara Kesimpulan dengan Hasil Evaluasi... 86
6.2 Keterkaitan antara Saran dengan Hasil Evaluasi... 86
x
Daftar Tabel
Daftar Gambar
Gambar 2.1.2.1 Microcontroller Atmel AT89S52... 9
Gambar 2.1.4.1 : Gambar Antarmuka Komunikasi... 10
Gambar 3.2.1.1 : Use Case Diagram Desktop User... 22
Gambar 3.2.1.2 : Use Case Diagram HP User... 23
Gambar 3.2.2.1 : Activity Diagram Login... 24
Gambar 3.2.2.2 : Activity Diagram Update Status Using SMS... 24
Gambar 3.2.2.3 : Activity Diagram Request All Status... 25
Gambar 3.2.2.4 : Activity Diagram Update Status... 25
Gambar 3.2.2.5 : Activity Diagram Show Log... 25
Gambar 3.2.2.6 : Activity Diagram Delete Log... 26
Gambar 3.2.2.7 : Activity Diagram Input Map Location... 26
Gambar 3.2.2.8 : Activity Diagram Input Number Of Controller... 26
Gambar 3.2.2.9 : Activity Diagram Input Controller Location... 27
Gambar 3.2.2.10 : Activity Diagram Input Controller Name... 27
Gambar 3.2.2.11 : Activity Diagram Input Controller Caller Name... 27
Gambar 3.2.2.12 : Activity Diagram Input Controller Status... 28
Gambar 3.2.2.13 : Activity Diagram Insert Handphone Number... 28
Gambar 3.2.2.14 : Activity Diagram Input HP Connection... 28
Gambar 3.2.2.15 : Activity Diagram Create New Setting... 29
Gambar 3.2.2.16 : Activity Diagram Update Map Location... 29
Gambar 3.2.2.17 : Activity Diagram Update Amount Of Controller... 30
Gambar 3.2.2.18 : Activity Diagram Update Controller Name... 30
Gambar 3.2.2.19 : Activity Diagram Update Caller Name... 30
Gambar 3.2.2.20 : Activity Diagram Update Controller Status... 31
Gambar 3.2.2.21 : Activity Diagram Update Handphone Number... 31
Gambar 3.2.2.22 : Activity Diagram Update HP Connection... 31
Gambar 3.2.2.23 : Activity Diagram Change Setting... 32
Gambar 3.2.2.24 : Activity Diagram Save Favorite... 32
Gambar 3.2.2.25 : Activity Diagram Load Favorite... 33
Gambar 3.2.2.26 : Activity Diagram Change All Status to On... 33
Gambar 3.2.2.27 : Activity Diagram Change All Status to Off... 33
Gambar 3.2.2.28 : Activity Diagram Load Favorite using SMS... 34
Gambar 3.2.3.1 : Sequence Diagram Show Log... 35
Gambar 3.2.3.2 : Sequence Diagram Delete Log... 35
Gambar 3.2.3.3 : Sequence Diagram Request All Status... 36
Gambar 3.2.3.4 : Sequence Diagram Update Status Using SMS... 37
Gambar 3.2.3.5 : Sequence Diagram Update Status... 37
Gambar 3.2.3.6 : Sequence Diagram New Setting... 38
Gambar 3.2.3.7 : Sequence Diagram Change Setting ... 39
Gambar 3.2.3.8 : Sequence Diagram Change All Status to On... 40
Gambar 3.2.3.9: Sequence Diagram Change All Status to Off... 41
Gambar 3.2.3.10: Sequence Diagram Load Favorite Using SMS... 42
Gambar 3.2.3.11: Sequence Diagram Add Favorite... 42
xii
Gambar 3.2.4.1 : Gambar XML yang digunakan... 44
Gambar 3.2.4.1 : Gambar DTD yang digunakan... 45
Gambar 3.2.5.1 Flow Chart Komunikasi Microcontroller dengan serial port... 46
Gambar 3.3.1.1 : Gambar Component Diagram ... 48
Gambar 3.3.1.2 : Gambar Class Diagram... 49
Gambar 3.3.1.3 : Gambar Relasi Class Diagram... 51
Gambar 3.3.2.1 : Gambar form Remote ... 52
Gambar 3.3.2.2 : Gambar form Log... 53
Gambar 3.3.2.3 : Gambar form Setting(tab Choose action) ... 54
Gambar 3.3.2.4 : Gambar form Setting(tab Picture Location) ... 55
Gambar 3.3.2.5 : Gambar form Setting(tab Indicator Number)... 56
Gambar 3.3.2.6 : Gambar form Setting(tab Indicator Location)... 57
Gambar 3.3.2.7 : Gambar form Setting(tab Indicator Name)... 58
Gambar 3.3.2.9 : Gambar form Setting(tab format style)... 59
Gambar 3.3.2.10 : Gambar form Main ... 59
Gambar 3.3.2.11 : Gambar form Main ... 60
Gambar 4.3.1 : Gambar realisasi fungsionalitas ... 67
Gambar 4.4.1 : Gambar Form Utama ... 68
Gambar 4.4.2 : Gambar Form Setting( Tab Choose Action) ... 69
Gambar 4.4.3 : Gambar Form Setting(Tab Picture Location)... 70
Gambar 4.4.5 : Gambar Form Setting(tab Indicator Location)... 71
Gambar 4.4.6 : Gambar Form Setting(tab Indicator Name)... 72
Gambar 4.4.7 : Gambar Form Setting(tab Handphone number)... 73
Gambar 4.4.8 : Gambar Form Setting(tab Format Style)... 74
Gambar 4.4.9 : Gambar Form Log... 75
Gambar 4.4.10 : Gambar Form Remote... 76
xiv
Daftar Lampiran
Bab I
Persyaratan Produk
1.1 Pendahuluan
Saat ini
SMS
sudah menjadi salah satu
trend
yang cukup digemari baik di
kalangan remaja dan dewasa. Selain tarif yang cukup terjangkau ternyata
SMS
menjadi salah satu
point
utama yang menjadi tolak ukur keberhasilan suatu
penyedia jasa layanan telepon seluler di Indonesia. Banyak sekali penyedia jasa
tersebut yang memberikan
SMS
itu secara gratis, bahkan IM-3 salah satu
penyedia jasa layanan tersebut menyebutnya sebagai “Rajanya
SMS
”.Apalagi
untuk masyarakat yang bukan berasal dari kota-kota besar,
SMS
dianggap
cukup efektif untuk melakukan komunikasi. Ini menandakan bahwa
SMS
masih
menjadi
trend
yang cukup digemari dan banyak dipakai di masyarakat.
Seiring dengan pesatnya teknologi, masyarakat Indonesia dituntut untuk
menjadi masyarakat yang
mobile
, dalam artian banyak sekali masyarakat
Indonesia yang lebih banyak melakukan aktifitasnya di luar rumah mereka.
Kadang kala sering berpergian ke luar kota. Secara konvensional, ketika kita
ingin pergi ke luar kota, sering kali kita mengkhawatirkan rumah kita. Sebab
ketika sore/menjelang malam, jika rumah kita dalam keadaan gelap, maka akan
mudah diterka oleh para pencuri untuk melakukan aktivitasnya pada
rumah-rumah yang kosong.
Oleh sebab itu dibutuhkan suatu aplikasi yang dapat mengontrol rumah
dari jarak jauh. Salah satunya yaitu dengan menggunakan
SMS
. Sehingga para
pemilik rumah dapat mengetahui dan mengontrol rumahnya hanya dari telepon
genggamnya saja. Hal ini setidaknya memberikan suatu rasa aman bagi para
2
1.1.1 Tujuan
Tujuan dari pembuatan aplikasi ini adalah sebagai berikut:
·
Mengetahui Keadaan keseluruhan/
status
alat-alat (dalam hal ini
berupa lampu) di dalam rumah melalui
SMS
.
·
Mengubah status dari alat-alat di dalam rumah melalui
SMS
.
·
Mengubah status dari alat-alat di dalam rumah secara manual
melalui komputer.
·
Membuat suatu pengaturan/
setting
alat terhadap rumah
(
custom made
).
1.1.2 Ruang Lingkup Proyek
Ruang Lingkup yang terdapat pada proyek ini adalah:
·
Pengguna/
user
dari aplikasi ini adalah para pemilik rumah.
·
Tujuan dari aplikasi ini tadinya hanya sebatas pengontrolan
rumah berdasarkan
SMS
dan terbatas pada 1(satu) studi kasus
saja. Tetapi mengalami pengembangan yaitu:
o
Aplikasi ini dapat juga dilakukan secara manual melalui
komputer.
o
Aplikasi ini tidak lagi terbatas pada 1(satu) studi kasus
saja, tetapi sudah dapat digunakan secara bebas(
custom setting
), sesuai rumahnya masing-masing. Tetapi
masih terbatas pada maksimal 3 lantai & dengan
dilengkapi maksimal 24 buah pengendali/
controller
o
Karena pengendalian dibuat secara bebas/
custom
setting
maka mempermudah pemilik rumah untuk
menentukan nama panggilan yang mereka sukai ketika
akan mengubah suatu status di dalam rumah mereka
tersebut.
o
Pengembangan format SMS yang tidak lagi memakai
separator yang banyak ( * , # , / , dll). Pengguna cukup
o
Pengembangan perangkat lunak ini disertai dengan
lampu
yang
digunakan
sebagai
indikator
pada
pengimplementasian di dunia nyata.
1.1.3 Definisi, Akronim, dan Singkatan
·
Provider
Telepon seluler : Penyedia jasa layanan telepon
seluler.
·
SMS (
Short Message Service
): suatu fitur komunikasi yang
dilakukan melalui tulisan. Biasanya dilakukan dari telepon
genggam yang satu dengan telepon genggam yang lainnya.
·
Bit
: sebuah representasi angka 0/1 yang biasanya digunakan
dalam sistem biner.
·
ASCII(
American Standard Code for Information Interchange
):
code yang mempunyai panjang 8
bit
untuk merepresentasikan
sebuah karakter.
·
Bahasa
Assembly
: Bahasa yang digunakan untuk mengisi
program pada microcontroller
·
Setb(setbit):
perintah dalam
microcontroller
yang berfungsi
untuk mengaktifkan sesuatu.(ex: lampu)
·
Clr(clear)
: perintah dalam
microcontroller
yang berfungsi untuk
menghapus sesuatu(ex: lampu)
·
CJNE
: Suatu perintah
if
yang diterapkan pada bahasa
assembly
pada
microcontroller.
1.1.4 Sistematika Pembahasan
·
BAB I PERSYARATAN PRODUK : berisi tentang gambaran
umum tentang pembuatan aplikasi yang akan dibuat. Tujuan
4
·
BAB II SPESIFIKASI PRODUK : berisi tentang penjelasan yang
lebih detil dari bab 1. Seperti fitur-fitur yang terdapat dalam
aplikasi ini.
·
BAB III DESAIN PERANGKAT LUNAK : Berisi tentang
gambaran secara umum tentang pembuatan aplikasi ini. Hal ini
dibantu dengan adanya
Use Case diagram
,
Activity diagram
,
Class diagram
, dan
sequence diagram
.
·
BAB IV PENGEMBANGAN
PROTOTIPE
: Pada bab ini terdapat
aplikasi yang telah dibuat berdasarkan desain yang telah
dijelaskan secara umum telah dijelaskan pada bab 3. Disini
terdapat implementasi dari aplikasi ini.
·
BAB V
TESTING
DAN EVALUASI : Berisi tentang testing/
pengujian terhadap aplikasi ini, serta evaluasinya.
·
BAB VI KESIMPULAN DAN SARAN : Berisi tentang kesimpulan
yang didapat dari pembuatan aplikasi ini dan saran yang
diperlukan untuk pengembangan aplikasi di masa yang akan
datang.
1.2 Gambaran Keseluruhan
1.2.1 Perspektif Produk
Aplikasi ini merupakan pengembangan dari aplikasi yang
sebelumnya (versi 1.0). Sebelumnya aplikasi ini (versi 1.0) dibuat
dengan bahasa
Visual Basic 6.0
dengan dan menggunakan
MFBUS component
. Tetapi pada aplikasi kali ini(versi 2.0) dibuat
dengan Microsoft Visual C# 2005 dan dengan menggunakan
ActiveXperts SMS and Pager Toolkit 3.2
. Tentu saja menjadi lebih
stabil dalam penggunaannya dibandingkan dengan
MFBUS
.
Selain itu pada versi ini (2.0) terdapat modul pengendalian secara
pada satu
customer
saja, tetapi sudah dapat digunakan di berbagai
rumah.
Aplikasi ini memungkinkan juga pergantian format tanpa
menggunakan
special character
seperti bintang dan pagar (“ * , #
“) ,hanya cukup memisahkannya dengan spasi(“ “) saja. Ini
ditujukan untuk mempermudah user memasukkan format tanpa
perlu lagi memikirkan separatornya. Selain itu karena pengendalian
dilakukan secara bebas/
custom setting
maka pengguna dapat
dengan mudah menentukan nama panggilan/
caller
yang ingin
dijadikan format dalam pengeksekusian
SMS
.
1.2.2 Fungsi Produk
Fungsi produk yang diinginkan adalah sebagai berikut:
·
Pengguna
dapat
mengubah
status
(
menyalakan/
mematikan) lampu yang ada di dalam rumah.
·
Pengguna dapat meminta
status
keseluruhan alat-alat
yang terjadi di dalam rumah.
·
Pengguna dapat mengubah
status
( menyalakan/
mematikan) lampu dengan cara manual melalui
komputer.
·
Pengguna dapat melihat
log
yang terjadi.
·
Pengguna dapat menghapus
log
yang ada.
·
Pengguna dapat membuat
setting
yang baru
·
Pengguna dapat mengubah
setting
1.2.3 Karakteristik Pengguna
Pengguna aplikasi ini adalah para pemilik rumah.
Karakteristik yang diperlukan yaitu cukup mempunyai pengalaman
dalam memakai komputer (fasilitas
drag & drop, click
) dan sedikit
6
1.2.4 Batasan – Batasan
Aplikasi ini memiliki batasan-batasan sebagai berikut:
·
Spesifikasi
hardware
minimum
adalah
processor
600MHz,
RAM
192 MB. Sedangkan spesifikasi
hardware
yang disarkan adalah
processor
1GHz,
RAM
256 Mb.
·
Operating System
menggunakan
Windows XP SP 2
·
Bahasa yang digunakan adalah
Visual C# 2.0
·
Menggunakan
ActiveXperts SMS and Pager Toolkit 3.2
·
Memakai
Handphone Sony Erricson T610
.
·
Jumlah
controller
yang digunakan adalah 24 buah dan
dengan
maksimum
jumlah lantai yang tersedia adalah 3
lantai.
·
Menggunakan lampu
led
sebagai
indicator
.
·
Menggunakan
Microcontroller Atmel 89S52
·
Data Disimpan dalam format XML.
·
Menggunakan Media Bluetooth sebagai komunikasi
antara Handphone dengan komputer desktop.
·
Aplikasi hanya dapat mengeluarkan
output
(pada
indikator lampu) untuk menyalakan/mematikan lampu
saja. Tidak memperhatikan segi inputan dari lampu.
1.2.5 Asumsi dan Ketergantungan
Diharapkan para pengguna sudah mempunyai windows XP
SP2 dan diharapkan sudah tersedia satu
Handphone
yang akan
dibuat sebagai penerima
message
. Untuk tipe dan merek
handphone
yang
dapat
digunakan,
dapat
dilihat
di
1.2.6 Penundaan Persyaratan
Diharapkan aplikasi ini dapat terus dikembangkan sesuai
dengan kemajuan teknologi yang ada. Misalnya saja untuk realisasi
nyata dapat dilakukan dengan menggunakan PLC / Bluetooth
86
Bab VI
Kesimpulan dan Saran
6.1 Keterkaitan antara Kesimpulan dengan Hasil Evaluasi
Aplikasi ini dapat berjalan dengan sangat baik. Ini terbukti dari test yang
sudah dilakukan. Fitur-fitur yang terdapat dalam aplikasi ini juga sudah berjalan
dengan sangat baik. Baik dari fitur yang dapat dilakukan secara langsung melalui
desktop maupun fitur yang dilakukan secara tidak langsung melalui SMS.
6.2 Keterkaitan antara Saran dengan Hasil Evaluasi
Aplikasi sifatnya adalah berkembang terus menerus. Saran yang diberikan
terhadap aplikasi ini tentunya untuk pengembangan di masa yang akan datang
adalah aplikasi ini dapat juga ditambahkan fitur video streaming, yaitu user tidak
hanya mengetahui status melalui SMS saja, tetapi user dapat melihat keadaan
real yang terjadi di dalam rumah melalui video yang dapat diakses melalui
internet (web based).
Aplikasi ini juga dapat dikembangkan menggunakan PDA yaitu user
secara langsung mengakses status controller yag berada di dalam rumah melalui
6.3 Rencana Perbaikan/Implementasi terhadap Saran yang
Diberikan
Untuk Aplikasi yang memakai fitur
video streaming dibutuhkan
pengetahuan khusus tentang pembuatan aplikasi video streaming, tentu dengan
memperhatikan perhitungan
bandwidth
yang diperlukan untuk merealisasikan
fitur tersebut. Untuk mempelajari
bandwith yang digunakan dapat dilihat pada
website IEEE (
www.IEEE.org). Dan diperlukan menyewa domain khusus untuk
membuat aplikasi tersebut.
Untuk aplikasi yang menggunakan PDA diperlukan pengukuran terhadap
jarak/range dimana aplikasi itu dapat aktif. Alat yang diperlukan adalah
access-point yang dipasang pada setiap lantai, sehingga memudahkan pengontrollan.
Selain itu juga harus diperhatikan keamanan pengaksesan aplikasi. Ini dapat kita
batasi dengan mengambil
MAC Address dari
PDA yang akan digunakan
R-1
Daftar Pustaka
1. Foxall, James. 2006. "Microsoft Visual C# 2005 in 24 Hours". USA: Sams
Publishing.
2. M.,Neil Bornstein. 2004. ".Net and XML". New York: O'Reilly &
Associates.Inc.
3. Tim Pelatihan Micro 2007. 2007. "Advance Tutorial MCS-51". Universitas
Kristen Maranatha.
4. "ActiveXperts SMS and Pager Toolkit - Supported GSM Modems and
GSM
Cellular
Phones".
Retrieved
August
5,2007
from:
http://www.activexperts.com