TUGAS AKHIR
LAMPU RGB ALARM MENGGUNAKAN ESP-8266
Diajukan untuk memenuhi salah satu syarat
Memperoleh gelar Sarjana Teknik pada
Program Studi Teknik Elektro
Jurusan Teknik Elektro
Fakultas Sains dan Teknologi Universitas Sanata Dharma
Disusun oleh :
KRISTIAN SANDI SUGITO
NIM : 145114058
JURUSAN TEKNIK ELEKTRO
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
ii
FINAL PROJECT
RGB ALARM LIGHT BULB USING ESP-8266
In a partial fulfilment of the requirements
For the degree of Sarjana Teknik
Department of Electrical Engineering
Faculty of Science and Technology, Sanata Dharma University
KRISTIAN SANDI SUGITO
NIM : 145114058
DEPARTMENT OF ELECTRICAL ENGINEERING
FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
v
HALAMAN PERSEMBAHAN DAN MOTTO HIDUP
MOTTO :
GEMBALAKANLAH KAWANAN DOMBA YANG ADA PADAMU
DENGAN SUKACITA DAN PENUH PENGABDIAN DIRI
(1 Petrus 5:2)Skripsi ini kupersembahkan untuk…..
Tuhan yang selalu menyertaiku
Bapak, Ibu, Kakak, dan Adik tercinta
Sahabat dan Teman-teman Seperjuangan
vi
viii
INTISARI
Sebuah Lampu RGB alarm adalah sebuah lampu yang dipasang pada fiting lampu
ac 220v, lampu ini dapat berubah warna, perubahan warna dapat dikendalikan melalui
perangkat android secara remote kontrol, lampu ini mempunyai sistem alarm yang dapat
diatur melalui remote, sistem alarm ini dapat menyalakan lampu secara otomatis pada
waktu yang telah ditentukan dengan warna yang telah ditentukan pula.
Sistem mikrokontroler ESP-8266 12E dipilih sebagai kontroler utama lampu ini
sebab mikrokontroler ini sudah dilengkapi dengan komunikasi wireless yang dapat
terhubung pada perangkat android. Lampu led yang digunakan adalah led RGB 3w dengan
transistor driver ULN2003. Perangkat android digunakan sebagai remote yang akan
mengirimkan data meliputi data warna dan alarm untuk kemudian diterima oleh ESP-8266
12E, sistem alarm menggunakan RTC ds1307 sebagai acuan waktu.
Hasil akhir dari alat ini adalah dua buah lampu rgb alarm yang dapat dikendalikan
secara bersamaan maupun individu. Perangkat android dapat mengirimkan data ke setiap
IP yang berbeda pada setiap lampu sehingga sistem aplikasi pada android dapat
mengendalikan satu atau dua lampu bersamaan. Pengendalian cukup baik pada jarak 25
meter.
Kata kunci : ESP8266 Android Studio, Android to ESP8266 Client, Arduino IDE,
ix
ABSTRACT
A lamp RGB alarm is a lamp mounted on the light fittings ac 220v, these lights can
change color, the color change can be controlled via the android device by remote control,
these lamps have an alarm system that can be set via the remote, the alarm system can turn
on the light in automatically at a specified time with a predetermined color anyway.
ESP-8266 microcontroller system 12E been selected as the main controller of this
lamp because the microcontroller is equipped with a wireless communication device that
can connect to the android. LED lights used are LED RGB 3w with ULN2003 driver
transistor. Android used as a remote device that will transmit the data include color data
and alarms to subsequently accepted by the 8266 ESP-12E, alarm system using DS1307
RTC as a timing reference.
The final result of this tool is a two rgb light alarm that can be controlled
simultaneously or individually. Android device can transmit data to any IP that is different
for each light so that application on android system can control one or two lamps
simultaneously.
Keyword : ESP8266 Android Studio, Android to ESP8266 Client, Arduino IDE, RTC1307,
x
KATA PENGANTAR
Puji dan syukur penulis panjatkan kepada Tuhan Yesus Kristus atas segala
rahmat-Nya. Berkat Kasih dan KaruniaNya selama menjalani proses pembuatan tugas akhir ini,
penulis dapat menyelesaikan tugas akhir dengan judul “Aplikasi HMI pada Mesin Pemilah Benda Otomatis”.
Tugas akhir ini disusun untuk memenuhi salah satu syarat memperoleh gelar
Sarjana Teknik (S.T) bagi mahasiswa program S-1 Jurusan Teknik Elektro Universitas
Sanata Dharma Yogyakarta. Selama proses penyusunan proposal ini, penulis banyak
mendapat bantuan dan dukungan dari berbagai pihak, untuk itu penulis mengucapkan
terimakasih kepada:
1. Bapak Petrus Setyo Prabowo, S.T., M.T., selaku Ketua Program Studi Teknik Elektro
Universitas Sanata Dharma Yogyakarta.
2. Bapak Djoko Untoro Suwarno, S.Si., M.T. selaku Dosen Pembimbing tugas akhir
yang telah banyak meluangkan waktu untuk memberikan bimbingan.
3. Bapak Martanto, M.T., Bapak Joko Untoro, S.Si., M.T., Ibu Ir Theresia Prima Ari
Setiyani, M.T. yang telah memberikan saran dan kritik dalam menyelesaikan penulisan
tugas akhir.
4. Seluruh dosen Teknik Elektro yang telah memberikan ilmu yang bermanfaat kepada
penulis selama kuliah.
5. Bapak, ibu, kakak, dan adik yang telah memberikan perhatian dan dukungan.
6. Seluruh teman-teman prodi Teknik Elektro angkatan 2012 atas kerjasama dan
kebersamaannya selama menjalani studi.
7. Semua pihak yang tidak bisa penulis sebutkan satu per satu atas bantuan, bimbingan,
xi
Dalam penyusunan tugas akhir ini, penulis menyadari masih banyak kekurangan,
karena itu penulis mengharapkan kritik dan saran yang membangun demi kesempurnaan
tugas akhir ini.
Yogyakarta, 24 Februari 2017
Penulis,
xii
DAFTAR ISI
Halaman Sampul(Bahasa Indonesia) ... i
Halaman Sampul(Bahasa Inggris) ... ii
Lembar Persetujuan ... iii
Lembar Pengesahan ... iv
Halaman Persembahan ... v
Lembar Pernyataan Keaslian Karya... vi
Lembar Pernyataan Persetujuan Publikasi Karya Ilmiah ... vii
Intisari ... viii
Abstract ... ix
Kata Pengantar ... x
Daftar Isi ... xi
Daftar Gambar ... ... xiii
Daftar Tabel ... xiv
BAB I PENDAHULUAN 1.1 Latar Belakang ... 1
1.2 Tujuan dan Manfaat ... 1
1.3 Batasan Masalah ... 2
1.4 Metodologi Penelitian ... 2
BAB II DASAR TEORI 2.1 High Power Led RGB ... 4
2.2 ESP 8266 12E... 4
2.3 RTC DS1307 ... 6
2.4 ULN2003 ... 7
2.5 Switching Power Supply ... 7
2.6 PWM (Pulse Witdh Modulation) ... 8
2.7 Model Warna RGB ... 9
2.8 WIFI (Wieless Fldelity) ... 10
2.9 Wireless LAN ... 10
xiii
2.11 Access Point ... 13
2.12 Server ... 14
2.13 Client ... 15
2.14 Sistem Keamanan WLAN ... 16
2.15 Hypertext Transfer Protocol (HTTP) ... 16
2.15.1 Cara kerja HTTP Komunikasi Client dan Server ... 17
BAB III RANCANGAN PENELITIAN 3.1 Proses kerja sistem... 20
3.2 Diagram Komunikasi ... 20
3.2.1 Diagram Blok ... 20
3.2.2 Diagram Alir Utama Pada ESP 8266 12E ... 22
3.3 Perancangan Perangkat keras ... 23
3.3.1 Perancangan Rangkaian ... 23
3.4 Perancangan Layout Perangkat Lunak pada Android ... 24
3.4.1 Tab 1 berisi Kontrol Warna ... 25
3.4.2 Tab 2 berisi Pengaturan Alarm ... 25
3.4.3 Tab 3 berisi Pengaktifan fading ... 27
3.5 Uploading program ESP 8266 dengan Android IDE ... 28
3.5.1 Pengkabelan ESP 8266 12E ke USB to TTL ... 27
3.6 Perancangan penyimpanan data EEPROM pada ESP 8266 12E ... 29
3.7 Perancangan pengiriman data Single IP dan Double IP Address ... 30
3.7.1 Pengendalian satu lampu (Single IP Address) ... 30
3.7.2 Pengendalian lampu secara bersamaan (Double IP Address) ... 31
3.8 Perancangan proses sinkronasi waktu Android ke RTC ... 31
BAB IV HASIL DAN PEMBAHASAN 4.1 Bentuk Fisik Lampu RGB Alarm ... 33
4.2 Penempatan posisi komponen ... 34
4.3 Pengujian Sistem Penyalaan Warna ... 36
4.4 Pengujian Sub Sistem ... 37
xiv
4.4.2 Pengujian sistem alarm dan sinkronasi waktu ... 38
4.4.3 Pengujian fading ... 45
4.5 Pengujian jarak jangkauan kontrol ... 48
4.6 Pengukuran tegangan setiap led ... 50
BAB V KESIMPULAN 5.1 Kesimpulan ... 51
5.2 Saran ... 51
DAFTAR PUSTAKA ... ... 52
xv
DAFTAR GAMBAR
Halaman
Gambar 1.1 Tab Kontrol Manual ... 1
Gambar 2.1 Tombol Baca IP ... 1
Gambar 2.2 Tab Setting Alarm ... 2
Gambar 2.3 Tab Fading led... 2
Gambar 2.4 Tab Fading led ... 2
Gambar 2.5 Kontroler Led RGB... 3
Gambar 2.6 Power Supply 5v 2a ... 3
xvi
DAFTAR TABEL
Halaman
Tabel 4.1 Keterangan part lampu ... 35
Tabel 4.2 Pengujian warna ... 36
Tabel 4.3 Pengujian alarm ... 37
Tabel 4.4 Percobaan fading ... 39
Tabel 4.5 Pengujian jarak kontrol ... 39
xvii
LAMPIRAN
Halaman
L1Program esp-8266 dengan software arduino ide ... L2
L2 Program Android ... L108
L3 Program Tab 1 (kontrol manual) ... L109
L5 Program Tab 2 (alarm)... L119
L6 Program Tab 3 (fading)... L170
L7 Layout Main Activity ... L173
L8 Layout Main Activity Tab 1 ... L173
L9 Layout Main Activity Tab 2 ... L178
1
BAB I
PENDAHULUAN
1.1
. Latar Belakang
Seiring perkembangan desain interior pada sebuah arsitektur rumah, maka kebutuhan
akan pencahayaan lampu pada suatu interior menjadi pilihan yang sangat dipertimbangkan
pada rumah-rumah modern, sebab warna cahaya lampu mampu memberi suasana yang
berbeda pada setiap ruangan yang berbeda pula, misalkan pada ruang tamu akan lebih cocok
dengan lampu berwarna putih, ruang keluarga cocok dengan lampu berwarna kuning, ruang
santai cocok dengan lampu berwarna biru atau hijau, dan warna kombinasi lain.
Kebutuhan penyesuaian pencahayaan lampu dapat berbeda-beda seiring aktifitas
manusia yang berbeda dalam ruangan, maka untuk memenuhi keperluan tersebut, penulis berusaha membuat lampu otomatis ini bernama “RGB Alarm”, beberbasis wireless mikrokontrol ESP 8266 12E yang diprogram menggunakan software berbasis Java yaitu
Arduino IDE, dimana cahaya lampu dapat dirubah warna secara manual dan kelebihan dari lampu yang penulis buat dibandingkan dengan lampu yang sudah ada dipasaran adalah
lampu RGB Alarm ini dapat berubah warna secara otomatis pada jam tertentu setiap harinya
berdasarkan jadwal penyalaan yang telah diatur sebelumnya dan dapat dikendalikan secara
individu maupun bersama-sama melalui aplikasi yang dipasang pada platform android,
aplikasi ini penulis buat menggunakan software Android Studio IDE yaitu pengembang aplikasi berbasis Java pada platform Andoid.
1.2. Tujuan dan Manfaat Penelitian
Tujuan :
1. Membuat lampu bernama RGB Alarm dengan wireless mikrokontrol ESP-8266
12E sebagai pengendali utama lampu.
2. Menciptakan warna penyalaan led sesuai dengan warna yang diperintahkan
berdasarkan warna decimal code RGB.
3. Menciptakan fitur tambahan berupa pemprograman alarm.
4. Dapat megendalikan kedua ESP-8266 pada masing-masing lampu secara
bersamaan melalui aplikasi android yang dibuat.
2
1. Dengan adanya fitur alarm pada lampu RGB Alarm, maka penghuni rumah tidak
perlu mengganti warna lampu secara manual karena sudah diatur sebelumnya.
2. Menciptakan pencahayaan warna yang tepat pada waktu yang dibutuhkan pada
suatu ruangan.
3. Menghemat waktu pengendalian lampu karena lampu dapat dikendalikan secara
bersamaan.
1.3. Batasan Masalah
1. Memanfaatkan PWM output pada ESP-8266 12E sebagai kontrol kecerahan
untuk setiap Led R,G,B.
2. Menggunakan RTC DS-1307 sebagai penghitung waktu ketika power lampu
dimatikan.
3. Memanfaatkan EEPROM internal ESP 8266 12E untuk meyimpan Alarm.
4. Menetapkan ESP 8266 12E sebagai Client pada jaringan agar Server dapat mengirimkan data yang diperlukan untuk 2 lampu.
5. Menetapkan Android sebagai Server agar sistem aplikasi kontrol lampu dapat dengan mudah membagi pengiriman data ke ESP 8266 12E baik multi IP address atau pada single IP address.
1.4. Metodologi Penelitian
Berdasarkan pada tujuan yang ingin dicapai metode-metode yang digunakan dalam
penyusunan tugas akhir ini adalah:
1. Studi literatur,yaitu dengan cara mendapatkan data dengan membaca buku-buku
dan jurnal-jurnal yang berkaitan dengan permasalahan yang dibahas dalam tugas
akhir ini.
2. Dokumenter, yaitu dengan mendapatkan sumber infomasi berdasakan data atau
arsip yang telah ada sehingga dapat membantu penulis dalam mengerjakan tugas
akhir ini.
3. Eksperiment, yaitu dengan langsung melakukan praktek maupun pengujian
tehadap hasil pembuatan alat dalam pembuatan tugas akhir ini
4. Perancangan subsistem hardware. Tahap ini bertujuan untuk mencari bentuk model yang optimal dari sistem yang akan dibuat dengan mempertimbangkan
3
5. Pembuatan subsistem hardware. Alat akan bekerja setelah esp 8266 12E mendapat data masukan dari kontrol android melalui wifi.
6. Proses pengambilan data. Pengambilan data dilakukan dengan cara
mengubah-ubah warna pada lampu. Data yang diambil adalah nilai frekuensi atau nilai
desimal dari keluaran PWM.
7. Analisis dan penyimpulan hasil percobaan. Analisis data dilakukan dengan
membandingkan hasil warna lampu pada 3 output pwm value R,G,B pada esp
8266 dengan data decimal code RGB pada gambar 1.1, untuk mendapatkan 3 data
pwm R,G,B pada esp 8266 dilakukan dengan melihat melalui serial monitor
komputer yang sudah terhubung dengan esp 8266 melalui usb serial.
4
BAB II
DASAR TEORI
Bab ini menjelaskan tentang dasar teori dan penjelasan detil peralatan yang
digunakan. Hal yang akan dibahas adalah led RGB, ESP 8266, RTC DS1307, ULN 2003,
Switching power supply, PWM, model warna RGB, WIFI, Access Point, sistem keamanan
WLAN.
2.1. High Power led RGB
Lampu led yang digunakan seperti gambar 2.1, merupakan lampu RGB yang
memiliki 3 buah led dalam satu kemasan.
Gambar 2.1 Led RGB [1
2.2. ESP 8266
ESP 8266 12E adalah module wifi yang banyak dipakai sebagai media komunikasi pada aplikasi mikrokontroler yang memiliki kecepatan frekuensi wireless sebesar 2.4G
5
Mb, module ini memiliki 11 pin GPIO dan satu input ADC 10bit, bentuk module pada
gambar 2.3. Fungsi pin yang terdapat pada esp 8266 gambar 2.3 sebagai berikut:
1. GPIO 0 : I/O, PWM
2. TXDO : UART flash programming (GPIO 1)
3. GPIO 2 : I/O, PWM, UART flash programming
4. RXDO : UART flash programming (GPIO 3)
5. GPIO 4 : I/O, PWM, SDA
6. GPIO 5 : I/O, PWM, SCL
7. SCLK : I/O, GPIO 6
8. MISO : I/O, GPIO 7
9. MOSI : I/O, GPIO 8
10.GPIO 9 : I/O, PWM
11.GPIO 10 : I/O, PWM
12.CSO : I/O, GPIO 11
13.GPIO 12 : I/O, PWM
14.GPIO 13 : I/O, PWM
15.GPIO 14 : I/O, PWM
16.GPIO 15 : I/O, PWM
17.GPIO 16 : I/O, PWM
18.ADC : Analog to digital input (10 bit)
19.ENABLE : Chip enable, High:on, Low:off
20.RESET : Reset signal (Low voltage level:Active)
21.VCC : 3.3v power
6
Gambar 2.3. ESP 8266 12E module.
Gambar 2.4. ESP 8266 12E Blok Diagram [2].
Blok diagram pada esp 8266 12E pada gambar 2.4.
Seiring pengembangannya kini pemprograman ESP 8266 12E bisa dilakukan melalui software arduino IDE untuk memudahkan dalam pengendalian I/O.
2.3 RTC DS1307
RTC kepanjangan dari Real-Time Clock mempunyai clock sumber sendiri dan
internal batery untuk menyimpan/menjalankan data waktu (detik, menit, jam) dan kalender
(hari, bulan, tahun). Sehingga microcontroller dengan mudah mengambil data pemwaktuan
melalui komunikasi i2c pada RTC, kelebihan dari penggunaan RTC ini adalah jika
mikrokontroler mati maka waktu dan tanggal akan tetap berjalan karena terdapat baterai 3v
sebagai backup daya pada RTC. Salah satu RTC yang sudah populer dan mudah
penggunaanya adalah DS1307, komunikasi yang digunakan pada RTC menuju mikrokontrol
7
Gambar 2.5 RTC ds1307 [3].
2.4 ULN2003
Pada gambar 2.6 terlihat didalam ic ULN2003 terdapat 8 buah Darlington Transistor
Arrays, memiliki daya 500mA per driver, dilengkapi clamp dioda yang berfungsi sebagai
dioda flyback untuk beban induksi seperti relay/switching, pada aplikasi lain biasa
digunakan sebagai kontrol kecerahan pada led dan kontrol motor stepper.
Gambar 2.6 Blok diagram [4].
2.5
Switching Power Supply
Power supply yang digunakan adalah type switching penurun tegangan AC 220v
8
Gambar 2.7 Switching Power Supply AC-DC 5v.
2.6. PWM (Pulse Witdh Modulation)
Pulse Width Modulation (PWM) secara umum adalah sebuah cara memanipulasi
lebar sinyal yang dinyatakan dengan pulsa dalam satu periode, untuk mendapatkan tegangan
rata-rata yang berbeda. Bebarapa contoh aplikasi PWM adalah pemodulasian data untuk
telekomunikasi, pengontrolan daya atau tegangan yang masuk ke beban, regulator tegangan,
audio effect dan penguatan, serta aplikasi-aplikasi lainnya. Aplikasi PWM berbasis mikrokontroller biasanya berupa pengendalian kecepatan motor DC, pengendalian motor
servo, dan pengaturan nyala terang LED.
Gambar 2.8. Duty Cycle [5].
Sinyal PWM pada umumnya memiliki amplitude dan frekuensi dasar yang tetap,
namun memiliki lebar pulsa yang bervariasi. Lebar pulsa PWM berbanding lurus dengan
9
gelombang yang tetap namun duty cycle bervariasi antara 0% hingga 100% seperti gambar 2.8.
PWM merupakan salah satu teknik untuk mendapatkan sinyal analog dari sebuah
piranti digital. Sebenarnya sinyal PWM dapat dibangkitkan dengan banyak cara, secara
analog menggunakan IC op-amp atau secara digital. Secara analog setiap perubahan
PWM-nya sangat halus, sedangkan secara digital setiap perubahan PWM dipengaruhi oleh resolusi
PWM itu sendiri. Resolusi adalah jumlah variasi perubahan nilai dalam PWM tersebut.
Misalkan suatu PWM memiliki resolusi 8 bit, berarti PWM ini memiliki variasi perubahan
nilai sebanyak 256 variasi mulai dari 0 – 225 perubahan nilai yang mewakili duty cycle 0% – 100% dari keluaran PWM tersebut.
2.7. Model Warna RGB
Model warna RGB adalah model warna berdasarkan konsep penambahan kuat
cahaya primer yang terdiri dari 3 warna berbeda yaitu merah, hijau, dan biru. Dalam sistem
komputer warna tersebut mempunyai nilai value dari 0-255 dimana 0 adalah tidak ada
cahaya, dan 255 adalah intensitas cahaya maksimum. Ketiga warna tersebut jika
dikolaborasikan akan menciptakan warna yang berbeda dapat dilihat pada ilustrasi gambar
2.9 tercipta 3 warna baru yaitu yellow, magenta, dan cyan.
Gambar 2.9. Penggabungan warna [6].
Penggabungan warna pada RGB dapat menciptakan lebih banyak warna baru dengan
10
Gambar 2.10 Kolaborasi intensitas warna primer [6].
2.8. WIFI (Wireless Fldelity)
Istilah WIFI diciptakan oleh sebuah organisasi bernama WIFI alliance yang bekerja menguji dan memberikan sertifikasi untuk perangkat-perangkat WLAN [7]. Teknologi
WLAN menggunakan standar radio 802.11 yang sekarang disebut sebagai WIFI secara
umum, yang telah menjadi teknologi yang handal dan penggunaan yang semakin luas.
Perangkat wireless diuji berdasarkan kesesuaian fungsi terhadap penggunaanya dengan perangkat-perangkat wireless lain yang menggunakan standar yang sama. Setelah diuji dan lulus, maka perangkat tersebut diberi sertifikasi “WIFI certified”. Artinya perangkat ini dapat bekerja dengan baik dengan perangkat WIFI lain yang juga bersertifikasi. WIFI sudah
banyak digunakan di berbagai sektor seperti bisnis, akademis, perumahan, dan masih banyak
lagi. Teknologi WIFI ini dapat juga digunakan untuk kegiatan memindahkan partisi data
secara cepat.
2.9.
Wireless
LAN
11
penerimaan menggunakan frekuensi yang sama. Nama populer dari wireless LAN adalah
Wireless Fidelity (Wi-Fi).
Accesspoint merupakan peralatan pada wireless LAN yang berfungsi untuk menyebarkan sinyal wireless (beacon) sehingga peralatan wirelessclient dapat mendeteksi
beacon [7]. Sinyal yang berasal dari wirelessclient dikenal dengan istilah probe. Jarak antara
wirelessclient dan accesspoint akan mempengaruhi datarate. Semakin dekat dengan
accesspoint, maka wirelessclient akan mendapatkan datarate yang lebihtinggi. Satu kosa kata cukup penting dalam jaringan nirkabel adalah ServiceSetIdentifier (SSID). SSID merupakan pengenal dari sebuah accesspoint yang menandakan kita sedang tergabung dengan jaringan yangfrekuensi radionya dipancarkan oleh accesspoint tertentu.
Wireless LAN memiliki beberapa standar yang diatur dalam IEEE802.11. Semua peralatan nirkabel harus mengikuti salah satu atau lebih dari standar yang ada. Standar ini
mengatur operasi dari wireless LAN hanya pada physical layer dan data linklayer dari OSI. Beberapa standar dari wireless LAN adalah [7]:
1. 802.11b. Standar ini mendefinisikan wireless LAN untuk beroperasi pada frekuensi 2,4 GHz. Standar ini memiliki 14 channel, tetapi jika terjadi overlapping, maka harus cakupan area yang overlapped harus berbeda minimal 5 channel sehingga pada umumnya channel yang kerap digunakan adalah channel 1, 6, dan 11. Peralatan yang beroperasi pada standar 802.11b menggunakan modulasi Direct Sequence Spread Spectrum (DSSS). Transferrate yang mungkin untuk modulasi ini adalah 1, 2, 5,5 dan 11 Mbps. Semakin dekat dengan access point, maka semakin baik transferrate yang didapatkan.
2. 802.11g. Standar ini dibangun dari 802.11b dengan perbaikan pada transferrate yang lebih baik. Implikasinya, peralatan nirkabel yang beroperasi pada standar 802.11g
memiliki backward compatibility dengan 802.11b. Perbedaan kedua buah standar ini adalah 802.11g menggunakan modulasi Orthogonal Frequency Division Multiplexing
(OFDM). Peralatan dapat memiliki transferrate dengan variasi 6, 9, 12, 18, 24, 36, 48, dan 54 Mbps. Namun jika pada satu SSID terdapat pengguna dengan peralatan nirkabel
802.11b, maka pengguna dengan peralatan nirkabel 802.11g akan menyesuaikan dengan
12
3. 802.11a. Standar ini menggunakan frekuensi 5 GHz. 802.11a memiliki empat
overlappingchannel. Transferrate pada standar ini adalah 6, 9, 12, 18, 24, 36, 48, dan 54 Mbps.
4. 802.11n. Standar ini merupakan pengembangan dari standar 802.11g. Peralatan yang
bekerja pada standar ini menggunakan modulasiMultiple-In Multiple-Out
(MIMO).(Felix ,2010)
2.10. Pengertian IEEE 802.11
Jaringan Wireless adalah jaringan tanpa kabel (nirkabel) yang artinya proses
penyampaian data dilakukan melalui udara dengan memanfaatkan gelombang
elektromagnetik. Karena menggunakan gelombang radio sebagai media transmisi datanya,
maka komponen wireless yang akan Anda gunakan harus memiliki standart frekuensi yang
sama. Sehingga walaupun berbeda vendor pembuatnya komponen wireless tersebut tetap
dapat berkomunikasi asalkan menggunakan standar frekuensi yang sama. Standarisasi
Jaringan Wireless didefinisikan oleh IEEE (institute of Electrical and Electronics
Engineers) [8].
IEEE (Institute of Electrical and Electronic Engineers) merupakan institusi yang
melakukan diskusi, riset dan pengembangan terhadap perangkat jaringan yang kemudian
menjadi standarisasi untuk digunakan sebagai perangkat jaringan.
Standar dari IEE meliputi [8]:
1. 802.1 → LAN/MAN Management and Media Access Control Bridges
2. 802.2 → Logical Link Control (LLC)
3. 802.3 → CSMA/CD (Standar untuk Ehernet Coaxial atau UTP)
4. 802.4 → Token Bus
5. 802.5 → Token Ring (bisa menggunakan kabel STP)
6. 802.6 → Distributed Queue Dual Bus (DQDB) MAN
7. 802.7 → Broadband LAN
8. 802.8 → Fiber Optic LAN & MAN (Standar FDDI)
9. 802.9 → Integrated Services LAN Interface (standar ISDN)
10. 802.10 → LAN/MAN Security (untuk VPN)
11. 802.11 → Wireless LAN (Wi-Fi)
12. 802.12 → Demand Priority Access Method
13
14. 802.16 → Broadband Wireless Access (standar untuk WiMAX)
Standarisasi Jaringan Wireless meliputi [8]:
1. IEEE 802.11 Legacy yaitu standart jaringan wireless pertama yang bekerja pada
frekuensi 2,4 GHz dengan kecepatan transfer data maksimum 2 Mbps.
2. IEEE 802.11b yaitu standart jaringan wireless yang masih menggunakan frekuensi
2,4 GHz dengan kecepatan trasfer datanya mencapai 11 Mbps dan jangkau sinyal
sampai dengan 30 m.
3. IEEE 802.11a yaitu standart jaringan wireless yang bekerja pada frekuensi 5 GHz
dengan kecepatan transfer datanya mencapai 58 Mbps.
4. IEEE 802.11g yaitu standart jaringan wireless yang merupakan gabungan dari
standart 802.11b yang menggunakan frekuensi 2,4 GHz namun kecepatan transfer
datanya bisa mencapai 54 Mbps.
5. IEEE 802.11n yaitu standart jaringan wireless masa depan yang bekerja pada
frekuensi 2,4 Ghz dan dikabarkan kecepatan transfer datanya mencapai 100-200
Mbps.
2.11. Access Point
Access Point atau yang lebih sering disebut dengan istilah AP merupakan sebuah perangkat penghubung antara jaringan wire dengan wireless. Maksudnya sebuah AP akan bertugas mengubah data yang lalu lalang di media kabel menjadi sinyal-sinyal radio yang
dapat ditangkap oleh perangkat wireless. AP akan menjadi gerbang bagi jaringan wireless
untuk dapat berkomunikasi dengan dunia luar maupun dengan antarsesama perangkat
wireless di dalamnya. Biasanya pada perangkat AP terdapat satu atau lebih interface untuk media kabel. Interface media kabel tadi akan di-bridging oleh AP tersebut ke dalam bentuk sinyal-sinyal radio, sehingga perangkat wireless dengan kabel tadi dapat terkoneksi.
Access Point sangat dibutuhkan jika ingin membuat sebuah infrastruktur jaringan
wireless. Dengan menggunakan AP, maka sebuah jaringan komunikasi akan terbentuk tidak hanya dua atau tiga perangkat saja yang dapat berkomunikasi tetapi cukup banyak yang dapat
saling berbicara dengan perantara sinyal radio ini.
Pengaplikasian AP yang banyak dilakukan saat ini adalah melakukan pembagian
14
banyak orang. Namun jika ingin membangun koneksi hanya dengan sebuah perangkat
wireless lainnya, AP tidaklah mutlak diperlukan. Untuk dapat mengoperasikan perangkat
wireless dalam mode peer-to-peer atau yang lebih dikenal dengan istilah mode Ad-Hoc. Tetapi, kekurangan dari komunikasi mode Ad-Hoc ini adalah tidak dapat membangun
jaringan wireless yang luas karena memang sifatnya yang Point-to-Point.
Sistem WLAN, terlepas dari keterbatasan perangkat AP, dapat melayani pengguna
dalam jumlah yang tidak terbatas. Para penggunanya dapat menambahkan AP baru jika
memang jumlah pengguna yang akan dilayaninya semakin membengkak. Dengan memasang
banyak AP, maka banyak sekali keuntungan yang didapat. Hal ini memanjakan
pengguna jaringan wireless dengan bandwidth yang lega, pengguna juga dapat bebas berkeliaran di manapun merekasuka karena area coverage-nya sudah pasti lebih luas, dan jumlah pengguna yang dapat dilayani oleh jaringan ini juga lebih banyak. Jadi sebenarnya
sistem WLAN tidak pernah memberikan batasan berapa banyak yang dapat terkoneksi ke
sebuah jaringan wireless. Semua tergantung pada kemampuan dan fasilitas perangkatnya. Gambar 2.11 adalah topology dari AP yang menghubungkan 3 komputer ke server jaringan.
Gambar 2.11 AP topology [8].
2.12. Server
Server adalah suatu sistem komputer yang menyediakan berbagai macam jenis-jenis
layanan tertentu yang di tujukan untuk client dalam suatu sistem jaringan komputer. Server
dilengkapi oleh sistem operasi (OS) yang khusus untuk mengontrol ataupun memonitor
akses dan juga sumber daya yang terdapat di dalamnya. Lalu selain itu server didukung oleh
prosesor yang bersifat scalable serta RAM yang berkapasitas besar, dan dilengkapi oleh
sistem operasi yang khusus, disebut sebagai sistem operasi jaringan komputer. Server juga
menjalankan perangkat-perangkat lunak administratif yang mengontrol akses terhadap
15
pencetak, dan memberikan akses kepada stasiun kerja anggota-anggota jaringan
komputer.
Gambar 2.12 adalah topology dari server sebagai penyedia data yang dibutuhkan
client.
Gambar 2.12 Server-Client topology [8].
2.13. Client
Client adalah komputer yang terdapat dalam jaringan komputer, yang menggunakan
berbagai macam sumber daya yang telah disediakan oleh server. Bisa juga definisi client
adalah Pemakai layanan server. Pada prinsipnya client dan server merupakan suatu sistem
yang merupakan aplikasi pada jaringan komputer yang saling terhubung atau berhubungan.
Gambar 2.13 adalah aktifitas client ketikan terhubung ke server penyedia data yang
dibutuhkan client.
Gambar 2.13 Client-server topology [8].
2.14. Sistem Keamanan WLAN
Untuk itu, ada beberapa teknik yang dapat digunakan untuk lebih mempersulit para
16
dari Wired Equivalent Privacy [10]. WEP menggunakan sistem enkripsi untuk memproteksi pengguna WLAN dalam level yang paling dasar. WEP memungkinkan administrator
jaringan wireless membuat encription key yang akan digunakan untuk mengenkripsi data sebelum dikirimkan melalui jalan udara. Encription key ini biasanya dibuat dari 64 bit key
awal dan dipadukan dengan algoritma enkripsi RC4. Ketika fasilitas WEP diaktifkan, maka
semua perangkat wireless (AP dan client) yang ada di jaringan harus dikonfigurasi dengan menggunakan key yang sama.
Hak akses dari seseorang atau sebuah perangkat akan ditolak jika key yang dimasukkan tidak sama. • WIFI Protected Access atau disingkat dengan istilah WPA, merupakan teknik pengaman jaringan wireless LAN yang diklaim lebih canggih dari WEP. Dengan disertai teknik enkripsi yang lebih advanced dan tambahan pengaman berupa otentikasi dari penggunanya, maka WPA akan jauh lebih hebat mengamankan pengguna WLAN. • 802.1x, Teknik pengaman yang satu ini akan mengharuskan semua pengguna jaringan wireless untuk melakukan proses otentikasi terlebih dahulu sebelum dapat bergabung dalam jaringan. Sistem otentikasinya dapat dilakukan dengan banyak cara, namun
sistem otentikasi menggunakan pertukaran key secara dinamis. Sistem pertukaran key secara dinamis ini dapat dibuat dengan menggunakan Extensible Authentication Protocol
(EAP).
2.15.
Hypertext Transfer Protocol (HTTP)HTTP adalah protokol jaringan untuk didistribusikan, kolaboratif, sistem informasi hypermedia, HTTP adalah dasar dari komunikasi data untuk World Wide Web. Protokol
yang mendasari oleh World Wide Web. Dalam pengertian HTTP menetapkan bagaimana
pesan diformat dan ditransmisikan, dan apa tindakan dari Web server dan browser sebagai
respon pada berbagai perintah [8].
2.15.1 Cara kerja HTTP Komunikasi Client dan Server
Klien HTTP seperti web browser terhubung ke server HTTP yang umumnya berjalan
pada port 80. Server HTTP pada gilirannya menginterpretasikan permintaan, memprosesnya
17
Pesan Khas HTTP [8]:
1. Request line (Permintaan baris)
2. HTTP Headers
3. Empty line (Baris Kosong)
4. Optional (pilihan) message body.
Metode Permintaan Klien HTTP[8]:
a. HEAD
Metode ini meminta informasi dari server sama halnya metode yang dilakukan
GET, perbedaan mendasar adalah respon metode HEAD tidak mengandung respon
body.
b. GET
Metode ini meminta sumber daya dari web server. Metode GET adalah salah satu
metode yang paling umum digunakan di web sekarang ini
c. POST
Metode POST menyerahkan data ke web server untuk diproses.
d. PUT
Upload sumber daya tertentu ke server HTTP.
e. DELETE
Menghapus sumber daya tertentu dari web server.
f. TRACE
Metode ini menggemakan kembali permintaan yang diterima sehingga klien HTTP
dapat melihat apa server menengah menambahkan atau mengubah permintan.
g. OPTIONS
Metode ini membantu menentukan fungsi server seperti menentukan metode mana
18
h. CONNECT
Metode connect mengubah Permintaan koneksi ke terowongan TCP / IP
transparan. Hal ini membantu memfasilitasi Secure Socket Layer (SSL)
berkomunikasi (HTTPS) melalui proxy HTTP yang tidak terenkripsi.
Skenario komunikasi HTTP sederhana
Gambar 2.14 Client Request
1. Gambar 2.14 HTTP klien membuat sambungan dan mengirim metode permintaan ke web server.
Gambar 2.15 Server mencari informasi
2. Gambar 2.15 HTTP server memproses permintaan klien, sementara klien menunggu respon dari server.
19
3. Gambar 2.16 Web server merespon dengan kode status dan data (jika tersedia) dan menutup sambungan.
2.16. APK file
APK adalah file mentah dari aplikasi android yang memiliki kepanjangan dari
Application Package File yaitu format berkas yang digunakan untuk mendistribusikan dan memasang software dan middleware ke ponsel dengan sistem operasi Android [9].
Didalam APK memiliki bagian file yang menjadi fondasi dalam sebuah apk.
Beberapa strukturnya antara lain:
1. AndroidManifest.xml
Pada file ini terdapat sebuah deskripsi dari berbagai perintah dan informasi file
lainnya. Sebagai master ke sub sistem.
2. Build.xml
File ini adalah sebuah script yang tugasnya mengkompile dan menginstalnya dalam
sistem operasi android.
3. Bin/
Pada file bin terdapat hasil APK.
4. Res/
Didalam Res file terdapat berbagai sumber komponen, seperti GUI, User
interference, layout, string gambar dan parameter tampilan lain yang akan
ditampilkan pada layar aplikasi.
5. Scr/
Didalam src terdapat tempat Activity, direktori inilah ynag menjadi sumber class
Activity, yang akan terakses ketika ada data imputan yang masuk.
6. Assets/
Memuat file static yang dikemas dalam aplikasi untuk device.
BAB III
RANCANGAN PENELITIAN
3.1. Proses kerja sistem
Sistem Lampu RGB ini akan mulai bekerja ketika mendapat supply 5v, lampu rgb
akan menyala setelah perintah dikirimkam melalui remote android, yang meliputi
pengaturan warna, hidup/mati lampu, dan pengaturan alarm. Lampu ini akan menyimpan
20 Mosfet
Mosfet 2 Mosfet 3 Transistor 1
dipadamkan maka lampu akan menyimpan semua pengaturan yang akan dijalankan kembali
ketika tegangan lampu dihidupkan kembali.
3.2. Diagram Komunikasi
Gambar 3.1. adalah gambar diagram blok yang menggambarkan tentang alur
komunikasi yang terjadi antara lampu RGB Alarm (blok merah) dengan android (blok biru)
melalui wifi dengan menggunakan topology Server-Client, dimana android sebagai Server
dan lampu RGB Alarm adalah Client.
wifi
Gambar 3.1 Blok komunikasi
Diagram blok merah adalah rangkaian sistem pada bagian lampu dan blok biru adalah
perangkat android yang berisi aplikasi android yang akan mengirimkan data ke lampu
melalui wifi.
3.2.1 Diagram Blok
Gambar 3.2. adalah gambar diagram blok besar yang menggambarkan tentang alur
kerja 2 buah lampu, pada satu buah lampu terdapat mikrokontroler esp 8266 sebagai
pengontrol utama lampu RGB, IC uln2003 digunakan sebagai driver led dari output sinyal
pwm esp 8266, RTC DS 1307 dapat disesuaikan waktunya melalui android dengan menekan
satu tombol di android yang akan mengirimkan data jam dan hari sesuai dengan
waktu pada perangkat android.
Lampu 1
Lampu RGB ALARM
Android
Led Red Led Green Led Blue
21 Mosfet
Mosfet 2 Mosfet 3 Transistor 1
Lampu 2
Gambar 3.2 Diagram blok besar system
3.2.2 Diagram Alir Utama Pada ESP 8266 12E
ESP-8266 Supply 5v
Android RTC
ESP-8266
Led Red Led Green Led Blue
Supply 5v
RTC
Kalibrasi waktu denganAndroid Kalibrasi waktu denganAndroid
22
Gambar 3.3. Diagram alir utama
Diagram alir utama ESP 8266 12E ditunjukan pada gambar 3.3. Program utama pada
esp8266 12E menunjukan proses mikrokontroler secara keseluruhan. Setelah start, program akan membaca inisialisasi terhadap port-port mikrokontroler yang digunakan untuk proses pengendalian alat. Proses pertama yaitu membaca value PWM dan data alarm yang
tersimpan pada eeprom memori untuk kemudian dilakukan eksekusi data ke output. Proses
kedua adalah menunggu data yang dikirim melalui android yang meliputi data PWM dan
alarm. Program dilengkapi kalibrasi RTC dimana jika pewaktuan RTC tidak sesuai maka
akan sistem akan mensinkronasi sesuai jam dan tanggal pada android.
3.3. Perancangan Perangkat keras
23
Gambar 3.5 Blok sistem
Perancangan alat ini terdiri dari beberapa bagian utama, yaitu wireless
mikrokontroler esp 8266, RTC, transistor driver, led RGB. Wireless mikrokontroler esp
8266 12E berfungsi untuk mengatur dan memproses data dan untuk menerima dari yang
dikirimkan dari android melalui sinyal wifi. Fungsi RTC adalah sebagai penghitung waktu
berjalanya alarm ketika power lampu dimatikan, fungsi transistor sebagai penguat arus dari
output digital esp 8266 12E ke led RGB, dan lampu RGB yang digunakan adalah type single
high power RGB led 3 watt.
3.3.1 Perancangan Rangkaian
Pada gambar 3.6 merupakan rancangan rangkaian board utama pada lampu RGB
alarm, esp 8266 12E disuplay oleh regulator 3.3v, keluaran driver uln2003 menuju led adalah
negatif. Teg maximum led adalah 4v untuk mengurangi tegangan supply 5v yang menuju
24
Gambar 3.6 Rangkaian board utama
3.4
Perancangan Layout Perangkat Lunak pada Android
Pada gambar 3.7 adalah desain dari tab kontrol untuk mengubah warna lampu,
lingkaran warna besar adalah lokasi pick colour apabila disentuh maka lampu RGB akan menyala sesuai warna yang disentuh.
25
Gambar 3.7 Tab1 Kontrol Warna
3.4.2 Tab 2 berisi Pengaturan Alarm
Tab2 Alarm pada gambar 3.8 adalah rancangan pengaturan RGB Alarm, dimana pada
tab2 ini dapat melakukan pengaturan penyalaan lampu pada jam yang kita inginkan dengan
penyalaan warna yang dapat diubah-ubah setiap jamnya, cakupan hari yang dapat diatur dari
senin-minggu dan pada satu hari disediakan 5 kolom perintah waktu untuk kemudian alarm
akan dieksekusi berurutan sesuai berjalanya waktu pada RTC. Misalkan pada gambar 3.8
lampu RGB telah diset Alarm pada hari senin lampu akan menyala pada jam 12.52 berwarna
merah dan akan berganti warna ketika jam 15.54 dengan warna biru, untuk mematikan lampu
dengan cara mengubah warna penyalaan berwarna hitam.
Terdapat tombol sinkronasi watktu pada tab 2 ini, fungsinya untuk melakukan
penyamaan waktu pada RTC dengan waktu jam dan hari pada Android.
Tab 3 berisi Fading kontrol
Tab 2 Berisi pengaturan Alarm
On-Off lampu manual
Pengubah warna lampu manual
Penampil value RGB Red Seekbar manual
Green Seekbar manual
Blue Seekbar manual
26
Gambar 3.8 Tab2 Pengaturan Alarm
Baca data alarm dari lampu
Kirim pengaturan alarm Alarm Senin aktif
Pewaktuan Alarm yang di atur
Jendela Pick Colors Alarm
Tekan kembali setelah pick color
AreaPick Colors sentuh warna yang diinginkan Warna sample yang dipilih
27
3.4.3 Tab 3 berisi Pengaktifan fading
Pada gambar 3.9 adalah tab3 Spesial, memiliki fungsi untuk fading led yaitu led akan
fading berurutan mulai dari, merah, hijau, biru, dan kemudian mengulang dari merah lagi,
untuk digunakan sebagai lampu hias. Ketika tombol fade led ditekan, maka lampu akan seketika
fading dan mengabaikan fungsi alarm atau penyalaan sebelumnya, dan ketika tombol fade led ditekan
lagi maka fungsi fading akan non aktif dan fungsi alarm akan berjalan lagi atau kembali ke penyalaan
lampu sebelumnya.
Gambar 3.9 Tab3 Spesial Fading
28
3.5
Uploading program ESP 8266 12E dengan Arduino IDE
Untuk membuat ESP 8266 12E bekerja sesuai yang diinginkan maka penulis
memnggunakan bahasa pemprogaman C dengan menggunakan sofrware Arduino IDE.
Langkah setting parameter untuk ESP 8266 12E agar dapat diprogram pada Arduino IDE
adalah sebagai berikut:
3.5.1 Pengkabelan ESP 8266 12E ke USB to TTL
Lamgkah-langkah untuk me reflash ESP adalah sebagai berikut:
a. Hubungkan Gnd pin ke ground supply.
b. Hubungkan GPIO15 pin ke ground supply.
c. Hubungkan Enable pin pada 3.3v.
d. Hubungkan TXD pin ESP 8266 pada RX pin USB to TTL.
e. Hubungkan RXD pin ESP 8266 pada TX pin USB to TTL.
f. Siapkan push button sebagai penghubung GPIO0 menuju ke GND, push button
akan ditekan ketika power supply 3.3v mulai dihubungkan, sebagai gerbang
pembuka reflash program agar Arduino IDE dapat mengirimkan program yang baru pada ESP.
g.
Sambungkan USB TTL ke port USB komputer, lihat port yang digunakan(COM1).
Konfigurasi pemasangan dapat dilihat pada gambar 3.10
29
3.6
Perancangan penyimpanan data EEPROM pada ESP 8266 12E
Lampu RGB Alarm ini mempunyai fitur yang belum ada pada lampu Smart RGB
yang ada dipasaran yaitu pemprograman alarm, kapasitas penyimpanan pewaktuan warna
lampu membutuhkan EEPROM internal pada ESP 8266 12E sebab ketika power lampu
dimatikan setingan alarm dan warna lampu tidak akan hilang, eeprom ini menjadi acuan
pembacaan data pada program loop ESP 8266. Ilustrasi penyimpanan data warna lampu, hari
dan jam pada gambar 3.11.
Gambar 3.11 Lokasi penyimpanan data Alarm.
EEPROM ESP 8266 12E memiliki eeprom sebesar 1024 byte yang dapat menyimpan
value 0-255 pada setiap byte, pada gambar 3.11 adalah penyimpanan data penyalaan dan
pemadaman lampu, ketika RTC sudah mencapai hari senin jam 7:12, maka lampu akan
menyala berwarna orange berdasarkan kombinasi dari ketiga warna led dan akan padam 2
menit kemudian. Contoh pengalamatan data ke eeprom pada kotak merah gambar 3.22:
1. Address 0 digunakan sebagai penyimpanan value pwm led Merah.
2. Address 1 digunakan sebagai penyimpanan value pwm led Hijau.
3. Address 2 digunakan sebagai penyimpanan value pwm led Biru.
4. Address 3 digunakan sebagai penyimpanan value jam 0-24.
5. Address 4 digunakan sebagai penyimpanan value menit 0-59.
3.7
Perancangan pengiriman data
Single IP
Address
dan
Double IP
30
Lampu RGB ini dikendalikan melalui metode pengiriman data client-server dimana
client lampu RGB dan server adalah perangkat androi, client akan selalu request HTTP pada server dan ketika data dari server terdapat kecocokan data mikrokontroler maka akan ada
aktivitas pengeksekusi data selanjutnya pada mikrokontroler seperti data PWM value
maupun Alarm. Pada gambar 3.12 adalah aktifitas pencocokan data antara client dan server.
Gambar 3.12 Client dan Server
Dari basic gambar 3.12 maka dibuatlah metode komunikasi antara lampu RGB
dengan android.
3.7.1 Pengendalian satu lampu (
Single IP Address
)
Untuk mengendalikan satu lampu saja tanpa mempengaruhi lampu lainnya maka
penulis mensiasatinya dengan pengiriman HTTP respons untuk satu IP saja hal itu
dimaksutkan agar IP lain atau lampu lain tidak ikut terhubung. Gambar 3.13 sistem aplikasi
android mengirimkan satu IP saja pada lampu yang mempunyai IP tersebut.
Gambar 3.13 Single IP ADDRESS 192.168.43.165
Pada gambar 3.13 sistem android mengirimkan data pwm led merah sebesar 255
(R=255) ketika client menerima value R=255 maka sistem mikrikontrol akan
memerintahkan pengubahan value digital output pwm 255 maka led merah akan menyala
maksimum.
31
Pengendalian lampu RGB dapat dilakukan serentak lebih dari satu lampu dengan
melakukan pengaturan pengiriman multi IP pada aplikasi yang dibuat pada perangkat
android. Gambar 3.14 adalah pengiriman dua IP yang dikirim dari android secara berurutan
dari lampu satu kemudian ke lampu dua, dimana lampu satu mempunyai IP Address
192.168.43.165 dan lampu satunya mempunyai IP Address 192.168.1.43.168.
s
Gambar 3.14 Double IP ADDRESS 192.168.43.165 + 192.168.43.165
Pengendalian warna lampu menjadi warna merah secara serentak pada gambar 3.14
adalah dengan mengirimkan value pwm merah sebesar 255 (R=255) pada kedua IP Address
yang berbeda data dikirimkan secara berurutan dari IP terendah ke IP tinggi secara cepat.
3.8
Perancangan proses sinkronasi waktu Android ke RTC
Pencocokan waktu pada RTC dilakukan ketika RTC baru pertama kali digunakan
atau ketika baterai RTC mulai dipasang, karena pewaktuan RTC akan reset atau berhenti
berjalan ketika baterai RTC dilepas, dan akan mengakibatkan alarm tidak sesuai.
Pada gambar 3.15 adalah diagram alir sinkronasi ketika tombol sinkronasi yang
32
Start
Cek kondisi tombol
Tombol sinkronasi
ditekan ? no
Baca data waktu pada system Android
Hari=xx; Jam=xx; Menit=xx; Detik=xx; yes
Kirim ke ESP 8266 Hari=xx; Jam=xx; Menit=xx; Detik=xx; UpdateTime=1;
ESP 8266 baca state Int UpdateTime;
Apakah UpdateTime==1;
?
RTC SetTime
Hari=xx; Jam=xx; Menit=xx; Detik=xx; UpdateTime=0;
yes
Selesai
no
BAB IV
HASIL DAN PEMBAHASAN
Suatu program dapat dikatakan bekerja dengan baik apabila telah disertai dengan
pembuktian terhadap fungsi kerja dari alatan tersebut. Pada bab ini akan membahas tentang
hasil perancangan perangkat keras, perangkat lunak, dan hasil pengujian sistem.
Hasil dari pengujian akan berguna untuk mengetahui sejauh mana keberhasilan
perancangan serta kelebihan dan kekurangan sistem yang telah dibuat. Sehingga hasil
tersebut dapat digunakan sebagai acuan dalam penyempurnaan kinerja, dan dapat digunakan
dalam pengembangan selanjutnya.
4.1
Bentuk Fisik Lampu RGB Alarm
Bentuk lampu memanfaatkan casing lampu led ac 220v 9w yang telah di kosongkan
isinya dan dimasukan komponen seperti power supply, module kontroler, dan lampu led rgb
sebagai lampu RGB Alarm. Gambar 4.1. menunjukkan bentuk dari lampu RGB.
Gambar 4.1. Bentuk fisik lampu RGB dan aplikasi.
Lampu ini digunakan pada rumah fitting ac 220v, ketika sudah terhubung tegangan
ac 220v lampu ini akan menunggu SSID yang tersedia pada jaringan wireless yang bernama
“RGB”, SSID ini akan dipancarkan oleh perangkat android yang digunakan
setelah aplikasi terbuka kemudian centanglah lampu 1 atau lampu 2 maupun keduanya yang
akan dikontrol seperti gambar 4.2.
Gambar 4.2 centang lampu yang akan dikendalikan.
4.2
Penempatan posisi komponen
Komponen yang ada akan dimasukan kedalam rumah lampu yang disusun secara
bertingkat agar muat dimasukan kedalam body lampu. Komponen terdiri dari 3 bagian yaitu
power supply, kontroler, dan led rgb beserta heatsink, setelah disusun kedalam bodi akan
terlihat seperti gambar 4.3.
Gambar 4.3. Lampu RGB Alarm.
Body bekas lampu ini dipakai karena dapat di tempatkan pada fitting lampu ac 220v
pengujian alat karena komponen tersusun rapi dan aman. Urutan penempatan komponen
seperti gambar 4.4 dimana A adalah body lampu sebagai tempat masuk komponen B yaitu
power supply pada bagian bawah, lalu C kontroler lampu, kemudian D led beserta pendingin
alumunium pada bagian atas. Setelah disusun akan terlihat bagian atas pada gambar 4.5.
Gambar 4.4 Komponen yang dimasukan kedalam body lampu.
Gambar 4.5 Komponen disusun bertingkat.
Tabel 4.1 Keterangan part lampu.
Huruf Keterangan
A Body lampu
B Power supply
C Controller
D LED RGB dan pendingin
Pada bagian casing lampu didapat dari lampu led 9w putih yang ada dipasaran, untuk
satu pcb yang kemudian output led kontroler dihubungkan ke led RGB yang sudah diberi
headsink untuk mengurangi padas led ketika led menyala.
4.3
Pengujian Sistem Penyalaan Warna
ESP 8266 merupakan otak utama dari kerja alat. Pengujian sistem yang pertama
adalah dengan membandingkan kesesuaian penyalaan warna lampu dengan warna yang
dikirimkan oleh android. Sample pengujian diambil sebanyak 5 warna yaitu red, green, blue,
yellow, cyan, magenta, white. Pada bagian decimal code angka 255 merupakan nilai
penyalaan led maksimum dan nilai 0 adalah led off.
Hasil perngujian sistem perintah penyalaan warna lampu akan di tunjukan pada Tabel
4.2. Pengujian dilakukan pada tab kontrol manual dengan menggeser 3 buah slider pada
gambar 4.6 , warna dapat diatur sesuai desimal code RGB yang diinginkan.
Gambar 4.6 3 Slider Manual
Tabel 4.2 Pengujian warna.
Percobaan Warna
(Android)
Decimal
Code R,G,B
Warna nyala lampu (foto cahaya lampu)
1 RED 255,0,0
2 GREEN 0,255,0
3 BLUE 0,0,255
Lanjutan Tabel 4.2 Pengujian Alarm
Percobaan Warna
(Android)
Decimal
Code R,G,B
Warna nyala lampu (foto cahaya lampu)
5
MAGENTA 255,0,255
6
WHITE 255,255,255
Hasil percobaan sistem bisa terlihat dari tabel 4.2. Setelah membandingkan warna
cahaya led dengan warna yang dikirimkan oleh perangkat android dapat terlihat bahwa
warna cahaya led sudah sesuai dengan warna yang dikirimkan oleh perangkat android
sebanyak 5 warna.
4.4
Pengujian Sub Sistem
4.4.1
Pengujian pada Tab Kontrol Manual
Pada bagian Tab ini terdapat fasilitas untuk menyalakan/mematikan lampu,
mengubah warna lampu, dan membaca ip yang terhubung. Tampilan tab kontrol manual
pada gambar 4.7.
Pengiriman data warna menuju ke lampu dapat diterima dengan baik pada
masing-masing lampu, tombol on/off berfungsi dengan baik, ip yang masuk pada perangkat android
dapat dilihat dengan menekan tombol “Baca IP Terhubung” sehingga dapat dimasukan
sebagai ip untuk lampu pada kolom pengaturan ip.
4.4.2
Pengujian sistem alarm dan sinkronasi waktu
Pengujian Alarm dilakukan untuk membuktikan bahwa alarm RTC dapat bekerja
dengan baik pada ESP8266. Pengaturan alarm dilakukan pada Tab Setting Alarm di Android
seperti gambar 4.8. Agar sistem alarm dapat berjalan pada lampu, maka pemwaktuan lampu
harus dicocokan dengan waktu pada perangkat android dengan cara menekan tombol
“Sinkronkan” pada aplikasi maka android akan mengirimkan data hari, jam, menit, detik, ke
esp 8266 sebagai setTime untuk RTC. Saat tombo “Sinkronkan” ditekan maka aplikasi akan
mengambil waktu pada perangkat android, code pengambilan waktu seperti gambar 4.8.
Gambar 4.8 Sub Program Pengambilan Waktu pada Android Studio.
Kemudian ketika waktu sudah diperoleh maka selanjutnya adalah melakukan
Gambar 4.9 Sub Program Pengiriman Waktu lampu 1 pada Android Studio.
Gambar 4.10 Sub Program Pengiriman Waktu pada Android Studio.
Tahap pengiriman kalibrasi waktu pada kedua lampu dikirimkan bergantian, ketika
android sudah mengambil data waktu kemudian akan melakukan pengiriman kalibrasi waktu
dimulai dari lampu 1 setelah selesai mengirim baru akan mengirim data waktu ke lampu 2
seperti pada sub program gambar 4.9 dan 4.10, sehingga terdapat perbedaan waktu antara
lampu 1 dengan lampu 2 sekitar 0.5 detik.
Ketika data waktu dikirimkan ke esp 8266 maka program esp 8266 akan membaca
Gambar 4.10 Sub Program Pembacaan data sinkronasi pada Arduino IDE.
Pengiriman data jam pada lampu 1 adalah “192.168.43.165/jam=12”, pada gambar 4.10 “req.indexOf” menyatakan IP yang masuk kemudian ketika menerima string “/jam”
maka dilanjutkan pembacaan string setelah “=”, arti “+1” adalah mulai membaca atau
mengambil data dari baris pertama kemudian selanjutnya, hasilnya adalah “12” (jam 12), kemudian string “12” harus dikonversi menjadi int agar dapat dibaca oleh RTC dengan code konversi “Jam.toInt” setelah itu barulah “rtc.ajust” (pengaturan waktu RTC).
Pada pengiriman data alarm akan diambil sample pada hari jumat, data yang akan
dikirimkan pada satu perintah alarm adalah jam dan menit, code pengiriman pada android
dapat dilihat pada gambar 4.11, pengiriman data ke dua lampu akan dikirimkan satu
persatu pada masing-masing IP “IPlampu1 dan IPlampu2” apa bila kedua lampu di check
Gambar 4.11 Sub Program Tab Setting Alarm pada Android Studio.
Kode penerimaan alarm berupa jam dan menit pada Android IDE dapat dilihat pada
gambar 4.12, pada code ini data alarm akan disimpan pada EEPROM agar ketika lampu
tidak kehilangan data alarm ketika power dimatikan.
Gambar 4.12 Sub Program Tab Setting Alarm pada Android Studio.
Pada gambar 4.12 adalah bagian code untuk satu perintah waktu alarm pada hari
jumat, terdapat 5 perintah pada satu hari, value jam yang akan disimpan adalah pada
tersebut sudah dikonversi kedalam bentuk int, melalui code toInt(); , pada code
EEPROM.commit(); adalah
bagian yang penting karena jika tidak dituliskan demikian maka data yang masuk ke eeprom
tidak akan tersimpan.
Setelah mengatur jam dan waktu maka selanjutnya adalah mengatur warna dengan
menekan image touch kotak kecil yang berada dikanan pengaturan jam seperti gambar 4.14,
jika ditekan maka akan muncul window pilih warna seperti gambar 4.13
Gambar 4.13 Jendela Pilih Warna Alarm
Image pick colour yang berbentuk lingkaran pada gambar 4.13 adalah sebuah file
png yang dapat disentuh untuk memilih warna alarm yang diinginkan, code yang
digunakan untuk mengambil value RGB yang disentuh dari sebuah file .png adalah seperti
gambar 4.14.
Pick colour code pada gambar 4.15 bekerja dengan mendeteksi koordinat x dan y
dari sentuhan tangan dan mengambil warna berdasarkan koordinat yang disentuh dengan
value yang terdiri dari tiga buah warna yaitu merah, hijau, biru. Setelah memilih warna lalu
tekan tombol “kembali”.
Gambar 4.15 Tab Setting Alarm.
Tahap pengujian dapat dilihat pada table 4.15, pengujian dilakukan pada hari
senin-minggu, pada bagian setting waktu terdapat 5 perintah waktu alarm pada satu hari yang
dimulai dari jam 7:00-7:04, 1 perintah awal adalah jam 7:00 dengan penyalaan warna red
artinya lampu akan menyala merah pada jam 7:00, dan setelah perintah 1 sudah dilalui oleh
lampu dengan penyalaan warna dan waktu yang tepat, dapat dinyatakan sistem alarm bekerja
dengan baik, sambil menunggu menit berikutnya 7:01 lampu akan terus menyala merah dan
akan berganti warna hijau pada jam 7:01, begitu seterusnya hingga perintah ke 5 jam 7:04
warna hitam atau lampu mati.
Sistem sinkronasi waktu bekerja dengan baik dan sistem ini sangat berguna pada
Tabel 4.3. Pengujian alarm.
Hari Setting Waktu Penyalaan warna Waktu nyala Warna nyala
Senin 7:00 RED 7.00 RED
7:01 GREEN 7:01 GREEN
7:02 BLUE 7:02 BLUE
7:03 YELLOW 7:03 YELLOW
7:04 OFF 7:04 OFF
Selasa 7:00 RED 7:00 RED
7:01 GREEN 7:01 GREEN
7:02 BLUE 7:02 BLUE
7:03 YELLOW 7:03 YELLOW
7:04 OFF 7:04 OFF
Rabu 7:00 RED 7:00 RED
7:01 GREEN 7:01 GREEN
7:02 BLUE 7:02 BLUE
7:03 YELLOW 7:03 YELLOW
7:04 OFF 7:04 OFF
Kamis 7:00 RED 7:00 RED
7:01 GREEN 7:01 GREEN
7:02 BLUE 7:02 BLUE
7:03 YELLOW 7:03 YELLOW
7:04 OFF 7:04 OFF
Jumat 7:00 RED 7:00 RED
7:01 GREEN 7:01 GREEN
7:02 BLUE 7:02 BLUE
7:03 YELLOW 7:03 YELLOW
7:04 OFF 7:04 OFF
Sabtu 7:00 RED 7:00 RED
7:01 GREEN 7:01 GREEN
7:02 BLUE 7:02 BLUE
7:03 YELLOW 7:03 YELLOW
Lanjutan Tabel 4.3 Pengujian Alarm.
Hari Setting Waktu Penyalaan warna Waktu nyala Warna nyala
Minggu 7:00 RED 7:00 RED
7:01 GREEN 7:01 GREEN
7:02 BLUE 7:02 BLUE
7:03 YELLOW 7:03 YELLOW
7:04 OFF 7:04 OFF
Pada pengujian system alarm hari senin-minggu dengan perubahan pergantian waktu
setiap 1 menit penulis dapat mengetahui bahwa sistem alarm lampu rgb ini dapat bekerja
dengan baik, penyalaan lampu sesuai dengan data alarm yang telah di atur baik waktu
maupun warna.
Sistem penyimpanan data 5 perintah pada lampu tidak hilang saat lampu diputus
tegangannya sebab data akan tersimpan pada eeprom dan akan dibaca ketika power kembali
terhubung, dan sistem berjalanya waktu pada RTC bekerja dengan baik.
4.4.3
Pengujian
Fading
Fungsi fading terdapat pada tab ketiga yaitu tab fading seperti gambar 4.16 terdapat dua tombol untuk memulai fading dan mengakhiri fading.
Untuk memulai fading pada esp 8266 diperlukan pengiriman data dari perangkat android
berupa string “fade”, pengiriman data pada protokol lampu 1 adalah “192.168.43.165/fade”
dan lampu 2 adalah “192.168.43.182/fade” dapat dilihat pada gambar 4.17. Untuk
mengakhiri fading akan dikirimkan string “/stopfade” seperti gambar 4.18.
Gambar 4.17 Sub Program Mulai Fading pada Android Studio.
Pada gambar 4.17 adalah looping ketika tombol “mulai fading” ditekan, dan didalam
loop tersebut terdapat dua buah pertanyaan if(lampu1kirim==1) dan if(lampu2kirim==1)
dimana if tersebut menanyakan yang mana lampu yang akan dikendalikan, pada
taskEsp.execute(); merupakan pengiriman data ke IP melalui http, pengiriman data dapat
berjalan di background, sehingga dapat mengoprasikan menu lain di aplikasi saat pengiriman
sedang berlangsung.
Pada gambar 4.19 Ketika string “fade” diterima oleh esp 8266 maka pada program esp
8266 akan merubah value eeprom “FADE=0” menjadi “FADE=1”, fade=1 adalah untuk menjalankan looping fading dan fade=0 untuk menonaktifkan looping fading ketika string
“/stopfade” diterima seperti gambar 4.20, program looping fading keseluruhan dapat dilihat pada gambar 4.21.
Gambar 4.19 Sub Program Mulai Fading pada Arduino IDE.
Gambar 4.20 Sub Program Stop Fading pada Arduino IDE.
Besar pwm untuk fading led mulai dari 0-255, fading dimulai dari Rstate atau led merah,
range pwm untuk sekali fade pada led adalah 0-255-0 (dimulai dari 0 hingga 255 dan turun
kembali menuju 0 dengan delay perubahan pwm 30 mili detik) kemudian dilanjutkan warna
led berikutnya.
Percobaan dilakukan sebanyak 3 kali dengan memperhatikan urutan warna fading dan
juga kesetabilan terang redupnya apakah sesuai dengan program yang dibuat. Urutan
penyalaan fading adalah merah lalu hijau kemudian biru.
Tabel 4.4. Percobaan fading.
No Percobaan Keterangan
1 Percobaan 1 (Red, Green, Blue) Berhasil
2 Percobaan 2 (Red, Green, Blue) Berhasil
3 Percobaan 3 (Red, Green, Blue) Berhasil
Setelah dilakukan ujicoba dapat diketahui bahwa program berjalan sesuai yang
diinginkan maka pada bagian pengujian fading ini tingkat keberhasilan yang dicapai adalah
100%.
4.5
Pengujian jarak jangkauan kontrol.
Pada pengujian ini untuk mengetahui seberapa jauh lampu dapat dikontrol secara
nirkabel melalui wifi pada handphone, dan akan diketahui berapa waktu yang diperlukan
untuk lampu merespon pada jarak 5-40m, pada jarak 40 lebih kompunikasi sudah mulai
terputus.
Tabel 4.5 Pengujian Jarak kontrol.
No Jarak (Meter)
Waktu (Detik)
Rata-
rata No
Jarak (Meter) Waktu (Detik) Rata- rata
0.13
0.36
1 5 0.15 0.14 4 20 0.31 0.34
0.14 0.35
0.22
0.46
2 10 0.25 0.23 5 25 0.51 0.53
0.24 0.62
0.27
0.82
3 15 0.32 0.29 6 30 1.16 2.94
Lanjutan Tabel 4.5 Pengujian Jarak
No Jarak (Meter)
Waktu (Detik)
Rata- rata
1.35
7 35 1.86 3.1
2.15
2.23
8 40 2.64 3.38
2.17
Pada tabel 4.4 dapat diketahui bahwa jarak pengendalian terjauh yang cukup baik
pada 25 m, pengujian dilakukan dengan memperhatikan pergantian pengiriman data yang
tampil pada text info seperti pada gambar 4.22 pada aplikasi android, jika pengiriman data
baik maka text info status pengiriman bergerak cepat, jika kualitas respon buruk (jarak terlalu
jauh) maka text info bergerak lambat , kualitas respon ini sangat bergantung pada kekuatan
sinyal server (android) karena sebagai pemancarnya dan juga penghalang ruangan yang ada.
4.6
Pengukuran tegangan setiap led
Tegangan yang dibutuhkan led RGB untuk menghasilkan flux atau insensitas terang
cahaya yang sama antara ketiga led berbeda-beda sehingga dilakukan pengukuran untuk
melihat tegangan masing-masing led. Pengukuran dilakukan sebanyak 7 sample warna yang
meliputi 3 warna tunggal seperti red, green, blue, dan 4 warna kombinasi yaitu yellow, cyan,
magenta, dan white pada table 4.4. Nilai 255 pada decimal code adalah penyalaan led
maksimum, dan nilai 0 adalah penyalaan led minimum (off).
Pengukuran menggunakan multimeter tegangan dc yang dihubungkan langsung
dengan output yang menuju led ketika led menyala sehingga dapat diketahui berapa tegangan
yang masuk pada setiap led.
Tabel 4.6. Pengukuran Tegangan Led.
Nilai tegangan keluaran setiap led berbeda-beda karena mengikuti insensitas cahaya
setiap led yang dibutuhkan, warna putih sebagai nilai acuan kalibrasi warna lampu, jika
cahaya putih sudah dapat dihasilkan dengan baik maka untuk kombinasi warna apapun akan
dapat dihasilkan sesuai dengan warna kombinasi sesuai yang diinginkan.
Tegangan max 1.42v untuk red, 2.22v untuk green, dan 2.41v untuk blue didapatkan
dari hasil kalibrasi warna untuk menyala putih, pengaturan tegangan dipermudah berkat
trimpot 10k yang terlihat pada gambar 4.10, trimpot 10k ini menghubungkan output pin
esp8266 dengan transistor array uln2003 yang akan menuju led yang merupakan driver
penguat led, terdapat 3 buah trimpot 10k untuk masing masing led, trimpot ini dapat Percobaan Warna
(Android)
Decimal Code
(R,G,B)
Tegangan setiap led (V)
(R,G,B)
1 RED 255,0,0 1.42v, 0v, 0v
2 GREEN 0,255,0 0v, 2.22v, 0v
3 BLUE 0,0,255 0v, 0v, 2.41v
4 YELLOW 255,255,0 1.41v , 2.17v , 0v
5 CYAN 0,255,255 0v, 2.19v, 2.40v
6 MAGENTA 255,0,255 1.42v, 0v, 2.44v
menambah atau mengurangi gain yang masuk pada transistor array sehingga output
penguatan dapat disesuaikan dengan kebutuhan setiap led.
51
BAB V
KESIMPULAN DAN SARAN
5.1.
Kesimpulan
Setelah melakukan perancangan, pembuatan, dan pengujian alat lampu RGB Alarm
dapat diambil kesimpulan sebagai berikut :
1. Led RGB Alarm dapat menghasilkan warna cahaya yang sesuai dengan warna
RGB pada android.
2. Sistem alarm dapat bekerja sesuai perintah yang dikirim.
3. Fading led berjalan dengan baik sesuai dengan program yang dibuat.
4. Jarak pengendalian baik adalah 25m dengan delay kurang dari 1 detik.
5. Jarak maksimum adalah 40m dengan delay rata-rata 3.38.
6. Sistem kalibrasi waktu antara lampu 1 dan lampu 2 selisih 0.5 detik jika kedua
lampu dikendalikan.
5.2.
Saran
Berdasarkan hasil implementasi yang diperoleh, untuk pengembangan lebih lanjut
terdapat beberapa saran agar alat ini dapat bekerja lebih baik, yaitu :
1. Penambahan program read data alarm pada android dan penghapus data alarm.
2. RTC dilengkapi baterai 3v agar system alarm tetap berjalan ketika power
dimatikan, jadi system alarm sangat bergantung bada kesediaan tegangan
baterai 3v sedangkan baterai tersebut semakin lama akan habis sebab tidak
dilengkapi system pengisian baterai, jadi akan lebih baik jika dilengkapi dengan