TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan...

93
TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU PINTAR BERBASIS RFID DAN BIOMETRIK DENGAN SISTEM PENGAMANAN KAMERA Diajukan untuk memenuhi salah syarat Memperoleh gelar Sarjana Teknik pada Program Studi Teknik Elektro Fakultas Sains dan Teknologi Universitas Sanata Dharma disusun oleh : BENEDICTUS SURYA ARTHA MARHAENDRA NIM: 145114049 PROGRAM STUDI TEKNIK ELEKTRO FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS SANATA DHARMA YOGYAKARTA 2018 PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Transcript of TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan...

Page 1: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

TUGAS AKHIR

Halaman Sampul (Bahasa Indonesia)

KUNCI PINTU PINTAR BERBASIS RFID

DAN BIOMETRIK DENGAN SISTEM

PENGAMANAN KAMERA

Diajukan untuk memenuhi salah syarat

Memperoleh gelar Sarjana Teknik pada

Program Studi Teknik Elektro

Fakultas Sains dan Teknologi Universitas Sanata Dharma

disusun oleh :

BENEDICTUS SURYA ARTHA MARHAENDRA

NIM: 145114049

PROGRAM STUDI TEKNIK ELEKTRO

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

2018

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 2: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

ii

ii

FINAL PROJECT

Halaman Sampul (Bahasa Inggris)

BIOMETRIC AND RFID BASED SMART LOCK

WITH CAMERA AS SECURITY SYSTEM

In a partial fulfilment of the requirements

for the degree of Sarjana Teknik

In Department of Electrical Engineering

Faculty of Science and Technology

Sanata Dharma University

BENEDICTUS SURYA ARTHA MARHAENDRA

NIM: 145114049

DEPARTMENT OF ELECTRICAL ENGINEERING

FACULTY OF SCIENCE AND TECHNOLOGY

SANATA DHARMA UNIVERSITY

YOGYAKARTA

2018

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 3: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

iii

iii

LEMBAR PERSETUJUAN

TUGAS AKHIR

KUNCI PINTU PINTAR BERBASIS RFID DAN BIOMETRIK

DENGAN SISTEM PENGAMANAN KAMERA

(BIOMETRIC AND RFID BASED SMART LOCK WITH

CAMERA AS SECURITY SYSTEM)

disusun oleh:

BENEDICTUS SURYA ARTHA MARHAENDRA

NIM: 145114049

Telah disetujui oleh:

Pembimbing:

Ir. Tjendro M.Kom. Tanggal _______________

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 4: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

iv

iv

LEMBAR PENGESAHAN

TUGAS AKHIR

KUNCI PINTU PINTAR BERBASIS RFID DAN BIOMETRIK

DENGAN SISTEM PENGAMANAN KAMERA

(BIOMETRIC AND RFID BASED SMART LOCK WITH

CAMERA AS SECURITY SYSTEM)

disusun oleh:

BENEDICTUS SURYA ARTHA MARHAENDRA

NIM: 145114049

Telah dipertahankan didepan tim penguji

pada tanggal …………..

dan dinyatakan memenuhi syarat

Susunan tim penguji:

Nama Lengkap Tanda Tangan

Ketua : Djoko Untoro Suwarno, S.Si.,M.T. …………………….

Sekretaris : Ir. Tjendro, M.Kom …………………….

Anggota : Petrus Setyo Prabowo, S.T.,M.T. …………………….

Yogyakarta, …………………….

Fakultas Sains dan Teknologi

Universitas Sanata Dharma

Dekan,

Sudi Mungkasi, S.Si., M.Math. Sc, Ph.D

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 5: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

v

v

PERNYATAAN KEASLIAN KARYA

Saya menyatakan dengan sesungguhnya bahwa tugas akhir yang berjudul “KUNCI

PINTU PINTAR BERBASIS RFID DAN BIOMETRIK DENGAN

SISTEM PENGAMANAN KAMERA” tidak memuat karya atau bagian karya

orang lain, kecuali yang telah disebutkan dalam kutipan dan daftar pustaka sebagaimana

layaknya karya ilmiah.

Yogyakarta, 5 Oktober 2018

Benedictus Surya Artha Marhaendra

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 6: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

vi

vi

LEMBAR PERSEMBAHAN DAN MOTTO HIDUP

“Success is not final, failure is not fatal;

it is the courage to continue that counts.”

Winston Churchill

Skripsi ini kupersembahkan kepada:

Tuhan Yang Maha Esa

Bapak, Ibu tercinta dan keluarga terkasih

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 7: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

vii

vii

LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI

KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS

Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma :

Nama : BENEDICTUS SURYA ARTHA MARHAENDRA

Nomor Mahasiswa : 145114049

Demi pengembangan ilmu pengetahuan, saya memberikan kepada Perpustakaan

Universitas Sanata Dharma karya ilmiah saya yang berjudul :

KUNCI PINTU PINTAR BERBASIS RFID DAN BIOMETRIK

DENGAN SISTEM PENGAMANAN KAMERA

beserta perangkat yang diperlukan (bila ada). Dengan demikian saya memberikan kepada

Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, mengalihkan dalam bentuk

media lain, mengelolanya dalam bentuk pangkalan data, mendistribusikan secara terbatas,

dan mempublikasikannya di Internet atau media lain untuk kepentingan akademis tanpa

perlu meminta ijin dari saya maupun memberikan royalti kepada saya selama tetap

mencantumkan nama saya sebagai penulis.

Demikian pernyataan ini yang saya buat dengan sebenarnya.

Yogyakarta, 16 Oktober 2018

(Benedictus Surya Artha Marhaendra)

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 8: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

viii

viii

INTISARI

Keamanan rumah mulai bergeser dengan menggunakan teknologi. Penelitian ini akan

membuat sistem untuk mengganti kunci pintu mekanik dengan RFID dan sidik jari, serta

memberikan sistem keamanan dengan menggunakan kamera.

Kunci pintu akan digantikan dengan kartu RFID dan sidik jari yang bekerja secara

bersama. Kartu RFID dan sidik jari akan dibaca oleh Arduino Mega dan kemudian

dikirimkan ke komputer untuk dapat dicocokkan dengan database. Komputer akan

menentukan pintu dibukakan atau tidak, komputer juga akan merekam aktivitas dibelakang

pintu. Bahasa pemrograman yang digunakan pada komputer adalah Python. Data-data yang

terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja.

Penelitian ini akan melihat seberapa kesuksesan sistem dalam menangani situasi.

Penelitian ini menghasilkan sebuah sistem kunci pintu dan keamanan yang memiliki

keberhasilan 100%. Sistem dapat menggunakan database dengan baik dan mengakses

webserver, namun tidak dapat menampilkan video secara langsung.

Kata Kunci: RFID, sidik jari, kunci pintu, keamanan, Python

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 9: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

ix

ix

ABSTRACT

Home security is starting to shift using technology. This research will create a system

to replace mechanical door locks with RFID and fingerprints, and provide a security system

using a camera.

The door lock will be replaced with an RFID card and fingerprint that works together.

RFID cards and fingerprints will be read by Arduino Mega and then sent to the computer to

be matched with the database. The computer will determine whether the door is opened or

not, the computer will also record the activity behind the door. The programming language

used on computers is Python. Data related to system activation will be sent to the web server

to be accessed anywhere. This research will see how successful the system is in handling the

situation.

This research resulted in a door lock and security system that had 100% success. The

system can use the database properly and access the web server, but cannot display the video

directly.

Keywords: RFID, fingerprint, door lock, security, Python

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 10: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

x

x

KATA PENGANTAR

Puji dan syukur kepada Tuhan Yang Maha Kuasa atas segala berkat dan rahmat-Nya,

sehingga tugas akhir ini dapat diselesaikan dengan baik. Berbagai pihak telah memberikan

doa, dukungan, semangat dan bantuan sehingga tugas akhir dapat tersusun sesuai dengan

ketentuan yang ada. Oleh karena itu, penulis mengucapkan terima kasih sebesar-besarnya

kepada:

1. Bapak dan Ibu penulis, Bapak Ignatius Sumaryanto dan Ibu Antonita Suharyati, yang

telah memberikan dukungan sepenuhnya dalam bentuk doa, moral dan material

2. Bapak Petrus Setyo Prabowo, S.T., M.T. selaku Kepala Prodi Teknik Elektro

Universitas Sanata Dharma

3. Bapak Ir. Tjendro, M.Kom. yang telah membimbing dengan sabar, pengertian dan

ketulusan hati dalam memberikan saran, kritik, serta motivasi

4. Teman-teman seperjuangan, khususnya kepada Vincentius, Celvien Kurniawan, dan

Emanuel Febriano yang didalam proses penulisan memberikan bantuan, candaan,

dan rasa kebersamaan dalam menhadapi tantanggan

5. Bapak/Ibu dosen yang telah mengajarkan banyak hal selama penulis menempuh

pendidikan di Program Studi Teknik Elektro, Fakultas Sains dan Teknologi

Universitas Sanata Dharma.

6. Serta semua pihak yang tidak dapat disebutkan satu-persatu atas dukungan dan

memperlancar penulisan Tugas Akhir ini

Penulisan tugas akhir ini tentunya jauh dari sempurna, sehingga penulis menerima berbagai

keritik dan saran dengan harapan mampu menjadikan penulis menjadi lebih baik lagi.

Semoga tugas akhir ini dapat diterima dengan baik oleh semua pihak dan dapat digunakan

guna meningkatkan kesejahteraan masyarakat.

Yogyakarta, 16 Oktober 2018

Penulis.

(Benedictus Surya Artha Marhaendra)

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 11: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

xi

xi

DAFTAR ISI

Halaman Sampul (Bahasa Indonesia) ..................................................................................... i

Halaman Sampul (Bahasa Inggris) ........................................................................................ ii

LEMBAR PERSETUJUAN ................................................................................................. iii

HALAMAN PENGESAHAN .............................................................................................. iv

PERNYATAAN KEASLIAN KARYA ................................................................................ v

LEMBAR PERSEMBAHAN DAN MOTTO HIDUP ......................................................... vi

LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK

KEPENTINGAN AKADEMIS ........................................................................................... vii

INTISARI ........................................................................................................................... viii

ABSTRACT ......................................................................................................................... ix

KATA PENGANTAR ........................................................................................................... x

DAFTAR ISI ........................................................................................................................ xi

DAFTAR GAMBAR .......................................................................................................... xiv

DAFTAR TABEL .............................................................................................................. xvi

DAFTAR PERSAMAAN ................................................................................................. xvii

DAFTAR LAMPIRAN .................................................................................................... xviii

BAB I. PENDAHULUAN .................................................................................................... 1

1.1. Latar Belakang ............................................................................................................ 1

1.2. Tujuan dan Manfaat .................................................................................................... 2

1.3. Batasan Masalah ......................................................................................................... 2

1.4. Metodologi Penelitian ................................................................................................ 3

BAB II. DASAR TEORI ....................................................................................................... 4

2.1. Sistem Keamanan Terintegerasi ................................................................................. 4

2.2. Radio-Frequency Identification .................................................................................. 5

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 12: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

xii

2.3. Biometri ...................................................................................................................... 6

2.4. Piranti keras ................................................................................................................ 6

2.4.1. Komputer ............................................................................................................. 6

2.4.2. Kamera................................................................................................................. 7

2.4.3. Modul MF-RC522 ............................................................................................... 7

2.4.4. Pembaca Sidik Jari .............................................................................................. 8

2.4.5. Mikrokontroller Arduino Mega ........................................................................... 9

2.4.6. Kunci Elektrik ................................................................................................... 11

2.4.7. Limit Switch ...................................................................................................... 12

2.4.8. LED ................................................................................................................... 13

2.4.9. Buzzer ................................................................................................................ 13

2.5. Piranti Lunak ............................................................................................................ 14

2.5.1. Python ................................................................................................................ 14

2.5.2. Database ............................................................................................................ 16

2.5.3. Kivy ................................................................................................................... 16

2.5.4. Arduino IDE ...................................................................................................... 16

BAB III. RANCANGAN PENELITIAN ............................................................................ 17

3.1. Proses Kerja Sistem .................................................................................................. 17

3.2. Perancangan Perangkat Keras .................................................................................. 18

3.2.1. Letak Pemasangan Sistem ................................................................................. 18

3.2.2. Sistem Kunci Pintu ............................................................................................ 19

3.2.3. Sistem Kamera ................................................................................................... 23

3.3. Perangkat Lunak ....................................................................................................... 23

3.3.1. Proses Kunci Pintu ............................................................................................ 24

3.3.2. Proses Kamera ................................................................................................... 26

3.3.3. Proses Pengiriman Data ..................................................................................... 26

3.3.4. Database ............................................................................................................ 27

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 13: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

xiii

3.4. Antarmuka ................................................................................................................ 28

BAB IV. HASIL DAN PEMBAHASAN ............................................................................ 30

4.1. Perubahan Perancangan ............................................................................................ 30

4.1.1. Perubahan Driver Kunci .................................................................................... 30

4.1.2. Perubahan Alur Database .................................................................................. 30

4.1.3. Perubahan Bahasa Pemrograman untuk Antarmuka ......................................... 31

4.1.4. Penambahan Protokol Komunikasi ................................................................... 31

4.2. Implementasi ............................................................................................................. 32

4.3. Hasil Pengujian Subsistem ....................................................................................... 35

4.3.1. Pengujian RFID Reader ..................................................................................... 35

4.3.2. Pengujian Sensor Sidik Jari ............................................................................... 37

4.3.3. Pengujian Kunci Solenoid ................................................................................. 38

4.3.4. Pengujian Algorithma Sistem Kunci Pintu ........................................................ 39

4.3.5. Pengujian Sistem Kamera .................................................................................. 41

4.3.6. Proses Pengiriman Data ..................................................................................... 42

4.4. Pembahasan Perangkat Lunak .................................................................................. 43

4.4.1. Program Database .............................................................................................. 43

4.4.2. User Interface .................................................................................................... 45

BAB V. KESIMPULAN DAN SARAN ............................................................................. 47

5.1. Kesimpulan ............................................................................................................... 47

5.2. Saran ……………………………………………………………………………….47

Daftar Pustaka ..................................................................................................................... 48

LAMPIRAN

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 14: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

xiv

xiv

DAFTAR GAMBAR

Gambar 1.1. Blok diagram rancangan ................................................................................... 3

Gambar 2.1. Cara kerja RFID [7] .......................................................................................... 5

Gambar 2.2. Modul MF-RC522 (tengah) dan tag RFID berbentuk kartu (kiri) dan

gantungan kunci (kanan) ....................................................................................................... 8

Gambar 2.3. Diagram pin dari modul MF-RC522 ................................................................ 8

Gambar 2.4. Biovo C3 fingerprint sensor ............................................................................. 8

Gambar 2.5. Diagram konfigurasi pin pada Biovo C3 .......................................................... 9

Gambar 2.6. Arduino Mega 2560 ........................................................................................ 10

Gambar 2.7. Contoh kunci elektrik ..................................................................................... 11

Gambar 2.8. Rangkaian dasar kunci elektrik solenoid ........................................................ 11

Gambar 2.9. Rangkaian driver ............................................................................................ 12

Gambar 2.10. Rangkaian switch .......................................................................................... 12

Gambar 2.11. LED .............................................................................................................. 13

Gambar 2.12. Rangkaian LED ............................................................................................ 13

Gambar 2.13. Buzzer piezoelectric...................................................................................... 14

Gambar 2.14. Rangkaian buzzer .......................................................................................... 14

Gambar 3.1. Diagram blok utama ....................................................................................... 17

Gambar 3.2. Tata letak kamera dan sistem kunci ................................................................ 18

Gambar 3.3. Hubungan komputer dengan Arduino Mega .................................................. 19

Gambar 3.4. Hubungan pin Arduino Mega dengan modul MF-RC522 .............................. 19

Gambar 3.5. Hubungan pin Arduino Mega dengan modul Biovo C3 ................................. 20

Gambar 3.6. Kunci pada rangkaian driver ........................................................................... 21

Gambar 3.7. Hubungan limit switch dengan arduino .......................................................... 21

Gambar 3.8. Rangkaian LED merah dan hijau .................................................................... 22

