• Tidak ada hasil yang ditemukan

TA : Sistem Kontrol Keamanan Rumah Jarak Jauh Berbasis Web Menggunakan Raspberry Pi.

N/A
N/A
Protected

Academic year: 2017

Membagikan "TA : Sistem Kontrol Keamanan Rumah Jarak Jauh Berbasis Web Menggunakan Raspberry Pi."

Copied!
68
0
0

Teks penuh

(1)

SISTEM KONTROL KEAMANAN RUMAH JARAK JAUH

BERBASIS WEB MENGGUNAKAN RASPBERRY PI

TUGAS AKHIR

Program Studi

S1 Sistem Komputer

Oleh :

Heddy Widiyanatha

10.41020.0083

FAKULTAS TEKNOLOGI DAN INFORMATIKA

(2)

ii

TUGAS AKHIR

Diajukan sebagai salah satu syarat untuk menyelesaikan Program Sarjana Komputer

Oleh:

Nama : Heddy Widiyanatha Nim : 10.41020.0083 Jurusan : Sistem Komputer Program : S1 (Strata Satu)

FAKULTAS TEKNOLOGI DAN INFORMATIKA

(3)

1

BAB I

PENDAHULUAN

1.1 Latar Belakang Masalah

Saat berpergian keluar rumah keamanan merupakan hal yang perlu diperhatikan saat ini. Dalam hal ini terkadang saat berpergian keluar rumah, sang penghuni juga lupa untuk mengunci pintu. Di sisi lain ada juga penghuni rumah yang menaruh kunci di sembarang tempat yang tidak aman misalnya di bawah keset, di atas pintu, di bawah pot bunga dan lain sebagainya. Dimana dalam hal ini perampokan rumah bisa saja terjadi karena perampok memanfaatkan kelalaian tersebut.

Penghuni rumah tentu tidak ingin hal tersebut terjadi pada rumahnya. Maka dari hal tersebut untuk mengatasinya diperlukan suatu peralatan yang bernama Raspberry Pi yang tersambung ke jaringan internet yang digunakan untuk sistem kontrol kunci pintu rumah jarak jauh.

(4)

Berdasarkan perbedaan dari penelitian tersebut yaitu penelitian ini akan memanfaatkan Raspberry Pi sebagai web server yang berfungsi sebagai pengontrol kunci pintu rumah. Serta menggunakan halaman web sebagai interface yang dijadikan pengontrol dari kuci pintu.

Raspberry Pi akan digunakan sebagai web server yang terhubung dengan modem yang nantinya web server yang sudah terpasang tersebut bisa diakses oleh perangkat yang tersambung pada jaringan melalui web browser. Selain itu Raspberry Pi ini juga digunakan sebagai pusat kontrol dari kunci pintu yang memanfaatkan motor sebagai penggeraknya. Untuk menggerakkan motor sebagai kunci pintu sistem ini menggunakan relay sebagai penghubung dan pemutus aliran arus listrik yang dikontrol Raspberry Pi melalui halaman web.

Untuk keamanan di dalam web setiap user yang menggunakan harus mengisi nama pengguna beserta kata sandi yang sudah tersimpan di database. Database ini sudah diintegrasi dengan pemrograman Hypertext Preprocessor (PHP).

Pengguna dapat mengakses halaman web tersebut menggunakan perangkat yang memiliki aplikasi web browser secara online sehingga dapat mengontrol kunci pintu rumah dari mana saja.

1.2 Perumusan Masalah

(5)

1.3 Pembatasan Masalah

Dalam sistem kontrol keamanan rumah ini, terdapat beberapa batasan masalah terhadap permasalahan yang muncul diantaranya :

a. Peralatan yang dibuat adalah pintu prototipe terbuat dari bahan akrilik. b. Penguncian akan berhasil apabila pintu dalam keadaan tertutup.

c. Raspberry Pimenggunakan kabel UTP untuk dapat tersambung ke modem.

1.4 Tujuan

a. Membuat web sebagai interface kontrol.

b. Mengontrol kunci pintu rumah menggunakan Raspberry Pi

1.5 Sistematika Penulisan

Pada penulisan Laporan Tugas Akhir ini ditulis dengan sistematika penulisan sebagai berikut :

BAB I : PENDAHULUAN

Pada bab ini dikemukakan hal–hal yang menjadi latar belakang, perumusan masalah, batasan masalah, tujuan yang ingin dicapai, manfaat serta sistematika penulisan laporan tugas akhir ini.

BAB II : LANDASAN TEORI

Pada bab ini dibahas teori yang berhubungan dengan Raspberry Pi, modemZTE F660, Relay, motor servo, Apache, serta MySQL.

BAB III : METODE PENELITIAN

(6)

BAB IV : HASIL DAN PEMBAHASAN

Pada bab ini memaparkan berbagai macam percobaan yang dilakukan, hasil-hasil yang didapatkan berserta solusi dari permasalahan yang didapat. Selain itu disertai pula hasil uji coba terhadap peralatan-peralatan yang dipakai.

BAB V : PENUTUP

(7)

x

ABSTRAK …….. ... vii

KATA PENGANTAR ... viii

DAFTAR ISI ……. ... x

DAFTAR TABEL ... xiii

DAFTAR GAMBAR ... xv

DAFTAR LAMPIRAN ... xvi

BAB I PENDAHULUAN ... 1

1.1 Latar Belakang Masalah ... 1

1.2 Perumusan Masalah ... 2

1.3 Pembatasan Masalah ... 3

1.4 Tujuan ... 3

1.5 Sistematika Penulisan ... 3

BAB II LANDASAN TEORI ... 5

2.1 Raspberry Pi ... 5

2.2 Modem ZTE F660 ... 6

2.3 Relay ... 7

2.4 Motor Servo ... 8

2.5 Apache ... 10

2.6 MySQL ... 12

2.7 PHP ... 13

2.7.1 Pengantar PHP ... 13

(8)

xi

2.7.5 Function ... 15

2.7.6 Pernyataan Kontrol ... 19

BAB III METODE PENELITIAN ... 22

3.1 Model Penelitian ... 22

3.2 Cara Kerja Sistem Secara Keseluruhan ... 25

3.3 Perancangan Hardware ... 27

3.3.1 Rangkaian Motor Servo ... 27

3.3.2 RangkaianRelay dan Lampu ... 28

3.3.3 Platform Pintu ... 29

3.4 Perancangan Program ... 30

3.4.1 Perancangan Program Motor Servo ... 31

3.4.2 Perancangan Program Kontrol Relay... 35

3.4.2 Perancangan Pemrograman Web ... 36

3.5 Konfigurasi Port Forwarding... 44

BAB IV HASIL DAN PEMBAHASAN ... 46

4.1 Pengujian Pengaksesan Web Server ... 46

4.1.1 Tujuan ... 46

4.1.2 Peralatan yang Digunakan ... 46

4.1.3 Prosedur Pengujian ... 46

4.1.4 Hasil Pengujian Pengaksesan Web Server ... 47

4.2 Pengujian Kontrol Lampu ... 50

(9)

xii

4.2.4 Hasil Pengujian Kontrol Lampu ... 51

4.3 Pengujian Motor Servo ... 52

4.3.1 Tujuan ... 53

4.3.2 Alat yang digunakan ... 53

4.3.3 Prosedur Pengujian ... 53

4.3.4 Hasil Pengujian Motor Servo ... 54

