iii
KATA PENGANTAR
Assalamu’alaikum wr. wb, Puji syukur penulis panjatkan kepada Allah SWT yang telah melimpahkan rahmat hidayah dan karunia-Nya, shalawat serta salam semoga selalu tercurah kepada Rasulullah SAW, sehingga penulis dapat menyelesaikan skripsi yang berjudul ” Pembangunan Sistem Home Automation Menggunakan Arduino Berbasis Android”
Adapun tujuan dari penyusunan skripsi ini adalah untuk memenuhi salah satu syarat dalam menyelesaikan studi jenjang strata satu (S1) di Program Studi Teknik Informatika, Universitas Komputer Indonesia.
Penulis membutuhkan peran serta dari pihak lain untuk proses penyelesaian skripsi ini, karena keterbatasan ilmu dan pengetahuan. Oleh karena itu ijinkanlah penulis untuk menyampaikan ucapan terima kasih yang sebesar-besarnya kepada :
1. Allah SWT, yang telah memberikan rahmat, hidayah, dan karunia-Nya kepada penulis sehingga dapat menyelesaikan skripsi dengan baik.
2. Abi (Eman Sulaeman) dan Umi (Rohmat) terimakasih selalu memberikan dorongan, motivasi, doa yang tak terkira serta bantuan baik secara moril maupun materil.
3. Bapak Eko Budi Setiawan, S.Kom., M.T. selaku dosen pembimbing. Terima kasih karena telah banyak meluangkan waktu untuk memberikan bimbingan, saran dan nasehatnya selama penyusunan skripsi ini.
4. Ibu Nelly Indriani W, S.Si., M.T. selaku dosen wali kelas IF-15 Angkatan 2010.
5. Adiku tercinta Ni’mah Saniatu Rohman, Galih Triana Rohman, Anggi Robiatu Rohman dan Muhammad Dika Panca Rohman yang selalu memberikan doa dan senyuman harapan buat saya.
iv
walaupun demikian penulis menyadari bahwa skripsi ini jauh dari sempurna. Masukan atau saran yang ditujukan untuk penyempurnaan skripsi ini akan diterima oleh penulis dengan senang hati.
Akhir kata, penulis berharap semoga skripsi ini dapat bermanfaat bagi penulis pada khususnya dan pembaca pada umumnya.
Wassalamualaikum Wr. Wb.
Bandung, Febuari 2015
113
[1] Solution, Golden, " http://www.homeautomation.co.id//," 2012. [Online]. Available: http://www.homeautomation.co.id/. [Accessed 1 september 2014].
[2] Damayanti , christie, " http://teknologi.kompasiana.com /," 7 januari 2013. [Online].Available:http://teknologi.kompasiana.com/terapan/2013/01/07/kons ep-rumah-pintar-hasil-teknologi-canggih-edisi-arsitektural-517299.html. [Accessed 5 september 2014].
[3] Nariswari " http://www.tabloidpulsa.co.id/," 8 januari 2014 . [Online].Available: http://www.tabloidpulsa.co.id/news/12850-pengguna-android-akan-mencapai-1-milyar-di-2014. [Accessed 6 september 2014].
[4]Syahwil, muhammad, 2013. Panduan Mudah Simulasi & Praktek Mikrokontroler Arduino.Yogyakarta : Andi
[5] Pressman, Roger S., 2012. Rekayasa Perangkat Lunak Jilid 1 Edisi 7. Yogyakarta : Andi.
[6]Kadir , Abdul, 2013. Panduan praktis mempelajari aplikasi mikrokontroler dan pemograman menggunakan Arduino.Yogyakarta: Andi
[7Purba, Johannes, 2012. Membongkar teknologi pemograman Web Service.Bandung: Gava Media.
[8]Safaat H, Naruddin, 2014. Android pemograman Aplikasi mobile smartphone dan tablet PC berbasis Android Revisi kedua.Bandung:
v
ABSTRACT ... ii
KATA PENGANTAR ... iii
DAFTAR GAMBAR ... vii
DAFTAR TABEL ... x
DAFTAR SIMBOL ... xii
DAFTAR LAMPIRAN ... xv
BAB 1 PENDAHULUAN ... 1
1.1 Latar Belakang Masalah ... 1
1.2 Identifikasi Masalah ... 2
1.3 Maksud dan Tujuan ... 2
1.4 Batasan Masalah... 3
1.5 Metodologi Penelitian ... 4
1.5.1 Metode Pengumpulan Data ... 4
1.5.2 Metode Pembangunan Perangkat Lunak ... 5
1.6 Sistematika Penulisan ... 7
BAB 2 TINJAUAN PUSTAKA ... 9
2.1 Landasan Teori ... 9
2.1.1 Home Automation... 9
2.1.2 Mikrokontroler Arduino ... 9
2.1.3 Web Service ... 18
2.1.4 Android ... 20
2.1.5 Lighting control ... 23
vi
2.1.11 Rekayasa Perangkat Lunak ... 46
2.1.12 Perangkat Lunak Pendukung ... 47
BAB 3 ANALISIS DAN PERANCANGAN SISTEM ... 55
3.1 Analisis Sistem ... 55
3.1.1 Analisis Masalah ... 56
3.1.2 Analisis Arsitektur Perancangan sistem ... 56
3.1.3 Analisis Miniatur Rumah ... 57
3.1.4 Analisis Web Service ... 58
3.1.5 Analisis Kebutuhan Non Fungsional ... 59
3.1.6 Analisi Kebutuhan Pengguna (User) ... 64
3.1.7 Analisis Basis Data ... 65
3.1.8 Analisis Kebutuhan Fungsional ... 68
3.2 Perancangan Sistem ... 79
3.2.1 Perancangan Antarmuka ... 80
BAB 4 PERANCANGAN SISTEM DAN IMPLEMENTASI ... 87
4.1 Implementasi Sistem ... 87
4.1.1 Implementasi Perangkat Keras ... 87
4.1.2 Impelementasi Perangkat Lunak ... 88
4.1.3 Impementasi Basis Data... 88
4.2 Implementasi Aplikasi Android ... 90
4.2.1 Petunjuk pengoperisan aplikasi ... 90
4.2.2 Hasil Tampilan ... 90
4.3 Pengujian Sistem ... 100
4.3.1 Skenario Pengujian Blackbox ... 99
vii
5.2 Saran ... 111
SKRIPSI
Diajukan untuk Menempuh Ujian Akhir Sarjana
AWAL MAULANA ROHMAN
10110652
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS TEKNIK DAN ILMU KOMPUTER
NIM 10110652 Jenis Kelamin Laki-Laki
Tempat ,Tanggal Lahir Sukabumi, 09 Oktober 1990
Agama Islam
Status Mahasiswa
Alamat Kp.Caringin Irigasi, RT03/RW06, Desa Nyangkowek, Kecamatan Cicurug, Kabupaten Sukabumi
No.Telp 085722288727
E-mail awalamulanarohman@gmail.com
PENDIDIKAN FORMAL
1997-2003 SDN Nyangkowek2 2003-2006 MTS As – Syadzilliyah 2006-2009 SMA PLUS YASPIDA
2010 – Sekarang UNIVERSITAS KOMPUTER INDONESIA
PENGALAMAN ORGANISASI
2004-2005 Organisasi OSIS MTS As – Syadzilliyah 2007-2008 Organisasi OSIS SMA PLUS YASPIDA
121
KESIMPULAN DAN SARAN
Berdasarkan pembahasan analisis, perancangan, implementasi sampai pada tahapan pengujian, maka itu dapat ditarik kesimpulan serta saran untuk aplikasi home automation pada lighting control agar dapat mencapai pemanfaatan yang lebih baik lagi.
5.1Kesimpulan
Berdasarkan hasil yang didapat dari penelitian yang dilakukan dalam penyusunan tugas akhir yang mengacu pada tujuan penelitian, maka dapat disimpulkan.
1. Pemakaian lampu yang dapat dikendalikan sesuai dengan waktu yang inginkan
2. Pengguna dapat mengedalikan lampu dengan jarak jauh dengan terkoneksi internet
3. Pengguna mendapatkan monitoring penggunaan KWH yang telah terpakai dan dapat memprediksikan harga yang harus kelauarkan sesuai dengan KWH yang telah terpakai
5.2Saran
97
BAB 4 PERANCANGAN SISTEM DAN IMPLEMENTASI
4.1Implementasi Sistem
Pada bab ini akan dilakukan tahapan implementasi dan pengujian terhadap perangkat lunak Home automation terhadap lighting control yang berbasis android. Tahapan ini dilakukan setelah analisis perancangan selesai dilakukan dan selanjutnya akan diimplementasikan kedalam bahasa pemograman, setelah tahapan implementasi dilakukan maka selanjutnya akan dilakukan tahapan pengujian dan akan dilihat kekurangan-kekurangan untuk pengembangan sistem selanjutnya.
Setelah pembangunan aplikasi dianalisis dan dirancang secara rinci, tahap selanjutnya adalah implementasi. tujuan dari tahapan implementasi ini adalah agar dapat memberikan masukan terhadap para pengembang sistem untuk pengembangan lebih baik lagi.
4.1.1Implementasi Perangkat Keras
Perangkat keras yang digunakan untuk mengimplentasikan sistem dapat dilihat pada tabel di bawah ini.
Tabel 4. 1 Spesifikasi Perangkat Keras
No Perangkta Keras Spesifikasi
4.1.2 Impelementasi Perangkat Lunak
Perangkat lunak yang digunakan untuk membangun dan mengimplemntasikan sistem dapat dilihat pada tabel berikut.
Tabel 4. 2 Spesifikasi Perangkat Lunak
No Perangkat Lunak Spesifikasi
1 Sistem Operasi Windows 7
2 Web service Notepad ++
3 Arduino Arduino
4 Database Php MyAdmin
5 Android Eclipse Juno
4.1.3Impementasi Basis Data
Pembangunan database dilakukan dengan menggunakan aplikasi PHP MyAdmin, implemntasi database adalah sebagai berikut:
Tabel 4. 3 Tabel User
CREATE TABLE `homealic1_automation`,`user` (
`id` INT (11) NOT NULL AUTO ICREMENT PRIMARY KEY `username` VARCHAR (100) NOT NULL,
`password` VARCHAR (8) NOT NULL, `token` INT (255) NOT NULL)
ENGINE=InnoDB
Tabel 4. 4 Tabel Perangkat
CREATE TABLE `homealic1_automation`,`Perangkat` (
`Perangkat_id` INT (1) NOT NULL,
`Nama_perangkat` VARCHAR (100) NOT NULL, `Jam_nyala1` DATETIME NOT NULL, `status` INT (11) NOT NULL)
ENGINE=InnoDB
Tabel 4. 5 Tabel PerangkatAll
CREATE TABLE `homealic1_automation`,`PerangkatAll` ( `id` INT (11) NOT NULL AUTO ICREMENT PRIMARY KEY `user_id` INT (11) NOT NULL,
`Jam_nyala` DATETIME NOT NULL, `Jam_mati` DATETIME NOT NULL, `status` INT (11) NOT NULL)
ENGINE=InnoDB
Tabel 4. 6 Tabel Ampere_meter
CREATE TABLE `homealic1_automation`,`Ampere_meter` ( `id` INT (11) NOT NULL AUTO ICREMENT PRIMARY KEY `user_id` INT (11) NOT NULL,
`ampere` DOUBLE (15,2) NOT NULL, `waktu` DATETIME NOT NULL) ENGINE=InnoDB
Tabel 4. 7 Tabel Log
`id` INT (11) NOT NULL AUTO ICREMENT PRIMARY KEY `waktu` DATETIME)
ENGINE=InnoDB
4.2Implementasi Aplikasi Android
4.2.1Petunjuk pengoperisan aplikasi
Pada saat akan memasang aplikasi di perangkat android terlebih dahulu melakukan penginstalasian master aplikasi home automation ligthting contol (homealic). Setelah terinstal diperangkat android maka perangkat
harus terkoneksi internet untuk menjalankan aplikasi homealic ini, kemudian setelah terkoneksi maka aplikasi siap untuk digunakan.
4.2.2Hasil Tampilan
4.2.2.1 Halaman Login
user diminta untuk mengisi username dan password di halaman login untuk membuka dan menggunakan aplikasi homealic ini.
4.2.2.2Halaman utama
Setelah berhasil masuk dengan menggunakan username dan password yang valid, user dapat melihat halaman utama pada aplikasi ini, di halaman utama user dapat mengoperasikan penggunaan lampu di setiap ruangan, menghitung
kwh, dan mengontrol semua ruangan dengan fitur ON/OFF all, tampilan halaman utama bisa dilihat sebagai berikut.
Gambar 4. 2 Halaman Utama
4.2.2.3Halaman perruangan
4.2.2.3.1Ruang Tamu
Ruang tamu adalah bagian dari beberapa ruangan yang dapat dikendalaikan user untuk mengontrol dengan fitur tombol switch on-off dan seting waktu, setingan waktu yang terbagi menjadi tiga bagian, yaitu untuk memberikan penjadwalan penggendalian lampu sesuai waktu yang telah ditentukan, tampilan halaman ruang tamu adalah sebagai berikut.
Gambar 4. 3 Halaman Ruang Tamu
4.2.2.3.2Ruang Keluarga
Gambar 4. 4 Halaman Ruang Keluarga
4.2.2.3.3Ruang Dapur
Gambar 4. 5 Halaman Ruang Dapur
4.2.2.3.4Ruang Makan
Gambar 4. 6 Halaman Ruang Makan
4.2.2.3.5Ruang Belakang
Ruang belakang adalah bagian dari beberapa ruangan yang dapat dikendalaikan user untuk mengontrol dengan fitur tombol switch on-off dan seting waktu, setingan waktu yang terbagi menjadi tiga bagian, yaitu untuk memberikan penjadwalan penggendalian lampu sesuai waktu yang telah ditentukan, tampilan halaman ruang belakang adalah sebagai berikut.
4.2.2.3.6Kamar Mandi
Kamar Mandi adalah bagian dari beberapa ruangan yang dapat dikendalaikan user untuk mengontrol dengan fitur tombol switch on-off dan seting waktu, setingan waktu yang terbagi menjadi tiga bagian, yaitu untuk memberikan penjadwalan penggendalian lampu sesuai waktu yang telah ditentukan, tampilan halaman kamar mandi adalah sebagai berikut.
Gambar 4. 8 Halaman Kamar Mandi
4.2.2.3.7Kamar Tidur
memberikan penjadwalan penggendalian lampu sesuai waktu yang telah ditentukan, tampilan halaman kamar tidur adalah sebagai berikut.
Gambar 4. 9 Halaman Kamar Tidur
4.2.2.3.8Taman
Gambar 4. 10 Halaman Taman
4.2.2.4Halaman penghitungan KWH
Gambar 4. 11 Halaman Perhitungan KWH
4.2.2.5Halaman ON/OFF
Gambar 4. 12 Halaman ON/OFF
4.3Pengujian Sistem
Pengujian sistem merupakan hal terpenting yang bertujuan untuk menemukan kesalahan – kesalahan atau kekurangan – kekurangan pada aplikasi yang akan diuji. Pengujian bermaksud untuk mengetahui aplikasi yang dibuat telah memenuhi kinerja sesuai dengan tujuan perancangan.
Black box adalah metode pengujian yang akan dipergunakan untuk
menguji sistem yang baru, pengujian black box terfokus pada pengujian persyaran fungsional pada aplikasi android yang telah dibangun.
Pengujian yang akan dilakukan adalah dengan cara menguji secara black box dan beta.
4.3.1Skenario Pengujian Blackbox
Tabel 4. 8 Skenario Pengujian alpha
No Kelas uji Butir uji Jenis pengujian
1 Menyalakan dan mematikan lampu
2 Sambungan Koneksi internet Black box
3 KWH
4.3.2Kasus dan Hasil Pengujian
Berdasarkan rencana pengujian yang disusun, maka dilakukan pengujian sebagai yang dicatumkan dibawah ini.
1. Pengujian Mematikan dan Menyalakan Lampu
Pengujian data benar pada pengujian mematikan dan menyalakan lampu dapat dilihat pada tabel berikut.
Tabel 4. 9 Pengujian Data benar Mematikan dan menyalakan lampu
lampu
Pengujian data salah pada pengujian mematikan dan menyalakan lampu dapat dilihat pada tabel berikut.
Tabel 4. 10 Pengujian Data Salah Mematikan dan menyalakan lampu
Kasus uji Skenario uji Hasil yang diharapakan lampu tidak tersimpan di database lampu tidak tersimpan di database
2. Pengujian Sambungan
Pengujian Data benar sambungan atau koneksi internet dapat dilihat ditabel berikut ini.
Tabel 4. 11 Pengujian data benar Sambungan
Kasus uji Skenario Uji Hal yang diharapkan Hasil Pengujian Sambungan Menghubungkan ke
internet (koneksi
Tabel 4. 12 Pengujian Data salah Sambungan
Kasus uji Skenario Uji Hal yang diharapkan Hasil Pengujian Sambungan Menghubungkan ke
Tabel 4. 13 Pengujian data benar KWH
Kasus Uji Skenario Uji Hal yang diharapkan Hasil Pengujian
KWH KWH yang telah terpakai
[ √] Berhasil digunakan pada tanggal awal dan tanggal akhir
[ √] Berhasil [ ] Tidak Berhasil
Pengujian Data salah KWH atau perhitungan dan sorting penggunaan KWH yang telah terpakai dapat dilihat ditabel berikut ini.
Tabel 4. 14 Pengujian data salah KWH
Kasus Uji Skenario Uji Hal yang diharapkan Hasil Pengujian
KWH
Perhitungan KWH yang terpakai
Tidak dapat menampilkan prediksi harga penggunaan KWH yang telah terpakai
[ √] Berhasil
Tidak dapat menampilkan penggunaan KWH yang digunakan pada tanggal awal dan tanggal akhir
4.3.3Kesimpulan Pengujian Blackbox
Berdasarkan hasil pengujian blackbox yang telah dilakukan dapat ditarik kesimpulan bahwa pada proses masih memungkinkan terjadi kesalahan, namun secara fungsionalitas sistem sudah dapat menghasilkan output yang diharapkan.
4.3.4Pengujian Beta
Pengujian beta dilakukan dengan tujuan untuk mengetahui sejauh mana kualitas dari aplikasi yang dibangun, apakah sudah sesuai dengan harapan atau belum, pengujian beta dilakukan dengan mengisi kuesioner kepada pengguna .
4.3.4.1Kuesioner Pengujian Beta
Kuesioner ditujukan kepada pengguna dan tester aplikasi pada miniatur rumah, kuesioner disebarkan kepada 10 pengguna, adapun pertanyaan yang diajukan seperti berikut:
1. Apakah aplikasi ini membantu anda dalam mengedalikan lampu dari jarak jauh ?
[ ] Sangat setuju [ ] Cukup Setuju [ ] Tidak setuju [ ] Setuju [ ] Kurang setuju
2. Apakah aplikasi ini membantu anda mengatur waktu pemakaian lampu dengan tepat waktu. ?
[ ] Sangat setuju [ ] Cukup Setuju [ ] Tidak setuju [ ] Setuju [ ] Kurang setuju
3. Apakah aplikasi ini membantu anda memonitoring lampu dari jarak jauh ?
[ ] Sangat setuju [ ] Cukup Setuju [ ] Tidak setuju [ ] Setuju [ ] Kurang setuju
4. Apakah fitur-fitur didalam aplikasi ini sudah membantu anda dalam mengontrol lampu dari jarak jauh ?
[ ] Sangat setuju [ ] Cukup Setuju [ ] Tidak setuju [ ] Setuju [ ] Kurang setuju
5. Apakah user interface aplikasi ini user friendly ?
4.3.4.2 Cara pengujian
Pengujian dilakukan dengan melihat hasil kuesioner yang telah diisi, untuk perhitungannya dilakukan dengan menggunakan rumus dibawah ini:
Y=P/Q*100% Keterangan :
Y : Nilai Presentase P : Total Skor Q : Skor Tertinggi
Dalam setiap jawaban akan diberikan skor sebesar : SS(Sangat Setuju) = 5
S(Setuju) = 4
CS(Cukup Setuju) = 3 KS(Kurang Setuju) = 2 TS(Tidak Setuju) = 1
Untuk mengetahui interpretasi skor hasil perhitungan dapat dilihat pada tabel berikut.
Tabel 4. 15 Interpretasi skor jasil perhitungan
Nilai Ketrangan
0%-20% Tidak Setuju
21%-40% Kurang Setuju
41%-60% Cukup Setuju
61%-80% Setuju
81%-100% Sangat Setuju
1. Apakah aplikasi ini membantu anda dalam mengedalikan lampu dari jarak jauh ?
Tabel 4. 16 Hasil Pengujian Kuesioner Soal 1
Jawaban Skor Frekeunsi Jawaban
Berdasarkan perhitungan, total skor dari responden adalah sebanyak 50 skor, dan hasil dari persentase responden adalah 100% maka dapat disimpulkan bahwa aplikasi ini sangat membantu dalam mengendalikan lampu dari jarak jauh.
2. Apakah aplikasi ini membantu anda mengatur waktu pemakaian lampu dengan tepat waktu. ?
Tabel 4. 17 Hasil Pengujian Kuesioner Soal 2
Jawaban Skor Frekeunsi Jawaban
bahwa aplikasi ini sangat membantu anda mengatur waktu pemakaian lampu dengan tepat waktu.
3. Apakah aplikasi ini membantu anda memonitoring lampu dari jarak jauh ?
Tabel 4. 18 Hasil Pengujian Kuesioner Soal 3
Jawaban Skor Frekeunsi Jawaban
Berdasarkan perhitungan, total skor dari responden adalah sebanyak 50 skor, dan hasil dari persentase responden adalah 88% maka dapat disimpulkan bahwa aplikasi ini sangat membantu dalam memonitoring lampu dari jarak jauh.
4. Apakah fitur-fitur didalam aplikasi ini sudah membantu anda dalam mengontrol lampu dari jarak jauh ?
Tabel 4. 19 Hasil Pengujian Kuesioner Soal 4
Berdasarkan perhitungan, total skor dari responden adalah sebanyak 50 skor, dan hasil dari persentase responden adalah 82 % maka dapat disimpulkan bahwa fitur-fitur aplikasi ini sangat membantu dalam mengontrol lampu dari jarak jauh.
5. Apakah user interface aplikasi ini user friendly ?
Tabel 4. 20 Hasil Pengujian Kuesioner Soal 5
Jawaban Skor Frekeunsi Jawaban
Berdasarkan perhitungan, total skor dari responden adalah sebanyak 50 skor, dan hasil dari persentase responden adalah 74% maka dapat disimpulkan bahwa Interfce aplikasi ini sudah user friendly.
4.3.4.3Kesimpulan Hasil Pengujian Beta
55
BAB 3 ANALISIS DAN PERANCANGAN SISTEM
3.1Analisis Sistem
Pembangunan sistem Home Automation pada lighting control adalah sistem yang digunakan untuk mengendalikan listrik pada lampu rumah, sistem ini akan menggabungkan rangkain listrik pada lampu rumah menjadi satu kesatuan dalam fungsi pengontrolannya, sistem ini digabungkan dengan sebuah mikrokontroler arduino yang di program dengan bahasa pemograman C. Dengan pembangunan sistem ini pengguna tidak harus mengontrol lampu dengan datang ke tempat pusat pengontrolan lampu, pengguna dapat mengontrol, memonitor serta dapat mengatur waktu untuk menyalakan dan mematikan lampu sesuai dengan kebutuhan, sistem ini di kendalikan dengan sebuah aplikasi yang terkoneksi internet pada perangkat android untuk setiap pengaturan serta pengontrolan lampu, sehingga sistem dapat dikendalikan dengan jarak jauh.
Dalam pembangunan sistem ini ada beberapa ketentuan yang harus dipenuhi, baik secara penggunaan maupun secara teknis, penggunaan aplikasi lighting control ini tidak semua orang yang memiliki aplikasi ini dapat
menggunakannya, aplikasi ini akan memberikan user, id untuk menggunakannya, untuk menjaga dari penyalahgunaan aplikasi dalam penggunaannya. Dalam pelaksanaannya sistem ini akan melakukan perintah sesuai dengan perintah penggunaanya.
Berikut analisis sistem yang ada pada sistem Home Automation lighting control:
1. Menyalakan dan mematikan lampu dengan button ON-OFF pada perangkat android.
2. Mengatur waktu untuk menyalakan dan mematikan lampu, sesuai dengan kebutuhan.
4. Aplikasi android akan menampilkan status lampu ketika dinyalakan dan dimatikan sebagai monitoring pada penggunaannya.
5. Aplikasi Home Automation lighting control ini dapat menghitung daya yang telah digunakan dalam penggunaan lampu, sebagai bahan evaluasi.
3.1.1Analisis Masalah
Dari fenomena yang terjadi terdapat beberapa masalah yang sering terjadi pada penggunaan energi listrik lampu di rumah yaitu:
1. Tidak tepatnya waktu pemakaian lampu dalam aktivitas sehari-hari.
2. Terbatasnya jarak untuk mengendalikan pemakaian lampu dari jarak tertentu.
3. Kurangnya monitoring terhadap pemakaian lampu yang tidak perlukan.
Oleh karena itu dibutuhkan suatu solusi untuk menangani permasalahan yang sedang terjadi yaitu dibutuhkan suatu sistem Home Automation pada lighting control yang bertujuan untuk:
1. Tepatnya waktu pemakaian lampu dengan waktu yang telah ditentukan dengan system automation
2. Bebasnya pengguna dalam mengendalikan pemakaian lampu dari jarak yang diingikan.
3. Memudahkan pengguna dalam memonitor pemakaian lampu rumah.
3.1.2Analisis Arsitektur Perancangan sistem
Analisis Arsitektur Sistem merupakan sistem yang akan dibangun, aplikasi Home Automation lighing control yang berbasis internet ini akan berkomunikasi
Gambar 3. 1 Arsitektur perancangan sistem
Gambar di atas menggambarkan sistem yang akan dibangun, dimana perangkat android akan mengakses token yang ada didatabase melalui koneksi web service, kemudian web service akan mengretrun kepada perangkat android berupa bahasa JSON yang akan di terima oleh perangkat android, begitupun dengan mikrokontroler arduino yang akan mengget token yang berada di web service dan web service akan meretrun kembali token dengan bahasa JSON yang akan diparsing oleh mikrokentroler.
3.1.3Analisis Miniatur Rumah
Gambar 3. 2 Sketsa Miniatur Rumah
3.1.4Analisis Web Service
Pada pembangunan web service ini sebelumnya telah dijelaskan pada landasan teori, yang mana web service terbagi pada 3 komponen yaitu
1. Simple Object Access Protocol (SOAP), yaitu protokol yang bertanggungjawab dalam pertukuran informasi dalam lingkungan jaringan terdistribusi.
2. Web service definition Language(WDSL), dokumen standart yang dituliskan pada format XML, dan mendifinikasan kehadiran web service dalam suatu jaringan.
3. Universal description, Discovery and Inttegration(UDDI), yaitu suatu lokasi direktori yang beriskan service (layanan) dan bersifat bebas platform (platform independent), dituliskan berbasis XML dan dapat
diakses oleh entitas yang berada di dalam dan
Webservice yang nantinya akan diget oleh perangkat arduino dan perangkat android dan kemudian meretrun kembali pada perangkat dengan format JSON.
3.1.5Analisis Kebutuhan Non Fungsional
Analisis kebutuhan non fungsional merupakan analisis yang dibutuhkan untuk menentukan spesifikasi kebutuhan sistem. Spesifikasi ini juga meliputi elemen atau komponen-komponen apa saja yang dibutuhkan untuk sistem yang akan dibangun sampai dengan sistem tersebut diimplementasikan. Analisis kebutuhan ini juga menentukan spesifikasi masukan yang diperlukan sistem, keluaran yang akan dihasilkan sistem dan proses yang dibutuhkan untuk mengolah masukan sehingga menghasilkan suatu keluaran yang diinginkan. Kebutuhan non fungsional yang dibutuhkan untuk membangun ulang sistem ini terdiri dari dua hal, yaitu : kebutuhan perangkat keras dan kebutuhan perangkat lunak.
3.1.5.1Analisis Perangkat Keras
Analisis kebutuhan perangkat keras yang digunakan untuk mengimplementasikan aplikasi ini dapat di lihat pada tabel 3.1.
Tabel 3. 1 Spesifikasi Kebutuhan Perangkat Keras
NO Perangkat keras Spesifikasi
1 Sistem Operasi Ginggerbird
2 RAM 512MB
3 Memory Internal 1GB
4 Processor 800Mhz
Sedangkan spesifikasi perangkat keras yang direcomendasikan untuk penggunaan aplikasi ini, yaitu untuk pemilik rumah dapat dilihat pada tabel 3.2.
Tabel 3. 2 Spesifikasi Perangkat Keras Pengguna
NO Perangkat keras Spesifikasi
2 RAM 1GB
3 Memory Internal 2GB
4 Processor 1GHZ
Setelah evaluasi mengenai spesifikasi perangkat keras, untuk pengguna aplikasi Home Automation, yaitu dengan membandingkan kebutuhan spesfikasi minimal untuk pembuatan sistem, dan dapat disimpulkan spesifikasi perangkat keras sistem untuk pengguna sudah diatas spesifikasi minimal sistem dan memungkin dapat berjalan diperangkat keras pengguna.
3.1.5.2 Mikrokontroler
Mikrokontroler yang digunakan dalam penelitian ini adalah menggunakan mikrokontroler Arduino uno r3, Ethernet shield, relay, sensor arus ACS712.
3.1.5.2.1Arduino UNO R3
Arduino uno adalah papan mikrokontroler berbasis ATMEGA328 yang memiliki 14 pin digital input/output, 6 diantarnya digunakan sebagai output Pulse Width Modulation (PWM), 6 input analog, clock speed 16MHz, koneksi USB,
Jack listrik, header ICSP, dan tombol reset. Board ini menggunakan daya yang terhubung ke computer dengan kabel USB atau daya external dengan adapator AC-DC atau baterai.
Arduino Uno adalah pilihan yang baik untuk pertama kali atau pemula yang ingin mengenal Arduino. Di samping sifat nya yang reliabel juga harga yang terjangkau
Tabel 3. 3 Spesifikasi Board Arduino Uno
Mikrokontroler ATMEGA328 Tegangan Operasi 5V
Tegangan Input 7-12V Batas tegangan Input 6-20V
Arus DC per I/O Pin 40 mA Arus DC untuk pin
3.3V
50 mA
Flash memory 32KB(ATmega328), 0,5 KB bootloder
SRAM 2KB (ATmega328)
EEPROM 1KB(ATmega328)
Clock 16MHz
Arduino dapat di aktifkan melalui koneksi USB atau dengan catu daya Eksternal. Sumber daya dipilih secara otomatis. Sumber daya Eksternal
(Non-USB) dapat berasal dari adapter AC ke DC atau baterai. Adaptor ini dapat dihubungkan dengan menancapkan Power Jack, dapat juga dihubungkan pada Power pin (Gnd dan Vin).
Board Arduino Uno dapat beroperasi pada pasokan Eksternal dari 6 sampai 20 volt. Jika disuplai kurang 7V. Meskipun pin 5V dapat di suplai kurang dari 5V, board mungkin tidak stabil. Jika menggunakan teganggan lebih dari 12V , regular tegangan bisa panas dan merusak board. Kisaran yang di sarankan adalah 7 sampai 12 Volt.
Gambar 3. 3 Arduino UNO R3
3.1.5.2.2Ethernet Shield
Gambar 3. 4 Ethernet Shield
3.1.5.2.3Relay
Prinsip Kerja Relay - Relay adalah Saklar (Switch) yang dioperasikan secara listrik dan merupakan komponen Electromechanical (Elektromekanikal) yang terdiri dari 2 bagian utama yakni Elektromagnet (Coil) dan Mekanikal (seperangkat Kontak Saklar/Switch). Relay menggunakan Prinsip Elektromagnetik untuk menggerakkan Kontak Saklar sehingga dengan arus listrik yang kecil (low power) dapat menghantarkan listrik yang bertegangan lebih tinggi. Sebagai contoh, dengan Relay yang menggunakan Elektromagnet 5V dan 50 mA mampu menggerakan Armature Relay (yang berfungsi sebagai saklarnya) untuk menghantarkan listrik 220V.
Gambar 3. 5 Relay 8 channel
3.1.5.2.4ACS712
Pengukuran arus biasanya membutuhkan sebuah resistor shunt yaitu resistor yang dihubungkan secara seri pada beban dan mengubah aliran arus menjadi tegangan. Tegangan tersebut biasanya diumpankan ke current transformer terlebih dahulu sebelum masuk ke rangkaian pengkondisi signal.
Teknologi Hall effect yang diterapkan oleh Allegro menggantikan fungsi resistor shunt dan current transformer menjadi sebuah sensor dengan ukuran yang relatif jauh lebih kecil. Aliran arus listrik yang mengakibatkan medan magnet yang menginduksi bagian dynamic offset cancellation dari ACS712 ELC-30A. bagian ini akan dikuatkan oleh amplifier dan melalui filter sebelum dikeluarkan melalui kaki 6 dan 7, modul tersebut membantu penggunaan untuk mempermudah instalasi arus ini ke dalam sistem.
Gambar 3. 6 ACS712
3.1.5.3Analisis Kerja Sistem Kerja Arduino
Arduino berjalan dengan program yang ditanam didalam chip mikrokontroler, dalam penelitian ini arduino terkoneksi pada internet yang dihubungkan melalui internet shield dan terkoneksi pada server yang didalam nya terdapat web sercvice
Gambar 3. 7 Alur Kerja Arduino
3.1.6Analisi Kebutuhan Pengguna (User)
Analisis pengguna adalah merupakan ketentuan pengguna yang dapat mengoprasionalkan atau menjalankan aplikasi home automation ini pada ligthing control, adapun ketentuan pengguna adalah sebagai berikut:
1. User dapat mengoprasionalkan perangkat android.
2. Perangkat android yang digunakan user harus terkoneksi internet. 3. User harus memiliki aplikasi homealic agar dapat mengendalikan
lampu.
Dengan karakteristik user diatas dapat disimpulkan bahwa user yang dapat menggunakan aplikasi ini minimal harus memahami perangkat android atau dapat menjalankan aplikasi android.
3.1.7Analisis Basis Data
Basis Data terbagi menjadi dua yaitu skema relasi dan struktur tabel. Berikut
ini adalah skema relasi dan struktur tabel yang dibangun.
3.1.7.1ERD
pemodelan awal basis data yang banyak digunakan adalah menggunakan Entity Relationship Diagram (ERD), adapun ERD pada pembagunan sistem basis
data ini adalah bisa dilihat pada gambar dibawah ini.
Gambar 3. 8 ERD
3.1.7.2Skema Relasi
Gambar 3. 9 Skema Relasi
3.1.7.3Struktur Tabel
Struktur tabel menggambarkan detail tabel yang berisi field, tipe data, panjang data, dan keterangan lainnya. Berikut ini deskripsi dari masing-masing tabel tersebut. Berikut ini adalah struktur tabel dari tabel-tabel yang ada pada database :
1. Tabel User
Tabel 3. 4 Tabel User
No Nama Field Tipe Data Ukuran Key
1 id Int 11 Primarykey
2 username Varchar 100
3 password Varchar 8
2. Tabel Perangkat
Tabel 3. 5 Tabel Perangkat
No Nama Field Tipe Data Ukuran Key
1 Id Int 11 Primarykey
2 User_id Int 11
3 Perangkat_id Int 1
4 Nama_perangkat Varchar 100
5 Jam_nyala1 Date
Tabel 3. 6 Tabel PerangkatAll
No Nama Field Tipe Data Ukuran Key
Tabel 3. 7 Tabel Ampere meter
3.1.7.4Analisis Kebutuhan Perangkat Lunak
Perangkat lunak yang digunakan dalam pembangunan sistem ini adalah sebagai media untuk menghubungkan penggunaan perintah dengan perangkat keras yang berfungsi dalam sebuah sistem adapun perangkat lunak yang digunakan dapat di lihat pada tabel 3.3.
Tabel 3. 9 Spesifikasi Kebutuhan Perangkat Lunak
No Perangkat lunak Kegunaan
1 Eclipse Pembangunan Aplikasi android
2 Mysql Database
3 Arduino IDE Pemograman mikrokontroler Arduino
3.1.8Analisis Kebutuhan Fungsional
Analisis kebutuhan fungsional menggambarkan proses kegiatan yang akan diterapkan dalam sistem dan menjelaskan kebutuhan yang diperlukan agar sistem dapat belajar dengan baik serta sesuai dengan kebutuhan sistem.
Analisis yang dilakukan dimodelkan dengan menggunakan UML (Unified Modeling Language). Tahapan pemodelan dalam analisis tersebut antara lain mengidentifikasi aktor, pembuatan Use Case Diagram, Use Case Scenario, Activity Diagram, Sequence Diagram, Class Diagram .
3.1.8.1Use Case Diagram
Use case diagram adalah diagram yang menunjukkan fungsionalitas suatu
Gambar 3. 10 Use Case Diagram
3.1.8.2Use Case Scenario
Use case scenario bertujuan untuk mendeskripsikan urutan
langkah-langkah dalam proses bisnis baik yang dilakukan aktor terhadap sistem maupun yang dilakukan oleh sistem terhadap aktor. Berdasarkan Use Case Diagram pada Gambar maka use case scenario dijelaskan sebagai berikut :
1) Use case scenario login
Interaksi antara aktor pengguna dengan use case di jelaskan dalam
Tabel 3. 10 Use Case Scenario Login
Scenario Nama Use Case : Login
Nama Aktor : User
Deskripsi : Menampilkan halaman Login
Kondisi Awal : User sudah membuka aplikasi Home Automation
Aksi Aktor Respon Sistem
Scenario Normal 1. User membuka aplikasi Home
Automation
6. Sistem akan masuk ke halaman daftar ruangan
7. Tidak valid 8. Pesan eror
Kondisi akhir Masuk ke halaman utama aplikasi
2) Use case scenario menyalakan lampu
Interaksi antara aktor pengguna dengan use case di jelaskan dalam
use case skenario menyalakan lampu pada tabel 3.10.
Tabel 3. 11 Use Case Scenario menyalakan lampu
Scenario Nama Use Case : Menyalakan lampu Nama Aktor : User
Deskripsi : Sistem akan menyalakan lampu yang telah dipilih Kondisi Awal : User sudah memilih lampu ruangan yang telah dipilih
Aksi Aktor Respon Sistem
Scenario Normal 1. User memilih ruangan
2. Sistem akan menampilkan detail ruangan
3. Sistem menampilkan keadaan OFF
4. Menekan button ON 5. Menampilkan pesan sukses
3) Use case scenario mematikan lampu
Interaksi antara aktor pengguna dengan use case di jelaskan dalam
use case skenario mematikan lampu pada tabel 3.11.
Tabel 3. 12 Use Case Scenario mematikan lampu
Scenario Nama Use Case : Mematikan lampu Nama Aktor : User
Deskripsi : Sistem akan mematikan lampu yang telah dipilih Kondisi Awal : User sudah memilih lampu ruangan yang telah dipilih
Aksi Aktor Respon Sistem
Scenario Normal 1. User memilih ruangan
2. Sistem akan menampilkan detail ruangan
3. Sistem menampilkan keadaan ON
4. Menekan button OFF 5. Menampilkan pesan sukses
Kondisi akhir Status lampu mati
4) Use case scenario pengaturan waktu
Interaksi antara aktor pengguna dengan use case di jelaskan dalam
use case skenario pengaturan waktu pada tabel 3.12.
Tabel 3. 13 Use Case Scenario pengaturan waktu
Scenario Nama Use Case : Mengatur waktu Nama Aktor : User
Deskripsi : Sistem akan mengatur waktu menyalakan dan mematikan lampu sesuai waktu yang diingkan Kondisi Awal : User sudah memilih lampu ruangan yang telah dipilih
Aksi Aktor Respon Sistem
Scenario Normal
submit
Kondisi akhir Lampu akan menyala dan mati sesuai waktu yang ditentukan.
5) Use case scenario status lampu
Interaksi antara aktor pengguna dengan use case di jelaskan dalam
use case skenario status lampu pada tabel 3.13.
Tabel 3. 14 Use Case Scenario Status lampu
6) Use Case Scenario Filter KWH
Interaksi antara aktor pengguna dengan use case di jelaskan dalam
use case skenario status lampu pada tabel 3.13.
Tabel 3. 15 Use Case Scenario Status lampu
Scenario
Aksi Aktor Respon Sistem
Scenario Normal
1. user memilih menu KWH 2. Sistem akan menampilkan KWH yang telah digunakan Scenario
Nama Use Case : Status lampu Nama Aktor : User
Deskripsi : Sistem akan menampilkan lampu yang menyala dan tidak menyala
Kondisi Awal : User sudah memilih lampu ruangan yang telah dipilih
Aksi Aktor Respon Sistem
Scenario Normal
1. Memilih ruangan 2. Sistem menampilkan detail ruangan
3. Mengkontrol lampu 4. Menekan tombol ON/OFF
5. Mengseting waktu ON/OFF 6. Sistem menampilkan Pesan sukses
3. User menginput harga kwh 4. Sistem menampilkan pesan prediksi harga yang harus dibayar Kondisi akhir Pesan prediksi harga KWH yang akan
dibayar
3.1.8.3 Activity Diagram
Activity diagram memodelkan aliran kerja atau workflow dari urutan aktifitas dalam suatu proses yang mengacu pada Use case diagram yang ada.
1) Activity diagram Login
Activity diagram login dapat dilihat dari Gambar 3.9 .
2) Activity diagram menyalakan lampu
Activity diagram menyalakan lampu dapat dilihat dari Gambar 3.10.
Gambar 3. 12 activity diagram menyalakan lampu
3) Activity diagram mematikan lampu
Activity diagram mematikan lampu dapat dilihat dari Gambar 3.11.
4) Activity diagram mengatur waktu
Activity diagram mengatur waktu dapat dilihat dari Gambar 3.12
Gambar 3. 14 Activity diagram mengatur waktu
5) Activity Diagram status lampu
Activity diagram status lampu dapat dilihat dari Gambar 3.13.
6) Activity diagram KWH
Activity diagram status lampu dapat dilihat dari Gambar 3.14.
Gambar 3. 16 Activity diagram KWH
3.1.8.4Class Diagram
Gambar 3. 17 Class Diagram
Deskripsi dari class diagram di atas dapat dilihat ditabel 3.14 deskripsi class diagram sebagai berikut.
Tabel 3. 16 Deskripsi Class Diagram
No Kelas Jenis Kelas Deskripsi
1 Login Control Kelas Login merupakan kelas yang berfungsi
untuk mengambil username dan password yang
diinputkan pada halaman login dengan data yang ada pada database.
2 Read Perangkat view Kelas Read perangkat akan menampilkan
perangkat yang berada di database
3 Read Ampere view Kelas Rad ampere adalah kelas yang akan
memanggil Ampere yang telah digunakan,yang
berda di database
4 Detail Perangkat Control Kelas yang akan menampilkan fungsi utama dari konrol lampu, dimana didalam nya dapat
menseting waktu, mematikan dan menyalakan
lampu.
5 Read tool view Kelas yang akan menampilkan fungsi utam dari
3.1.8.5Sequence Diagram
Sequence Diagram digunakan untuk menggambarkan perilaku pada
sebuah skenario. Diagram ini menunjukan sejumlah contoh objek dan pesan yang diletakan diantara objek-objek ini didalam Use case. Oleh karena itu, untuk menggambarkan sequence diagram maka harus deketahui objek-objek yang terlibat dalam sebuah Use case beserta metode-metode yang dimiliki oleh kelas yang diinstansiasi menjadi objek itu.
1) Sequence Diagram Login
Sequence diagram login dapat dilihat dari Gambar 3.16.
Gambar 3. 18 Sequence diagram Login
2) Sequence Diagram Menyalakan lampu
Sequence diagram Menyalakan lampu dapat dilihat dari Gambar 3.17.
3) Sequence Diagram Mematikan Lampu
Sequence diagram Mematikan Lampu dapat dilihat dari Gambar 3.18.
Gambar 3. 20 Sequence diagram Mematikan lampu
4) Sequence Diagram Mengatur Waktu
Sequence diagram Mengatur waktu dapat dilihat dari Gambar 3.19.
5. Sequence Diagram Hitung KWH
Sequence diagram hitung KWH dapat dilihat dari Gambar 3.20.
Gambar 3. 22 sequence Diagram hitung KWH
3.2Perancangan Sistem
Perancangan merupakan penggambaran, perencanaan, dan pembuatan sketsa atau pengaturan dari beberapa elemen yang terpisah ke dalam suatu kesatuan yang utuh.
3.2.1Perancangan Antarmuka
Antarmuka (interface) merupakan bentuk tampilan dari program yang tampil
pada perangkat android yang bertujuan memberikan gambaran tentang aplikasi yang
akan dibangun, sehingga akan memudahkan pengimplementasikan aplikasi sesuai
3.2.1.1Perancangan Antarmuka Login
Perancangan antar muka login ketika pertama membuka aplikasi yang akan di isi dengan username dan password yang telah tersedia di database.
Gambar 3. 23 Perancangan Antarmuka Login
3.2.1.2Perancangan Anatrmuka Halaman Utama
Perancangan antar muka dengan halaman utama, user dapat memilih ruangan yang akan di kendalikan.
3.2.1.3Perancangan Anatrmuka Lampu Ruang Tamu
Perancangan anatarmuka lampu ruang tamu dengan beberapa difitur diantaranya adalah sebagai berikut:
Gambar 3. 25 Perancangan Anatrmuka Ruang Tamu
3.2.1.4Perangcangan Antarmuka Lampu Ruang Keluarga
Perancangan anatarmuka lampu ruang keluarga dengan beberapa difitur diantaranya adalah sebagai berikut:
3.2.1.5Perancangan Anatrmuka Lampu Ruang Dapur
Perancangan anatarmuka lampu ruang dapur dengan beberapa difitur diantaranya adalah sebagai berikut:
Gambar 3. 27 Perancangan Anatrmuka Lampu Ruang Dapur
3.2.1.6Perancangan Anatrmuka Lampu Ruang Makan
Perancangan anatarmuka lampu ruang makan dengan beberapa difitur diantaranya adalah sebagai berikut:
3.2.1.7Perancangan Anatrmuka Lampu Ruang Belakang
Perancangan anatarmuka lampu ruang belakang dengan beberapa difitur diantaranya adalah sebagai berikut:
Gambar 3. 29 Perancangan Anatrmuka Lampu Ruang Belakang
3.2.1.8Perancangan Anatrmuka Lampu Ruang Kamar mandi
Perancangan anatarmuka lampu ruang kamar mandi dengan beberapa difitur diantaranya adalah sebagai berikut:
3.2.1.9Perancangan Antarmuka Lampu Ruang Kamar Tidur
Perancangan anatarmuka lampu ruang Kamar tidur dengan beberapa difitur diantaranya adalah sebagai berikut:
Gambar 3. 31 Perancangan Antarmuka Lampu Ruang Kamar tidur
3.2.1.10Perancangan Anatrmuka Lampu Taman
Perancangan anatarmuka lampu taman dengan beberapa difitur diantaranya adalah sebagai berikut:
3.2.1.11Perancangan antarmuka menghitung KWH
Perancangan antarmuka perhitungan KWH setiap pemakaian dengan beberapa fitur diantaranya adalah sebagai berikut:
Gambar 3. 33 Perancangan Antarmuka menghitung KWH
3.2.1.12Perancangan antarmuka ON/OFF All
Perancangan antarmuka ON/OFF All setiap pemakaian dengan beberapa fitur diantaranya adalah sebagai berikut:
9
BAB 2 TINJAUAN PUSTAKA
2.1Landasan Teori
Landasan teori dari penelitian ini menguraikan proses analisis sistem serta mendukung proses pembangunan Home Automation pada Lighting control dengan Android.
2.1.1Home Automation
Home Automation dapat dikatakan sebagai ekstensi perumahan dari “otomatis bangunan/building automation”. Hal ini berhubungan dengan kegiatan dan pekerjaan di rumah yang otomatis terlaksana. Home Automation mungkin termasuk control yang terpusat pada pencahayaan, HVAC (pemanas, ventilasi dan AC), peralatan, dan system lainnya, untuk memberikan kenyamanan, keamanan, efisiensi energi dan kemudahan yang lebih baik.
Sebuah system otomatisasi rumah mampu mengintegrasikan perangkat listrik di rumah dengan satu sama lainnya. Teknik-teknik yang digunakan dalam Home Automation termasuk yang diotomatisasi bangunan dengan pengendalian
kegiatan domestic seperti system hiburan rumah, houseplant dan penyiraman halaman dan lainya. Perangkat dapat dihubungkan melalui jaringan Komputer untuk memungkinkan control dengan komputer pribadi dan memungkinkan akses remote dari internet. Melalui integrasi teknologi informasi dengan lingkungan
rumah, sistem dan peralatan dapat berkomunikasi secara terpadu yang menghasilkan kenyamanan, efisiensi energi dan manfaat keselamatan[1].
2.1.2Mikrokontroler Arduino
Arduino adalah kit elektronik atau papan rangkaian elektronik Open source yang di dalamnya terdapat komponen utama, yaitu sebuah chip
memproses input tersebut dan kemudian menghasilkan output sesuai dengan yang di inginkan. Jadi mikrokontroler sebagai “otak” input, output dan proses pada sebuah rangkaian elektronik.
Secara umum, Arduino terbagai dari dua bagian,yaitu:
1. Hadware berupa papan input/output (I/O) yang Open source.
2. Software arduino yang juga Open source, meliputi software arduino IDE untuk menulis program dan driver untuk koneksi dengan komputer.
2.1.2.1Sejarah Arduino
Pembuatan Arduino di mulai pada tahun 2005, dimana sebuah situs perusahaan komputer Oliveti di Ivrea Italia, membuat perangakat untuk mengedalikan proyek desain interaksi siswa supaya lebih murah di bandingkan dengan sistem pada saat itu. Dilanjutkan pada bulan mei 2011, diamana sudah lebih dari 300.000 unit arduino terjual. Pendiri dari arduino itu sendiri adalah Massimo Banzi dan David Cuarttielles sebagai Founder. Awalnya mereka
memberi nama proyek itu dengan sebutan arduin dari Ivrea tetapi seiring dengan perkembangan zaman, nama proyek itu di ubah menjadi Arduino yang berarti “teman yang kuat” atau dalam versi inggrisnya dikenal dengan sebutan “Hardwin”.Proyek pengkabelan diciptakan oleh seniman sekaligus programmer asal kolombia bernama Hernando Barragan.
Pengkabelan ini adalah proyek tesis Hernando pada Desain Interaksi Institute Ivrea. Hal tersebut dimaksudkan untuk menjadi versi elektronik
juga terlibat seperti Tom Igoe, Gianluca Martino, David Mellis, dan Nicholas Zambett.
2.1.2.2Kelebihan Arduino
Tentu saja ada banyak mikrokontroler maupun platform mikrokontroler tersedia, misalnya saja Basic Stamp-nya Parralax, BX-24-nya Netmedia, Phidget, MIT’s Handyboard, dan lain sebagainya. Semua alat tersebut bertujuan untuk menyederhanakan berbagai macam kerumitan maupun detail rumit pada pemograman mikrokontroler sehingga menjadi paket mudah digunakan (easy – to-use) . Arduino juga menyederhanakan proses bekerja dengan mikrokontroler, sekaligus menawarkan berbagai macam kelebihan antara lain:
a. Murah. Papan (perangkat keras) Arduino biasanya di jual relatife murah dibandingkan dengan platform mikrokontoler lainnya. Jika ingni lebih murah lagi,tentu bisa di buat sendiri dan itu sangat mungkin sekali karena semua sumber website arduino bahkan di website-website komunitas arduino lainnya. Tidak hanya cocok untuk Windows, namun juga cocok bekerja di linux, Mac.
b. Sederhana dan mudah pemogramannya. Perlu diketahui bahwa lingkungan pemograman di arduino mudah di gunakan untuk pemula, dan cukup fleksibel bagi mereka yang sudah tinggkat lanjut. Untuk guru/dosen, Arduino berbasis pada lingkungan pemograman Processing, sehingga jika mahasiswa atau murid-murid terbiasa menggunakan Processing tentu saja kotak Arduino terdapat tulisan bahwa Arduino di
pertuntukan bagi seniman, desainer, penghobi dan siapa saja. sungguh membesarkan hati dan membangkitkan semangat bahwa penggunaan tidak harus teknisi berpengalaman atau ilmuwan.
d. Perangkat kerasnya Open source. Perangkat Keras Arduino berbasis mikrokontroler ATMEGA8, ATMEGA168, ATMEGA328 dan ATMEGA1280. Dengan demikian, siapa saja bisa membuat perangkat keras Arduino ini, apalagi bootloader tersedia langsung dari perangkat lunak arduino IDE-nya. Bisa juga menggunakan breadboard untuk membuat perangkat Arduino beserta peripheral - peripheral lain yang dibutuhkan.
e. Tidak perlu perangkat chip programmer. Karena di dalamya sudah ada bootlader yang akan menangani upload program dari komputer
f. Sudah memiliki sarana komunikasi USB. Sehingga pengguna laptop yang tidak memiliki port serial/RS323 bisa menggunakannya.
g. Bahasa pemograman relatif murah, karena software Arduino dilengkapi dengan kumpulan library yang cukup lengkap.
h. Memiliki module siap pakai (shiled) yang bisa ditancapkan pada board Arduino Misalnya shield GPS, Ethernet, SD Card, dan lain-lain.
2.1.2.3Jenis – Jenis Arduino
Saat ini ada bermacam-macam bentuk dan jenis papan arduino yang disesuaikan dengan peruntukannya, tidak hanya board arduino yang disediakan juga terdapat modul siap pakai (shield), juga aksesoris seperti USB adapter dan sebagainya. Berikut jenis-jenis papan Arduino yang ada di pasaran.
2.1.2.3.1Arduino Uno
Arduino uno adalah papan mikrokontroler berbasis ATMEGA328 yang memiliki 14 pin digital input/output, 6 diantarnya digunakan sebagai output Pulse Width Modulation (PWM), 6 input analog, clock speed 16MHz, koneksi USB,
Jack listrik, header ICSP, dan tombol reset. Board ini menggunakan daya yang terhubung ke computer dengan kabel USB atau daya external dengan adapator AC-DC atau baterai.
Tabel 2. 1 Spesifikasi Board Arduino Uno
Mikrokontroler ATMEGA328 Tegangan Operasi 5V
Tegangan Input 7-12V Batas tegangan Input 6-20V
Pin digital I/O 14 (6 pin PWM)
Flash memory 32KB(ATmega328), 0,5 KB bootloder
SRAM 2KB (ATmega328)
EEPROM 1KB(ATmega328)
Clock 16MHz
Arduino dapat di aktifkan melalui koneksi USB atau dengan catu daya Eksternal. Sumber daya dipilih secara otomatis. Sumber daya Eksternal
(Non-USB) dapat berasal dari adapter AC ke DC atau baterai. Adaptor ini dapat dihubungkan dengan menancapkan Power Jack, dapat juga dihubungkan pada Power pin (Gnd dan Vin).
Board Arduino Uno dapat beroperasi pada pasokan Eksternal dari 6 sampai 20 volt. Jika disuplai kurang 7V. Meskipun pin 5V dapat di suplai kurang dari 5V, board mungkin tidak stabil. Jika menggunakan teganggan lebih dari 12V , regular tegangan bisa panas dan merusak board. Kisaran yang di sarankan adalah 7 sampai 12 Volt.
Adapun pin power supply pada arduino uno adalah:
- VIN. Tegangan input board aduino ketika menggunakan sumber daya (5volts dari sambungan USB atau dari sumber regulator lain). Anda dapat mensuplai tegangan pada pin ini, jika suplai tegangan lewat power jack, dapat melakukan akses melalui pin ini.
- 5V. Keluaran pin ini telah diatur sebesar 5V dari regulator pada board. Board dapat di suplai melalui pin 5V atau 3.3V bypasses regulator, dapat merusask board.
- 3v3. Suplai 3,3 volt dihasilkan oleh regulator pada board. Dengan menarik arus maksimal 50mA.
- GND. Pin ground.
2.1.2.3.2Arduino Leonardo
Arduino Leonardo adalah sebuah papan mikrokontroler berbasis ATmega32u4. Yang mampu mempunyai 20 pin digital input/output, dimana 7pin dapat digunakan sebagai output PWM dan 12Pin analog input, clock speed 16MHz crystal oscillator, sambungan micro USB, power jack, ICSP header, dan sebuah tombol reset.
Gambar 2. 2 Arduino Leonardo
Board ini juga menggunakan daya terhubung ke komputer dengan kabel USB atau daya Eksternal dengan adaptor AC-DC atau baterai.
2.1.2.3.3Arduino Mega 2560
sebagai output PWM, 16 Analog input, 4 UARTs(hadware serial port), 16 MHz crystal oscillator, sambungan USB, power jack, ICSP header dan tombol reset.
Gambar 2. 3 Arduino Mega 2560
Board ini juga menggunakan daya yang terhubung ke komputer dengan kabel USB atau daya ekternal dengan adaptor AC-DC atau baterai. Arduino mega compatibel dengan shield yang di desain untuk Arduino Duemilanover or
Diecimila.
2.1.2.3.4Arduino Due
Arduino Due adalah sebuah papan mikrokontroler berbasis atmel SAM3X8E ARM Cortex-M3 CPU. Arduino due merupakan mikrokontroler pertama dari arduino berbasis ARM 32bit. Mempunyai 54 pin digital input/output, 12 pin digunakan untuk output PWM, 12 analog input, 4 UARTs, clock speed 84MHz, sambungan OTG USB, DAC, 2 TWI, Power jack, SPI header, JTAG header, tombol reset dan tombol erase.
Gambar 2. 4 Arduino Due
2.1.2.3.5Arduino Ethernet
Gambar 2. 5 Arduino Ethernet
Arduino Ethernet berbeda dari board yang lain karena tidak mempunyai chip driver onboard USB-serial, tetapi mempunyai Wiznet Ethernet interface. Terdapat pembaca kartu memori microSD, yang dapat digunakan untuk menyimpan file-file untuk data akses jaringan, juga dapat di akses melalui library SD. Pin10 untuk Wiznet interface.
2.1.2.3.6Arduino Mega ADK
Arduino ADK adalah papan mikrokontroler berbasis ATmega2560. Terdapat USB host interface untuk koneksi pada handphone berbasis android, berbasis MAX3421e1C. Mempunyai 54 pin digital input/output, 14 pin digunakan untuk output PWM, 16 pin analog input, 4 UARTs, 16 MHz crystal oscillator, sambungan USB, power jack, ICSP header dan tombol reset.
Gambar 2. 6 Arduino Mega ADK
2.1.2.3.7Arduino Micro
Arduino micro adalah papan mikrokontroler berbasis ATmega32u4. Mempunyai 20 pin digital input/output, 7pin digunakan, untuk outout PWM dan 12 analog input , 16 MHz crystal oscillator, sambungan USB, power jack, ICSP header dan tombol reset button. Arduino micro mirip dengan Arduino Leonardo
Gambar 2. 7 Arduino Micro
2.1.2.3.8Arduino Nano
Arduino nano adalah board arduino berukuran kecil, lengkap berbasis ATmega328 untuk arduino nano 3.0 atau ATmega168 untuk arduino nano2.x mempunyai kelebihan yang sama fungsional dengan arduino duemilanove, namun dalam paket yang berbeda. Kekurangannya tidak mempunyai DC power jack, dan hanya dengan kabel Mini-B USB standar. Arduino Nano didesain dan diproduksi oleh gravitech.
Gambar 2. 8 Arduino Nano
2.1.2.3.9Arduino Fio
Arduino fio adalah mikrokontroler berbasis ATmega328P, beroperasi pada tegangan 3.3v dan clock 8MHz. mempunyai 14 pin digital input/output, 6 pin dapat digunakan sebagai output PWM, 8 analog input, on-board resonator, tombol reset dan pin berlubang. Terdapat baterai lithium Polymer dan termasuk rangkaian
charge circuit via USB. Juga terdapat soket XBee pada bagian bawah.
Arduino fio ditunjukan untuk aplikasi wireless. Pengguna dapat mengupload sketch /program dengan kabel FTDI atau sparkfun breakout board. Dengan memodifikasi adaptor USB-to-XBee seperti XBee explorer USB, pengguna dapat mengupload sketch melalui wireless. Arduino fio di desain oleh Shigeru Kobayashi dan di publikasi oleh SparkFun Electronics.
2.1.2.3.10Arduino Pro
Arduino pro adalah papan mikrokontroler berbasis ATmega 168 atau ATmega328. Arduino pro terdiri dari versi 3.3V/8 MHz dan 5V/16 MHz.mempunyai 14 pin digital input/output, 6 pin digunakan sebagai output PWM, 6 analog input, baterai power jack, power switch, tombol reset dan lubang untuk pemasangan power jack, ICSP header dan Pin header, 6 pin header dapat dihubungkan pada kabel FTDI atau sparkfun breakout board untuk daya USB dan komunikasi ke board[8].
Gambar 2. 10 Android Pro
2.1.3 Web Service
Protokol itu sendiri dibangun oleh Extensible Markup Language (XML) yang memang kenyataannya telah didukung oleh banyak paltform, bahasa pemograman, dan oleh developer di seluruh dunia.
Arsitektur web service dibangun oleh beberapa layer dan teknologi yang saling berhubungan. Banyak cara untuk memvisualisaskan service, sama banyaknya dengan cara untuk membangun dan menggunakan web service gambar berikut hanyalah salah satu cara untuk menggambarkan arsitekturnya.
Gambar 2. 11 Arsitektur web service
Web service disusun oleh tiga komponen standart, yaitu :
1. Simple Object Access Protocol (SOAP), yaitu protokol yang bertanggungjawab dalam pertukuran informasi dalam lingkungan jaringan terdistribusi.
2. Web service definition Language(WDSL), dokumen standart yang dituliskan pada format XML, dan mendifinikasan kehadiran web service dalam suatu jaringan.
Adanya standart tersebut membuat web service mudah di akses melalui berbagai antarmuka dan juga memberi peluang dimungkinkannya berbagai sistem yang dibangun pada platform yang berbeda dan bahasa yang berbeda untuk berkolaborasi pada dalam suatu pekerjaan[9]
.
2.1.4Android
Android Android adalah sistem operasi yang berbasis Linux untuk telepon seluler seperti telepon pintar (Smartphone) dan komputer tablet. Android menyediakan platform terbuka bagi para pengembang untuk menciptakan aplikasi mereka sendiri untuk digunakan oleh bermacam peranti begerak. Awalnya, Google Inc. membeli Android Inc., pendatang baru yang membuat peranti lunak untuk ponsel. Kemudian untuk mengembangkan Android, dibentuklah Open Handset Alliance, konsorsium dari 34 perusahaan piranti keras, piranti lunak dan telekomunikasi, termasuk Google, HTC, Intel, Motorola, Qualcomm, T-Mobile dan Nvidia[12]. Bebrapa pengertian lain dari Android, yaitu :
1. Merupakan platform terbuka (Open source) bagi para programmer untuk membuat atau mengembangkan aplikasi.
2. Merupakan sistem operasi yang dibeli Google Inc dari Android Inc. 3. Bukan bahasa pemrograman, akan tetapi hanya menyediakan
lingkungan hidup atau runtime environment yang disebut DVM (Dalvik Virtual Machine) yang telah dioptimasi untuk device dengan sistem
memori yang kecil.
2.1.4.1Versi Android
Banyak smartphone dan PC Tablet menggunakan sistem operasi dengan versi yang berbeda. Semakin tinggi versi, fiturnya semakin canggih dan banyak. Telepon pertama yang memakai sistem operasi Android adalah HTC Dream 13 yang dirilis pada tanggal 22 Oktober 2008. Beberapa uraian versi android seperti dibawah ini :
1. Android versi 1.1
search (pencarian suara), pengiriman pesan dengan Gmail, dan pemberitahuan Email.
2. Android versi 1.5 (Cupcake)
Pada pertengahan Mei 2009, Google kembali merilis telepon seluler dengan menggunakan Android dan SDK (Software Development Kit) dengan versi 1.5 (Cupcake). Terdapat beberapa pembaruan termasuk juga penambahan beberapa fitur dalam seluler versi ini yakni kemampuan merekam dan menonton video dengan modus kamera, mengunggah video ke Youtube dan gambar ke Picasa langsung dari telepon, dukungan Bluetooth A2DP, kemampuan terhubung secara otomatis ke headset bluetooth, animasi layar dan keyboard pada layar yang dapat disesuaikan dengan sistem.
3. Android versi 1.6 (Donut)
Donut (versi 1.6) dirilis pada September dengan menampilkan proses
pencarian yang lebih baik dibanding sebelumnya, penggunaan baterai indikator dan kontrol applet VPN. Fitur lainnya adalah galeri yang memungkinkan pengguna untuk memilih foto yang akan dihapus pada kamera, camcorder dan galeri yang diintegrasikan pada CDMA / EVDO, 802.1x, VPN, Gestures, danText-to-spech engine. Kemampuan dial kontak teknologi text to change speech (tidak tersedia pada semua ponsel).
4. Android versi 2.0/2.1 (Eclair)
terpilih. Kompetisi diadakan selama dua tahap yang tiap tahapnya dipilih 50 aplikasi terbaik. Dengan semakin berkembangnya dan semakin bertambahnya jumlah handset Android, semakin banyak pihak ketiga yang berminat untuk menyalurkan aplikasi mereka kepada sistem operasi Android. Aplikasi terkenal yang diubah ke dalam sistem operasi Android adalah Shazam, Backgrounds dan WeatherBug. Sistem operasi Android dalam situs internet juga dianggap penting untuk menciptakan aplikasi Android asli, contohnya oleh MySpace dan Facebook.
5. Android versi 2.2 (Froyo : Frozen Yoghurt)
Pada 20 Mei 2010, Android versi 2.2 (Froyo) diluncurkan. Perubahan-perubahan umumnya terhadap versi-versi sebelumnya antara lain dukungan Adobe Flash 10.1, kecepatan kinerja dan aplikasi 2 sampai 5 kali lebih cepat, integrasi dengan V8 JavaScript engine yang dipakai Google Chrome yang mempercepat kemampuan rendering pada browser,pemasangan aplikasi dalam SD Card, kemampuan WiFi Hotspot portabel dan kemampuan auto update dalam aplikasi Android Market.
6. Android versi 2.3 (Gingerbread)
Pada 6 Desember 2010, Android versi 2.3 (Gingerbread) diluncurkan. Perubahan-perubahan umum yang didapat dari versi ini antara lain peningkatan kemampuan permainan (gaming), peningkatan fungsi copy paste, layar antarmuka (User Interface) didesain ulang, dukungan
format video VP8 dan WebM, efek audio baru (rever, equalization, headphone virtualization, dan bass boost), dukungan kemampuan Near
Field Communication (NFC) dan dukungan jumlah kamera yang lebih
dari satu.
7. Android versi 3.1 (Honeycomb)
Android Honeycomb dirancang khusus untuk tablet. Android versi ini mendukung ukuran layar yang lebih besar. User Interface pada Honeycomb juga berbeda karena sudah didesain untuk tablet.
perangkat keras (hardware) untuk grafis. Tablet peratam yang dibuat dengan menjalankan Honeycomb adalah Motorola Xoom.
8. Android versi 4.0 (Ice Cream Sandwich)
Diumumkan pada tanggal 19 Oktober 2011, membawa fitur Honeycomb untuk smartphone dan menambahkan fitur baru termasuk
membuka kunci dengan pengenalan wajah, jaringan data pemantauan penggunaan dan kontrol, terpadu kontak jaringan sosial, perangkat tambahan fotografi, mencari email secara offline dan berbagi informasi dengan menggunakan NFC.
9. Android versi 4.1 (Jelly Bean)
Pada tanggal 27 Juni 2012 Google mengumumkan Android versi 4.1 (Jelly Bean) dalam konferensi Google I/O berdasarkan kernel Linux 3.0.31. Jelly Bean adalah pembaruan penting yang bertujuan untuk meningkatkan fungsi dan kinerja antarmuak pengguna (User Interface). Pembaruan ini diwujudkan dalam proyek Butter, perbaikan ini termasuk antisipasi sentuh, triple buffering, perpanjangan waktu vsync dan peningkatan frame rate hingga 60fps untuk menciptakan UI yang lebih halus. Perangkat pertama yang menggunakan sistem operasi ini adalah tablet Nexus 7, yang dirilis pada 13 Juli 2012.
10. Android versi 4.4 (KitKat)
Android versi 4.4 (KitKat) direncanakan akan dirilis pada bulan Oktober 2013. Setelah sebelumnya beredar rumor bahwa Android versi berikutnya setelah Jelly Bean diperkirakan akan diberi nomor 5.0 dan dinamai Key Lime Pie. 16 [10].
2.1.5Lighting control
Lighting control adalah sistem yang mengatur dan mengendalikan