Gambar 3.9. Rangkaian buzzer............................................................................................ 22

Gambar 3.10. Sambungan kamera dengan komputer .......................................................... 23

Gambar 3.11. Alur keseluruhan sistem ............................................................................... 23

Gambar 3.12. Alur program untuk kunci pintu ................................................................... 25

Gambar 3.13. Alur proses kamera ....................................................................................... 26

Gambar 3.14. Alur proses pengiriman data ......................................................................... 27

Gambar 3.15. Alur program penambahan entry pada database .......................................... 27

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 15: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

xv

Gambar 3.16. Antarmuka untuk login page ........................................................................ 29

Gambar 3.17. Menu utama .................................................................................................. 29

Gambar 3.18. Menu utama dengan peringatan .................................................................... 29

Gambar 4. 1. IRF 520 Mosfet driver module ...................................................................... 30

Gambar 4. 2. Alur pemasukkan entry database ................................................................... 31

Gambar 4. 3. Tampilan depan kotak hitam ......................................................................... 33

Gambar 4. 4. Bagian dalam dari kotak hitam ...................................................................... 33

Gambar 4. 5. Tampilan kotak hitam relatif terhadap daun pintu ......................................... 34

Gambar 4. 6. Tampilan bagian dalam pengunci solenoid ................................................... 34

Gambar 4. 7. Tampilan pengunci solenoid relatif pada bagian belakang daun pintu.......... 35

Gambar 4. 8. Blok program pembaca RFID pada Arduino ................................................. 36

Gambar 4. 9. Blok program pencocokan UID dengan database pada Python .................... 36

Gambar 4. 10. Blok program untuk membaca sidik jari dan mendapatkan ID sidik jari .... 37

Gambar 4. 11. Blok program untuk mencocokan ID sidik jari dengan database ................ 37

Gambar 4. 12. Gambar jari Nuel (dua kiri) dan Artha (dua kanan) .................................... 38

Gambar 4. 13. Salah satu video yang merekam saat gerendel tersangkut ........................... 39

Gambar 4. 14. Algorithma rutin .......................................................................................... 41

Gambar 4. 15. Program untuk merekam menggunakan kamera ......................................... 42

Gambar 4. 16. Pengirim log ................................................................................................ 43

Gambar 4. 17. Pengirim video ............................................................................................. 43

Gambar 4. 18. Fungsi-fungsi pada program database ......................................................... 44

Gambar 4. 19. Listing program untuk menambah pengguna baru ...................................... 45

Gambar 4. 20. Tampilan user interface pada browser ........................................................ 45

Gambar 4. 21. Laman “Logs” .............................................................................................. 46

Gambar 4. 22. Laman “Videos” .......................................................................................... 46

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 16: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

xvi

xvi

DAFTAR TABEL

Tabel 2.1. Spesifikasi C3 [12] ............................................................................................... 9

Tabel 2.2. Konfigurasi pin C3 ............................................................................................... 9

Tabel 2.3. Tabel spesifikasi Arduino Mega 2560 ................................................................ 10

Tabel 4. 1 Tabel header dan data yang diterima program main() Python ........................... 32

Tabel 4. 2 Tabel header dan data yang diterima program Arduino .................................... 32

Tabel 4. 3. Tabel keberhasilan membaca kartu RFID ......................................................... 36

Tabel 4. 4 Tabel tingkat keberhasilan men-scan sidik jari .................................................. 38

Tabel 4. 5. Kegagalan identifikasi RFID ............................................................................. 39

Tabel 4. 6. Kegagalan pengidentifikasian sidik jari ............................................................ 39

Tabel 4. 7. Tabel ketidakcocokan RFID dengan sidik jari .................................................. 40

Tabel 4. 8. Tabel tingkat keberhasilan algorithma rutin untuk membuka pintu .................. 40

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 17: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

xvii

xvii

DAFTAR PERSAMAAN

Persamaan 2.1 ………………………………………………………………………… 12

Persamaan 2.2 ………………………………………………………………………… 12

Persamaan 2.3 ………………………………………………………………………… 13

Persamaan 2.4 ………………………………………………………………………… 13

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 18: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

xviii

xviii

DAFTAR LAMPIRAN

Cara penggunaan ……………………………………………………………………. L1

Gambar Rangkaian Keseluruhan………………..…………………………………… L2

Listing Program Utama………………………………………………………………. L3

Listing Program Sistem Kamera ……………………………………………………. L6

Listing Program Database …………………………………………………………… L7

Listing Program Fail Checker ……………………………………………………….. L8

Listing Program FTPuploader ……………………………………………………….. L10

Listing Program Log …………………………………………………………………. L11

Listing Program Log Database ………………………………………………………. L12

Listing Program penambahan Entry ………………………………………………… L13

Listing Program Arduino …………………………………………………………….. L15

Listing Program User Interface ………………………………………………………. L22

Data Percobaan ………………………………………………………………………. L24

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 19: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

1

BAB I

PENDAHULUAN

1.1. Latar Belakang

Rumah memang dibangun untuk memberikan tempat berteduh dikala hujan atau

panas, berkumpul dengan keluarga, dan tumbuh dengan keluarga. Tidak ubahnya, seorang

pemilik rumah ingin memberikan kenyaman bagi keluarganya, dan juga keluarga ingin

memiliki rumah yang bukan hanya nyaman, namun juga aman. Penduduk Indonesia

terutama mereka yang tinggal di kota besar, merasa tidak nyaman dengan keamanan tempat

tinggal mereka. Pagar dibangun lebih tinggi dari atap, dilengkapi dengan kawat berduri,

gerbang dengan teralis besi, dan bagi yang mampu memasang CCTV dan membayar

pegawai keamanan (satpam) untuk mejaga rumah selama 24 jam sehari [1]. Kebanyakan

rumah di Indonesia juga masih menggunakan kunci pintu mekanik, yang dapat dengan

mudah di-copy oleh tukang kunci.

Di negara maju sudah banyak bermunculan penyedia sistem keamanan yang dapat

dipasang sendiri, dan dapat diakses dengan devais mobile pada umumnya, menjamin

keamanan dan kemudahan penggunanya [2] [3]. Dengan mengabungkan keinginan dari

keluarga dan sistem IoT, keamanan yang terpadu mulai tumbuh menjadi salah satu kemajuan

teknologi sekarang. Namun, penyedia keamanan yang sangat terpadu belum hadir di

Indonesia.

Penelitian mengenai keamanan sudah pernah diulas di kalangan Universitas Sanata

Dharma yang dilakukan oleh Kristiawan Putranto dengan judul "Sistem Monitoring

Keamanan dengan Menggunakan WebCam dengan Antarmuka SmartPhone Android” [4].

Penelitian yang menggunakan RFID dan Biometrik sudah pernah diulas pada penelitian dari

Nana Natalianto dengan judul “Sistem Presensi Perkuliahan Menggunakan RFID” [5].

Sistem kunci pintu pintar berbasis RFID dan biometrik dengan sistem keamanan

kamera akan memberikan keamanan kepada pemilik rumah dengan sistem yang

menggabungkan dan mengotomasi antara kunci pintu dengan sistem keamanan. Kunci pintu

dengan RFID dan biometri akan memberikan validasi untuk membukakan kunci elektrik

yang terpasang pada pintu. Jika keamanan terancam, sistem dapat mengirimkan log dari

sistem dan mengirimkan video dari kamera di dalam rumah, mengenai kondisi di dalam

rumah dan merekam orang yang masuk rumah sehingga diketahui oleh pemilik rumah.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 20: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

2

1.2. Tujuan dan Manfaat

Tujuan dari penelitian ini adalah untuk membuat sistem yang dapat menilai keabsahan

orang untuk mengakses kunci pintu rumah, dan dapat memberikan peringatan dan informasi

ketika sistem keamanan terganggu.

Manfaat utama dari penilitian ini adalah untuk memberikan solusi untuk sistem

keamanan pada pemilik rumah yang ingin memiliki teknologi keamanan yang terpadu.

Memberikan kemudahan dan kenyamanan dalam membuka pintu, tidak lagi perlu membawa

kunci yang berat dan dapat hilang, RFID card lebih mudah diselipkan di dompet atau

kantong, dan sidik jari tidak akan pernah terlupakan, hal ini memberikan rasa aman

tambahan bagi pemilik rumah.

1.3. Batasan Masalah

Alat ini merupakan sebuah sistem keamanan menggunakan RFID card dan pembaca

sidik jari sebagai kunci, dan kamera sebagai pemantau kondisi didalam rumah beserta

merekam orang saja yang masuk. Batasan masalah secara menyeluruh pada penelitian ini

adalah sebagai berikut:

1. Menggunakan kamera di dalam

2. Fasilitas untuk 4 user

3. Menggunakan RFID tag dan reader

4. Menggunakan biometrik fingerprint

5. Mikrokontroler Ardunio

6. Kunci elektronik

7. Komputer untuk pengolah video

8. Data yang diolah dan dikirim adalah log history dan video

9. Komunikasi Wifi

10. Memanfaatkan website

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 21: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

3

1.4. Metodologi Penelitian

Dalam tugas akhir ini akan digunakan metode-metode penulisan sebagai berikut:

1. Studi literatur, metode yang digunakan untuk mengumpulkan tulisan, jurnal yang

telah ada mengenai hal-hal yang berkaitan dengan tugas akhir ini.

2. Perancangan, adalah metode untuk merancang sistem yang akan dipakai, baik

merancang perangkat lunak dan/atau perangkat keras yang akan dipakai dan dibuat.

Gambar 1.1. Blok diagram rancangan

3. Pengambilan data, mengambil data dengan mencoba sistem berkali kali dengan

kondisi yang berbeda. Pengambilan data meliputi, data pada kondisi normal, data

pada kondisi sistem terancam dalam beberapa kali pengambilan

4. Pengolahan data, mengolah data yang telah diambil dan menentukan tingkat

keberhasilan sistem. Data akan diolah menjadi presentase dimana sistem keamanan

memberikan hasil positif secara tepat, biometrik dapat membaca sidik jari, RFID

dapat membaca tag yang ada, komunikasi komputer dengan kontroller, dan komputer

dengan internet.

5. Analisa data dan kesimpulan, adalah menyimpulkan hasil dari data yang telah diolah.

Analisa kesimpulan meliputi seberapa sistem secara keseluruhan dapat bejalan sesuai

keinginan atau tidak.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 22: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

4

BAB II

DASAR TEORI

Sebagai pijakan dari penelitian ini, dasar teori akan digunakan dalam merancang

sistem lebih lanjut. Beberapa yang akan dibahas adalah apa sistem keamanan terintegrasi,

dasar Radio-Frequenciey Identification, biometri, beserta beberapa penjelasan singkat

mengenai perangkat keras dan perangkat lunak yang akan digunakan.

2.1. Sistem Keamanan Terintegerasi

Memiliki banyak pengamanan seperti kamera CCTV, kunci elektronik, sensor

inframerah, sensor gerak, sensor asap, dan mungkin ditambah dengan pegawai keamanan,

akan memberikan pemilik rumah rasa aman yang diinginkannya. Terutama mencegah

terhadap hal-hal yang tidak diinginkan. Namun, ada kerepotan untuk menangani semua

pengamanan diatas, seperti harus menghidupkan dan mematikan keamanannya satu per satu,

jika ingin memasukki rumah, rekaman CCTV harus diawasi dan dilihat oleh pegawai

keamanan (satpam) dan dapat mengelembungkan biaya perawatan/penggunaan. Beberapa

pengaman seperti sensor gerak dan sensor inframerah, dan kunci elektronik, sudah menjadi

satu kesatuan tersendiri, menjadikannya sistem yang terintegerasi satu dengan yang lainnya

memudahkan pengoprasian dan penanganannya.

Menggabungkan banyak peralatan keamanan, dan menjadikannya satu kesatuan yang

bekerja secara bersama, saling bekomunikasi satu sama lain adalah inti dari sistem keamanan

terintegerasi. Membuat sebuah sistem yang utuh dengan menggabungkan peralatan-

peralatan elektronis tanpa memberikan kemampuan memberikan keputusan yang utuh

adalah sama dengan mobil tanpa pengemudi. Sistem yang baik tidak hanya banyak yang

berintegerasi dengannya namun juga memiliki kemampuan ‘berpikir’ yang memadahi,

kemampuan ini berbanding lurus dengan banyaknya peralatan elektronis yang terintegerasi.

Maka dari itu, pembuatan program keamanan yang memadahi sama pentingnya dengan

hanya merancang peralatan elektronis yang ada.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 23: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

5

2.2. Radio-Frequency Identification

Radio-Frequency Identification (RFID) menggunakan gelombang radio untuk

membaca informasi yang disimpan pada tag. Tag ini dapat dibaca sampai pada jarak

beberapa meter, dan tidak harus pada jarak pandang pembaca [6]. RFID dapat memberikan

integritas yang cukup tinggi walau bekerja dalam kondisi yang ekstream [5].

Gambar 2.1. Cara kerja RFID [7]

Sistem RFID terbuat dari dua bagian, tag atau penanda dan reader atau pembaca.

RFID tag terdiri dari dua komponen, antena dan microchip. Antena sebagai penerima dan

pengirim sinyal, dan microchip sebagai pengolah informasi dan penyimpan kode unik. Tag

dapat bekerja secara aktif dengan menggunakan sumber tenaga sendiri atau, yang banyak

dipakai, pasif tanpa sumber daya sendiri dan harus menyadap daya dari reader-nya. Tag

pasif menggunakan prinsip induksi untuk mendapatkan daya dari reader-nya. Ketika ada

medan magnet yang melewati gulungan kabel tembaga (antena), arus akan muncul pada

antena. Arus ini yang kemudian akan memberi daya pada microchip, dan kemudian

microchip akan memberikan informasi untuk dipancarkan oleh antena ke reader. Konstruksi

ini memungkinkan tag menjadi sangat kecil efisien dan ringan daripada tag aktif yang perlu

menggunakan baterai. Kontruksi tag pasif dapat diselipkan pada selembar kartu [8].

RFID reader atau interogator, memberikan perintah kepada tag untuk mengirimkan

kode unik kembali kepada reader. Untuk tag pasif, antena pada reader juga memberikan

medan magnet yang cukup agar dapat mengaktifkan tag. Gambar 2.1 menunjukkan

gambaran kerja RFID reader dengan tag.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 24: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

6

2.3. Biometri

Ilmu biometri merupakan pengenalan diri dengan menggunakan ciri biologis manusia.

Sidik jari dan retina mata merupakan contoh dari biometri. Seperti arti kata biometric yang

berasal dari kata bio yang berarti hidup dan metric yang bererti mengukur, biometric

mengukur ciri biologis seorang sebagai identitas orang tersebut [9].

Biometri memiliki kelebihannya sendiri pada perkembangan teknologi masa kini.

Dengan tuntutan untuk memberikan pengenal atau kunci supaya dapat mengakses rumah,

email, dan tidak dibatasi untuk ATM, tuntutan untuk dapat membuat kunci atau password

yang bisa diingat, unik dan panjang, menjadikan pengguna teknologi sekarang kuwalahan

untuk membuat password yang berbeda untuk hal tertentu dan menghafalkannya. Disinilah

biometri datang memudahkan semuanya. Tubuh manusia pada dasarnya adalah unik dan

setiap orang berbeda dari yang lain, termasuk kembar identik. Genetik yang menyebabkan

perbedaan diatas, genetik pula yang membuat pola dan ciri yang digunakan biometri sebagai

identitas orang tersebut.

Kemungkinan untuk dua atau lebih orang memiliki satu atau lebih ciri biometri yang

sama persis adalah sangat kecil secara astronimi. Menggantikan kunci atau acces code

dengan sidik jari atau retina, memberikan kemudahan untuk tidak membawa-bawa kunci

atau menghafalkan tujuh belas digit alphanumerical password, dan tidak dapat dengan

mudah ditiru.

2.4. Piranti keras

Piranti keras (Hardware) adalah bentuk fisik dari sistem itu sendiri. Piranti keras disini

diartikan peralatan elektronis yang akan digunakan dalam sistem kunci pintu pintar berbasis

RFID dan biometri dengan pengamanan kamera. Selain penggunaan RFID reader dan tag,