BAB V PENUTUP ... 57

5.1 Simpulan ... 57

5.2 Saran ... 57

(10)

xiii

(11)

xiv

Gambar 2.1 Raspberry Pi 2 Model B ... 5

Gambar 2.2 Pin GPIO Raspberry Pi 2... 6

Gambar 2.3 Modem ZTE F660 ... 7

Gambar 2.4 Relay ... 8

Gambar 2.5 Motor Servo ... 9

Gambar 2.6 Pengaruh pemberian pulsa pada poros motor ... 10

Gambar 2.7 Database Username dan Password ... 13

Gambar 3.1 Diagram Blok Sistem ... 22

Gambar 3.2 Pembagian Sistem ... 23

Gambar 3.3 Sistem Keseluruhan ... 25

Gambar 3.4 Rangkaian Motor Servo... 27

Gambar 3.5 Rangkaian Relay dan Lampu ... 28

Gambar 3.6 Platform pintu tampak luar... 29

Gambar 3.7 Platform pintu tampak Dalam ... 30

Gambar 3.8 Flowchart Program Secara Keseluruhan ... 31

Gambar 3.9 Flowchart Program Motor Servo Mengunci ... 33

Gambar 3.10 Flowchart Program Motor Servo Membuka kunci ... 33

Gambar 3.11 Flowchart Program Kontrol Relay on ... 35

Gambar 3.12 Flowchart Program Kontrol Relay off ... 36

Gambar 3.13 Tampilan Halaman Login ... 37

Gambar 3.14 Tampilan Halaman Utama ... 38

(12)

xv

Gambar 3.16 Konfigurasi Application List ... 45

Gambar 4.1 Tampilan Halaman Login ... 47

Gambar 4.2 Halaman Kontrol ... 48

Gambar 4.3 Pemberitahuan Username dan Password Kosong ... 49

Gambar 4.4 Pemberitahuan Username dan Password Salah ... 49

Gambar 4.5 Pemberitahuan Password Kosong ... 49

Gambar 4.6 Pemberitahuan Username Kosong ... 50

Gambar 4.7 Rangkaian Lampu dalam Kondisi Nyala ... 51

Gambar 4.8 Motor Servo Posisi Tidak Mengunci... 54

(13)

xvi

Halaman

Lampiran 1. Data Penulis ... 60

Lampiran 2. Kode Program Login PHP ... 61

Lampiran 3. Kode Program Otentikasi PHP ... 62

Lampiran 4. Kode Program cek-login PHP ... 63

Lampiran 5. Kode Program Halaman Kontrol PHP ... 63

Lampiran 6. Kode Program Konfigurasi Database PHP ... 67

Lampiran 7. Kode Program Logout PHP ... 67

Lampiran 8. Kode Program Kunci Pintu Python ... 68

Lampiran 9. Kode Program Buka Pintu Python ... 68

Lampiran 10. Kode Program Nyala Lampu Python ... 68

(14)

5

2.1 Raspberry Pi

Raspberry Pi adalah komputer papan tunggal (Single Board Circuit/SBC) yang memiliki ukuran sebesar kartu kredit(Hakim, 2013). Raspberry Pi bisa digunakan untuk berbagai keperluan, seperti spreadsheet, game, bahkan bisa digunakan sebagai media player karena kemampuannya dalam memutar video high definition.(www.raspberrypi.org).

Sumber: www.raspberrypi.org

Gambar 2.1 Raspberry Pi 2 Model B

(15)

output. Selain sebagai input output pada beberapa pin GPIO juga berfungsi sebagai komunikasi serial diantaranya I2C, SPI dan serial komunikasi UART .

Sumber: http://pi4j.com

Gambar 2.2 Pin GPIO Raspberry Pi 2

2.2 Modem ZTE F660

(16)

Gambar 2.3 Modem ZTE F660

Modem ini dapat menghubungkan jaringan lokal dengan jaringan Internet Service Provider(ISP) agar dapat mengakses internet. Modem ini memiliki beberapa interface yaitu:

1. GPON : SC/APC standar G.984.1-G.984.5 ITU 2. Ethernet: RJ45 standar IEEE 802.3 dan IEEE 802.3u 3. telepon: RJ11

4. Wi-Fi: sesuai standar IEEE 802.11n (antena di dalam). 5. USB: USB 2.0

Di sisi lain modem ini dapat melakukan port forwarding yang nantinya web server yang berada dalam jaringan lokal bisa diakses melalui internet.

2.3 Relay

(17)

dekatnya. Ketika solenoid dialiri arus listrik, tuas akan mendapat tarikan medan magnet yang dihasilkan dari solenoid sehingga kontak saklar akan menutup. Pada saat arus tidak diterima solenoid maka gaya magnet akan hilang, dan saklar akan kembali terbuka. Susunan kontak pada relay adalah sebagai berikut:

1. Normally Open: saklar dari relay yang dalam keadaan normal (relay tidak diberi tegangan) tidak terhubung dengan common.

2. Normally Close: saklar dari relay yang dalam keadaan normal (relay tidak diberi tegangan) terhubung dengan common.

Relay berfungsi sebagai output. Dimana relay mendapatkan input dari pin output yang member logika 1 (high) apabila mendapatkan input dari pin GPIO bernilai 1 (high) sehingga relay dalam kondisi NC (Normally close). Begitu juga sebaliknya.

Gambar 2.4 Relay

2.4 Motor Servo

(18)

Sumber: http://www.datasheetcafe.com/

Gambar 2.5 Motor Servo

Spesifikasi SG-90 9g Micro Servo: 1. Berat: 9 gram.

2. Dimensi: 22.2 mm x 11.8 mm x 31 mm. 3. Kecepatan: 0.1s/60 derajat.

4. Tegangan: 4.8 – 5 V. 5. Rentang suhu( 0-55°C).

(19)

Gambar 2.6 Pengaruh pemberian pulsa pada poros motor

Motor servo dikendalikan dengan memberikan sinyal modulasi lebar pulsa PWM melalui kabel kontrol. Lebar pulsa sinyal kontrol yang diberikan akan menentukan posisi sudut putaran dari poros motor servo. Sebagai contoh, lebar pulsa dengan waktu 1,5 ms (mili detik) akan memutar poros motor servo ke posisi sudut 90⁰ . Bila pulsa lebih pendek dari 1,5 ms maka akan berputar ke arah posisi 0⁰ atau ke kiri (berlawanan dengan arah jarum jam), sedangkan bila pulsa yang diberikan lebih lama dari 1,5 ms maka poros motor servo akan berputar ke arah posisi 180⁰ atau ke kanan (searah jarum jam).

2.5 Apache

(20)

semua web server selain Apache digabung, masih belum bisa mengalahkan jumlah Apache.

Apache memiliki fitur-fitur canggih seperti pesan kesalahan yang dapat dikonfigur, autentikasi berbasis basis data dan lain-lain. Apache juga didukung oleh sejumlah antarmuka pengguna berbasis grafik (GUI) yang memungkinkan penanganan server menjadi mudah. Apache merupakan perangkat lunak sumber terbuka dikembangkan oleh komunitas terbuka yang terdiri dari pengembang-pengembang dibawah naungan Apache Software Foundation.

