bab iii perancangan sistem -...
TRANSCRIPT
12
BAB III
PERANCANGAN SISTEM
Pada bab ini penulis akan menjelaskan mengenai perancangan dan realisasi
purwarupa sistem. Bahasan perancangan dimulai dengan penjelasan alat secara
keseluruhan yaitu penjelasan singkat bagaimana alat bekerja.
Pembahasan selanjutnya mengenai penjelasan perancangan perangkat keras
meliputi sistem elektronik yaitu penjelasan perancangan mikrokontroler pada sistem yang
akan dibuat serta komponen lain yang terhubung dengan mikrokontroler dan maket rumah
sebagai sarana simulasi sistem.
Kemudian pembahasan diakhiri dengan penjelasan dari perancangan perangkat
lunak. Perangkat lunak terdiri dari program pada mikrokontroler untuk mengolah data
yang berasal dari ThingSpeak, serta perancangan perangkat lunak pada smartphone
Android untuk komunikasi data dengan ThingSpeak.
3.1. Gambaran Alat
Sistem yang dirancang oleh penulis adalah alat untuk menghidupkan dan
memadamkan lampu serta membuka kunci pintu dengan cara menempelkan smartphone
Android pada NFC tag. Alat yang dirancang akan digunakan sebagai salah satu dari
komponen home automation pada rumah dan membutuhkan koneksi internet sebagai jalur
komunikasi pengiriman perintah.
Sistem yang dirancang terdiri dari tiga bagian, yaitu sistem elektronik, maket
rumah sebagai sarana simulasi sistem, dan algoritma komunikasi data pada Android.
Sistem elektronik terdiri dari komponen-komponen elektronik dan mikrokontroler
sebagai pengendali utama.
Pada maket rumah terdapat saklar yang digunakan sebagai metode alternatif
dalam menggantikan fungsi smartphone untuk menghidupkan atau memadamkan lampu
secara manual apabila terjadi ketiadaan atau gangguan pada akses internet. Kemudian,
dalam membuat dan mengembangkan algoritma komunikasi data penulis menggunakan
Tasker pada smartphone Android.
13
Gambar 3.1. Diagram Blok Keseluruhan Sistem.
Ketika alat dihidupkan, alat akan terhubung dengan jaringan WiFi yang sudah
ditentukan untuk memperoleh akses internet. Setelah itu, alat akan melakukan
komunikasi dengan ThingSpeak. Kemudian alat sudah siap untuk mengolah perintah
yang dikirimkan ke ThingSpeak. Perintah akan dikirimkan setiap kali smartphone
membaca NFC tag. Smartphone yang digunakan adalah smartphone Android yang
memiliki konektivitas NFC.
NFC tag diletakkan tersebar pada beberapa bagian rumah. Yang pertama adalah
di bagian luar dan dalam pintu, yaitu untuk membuka kunci pintu. Kemudian NFC tag
yang lain diletakkan pada ruangan dalam rumah untuk mengontrol lampu-lampu. Setiap
NFC tag memiliki ID masing-masing yang digunakan untuk memanggil algoritma yang
dirancang menggunakan Tasker pada smartphone Android. Kemudian smartphone
digunakan sebagai reader untuk membaca NFC tag yang terpasang di beberapa bagian
rumah tersebut, lalu mengirimkan data ke server melalui internet untuk berkomunikasi
dengan mikrokontroler. Mikrokontroler yang digunakan adalah Wemos.
Sebenarnya, Wemos dapat berlaku sebagai Access Point, sehingga dapat
terhubung langsung dengan smartphone. Tetapi dengan konfigurasi demikian, maka
Wemos hanya dapat dikontrol dalam jarak yang terbatas. Oleh karena itu, perancangan
ini menggunakan server ThingSpeak sebagai media penghubung antara smartphone
dengan Wemos dari jarak yang jauh sekalipun.
14
Wemos yang sudah dihubungkan ke internet akan mengambil nilai dari server
untuk menentukan perintah yang harus dijalankan, misalnya menghidupkan atau
memadamkan lampu atau membuka kunci pintu. Jika perintah tersebut sudah berhasil
dijalankan, Wemos akan mengirimkan informasi ke server tentang kondisi terbaru.
Kemudian smartphone akan melakukan proses cek kondisi terbaru ke server dan
ditampilkan dalam bentuk notifikasi pada layar smartphone.
3.2. Perancangan Perangkat Keras
Perangkat keras pada rancangan skripsi ini meliputi kelistrikan sistem dan
rancangan maket rumah. Rancangan maket rumah memiliki dimensi ukuran panjang 30
cm dan lebar 25 cm. Rancangan maket rumah ini digunakan untuk simulasi penggunaan
sistem alat. Rancangan maket ini ditunjang dengan perangkat elektronik yang digunakan
untuk penunjang perancangan. Adapun perangkat yang digunakan yaitu:
Mikrokontroler Wemos D1 Mini.
Power supply switching 12V dan buck converter.
Modul Relay dan XOR Gate.
Solenoid door lock, saklar SPST, lampu AC 220V, dan magnetic switch.
NFC tag.
Gambar 3.2. Diagram Blok Kelistrikan Sistem.
15
Gambar 3.3. Realisasi dari Kelistrikan Sistem.
Pada perancangan skripsi ini, power supply, buck converter, mikrokontroler, IC
74LS86, dan modul relay disusun menjadi satu dalam sebuah box. Kemudian lampu,
saklar, magnetic switch, dan solenoid door lock terdapat pada maket rumah.
Gambar 3.4. Denah Maket Rumah.
16
Gambar 3.5. Realisasi dari Maket Rumah.
Keterangan gambar : Ukuran maket rumah :
1. Lampu halaman.
2. Lampu ruang tamu. Panjang = 30 cm
3. Lampu kamar. Lebar = 25 cm
4. Lampu tidur.
5. Solenoid door lock.
6. Magnetic switch.
7. Saklar lampu.
3.3. Perancangan Elektronika
Pada bagian ini akan dijelaskan mengenai perancangan elektronika yang dipakai
dalam sistem yang akan dibuat. Perancangan elektronika dalam pembuatan tugas akhir
ini terdiri dari bagian utama sebagai berikut:
17
Mikrokontroler Wemos D1 Mini.
Modul Relay dan XOR Gate.
Solenoid door lock, saklar SPST, lampu AC 220V, dan magnetic switch.
3.3.1 Pengendali Utama
Pengendali Utama untuk sistem alat menggunakan Wemos D1 Mini yang
merupakan mikrokontroler dengan konektivitas WiFi berbasis ESP8266EX.
Sebagai pengendali utama pada sistem alat, tugas dari mikrokontroler antara lain:
Melakukan komunikasi dengan ThingSpeak melalui internet yang
diperoleh dari jaringan WiFi.
Menerima data dari ThingSpeak berupa array alamat dan data.
Menentukan alamat perangkat dan membandingkan dengan yang
diterima dari ThingSpeak.
Mengolah data yang diperoleh dari ThingSpeak untuk meneruskan
perintah ke lampu tujuan.
Menerima data balikan dari lampu untuk mengetahui kondisi lampu.
Mengirimkan data balikan ke ThingSpeak dalam bentuk array alamat
dan data terbaru setiap kali kondisi lampu berganti.
Membandingkan kondisi magnetic switch ketika sedang terpisah atau
tergabung.
Tabel 3.1. Konfigurasi Pin Wemos D1 Mini.
No Nama Pin Fungsi
1 D4 Output ke lampu 1
2 D3 Output ke lampu 2
3 D2 Output ke lampu 3
4 D1 Output ke lampu 4
5 D8 Output ke kunci pintu
6 D0 Input dari lampu 1
7 D7 Input dari lampu 2
8 D6 Input dari lampu 3
9 D5 Input dari lampu 4
10 A0 Input dari magnetic switch
18
3.3.2 Konfigurasi Modul Relay, Saklar, 74LS86 dan Mikrokontroler
Untuk dapat menghidupkan atau memadamkan lampu serta kunci pintu,
digunakan modul relay yang menjadi penghubung antara sumber listrik tegangan
tinggi ke beban yang dikendalikan oleh tegangan listrik yang kecil dari
mikrokontroler.
Kemudian, IC 74LS86 yang merupakan gerbang XOR digunakan agar
lampu dapat dikendalikan bersamaan melalui saklar maupun smartphone ketika
membaca NFC tag. Tujuan tersebut dapat diperoleh dengan cara menghubungkan
mikrokontroler dan saklar sebagai input pada gerbang XOR dan kemudian output
gerbang XOR dihubungkan ke modul relay.
Gambar 3.6. Konfigurasi Mikrokontroler, 74LS86, dan Modul Relay.
Saklar yang menjadi salah satu input pada gerbang XOR berfungsi untuk
meneruskan tegangan 3,3V yang diperoleh dari pin 3,3V pada mikrokontroler
sehingga gerbang XOR mendapat logika HIGH ketika saklar dalam kondisi
terhubung. Apabila saklar dalam kondisi terputus maka gerbang XOR mendapat
logika LOW karena adanya resistor pull-down yang terhubung dengan ground.
19
Gambar 3.7. Konfigurasi Mikrokontroler, 74LS86, dan Saklar.
3.3.3 Konfigurasi Feedback
Konfigurasi feedback berfungsi untuk memberitahu mikrokontroler
tentang kondisi lampu dengan cara menghubungkan output dari 74LS86 sebagai
input pada mikrokontroler. Modul relay merupakan active low, yang berarti modul
relay akan aktif ketika mendapat logika LOW. Apabila mikrokontroler mendapat
logika LOW pada konfigurasi feedback, maka mengindikasikan bahwa lampu
sedang dalam kondisi hidup karena relay aktif dan begitu pula sebaliknya.
Gambar 3.8. Konfigurasi Feedback 74LS86 dan Mikrokontroler.
20
3.3.4 Konfigurasi Lampu dan Solenoid Door Lock
Lampu yang dikendalikan pada skripsi ini adalah lampu AC 220V
sehingga menggunakan sumber listrik PLN untuk menghidupkan lampu. Fasa
sumber listrik PLN dihubungkan ke pin COM pada relay, kemudian lampu
dihubungkan ke pin normally open pada relay. Sisi ground pada lampu dijadikan
satu dan kemudian dihubungkan ke ground sumber listrik PLN. Lampu akan
hidup ketika relay aktif dan begitu pula sebaliknya.
Gambar 3.9. Konfigurasi Lampu.
Kemudian untuk menghidupkan solenoid door lock diperlukan tegangan
DC 12V yang diperoleh dari power supply switching. Kutub positif 12V dari
power supply dihubungkan ke pin COM pada relay, kemudian kabel positif
solenoid door lock dihubungkan ke pin normally open pada relay. Kutub negatif
dari power supply dihubungkan ke kabel negatif solenoid door lock. Solenoid door
lock akan menarik lidah kunci ketika relay aktif dan begitu pula sebaliknya.
Gambar 3.10. Konfigurasi Solenoid Door Lock.
21
3.3.5 Konfigurasi Magnetic Switch
Perbedaan konfigurasi magnetic switch dan konfigurasi saklar pada skripsi
ini adalah koneksi langsung antara magnetic switch ke mikrokontroler dan tidak
ke 74LS86. Apabila kedua kutub berdekatan, maka mikrokontroler mendapat
logika HIGH, dan sebaliknya jika kedua kutub terpisah maka mikrokontroler
mendapat logika LOW karena adanya resistor pull-down yang terhubung ke
ground.
Gambar 3.11. Konfigurasi Magnetic Switch.
3.4. Perancangan Perangkat Lunak
Pada bagian ini akan dijelaskan mengenai perancangan perangkat lunak yang
digunakan untuk membuat skripsi ini. Perancangan perangkat lunak pada skripsi ini
dibagi menjadi dua bagian utama yaitu perangkat lunak pada mikrokontroler dan
perangkat lunak pada smartphone Android yang dibuat menggunakan Tasker.
3.4.1 Program Mikrokontroler Wemos D1 Mini
Mikrokontroler Wemos D1 Mini diprogram agar bekerja sebagai
pengendali sistem yang berfungsi melakukan komunikasi dengan server
ThingSpeak untuk membaca data dan melakukan perintah yang kemudian akan
mengirim kembali data terbaru ke ThingSpeak.
Program dimulai dengan inisialisasi variabel-variabel termasuk alamat
perangkat lalu melakukan koneksi dengan jaringan WiFi. Kemudian
22
mikrokontroler akan melakukan koneksi terhadap ThingSpeak untuk membaca
data lalu menunggu hingga terjadi perubahan data yang dilakukan oleh pengguna.
Ketika terjadi perubahan data, mikrokontroler akan mengambil data terbaru dan
meneruskan perintah ke relay yang dituju sesuai data yang diterima. Setelah itu
mikrokontroler akan mengisi variabel status dengan nilai terbaru dan
mengirimkan status tersebut ke ThingSpeak yang akan dimanfaatkan oleh
pengguna untuk mengetahui kondisi terbaru melalui smartphone.
Berikut adalah diagram alir program pada mikrokontroler:
Gambar 3.12. Diagram Alir Program pada Mikrokontroler Wemos D1 Mini.
23
3.4.2 Program Smartphone Android Menggunakan Tasker
Yang dimaksud dengan program pada smartphone di sini adalah
kumpulan task dan action yang dibuat menggunakan Tasker untuk dilakukan oleh
smartphone. Perancangan dimulai dengan membuat task untuk setiap aktivitas
yang dapat dilakukan misalnya untuk menghidupkan lampu halaman, lampu tidur,
dan seterusnya. Kemudian di dalam task tersebut dibuat serangkaian action yang
akan terlaksana apabila task dijalankan. Action tersebut akan membuat
smartphone melakukan hal-hal sesuai urutan yang telah dirancang seperti sebuah
alur program.
Secara garis besar, pada skripsi ini program yang dirancang dengan Tasker
adalah untuk melakukan komunikasi dengan server yaitu mengirimkan nilai data
dan membaca nilai data yang terdapat pada ThingSpeak untuk melakukan
aktivitas menghidupkan atau memadamkan lampu dan membuka kunci pintu serta
mengetahui kondisi lampu yang akan ditampilkan pada layar smartphone.
Gambar 3.13. Tampilan Task yang dibuat pada Tasker.
24
Dapat dilihat pada Gambar 3.13 bahwa penulis juga membuat task yang
diberi nama wait interval yaitu untuk mengantisipasi penolakan data akibat waktu
tunda 15 detik yang merupakan batasan oleh free-account ThingSpeak dan
kemudian diakhiri dengan task yang diberi nama set timestamp untuk mencatat
waktu ke variabel yang akan dijadikan sebagai acuan interval berikutnya. Kedua
task ini digunakan pada setiap task aktivitas pengendalian lampu dan kunci pintu.
Dapat dilihat salah satu contoh pada gambar di bawah ini yang merupakan isi dari
task pengendalian lampu halaman.
Gambar 3.14. Tampilan Task Lampu Halaman yang dibuat pada Tasker.
25
Setelah melakukan wait interval, kemudian dilanjutkan dengan melakukan
flash berupa teks ke layar smartphone. Hal ini dilakukan sebagai indikator agar
pengguna mengetahui bahwa task lampu halaman berhasil dan sedang dijalankan.
Selanjutnya adalah action untuk melakukan pengiriman nilai data ke server.
Berikut adalah diagram alir program yang dibuat pada Tasker:
Gambar 3.15. Diagram Alir Pengiriman Data pada Tasker.
3.4.3 Sistem Pengaksesan Alamat Alat Melalui Smartphone
Untuk dapat mengakses alamat alat tertentu sesuai alamat alat masing-
masing yang telah ditentukan pada program mikrokontroler, maka pada Tasker
dibuat variabel alamat yang diisi sesuai alamat alat yang ingin dituju. Kemudian
dibuat juga sebuah action untuk menggabungkan variabel alamat tersebut dengan
nilai data yang akan dikirim setiap kali smartphone membaca tag, di mana pada
hal ini penulis menggunakan action array set untuk menggabungkan variabel
tersebut menjadi sebuah array.
26
Gambar 3.16. Tampilan Variabel pada Tasker.
Gambar 3.17. Tampilan Action Array Set pada Tasker.
Dapat dilihat pada Gambar 3.16 untuk nilai variabel alamat dengan nama
%AddressW1 yang merupakan alamat dari Wemos. Lalu pada Gambar 3.17
adalah action array set yang menggabungkan nilai dari variabel alamat tersebut
dengan nilai dari tiap-tiap relay menjadi sebuah array dengan nama %Datavalue
yang kemudian akan dikirim ke server. Dengan cara ini dapat dilakukan
pengaksesan alamat alat dengan mengubah isi nilai variabel %AddressW1 dengan
nilai alamat alat dan juga dengan membuat variabel alamat baru jika dilakukan
penambahan alat.
27
3.4.4 Sistem Pengecekan Kondisi Melalui Smartphone
Sistem ini dirancang agar pengguna dapat melakukan pengecekan
terhadap kondisi terbaru. Hal ini dapat diperoleh dengan melakukan HTTP Get ke
ThingSpeak untuk mendapatkan nilai terbaru yang telah dikirim oleh
mikrokontroler ke ThingSpeak. Penulis menggunakan action HTTP Get pada
Tasker untuk melakukan hal tersebut. Kemudian nilai yang sudah diperoleh dari
ThingSpeak tersebut disimpan ke dalam sebuah file berformat .txt pada
smartphone. Penulis memberi nama file tersebut dengan nama status.txt.
Gambar 3.18. Tampilan Aplikasi File Manager pada Smartphone.
Gambar 3.19. Tampilan Isi File status.txt.
28
Setelah melakukan HTTP Get terhadap ThingSpeak dan file sudah
terbentuk, maka dilakukan pembacaan isi dari file status.txt tersebut dan dapat
dilihat isi file pada gambar di atas. Angka 1 pada digit pertama mewakili kondisi
lampu pertama, dan begitu seterusnya hingga angka 1 pada digit terakhir yang
merupakan kondisi dari kunci pintu. Namun bentuk data masih tergabung menjadi
satu dalam file sehingga perlu untuk dipisahkan.
Lalu pada Tasker dilakukan pemisahan untuk nilai kondisi terhadap teks
“Status Output” pada isi file dengan menggunakan action variabel split. Dengan
hal ini, diperoleh nilai kondisi tanpa teks dan kemudian dipisahkan lagi untuk tiap-
tiap lampu dan kunci pintu menggunakan action variable section yang disimpan
menjadi masing-masing variabel kondisi atau status untuk ditampilkan ke layar
smartphone pada tahap selanjutnya.
Gambar 3.20. Tampilan Action HTTP Get dan Pemisahan Kondisi pada Tasker.
Kemudian untuk menampilkan notifikasi ke layar smartphone, hasil
pemisahan data yang sudah dilakukan pada tahap sebelumnya diisikan ke dalam
sebuah action Popup pada Tasker yang merupakan sebuah action yang
menampilkan scene atau antarmuka pengguna. Dapat dilihat pada Gambar 3.21
yang merupakan tampilan action Popup.
29
Gambar 3.21. Tampilan Action Popup pada Tasker.
Setelah mengisi action Popup dan kemudian task notifikasi dijalankan
maka akan menampilkan hasil seperti pada Gambar 3.22 yang merupakan
tampilan status atau kondisi tiap-tiap lampu dan kunci pintu.
Gambar 3.22. Tampilan Kondisi pada Layar Smartphone.
30
3.4.5 Mode Tidur dan Mode Pergi
Mode tidur dan mode pergi dibuat untuk memudahkan pengguna, di mana
ketika smartphone membaca NFC tag yang berisi fungsi mode tidur maka semua
lampu akan padam kecuali lampu halaman dan lampu tidur akan hidup dalam
sekali langkah. Kemudian untuk mode pergi, ketika smartphone membaca tag
yang berisi fungsi mode pergi maka kunci pintu akan terbuka dan semua lampu
akan padam sekaligus. Dengan mode tidur ini maka pengguna tidak perlu beranjak
dari tempat tidur untuk memadamkan tiap-tiap lampu lalu menghidupkan lampu
tidur secara manual dan dengan mode pergi pengguna tidak perlu memadamkan
tiap-tiap lampu dan membuka kunci pintu ketika ingin beranjak pergi
meninggalkan rumah karena dapat dilakukan dalam satu kali langkah.
Ketika smartphone membaca tag mode tidur atau mode pergi yang terjadi
adalah smartphone melakukan action HTTP get untuk memperoleh nilai kondisi
terakhir pada ThingSpeak. Dapat dilihat pada Gambar 3.23 dan Gambar 3.24,
pada action nomor 3 bahwa mode tidur dan mode pergi melakukan fungsi Get
from Thingpeak Kondisi setelah menunggu waktu interval seperti pada task lain
nya. Fungsi tersebut adalah sama dengan fungsi yang digunakan pada sistem
pengecekan kondisi. Dapat disebutkan bahwa untuk melakukan mode tidur dan
mode pergi terjadi pengambilan nilai kondisi terlebih dahulu. Kemudian pada
action nomor 4, nilai kondisi yang telah diperoleh dari action sebelumnya
diproses untuk menentukan nilai data yang akan dikirim kembali ke ThingSpeak.
Gambar 3.23. Tampilan Task mode tidur yang dibuat pada Tasker.