pembaca biometri sidik jari, dan kamera, piranti keras yang lain akan meliputi

mikrokontroler dan sebuah komputer sebagai pendukung, pelengkap dan otak dari sistem

tersebut. Dalam subbab ini akan dibahas piranti keras yang kiranya akan digunakan.

2.4.1. Komputer

Sejak munculnya precursor komputer modern pada era perang dunia kedua, komputer

telah mengalami evolusi selama tujuh abad terakhir dan menjadi bagian integral dalam hidup

manusia. Komputer yang sekarang lebih pintar dari penciptanya akan menjadi bagian

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 25: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

7

integral dalam sistem kemanan dalam tulisan ini. Komputer akan bertanggung jawab atas

pengolahan video dari kamera, pengambilan keputusan melalui alghorithma keamanan yang

ada, dan komunikasi dengan internet.

2.4.2. Kamera

Pengertian kamera secara tradisional adalah sebuah alat yang bekerja dengan

mengontrol banyaknya cahaya yang akan mengenai permukaan yang sensitif terhadap

cahaya, baik film atau sensor cahaya. Kamera digunakan untuk mengambil gambar dan

menyimpannya dalam bentuk film, atau data digital [10]. Dalam perkembangannya, kamera

tidak hanya mengabadikan gambar statis, namun juga gambar bergerak, atau video. Iterasi

berikut dari kamera yang digunakan untuk merekam video, contohnya seperti, StreetCam

untuk memantau jalan, TraficCam untuk memantau kepadatan jalan, WeatherCam untuk

mantau cuaca dan WebCam yang biasanya digunakan untuk pangilan dengan video melalui

internet [4].

WebCam adalah pilihan yang tepat untuk penelitian dengan kemampuan yang

memadahi, variasi yang banyak sebab kegunaannya yang sekarang sudah menjamur, dan

ditawarkan dengan harga yang pantas. Keunggulan lainnya yaitu WebCam tidak perlu

menggunakan perangkat perantara, seperti kaset penyimpanan, atau perlu menggunakan

adapter AC ke DC sendiri, dengan banyaknya model yang ada, ada model dengan kapabilitas

plug and play dan dapat dihubungkan langsung dengan komputer melalui port USB.

2.4.3. Modul MF-RC522

Modul MF-RC522 adalah modul RFID reader untuk Arduino. Dibuat khusus untuk

berkomunikasi menggunakan protokol ISO/IEC 14443 A/MIFARE, karena protokol ini

hanya dapat menangani pembacaan dan penulisan untuk tag-tag RFID buatan MIFARE,

modul ini kurang cocok untuk penggunaan kartu buatan produsen lain. Namun dalam

penggunaan pada sistem ini sudah akan cukup hanya dengan menggunakan kartu dari

MIFARE.

MF-RC522 seperti terlihat pada gambar 2.2, memiliki tiga interface yang dapat

digunakan untuk berkomunikasi dengan mikrokontrollernya. Ketiganya adalah SPI, serial

UART dan I2C bus. Reader berkomunikasi dengan tag pada frekuensi 13,56 MHz . Diagram

pin dari modul MF-RC522 terlihat pada gambar 2.3.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 26: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

8

Gambar 2.2. Modul MF-RC522 (tengah) dan tag RFID berbentuk kartu (kiri) dan

gantungan kunci (kanan)

Gambar 2.3. Diagram pin dari modul MF-RC522

2.4.4. Pembaca Sidik Jari

Biovo C3 dikembangkan oleh Chengdu Science and Technology Co., Ltd. Sebagai

modul pembaca sidik jari pada perangkat elektronik. Bentuk fisik dari C3 seperti pada

gambar 2.4 dibawah. Adapun spesifikasi dari pembaca sidik jari ini seperti yang tertera pada

tabel 2.1.

Gambar 2.4. Biovo C3 fingerprint sensor

Proses kerja pembaca sidik jari ini terbagi menjadi dua, proses pencatatan sidik jari

dan pencarian sidik jari. Proses pencatatan membutuhkan sidik jari dibaca dua kali untuk

selanjutnya diproses dan kemudian di simpan ke dalam modul. Proses pencarian hanya

membutuhkan sekali baca dan kemudian modul akan mencocokkan sidik jari dengan sidik

jari yang ada pada template yang sudah dicatat pada modul. Modul akan memberikan hasil

pencarian, baik ada kecocokan atau tidak ada kecocokan.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 27: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

9

Tabel 2.1. Spesifikasi C3 [12]

File Signature 256 bytes

File Template 512 bytes

Tegangan masukan 5 V DC

Arus masukan:

Arus kerja 120 mA

Batas arus 130 mA

Waktu citra sidik jari <0,5 detik

Ukuran jendela pembaca 81,5mm x 14,6mm

Rasio kesalahan penerimaan <0,001%

Rasio kesalahan penolakan <1%

Resolusi 500dpi

Baud rate 9600xN bps ;dengan N = 1 ~ 6

Modul sidik jari C3 memiliki enam kabel yang terhubung, setiap kabel tersebut

terhubung pada pin dengan deskripsi konfigurasi yang tertera pada tabel tabel 2.2, dengan

urutan nomor pin dilihat dari kiri ke kanan sesuai pada diagram pada gambar 2.5.

Tabel 2.2. Konfigurasi pin C3

Nomor

pin

Deskripsi Catatan

1 Power suplai pendeteksi jari 3,6 ~ 5V

2 Signal pendeteksi jari Output standar adalah aktif tinggi

3 Suplai tegangan positif 5 V

4 Pengirim Tx

5 Penerima Rx

6 Power suplai negatif Ground

Gambar 2.5. Diagram konfigurasi pin pada Biovo C3

2.4.5. Mikrokontroller Arduino Mega

Arduino adalah platform elektronik yang mudah digunakan baik dari segi perangkat

keras dan perangkat lunak. Arduino dikembangkan di Ivrea Interaction Design Institute

sebagai alat yang cepat dalam membuat prototipe, dan ditujukan untuk pelajar tanpa

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 28: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

10

latarbelakang elektronik dan pemrograman. Arduino memiliki banyak varian, salah satunya

adalah Arduino Mega [13].

Arduino Mega 2560 menggunakan mikrokontroller berbasis ATmega2560. Memiliki

54 pin digital untuk input/output dimana 15 diantaranya dapat digunakan sebagai output

PWM, 16 input analog, 4 UART (port serial perangkat), dilengkapi dengan osilator kristal

dengan frekuensi 16MHz, sebuah koneksi menggunakan USB, jack untuk power, sebuah

ISCP header, dan sebuah tombol reset. Sistem minimun untuk menopang mikrokontroller

sudah lengkap, hanya perlu menghubungkannya ke komputer dengan USB atau,

menggunakan sumber tenaga dari baterai atau adapter AC ke DC. [14]

Gambar 2.6. Arduino Mega 2560

Mikrokontroller Arduino Mega 2560 terlihat seperti gambar 2.6 diatas, memiliki

spesifikasi seperti pada yang tertera pada tabel 2.3.

Tabel 2.3. Tabel spesifikasi Arduino Mega 2560

Mikrokontroler ATmega 2560

Tegangan kerja 5 V

Tegangan masukan (optimal) 7-12 V

Tegangan masukan (batasan) 6-20 V

Jumlah pin digital 54 (15 diantaranya dapat menyediakan output PWM)

Jumlah pin masukan analog 16

Arus DC setiap pin 20 mA

Arus DC untuk pin 3,3V 50 mA

Memori flash 256 KB (3 KB digunakan oleh bootloader)

SRAM 8 KB

EEPROM 4 KB

Kecepatan clock 16 MHz

Arduino Mega lebih dipilih dari pada variasi terdekatnya Uno karena jumlah pin digital

dari Mega yang jauh lebih banyak, sebab pin-pin ini yang akan banyak digunakan untuk

menghubungkan peralatan elektronis lain. Pin-pin pada Arduino Mega 2560 juga dapat

menyediakan output serial, PWM, SPI dan TWI.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 29: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

11

2.4.6. Kunci Elektrik

Kunci elektrik seperti pada gambar 2.7 adalah sistem kunci yang memanfaatkan gaya

listrik sebagai tenaga penggerak, menggantikan tenaga mekanik pada sistem kunci

konvesional. Gaya listrik yang dimaksud adalah gaya Lorentz yang terjadi pada solenoid.

gambar 2.8 menunjukkan komponen dasar solenoid pada kunci elektrik, terdiri gulungan

kawat, inti besi, dan pegas sebagai penahan. Gaya mekanik yang terjadi digunakan untuk

menarik inti besi kedalam, dan menekan pegas yang ada dibawahnya.

Gambar 2.7. Contoh kunci elektrik

Gambar 2.8. Rangkaian dasar kunci elektrik solenoid

Dipasaran, rata-rata dijual kunci elektrik dengan tegangan masukan 12V, namun juga

ada yang versi 6V dan 24V. Karena tengangan masukan lebih tinggi dari tengangan operasi

dari mikrokontroler pada umumnya, diperlukan penggunaan driver.

Untuk mendapatkan tegangan yang dibutuhkan dan masih dapat dikontrol oleh

mikrokontroller, diperlukan driver yang memiliki sumber tegangan sendiri dan mendapat

masukan dari mikrokontroller. Gambar 2.9. merupakan rangkaian driver sederhana dengan

flyback diode.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 30: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

12

Gambar 2.9. Rangkaian driver

Jika dari mikrokontroller memiliki nilai voltase sebesar V, nilai dari R (resistor)

ditentukan dengan persamaan:

R = 𝑉−𝑉𝑏𝑒

𝐼𝑏 ……………………………………………………………… 2.1

Nilai dari Ib ditentukan dengan persamaan:

Ib = 𝐼𝑐

𝛽 ……………………………………………………………… 2.2

Dengan: β = HFE dari transistor

Ib = arus pada base

Ic = arus pada collector

2.4.7. Limit Switch

Limit switch adalah saklar yang tertutup untuk melindungi dari benturan, cairan, dan

lain lain. Limit switch digunakan sebagai pembatas atau checkpoint agar alat tidak melewati

batas penggunaanya. Misalnya pada pintu geser, limit switch digunakan pada sisi lain dari

daun pintu supaya jika pintu sudah tertutup, akan mengaktifkan limit switch dan meng-

nonaktifkan motor penggeser daun pintu.

Limit Switch tidak jauh beda dengan switch biasa seperti yang terlihat pada gambar

2.10. Sebuah limit switch terdapat pin Normaly Open yang dalam keadaan sirkuit terbuka,

dan pin Normaly Closed yang pada keadann sirkuit tertutup.

Gambar 2.10. Rangkaian switch

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 31: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

13

Untuk menghitung nilai resistansi dari rangkaian switch pada gambar 2.10, digunakan

persamaan dibawah:

R = 𝑉𝑐𝑐

𝐼 ………………………………………………………………………… 2.3

2.4.8. LED

LED merupakan singkatan dari Light Emiting Diode. LED merupakan komponen

elektronik yang dapat meancarkan cahaya ketika diberikan tegangan. Seperti namanya, LED

merupakan keluarga dari dioda, warna yang ditimbulkan berdasarkan bahan semikonduktor

yang digunakan [15]. Gambar 2.11 merupakan bentuk dari LED.

Gambar 2.11. LED

Pada pemasangannya, LED tidak dipasang langsung dengan sumber, sebab akan

mengakibatkan kelebihan arus dan LED dapat rusak, diperlukan adanya resistor yang

dipasang sesuai dengan gambar 2.12. Nilai dari resistor yang akan dipasang ditentukan

dengan persamaan:

R = 𝑉𝑠−𝑉𝑓

𝐼 …………………………………………………………… 2.4

Dengan: R = nilai resistansi dalam Ohm

Vs = tegangan sumber dalam Volt

Vf = tengangan kerja LED dalam Volt

I = arus maksimum LED dalam Ampere

Gambar 2.12. Rangkaian LED

2.4.9. Buzzer

Buzzer adalah komponen elektronik yang mengubah listrik menjadi suara. Jenis

buzzer yang banyak di pasaran adalah buzzer piezoelectric, hal ini dikarenakan buzzer

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 32: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

14

piezoelectric mudah untuk dihubungkan dengan komponen elektronik lain, terutama

dihubungkan dengan Arduino [16]. Gambar 2.13 adalah buzzer piezoelectric. Pada

pemasangannya, buzzer menggunakan resistor dan dipasang seperti gambar 2.14.

Gambar 2.13. Buzzer piezoelectric

Gambar 2.14. Rangkaian buzzer

2.5. Piranti Lunak

Otak dari sistem keamanan yang akan dibuat sama pentingnya dengan peralatan

elektronis yang akan diintegerasikan dalam sistem. Program tersebut akan di buat/ketik

menggunakan dan tidak dibatasi oleh piranti lunak yang tertera seperti dibawah. Piranti

lunak yang akan dibahas pada subbab ini akan dapat berupa bahasa pemrograman seperti

Python dan HTML5 atau Intergerated Developer Enviropment (IDE) seperti Arduino IDE.

Python akan digunakan dalam program utama untul algorithma dan pengambilan

keputusan. Arduino Software akan digunakan untuk interaksi pada mikrokontroller Arduino

Mega dan modul-modulnya. Sedangkan HTML5 digunakan murni untuk menampilkan user

interface.

2.5.1. Python

Python adalah bahasa pemrograman yang dikembangkan oleh Guido van Rossum,

programer kelahiran Belanda, pada tahun 1990 di CWI, Amsterdam, sebagai kelanjutan dari

bahasa pemrogramman ABC. Nama Python dipilih oleh Guido karena kecintaannya pada

acara televisi Monty Python’s Flying Circus.[17] Sekarang, Python dikembangkan oleh

sekelompok programmer yang berkoordinasi dengan Guido dan Python Software

Foundation. Versi Python yang biasa digunakan ada dua, versi 2 (2.7) dan versi 3 (3.7).

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 33: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

15

Python adalah bahasa pemrograman berbasis obyek (Object-Orianted Programming).

Pemrogramman berbasis obyek adalah pemrogramman yang mengutamakan penanganan

obyek yang akan dimanipulasi. Contoh obyek yang dimaksud adalah, manusia yang

memiliki nama dan tanggal lahir, sampai gedung dengan nama dan tanggal dibangun.

Bahasa pemrograman Python dapat ditulis dengan banyak aplikasi, termasuk text

editor biasa. Salah satu aplikasi yang memberikan kemudahan dan autentic adalah IDLE.

IDLE dikhususkan untuk menulis Python, sehingga membantu untuk mengecek kesalahan

dalam pengetikan, termasuk memberikan kode warna pada syntax-syntax tertentu.

Dalam pembuatan sistem ini, digunakan modul-modul seperti:

1. Modul “Numpy”

Merupakan modul dasar untuk melakukan perhitungan aritmatik lanjutan dan

penggunaan array.

2. Modul “Serial”

Merupakan modul untuk dapat mengakses port serial dari komputer

3. Modul “Time”

Untuk dapat mengakses waktu pada BIOS

4. Modul “OpenCV”

OpenCV merupakan modul untuk pengolahan citra. Modul ini digunakan

terutama untuk proses perekaman pada kamera. OpenCV memiliki dependensi

dengan modul Numpy.

5. Modul “sqlite3”

Modul ini digunakan untuk pembuatan dan pengolahan database.

6. Modul “ftplib”

File Transfer Protocol digunakan untuk dapat mengakses webserver secara

langsung dan meng-upload file.

7. Modul “datetime”

Modul untuk dapat mengambil tanggal, dan waktu dari system operasi

8. Modul “os”

Modul untuk dapat mengakses dan mengubah folder dan/atau file pada system

operasi Windows

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 34: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

16

2.5.2. Database

Database digunakan untuk menyimpan data-data yang akan digunakan, seperti nama,

nomor unik RFID, dan signature sidik jari. Selain dapat dibaca, database dapat diisi, dan

diganti dan dihapus. Database dapat dibentuk dengan berbagai program yang dapat

menyimpan, dan memberikan nilai terhadap suatu variabel. Fungsi class dalam python dapat

berfungsi sebagai wadah untuk menyimpan database, namun memiliki kelemahan karena

database hanya dapat dibuka melalui program utamanya. Infleksibilitas ini menyeimbangi