Saat ini ada dua versi Apache yang bisa dipakai untuk server produksi, yaitu versi mayor 2.0 dan versi mayor 1.3. Apache merupakan webserver yang paling banyak digunakan saat ini. Hal ini disebabkan oleh beberapa sebab, di antaranya adalah karena sifatnya yang opensource dan mudahnya mengkostumisasikannya. Di antaranya dengan menambahkan support secure protocol melalui ssl dan konektifitasnya dengan database server melalui bahasa scripting PHP.

(21)

server kita dan dengan menggunakan whois kita dapat mengetahui siapa pemilik IP yang telah mengakses web kita.

2.6 MySQL

MySQL (My Structured Query Language) adalah sebuah database pembuatan tabel yang bersifat open source, artinya setiap orang atau instansi dapat menggunakannya. (Arsa, 2009).

MySQL merupakan salah satu DataBase Management System (DBMS) dari sekian banyak DBMS seperti Oracle, MS SQL, Postagre SQL, dan lainnya. MySQL berfungsi untuk mengolah database menggunakan bahasa SQL. MySQL bersifat opensource sehingga kita bisa menggunakannya secara gratis. Pemrograman PHP juga sangat mendukung/support dengan database MySQL.

Database adalah sekumpulan tabel-tabel yang berisi data dan merupakan kumpulan dari field atau kolom. Struktur file yang menyusun sebuah database adalah Data Record dan Field.

 Data adalah satu satuan informasi yang akan diolah. Sebelum diolah, data dikumpulkan di dalam suatu file database.

 RECORD adalah data yang isinya merupakan satu kesatuan seperti NamaUser dan Password. Setiap keterangan yang mencakup NamaUser dan Password dinamakan satu record. Setiap record diberi nomor urut yang disebut nomor record (Record Number).

(22)

Gambar 2.7 Database UserName Password

2.7 PHP

2.7.1 Pengantar PHP

PHP singkatan dari PHP: Hypertext Preprosessor. Ia merupakan bahasa berbentuk skrip yang ditempatkan dalam server dan diproses di server(Pramudia, 2009). Secara khusus PHP dirancang untuk membentuk web dinamis. Artinya ia dapat berbentuk suatu tampilan berdasarkan permintaan terkini. Misalnya, menampilkan isi database ke halaman web. PHP bersifat bebas dipakai. Anda tidak perlu membayar apapun untuk menggunakan perangkat lunak ini. Kode php di awali dengan <?php dan di akhiri dengan ?> . Pasangan kedua kode inilah yang berfungsi sebagai tag kode PHP.

Salah satu kelebihan dari PHP adalah mampu berkomunikasi dengan berbagai database yang terkenal. Dengan demikian menampilkan data yang bersifat dinamis yang diambil dari database merupakan hal yang mudah untuk diimplementasikan. Pada saat ini PHP sudah dapat berkomunikasi dengan berbagai database meskipun memiliki kelengkapan yang berbeda-beda.

(23)

dan sudah berhasil menginstall Apache untuk membuat komputer menjadi web server. Untuk file PHP disimpan pada folder /var/www/html. Lalu untuk menguji dengan browser, tuliskan alamat http://localhost/file.php

2.7.2 Tipe Data dan Konstanta

Tipe data pada PHP ada tiga macam, yaitu integer, double, dan string. Integer menyatakan tipe bilangan bulat dengan jangkauan mulai dari -2 milyar hingga +2 milyar. Doublemenyatakan tipe data bilangan yang mempunyai bagian pecahan. String merupakan tipe data teks atau sederetan karakter yang tidak menyatakan bilangan. Misalnya, berupa nama barang atau nama orang.

Konstanta menyatakan nilai tetap di dalam program. Pada PHP dikenal sejumlah karakter yang menggunakan penulisan secara khusus, yaitu didahului dengan simbol backslash (\). Misalkan, \n berarti karakter pindah baris (newline), \r berarti carriage return. Selain itu pada PHP juga terdapat konstanta simbolis. Berikut adalah peulisan konstanta :

<?php

echo “halo”;

echo “\”selamat belajar\””; ?>

2.7.3 Variabel

(24)

variabel dengan nama variabel tes dan menyimpan sebuah data stringdunia

Suatu array dapat diciptakan dengan menggunakan beberapa konstruksi array sebagai berikut :

$kota = array(“surabaya”,”jakarta”); $pulau[0]= “jawa”;

$pulau[1]=”kalimantan”;

Kode di atas adalah 2 cara membuat konstruksi array. Angka yang diletakan pada tanda [ ] adalah indeks. Pada prakteknya indeks tidak harus dimulai dari nol. Untuk dapat mengambil isi dari array bisa menggunakan notasi $nama_array[index].

2.7.5 Function

Dalam PHP terdapat beberapa function yang bisa langsung kita gunakan tanpa kita harus membuat function tersebut. Pada buku ini menggunakan beberapa funtion yaitu:

1. mysql_connect

Fungsi ini digunakan untuk membuat hubungan ke database MySQL yang terdapat pada suatu host. Berikut adalah bentuk pemanggilanya:

$sambung = mysql_connect ( “host”,”user”,”password”);

(25)

atau user. $sambung adalah sebuah variabel yang menyimpan nilai balik dari koneksi ke database.

2. mysql_select_db

Fungsi ini digunakan untuk memilih database. Berikut adalah cara menggunakannya :

mysql_select_db (“database”);

Database di sini adalah nama database yang akan dipilih. 3. mysql_close

Fungsi ini digunakan untuk menutup hubungan ke database MySQL. Berikut adalah cara menggunakannya :

Mysql_close ($sambung);

4. fopen

Fungsi ini digunakan untuk membaca atau membuka file. Function ini memiliki nilai balik. Berikut adalah cara menggunakannya :

$file = fopen("namaberkas", "mode");

File dengan nama namaberkas adalah tempat di mana file tersebut akan dibuka. Sedangkan mode adalah mode yang digunakan untuk membuka. Nilai balik akan disimpan ke dalam variabel file.

5. fgets

Fungsi ini digunakan untuk membaca data yang terdapat pada berkas. Berikut adalah cara penggunaannya :

$baca=fgets($file);

(26)

6. fclose

Fungsi ini berguna untuk memeriksa apakah penunjuk sedang menunjuk akhir berkas atau tidak. Cara menggunakannya adalah :

feof($file);

8. explode

Fungsi ini digunakan untuk memecah (parsing) suatu string dan hasilnya akan disimpan ke dalam array. Contoh pengunaannya sebagai berikut :

$hasil=explode(“.”,”$kata”);

Artinya, memecah sebuah data string yang terdapat pada variabel kata dengan pemisah tanda titik dan hasilnya disimpan ke dalam hasil. Kemudian secara otomatis hasil akan menjadi sebuah array. Tanda titik bisa diganti dengan tanda apapun sesuai kebutuhan. Jika menemukan tanda titik yang pertama maka secara otomatis string yang berada di depan akan disimpan pada indeks ke-0. Sedangkan yang berada di belakang akan disimpan pada indeks selanjutnya.

9. bindec

Fungsi ini digunakan untuk mengubah bilangan biner ke dalam bentuk bilangan bulat. Berikut adalah cara penggunaannya :

(27)

Artinya, mengubah bilangan biner yang disimpan di dalam variabel $nilai dan hasil konversi akan disimpan ke dalam variabel $hasil.

10. strrev

Fungsi ini digunakan untuk membalik suatu nilai. Contohnya jika terdapat sebuah nilai string “belajar php” maka jika menggunakan strrev akan berubah menjadi “php rajaleb”. Berikut adalah contoh penggunaannya :

