SISTEM OTOMATISASI PERANGKAT LISTRIK RUMAH
BERBASIS OPENWRT LINUX
Diajukan oleh
Azhar Pratama Febriansyah
0608555/PS/IK/06
Kepada
Tim Skripsi Program Studi Ilmu Komputer
PROGRAM STUDI ILMU KOMPUTER
FAKULTAS PENDIDIKAN MATEMATIKA DAN ILMU PENGETAHUAN
ALAM
UNIVERSITAS PENDIDIKAN INDONESIA
Azhar Pratama F, 2013
SISTEM OTOMATISASI PERANGKAT LISTRIK RUMAH
BERBASIS OPENWRT LINUX
Oleh
Azhar Pratama F.
Sebuah skripsi yang diajukan untuk memenuhi salah satu syarat memperoleh gelar Sarjana pada Fakultas Pendidikan Matematika dan Ilmu Pengetahuan Alam
© Azhar Pratama F.
Universitas Pendidikan Indonesia
September 2013
Hak Cipta dilindungi undang-undang.
Skripsi ini tidak boleh diperbanyak seluruhya atau sebagian,
SISTEM OTOMATISASI PERANGKAT LISTRIK RUMAH
BERBASIS OPENWRT LINUX
AZHAR PRATAMA FEBRIANSYAH
0608555
DISETUJUI DAN DISAHKAN OLEH PEMBIMBING:
Pembimbing I,
Eddy Prasetyo Nugroho, MT.
NIP: 197505152008011014
Pembimbing II,
Jajang Kusnendar, MT.
NIP: 197506012008121001
Mengetahui,
Ketua Prodi Ilmu Komputer
Rasim, MT.
iv Azhar Pratama F, 2013
ABSTRAK
Otomatisasi perangkat listrik rumah dapat digambarkan sebagai sebuah
produk atau perangkat yang berfungsi untuk memberikan informasi ataupun
melakukan sebuah pekerjaan tanpa harus melibatkan pemilik rumah. Contoh dari
otomatisasi rumah adalah jam alarm, AC yang dapat menyala sesuai dengan suhu
pada ruangan dan pompa air yang dapat menyala apabila air habis. Berdasarkan
itu maka diperlukan sebuah perangkat otomatisasi rumah dengan harga terjangkau
tetapi dapat berfungsi dengan baik. Oleh karena itu digunakanlah: sistem operasi
Openwrt Linux yang berjalan pada sebuah router, mikrokontroler Arduino Uno,
rangkaian relay, sensor suhu dan sensor cahaya untuk membangun sistem
otomatisasi perangkat listrik rumah pada penelitian ini. Pada akhirnya
terbentuklah sebuah sistem otomatisasi perangkat listrik rumah yang memiliki
antarmuka pengguna berbasis web sehingga dapat dikendalikan dari jarak jauh
baik menggunakan jaringan lokal maupun internet.
ABSTRACT
Home automation can be desribed as a product or device that can function
on it’s own and can give an information or do some task without involving the
home owner. Example of home automation are alarm clock, an AC that can turn
itself on at a certain room temperature and a water pump that can turn itself on
when the water is low. For that reason we need a home automation device with
affordable price but can function well enough for daily use. Because of that we
use Openwrt Linux operating system and Arduino microcontroller as they are
licensed as open-source. By using open-source hardware and software we can
develop the home automation our self with minimum amount of money. Openwrt
Linux running on a router, Arduino Uno board, relay module, temperature sensor
and light sensor will be used on this research. As the result there will be a web
based home appliance automation system that can be accessed using local
network or the internet.
vi Azhar Pratama F, 2013
DAFTAR ISI
PERNYATAAN ... Error! Bookmark not defined.
KATA PENGANTAR ... Error! Bookmark not defined.
UCAPAN TERIMA KASIH ... Error! Bookmark not defined.
ABSTRAK ... Error! Bookmark not defined.
ABSTRACT ... Error! Bookmark not defined.
DAFTAR ISI ... vi
DAFTAR TABEL ... x
DAFTAR GAMBAR ... xi
BAB I PENDAHULUAN ... Error! Bookmark not defined.
1.1 Latar Belakang ... Error! Bookmark not defined.
1.2 Perumusan Masalah ... Error! Bookmark not defined.
1.3 Batasan Masalah ... Error! Bookmark not defined.
1.4 Tujuan Penelitian ... Error! Bookmark not defined.
1.5 Manfaat Penelitian ... Error! Bookmark not defined.
1.6 Sistematika Penulisan ... Error! Bookmark not defined.
BAB II TINJAUAN PUSTAKA ... Error! Bookmark not defined.
2.2 Linux ... Error! Bookmark not defined.
2.3 Openwrt Linux ... Error! Bookmark not defined.
2.4 Mikrokontroller ... Error! Bookmark not defined.
2.5 Mikrokontroler Arduino ... Error! Bookmark not defined.
2.6 Arduino Uno ... Error! Bookmark not defined.
2.6.1 Catu Daya ... Error! Bookmark not defined.
2.6.2 Memori Internal ... Error! Bookmark not defined.
2.6.3 Input dan Output ... Error! Bookmark not defined.
2.6.4 Komunikasi ... Error! Bookmark not defined.
2.6.5 Pemrograman ... Error! Bookmark not defined.
2.7 Program ... Error! Bookmark not defined.
2.8 Router ... Error! Bookmark not defined.
2.9 Dasar-dasar Pengembangan Perangkat Lunak ... Error! Bookmark not
defined.
2.9.1 Web Server ... Error! Bookmark not defined.
2.9.2 Konsep Model-View-Controller (MVC) ... Error! Bookmark not
defined.
2.9.3 Framework ... Error! Bookmark not defined.
2.10 Dasar-dasar Elektronika ... Error! Bookmark not defined.
viii Azhar Pratama F, 2013
2.10.2 Modul Relay ... Error! Bookmark not defined.
2.10.3 Light Emitting Diode (LED) ... Error! Bookmark not defined.
2.10.4 Sensor Suhu (LM35CZ) ... Error! Bookmark not defined.
2.10.5 Sensor Cahaya (Photoresistor) ... Error! Bookmark not defined.
BAB III METODOLOGI PENELITIAN ... Error! Bookmark not defined.
3.1 Desain Penelitian ... Error! Bookmark not defined.
3.1.1 Tahapan Penelitian ... Error! Bookmark not defined.
3.1.2 Pengembangan perangkat keras ... Error! Bookmark not defined.
3.1.3 Pengembangan perangkat lunak ... Error! Bookmark not defined.
3.1.4 Implementasi ... Error! Bookmark not defined.
3.2 Metode Penelitian ... Error! Bookmark not defined.
3.2.1 Metode Pengumpulan Data ... Error! Bookmark not defined.
3.2.2 Metode Perangkat Lunak ... Error! Bookmark not defined.
3.3 Alat dan Bahan Penelitian ... Error! Bookmark not defined.
3.3.1 Alat Penelitian ... Error! Bookmark not defined.
3.3.2 Bahan Penelitian... Error! Bookmark not defined.
3.4 Implementasi ... Error! Bookmark not defined.
3.4.1 Konfigurasi Perangkat Keras ... Error! Bookmark not defined.
3.4.1 Konfigurasi Sistem Operasi ... Error! Bookmark not defined.
BAB IV HASIL PENELITIAN DAN PEMBAHASAN ... Error! Bookmark not
defined.
4.1 Tahapan Implementasi ... Error! Bookmark not defined.
4.1.1 Konfigurasi Perangkat Keras ... Error! Bookmark not defined.
4.1.2 Konfigurasi Sistem Operasi ... Error! Bookmark not defined.
4.1.3 Pengembangan Perangkat Lunak ... Error! Bookmark not defined.
4.2 Hasil Pengujian ... Error! Bookmark not defined.
4.2.1 Lingkungan Pengujian ... Error! Bookmark not defined.
4.2.2 Hasil Pengujian ... Error! Bookmark not defined.
4.2.3 Analisa Hasil Pengujian ... Error! Bookmark not defined.
BAB 5 KESIMPULAN DAN SARAN ... Error! Bookmark not defined.
5.1 Kesimpulan ... Error! Bookmark not defined.
5.2 Saran ... Error! Bookmark not defined.
6 DAFTAR PUSTAKA ... Error! Bookmark not defined.
x Azhar Pratama F, 2013
DAFTAR TABEL
Tabel 4.1 Log Timer Rule ... Error! Bookmark not defined.
DAFTAR GAMBAR
Gambar 2.1 Arduino Uno ... Error! Bookmark not defined.
Gambar 2.2 Contoh Penggunaan Router (Lowe: 122) ... Error! Bookmark not
defined.
Gambar 2.3 Diagram MVC (Pitt: 3) ... Error! Bookmark not defined.
Gambar 2.4 Contoh Relay ... Error! Bookmark not defined.
Gambar 2.5 Modul Relay ... Error! Bookmark not defined.
Gambar 2.6 Light Emitting Diode (LED) ... Error! Bookmark not defined.
Gambar 2.7 Sensor Suhu LM35CZ ... Error! Bookmark not defined.
Gambar 2.8 Photoresistor ... Error! Bookmark not defined.
Gambar 3.1 Desain Penelitian ... Error! Bookmark not defined.
Gambar 3.2 Model Sekuensial Linier (Pressman: 29) ... Error! Bookmark not
defined.
Gambar 4.1 Penggunaan pin pada Arduino Uno (sumber: arduino.cc) ... Error!
Bookmark not defined.
Gambar 4.2 Conceptual Data Model ... Error! Bookmark not defined.
Gambar 4.3 Koneksi SSH... Error! Bookmark not defined.
Gambar 4.4 Otentikasi SSH ... Error! Bookmark not defined.
Gambar 4.5 Banner SSH ... Error! Bookmark not defined.
Gambar 4.6 Arduino Uno Telah Dikenali ... Error! Bookmark not defined.
Gambar 4.7 Perintah Untuk Menyalakan Relay #1 ... Error! Bookmark not
xii Azhar Pratama F, 2013
Gambar 4.8 Antarmuka Berbasis Web ... Error! Bookmark not defined.
Gambar 4.9 Timer Rule ... Error! Bookmark not defined.
Gambar 4.10 Sensor Rule ... Error! Bookmark not defined.
1 BAB I
PENDAHULUAN
1.1 Latar Belakang
Dalam bahasa yang paling sederhana, home automation atau otomatisasi
rumah dapat digambarkan sebagai sebuah produk yang berfungsi untuk
memberikan informasi ataupun melakukan sebuah pekerjaan tanpa harus
melibatkan pemilik rumah. Contoh paling sederhana adalah jam alarm atau smoke
detector yang biasa ada di dalam rumah (Riley: 3). Namun tidak seperti komputer
yang dapat berkomunikasi satu dan yang lain secara langsung, perangkat
elektronik yang ada di dalam rumah biasanya tidak dapat berkomunikasi secara
langsung.
Mahalnya perangkat untuk otomatisasi rumah membuat banyak orang
yang enggan membeli perangkat tersebut. Untuk itu perlu dikembangkan sebuah
sistem yang menggunakan perangkat lunak ataupun keras berbasis open-source.
Dengan menggunakan perangkat yang berbasis open-source maka seluruh
pengguna dapat ikut mengembangkan perangkat tersebut, tentunya dengan biaya
yang lebih murah dibandingkan dengan produk komersial yang ada di pasaran
contohnya X10, CEBus dan lain-lain. Pengembangan sistem otomatisasi
perangkat listrik rumah berbasis Arduino sudah mulai banyak dijumpai di internet,
2
Azhar Pratama F, 2013
mahal dan keterbatasan media penyimpanan data internal pada modul Arduino.
(http://arduino.cc/en/Tutorial/WebServer)
Openwrt digunakan sebagai sistem operasi yang berjalan pada router.
Openwrt merupakan sistem operasi berbasis Linux yang bersifat open-source,
sehingga dapat di konfigurasi agar berjalan sesuai dengan kebutuhan pada
penelitian ini. Aplikasi untuk kendali sistem otomatisasi perangkat listrik rumah
akan berjalan pada web server yang terdapat didalam Openwrt yang dapat
mengenali perangkat mikrokontroller Arduino yang terhubung melalui USB.
Oleh karena itu dalam penelitian ini digunakan sistem operasi Linux untuk
embedded device yang bernama Openwrt, sebuah router, sebuah rangkaian
mikrokontroller Arduino, rangkaian relay dan beberapa sensor untuk membangun
sebuah sistem yang dapat digunakan untuk otomatisasi rumah dengan biaya yang
relatif murah, hemat daya listrik dan dapat diakses dari jarak jauh karena memiliki
antarmuka pengguna berbasis web yang dapat diakses menggunakan berbagai
macam perangkat, baik melalui jaringan internet ataupun jaringan lokal.
1.2 Perumusan Masalah
Berikut ini adalah rumusan masalah berdasarkan latar belakang yang
dibuat:
1) Bagaimana agar router dan Openwrt Linux dapat dipergunakan sebagai
sistem kendali otomatisasi rumah?
2) Bagaimana implementasi dukungan perangkat Arduino dan dukungan web
3
3) Bagaimana sistem kendali otomatisasi rumah dapat membaca nilai dari
sensor suhu dan sensor cahaya sebagai acuan untuk otomatisasi?
4) Bagaimana cara mengontrol perangkat listrik dari jarak jauh melalui web?
1.3 Batasan Masalah
Agar penelitian lebih terarah, maka batasan masalah untuk penelitian ini
adalah sebagai berikut:
1) Perangkat mikrokontroler yang digunakan adalah Arduino Uno.
2) Perangkat Arduino berperan sebagai perangkat perantara yang digunakan
untuk switching perangkat tegangan tinggi melalui modul relay.
3) Perangkat Arduino juga berperan untuk membaca output dari sensor suhu
atau cahaya yang digunakan.
4) Otomatisasi hanya berdasarkan waktu (jam dan hari dalam seminggu) dan
output dari sensor yang dipasang di Arduino.
5) Perangkat listrik yang akan dikendalikan pada penelitian ini adalah
perangkat listrik yang belum memiliki pengaturan baik berupa sensor
ataupun timer. Contohnya seperti lampu rumah, kipas angin dan pompa
air.
6) Pengecekan pengaturan yang valid baik untuk pengaturan berdasarkan
waktu ataupun sensor dilakukan per menit karena keterbatasan yang
dimiliki oleh modul Cronjob pada Openwrt Linux.
1.4 Tujuan Penelitian
4
Azhar Pratama F, 2013
1) Sistem operasi pada router menggunakan Openwrt Linux agar dapat
mengenali perangkat Arduino sebagai pengendali rangkaian relay dan
dapat menjalankan web server yang digunakan sebagai sistem kendali
utama.
2) Perangkat Arduino diatur agar dapat membaca nilai dari sensor dan dapat
mengendalikan rangkaian relay, sedangkan web server digunakan untuk
membangun aplikasi untuk sistem kendali utama.
3) Sistem kendali utama mampu membaca nilai dari sensor melalui perangkat
Arduino dan menjadikannya sebagai acuan dalam pengaturan perangkat
listrik.
4) Membangun sistem kendali berbasis web yang dapat digunakan untuk
mengatur perangkat listrik di rumah dan dapat dikendalikan dari jarak
jauh.
1.5 Manfaat Penelitian
Dengan dilaksanakannya penelitian ini penulis berharap dapat memberikan
manfaat sebagai berikut:
1) Bagi para pengguna, yaitu dapat memperoleh sebuah sistem otomatisasi
perangkat listrik rumah dengan biaya yang relatif terjangkau dan dapat
dikonfigurasi sesuai kebutuhan karena menggunakan sistem operasi
berbasis open-source
2) Bagi para pengembang, yaitu dapat mengembangkan modul – modul
tambahan yang dapat digunakan pada sistem otomatisasi perangkat listrik
5
3) Memberi masukan kepada peneliti lain bahwa sistem operasi open-source
dapat dikembangkan lebih jauh, tidak hanya pada platform komputer.
1.6 Sistematika Penulisan
BAB I PENDAHULUAN
Bab ini menjelaskan penjelasan singkat mengenai apa itu
otomatisasi rumah, permasalahan yang dihadapi, batasan masalah
dan hasil yang diharapkan dari penelitian ini.
BAB II TINJAUAN PUSTAKA
Bab ini membahas dasar-dasar teori yang digunakan pada
penelitian ini.
BAB III METODOLOGI PENELITIAN
Bab ini membahas tentang langkah-langkah yang akan dilakukan
pada penelitian ini, seperti: desain penelitian, metode penelitian,
alat dan bahan penelitian dan tahapan implementasi.
BAB IV HASIL PENELITIAN DAN PEMBAHASAN
Bab ini berisikan tahapan implementasi yang berupa: konfigurasi
perangkat keras, konfigurasi sistem operasi dan pengembangan
perangkat lunak, hasil pengujian dan analisa hasil pengujian.
BAB V KESIMPULAN DAN SARAN
Bab ini berisikan kesimpulan dan saran yang diperoleh dari hasil
1 Azhar Pratama F, 2013
1 BAB III
METODOLOGI PENELITIAN
1.1 Desain Penelitian
Penelitian ini menggunakan metode pengembangan perangkat lunak
dengan melakukan pengamatan dan percobaan langsung terhadap objek dari
penelitian ini yaitu Openwrt Linux. Dengan mempraktekkan secara langsung
teori-teori yang didapatkan terhadap objek baik informasi dari forum maupun dari
dokumentasi resmi.
Objek penelitan merupakan bahan mentah dari penelitian ini, objek akan
akan dimodifikasi dengan memberikan penambahan dan pengurangan komponen.
Model proses yang digunakan adalah model sekuensial linier yakni
pengembangan perangkat lunak sistematik dan sekuensial. Desain penelitian ini
meliputi:
1.1.1 Tahapan Penelitian
Berikut ini adalah tahapan penelitian yang dilakukan adalah sebagai
berikut:
1) Identifikasi masalah, mengidentifikasi permasalahan yang ada dalam
penelitian yang akan dilakukan.
2) Perumusan masalah, merumuskan permasalahan yang mungkin dalam
2
3) Rancangan penelitian, merancang penelitian agar mudah dipahami dan
diproses.
4) Pengumpulan data, mencari literatur yang terkait dalam penelitian ini.
Dalam pengumpulan data ini penulis memakai metode pengumpulan data
yaitu studi kepustakaan.
1.1.2 Pengembangan perangkat keras
Pada tahap ini dilakukan pengembangan terhadap perangkat keras
yang menjadi bahan dari penelitian ini.
1.1.3 Pengembangan perangkat lunak
Tahap ketiga yaitu pengembangan perangkat lunak ini, pada tahap
pengembangan sistem dilakukan dengan berdasarkan metode sekuensial
linear yang terdiri dari tahapan-tahapan analisis, design, code dan testing.
1.1.4 Implementasi
Tahap implementasi ini merupakan tahap terakhir dari desain
penelitian yang dilakukan yaitu mengimplementasikan hasil penelitian
yang penulis lakukan. Dalam implementasi sistem ini hal-hal yang akan
dilakukan meliputi pengembangan perangkat keras dan pengembangan
perangkat lunak yang akan diintegrasi menjadi sebuah sistem otomatisasi
3
Azhar Pratama F, 2013
Untuk lebih jelasnya tahapan-tahapan desain penelitian yang dilakukan
dapat dilihat pada Gambar 3.1 berikut ini:
Router Sebagai Kendali Utama Sistem Otomatisasi Perangkat Listrik Rumah
Tahapan Penelitian
Konfigurasi Perangkat Keras
Sistem Operasi Linux Openwrt
Pengembangan Perangkat Lunak (Metode Sekuensial Linear)
Identifikasi Masalah
Perumusan Masalah
Rancangan Penelitian
Perancangan Logika pada Arduino Uno Konfigurasi Sensor Suhu Konfigurasi Sensor Cahaya Konfigurasi Rangkaian Relay Konfigurasi Modul Kernel Konfigurasi Modul Aplikasi Sistem Otomatisasi Rumah Berbasis Openwrt Linux Studi Kepustakaan Konfigurasi Web Server Pengembangan Aplikasi menggunakan framework MVC Konfigurasi Modul PHP Perancangan Database Perancangan Class Untuk Koneksi Serial
4
1.2 Metode Penelitian
Metodologi yang digunakan dalam perancangan dan pengembangan sistem
yang dibuat meliputi dua metode yaitu metode pengumpulan data dan metode
pengembangan sistem. Kedua metode tersebut dijelaskan sebagai berikut:
1.2.1 Metode Pengumpulan Data
Metode pengumpulan data dalam penelitian ini bertujuan untuk
memperoleh informasi yang lengkap. Dengan cara mencari berbagai data
literatur dan informasi yang terkait dengan penelitian ini baik literatur dari
referensi buku maupun berbagai sumber dari internet.
1.2.2 Metode Perangkat Lunak
Model pengembangan yang digunakan untuk penelitian ini adalah
model sekuensial linier yang bisa dilihat pada Gambar 3.2:
Software Engineering
Analisis Desain Pengembangan Pengujian
Gambar 1.2 Model Sekuensial Linier (Pressman: 29)
Tahapan-tahapan pada model pengembangan untuk Sistem
5
Azhar Pratama F, 2013
1. Analisis
Pada tahap pertama ini, permasalahan dan tujuan aplikasi dirumuskan.
Segala kebutuhan yang akan menjadi solusi untuk permasalahan
tersebut dan mencapai tujuan aplikasi dipersiapkan.
2. Desain
Merancang perangkat lunak yang akan dibuat berdasarkan hasil
analisis. Tujuan dari tahap perancangan ini adalah mengefektifkan dan
mengefisiensikan proses pengembangan perangkat lunak.
3. Pengembangan
Pada tahap ini, perangkat lunak dikembangkan dengan mengikuti
desain perangkat lunak yang telah dibuat. Dengan begitu, proses
pengembangan perangkat lunak pun akan terarah dan tidak memakan
waktu yang lama.
4. Pengujian
Setelah aplikasi dikembangkan, agar aplikasi dapat mencapai pasar
sesuai tujuan yang dirumuskan, aplikasi akan diuji secara blackbox.
1.3 Alat dan Bahan Penelitian
Alat-alat penelitian dalam penelitian ini merupakan alat-alat termasuk
perangkat keras dan perangkat lunak yang digunakan dalam melakukan percobaan
ketika membangun sistem dan ketika dilakukan pengujian terhadap sistem.
Sedangkan bahan penelitian adalah komponen-komponen yang digunakan untuk
6
3.3.1 Alat Penelitian
Alat-alat yang digunakan dalam penelitian ini adalah sebagai berikut:
1) Komputer yang menggunakan AMD Phenom X3 dan memori 2Gb yang
digunakan untuk kompilasi kode dari Openwrt menghasilkan file firmware
yang akan digunakan di router beserta seluruh packages yang dibutuhkan.
2) Perangkat lunak PhpStorm sebagai IDE (Integrated Development
Environment) untuk pengembangan perangkat lunak menggunakan bahasa
pemrograman PHP.
3) Perangkat lunak Arduino IDE untuk mengembangkan logika didalam
perangkat Arduino Uno.
3.3.2 Bahan Penelitian
Bahan penelitian yang menjadi objek didalam penelitian ini adalah sebuah
distribusi Linux yang di khususkan untuk router, sebuah router TP-Link MR3020,
sebuah mikrokontroler Arduino Uno dan rangkaian relay yang terdiri dari 4 relay.
Openwrt merupakan sebuah distribusi Linux yang dikembangkan untuk
digunakan di router sebagai pengganti sistem operasi (firmware) dari pabrikan.
Distribusi Openwrt dapat dirancang untuk menjalankan web server dan
mengendalikan Arduino Uno yang terhubung melalui port USB.
Bahan-bahan yang digunakan pada penelitian ini adalah sebagai berikut:
1) Sebuah router TP-Link TL-MR3020 yang menggunakan sistem operasi
7
Azhar Pratama F, 2013
2) USB Hub untuk memperbanyak jumlah port USB dari router yang awalnya 1
port menjadi 4 port USB.
3) USB flash drive yang akan digunakan sebagai ext-root untuk menambah
kapasitas penyimpanan router yang sangat terbatas.
4) Arduino Uno sebagai perantara komunikasi antara sensor dan output ke
perangkat elektronik lainnya.
5) Modul relay untuk mengendalikan perangkat listrik tegangan tinggi yang
dikendalikan oleh Arduino Uno.
6) Sensor suhu (LM-35CZ) untuk mengukur suhu ruangan.
7) Sensor cahaya yang berupa photoresistor untuk mendeteksi tingkat
pencahayaan pada suatu ruangan.
1.4 Implementasi
Pada tahap ini dilakukan analisa terhadap seluruh komponen yang
diperlukan dalam proses penelitian ini. Komponen yang dianalisa meliputi
perangkat keras, sistem operasi dan perangkat lunak. Proses analisa dilakukan
untuk memastikan bahwa seluruh komponen dapat dipergunakan dalam penelitian
8
1.4.1 Konfigurasi Perangkat Keras
Berikut ini adalah langkah-langkah konfigurasi perangkat keras yang
dilakukan pada penelitian ini:
1. Arduino Uno
Arduino Uno berperan sebagai jembatan penghubung antara aplikasi
dan perangkat listrik yang akan dikendalikan oleh Arduino Uno. Arduino Uno
memiliki fungsi sebagai perangkat konversi digital ke analog ataupun
sebaliknya. Arduino dapat membaca output dari sensor suhu dan cahaya yang
terpasang dan mengubahnya menjadi nilai yang dapat dibaca oleh aplikasi.
Aplikasi juga dapat mengirimkan perintah pada Arduino Uno yang kemudian
akan meneruskannya sesuai dengan logika yang ditanamkan.
2. Sensor Suhu
Sensor suhu berfungsi untuk membaca suhu ruangan secara real-time.
Aplikasi dapat membaca nilai dari sensor suhu melalui Arduino Uno dan
dapat melakukan tindakan sesuai dengan nilai suhu yang diberikan.
3. Sensor Cahaya
Sensor cahaya berfungsi untuk membaca tingkat pencahaan secara
real-time. Aplikasi dapat membaca nilai dari sensor cahaya melalui Arduino Uno
dan dapat melakukan tindakan sesuai dengan nilai pencahayaan yang
diberikan.
4. Router
9
Azhar Pratama F, 2013
pabrikan akan diganti dengan Openwrt Linux sehingga dapat di konfigurasi
layaknya Linux yang berjalan pada sebuah komputer. Komunikasi ke
perangkat Arduino dilakukan melalui port USB yang tersedia dan pengguna
dapat mengakses sistem melalui jaringan kabel ataupun nirkabel.
5. USB Flashdisk
Flashdisk di konfigurasi untuk digunakan sebagai media penyimpanan
utama bagi sistem operasi Openwrt.
3.4.1 Konfigurasi Sistem Operasi
Berikut ini adalah langkah-langkah konfiguasi sistem operasi yang
dilakukan pada penelitian ini:
1. Konfigurasi Modul Kernel
Pada tahap ini dilakukan penambahan modul kernel untuk
menambahkan dukungan perangkat keras yang diperlukan dalam penelitian
ini. Dukungan perangkat keras yang ditambahkan adalah sebagai berikut:
dukungan terhadap perangkat virtual USB serial Arduino Uno, dukungan
terhadap media penyimpanan USB dan dukungan file-system EXT4.
2. Konfigurasi Modul Aplikasi
Modul aplikasi ditambahkan untuk memenuhi kebutuhan perangkat
lunak didalam penelitian ini. Dukungan perangkat lunak yang ditambahkan
adalah sebagai berikut: modul untuk komunikasi port serial, modul web server
Lighttpd, modul PHP, modul database Sqlite dan modul antarmuka pengguna
10
3. Konfigurasi Sistem Operasi
Sistem operasi dikonfigurasi agar dapat menggunakan flashdisk sebagai
media penyimpanan utama dikarenakan media penyimpanan yang terdapat di
router sangat terbatas. Seluruh modul tambahan akan disimpan didalam media
flashdisk sehingga keterbatasan kapasitas penyimpanan pada router tidak
menjadi kendala didalam penelitian ini.
3.4.2 Pengembangan Perangkat Lunak
Berikut ini adalah langkah-langkah konfiguasi perangkat lunak yang
dilakukan pada penelitian ini:
1. Pengembangan Logika Arduino Uno
Agar Arduino dapat menerima dan menjalankan perintah dari aplikasi
sesuai dengan harapan maka diperlukan program yang nantinya akan
ditanaman didalam chip mikrokontroler. Contoh langkah kerja sederhana dari
program yang ditanamkan adalah sebagai berikut: aplikasi mengirimkan
perintah “a1” yang kemudian diterima oleh perangkat Arduino yang kemudian
menyalakan perangkat pada port 1 dan aplikasi mengirimkan perintah “s1”
lalu Arduino membaca nilai dari sensor pada port 1 yang kemudian
memberikan balasan berupa nilai suhu untuk dibaca oleh aplikasi.
2. Pengembangan Aplikasi
Aplikasi dibangun menggunakan bahasa PHP dan menggunakan
framework TinyMVC untuk kerangka perancangan MVC-nya. Aplikasi
11
Azhar Pratama F, 2013
didalam penelitian ini. Melalui aplikasi ini pengguna dapat mengatur rule atau
aturan-aturan yang dipergunakan untuk switching perangkat listrik yang
terpasang. Aturan-aturan yang tersedia adalah sebagai berikut: aturan
berdasarkan waktu (hari & jam), berdasarkan nilai sensor suhu dan
berdasarkan nilai dari sensor cahaya. Ketika aturan terpenuhi maka aplikasi
akan mengirimkan perintah kepada Arduino sesuai dengan pengaturan yang
1 BAB 5
KESIMPULAN DAN SARAN
1.1 Kesimpulan
Berdasarkan pembahasan hasil penelitian yang telah dilakukan maka dapat
ditarik beberapa kesimpulan:
1) Perangkat lunak kendali sistem yang dibangun berjalan pada web server
yang terpasang pada sistem operasi Openwrt Linux yang telah ditanamkan
didalam router. Perangkat lunak kendali sistem melakukan pengecekan
terhadap pengaturan yang sedang aktif, membaca nilai dari sensor yang
terpasang dan kemudian mengirimkan perintah ke perangkat Arduino
sesuai dengan pengaturan yang terpenuhi.
2) Sistem Operasi Openwrt dapat dipergunakan sebagai sistem otomatisasi
perangkat rumah dengan melakukan penambahan modul-modul yang
diperlukan untuk dukungan perangkat keras (contoh: modul driver
Arduino) dan dukungan perangkat lunak (contoh: modul web server dan
PHP utuk menjalankan aplikasi berbasis web).
3) Perangkat lunak kendali sistem membaca nilai sensor yang terpasang
melalui perangkat Arduino yang terhubung dengan menggunakan koneksi
USB dengan cara mengirimkan perintah kepada perangkat Arduino dan
2
Azhar Pratama F, 2013
4) Pengendalian perangkat listrik melalui jarak jauh dapat dilakukan dari
jarak jauh melalui jaringan lokal maupun internet dengan menggunakan
3
1.2 Saran
Beberapa saran untuk pengembangan lebih jauh dari sistem yang ada pada
penelitian ini:
1) Diperlukan sebuah clock module agar router tidak kehilangan pengaturan
waktunya ketika arus listrik hilang dan router harus melakukan start ulang.
Implementasi bisa dilakukan melalui Arduino Uno.
2) Menggunakan catu daya baterai untuk router sehingga dapat tetap berjalan
walaupun listrik mati.
3) Penambahan modul relay agar dapat menangani lebih banyak perangkat
58
Azhar Pratama F, 2013
1 DAFTAR PUSTAKA
Arduino. 2013. Examples. [Online]. Tersedia:
http://arduino.cc/en/Tutorial/HomePage. [12 Maret 2013].
Arduino. 2013. Arduino Uno. [Online]. Tersedia:
http://arduino.cc/en/Main/arduinoBoardUno. [12 Maret 2013].
Lowe, Doug. 2013. Networking For Dummies, 10th Edition. Wiley.
Margolis, Michael. 2011. Arduino Cookbook. O’Reilly.
Openwrt. 2013. About Openwrt. [Online]. Tersedia: http://wiki.openwrt.org/about/start [14 Maret 2013]
OpenWrt. 2013. Lighttpd. [Online]. Tersedia:
http://wiki.openwrt.org/doc/howto/http.lighttpd. [14 Maret 2013].
OpenWrt. 2013. LuCI Essentials. [Online]. Tersedia:
http://wiki.openwrt.org/doc/howto/luci.essentials. [01 Maret 2013].
OpenWrt. 2013. Rootfs on External Storage (extroot). [Online]. Tersedia: http://wiki.openwrt.org/doc/howto/extroot. [12 Maret 2013].
OpenWrt. 2013. Use 3g/UMTS USB Dongle for WAN connection. [Online]. Tersedia: http://wiki.openwrt.org/doc/recipes/3gdongle. [13 Maret 2013].
Pitt, Chris. 2012. Pro PHP MVC. Apress.
Platt, Charles. 2013. Encyclopedia Of Electronic Components Volume 1.O’Reilly
Riley, Mike. 2012. Programming Your Home. The Pragmatic Bookshelf.
Stalling,William. 2005. The Linux Operating System 5th Edition. Prentice Hall.
Tanenbaum,Andrew.S. 2005. Modern Operating System 2nd Edition. Prentice-Hall.
Tatroe, Kevin. MacIntyre, Peter. Lerdorf, Rasmus. 2013. Programming PHP.
O’Reilly.