keuntungannya, yaitu, database tidak mudah untuk dibuka dan diganti dengan program lain,

maka memberikan tingkat integritas yang tinggi untuk database yang digunakan permanen.

2.5.3. Kivy

Kivy adalah open souce library untuk python yang digunakan untuk mengembangkan

aplikasi user interface yang inovatif seperti aplikasi pada smartphone Android. Kivy dapat

digunakan pada sistem operasi Linux, Windows™, OS X™, iOS™. Sebuah kode pada Kivy

dapat digunakan dalam mayoritas platform yang ada, atau biasa disebut multi platform [18]

2.5.4. Arduino IDE

Arduino IDE digunakan untuk menulis program yang kemudian akan di upload ke

Arduino. IDE ini tidak terpisahkan untuk penggunaan arduino, karena merupakan satu

kesatuan dalam menggunakan Arduino board. IDE ini dapat digunakan untuk seluruh jenis

board Arduino dan memiliki versi untuk digunakan pada tiga sistem operasi besar, yaitu

Windows™, Mac OS™ dan Linux. Kemampuan dari program ini juga terdapat pada

fleksibilitasnya dalam penggunaan port serial.

Selain kemampuan meng-upload program ke Arduino, juga dapat membaca program

dari Arduino dan memiliki virtual monitor serial yang dapat digunakan untuk

melihat/memantau keluaran dari program pada Arduino.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 35: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

17

BAB III

RANCANGAN PENELITIAN

Pada bab III akan dibahas rancangan sistem yang akan dibuat secara terperinci. Bab

III akan dibagi dalam tiga bagian utama, yaitu: proses kerja sistem secara menyeluruh,

perancangan perangkat keras dan korelasinya dengan yang lain, dan perancangan perangkat

lunak dan otoritas perangkat kontroler dan komputer.

3.1. Proses Kerja Sistem

Sistem kamera akan berada pada komputer, karena membutuhkan komputasi yang

cepat dan fleksibilitasnya terhadap koneksi ke internet. Identifikasi pada kunci ada dua, yaitu

RFID reader dengan RFID tag dan pembaca sidik jari. Jika RFID reader atau pembaca sidik

jari mendapat masukan, kemudian data sidik jari dan nomor unik RFID akan dikirim ke

komputer untuk dicocokan dengan database yang ada. Jika komputer mengidentifikasi kedua

data masukan valid, komputer akan memberikan perintah ke mikrokontroller untuk

membukakan kunci elektrik dan mencatat log tentang kapan kunci dibuka dan oleh siapa.

Kamera dalam akan merekam beberapa saat untuk memastikan keamanan terjamin.

Gambar 3.1. Diagram blok utama

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 36: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

18

Jika pintu dibuka secara paksa (didobrak), limit switch akan memberikan masukan dan

dikirimkan ke komputer. Sehingga kamera dalam akan terus merekam ke arah pintu untuk

mengetahui siapa yang membuka pintu secara paksa.

Diagram secara lengkap dapat dilihat pada gambar 3.1. yang menunjukkan sistem

utama pada rangkaian sistem yang akan dibuat dan relasinya pada setiap perangkat yang ada.

Komputer juga dapat mengirim data lewat internet dan dapat diterima oleh perangkat

internet yang digunakan oleh pengguna. Data yang dikirimkan adalah log yang ada, dan

video dari kamera.

3.2. Perancangan Perangkat Keras

Perancangan perangkat keras adalah cetak biru pemasangan perangkat-perangkat

elektronis pada sistem. Pada subbab ini akan digambarkan perbagian dimana sebuah sensor,

aktuator, kamera, akan terpasang.

3.2.1. Letak Pemasangan Sistem

Kamera diletakkan untuk mencakupi possible point of entry seperti pintu dan jendela.

Diletakkan demikian untuk mencakupi kemungkinan titik masuk dan keluar, kamera akan

memberikan informasi yang lebih banyak. RFID dan biometri akan terpasang di tembok

disamping pintu untuk memberikan sistem yang mudah digunakan dan tidak merusak pintu.

Penggunaan kotak berisi sistem yang ditempel pada dinding lebih mudah dalam modulasi

dan konstruksi.

Gambar 3.2. Tata letak kamera dan sistem kunci

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 37: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

19

3.2.2. Sistem Kunci Pintu

Arduino akan terhubung dengan komputer pada USB port komputer. Arduino akan

menerima daya dari komputer. gambar 3.3. dibawah menunjukkan sambungan kabel antara

arduino dengan port USB pada komputer.

Gambar 3.3. Hubungan komputer dengan Arduino Mega

Arduino mega menggunakan port tipe B dan komputer menggunakan port standar,

tipe A, dengan kabel male to male. Perbedaan dari tipe A dan tipe B terletak hanya pada

bentuk kepala male dan female, namun masih memiliki wiring yang sama.

Sistem kunci pintu akan meliputi hubungan limit swtich, RFID, biometri dan kunci

elektrik ke Arduino Mega. Karena banyaknya rangkaian yang ada, akan dipisah menjadi

perbagian secara mendetail. Rangkaian lengkap akan dilampirkan pada bagian lampiran.

3.2.2.1. RFID Reader

Konfigurasi pin pada gambar 3.4. untuk pin RQ tidak dihubungkan, karena kebutuhan

interface yang digunakan adalah SPI, maka hanya digunakan pin SDA, SCK, MOSI, MISO

dan Reset. Untuk power akan mengambil dari arduino.

Gambar 3.4. Hubungan pin Arduino Mega dengan modul MF-RC522

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 38: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

20

Secara default, kemampuan dari Arduino Mega pada komunikasi SPI terdapat pada

pin D50 s.d. D53. Pin reset dihubungkan pada pin arduino yang tidak dipakai yaitu pin D5.

Sebagai catatan tambahan, SPI SS sama dengan pin SDA pada MF-RC522.

3.2.2.2. Pembaca Sidik Jari

Hubungan pin pada gambar 3.5 disesuaikan pada library yang ada pada arduino.

Penggunaan library dari Adafruit hanya membutuhkan Tx dan Rx dari C3, sehingga pin 1

dan 2 tidak dikoneksikan ke Arduino. Power untuk C3 akan mengambil dari arduino.

Gambar 3.5. Hubungan pin Arduino Mega dengan modul Biovo C3

3.2.2.3. Kunci Elektrik dan Driver

Kunci elektrik tidak dapat dihubungkan secara langsung dengan Arduino Mega, sebab

kebutuhan tegangan yang melebihi kapabilitas tegangan dari pin Arduino. Maka dari itu,

digunakan driver dengan sumber sendiri, yang pada kasus ini sumber 12 volt DC, untuk

menjalankan kunci. Terlihat pada gambar 3.6, driver terdiri dari dua buah transistor yang

dirangkai darlington, sebuah resistor, dan sebuah dioda yang dipasang untuk mencegah free

wheeling. Pemilihan nilai resistor berdasarkan arus minimum (Ib) untuk dapat mencapai

saturasi, tanpa membebani transistor lebih lanjut. Ib dihitung dengan persamaan 2.2 dan

persamaan 2.1, dengan arus pada kunci 500mA dan β minimum pada transistor 2N2222

adalah 30 [20] maka:

Ib1 = 𝐼𝑐1

𝛽 =

500

30 = 16,667 mA

Ib2 = 𝐼𝑏1

𝛽 =

16,667

30 = 0,556 mA

R2 = 𝑉𝐷12− 𝑉𝑏𝑒1− 𝑉𝑏𝑒2

𝐼𝑏2 =

5− 2,6 − 0,7

0,556 = 3,057 kΩ

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 39: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

21

Nilai 3,057 kΩ tidak ada di pasaran, maka untuk tetap mendapatkan nilai saturasi,

dipilih nilai pasaran paling dekat dengan nilai yang lebih kecil, yaitu 3 kΩ.

Gambar 3.6. Kunci pada rangkaian driver

3.2.2.4. Limit Switch

Pada pemasangannya, limit switch hanya menggunakan dua pin, pin NC dan pin COM.

Pin NC digunakan karena masukan yang akan digunakan adalah masukan inverting, yang

berarti, jika limit switch mendapat tekanan, akan memberikan masukan rendah pada

Arduino. Pin NC dihubungkan pada pin arduino D11 dan COM sendiri akan dihubungkan

ke sumber Vs seperti terlihat pada gambar 3.7. Nilai dari resistor ditentukan dengan

persamaan 2.3. dengan diketahui Vs adalah 5v, dan arus keluaran pin arduino (Is) adalah

20mA seperti pada tabel 2.3., maka:

R1 = 𝑉𝑠

𝐼𝑠 =

5

20 = 250 Ω

Karena nilai tersebut tidak ada di pasaran, diambil nilai pasaran yang paling dekat

diatasnya, yaitu 270 Ω.

Gambar 3.7. Hubungan limit switch dengan arduino

3.2.2.5. LED

LED digunakan sebagai indikator apakah sistem siap atau tidak. LED warna hijau akan

menyala jika sistem berjalan dengan baik, dan warna merah akan menyala jika ada pengguna

yang gagal melakukan identifikasi RFID maupun biometri, dan/atau pintu dijebol.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 40: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

22

Pada pemasangannya LED tidak dapat dihubungkan langsung dengan Arduino, dan

membutuhkan resistor dengan nilai yang dapat dihitung dengan persamaan 2.4. Untuk LED

berwarna merah, diketahui Vf adalah 1,65 volt dengan I adalah 20mA [21], maka persaaman

2.4. akan menjadi seperti demikian:

R3 = 5−1,65

0,02 = 167,5 Ω

Karena nilai 167,5Ω tidak ada di pasaran, maka diambil nilai yang paling dekat

diatasnya, yaitu 180Ω. Untuk LED berwarna hijau dengan nilai Vf adalah 3,2 volt dengan If

adalah 20mA [22] maka persamaan 2.4. menjadi:

R4 = 5−3,2

0,02 = 90 Ω

Karena nilai 90Ω tidak ada di pasaran, maka diambil nilai yang paling dekat diatasnya,

yaitu 100Ω. Kedua LED dipasang seperti gambar 3.8. dengan masukan dari pin Arduino

mega D13 dan D14 untuk warna merah dan hijau secara berurutan.

Gambar 3.8. Rangkaian LED merah dan hijau

3.2.2.6. Buzzer

Buzzer digunakan sebagai indikator apakah identifikasi RFID dan biometri berhasil

atau tidak. Jika buzzer berbunyi sebentar, maka pengidentifikasian berhasil. Jika buzzer

berbunyi dengan waktu yang agak panjang, berarti kunci dibukakan. Pemasangannya

menggunakan resistor 1kΩ [23] yang dipasang seperti gambar 3.9. dibawah.

Gambar 3.9. Rangkaian buzzer

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 41: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

23

3.2.3. Sistem Kamera

Kamera secala langsung tersambung dengan komputer pada port USB, seperti terlihat

pada gambar 3.10. Kamera berada pada status idle, menunggu perintah untuk merekam.

Sesuai dengan nama port nya, kamera akan diakses dan diambil datanya secara serial pada

didalam program.

Gambar 3.10. Sambungan kamera dengan komputer

3.3. Perangkat Lunak

Perangkat lunak yang akan digunakan terbagi ke dalam tiga bagian besar: proses kunci,

proses kamera dan proses komunikasi, ketiganya berada pada komputer dan mikrokontroler

dengan sebagian dari program berada pada website. Gambar 3.11. menunjukkan alur dari

program, mulai dari awal sampai akhir. Karena setiap proses bukan hanya program dalam

satu alat, melainkan program yang bertindak secara serentak dari seluruh sistem.

Gambar 3.11. Alur keseluruhan sistem

Sistem akan dimulai dengan memastikan bahwa pintu masih tertutup pada saat akan

memulai identifikasi, jika masih tertutup, dengan indikasi masukan dari limit switch, akan

dilanjutkan dengan proses kunci, jika tidak, proses kunci akan dilewati. Jika proses kunci

diberlakukan, disini pengunci pintu akan dapat diakses untuk pengguna, dan jika identitas

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 42: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

24

pengguna, yang berupa tag RFID dan sidik jari, cocok dengan data yang ada pada database

maka pengunci akan dibukakan. Pada proses kamera, kamera akan mengambil rekaman

video. Lama dari rekaman bergantung pada apakah proses kunci dilewati atau tidak, ketika

proses pintu sudah selesai dan pintu dibukakan, kamera hanya akan merekam selama 10

detik. Ketika proses pintu dilewati maka sistem akan menyatakan tidak aman dan kamera

akan merekam selama beberapa menit. Proses komunikasi adalah proses terakhir yang akan

terpicu apapun yang terjadi, yang akan dikirimkan ke internet adalah log history dan

rekaman dari kamera. Pada subbab selanjutnya akan dijelaskan secara spesifik bagaimana

proses-proses seperti diatas bekerja.

3.3.1. Proses Kunci Pintu

Pada sistem ini mengendalikan kunci elektrik berdasarkan masukan perintah dari

komputer. Banyak dari bagian sistem ini akan berada pada kontroler kunci pintu

dibandingakan dengan yang ada pada komputer. Jika proses kunci dijalankan, akan

dilanjutkan dengan menginisialisasi RFID dan biometri agar dapat memberikan masukan

pada mikrokontroler. Masukan pada keduanya akan diidentifikasi dan dicocokkan pada

database yang ada untuk dapat memberikan validitas untuk membuka pintu. Pada gambar

3.12. dapat dilihat diagram alur dari proses kunci pintu secara menyeluruh.

Ketika ada RFID tag yang terbaca, program akan membandingkan nomor unik (UID)

dengan database yang ada. Jika ada kecocokan, status sah akan muncul dan buzzer akan

berbunyi sebentar. Seperti halnya RFID, ketika modul biometrik membaca adanya sidik jari,

program akan mencocokan pada database yang ada. Jika ada kecocokan, status sah akan

muncul dan buzzer akan berbunyi sebentar. Urutan untuk pengidentifikasian tidak

diperdulikan, yang berarti dapat menggunakan RFID lalu biometrik, atau sebaliknya,

biometrik lalu RFID. Program akan mengecek apakah kedua identifikasi sudah masuk, jika

belum, maka akan ditunggu agar keduanya masuk, jika sudah, log akan dicatat dan pintu

akan dibukakan dengan tanda bunyi buzzer yang lebih panjang dari dua bunyi sebelumnya.

Akan tetapi, jika terjadi kegagalan dalam pencocokan, baik UID maupun sidik jari,

sebanyak lebih dari dua kali, program akan mendeaktifasi RFID reader dan pembaca sidik

jari selama 5 menit. Selama itu, LED merah akan menyala menggantikan LED hijau. Setelah

5 menit selesai, proses kunci dapat diulang dari awal.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 43: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

25

Gambar 3.12. Alur program untuk kunci pintu

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 44: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

26

3.3.2. Proses Kamera

Gambar 3.13. Alur proses kamera

Gambar 3.13 menunjukkan alur proses kamera. Pengambilan keputusan untuk

menentukan keamanan terancam atau tidak bergantung pada apakah proses kunci dijalankan

atau tidak. Jika proses kunci dijalankan, maka kamera hanya akan merekam selama 10 detik.

Jika proses kunci tidak dijalankan berarti pintu terbuka secara paksa, maka proses kunci

tidak akan terjadi sehingga keamanan dinyatakan terkompromi. Selanjutnya proses kamera

akan mencatat pada log waktu dan apa yang terjadi, dan kemudian kamera akan mulai

merekan selama beberapa menit. Lama dari kamera merekam kurang lebih lima menit, atau

sampai terjadi malfungsi, untuk mengatasi kehilangan data rekaman ketika terjadi malfungsi,

rekaman pada saat ini akan dipenggal setiap tigapuluh detik untuk kemudian dikirim ke

internet.

3.3.3. Proses Pengiriman Data

Komunikasi yang diterangkan pada sistem ini adalah sistem komunikasi dimana

komputer akan berkomunikasi dengan laman web di cloud server. Seperti terlihat pada

gambar 3.15., proses pengiriman data terbagi dalam dua bagian, berdasar pada proses

validasi sebelumnya. Pertama, sistem ini akan mengirimkan status kamera dan pintu dan log