$hasil= strrev($nilai);

11. strtotime

Fungsi ini digunakan untuk mengubah time stamp menjadi unique time stamp. Unique time stamp adalah time stamp yang dengan bentuk sekumpulan bilangan bulat saja. Berikut adalah cara penggunaannya :

$hasil=(strtotime("$timestamp"));

12. @

PHP mendukung satu operator error control: pada tanda (@). Bila ditujukan ke ekspresi dalam PHP, pesan kesalahan yang mungkin dihasilkan oleh ekspresi yang akan diabaikan.

Jika Anda telah menetapkan fungsi penanganan error kustom dengan set_error_handler () maka masih akan dipanggil, tapi kustom penanganan error ini dapat (dan harus) memanggil error_reporting () yang akan mengembalikan 0 ketika panggilan yang memicu kesalahan didahului oleh @.

(28)

13.mysql_query

Fungsi mysql_query berguna untuk mengeksekusi permintaan terhadap sebuah tabel atau sejumlah tabel. Bentuk pemanggilannya :

mysql_query (permintaan, pengenal_hubungan)

Dalam hal ini pengenal_hubungan menyatakan pengenal yang diperoleh dari pemanggilan fungsi mysql_connect dan argumen permintaan berupa pernyataan SQL untuk mengakses tabel. Tabel-tabel yang dapat diakses adalah tabel milik database yang disebutkan melalui mysql_select_db.

Fungsi ini menghasilkan suatu nilai yang digunakan sebagai pengenal hasil bagi sejumlah fungsi lainnya yang berawalan mysql_. Bila terjadi sesuatu kesalahan, hasilnya berupa FALSE.

14.mysql_fetch_array

Fungsi ini mempunyai kegunaan serupa dengan mysql_fetch_row. Hanya saja setiap kolom akan disimpan dua kali pada array hasil. Yang pertama memiliki indeks angka (dimulai dari nol) dan yang kedua berindeks-kan nama kolom. Bentuknya pemanggilannya :

mysql_fetch_array (pengenal_hasil)

Dalam hal ini pengenal_hasil menyatakan nilai yang diperoleh dari pemanggilan fungsi seperti mysql_db_query atau mysql_query.

2.8.6 Pernyataan Kontrol

(29)

1. If ekspresi bernilai benar dan jika salah maka pernyataan_2 yang akan dijalankan.

if (ekspresi)

Pernyataan di atas sangat berguna jika melakukan banyak alternatif dalam pengambilan keputusan. Prinsipnya sama dengan if di dalam bahasa pemrograman yang lain seperti C atau Visual Basic.

2. While

(30)

maka pernyataan akan dijalankan dan kemudian ekspresi dievaluasi lagi. Proses ini berulang sampai ekspresi salah. Untuk ekspresi adalah keadaan di mana harus berhenti mengulang dan pernyataan harus memiliki kondisi berhenti. Berikut cara penulisannya :

while (ekspresi) {

Pernyataan }

3. For

Pernyataan ini sama seperti halnya dengan while, namun perbedaanya adalah jika while digunakan saat kita tidak tahu berapa kali dia melakukan perulangan. Sedangkan for digunakan saat kita sudah tahu harus berapa kali melakukan perulangan. Berikut adalah cara penulisannya:

for ($i=0;$i<4;$i++) {

echo “ulang”; }

Penulisan di atas maksudnya adalah akan mencetak kata-kata “ulang” sebanyak 4 kali.

4. Exit

(31)

22

3.1 Model Penelitian

Penelitian yang dilakukan dapat dijelaskan dengan lebih baik melalui blok diagram seperti yang terlihat pada Gambar 3.1 dibawah ini :

Gambar 3.1 Diagram Blok Sistem

Pada Gambar 3.1 dapat dibagi menjadi beberapa bagian, yaitu bagian Input yang berupa masukan dari web browser yang selanjutnya akan diteruskan ke bagian proses pada Raspberry Pi yang berfungsi sebagai server dan bagian Output yaitu Lampu dan kunci pintu.

Web

Browser

Modem

ZTE F660

Raspberry Pi

Lampu

(32)

Gambar 3.2 Pembagian Sistem

Berikut ini adalah penjelasan lebih lanjut pada bagian input, proses dan output pada sistem kontrol keamanan rumah jarak jauh berbasis web menggunakan raspberry pi :

1. Bagian Input terdiri atas Web browser dan Modem.

Web browser berfungsi sebagai aplikasi yang nantinya digunakan sebagai alat untuk mengakses halaman web yang terpasang dalam raspberry pi. Dalam penelitian ini web tersebut digunakan sebagai antarmuka pengontrol kunci pintu dan lampu pada rumah. Web browser ini merupakan aplikasi yang dapat dipasang pada perangkat komputer, handphone, smartphone, atau perangkat lain yang mendukung.

Modem berfungsi untuk menerima input dari web browser melalui jaringan(internet/WLAN) yang nantinya akan diteruskan ke raspberry pi sehingga dapat berkomunikasi untuk membuka dan mengunci pintu rumah serta menyalakan dan mematikan lampu.

INPUT

OUTPUT

PROSES

Web browser Modem

Modem Raspberry pi

Raspberry Pi Lampu

(33)

2. Bagian proses terdiri atas Modem dan Raspberry pi

Modem dalam bagian proses ini berfungsi untuk menghubungkan informasi dari web browser ke raspberry pi atau sebaliknya melalui kabel UTP menggunakan antarmuka RJ45. Sehingga web browser bisa mengakses halaman web yang terpasang pada raspberry pi dan web browser juga bisa memberikan input sehingga dapat membuka dan mengunci pintu rumah serta menyalakan dan mematikan lampu.

Raspberry pi berfungsi sebagai web server, mengelola input, dan sistem kontrol, nantinya web server akan dipasang di dalamnya dan juga program untuk mengontrol kunci pintu dan nyala lampu yang telah dibuat. Untuk bisa diakses oleh perangkat harus dihubungkan dengan modem terlebih dahulu, karena modem merupakan penghubung. Jadi sebelum mengontrol kunci pintu dan lampu yang harus dilakukan adalah menyambungkan web browser dengan raspberry pi.

3. Bagian Output terdiri atas Raspberry Pi, kunci pintu, dan lampu.

Raspberry pi berfungsi sebagai sistem pengontrol dari kunci pintu dan lampu. Input yang sudah diterima melalui halaman web akan dikelola oleh raspberry pi dan akan dijadikan output yang berupa mengunci/membuka pintu dan menghidupkan/mematikan lampu.

(34)

 Lampu berfungsi sebagai alat yang digerakkan secara otomatis. Dalam penelitian ini untuk menghidupkan dan mematikan lampu tersebut digunakan sebuah relay. Relay ini berfungsi sebagai pengatur pasokan listrik yang akan menghidupkan atau mematikan lampu. Selain itu relay juga berfungsi untuk mencegah tegangan berlebihan dan tidak mengganggu pasokan daya di dalam raspberry pi.

3.2 Cara Kerja Sistem Secara Keseluruhan

Gambar 3.3 Sistem keseluruhan