yang ada ke website. Kedua, sistem ini akan mengirimkan video dari kamera dalam jika

keamanan terancam beserta apa yang dikirimkan pada bagian yang pertama.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 45: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

27

Gambar 3.14. Alur proses pengiriman data

3.3.4. Database

Gambar 3.15. Alur program penambahan entry pada database

Database merupakan program tambahan pada program utama yang berada pada kode

python, karena hanya dibutuhkan data untuk empat pengguna. Database akan berbentuk

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 46: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

28

fungsi class pada python dan akan ditulis secara hardcode, yang berarti tertanam semi-

permanen pada program. Karena sifat dari database yang dirancang untuk semi-permanen,

program ini hanya akan dipanggil jika akan digunakan untuk menambah entry databse baru,

sehingga alur program pada gambar 3.15 terlepas dari program utama.

Pembuatan data yang baru akan membutuhkan otorisasi dari super user, secara default,

super user sudah tertulis secara hardcode pada program. Posisi ini tidak akan dapat dihapus,

untuk memastikan database tetap ada. Seletah mendapat otorisasi dari super user, maka

dapat membuat entry database yang baru. Dengan memasukkan nama, kemudian men-scan

kartu RFID yang belum tercatat pada database, dan men-scan jempol tangan kanan dan kiri.

Pengguna baru kemudian memberikan password untuk dapat masuk ke laman web yang

dapat dilihat.

Format dari data pada database akan diubah kedalam hexadecimal dan string dengan

rincian setiap data sebagai berikut:

1. Data untuk kode unik (UID) RFID memiliki panjang 4 bytes dengan check sebesar

satu byte

2. Fungsi sidik jari akan mengembalikan data sebesar satu byte

3. Nama berbentuk string dengan panjang maksimal 100 karakter

4. Password berbentuk alphanumerical string dengan panjang 20 karakter

3.4. Antarmuka

Antarmuka untuk pengguna dibuat dengan interaksi yang mudah dan simpel. Gambar

3.16. adalah login page untuk dapat masuk ke menu utama. Username dan password

digunakan untuk masuk ke laman utama seperti gambar 3.17. Variasi pada menu utama akan

muncul pops up window ketika keamanan terkompromi. Penghitung berapa lama sejak

terakhir keamanan terkompromi juga akan ke reset menjadi nol, seperti terlihat pada gambar

3.18.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 47: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

29

Gambar 3.16. Antarmuka untuk login page

Gambar 3.17. Menu utama

Gambar 3.18. Menu utama dengan peringatan

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 48: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

30

BAB IV

HASIL DAN PEMBAHASAN

Pada bab keempat akan dibahas mengenai hasil dari penelitian yang berupa perangkat

keras, perangkat lunak dan data-data yang diambil. Pembahasan akan dilanjukan penjelasan

dan hasil setiap sistem. Bab ini akan berisi pula mengenai beberapa perubahan dari

perancangan yang diimplementasikan.

4.1. Perubahan Perancangan

Dalam pengimplementasiannya terdapat beberapa perubahan dari rancangan, baik dari

segi perangkat keras, maupun perangkat lunak.

4.1.1. Perubahan Driver Kunci

Perancangan driver pada bab tiga menggunakan rangkaian Darlington dengan dua

transistor 2N2222 seperti tertera pada gambar 3.6. Rangkaian tersebut tidak dapat

mengaktifkan kunci solenoid karena kurangnya arus yang dilewatkan. Modul driver

MOSFET IRF520 seperti gambar 4.1 digunakan sebagai pengganti, karena keuntungan dari

MOSFET adalah dapat digunakan sebagai saklar dengan mengaktifasi gate menggunakan

voltase. Berbeda dari Darlington, driver ini tidak meningkatkan (amplify) arus dari masukan

gate melainkan melewatkan arus dari masukan drain ke source.

Gambar 4. 1. IRF 520 Mosfet driver module

4.1.2. Perubahan Alur Database

Database pribadi yang disimpan secara lokal tidak membutuhkan autentifikasi berupa

login. Program yang dimiliki pengguna dapat mengakses database secara langsung tanpa

harus menghubungi server. Setelah inisialisasi program dapat langsung menambah entry

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 49: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

31

pada database. Ketidakpastian dapat terjadi, seperti jika jempol kanan melepuh, atau jempol

kiri tergores pisau sehingga perlu diperban sehingga keduanya tidak dapat di-scan. Guna

mengatasi jari yang tidak dapat di-scan, dan memberikan pilihan lebih bagi pengguna dalam

memindai jari, pada database sidik jari yang disimpan ditambah dari dua menjadi enam sidik

jari dengan tambahan jari telunjuk dan jari tengah tangan kanan dan kiri. Gambar 4.2

menunjukkan alur penambahan entry pada database.

Gambar 4. 2. Alur pemasukkan entry database

4.1.3. Perubahan Bahasa Pemrograman untuk Antarmuka

Perubahan dikarenakan webserver yang digunakan tidak dapat menggunakan Kivy

sebagai perantara untuk pembuatan User Interface pada browser. Webserver yang digunakan

adalah “www.000webhost.com”, dan hanya dapat menggunakan bahasa pemrograman

HTML5, PHP dan CSS. Pada pengimplementasiannya Kivy, yang awalnya akan digunakan

untuk pembuatan user interface akan digantikan dengan bahasa pemrograman HTML5.

4.1.4. Penambahan Protokol Komunikasi

Penggunaan komunikasi serial pada Arduino dengan komputer membutuhkan

penambahan protokol komunikasi untuk membedakan data apa saja yang dikirim dan/atau

diterima. Tabel 4.2 dan tabel 4.3 memberikan catatan lengkap mengenai header dari data

yang dikirim dan diterima. Semua header memiliki panjang data satu byte dalam bentuk

hexadecimal.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 50: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

32

Tabel 4. 1. Tabel header dan data yang diterima program main() Python

Header Panjang data Keterangan

AA 1 byte Konfirmasi status pintu

BB 4 bytes Data UID dari RFID

CC 2 bytes Nomor ID dari data sidik jari (1 byte) beserta nilai

confidence dari template (1 byte)

C0 Null Konfirmasi tidak adanya sidik jari pada template

C1 2 bytes Sidik jari terbaca namun tidak jelas

FF Null Konfirmasi selesainya aksi dari Arduino

Tabel 4. 2. Tabel header dan data yang diterima program Arduino

Header Panjang Data Keterangan

BB Null Perintah untuk membukakan pintu

BC Null Perintak untuk membunyikan buzzer sekali pendek

CB Null Perintah untuk membunyikan buzzer pendek, lalu agak

panjang

DD Null Perintah untuk tidak dapat membaca RFID dan sijik jari,

LED merah dinyalakan

C1 1 byte Perintah untuk dapat men-scan sidik jari baru

C2 1 byte Perintah untuk menghapus sidikjari dari template

4.2. Implementasi

Bentuk fisik dari perancangan terlihat pada gambar 4.3 sampai dengan gambar 4.7

Gambar 4.3 menunjukkan tampilan luar dari kotak yang berisi sistem arduino, yang dapat

terlihat adalah LED merah dan hijau, dan area untuk menempatkan sidik jari. Didalam kotak

hitam terdapat Arduino, RFID reader dan buzzer, seperti ditunjukkan pada gambar 4.4.

Kabel yang menjulur dari kotak menghubungkan sistem pada Arduino ke komputer dan

pengunci pintu solenoid dibelakang pintu. Posisi dari kotak hitam relatif terhadap pintu

terlihat pada gambar 4.5.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 51: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

33

Gambar 4. 3. Tampilan depan kotak hitam

Gambar 4. 4. Bagian dalam dari kotak hitam

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 52: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

34

Gambar 4. 5. Tampilan kotak hitam relatif terhadap daun pintu

Gambar 4.6 menunjukkan sisi samping dari selubung yang menutupi pengunci

solenoid dan driver-nya. Limit switch terpasang pada sisi bawah selubung sebagai indikator

pintu tertutup atau tidak. Pada Gambar 4.7 menunjukkan pengunci solenoid relatif terhadap

pintu bagian belakang.

Gambar 4. 6. Tampilan bagian dalam pengunci solenoid

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 53: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

35

Gambar 4. 7. Tampilan pengunci solenoid relatif pada bagian belakang daun pintu

Pengujian sistem dilakukan secara menyeluruh dengan pengambilan data sebanyak

sepuluh kali setiap pengguna. Parameter yang dilihat untuk dalam pengujian yang

berlangsung adalah sebagai berikut, UID pada RFID dan ID dari sidik jari akan terbaca,

keduanya harus cocok dengan data yang ada pada database, kamera merekam dan data

terkirim ke webserver. Penambahan entry baru pada database dapat tersimpan dan dapat

dipanggil dan diakses oleh subsistem lain. Menurut data yang didapatkan dan dicantumkan

pada lampiran L24, sistem sudah bekerja dengan tingkat keberhasilan sebesar 100%.

4.3. Hasil Pengujian Subsistem

Pengujian alat dilakukan setiap subsistem supaya dapat lebih mengetahui kerja sistem

menyeluruh, serta keberhasilan dan kegagalan yang ada.

4.3.1. Pengujian RFID Reader

Pengujian sensor MFRC522 dilakukan untuk dapat memastikan bahwa sensor dapat

membaca kartu RFID yang tersedia. Pengujian kartu RFID dilakukan dengan cara

menempelkan langsung kartu pada dinding sebelah kanan dari kotak hitam. Blok program

Arduino pada gambar 4.8 akan membaca kartu dan dikirim ke komputer untuk dicocokan

pada database oleh program Python pada gambar 4.9.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 54: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

36

Gambar 4. 8. Blok program pembaca RFID pada Arduino

Gambar 4. 9. Blok program pencocokan UID dengan database pada Python

Ada empat kartu yang digunakan dan setiap kartu diuji sebanyak sepuluh kali, tabel

4.3 menunjukkan tingkat keberhasilan dari empat kartu dengan nama pada kartu yang

berbeda, dan UID yang berbeda pula. Keempat kartu dapat dibaca dengan tingkat

keberhasilan 100% dan dengan UID yang pasti sama setiap kali dibaca.

Tabel 4. 3. Tabel keberhasilan membaca kartu RFID

UID Nama Pengujian ke-

1 2 3 4 5 6 7 8 9 10

50034311 Artha

803482A2 Akita

D0B86FA3 Celvien

20106C0E Nuel

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 55: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

37

4.3.2. Pengujian Sensor Sidik Jari

Pengujian sensor sidik jari menggunakan data dari empat orang dan dengan

menggunakan enam jari, jempol, telunjuk dan jari tengah tangan kanan dan kiri. Blok

program Arduino pada gambar 4.10 akan membaca sidik jari, kemudian mengirimkan akan

mencari kecocokan sidik jari dari template yang ada pada memori sensor, jika ada

kecocokan, program ini akan mengirimkan ID dari sidik jari ke komputer untuk kemudian

dicocokan dengan database oleh program pada Python pada gambar 4.11.

Gambar 4. 10. Blok program untuk membaca sidik jari dan mendapatkan ID sidik jari

Gambar 4. 11. Blok program untuk mencocokan ID sidik jari dengan database

Pengujian dilakukan dengan cara memindai setiap jari sebanyak sepuluh kali. Tabel

4.4 memberikan persentase keenam jari dari keempat orang. Tingkat keberhasilan untuk

dapat mengenali jari dan mencocokan ID dengan database memiliki rata-rata total sebesar

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 56: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

38

81%. Beberapa faktor yang mempengaruhi rata-rata tingkat keberhasilan, adalah tekstur

sidik jari dan kondisi dari jari saat di-scan. Gambar 4.12 membandingkan tekstur sidik jari

dari pengguna Nuel dan Artha. Tekstur dari pengguna Nuel lebih pudar dari pengguna Artha.

Hal tersebut dapat berpengaruh dalam pembacaan sidik jari.

Gambar 4. 12. Gambar jari Nuel (dua kiri) dan Artha (dua kanan)

Tabel 4. 4. Tabel tingkat keberhasilan men-scan sidik jari

Pengguna Jari

Jempol Kanan

Telunjuk Kanan

Jari Tengah Kanan

Jempol Kiri

Telunjuk Kiri

Jari tengah Kiri

Rata-Rata

Artha 100% 80% 90% 90% 60% 100% 87%

Akita 90% 50% 100% 80% 100% 80% 83%

Celvien 70% 80% 100% 100% 70% 100% 87%

Nuel 60% 40% 50% 60% 90% 100% 67%

Rata-Rata 81%

4.3.3. Pengujian Kunci Solenoid

Beberapa kali gerendel pengunci solenoid tidak dapat tertarik sempurna kedalam,

sehingga gerendel masih menghalangi pintu untuk terbuka. Gambar 4.13 diambil dari salah

satu video yang merekam saat gerendel tidak terbuka. Sebanyak tiga puluh empat kali

perintah tercatat untuk membukakan pintu, dan dengan proses perekaman yang merekam

dibelakang pintu. Pintu dapat terbuka sebanyak tiga puluh kali tanpa dihalangi pengunci

solenoid, sebanyak empat kali pintu gagal terbuka karena gerendel masih menyangkut diluar.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 57: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

39

Gambar 4. 13. Salah satu video yang merekam saat gerendel tersangkut

4.3.4. Pengujian Algorithma Sistem Kunci Pintu

Algorithma sistem kunci pintu memberikan beberapa fitur untuk memberikan hasil

yang tinggi. Salah satunya adalah kesempatan untuk memindai kartu atau sidik jari sebanyak

tiga kali. Fitur ini sebagai pengaman agar sistem tidak dimasuki orang yang tidak terdaftar

pada database. Tabel 4.5 menunjukkan kegagalan identifikasi karena RFID tidak terdaftar

pada database

Tabel 4. 5. Kegagalan identifikasi RFID

Waktu Pesan

2018-09-21-15-30-11 RFID tidak cocok dengan database

2018-09-21-15-30-20 RFID tidak cocok dengan database

2018-09-21-15-30-25 RFID tidak cocok dengan database

2018-09-21-15-30-25 Identifikasi gagal

Fitur untuk mencek kesalahan tidak fool’s proof, yang berearti masih dapat terjadi

kesalahan, pada tabel 4.6 menunjukkan kegagalan pembacaan sidik jari sebanyak tiga kali

oleh pengguna Artha, walaupun dapat dikenali pada pembacaan ketiga, pembacaan keempat

masih terbaca sebagai “Unknown”.

Tabel 4. 6. Kegagalan pengidentifikasian sidik jari

Waktu Pesan

2018-10-02-10-50-38 Unknown finger

2018-10-02-10-50-40 Unknown finger

2018-10-02-10-50-44 Sidik jari dimiliki milik Artha

2018-10-02-10-50-45 Unknown finger

2018-10-02-10-50-45 Identifikasi gagal

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 58: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

40

Pada bagian ‘RoutineFlag’ di gambar 4.14, data yang dikembalikan dari fungsi

database akan dicocokkan satu sama lain, jika data dimiliki oleh orang yang sama, maka

perintah akan dikirim ke Arduino untuk membukakan pintu dan function untuk menulis log

dan merekam akan dipanggil dan dijalankan. Jika RFID dan sidik jari tidak cocok, maka

perintah menyalakan buzzer akan dikirim ke Arduino. Tabel 4.7 menunjukkan ketidak-

cocokan dari kedua data menyebabkan kegagalan untuk membuka pintu. Jika kedua data

dimiliki oleh orang yang sama, perintah pintu untuk dibukakan akan dikirimkan. Menurut

tabel 4.8, algorithma memiliki tingkat keberhasilan 100%.

Tabel 4. 7. Tabel ketidakcocokan RFID dengan sidik jari

Waktu Pesan

2018-09-24-14-54-46 RFID dimiliki oleh Nuel

2018-09-24-14-54-56 Sidik jari dikenali milik Artha

2018-09-24-14-54-56 RFID dan sidik jari tidak cocok

2018-09-27-15-04-06 RFID dimiliki oleh Akita

2018-09-27-15-04-09 Sidik jari dimiliki milik Artha

2018-09-27-15-04-09 RFID dan sidik jari tidak cocok

2018-09-27-15-04-14 RFID dimiliki oleh Nuel

2018-09-27-15-04-18 Unknown finger

2018-09-27-15-04-20 Sidik jari dimiliki milik Artha

2018-09-27-15-04-20 RFID dan sidik jari tidak cocok

2018-09-27-15-04-25 RFID dimiliki oleh Celvien

2018-09-27-15-04-29 Sidik jari dimiliki milik Artha

2018-09-27-15-04-29 RFID dan sidik jari tidak cocok

Tabel 4. 8. Tabel tingkat keberhasilan algorithma rutin untuk membuka pintu

Nama pemilik Banyak Percobaan

Gagal Berhasil Persentase

Keberhasilan RFID Sidik Jari

Celvien Celvien 10 0 10 100%

Artha Artha 10 0 10 100%

Akita Akita 10 0 10 100%

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 59: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

41

Gambar 4. 14. Algorithma rutin

4.3.5. Pengujian Sistem Kamera

Perekaman dengan kamera menggunakan program yang ditulis dengan bahasa

pemrograman Python dengan library openCV. Proses perekaman menggunakan webcam,

dengan codec harus ditentukan untuk menentukan exstensi dari video. Pada gambar 4.15,

baris ke 16, codec ditentukan menggunakan “MJPG”. Pada baris ke-17, ditentukan frame

rate sebesar 20fps dan resolusi 640 pixel kali 480 pixel. Perlu diketahui bahwa program ini

membuat video dengan merekam gambar per-frame dan disimpan dalam satu bentuk file,

sehingga menjadikan gambar bergerak. Selama perakaman, akan ada window yang terbuka

untuk melihat seperti video yang direkam, dan batas waktu perekaman ditentukan oleh

variable yang diberikan oleh program yang memanggil program ini. Setelah batas waktu

habis, program ini akan melepas webcam, menyimpan video, dan menghentikan window

yang dibukanya, lalu dilanjutkan dengan proses pengiriman data untuk mengirim video ke

web server.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 60: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

42

Gambar 4. 15. Program untuk merekam menggunakan kamera

Pengujian program untuk merekam dilakukan dengan cara menjalankan program pada

gambar 4.15 sebanyak 50 kali. Pada pengujian ini, kamera dapat merekam dan menyimpan

lima puluh file video tanpa ada satupun yang corrupted.

4.3.6. Proses Pengiriman Data

Pengiriman data menggunakan File Transfer Protocol, dengan library ‘ftplib’ dari

Python. Ada dua file yang diunggah tiap pemanggilan program, log history, dan video.

Gambar 4.16 adalah listing untuk mengunggah “Logs.txt” yang berisi log history. File akan

dibaca terlebih dahulu, sesi komunikasi akan dibukakan untuk mengirim file yang terbaca.

Setelah selesai pengiriman, file dan sesi akan ditutup. Gambar 4.17 adalah listing untuk

mengunggah video dengan nama video merupakan masukan dari program kamera. Cara

kerja program hampir sama dengan pengiriman file log. Perbedaannya pada penggunaan

buffer karena size dari video relatif lebih besar daripada file text(.txt).

Pengujian proses pengiriman data secara tersendiri dilakukan dengan mengirimkan

data yang berupa video sampai webserver menutup paksa hubungan dengan Request Time

Out(RTO). Besar video setiap file-nya adalah 2.224 KB, diambil karena file video ini adalah

file terbesar dari sistem kamera. Pengujian ini ditujukan untuk mengetahui seberapa data

yang tidak berhasil dikirim dalam satu sesi. Proses pengiriman data dapat mengirim dua

puluh tiga video dan hanya satu video yang terkorupsi, video yang terkorupsi yaitu video

terakhir saat RTO terjadi. Total besar file yang dapat dikirim adalah 49.560 KB.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 61: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

43

Gambar 4. 16. Pengirim log

Gambar 4. 17. Pengirim video

4.4. Pembahasan Perangkat Lunak

Ada dua perangkat lunak yang membantu sistem yang lain. Program database

merupakan program yang dipanggil untuk memasukkan entry baru. Program user interface

terletak pada webserver untuk menampilkan log dari sistem dan video yang ada.

4.4.1. Program Database

Program database menggunakan library ‘sqlite3’ dari python, supaya python dapat

mengartikan bahasa pemrograman yang biasa digunakan untuk database, yaitu MySQL.

Function dari database dapat dipanggil untuk membantu program utama dan program yang

lain. Gambar 4.18 menunjukkan listing untuk fungsi menambah entry baru, menambahkan

database untuk jari, menghapus entry dari database, ketiganya dapat mengubah database

secara langsung ketika dipanggil dan diberi variable yang sesuai. Tiga fungsi lainnya adalah

untuk menemukan pengguna berdasar UID, menemukan pengguna berdasakan ID sidik jari,

dan menemukan ID pengguna berdasarkan nama. Ketiga fungsi ini hanya dapat melihat

database tanpa mengubahnya, dan akan memberikan hasil kepada program yang

memanggilnya.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 62: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

44

Gambar 4. 18. Fungsi-fungsi pada program database

Pembuatan template sidik jari dilakukan dengan program pada Arduino. Pada program

ini akan dipanggil oleh program Python tersendiri, beda dari program keamanan utama.

Setelah dipanggil, program akan dimulai dengan prompt “Ready!”, kemudian, jika ada jari

yang terdeteksi, akam membuat model template dengan fitur-fitur pada sidik jari. Program

akan meminta untuk men-scan jari yang guna memastikan bahwa model yang dibuat sudah

benar. Selanjutnya model akan disimpan menggunakan ID yang telah diberikan oleh

program Python. Listing program berada pada lampiran L15 bagian “Biometric Scanner”.

Menambahkan pengguna baru memiliki prinsip alur yang berbeda dengan program

keamanan utama. Sebab utama adalah karena alur program penambahan pengguna baru

hanya dilakukan secara linear, seperti terlihat pada alur gambar 3.15, gambar 4.19 adalah

implementasinya ke dalam Python script. Program diawali dengan memasukkan nama

pengguna, lalu men-scan kartu yang baru. Kartu yang di-scan akan dipastikan kartu yang

baru dengan mencocokkannya pada seluruh entry yang terdapat pada database. Jika sudah

dipastikan kartu yang baru, enam jari akan di-scan menggunakan program pembuatan

template sidik jari pada Arduino, dengan ID disuplai dari program ini. Perbedaan lain dari

program keamanan utama, program ini juga mendengarkan data berbentuk string tanpa

menggunakan header untuk protocol komunikasi antara Arduino dengan komputer yang

telah ada. Dengan mendengarkan string dan langsung menampilkannya pada command line

Python yang akan muncul, pengguna dapat dipandu secara langsung dalam pembuatan

template. Setelah penambahan pengguna selesai dan ucapan “Selamat Datang” muncul pada

layar command line, program akan menulis log dan mengirimkannya ke webserver.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 63: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

45

Gambar 4. 19. Listing program untuk menambah pengguna baru

4.4.2. User Interface

Tampilan pada browser seperti pada gambar 4.20 memiliki tiga menu utama. Laman

“Home” adalah laman awal dan pertama dari web, laman “Logs” berisi tabel log yang telah

dikirim ke webserver, laman Videos berisi list dari video yang telah dikirim ke webserver.

Gambar 4. 20. Tampilan user interface pada browser

Ditengah laman “Home” terdapat counter untuk menunjukkan kapan terakhir

keamanaan pernah terkompromi. Counter ini ditangani oleh webserver menurut data dari log

yang dikirim.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 64: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

46

Gambar 4. 21. Laman “Logs”

Pada laman “Logs” terdapat tabel yang berisi log history tentang apa saja yang terjadi

pada sistem, tabel tersebut dapat dilihat pada gambar 4.21. Pada laman “Videos” terdapat

daftar untuk semua video yang terekam dan terkirim ke webserver. Pada laman ini video

dapat diunduh dengan mengklik nama video yang bersangkutan. Gambar 4.22 menunjukkan

laman “Videos” pada tampilan web. Laman ini hanya berisi list dari video-video yang ada.

Ekstensi dari video adalah “.avi”, dan browser tidak dapat menampilkan video dengan

format “.avi” sehingga video tidak dapat dilihat pada browser, namun video tersebut dapat

diunduh. Nama dari video adalah kapan video tersebut direkam, untuk mencari video pada

tabel log masih harus dilakukan secara manual, karena tabel laman log diisi dari file “txt”.

Berbeda dengan laman video yang list-nya diisi dari file-file video pada storage server.

Gambar 4. 22. Laman “Videos”

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 65: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

47

BAB V

KESIMPULAN DAN SARAN

5.1. Kesimpulan

Dari hasil pengujian pada bab empat, pada penelitian ini dapat ditarik kesimpulan

sebagai berikut:

1. RFID reader dapat membaca kartu dengan keberhasilan 100%.

2. Sensor sidik jari dapat membaca dengan persentase keberhasilan 81%

3. Algorithma dapat membedakan dan mencocokkan data pengguna dengan tingkat

keberhasilan 100%

4. Sistem secara keseluruhan dapat membukakan pintu dengan dengan tingkat

keberhasilan 100%

5. Kamera dapat merekam dan data dapat terkirim ke webserver dengan baik, namun

gagal dalam menampilkan video secara langsung

5.2. Saran

Penelitian ini masih mengalami kekurangan, untuk penelitian-penelitian kedepan

disarankan:

1. Untuk memberikan subsistem agar dapat menutup pintu.

2. Memberikan link pada tabel di laman log untuk mempermudah pencarian video.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 66: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

48

Daftar Pustaka

[1] ----, 2015, Berbagai Inisiatif Warga Menjaga Keamanan Lingkungan,

https://megapolitan.kompas.com/read/2015/08/04/15070061/Berbagai.Inisiatif.Warg

a.Menjaga.Keamanan.Lingkungan, diakses 11 November 2017

[2] ----, ----, Front point security, https://www.frontpointsecurity.com, diakses 10

Desember 2017

[3] ----, ----, ADT Pulse security, https://www.adtpulse.com, diakses 10 Desember 2017

[4] Putranto, K., 2013, Sistem Monitoring Keamanan dengan Menggunakan WebCam

dengan Antarmuka SmartPhone Android, Tugas Akhir, Jurusan Teknik Elektro, FST,

Universitas Sanata Dharma, Yogyakarta.

[5] Natalianto, N., 2017, Sistem Presensi Perkuliahan Menggunakan RFID, Tugas Akhir,

Jurusan Teknik Elektro, FST, Universitas Sanata Dharma, Yogyakarta.

[6] ----, ----, What is RFID?, https://www.epc-rfid.info/rfid, diakses 24 Februari 2018

[7] ----, 2017, https://retailgyan.com/wp-content/uploads/2017/09/RFID-Working-

Principlepng, diakses 24 Februari 2018

[8] ----, 2017, How RFID Works?, https://retailgyan.com/how-does-rfid-work/, diakses 24

Februari 2018

[9] Putra, D., 2009, Sistem Biometrika: Konsep Dasar, Teknik Analisis Citra, dan

Tahapan Membangun Aplikasi Sistem Biometrika, Andi Offset, Yogyakarta.

[10] Masoner, L., 2017, The Basic Elements of Camera, https://www.thespruce.com/what-

is-a-camera-2688050, diakses 9 Maret 2018

[11] ----, 2016, MFRC522 Datasheet, NXP Semiconductors

[12] ----, ----, C3 Fingerprint Module Technical Documentation, Chengdu Science and

Technology Co. Ltd.

[13] ----, ----, https://www.arduino.cc/en/Guide/Introduction#, diakses 22 Februari 2018

[14] ----, ----, https://store.arduino.cc/usa/arduino-mega-2560-rev3, diakses 22 Februari

2018

[15] Kho, D., ----, http://teknikelektronika.com/pengertian-led-light-emitting-diode-cara-

kerja/, diakses 05 Maret 2018

[16] Kho, D., ----, http://teknikelektronika.com/pengertian-piezoelectric-buzzer-cara-

kerja-buzzer/, diakses 05 Maret 2018

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 67: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

L49

[17] Jubilee Enterprise, 2016, Trik Cepat Menguasai Pemrograman Python, PT Gramedia,

Jakarta

[18] ----, ----, Kivy Web Page, https://kivy.org/#home, diakses 7 Maret 2018

[19] ----,----, https://www.makerlab-electronics.com/product/irf520-mosfet-driver-

module/, diakses 3 Oktober 2018

[20] ----, 1997, 2N2222; 2N2222A: NPN Switching Transistors, Philips Semiconductors.

[21] ----, ----, NTE 3019 Light Emitting Diode (LED) Red Diffused 5mm, NTE Electronics

Inc.

[22] ----, 2014, Cree® 5mm Blue Green Round LED C503B-BCS/BCN/GCS/GCN, Cree

Inc.

[23] ----, 2002, Piezoelectric Sound Components, Murata Manufacturing Co., Ltd

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 68: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

LAMPIRAN

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 69: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

L1

Cara Penggunaan Alat

Persiapan alat:

1. Hubungkan adapter ke sumber listrik AC.

2. Hubungkan kabel biru (kabel USB) ke komputer yang akan digunakan.

3. Unduh program dari tautan berikut:

https://artha-surya.000webhostapp.com/download.html

4. Jalankan “SecurA.py”, kemudian menu utama akan muncul

Menambahkan pengguna baru kedalam databse:

1. Pada menu utama pilih “New User”, command line python akan muncul di belakang.

2. Pada command line akan diminta nama, dan akan diberikan petunjuk secara

berurutan.

3. Ikuti petunjuk pada command line sampai selesai.

4. Ucapan “Selamat Datang” akan muncul jika penambahan user selesai dan berhasil,

kemudian pada command line ketik ‘quit()’ lalu tekan enter, akan kembali ke menu

utama.

Menjalankan sistem keamaanan cukup mudah dan jelas.

1. Pada menu utama pilih “RUN”, program akan berjalan sendiri sampai ada pengguna

yang masuk.

2. Untuk mematikan program secara prematur (jika perlu) pada command line tekan

“Ctrl+C”, akan ada konfirmasi untuk mematikan program

3. Ketik “Y” lalu tekan “Enter” untuk mematikan program secara prematur, ketik “N”

untuk melanjutkan program

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 70: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

L2

Rangkaian Keseluruhan

Gambar L1. Rangkaian keseluruhan

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 71: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

L3

Listing Program Utama import serial

import datetime

import threading

import time

import database

import camRecorder

import log as historyLog

import failChecker

try:

arduinoSerialComm = serial.Serial('COM3',9600)

except Exception as e:

print ("Failed to connect")

print e

rfbio=[None,None]

doorClosed = True

securityFlag = True

def sender(msg):

arduinoSerialComm.write(msg)

def logger(fileName, cassusBelli, attachment, failSafe):

lastID = database.add_new_log_entry(fileName, cassusBelli, attachment, failSafe)

time.sleep(1)

historyLog.Log(lastID, fileName, cassusBelli, attachment, failSafe)

time.sleep(1)

return fileName

def dataRecorder(timeStamp, text):

historyLog.dataRecorder(timeStamp, text)

def fingerRecorder(timeStamp, owner, finger, he):

jari = ["Jempol kanan", "Telunjuk kanan", "Jari tengah kanan", "Jempol kiri", "Telunjuk kiri", "Jari Tengah Kiri"]

num = int(finger)

dec = int(he , 16)

perc = (dec*100/255)

historyLog.fingers(timeStamp, owner, jari[num], perc)

def camera(fileName, duration):

camRecorder.recorder(fileName, duration)

def failSafeProtocol(fileName):

text = "Break-in indicated"

logger(fileName, text, '1', '1')

sender("DD")

thread1 = threading.Thread(target=camera, name="Fail-Safe Protocol", args=[fileName,300])

thread1.start()

def dataRecorder(timeStamp, text):

historyLog.dataRecorder(timeStamp, text)

def main():

global doorClosed, securityFlag,rfbio

while securityFlag:

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 72: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

L4

# Check if there is a data in waiting

if (arduinoSerialComm.inWaiting() > 0):

# Read incoming data

inData = arduinoSerialComm.readline()

if (inData != None and inData[:2] == "AA"):

if (inData[2:3] == '1'):