Dari Gambar 3.3 dapat diketahui bahwa perangkat yang memiliki web browser yang digunakan harus tersambung dengan modem yang berada di dalam rumah terlebih dahulu, bisa melalui WLAN ataupun internet. Kemudian modem tersebut melakukan port forwarding ke raspberry pi yang terhubung dengan menggunakan kabel UTP sehingga komunikasi antara pengguna dan raspberry pi sebagai server dapat terhubung atau dengan kata lain pengguna bisa membuka halaman web yang telah dibuat di dalam raspberry pi.

(35)

Di dalam raspberry pi terpasang sebuah web server apache dimana untuk melayani dan memfungsikan situs web. Halaman web yang sudah dibuat menggunakan PHP(Hypertext Preprocessor) yang di dalamnya berfungsi sebagai antarmuka dalam mengontrol kunci pintu dan lampu yang berupa beberapa tombol perintah atau yang berfungsi sebagai switch untuk mengunci/tidak pintu rumah serta menyalakan/menghidupkan lampu.

Raspberry pi ini nantinya juga bertindak sebagai pengontrol dari relay yang digunakan untuk menghidupkan/mematikan lampu serta pengontrol motor servo yang digunakan sebagai pengunci pintu rumah. Agar dapat mengontrol dua alat tersebut dibutuhkan program yang digunakan untuk mengolah data yang dari pengguna sebagai input dengan bantuan aplikasi pemrograman python. Program python ini akan dimuat ke dalam program php yang sudah dibuat sebelumnya agar komunikasi antara halaman web dengan relay dan motor servo dapat terhubung.

(36)

pasokan listrik untuk nyala, jika tombol mati ditekan maka relay akan dalam kondisi mati atau tidak akan menyalurkan listrik pada lampu.

3.3 Perancangan Hardware

Agar dapat menjalankan fungsinya dengan baik maka peralatan ini membutuhkan berbagai macam rangkaian hardware. Penjelasan mengenai perancangan hardware ini terbagi menjadi beberapa bagian, yang diantaranya: rangkaian motor servo, rangkaian relay dan lampu, platform pintu.

3.3.1 Rangkaian Motor Servo

Pada rangkaian motor servo ini, motor servo akan dihubungkan dengan pin GPIO yang terdapat pada raspberry pi dan akan mendapatkan tegangan masukan 5V dari pin2.

(37)

Cara Kerja Rangkaian :

Pada Raspberry Pi 2 Model B terdapat 40 pin GPIO. Pin yang digunakan untuk mengontrol gerak putaran motor servo adalah pin 12(GPIO 1) yang nantinya pin ini dideklarasikan sebagai output. Dengan pin ini raspberry pi akan mengontrol motor servo dengan memberikan PWM(Pulse Width Modulation). Tegangan masukan DC 5 Volt(pin 2) dihubungkan dengan motor servo dan pin 6 yang dijadikan ground.

3.3.2 Rangkaian Relay dan Lampu

Rangkaian Relay dan Lampu merupakan rangkaian yang berfungsi untuk menerima perintah dari Raspberry Pi sehingga dapat menyalakan dan mematikan lampu yang terpasang di luar ataupun di dalam rumah.

Gambar 3.5 Rangkaian Relay dan lampu

(38)

Cara kerja rangkaian :

Berdasarkan Gambar 3.5 tegangan 5V DC(pin 4) yang berasal dari Raspberry Pi akan disalurkan ke relay board dan pin 9 yang bertindak sebagai ground. Relay ini akan bertindak sebagai saklar yang terhubung ke rangkaian lampu yang akan menyalurkan aliran listrik atau menutup aliran listrik dengan kontak relay NO(Normally Open). Sedangkan untuk tegangan AC berasal dari stop kontak sebesar 220V dengan salah satu kabel dihubungkan common conection dan satunya dihubungkan dengan lampu.

Untuk kontrol relay board dari Raspberry Pi digunakanlah pin 18 yang dideklarasikan sebagai output untuk mengontrol relay board dalam keadaan aktif atau nonaktif. Kemudian dilanjutkan melalui kabel dan disambungkan ke rangkaian resistor dan lampu yang sudah disusun menjadi prototype ruangan di dalam rumah.

3.3.3 Platform Pintu

Platform pintu merupakan bentuk fisik dari prototype pintu yang digunakan. Pintu ini terbuat dari bahan aklirik. Gambar 3.6 dan 3.7 menunjukkan keseluruhan platform pintu tampak dari depan dan belakang.

(39)

Gambar 3.7 Platform pintu tampak dalam

3.4 Perancangan Program

Perancangan program secara keseluruhan dibagi menjadi beberapa bagian utama yaitu perancangan program motor servo, perancangan program kontrol relay, perancangan pemrograman web. Semua perancangan program ini disimpan dalam raspberry pi.

Untuk program kontrol akan memanfaatkan pin GPIO dari Raspberry untuk memberikan output kepada alat yang digunakan dalam penelitian ini, sedangkan untuk perancangan pemrograman web memanfaatkan raspberry pi yang bisa dijadikan web server.

(40)

Gambar 3.8 Flowchart program secara keseluruhan

Berdasarkan flowchart di atas sebelum memasuki halaman interface kontrol user akan diminta untuk memasukkan “username” dan “password” di halaman login yang akan dicocokkan dengan data pada databse username. Kalau

(41)

data cocok akan masuk ke halaman kontrol, kalau salah akan kembali pada halaman login.

Setelah masuk ke halaman kontrol akan ditampilkan status pintu dan lampu yang diambil dari database status. Setelah itu ada pilihan beberapa tombol yang berfungsi sebagai kontrol saklar. Tombol buka dan tombol tutup merupakan pengontrol motor servo sebagai penggerak kunci pintu. Tombol nyala dan tombol mati merupakan pengontrol relay yang digunakkan sebagai saklar lampu. Kedua sistem ini masing-masing menggunakan satu pin GPIO.

Selain dua tombol yang sudah disebutkan sebelumnya, untuk pengembangan selanjutnya bisa juga ditambahkan beberapa sistem seperti yang berada di dalam kotak merah yang bernama tombol x (ON dan OFF) di flowchart pada Gambar 3.8. Sistem untuk pengembangan ini bisa diperbanyak dengan program yang sama dengan sistem pengontrol relay hingga 28 sistem dengan kata lain terdapat 28 pin GPIO tersisa dari 30 pin GPIO dari Raspberry Pi yang bisa dijadikan input atau output.

3.4.1 Perancangan Program Motor Servo

(42)

Gambar 3.9 Flowchart program motor servo mengunci

Gambar 3.10Flowchart program motor servo membuka kunci mulai

Set pin 12 sebagai output GPIO.setup(12,GPIO.OUT)

Mengatur frekuensi PWM p = GPIO.PWM(12,50)

Memulai dengan duty cycle 7.5% p.start(7.5)

Set pin 12 sebagai output GPIO.setup(12,GPIO.OUT)

Mengatur frekuensi PWM p = GPIO.PWM(12,50)

Memulai dengan duty cycle 6% p.start(6)

untuk mengunci

time.sleep(0.5) GPIO.cleanup()

(43)

Untuk mempertahankan posisinya, servo membutuhkan sinyal diulang tiap 20ms. Jika terdapat sinyal HIGH selama 1,5ms maka posisi servo akan berada di sudut 90° atau sudut normal. Berdasarkan flowchart di atas, python skrip akan menggunakan frekuensi 50Hz, Dengan frekuensi (f) 50Hz maka periode(T) yang dihasilkan melalui rumus berikut:

Frekuensi = 1/Periode Periode = 1/frekuensi

Sehingga periode (T) = 1/50 = 0,02 secondsatau20ms, tepat sesuai dengan kebutuhan servo. Pada Raspberry Pi kita tidak menggunakan lebar pulsa tapi menggunakan Duty-Cycledengan rumusan seperti di bawah ini.

Duty-Cycle = Lebar Pulsa/Periode Periode = 1/frekuensi

Duty-Cycle = Lebar Pulsa * frekuensi

Jika pulse width sebesar 1.5ms dengan frekuensi 50 Hz maka Duty-Cycle yang dibutuhkan adalah:

Duty-Cycle = 0,0015 * 50 = 0,075 = 7.5%

Nilai persentase 7.5 inilah yang akan menjadi nilai Duty-Cycle yang akan digunakan pada skrip program phyton. Nilai 7.5 ini menghasilkan sudut 90° atau sudut normal pada motor servo. Jika memasukkan nilai kurang dari 7.5 maka servo akan berputar berlawanan arah jarum jam. Sebaliknya jika nilai yang dimasukkan melebihi 7.5 maka motor servo akan berputar searah jarum jam.

(44)

untuk membuka digunakanlah Duty-Cycle 5 yang menghasilkan putaran searah jarum jam.

Setiap program yang dijalankan akan diberi jeda 0.5 detik untuk memproses semua program sebelum pin GPIO ditutup.

3.4.2 Perancangan Program Kontrol Relay

Untuk pemrograman pada relay akan dikontrol melalui pin 18 dari Raspberry Pi. Relay akan dalam kondisi on atau menyalurkan listrik apabila pin GPIO memberikan nilai HIGH dan nilai LOW untuk kondisi off. Untuk lebih jelasnya bisa dilihat melalui diagram pada Gambar 3.11 dan Gambar 3.12.

Gambar 3.11 Flowchart program kontrol relay on mulai

Set pin 18 sebagai output GPIO.setup(18,GPIO.OUT)

GPIO.output(18,GPIO.HIGH)

(45)

Gambar 3.12 Flowchart program kontrol relay off

3.4.3 Perancangan pemrograman web

Pemrograman web digunakan sebagai antarmuka untuk pengontrol jarak jauh menggunakan PHP. Perancangan pemrograman ini dilakukan di dalam raspberry pi, yaitu dalam folder direktori /var/www/html. Pemrogaman web ini berisikan beberapa tombol yang dijadikan sebagai input. Hasil dari perancangan ini merupakan halaman web yang bisa diakses oleh web browser.

Cara kerja dari web ini adalah pengguna akan memberikan instruksi melalui beberapa tombol yang ada pada halaman web. Tombol-tombol tersebut akan berfungsi sebagai saklar yang terhubung dengan script program python yang berisikan perintah yang selanjutnya akan diproses oleh raspberry pi.

Selain itu web tersebut juga digunakan untuk mengambil informasi tentang status tentang kunci pintu dan lampu melalui data yang tersimpan di database. Data pada Database akan diperbarui setiap pengguna melakukan penekanan tombol di halaman web tersebut.

mulai

Set pin 18 sebagai output GPIO.setup(18,GPIO.OUT)

GPIO.output(18,GPIO.LOW)

(46)

Pemrograman web ini dibagi menjadi beberapa bagian yaitu desain web, login, status kunci dan lampu, tombol saklar lampu, tombol kunci pintu, penyimpanan status, dan logout.

A. Desain web

 Untuk desain halaman login akan tampil seperti Gambar 3.13

Gambar 3.13Tampilan halaman login

Fungsi dari tombol login adalah jika ditekan akan memproses data username dan password yang telah diinput.

 Program membuat tampilan halaman login

<form name="login" action="otentikasi.php" method="post"> <table border="0" cellpadding="5" cellspacing="0">

<tr>

<td>Username</td> <td>:</td>

<td><input type="text" name="username" /></td> </tr>

<tr>

<td>Password</td> <td>:</td>

<td><input type="password" name="password" /></td> </tr>

<tr align="right">

<td colspan="3"><input type="submit" name="login" value="Login" /></td>

</tr> </table> </form>

(47)

Gambar 3.14 Tampilan halaman utama

 Keterangan halaman utama 1 : untuk menyalakan lampu. 2 : untuk mematikan lampu. 3 : untuk mengunci pintu. 4 : untuk membuka kunci pintu. 5 : status lampu(nyala/mati)

6 : status pintu(terkunci/tidak terkunci) 7 : untuk keluar halaman utama (logout).

 Program membuat tampilan halaman kontrol

<head>

<title>HALAMAN KONTROL</title> </head>

<center> <body>

1

4

3

7

2

(48)

<h1>Kontrol Pi</h1>

<form method="post" action="index.php" onsubmit="return valid()"> <tr>

<td>LAMPU</td>

<td align="center"><input name="nyala" type="submit" value="nyala"></td>

<td align="center"><input name="mati" type="submit" value="mati"></td>

<td> </td> </tr>

<tr>

<td>Kunci pintu</td>

<td align="center"><input name="kunci" type="submit" value="Kunci"></td>

<td align="center"><input name="buka" type="submit" value="buka"></td>

Login digunakan untuk mengakses halaman kontrol dengan mengisi ID dan password yang sudah tersimpan di dalam database yang bernama latihan dengan tabel bernama „data‟. Halaman login ini berada pada file login.php dan untuk pengecekan menggunakan file cek-login.php di folder website yang sudah terkoneksi dengan jaringan.

(49)

Cara kerjanya yaitu mengisi form username dan password pada halaman login.php. Setelah itu web akan memproses username dan password tersebut dan mencocokkan dengan database latihan. Bila benar, maka web akan mengirimkan session “username” yang berisi username. Bila salah, maka web akan mengirimkan session “eror” berisi angka 1, 2, 3, atau 4 yang mewakili 4 jenis eror.

Untuk lebih jelasnya dapat dilihat pada sebagian koding pemrograman web di bawah ini.

 Menghubungkan program php dengan database <?php

$host = 'localhost'; $user = 'root'; $pass = '00quanta'; $dbname = 'latihan';

$connect = mysql_connect($host, $user, $pass) or die(mysql_error()); $dbselect = mysql_select_db($dbname);

?>

 Untuk mengetahui beberapa kesalahan dalam login

if (empty($username) && empty($password)) {

header('location:login.php?error=1');

break;

}

else if (empty($username)) {

header('location:login.php?error=2');

break;

}

else if (empty($password)) {

header('location:login.php?error=3');

break;

}

 Berikut merupakan program unyuk mengetahui apakah berhasil login atau tidak. Jika berhasil maka akan diarahkan ke halaman index.php jika tidak berarti username dan password yang dimasukkan salah.

if (mysql_num_rows($q) == 1) {

$_SESSION['username'] = $username;

header('location:index.php');

(50)

else {

header('location:login.php?error=4');

}

C. Status kunci dan lampu

Untuk mengetahui status kunci dan lampu dapat diakukan dengan memngambil data dari database bernama „stat‟ yang menyimpan status kondisi apakah lampu menyala atau mati, dan apakah pintu terkunci atau tidak. Untuk lebih jelasnya dapat dilihat pada gambar 3.16 dan pemrograman web di bawah ini.

Gambar 3.16Tampilan database status

Untuk status_a akan menyimpan status lampu, nilai 1 berarti lampu menyala dan nilai 0 berarti lampu mati. Sedangkan untuk status_b akan menyimpan status kunci pintu, nilai 1 berarti pintu dalam keadaan terkunci dan nilai 0 berarti pintu tidak terkunci.

Di bawah ini koding untuk status lampu.

<?php

(51)

{

echo "hidup"; }

?>

Kemudian untuk status pintu seperti di bawah ini

<?php

echo "tidak terkunci"; }

else if ($sasa['status_b'] == "1") {

echo "terkunci"; }

?>

D. Tombol saklar lampu

Tombol saklar lampu pada halaman web ini akan mengeksekusi file python yang bernama „nyala.py‟ untuk menyalakan saklar lampu dan akan memperbarui status_a dalam database menjadi bernilai 1 sedangkan file bernama „mati.py‟ untuk mematikan saklar lampu dan akan memperbarui status_a dalam database menjadi bernilai 0. Untuk lebih jelasnya dapat dilihat pada sebagian koding pemrograman.

Jika tombol nyala ditekan maka akan mengeksekusi program dibawah ini

if ($_POST["nyala"])

Sedangkan untuk tombol mati seperti di bawah ini.

(52)

E. Tombol kunci pintu

Tombol kunci lampu pada halaman web ini akan mengeksekusi file python yang bernama „kunci.py‟ untuk mengunci pintu dan akan memperbarui status_b

dalam database menjadi bernilai 1 sedangkan file bernama „buka.py‟ untuk membuka kunci pintu dan akan memperbarui status_b dalam database menjadi bernilai 0. Untuk lebih jelasnya dapat dilihat pada sebagian koding pemrograman. Jika tombol kunci ditekan maka akan mengeksekusi program dibawah ini.

if ($_POST["kunci"])

Sedangkan untuk tombol mati seperti di bawah ini.

if ($_POST["buka"])

Cara kerjanya yaitu memasukkan alamat filel logout.php melalui aplikasi komputer. Setelah itu web akan menghapus semua session.

Berikut ini adalah koding dari pemrograman web logout.php.

<?php

(53)

3.5 Konfigurasi Port Forwarding

Untuk membuat web server dapat diakses oleh jaringan luar melalui internet, dibutuhkan teknologi yang dinamakan Port Forwarding. Port Forwarding adalah suatu fitur yang ada pada modem tertentu berfungsi sebagai pengalihan IP lokal ke IP publik dengan port yang sama(Sitohang). Port Forwarding dapat dikatakan juga NAT (Network Address Translation), karena pada dasarnya sama mengalihkan suatu alamat IP ke alamat IP lain.

Pertama adalah Buka halaman awal dari perangkat modem melalui browser(dalam hal ini, saya anggap halaman awal berada di alamat 192.168.1.1), kemudian masukkan data login.

Gambar 3.17 Tampilan halaman login modem

(54)

Gambar 3.18Konfigurasi Application List

Setelah application list dibuat, pergi ke sub-menu Port Forwarding -> Basic. Isikan nilai ip address Raspberry Pi yang mau dituju kemudian pilih AppName, pilih Application List yang telah dibuat kemudian klik add. Kemudian restart modem tersebut dan port forwarding telah selesai.

(55)

46

4.1 Pengujian Pengaksesan Web Server

Pengujian pengaksesan web server dilakukan dengan menguji kinerja dari program kelayakan sebagai user interface.

4.1.1 Tujuan

Pengujian pengaksesan web server ini bertujuan untuk melihat kinerja program serta untuk mengetahui apakah halaman web bisa diakses sesuai dengan harapan.

4.1.2 Peralatan yang Digunakan

1. Perangkat Keras (Hardware)

a. Laptop.

b. Raspberry pi yang dipasang dengan charger 5V/0.7A

c. Modem.

d. Kabel UTP cross.

2. Perangkat Lunak (Software)

a. Web browser pada Laptop.

4.1.3 Prosedur Pengujian

1. Hubungkan komputer dengan modem dengan koneksi wifi

2. Hubungkan modem dengan Raspberry pidengan modem dengan kabel UTP. 3. Buka web browser pada laptop dan masukkan alamat 192.168.1.1 untuk

(56)

lalu pilih “DHCP Server”, disitu terdapat list ip address yang terhubung dengan modem tersebut. Untuk mencari ip address dari Raspberry pi, lihat ip addressyang mempunyai hostname raspberrypi.

4. Masukkan ip address dari Raspberry pi pada web browser, jika tampil halaman login berarti web server sudah bisa diakses melalui jaringan.

5. Untuk mengakses database pada web server bisa dilakukan dengan cara membuka http://alamat-ip/phpmyadmin

4.1.4 Hasil Pengujian Pengaksesan Web Server

Pengujian pengaksesan web server dibutuhkan untuk memastikan bahwa web server dapat diakses dengan web browser. Gambar 4.1 merupakan halaman login .

Gambar 4.1 Tampilan Halaman Login

(57)

maka akan menuju halaman kontrol. Gambar 4.2 merupakan tampilan halaman kontrol yang bisa diakses apabila sudah melakukan login.

Gambar 4.2 Halaman Kontrol

(58)

Gambar 4.3 Pemberitahuan Username dan Password Kosong

Gambar 4.4 Pemberitahuan Username dan Password Salah

(59)

Gambar 4.6 Pemberitahuan Username Kosong

4.2 Pengujian Kontrol Lampu

Pengujian lampu dilakukan dengan menguji apakah komunikasi antara web browser dan rangkaian lampu telah berfungsi dengan baik dengan jaringan lokal.

4.2.1 Tujuan

Pengujian lampu ini bertujuan untuk menguji apakah lampu akan akan menyala atau mati setelah dikontrol melalui web browser.

4.2.2 Peralatan yang Digunakan

1. Perangkat Keras (Hardware)

a. Laptop.

b. Raspberry pi yang dipasang dengan charger 5V/0.7A

c. Modem.

d. Lampu.

e. Single Board Relay

2. Perangkat Lunak (Software)

(60)

4.2.3 Prosedur Pengujian

1. Hubungkan laptopdengan modem menggunakan jaringan wifi.

2. Hubungkan modem dengan Raspberry pidengan modem dengan kabel UTP. 3. Membuat rangkaian seperti Gambar 3.6.

4. Dengan aplikasi web browser buka halaman web yang telah dibuat dan melakukan login.

5. Setelah itu tampil halaman kontrol, untuk kontrol lampu terdapat dua tombol yaitu tombol nyala dan mati.

4.2.4 Hasil Pengujian Kontrol Lampu

Pengujian kontrol lampu dibutuhkan untuk memastikan bahwa komunikasi antara web browser dan lampu yang terhubung melalui GPIO Raspberry pi dapat bekerja sesuai keinginan atau tidak. Gambar 4.7 menunjukkan bahwa lampu menyala setelah tombol nyala dalam halaman kontrol telah ditekan.

(61)

Untuk tingkat keberhasilan fungsi kontrol lampu perlu dilakukan beberapa kali percobaan yang hasilnya dapat dilihat dari Tabel 4.1.

Tabel 4.1 Hasil Percobaan Kontrol Lampu Percobaan ke- Jenis tombol

nyala mati

10 berhasil berhasil

11 berhasil berhasil

12 berhasil berhasil

13 berhasil berhasil

14 berhasil berhasil

15 berhasil berhasil

16 berhasil berhasil

17 berhasil berhasil

18 berhasil berhasil

19 berhasil berhasil

20 berhasil berhasil

21 berhasil berhasil

22 berhasil berhasil

23 berhasil berhasil

24 berhasil berhasil

25 berhasil berhasil

26 berhasil berhasil

27 berhasil berhasil

28 berhasil berhasil

29 berhasil berhasil

30 berhasil berhasil

4.3 Pengujian Motor Servo

(62)

4.3.1 Tujuan

Pengujian lampu ini bertujuan untuk menguji apakah motor servo akan bergerak mengunci atau membuka setelah dikontrol melalui web browser.

4.3.2 Alat yang digunakan

1. Perangkat Keras (Hardware)

a. Laptop.

b. Raspberry pi yang dipasang dengan charger 5V/0.7A

c. Modem.

d. Project Board.

e. Motor servo Tower Pro 9g.

f. Single Board Relay

2. Perangkat Lunak (Software)

a. Web browser pada laptop.

4.3.3 Prosedur Pengujian

1. Hubungkan laptopdengan modem menggunakan jaringan wifi.

2. Hubungkan modem dengan Raspberry pidengan modem dengan kabel UTP. 3. Membuat rangkaian seperti Gambar 3.4.

4. Dengan aplikasi web browser buka halaman web yang telah dibuat dan melakukan login.

(63)

4.3.4 Hasil Pengujian Motor Servo

Pengujian motor servo dibutuhkan untuk memastikan bahwa komunikasi antara web browser dan motor servo yang terhubung melalui GPIO Raspberry Pi dapat bekerja sesuai keinginan atau tidak. Gambar 4.8 menunjukkan bahwa motor servo (lingkaran merah) dalam posisi tidak mengunci dan Gambar 4.9 menunjukkan motor servo mengunci setelah tombol kunci dalam halaman kontrol telah ditekan.

(64)

Gambar 4.9 Motor Servo Posisi Mengunci

(65)

Tabel 4.2 Hasil Percobaan Pengujian Motor Servo Percobaan ke- Jenis tombol

kunci buka

10 berhasil berhasil

11 berhasil berhasil

12 berhasil berhasil

13 berhasil berhasil

14 berhasil berhasil

15 berhasil berhasil

16 berhasil berhasil

17 berhasil gagal

18 berhasil berhasil

19 berhasil berhasil

20 berhasil berhasil

21 berhasil berhasil

22 berhasil berhasil

23 berhasil berhasil

24 berhasil berhasil

25 berhasil berhasil

26 berhasil berhasil

27 berhasil berhasil

28 berhasil berhasil

29 berhasil berhasil

30 berhasil berhasil

(66)

57

5.1 Simpulan

Berdasar hasil pengujian didapatkan bahwa semua peralatan dan sistem dapat berjalan dengan baik. Web yang menjadi interface untuk mengontrol lampu dan kunci pintu sudah bisa diakses oleh perangkat seperti laptop dan smartphone melalui web browser. Raspberry pi dapat mengontrol lampu melalui web dengan tingkat akurasi mencapai 100% untuk menghidupkan dan mematikan lampu. Selain itu Raspberry pi juga dapat mengontrol kunci pintu dengan menggunakan motor servo sebagai penggerak kunci dengan tingkat keberhasilan dalam mengunci mencapai 100% dan untuk membuka kunci mencapai 96,67%. Status yang ditampilkan pada halaman web sudah sesuai dengan kondisi lampu dan kunci pintu.

5.2 Saran

Berikut ini terdapat beberapa saran yang penulis berikan untuk peneliti berikutnya apabila ingin mengembangkan sistem yang telah dibuat agar menjadi lebih baik adalah sebagai berikut:

1. Raspberry pi sebaiknya mendapat arus listrik lebih dari 1 A agar asupan listrik lebih stabil dan tidak mengalami restart secara tiba-tiba.

(67)

3. Motor servo bisa diganti dengan berbagai macam perangkat sebagai pengunci seperti kunci magnetik, kunci solenoid dan lain sebagainya.

(68)

59

Andrianto. 2015. Aplikasi Pengontrol Jarak Jauh pada Lampu Rumah Berbasis Android. Universitas Muria Kudus: Kudus.

Arsa, Jean S. Handi, dkk. 2009. Pembuatan Interface Web Berbasis PHP. STIKOM Surabaya: Surabaya.

Hakim, Malik Abdillah Ibnul. 2013. Pemanfaatan Mini PC Raspberry Pi Sebagai Pengontrol Jarak Jauh Berbasis Web Pada Rumah.. Bandung: JBPTUNIKOMPP.

Mulyawan, Galih Fiktri, dkk. 2013. Sistem Informasi Jaringan Komunikasi STO Telkom Gegerkalong Bandung. UNIKOM: Bandung.

Pramudia, Ardita Yoga. 2009, Manajemen Pelatihan Oracle Workforce Development Program(Owdp) PENS ITS Berbasis Web.PENS-ITS: Surabaya.

Pramusinto, Wahyu., dkk. 2013. Aplikasi Kendali Kunci Pintu Jarak Jauh dengan Board DFRduino dan Twitter. Prosiding SNST ke-4, Vol. 1, No.1. http://publikasiilmiah.unwahas.ac.id(Diakses 19 Februari 2016).

Silitonga, Jeckson. Pendaftaran Mahasiswa Baru Berbasis Mobile(Studi Kasus: Universitas Maritim Raja Ali Haji).Universitas Maritim Raja Ali Haji: Tanjung Pinang.

Gambar

Gambar 2.1 Raspberry Pi 2 Model B
Gambar 2.2 Pin GPIO Raspberry Pi 2
Gambar 2.4 Relay
Gambar 2.5 Motor Servo
+7

Referensi

Dokumen terkait

Tujuan dari pembuatan alat ini untuk merancang bangun sistem keamanan pintu rumah menggunakan switch magnetik dengan monitoring web bootstrap berbasis Raspberry pi b+

Kamera Raspberry Pi tipe rev 1.3 dihubungkan dengan port CSI (camera serial interface) yang terdiri dari 15 pin pada Raspberry Pi. Kamera berfungsi mengambil foto setiap ada

konfigurasi pada Raspberry Pi yang terkait dengan web server, secure shell server (SSH) dan database server yang akan di implementasikan sebagai sistem informasi

konfigurasi pada Raspberry Pi yang terkait dengan web server, secure shell server (SSH) dan database server yang akan di implementasikan sebagai sistem informasi

web server tersebut, maka sudah bisa mengontrol beberapa alat-alat elektronik yang sudah dikonfigurasikan sebelumnya pada komputer server. Keutamaan penetian ini

Beberapa permasalahan yang ditemukan seperti Raspberry Pi tidak bisa terhubung dengan Telegram Messenger, kamera tidak bisa mengambil gambar, speaker tidak

2017 ‘RANCANG BANGUN SISTEM PENGENDALIAN PERANGKAT LISTRIK BERBASIS WEB SERVER MENGGUNAKAN MINI PC RASPBERRY PI STUDI KASUS GEDUNG FAKULTAS TEKNIK UNIVERSITAS SAM RATULANGI’.. 2014

Sistem yang dibuat berfungsi juga sebagai pemantauan kondisi rumah melalui jaringan internet dan web menggunakan teknologi Raspberry Pi sebagai pusat sistem, sehingga dengan inovasi