doorClosed = True # Door is open while security sistem is on

print ("Fail Safe Protocol Initiated")

fileName = datetime.datetime.now().strftime("%Y-%m-%d-%H-%M-%S")

# Fail safe protocol flag

failSafeProtocol(fileName)

break;

else:

doorClosed = False # Door is closed

# RFID

elif (inData != None and inData[:2] == "BB"):

uid = inData[2:10].upper()

# Check rfid in database

usrUni = database.get_user_by_uid(uid)

if (usrUni != None):

# Convert unicode into ASCII

usr = usrUni[0].encode('ascii','ignore')

if (usr !=None and usr != rfbio[0]):

print("Cocok")

print(usr) # Print name of the user

rfbio[0] = usr

if (rfbio[1] == None):

sender("BC")

elif (usr != None and usr == rfbio[0]):

print("Kartu RFID sudah di scan")

else:

print("Tidak cocok")

sender(failChecker.failCheckerUID())

# Fingerprint

elif (inData != None and inData[:2] == "CC"):

biometric = inData[2:4]

# Check fingerprint in database

usr = database.get_user_by_bio(biometric)

if (usr !=None and usr[0] != rfbio[1]):

print("Cocok")

print(usr[0]) # Print name of the user

rfbio[1]= usr[0]

if (rfbio[0] == None):

sender("BC")

elif (usr != None and usr[0] == rfbio[1]):

print ("Sidik jari sudah di-scan")

else:

print("Tidak cocok")

sender(failChecker.failCheckerBio())

elif (inData != None and inData[:2] == "C0"):

print("Sidik jari tidak diketahui")

sender("CB")

elif (inData != None and inData[:2] == "C1"):

print("Inconclusive")

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 73: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

L5

sender("CB")

# Routine Flag

if (len(rfbio)>=2 and rfbio[0]==rfbio[1] and (rfbio[0]!=None and rfbio[1]!=None)):

print ("Succes. Opening door...")

print ("Welcome Home %s" %(rfbio[0]))

failChecker.failReset()

sender("BB")

# Write logs

text = "Pintu dibuka oleh %s" %rfbio[0]

fileName = datetime.datetime.now().strftime("%Y-%m-%d-%H-%M-%S")

logger(fileName, text, '1', '0')

dataRecorder(fileName, text)

# Recorder

thread2 = threading.Thread(target=camera, name="Normal Protocol", args=[fileName,10])

thread2.start()

rfbio = [None,None]

print ("Killing the security")

securityFlag = False

break

elif(len(rfbio)==2 and rfbio[0]!=rfbio[1] and (rfbio[0]!=None and rfbio[1]!=None)):

text = "RFID dan sidik jari tidak cocok"

fileName = datetime.datetime.now().strftime("%Y-%m-%d-%H-%M-%S")

print(text)

logger(fileName, text, '0', '0')

sender(failChecker.failed2Pair())

rfbio = [None,None]

try:

main()

except KeyboardInterrupt as terminate:

print ("Sisyem akan dimatikan!")

YN = raw_input("lanjut? (Y/N) \n")

if YN == 'Y':

fileName = datetime.datetime.now().strftime("%Y-%m-%d-%H-%M-%S")

logger(fileName, "Sistem berhasil dimatikan", '0', '0')

raise KeyboardInterrupt

arduinoSerialComm.close()

elif YN == 'N':

main()

if __name__ == '__main__':

main()

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 74: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

L6

Listing Program Sistem Kamera import cv2

import os

import time

import FTPuploader

def recorder(FILE_NAME, duration):

FILE_DIRECTORY = os.path.join(os.path.expanduser('~'),'Documents/SecurA/videos')

#check if path directory is exist, if not create directory

if not os.path.exists(FILE_DIRECTORY):

os.makedirs(FILE_DIRECTORY)

FILE_OUTPUT = os.path.join(FILE_DIRECTORY, "%s.avi" %FILE_NAME)

# Capturing video from webcam:

cap = cv2.VideoCapture(0)

# define codec and crate video writer object

fourcc = cv2.VideoWriter_fourcc(*'MJPG')

out = cv2.VideoWriter(FILE_OUTPUT, fourcc, 20.0,(640,480))

T_start = time.time()

while(cap.isOpened()):

# Capture frame-by-frame

ret, frame = cap.read()

if ret == True:

# handle the mirrorring

frame = cv2.flip(frame,1)

# write the frame

out.write(frame)

# Display the resulting frame

cv2.imshow('frame',frame)

# break conditions

if (time.time() - T_start >= duration):

# break after the duration is out

break

else:

break

# When everything done, release the capture

cap.release()

out.release()

cv2.destroyAllWindows()

time.sleep(1)

# Upload the video

FTPuploader.vidFTP(FILE_NAME)

FTPuploader.fileFTP()

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 75: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

L7

Listing Program Database

import sqlite3

import os

import time

import datetime

from log import Log as add_first_log_entry

FILE_DIRECTORY = os.path.join(os.path.expanduser('~'),

'Documents/SecurA/database')

#check if path directory is exist, if not create directory

if not os.path.exists(FILE_DIRECTORY):

os.makedirs(FILE_DIRECTORY)

FILE_NAME = os.path.join(FILE_DIRECTORY, 'database.db')

# Initialize connection

conn = sqlite3.connect(FILE_NAME)

# create a cursor

c = conn.cursor()

def add_new(name, uid):

with conn:

c.execute("INSERT INTO databases (name, uid) VALUES (?,?)", (name, uid))

def add_new_biometrics(fingerIndex, name, uid):

with conn:

time.sleep(1)

userID = c.execute("SELECT ID FROM databases WHERE name = :name AND uid = :uid",

'name' : name, 'uid' : uid).fetchone()[0]

c.execute("INSERT INTO fingerdatabase (fingerIndex, userID) VALUES(?,?)", (fingerIndex, userID))

def erase(name,uid):

with conn:

userID = c.execute("SELECT ID FROM databases WHERE name = :name AND uid = :uid",

'name' : name, 'uid' : uid).fetchone()[0]

c.execute("DELETE from fingerdatabase WHERE userID = :userID",'userID' : userID)

c.execute("DELETE from databases WHERE name = :name AND uid = :uid",'name' : name, 'uid' : uid)

print ("Entry has been deleted")

def get_user_by_uid(uid):

return c.execute("SELECT name FROM databases WHERE uid=:uid", 'uid':uid).fetchone()

def get_user_by_bio(bio):

return c.execute("""SELECT p.name FROM databases p LEFT JOIN fingerdatabase n

ON p.ID = n.userID WHERE n.fingerIndex =:bio""",

'bio':bio).fetchone()

def get_ID_by_name(name):

return c.execute("SELECT ID FROM databases WHERE name=:name",'name':name).fetchone()

def add_new_log_entry(timeStamp, cassusBelli, attachment, failSafe):

with conn:

time.sleep(1)

c.execute("INSERT INTO logdatabase (timeStamp, cassusBelli, attachment, failSafe) VALUES (?,?,?,?)",

(timeStamp, cassusBelli, attachment, failSafe))

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 76: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

L8

return c.execute("SELECT ID FROM logdatabase WHERE timeStamp=:timeStamp",

'timeStamp':timeStamp).fetchone()[0]

# check if tables already exist, if not create a database table

tb_exists = "SELECT name FROM sqlite_master WHERE type='table' AND name='databases'"

tb_bio_exists = "SELECT name FROM sqlite_master WHERE type='table' AND name='fingerdatabase'"

if not c.execute(tb_exists).fetchone():

c.execute("""CREATE TABLE databases (

ID INTEGER PRIMARY KEY,

name text,

uid text)""")

if not c.execute(tb_bio_exists).fetchone():

c.execute("""CREATE TABLE fingerdatabase (

ID INTEGER PRIMARY KEY,

fingerIndex text,

userID INTEGER,

FOREIGN KEY(userID) REFERENCES databases(ID)

)""")

tb_log_exists = "SELECT * FROM sqlite_master WHERE type='table' AND name='logdatabase'"

if not c.execute(tb_log_exists).fetchone():

c.execute("""CREATE TABLE logdatabase (

ID INTEGER PRIMARY KEY,

timeStamp text,

cassusBelli text,

attachment text,

failSafe text) """)

time.sleep(1)

timeStamp = datetime.datetime.now().strftime("%Y-%m-%d-%H-%M-%S")

firstEntryID = add_new_log_entry(timeStamp, 'Creating Database', '0', '1')

add_first_log_entry(firstEntryID, timeStamp, 'Creating Database', '0', '1')

conn.commit()

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 77: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

L9

Listing Program Fail Checker

import datetime

import log

import database

import time

failCounterUID = 1

failCounterBio = 1

failedToPair = 1

def failCheckerUID():

global failCounterUID

if not failCounterUID >=3:

failCounterUID = failCounterUID + 1

return ("CB")

else:

failCounterUID = 1

writeFailLog()

return ("DD")

def failCheckerBio():

global failCounterBio

if not failCounterBio >=3:

failCounterBio = failCounterBio + 1

return ("CB")

else:

failCounterBio = 1

writeFailLog()

return ("DD")

def failed2Pair():

global failedToPair

if not failedToPair >=3:

failedToPair = failedToPair + 1

return("CB")

else:

failedToPair = 1

writeFailLog()

return("DD")

def failReset():

global failCounterUID,failCounterBio,failedToPair

failCounterUID = 1

failCounterBio = 1

failedToPair = 1

def writeFailLog():

fileName = datetime.datetime.now().strftime("%Y-%m-%d-%H-%M-%S")

lastID = database.add_new_log_entry(fileName, 'Identifikasi gagal', '0', '0')

time.sleep(1)

log.Log(lastID, fileName, 'Identifikasi gagal', '0', '0')

time.sleep(1)

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 78: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

L10

Listing Program FTPuploader

from ftplib import FTP

import os

host = 'files.000webhost.com'

user = 'artha-surya'

passwd = '14051996'

cwd_logs = 'public_html/secura/logs'

cwd_vids = 'public_html/secura/videos'

FILE_DIRECTORY = os.path.join(os.path.expanduser('~'),'Documents/SecurA/logs')

VID_DIRECTORY = os.path.join(os.path.expanduser('~'),'Documents/SecurA/videos')

FILE_NAME = os.path.join(FILE_DIRECTORY, "Logs.txt")

def fileFTP():

try:

myfile = open(FILE_NAME,'r') # read file to be sent

session = FTP(host,user,passwd) # Start a session

session.cwd(cwd_logs)

session.storbinary('STOR Logs.txt', myfile)

myfile.close()

session.quit()

except Exception as e:

print e

session.quit()

def vidFTP(vidName):

try:

VID_NAME = os.path.join(VID_DIRECTORY, "%s.avi" %vidName)

myVid = open(VID_NAME, 'rb') # read file to be sent (use buffer)

session = FTP(host,user,passwd) # Start a session

session.cwd(cwd_vids)

session.storbinary("STOR %s.avi" %(vidName), myVid )

session.quit()

except Exception as e:

print e

session.quit()

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 79: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

L11

Listing Program Log

import datetime

import os

FILE_DIRECTORY = os.path.join(os.path.expanduser('~'),'Documents/SecurA/logs')

#check if path directory is exist, if not create directory

if not os.path.exists(FILE_DIRECTORY):

os.makedirs(FILE_DIRECTORY)

def Log(entryNo, entry, casusBelli, attachment, failSafe):

FILE_OUTPUT = os.path.join(FILE_DIRECTORY, "Logs.txt")

file = open(FILE_OUTPUT, "a+")

file.write("[%s] [%s] [%s] [%s] [%s]\r\n"

%(entryNo, entry, casusBelli, attachment, failSafe))

file.close()

def dataRecorder(timeStamp, text):

FILE_OUTPUT = os.path.join(FILE_DIRECTORY, "dataDump.txt")

file = open(FILE_OUTPUT, "a+")

file.write("[%s] [%s]\r\n"%(timeStamp, text))

file.close()

def fingers(timeStamp, owner, finger, perc):

FILE_OUTPUT = os.path.join(FILE_DIRECTORY, "fingersDump.txt")

file = open(FILE_OUTPUT, "a+")

file.write("[%s] [%s] [%s] [%s]\r\n"%(timeStamp, owner, finger, perc))

file.close()

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 80: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

L12

Listing Program Log Database

import MySQLdb

from MySQLdb import OperationalError

# Open database connection

conn = MySQLdb.connect("localhost","benart","secura","secura" )

# Prepare a cursor object using cursor() method

cursor = conn.cursor()

# Create table as per requirement

sql = """CREATE TABLE logs (

ID integer AUTO_INCREMENT PRIMARY KEY,

time text,

cassusBelli text)"""

# Check if table already exist, if not create a database table

tb_exists = "SELECT * FROM information_schema.tables WHERE table_schema ='secura' AND table_name ='logs';"

cursor.execute(tb_exists)

if not(cursor.fetchone() >= 1):

cursor.execute(sql)

# Add new entry regarding log that will be display

def add_new(name,cassusBelli):

try:

conn = MySQLdb.connect("localhost","benart","secura","secura" )

cursor = conn.cursor()

sql = "INSERT INTO logs (name, cassusBelli) VALUES (%s, %s)"

cursor.execute(sql,(name,cassusBelli))

conn.commit()

lastID = cursor.lastrowid

return lastID

conn.close()

except OperationalError as e:

print e

conn.commit()

# disconnect from server

conn.close()

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 81: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

L13

Propram Penambahan Entry

import serial

import database

import time

from log import Log as user_added

import os

import datetime

import FTPuploader

name = None

try:

arduinoSerialComm = serial.Serial('COM3',9600)

except Exception as e:

print(e)

os._exit(0)

def reciever():

while True:

if (arduinoSerialComm.inWaiting() > 0):

inData = arduinoSerialComm.readline()

if (inData[:2] == "BB"):

uid = inData[2:10].upper()

return uid

break

def sender(msg):

while True:

try:

arduinoSerialComm.write(msg)

break

except Exception as e:

print(e)

print ("Retrying")

sender(msg)

def biometricReciever(msg, name, nuid):

while True:

inData = arduinoSerialComm.readline()

if (inData[:2] == "C3"):

# An error has occured

print ("Reestablish connection")

sender(msg)

elif (inData[:2] == "C2"):

index = inData[2:4]

return index

break

else:

pass

if (inData[:2] == "CC" or inData[:2] == "AA" or inData[:2] == "C3" or inData[:2] == "ID"):

pass

else:

print inData

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 82: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

L14

def uidReciever():

while True:

try:

if (arduinoSerialComm.inWaiting() > 0):

inData = arduinoSerialComm.readline()

if (inData != None and inData[:2] == "BB"):

nuid = inData[2:]

return nuid

break

except Exception as e:

print(e)

print("UID failed to be recieve")

break

def main(*arg, **kwargs):

global name

if not ('name' in kwargs):

name = raw_input("Nama Pengguna : ")

print ("Scan kartu RFID baru")

uid = reciever()

time.sleep(1)

if (database.get_user_by_uid(uid) != None):

print ("Kartu RFID sudah terdaftar");

main(name=name)

return

database.add_new(name,uid)

userNo = database.get_ID_by_name(name)

time.sleep(1)

# Enroll 6 fingerprint

jari = ["Jempol kanan", "Telunjuk kanan", "Jari tengah kanan", "Jempol kiri", "Telunjuk kiri", "Jari Tengah Kiri"]

for i in range(len(jari)):

print ("Scan %s" %(jari[i]))

msg = "C1%s%s " % (userNo[0], i)

sender(msg) # Send enroll command

index = biometricReciever(msg, name, uid)

database.add_new_biometrics(index,name,uid)

# Wait for a second to make sure the database is written

time.sleep(1)

print("Selamat Datang %s" %(name))

timeStamp = datetime.datetime.now().strftime("%Y-%m-%d-%H-%M-%S")

EntryID = database.add_new_log_entry(timeStamp, 'Data pengguna %s ditambahkan kedalam database' %(name), '0',

'1' )

user_added(EntryID, timeStamp, 'Data pengguna %s ditambahkan kedalam database' %(name) , '0', '1' )

FTPuploader.fileFTP()

def delete():

print ("Scan user's card to be deleted")

uid = reciever()

name1 = get_user_by_uid(uid)

name2 = raw_input("Enter user's name to be deleted: ")

if (name1 == name2) :

database.erase(name,uid)

else:

print ("UID bukan milik pengguna %s", name2)

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 83: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

L15

Listing Program Arduino

#include <SPI.h>

#include <MFRC522.h>

#include <Adafruit_Fingerprint.h>

#define SS_PIN 53

#define RST_PIN 22

#define limitPin 26

#define doorLock 30 // output for lock

#define redLED 34 // output for red LED

#define greenLED 38 // output for green LED

#define buzzerPin 42 // output for buzzer

#define mySerial Serial1 // Serial comm for fingerprint reader

String inCommand = ""; // incoming Command

MFRC522 rfid(SS_PIN, RST_PIN); // Create MFRC522 instance

MFRC522::MIFARE_Key key; // An array containing nuid key

byte nuidPICC[4];

// Initializing fingerprint serial (not to confuse with serial communication)

Adafruit_Fingerprint finger = Adafruit_Fingerprint(&mySerial);

uint8_t id; // Global for fingerprint ID

void setup()

Serial.begin(9600);

SPI.begin(); // Init SPI bus

rfid.PCD_Init(); // Init MFRC522

for (byte i = 0; i < 6; i++)

key.keyByte[i] = 0xFF; // Default rfid key value, (must be initialized)

// set the data rate for the sensor serial port (Again, not to confuse with serial communication)

finger.begin(57600);

pinMode(limitPin, INPUT);

pinMode(doorLock, OUTPUT);

pinMode(redLED, OUTPUT);

pinMode(greenLED, OUTPUT);

pinMode(buzzerPin, OUTPUT);

digitalWrite(greenLED, HIGH);

//// MAIN ////

void loop()

if (digitalRead(limitPin) == LOW)

Serial.println("AA1"); // The door is Open

// if we get valid byte, do something:

if (Serial.available() > 0)

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 84: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

L16

inCommand = Serial.readString(); // read the incoming command:

if (inCommand == "BB")

Serial.println("FF");

openSazame();

else if (inCommand == "BC")

verified();

Serial.println("FF");

else if (inCommand == "CB")

Serial.println("FF");

notVerified();

else if (inCommand == "DD")

Serial.println("FF");

failSafe();

else if (inCommand.substring(0,2) == "C1")

delay(100);

getFingerprintEnroll(inCommand.substring(2,4).toInt());

else if (inCommand.substring(0,2) == "C2")

delay(100);

deleteFingerprint(inCommand.substring(2,4).toInt());

else

Serial.println("Command Not Recognized");

delay(10);

// Run RFID detector program

readRFID();

delay(10);

// Run bimetric scanner program

getFingerprintIDez();

delay(10);

//// END OF MAIN ////

// RFID PROGRAM GOES HERE!!!

void readRFID()

// Look for new cards

if ( ! rfid.PICC_IsNewCardPresent())

return;

// Verify if the NUID has been readed

if ( ! rfid.PICC_ReadCardSerial())

return;

MFRC522::PICC_Type piccType = rfid.PICC_GetType(rfid.uid.sak);

// Check is the PICC of Classic MIFARE type

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 85: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

L17

if (piccType != MFRC522::PICC_TYPE_MIFARE_MINI &&

piccType != MFRC522::PICC_TYPE_MIFARE_1K &&

piccType != MFRC522::PICC_TYPE_MIFARE_4K)

Serial.println(F("B0"));

return;

// Send nuid to PC

String item = printHex(rfid.uid.uidByte, rfid.uid.size);

Serial.println("BB"+item);

// Halt PICC

rfid.PICC_HaltA();

// Stop encryption on PCD

rfid.PCD_StopCrypto1();

// BIOMETRIC SCANNER PROGRAM GOES HERE!!!

// Easy and fast mode

int getFingerprintIDez()

uint8_t p = finger.getImage();

if (p != FINGERPRINT_OK)

return -1;

p = finger.image2Tz();

if (p != FINGERPRINT_OK)

return -1;

p = finger.fingerFastSearch();

if (p != FINGERPRINT_OK)

Serial.println("C0");

return -1;

// found a match, but return -1 if confidence level is too low.

if (finger.confidence <= 50)

Serial.println("C1");

return -1;

Serial.println("CC" + String(finger.fingerID) + String(finger.confidence,HEX));

return finger.fingerID;

// Open door

void openSazame()

digitalWrite(buzzerPin, HIGH);

analogWrite(doorLock, 255);

// delay the opening for some time

for (int i = 0; i < 120; i++)

delay(1000);

if (i=1)

digitalWrite(buzzerPin, LOW); //turn off buzzer after 1 sec

analogWrite(doorLock, 0);

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 86: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

L18

void verified()

digitalWrite(buzzerPin, HIGH);

delay(300);

digitalWrite(buzzerPin, LOW);

void notVerified()

digitalWrite(buzzerPin, HIGH);

delay(300);

digitalWrite(buzzerPin, LOW);

delay(300);

digitalWrite(buzzerPin, HIGH);

delay(800);

digitalWrite(buzzerPin, LOW);

void failSafe()

digitalWrite(redLED, HIGH);

digitalWrite(greenLED, LOW);

for (int i = 0; i < 30; i++)

delay(1000);

if (digitalRead(limitPin) == LOW)

Serial.println("AA1"); // The door is Open

digitalWrite(redLED, LOW);

digitalWrite(greenLED, HIGH);

String printHex(byte *buffer, byte bufferSize)

String item;

int i=0;

while (i < bufferSize)

item += String (buffer[i] < 0x10 ? "0" : "");

item += String(buffer[i], HEX);

i ++;

return item;

// FINGERPRINT ENROLL

uint8_t getFingerprintEnroll(int id)

delay(100);

Serial.println("Ready!");

delay(100);

int p = -1;

while (p != FINGERPRINT_OK)

p = finger.getImage();

switch (p)

case FINGERPRINT_OK:

Serial.println("Image taken");

break;

case FINGERPRINT_NOFINGER:

Serial.print(".");

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 87: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

L19

break;

case FINGERPRINT_PACKETRECIEVEERR:

Serial.println("Communication error");

break;

case FINGERPRINT_IMAGEFAIL:

Serial.println("Imaging error");

break;

default:

Serial.println("Unknown error");

break;

delay(100);

// OK success!

p = finger.image2Tz(1);

switch (p)

case FINGERPRINT_OK:

Serial.println("Image converted");

break;

case FINGERPRINT_IMAGEMESS:

Serial.println("Image too messy");

return p;

case FINGERPRINT_PACKETRECIEVEERR:

Serial.println("Communication error");

return p;

case FINGERPRINT_FEATUREFAIL:

Serial.println("Could not find fingerprint features");

return p;

case FINGERPRINT_INVALIDIMAGE:

Serial.println("Could not find fingerprint features");

return p;

default:

Serial.println("Unknown error");

return p;

delay(100);

Serial.println("Remove finger");

delay(2000);

p = 0;

while (p != FINGERPRINT_NOFINGER)

p = finger.getImage();

delay(100);

Serial.print("ID "); Serial.println(id);

p = -1;

delay(100);

Serial.println("Place same finger again");

while (p != FINGERPRINT_OK)

p = finger.getImage();

switch (p)

case FINGERPRINT_OK:

Serial.println("Image taken");

break;

case FINGERPRINT_NOFINGER:

Serial.print(".");

break;

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 88: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

L20

case FINGERPRINT_PACKETRECIEVEERR:

Serial.println("Communication error");

break;

case FINGERPRINT_IMAGEFAIL:

Serial.println("Imaging error");

break;

default:

Serial.println("Unknown error");

break;

delay(100);

// OK success!

p = finger.image2Tz(2);

switch (p)

case FINGERPRINT_OK:

Serial.println("Image converted");

break;

case FINGERPRINT_IMAGEMESS:

Serial.println("Image too messy");

return p;

case FINGERPRINT_PACKETRECIEVEERR:

Serial.println("Communication error");

return p;

case FINGERPRINT_FEATUREFAIL:

Serial.println("Could not find fingerprint features");

return p;

case FINGERPRINT_INVALIDIMAGE:

Serial.println("Could not find fingerprint features");

return p;

default:

Serial.println("An Error has occured");

delay(100);

Serial.println("Try Again");

delay(100);

Serial.println("C3");

return p;

delay(100);

// OK converted!

Serial.print("Creating model for #"); Serial.println(id);

delay(100);

p = finger.createModel();

if (p == FINGERPRINT_OK)

Serial.println("Prints matched!");

else

Serial.println("An Error has occured");

delay(100);

Serial.println("Try Again");

delay(100);

Serial.println("C3");

return p;

delay(100);

Serial.print("ID "); Serial.println(id);

Serial.write(p);

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 89: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

L21

p = finger.storeModel(id);

if (p == FINGERPRINT_OK)

Serial.println("Stored!");

delay(100);

Serial.println("C2" + String(id));

else

Serial.println("An Error has occured");

delay(100);

Serial.println("Try Again");

delay(100);

Serial.println("C3");

return p;

// DELETE FINGERPRINT ID

uint8_t deleteFingerprint(uint8_t id)

uint8_t p = -1;

p = finger.deleteModel(id);

if (p == FINGERPRINT_OK)

Serial.println("Deleted!");

else if (p == FINGERPRINT_PACKETRECIEVEERR)

Serial.println("Communication error");

return p;

else if (p == FINGERPRINT_BADLOCATION)

Serial.println("Could not delete in that location");

return p;

else if (p == FINGERPRINT_FLASHERR)

Serial.println("Error writing to flash");

return p;

else

Serial.print("Unknown error: 0x"); Serial.println(p, HEX);

return p;

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 90: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

L22

Listing Program User Interface

<!DOCTYPE html>

<html>

<head>

<title>Home</title>

<!-- link to main stylesheet -->

<link rel="stylesheet" href="css/main.css">

<style>

/* Style the tab */

.tab

overflow: hidden;

border: none;

background-color: none;

/* Style abs */

.tab a

background-color: inherit;

float: left;

border: none;

outline: none;

cursor: pointer;

padding: 14px 16px;

transition: 0.3s;

font-size: 19px;

font-weight: bold;

color: #000000;

/* Style the buttons inside the tab */

.tab button

background-color: inherit;

float: left;

border: none;

outline: none;

cursor: pointer;

padding: 14px 16px;

transition: 0.3s;

font-size: 17px;

font-weight: bold;

/* Change background color of buttons on hover */

.tab button:hover

background-color: #ddd;

/* Change background color of a on hover */

.tab a:hover

background-color: #ddd;

/* Style the tab content */

.tabcontent

display: none;

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 91: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

L23

padding: 6px 12px;

border: none;

border-top: none;

.active

display: block;

</style>

</head>

<body>

<div class="tab">

<a href="/secura/index.html">Home</button>

<a href="/secura/logs/logs.php">Logs</button>

<a href="/secura/videos/videos.html">Videos</a>

</div>

<p>Selamat Datang</p>

<p>Hari sejak keamanan terakhir kali terkompromi:</p>

<iframe width="560" height="315" src="/secura/dates/date.php" frameborder="0"></iframe>

<footer>

<ul>

<li><a href="mailto:[email protected]">email</a></li>

<li><a href="https://github.com/benartm">github.com/benartm</a></li>

</ul>

</footer>

</body>

</html>

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 92: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

L24

Data Percobaan

No Time Stamp RFID Nama

Pemilik RFID

Time Stamp Sidik Jari Nama Pemilik

Sidik Jari Jari

Pintu dibukakan pada

Video Lokal

Video Web

1 2018-09-21-12-16-39 Celvien 2018-09-21-12-16-44 Celvien Jempol kanan 2018-09-21-12-16-44

2 2018-09-21-12-19-27 Celvien 2018-09-21-12-19-32 Celvien Jempol kiri 2018-09-21-12-19-32

3 2018-09-21-12-28-36 Celvien 2018-09-21-12-28-19 Celvien Jempol kiri 2018-09-21-12-28-36

4 2018-09-21-12-29-28 Celvien 2018-09-21-12-29-32 Celvien Jempol kanan 2018-09-21-12-29-32

5 2018-09-21-12-30-20 Celvien 2018-09-21-12-30-25 Celvien Telunjuk kanan 2018-09-21-12-30-25

6 2018-09-21-12-32-42 Celvien 2018-09-21-12-32-47 Celvien Jempol kanan 2018-09-21-12-32-47

7 2018-09-21-12-34-20 Celvien 2018-09-21-12-34-17 Celvien Telunjuk kanan 2018-09-21-12-34-20

8 2018-09-21-13-00-14 Celvien 2018-09-21-13-00-17 Celvien Jempol kanan 2018-09-21-13-00-17

9 2018-09-21-13-01-59 Celvien 2018-09-21-13-02-03 Celvien Jempol kanan 2018-09-21-13-02-03

10 2018-09-21-13-03-53 Celvien 2018-09-21-13-03-57 Celvien Jari tengah kanan 2018-09-21-13-03-57

11 2018-09-21-15-58-16 Artha 2018-09-21-15-58-19 Artha Jari tengah kanan 2018-09-21-15-58-19

12 2018-09-21-15-59-08 Artha 2018-09-21-15-59-04 Artha Jari tengah kanan 2018-09-21-15-59-08

13 2018-09-21-15-59-50 Artha 2018-09-21-15-59-47 Artha Jari tengah kanan 2018-09-21-15-59-50

14 2018-09-21-16-00-27 Artha 2018-09-21-16-00-24 Artha Jari tengah kanan 2018-09-21-16-00-27

15 2018-09-21-16-03-33 Artha 2018-09-21-16-03-37 Artha Jari tengah kanan 2018-09-21-16-03-37

16 2018-09-21-16-22-02 Artha 2018-09-21-16-21-52 Artha Jari tengah kanan 2018-09-21-16-22-02

17 2018-09-21-16-22-33 Artha 2018-09-21-16-22-36 Artha Jari tengah kanan 2018-09-21-16-22-36

18 2018-09-21-16-23-16 Artha 2018-09-21-16-23-23 Artha Jari tengah kanan 2018-09-21-16-23-23

19 2018-09-21-16-23-53 Artha 2018-09-21-16-23-57 Artha Jari tengah kanan 2018-09-21-16-23-57

20 2018-09-21-16-24-28 Artha 2018-09-21-16-24-33 Artha Jari tengah kanan 2018-09-21-16-24-33

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 93: TUGAS AKHIR Halaman Sampul (Bahasa Indonesia) KUNCI PINTU ... · terkait pengaktifasian sistem akan dikirimkan ke webserver untuk dapat diakses dimana saja. Penelitian ini akan melihat

L25

No Time Stamp RFID Nama

Pemilik RFID

Time Stamp Sidik Jari Nama Pemilik

Sidik Jari Jari

Pintu dibukakan pada

Video Local

Video Web

21 2018-09-24-14-32-17 Akita 2018-09-24-14-32-13 Akita Jempol kanan 2018-09-24-14-32-17

22 2018-09-24-14-33-13 Akita 2018-09-24-14-33-13 Akita Telunjuk kanan 2018-09-24-14-33-13

23 2018-09-24-14-34-26 Akita 2018-09-24-14-34-22 Akita Telunjuk kanan 2018-09-24-14-34-26

24 2018-09-24-14-35-08 Akita 2018-09-24-14-35-07 Akita Telunjuk kanan 2018-09-24-14-35-08

25 2018-09-24-14-37-02 Akita 2018-09-24-14-37-00 Akita Jempol kanan 2018-09-24-14-37-02

26 2018-09-24-14-38-20 Akita 2018-09-24-14-38-18 Akita Telunjuk kanan 2018-09-24-14-38-20

27 2018-09-24-14-38-56 Akita 2018-09-24-14-38-54 Akita Telunjuk kanan 2018-09-24-14-38-56

28 2018-09-24-14-39-48 Akita 2018-09-24-14-39-46 Akita Jempol kanan 2018-09-24-14-39-48

29 2018-09-24-15-10-02 Akita 2018-09-24-15-10-00 Akita Jempol kanan 2018-09-24-15-10-02

30 2018-09-24-15-12-43 Akita 2018-09-24-15-12-40 Akita Jempol kanan 2018-09-24-15-12-43

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI