Anda di halaman 1dari 88

RANCANGAN SISTEM PENGAWASAN BERBASIS HUMAN

DETECTION MENGGUNAKAN TELEGRAM PADA


RESTRICTED AREA DI BANDAR UDARA

TUGAS AKHIR
Karya Tulis Sebagai Salah Satu Syarat Lulus Pendidikan
Program Studi Diploma IV Teknik Navigasi Udara Angkatan ke-26 C

Oleh
NAZRIZZA DESTI YANI
NIT. 22418090

PROGRAM STUDI TEKNIK NAVIGASI UDARA


POLITEKNIK PENERBANGAN INDONESIA CURUG
AGUSTUS 2022
ABSTRAK

“RANCANGAN SISTEM PENGAWASAN BERBASIS HUMAN


DETECTION MENGGUNAKAN TELEGRAM PADA
RESTRICTED AREA DI BANDAR UDARA”

Oleh:
NAZRIZZA DESTI YANI
NIT: 22418090
Program Studi D.IV Teknik Navigasi Udara
Angkatan ke-26 C

Untuk memastikan operasi penerbangan yang lancar, keselamatan dan


keamanan penerbangan adalah tanggung jawab utama. Keamanan Penerbangan
adalah suatu keadaan yang memberikan perlindungan kepada penerbangan dari
tindakan melawan hukum melalui keterpaduan pemanfaatan sumber daya manusia,
fasilitas, dan prosedur. Terbatasnya sumber daya manusia membuat beberapa
daerah keamanan tidak dapat dijaga secara langsung oleh security atau pihak
keamanan. Salah satu program keamanan yang dilakukan pada daerah restricted
area di bandar udara hanya sebatas patroli secara berkala dan pengawasan melalui
CCTV. Dengan demikian pengawasan tidak terpantau secara langsung. Maka fungsi
pengawasan pun menjadi kurang efektif dan efisien karena tidak mampu mencegah
tindak kejahatan yang terjadi. Tujuan perancangan ini adalah untuk menghasilkan
rancangan sistem pengawasan agar dapat membantu dalam meningkatkan
keamanan serta mampu dilakukannya pengawasan jarak jauh secara real-time.
Kamera ini akan diprogramkan untuk mendeteksi objek yang ada yakni manusia.
Ketika manusia terdeteksi, mikrokomputer Raspberry Pi 3b akan terintegrasi
dengan mengirim data objek ke smartphone. Hasil data objek tersebut akan diterima
security melalui Telegram. Apabila objek terindikasi berbahaya security dapat
menuju lokasi secara langsung serta melakukan perintah menghidupkan atau
mematikan alarm Buzzer yang telah terprogram melalui Botfather Telegram.

Kata Kunci:
Security, Kamera, Raspberry Pi, Telegram, Sistem Pengawasan

i
ABSTRACT

“RANCANGAN SISTEM PENGAWASAN BERBASIS HUMAN


DETECTION MENGGUNAKAN TELEGRAM PADA
RESTRICTED AREA DI BANDAR UDARA”

By:
NAZRIZZA DESTI YANI
NIT: 22418090
D.IV Air Navigation Engineering Study Program
Batch of-26 C

To ensure the smooth operation of the flight, safety and security is the main
responsibility. Aviation Security is a condition that provides protection to flights
from unlawful acts through the integrated use of human resources, facilities, and
procedures. Limited human resources make some security areas cannot be directly
guarded by the security forces or the security forces. One of the security programs
carried out in limited areas at the airport is only limited to periodic patrols and
surveillance through CCTV. Thus, supervision is not monitored directly. So the
supervisory function becomes less effective and efficient because it is unable to
prevent crimes that occur. The purpose of this design is to design a monitoring
system design so that it can help improve security and be able to monitor remotely
in real-time. This camera will be programed to detect objects that exist, namely
humans. When humans are detected, the Raspberry Pi 3b microcomputer will be
integrated by sending object data to the smartphone. The results of the object data
will be received by security via Telegram. If the object is indicated as a dangerous
security, it can go directly to the location and carry out the command to turn on or
turn off the Buzzer alarm that has been programmed through the Telegram
Botfather.

Keyword:
Security, Camera, Raspberry Pi, Telegram, Surveillance System

ii
PENGESAHAN PEMBIMBING

Tugas Akhir: “RANCANGAN SISTEM PENGAWASAN BERBASIS HUMAN


DETECTION MENGGUNAKAN TELEGRAM PADA RESTRICTED AREA
DI BANDAR UDARA” telah diperiksa dan disetujui untuk diuji sebagai salah satu
syarat lulus Pendidikan Program Studi Diploma IV Teknik Navigasi Udara
Angkatan ke-26 C, Politeknik Penerbangan Indonesia, Curug - Tangerang.

NAMA : NAZRIZZA DESTI YANI


NIT : 22418090

PEMBIMBING I PEMBIMBING II

SABDO PURNOMO, S.T., S.SiT., M.Si. IRVAN S.Tr.T


Penata Tk. I (III/d) NIK. 10011100
NIP. 19570906 198001 1 001

Mengetahui,

KETUA PROGRAM STUDI


TEKNIK NAVIGASI UDARA

MUH. WILDAN, S.T.,M.T.


Penata (III/c)
NIP. 197705301998031002

iii
PENGESAHAN PENGUJI

Tugas Akhir: “RANCANGAN SISTEM PENGAWASAN BERBASIS HUMAN


DETECTION MENGGUNAKAN TELEGRAM PADA RESTRICTED AREA DI
BANDAR UDARA” telah dipertahankan di hadapan Tim Penguji Tugas Akhir
Program Studi Diploma IV Teknik Navigasi Udara Angkatan ke-26 C, Politeknik
Penerbangan Indonesia Curug-Tangerang. Tugas akhir ini telah dinyatakan LULUS
Program Diploma IV pada tanggal 4 Agustus 2022.

KETUA SEKRETARIS

TARUNA JAYA, S.SiT.,M.MTr IRVAN S.Tr.T


Pembina (IV/a) NIK. 10011100
NIP. 19720422 199312 1 001

ANGGOTA

TONI, S.IP., M.Si.


Penata Tk. I (III/d)
NIP. 19650521 198903 1 001

iv
LEMBAR PERNYATAAN KEASLIAN

Saya yang bertanda tangan dibawah ini:

Nama : Nazrizza Desti Yani


NIT : 22418090
Program Studi : Diploma IV Teknik Navigasi Udara Angkatan ke-26 C

Menyatakan bahwa tugas akhir berjudul “RANCANGAN SISTEM


PENGAWASAN BERBASIS HUMAN DETECTION MENGGUNAKAN
TELEGRAM PADA RESTRICTED AREA DI BANDAR UDARA” merupakan
karya asli saya bukan merupakan hasil plagiarisme.
Demikian pernyataan ini saya buat dengan sesungguhnya, dan apabila dikemudian
hari terdapat penyimpangan dan ketidakbenaran dalam pernyataan ini, maka saya
bersedia menerima sanksi berupa pencabutan gelar akademik dari Politeknik
Penerbangan Indonesia (PPI) Curug.
Demikian pernyataan ini saya buat dalam keadaan sadar tanpa paksaan dari pihak
manapun.

Tangerang, 3 Agustus 2022


Yang Membuat Pernyataan

Nazrizza Desti Yani

v
PEDOMAN PENGGUNAAN TUGAS AKHIR

Tugas akhir D.IV yang tidak dipublikasikan terdaftar dan tersedia di Perpustakaan
Politeknik Penerbangan Indonesia, dan terbuka untuk umum dengan ketentuan
bahwa hak cipta ada pada pengarang dengan mengikuti aturan HaKI yang berlaku
di Politeknik Penerbanagan Indonesia. Referensi kepustakaan diperkenankan
dicatat, tetapi pengutipan atau peringkasan hanya dilakukan seizin pengarang dan
harus disertai kaidah ilmiah untuk menyebutkan sumbernya.

Sitasi hasil penelitian Tugas akhir ini dapat ditulis dalam bahasa Indonesia sebagai
berikut:
Yani, N.D. (2022): Rancangan Sistem Pengawasan Berbasis Human Detection
Menggunakan Telegram Pada Restricted area di Bandar Udara, Tugas
Akhir Program Diploma IV, Politeknik Penerbangan Indonesia.

Memperbanyak atau menerbitkan sebagian atau seluruh tugas akhir haruslah seizin
Ketua Program Studi Teknik Navigasi Udara, Politeknik Penerbangan Indonesia.

vi
HALAMAN PERUNTUKAN

Motto:

Teruslah Bernafas
“Saat kamu bernafas sekarang, orang lain mengambil nafas terakhirnya. Jadi
berhentilah mengeluh, dan belajarlah menjalani hidupmu dengan apa yang kamu
miliki”
(Nazrizza Desti Yani)

Tugas Akhir Ini Kupersembahkan Untuk:


Bapakku dan Ibuku yang telah berjuang membesarkanku sampai saat ini
hingga aku bisa sampai dititik ini. Karena berkat kasih sayang dan doa kalian yang
tiada hentinya untuk mengiringi keberhasilanku, hidupku terasa begitu mudah dan
selalu penuh kebahagiaan. Terimakasih untuk selalu memberikan semangat dan
motivasi baik dukungan maupun material dalam penyusunan Tugas Akhir ini.

Adikku yang sangat kusayangi, terimakasih telah selalu menyemangati dan


memberikan inspirasi disaat menyelesaikan Tugas Akhir ini. Semoga aku dapat
menjadi kakak yang berguna bagi mu.

vii
KATA PENGANTAR

Segala puji dan syukur hanya bagi Tuhan Yang Maha Esa, oleh karena
anugerah-Nya yang melimpah, kemurahan dan kasih setia-Nya yang besar
akhirnya penulis dapat menyelesaikan penulisan tugas akhir ini dengan lancar
tanpa adanya hambatan yang berarti sesuai dengan waktu yang telah ditentukan.

Tugas Akhir dengan judul “RANCANGAN SISTEM PENGAWASAN


BERBASIS HUMAN DETECTION MENGGUNAKAN TELEGRAM PADA
RESTRICTED AREA DI BANDAR UDARA”, diajukan guna memenuhi salah
satu syarat lulus pendidikan Program Studi Diploma IV Teknik Navigasi Udara
Angkatan ke-26 di Politeknik Penerbangan Indonesia, Curug-Tangerang.

Dalam penyusunan Tugas Akhir ini banyak pihak yang telah memberikan
bantuan, perhatian dan dorongan kepada penulis. Untuk itu secara khusus penulis
juga ingin mengucapkan rasa terimakasih yang sebesar-besarnya kepada :
1. Bapak Asri Santosa, S.T., S.SiT., M.T., selaku Direktur Politeknik Penerbangan
Indonesia Curug.
2. Bapak Muh. Wildan., S.T., M.T., selaku Ketua Progam Studi Teknik Navigasi
Udara.
3. Bapak Sabdo Purnomo, ST., S.SiT., M.Si., selaku Dosen Pembimbing I.
4. Bapak Irvan, S.Tr.T., selaku Dosen Pembimbing II.
5. Seluruh Dosen, Pengajar dan Staff di Progam Studi Teknik Navigasi Udara.
6. Kedua Orang Tua saya Bapak Rudi setiawan dan Ibu Komariyah serta adik saya
Nazwa yang senantiasa memberikan dukungan, dan semangat yang luar biasa
untuk penyusunan Tugas Akhir.
7. Rekan hidup saya Lindu yang selalu membantu dan menenami dalam penulisan
Tugas Akhir ini.
8. Rekan-rekan D IV TNU 26 C terkhusus Barak Kilo 4 atas segala cerita,
perjuangan, dukungan dan bantuan.
9. Adik-Adik taruni D IV TNU 28 terkhusus Culin, Anis, Dita, Briana dan Tia
serta taruni D IV TNU 29 terkhusus Madhawi dan Chintya tercinta yang telah
membantu dan mendukung dalam penyelesaian Tugas Akhir ini.

viii
Penulis menyadari bahwa masih banyak kekurangan dalam penyusunan
Tugas Akhir ini. Peneliti mengharapkan kritik dan saran yang bersifat membangun
untuk kesempurnaan penelitian di masa yang akan datang. Tugas Akhir ini
diharapkan pula dapat bermanfaat bagi pembacanya.

Curug, 4 Agustus 2022

Nazrizza Desti Yani

ix
DAFTAR ISI

ABSTRAK ............................................................................................................... i
ABSTRACT ............................................................................................................ ii
PENGESAHAN PEMBIMBING ........................................................................... iii
PENGESAHAN PENGUJI .................................................................................... iv
LEMBAR PERNYATAAN KEASLIAN ................................................................v
PEDOMAN PENGGUNAAN TUGAS AKHIR ................................................... vi
HALAMAN PERUNTUKAN .............................................................................. vii
KATA PENGANTAR .......................................................................................... viii
DAFTAR GAMBAR ............................................................................................ xii
DAFTAR TABEL ................................................................................................ xiv
DAFTAR LAMPIRAN ..........................................................................................xv
BAB I PENDAHULUAN ......................................................................................1
A. Latar Belakang Masalah ..................................................................................1
B. Identifikasi Masalah ........................................................................................2
C. Batasan Masalah ..............................................................................................3
D. Rumusan Masalah ...........................................................................................3
E. Tujuan ..............................................................................................................4
F. Manfaat ............................................................................................................4
G. Sistematika Penulisan ......................................................................................4
BAB II TINJAUAN PUSTAKA ............................................................................6
A. Tinjauan Teori .................................................................................................6
1. Rasberry Pi..............................................................................................6
2. Modul pi camera ...................................................................................11
3. Python ...................................................................................................11
4. Computer Vision ...................................................................................12
5. Open Source Computer Vision (OpenCV) ...........................................13
6. TensorFlow ...........................................................................................14
7. Geany ....................................................................................................15
8. Buzzer ....................................................................................................16
9. Telegram ...............................................................................................16
10. Angry IP Scanner .................................................................................17
11. VNC Viewer .........................................................................................18
BAB III METODOLOGI PENELITIAN ............................................................21

x
A. Metodologi Penelitian ...................................................................................21
B. Konsep Rancangan ........................................................................................21
C. Waktu Dan Lokasi Perancangan ....................................................................24
D. Penentuan Alat Dan Bahan ............................................................................25
E. Kriteria Perancangan ......................................................................................26
BAB IV PEMBAHASAN .....................................................................................27
A. Gambaran Umum Perancangan .....................................................................27
B. Tahapan Perancangan ....................................................................................28
D. Interpretasi Hasil Uji Coba Rancangan .........................................................53
BAB V KESIMPULAN DAN SARAN ................................................................55
DAFTAR PUSTAKA ............................................................................................56
LAMPIRAN ...........................................................................................................58

xi
DAFTAR GAMBAR

Gambar II. 1 Logo Raspberry...................................................................................6


Gambar II. 2 Spesifikasi Raspberry .........................................................................7
Gambar II. 3 Arsitektur Raspberry ...........................................................................9
Gambar II. 4 Pin GPIO Header ..............................................................................10
Gambar II. 5 Pi camera...........................................................................................11
Gambar II. 6 Logo Python......................................................................................12
Gambar II. 7 Logo OpenCV ...................................................................................13
Gambar II. 8 Logo TensorFlow..............................................................................14
Gambar II. 9 Logo Geany.......................................................................................15
Gambar II. 10 Passive Buzzer ................................................................................16
Gambar II. 11 Telegram .........................................................................................17
Gambar II. 12 Angry Ip Scanner ............................................................................18
Gambar II. 13 Logo VNC Viewer ..........................................................................19
Gambar II. 14 FlowChart Kerangka Berfikir .........................................................20
Gambar III. 1 RnD Level 3 ....................................................................................21
Gambar III. 2 Kondisi Saat Ini ...............................................................................22
Gambar III. 3 Kondisi yang diharapkan .................................................................22
Gambar III. 4 FlowChart Rancangan .....................................................................23
Gambar IV. 1 Gambaran Umum Perancangan .......................................................27
Gambar IV. 2 Wiring Rancangan Keseluruhan .....................................................28
Gambar IV. 3 Raspberry Pi 3b ...............................................................................29
Gambar IV. 4 Pi Camera ........................................................................................29
Gambar IV. 5 Interkoneksi Kabel CSI ...................................................................30
Gambar IV. 6 Interkoneksi Kamera dengan CSI Raspberry ..................................30
Gambar IV. 7 Interkoneksi Buzzer dengan Raspberry ..........................................31
Gambar IV. 8 Pin Pada Buzzer ..............................................................................32
Gambar IV. 9 Kabel Jumper Female to Female .....................................................32
Gambar IV. 10 Download Angry Ip Scanner .........................................................34
Gambar IV. 11 Install Angry Ip Scanner ...............................................................34
Gambar IV. 12 Tampilan Aplikasi Angry Ip Scanner............................................35
Gambar IV. 13 Pilih Bahasa ...................................................................................35
Gambar IV. 14 Welcome Page VNC Viewer.........................................................35
Gambar IV. 15 User License Agreement VNC Viewer .........................................36
Gambar IV. 16 Install VNC Viewer.......................................................................36
Gambar IV. 17 Google Play Store .........................................................................37
Gambar IV. 18 Pencarian Telegram di Playstore ...................................................37
Gambar IV. 19 Pendaftaran Akun Telegram .........................................................37
Gambar IV. 20 Input Kode OTP ............................................................................38
Gambar IV. 21 Tampilan Profil Telegram .............................................................38
Gambar IV. 22 Pencarian Akun BotFather ............................................................39
Gambar IV. 23 Memulai Bot..................................................................................39
Gambar IV. 24 Membuat Bot Baru ........................................................................39
Gambar IV. 25 Alamat dan Token API Bot ...........................................................40
Gambar IV. 26 Skript Program TensorFlow ..........................................................41
Gambar IV. 27 Skript Program Pi Camera.............................................................41

xii
Gambar IV. 28 Skript Program Bot Telegram .......................................................41
Gambar IV. 29 Skript Program Buzzer ..................................................................42
Gambar IV. 30 Start Proses Scanning ....................................................................42
Gambar IV. 31 Scanning Conpleted.......................................................................43
Gambar IV. 32 Ip Raspberry ..................................................................................43
Gambar IV. 33 New Connection VNC Viewer ......................................................44
Gambar IV. 34 Label Projek ..................................................................................44
Gambar IV. 35 Tampilan Beranda VNC Viewer ...................................................45
Gambar IV. 36 Authenticate to VNC Server .........................................................45
Gambar IV. 37 Tampilan Dekstop Raspberry ........................................................46
Gambar IV. 38 Menu Terminal ..............................................................................46
Gambar IV. 39 Penginputan Perintah cd code .......................................................47
Gambar IV. 40 Penginputan Perintah “python3 main.py” .....................................47
Gambar IV. 41 Rancangan Program Berjalan ........................................................48
Gambar IV. 42 Tampilan Hasil Gambar Objek di Telegram .................................48
Gambar IV. 43 Melakukan Perintah Menghidupkan Buzzer .................................49
Gambar IV. 44 Objek Manusia Terdeteksi ............................................................50
Gambar IV. 45 Hasil Tangkapan Objek di Telegram ............................................50
Gambar IV. 46 Objek Hewan Kucing ....................................................................51
Gambar IV. 47 Objek Benda Botol ........................................................................51
Gambar IV. 48 Objek Benda Buku ........................................................................51
Gambar IV. 49 Perintah Pada Bot Telegram ..........................................................52
Gambar IV. 50 Buzzer on dan off ..........................................................................53

xiii
DAFTAR TABEL

Tabel II. 1 Spesifikasi Raspberry .............................................................................7


Tabel III. 1 Agenda Penulisan dan Perancangan ....................................................24
Tabel III. 2 Alat dan Bahan ....................................................................................25
Tabel IV. 1 Tabel Konfigurasi Buzzer dengan GPIO Raspberry ...........................33
Tabel IV. 2 Interprestasi Hasil Uji Coba ................................................................53

xiv
DAFTAR LAMPIRAN

Lampiran A. Lembar Persetujuan Mengikuti Tugas Akhir................................58


Lampiran B. Lembar Konsultasi Bimbingan Tugas Akhir ................................59
Lampiran C. Skript Konfigurasi TensorFlow ....................................................60
Lampiran D. Skript Konfigurasi Kamera ...........................................................62
Lampiran E. Skript Konfigurasi Bot Telegram ..................................................64
Lampiran F. Skript Konfigurasi Buzzer .............................................................65
Lampiran G. Skript Program Rancangan ...........................................................66
Lampiran H. Hasil Pengecekan Trunitin ............................................................72

xv
BAB I
PENDAHULUAN

A. Latar Belakang Masalah

Sesuai dengan UU No 1 Tahun 2009 [1], Penerbangan adalah satu


kesatuan sistem yang terdiri atas pemanfaatan wilayah udara, pesawat udara,
bandar udara, angkutan udara, navigasi penerbangan, keselamatan dan
keamanan, lingkungan hidup, serta fasilitas penunjang dan fasilitas umum
lainnya. Menurut yang tercantum dalam Peraturan Menteri Nomor: PM 33
Tahun 2015 bahwa Keamanan Penerbangan adalah suatu keadaan yang
memberikan perlindungan kepada penerbangan dari tindakan melawan hukum
melalui keterpaduan pemanfaatan sumber daya manusia, fasilitas, dan
prosedur [2].

Fasilitas – fasilitas penunjang dan fasilitas umum lainnya mempunyai


peranan penting dalam mencapai tujuan keselamatan penerbangan. Fasilitas
peralatan komunikasi, navigasi, surveillance, automasi (CNS-A) maupun
fasilitas umum perlu dilakukan pengawasan guna menghindari tindakan
kriminalitas serta hal-hal yang tidak diinginkan [3].
Untuk kepentingan Keamanan Penerbangan, Unit Penyelenggara
Bandar Udara dan Badan Usaha Bandar Udara harus mengidentifikasi daerah-
daerah yang digunakan untuk kepentingan operasional penerbangan dan
menetapkan sebagai daerah keamanan bandar udara. Daerah keamanan bandar
udara sebagaimana dimaksud salah satunya yaitu Daerah Terbatas (Restricted
area) adalah daerah yang harus dilindungi, dikendalikan dan diawasi untuk
menjamin kelancaran penerbangan, serta untuk masuk harus memenuhi
persyaratan tertentu [2].
Dalam prosesnya untuk pengendalian keamanan harus tersedianya sumber
daya dan fasilitas keamanan sesuai dengan kebutuhan. Terbatasnya sumber daya
manusia membuat beberapa daerah keamanan tidak dapat dijaga secara langsung
oleh security atau pihak keamanan. Salah satu program keamanan yang

1
dilakukan pada daerah restricted area di bandar udara sebatas patroli secara
berkala dan pengawasan melalui CCTV. Dengan demikian pengawasan tidak
terpantau langsung. Maka fungsi pengawasan pun menjadi kurang efektif dan
efisien karena tidak mampu mencegah tindak kejahatan yang terjadi.
Contoh kasus yang telah ditemui penulis dalam pelaksanaan OJT di
Yogyakarta ialah kurang terpantaunya daerah restricted area dimana terdapat
warga sekitar yang terus berupaya masuk ke dalam shelter Localizer. Hal ini
kadang terjadi menyebabkan ganguan pancaran pada antenna dan
mengakibatkan alarm pada Localizer.
Oleh karena itu dibuatkan suatu sistem kamera yang mampu menyeleksi
objek yang dikehendaki serta untuk meningkatkan pengawasannya dapat
menggunakan smartphone dimana akan sangat berguna dan memudahkan untuk
pemantauan situasi restricted area. Berdasarkan latar belakang diatas, maka
dapat diangkat tugas penyusunan tugas akhir dengan judul “RANCANGAN
SISTEM PENGAWASAN BERBASIS HUMAN DETECTION
MENGGUNAKAN TELEGRAM PADA RESTRICTED AREA DI
BANDAR UDARA”
Beberapa perancangan sistem pengawasan yang telah ada diantaranya
dilakukan oleh Dwi Ely Kurniawan dan rekan dalam sebuah jurnal “Perancangan
Sistem Kamera Pengawas Berbasis Perangkat Bergerak Menggunakan
Raspberry Pi” [4], pada perancangan ini masih menggunakan sensor gerak untuk
mendeteksi objek. Kemudian menurut Basworo Ardi Pramono dan rekan dalam
sebuah jurnal “Raspberry Pi dengan Modul Kamera dan Motion Sensor Sebagai
Solusi CCTV Lab FTIK UNIV.Semarang” [5], Perancangan ini tidak
menambahkan notifikasi pada Telegram. Dan menurut Riki Rifandi dan rekan
dalam sebuah jurnal “Rancang Bangun Kamera Pengawas Menggunakan
Raspberry dengan Aplikasi Telegram Berbasis Internet of Things” [6], yang
menjadi pembeda adalah tidak adanya alarm pada perancangan.

B. Identifikasi Masalah
Berikut penulis mengidentifikasi masalah berdasarkan latar belakang yang
dijelaskan di atas:

2
1. Pemantauan restricted area Localizer di Yogyakarta hanya dilakukan patroli
secara berkala dan pengawasan melalui CCTV tidak dilakukan secara terus
menerus dipantau maka informasi yang disajikan hanya berupa rekaman
2. Faktor human reability menjadikan pemantauan menggunakan CCTV tidak
dapat mengetahui kejadian yang terjadi secara aktual.
3. Saat ini belum efektifnya pemantauan keamanan menggunakan CCTV
dikarnakan belum adanya alert pengidentifikasian objek manusia.

C. Batasan Masalah
Menyadari akan adanya keterbatasan, maka diperlukan batasan untuk
membatasi permasalahan yang ada, selain itu juga agar penulisan tugas akhir ini
lebih mengarah pada pokok permasalahan yang sesuai dengan judul tugas akhir.
Pada tugas akhir ini masalah yang akan dibatasi yaitu:
1. Rancangan sistem pengawasan menggunakan human detection berbasis
kamera.
2. Rancangan sistem pengawasan menggunakan Telegram sebagai media untuk
pengawasan.
3. Pendeteksian rancangan sistem pengawasan dilakukan terhadap manusia.

D. Rumusan Masalah
Berdasarkan latar belakang, identifikasi masalah dan batasan masalah yang
ada pada rancangan tugas akhir maka penulis membuat rumusan masalah
sebagai berikut:
1. Bagaimana merancang sistem pengawasan berbasis human detection
menggunakan Telegram?
2. Bagaimana cara kerja rancangan sistem pengawasan menggunakan
Raspberry Pi yang terhubung ke Telegram?
3. Apakah rancangan dapat mendeteksi objek manusia serta efektif dalam
membantu proses pengawasan dari jarak jauh serta meningkatkan keamanan?

3
E. Tujuan
Tujuan dari perancangan yang penulis buat adalah sebagai berikut:
1. Merancang sebuah rancangan sitem pengawasan berbasis human detection
menggunakan Telegram.
2. Mengimplementasikan rancangan sitem pengawasan berbasis human
detection menggunakan Telegram pada restricted area di Bandar Udara.
3. Dapat membantu dalam meningkatkan keamanan serta mampu dilakukannya
pengawasan jarak jauh secara real-time.

F. Manfaat
Adapun manfaat perancangan yang dimaksud dalam penelitian ini adalah:
1. Hasil dari penelitian diharapkan dapat membantu dalam meningkatkan
keamanan.
2. Perancangan alat system pengamanan menggunakan aplikasi Telegram dapat
memberikan kemudahan terhadap pengawasan jarak jauh.
3. Diharapkan hasil penelitian ini dapat digunakan sebagai bahan referensi
untuk penelitian selanjutnya

G. Sistematika Penulisan

Dalam menyelesaikan penulisan Tugas Akhir ini, penulis menggunakan


sistematika penulisan sebagai berikut:

BAB I : PENDAHULUAN
Merupakan bab pendahuluan yang berisi latar belakang masalah,
identfikasi masalah, pembatasan masalah, perumusan masalah,
metodologi penelitian, dan sistematika penulisan.

BAB II : TINJAUAN PUSTAKA


Pada bab ini berisi teori-teori yang digunakan dalam memahami
permasalahan yang dibahas
BAB III : METODOLOGI PENELITIAN

4
Pada bab ini akan menjabarkan arsitektur umum dari penelitian
yang dilakukan. Setiap tahap yang dilakukan pada proses deteksi
dan pengenalan objek manusia dan perancangan aplikasi yang
dibuat dalam penelitian ini akan dijabarkan.
BAB IV : PEMBAHASAN
Pada bab ini berisi pembahasan tentang implementasi dan
perancangan. Selain itu, hasil yang didapatkan dari tahap pengujian
terhadap implementasi yang dilakukan juga akan dijabarkan pada
bab ini

BAB V : KESIMPULAN DAN SARAN


Merupakan bab penutup yang terdiri dari kesimpulan dan saran-
saran untuk rancangan yang telah dibuat.

5
BAB II
TINJAUAN PUSTAKA

A. Tinjauan Teori

Dalam perancangan dan penulisan dari rancangan sistem pengawasan


berbasis human detection menggunakan Telegram, penulis mempunyai
landasan teori yang digunakan sebagai berikut:

1. Rasberry Pi
Raspberry Pi adalah komputer papan tunggal berukuran kartu kredit
atau SBC. Raspberry Pi dirancang dengan semua fitur komputer lengkap
menggunakan ARM SoC (System-on-a-Chip) yang dikemas dan
diintegrasikan ke dalam papan sirkuit tercetak atau PCB. Perangkat ini
menggunakan kartu SD untuk booting dan penyimpanan jangka panjang.
Raspberry Pi adalah open source (berbasis Linux) dan Raspberry Pi
dapat disesuaikan dengan kebutuhan. Sistem operasi utama, Raspberry
Pi, menggunakan Debian GNU/Linux dan bahasa pemrograman Python.
Salah satu pengembang OS pada Raspberry Pi telah meluncurkan sistem
operasi bernama Raspbian. Raspbian dikatakan mampu memaksimalkan
empat perangkat Raspberry Pi. Sistem operasinya berbasis Debian, salah
satu distro sistem operasi Linux.[7]

Gambar II. 1 Logo Raspberry

6
Raspberry Pi hadir dalam beberapa model dengan spesifikasi dan
keunggulannya masing-masing untuk setiap model. Dan inilah
perbandingannya model setiap generasi Raspberry Pi

Gambar II. 2 Spesifikasi Raspberry

1.1 Rasberry Pi 3
Raspberry Pi 3 adalah generasi ketiga dari keluarga Raspberry Pi.
Dengan RAM 1GB dan grafis Broadcom VideoCore IV, Raspberry Pi
3 berjalan pada 250MHz dengan kecepatan clock yang lebih tinggi dari
sebelumnya.

Tabel II. 1 Spesifikasi Raspberry

Spesifikasi Keterangan
Soc BCM2837
Procesor 1.2GHz 64-bit quad-core ARMv8
CPU
Memory /RAM 1 GB SDRAM 400MHz
GPU VideoCore IV 3D graphics core
Wireless 802.1 In Wireless LAN

Adapter/LAN

7
Bluetooth Bluetooth 4.1 (built in), Bluetooth
Low Energy(BLE)
GPIO 40 Pin
Port USB 4 USB Ports
Card Stroge Micro SD card slot (now push-pull
rather than push-

push)
Jaringan Ethernet Port
External Audio Full HDMI port, Camera interface
and (CSI), Display
Video interface (DSI), Combined 3.5mm
audio jack andcomposite video
Sistem Operassi Debian GNU/Linux,Fedora, Arch
Linux ARM, RISC

OS

1.2 Arsitektur Resberry Pi 3

Arsitektur Raspberry Pi didasarkan pada Broadcom BCM2837


SoC (System-on-a-Chip) dan dilengkapi prosesor ARMv8 quad-core
64-bit yang berjalan pada 1,2 GHz, GPU inti grafis VideoCore IV 3D,
dan 1 gigabyte RAM. Penyimpanan data tidak dirancang untuk
menggunakan hard drive atau solid state drive, tetapi dirancang untuk
menggunakan kartu SD (kartu memori SD) untuk boot dan
penyimpanan jangka panjang [8].

8
Gambar II. 3 Arsitektur Raspberry

Keterangan:
1. : Pin GPIO (40 Pin)
2. : On Board Bluetooth 4.1 and BCM 43143 Wi-fi
3. : DSI Display Port
4. : BCM2837 1.2GHz -64-bit quad-core ARMv8 CPU dan 1GB
RAM
5. : Micro USB Power Input Up to 2.5A
6. : HDMI Video Output
7. : CSI Camera Port
8. : 3.5 mm 4-pole Composite Video and Audio Output Jack
9. :Ethernet Port
10.: 4 Usb Port

9
1.3 Pin GPIO
Jumlah pin GPIO Raspberry 3 memiliki 40pin. Berikut Konfigurasi
Pin GPIO [9].

Gambar II. 4 Pin GPIO Header

Dari 40 pin, 26 pin GPIO dan yang lain adalah pin power atau ground.
a. 3.3V dan 5V Pin: Pin ini digunakan untuk memberi daya pada
komponen seperti sensor, LED, motor, dan relai. Pin ini terhubung ke pin
vcc komponen.
b. Pin GND atau ground. Pin ini terhubung ke pin ground atau negatif
(-) pada LED, sensor, motor, atau relay.
c. GPIO pin: Kontrol pin ini menggunakan bahasa pemrograman
Python. Dengan Python, dapat mengatur pin ini aktif, nonaktif, atau
berdasarkan kriteria spesifik dari program yang dibuat.
10
2. Modul pi camera
Pi camera adalah perangkat kamera yang terintegrasi dengan modul
Raspberry Pi. Modul kamera dirancang khusus add –on. Cara
mengaksesnya cukup mudah, Kamera terhubung ke Raspberry Pi melalui
konektor CSI Raspberry Pi.

Gambar II. 5 Pi camera

Kamera Raspberry Pi berukuran sekitar 25mm x 20mm x 9mm, dan


beratnya hanya 3g. Modul kamera memiliki resolusi 5 megapiksel, dan
memiliki lensa fokus yang tetap bawaan, menangkap gambar hingga 2592
x 1944 pixel gambar statis, kamera ini juga mendukung video 1080p30,
720p60, dan 640 x 480p60/90 [10].

3. Python
Python adalah bahasa pemrograman yang ditafsirkan untuk tujuan
umum dengan filosofi desain yang berpusat pada keterbacaan kode. Python
diklaim sebagai bahasa yang menggabungkan kapabilitas, dengan sintaks
kode yang sangat jelas, serta dilengkapi dengan fungsionalitas library
standar yang luas dan lengkap. Python adalah bahasa pemrograman yang
tujuan keseluruhannya adalah membuat kode sumber mudah dibaca. Python
juga memiliki pustaka lengkap yang memungkinkan pemrogram untuk
membuat aplikasi kompleks menggunakan kode sumber sederhana [11].

11
Gambar II. 6 Logo Python

Penggunaan bahasa pemrograman Python ini, diterapkan secara luas


untuk tujuan pengembangan perangkat lunak yang berbeda dan bekerja
pada platform sistem operasi yang berbeda. Sistem operasi yang dapat
menjalankan Python antara lain Windows, Linux, Mac OS X, Java Virtual
Machine, OS/2, Amiga, Palm, dan Symbian. Terdapat software bernama
IDLE Python GUI (Integrated Development Environment Python) untuk
membuat program scripting yang menggunakan bahasa pemrograman
Python mudah dipahami. Perangkat lunak IDLE memiliki dua jenis
jendela utama, jendela shell dan jendela editor, yang keduanya bekerja
pada waktu yang sama. Jendela editor digunakan untuk membuat
program, jendela shell digunakan sebagai jendela input, dan digunakan
untuk memeriksa pustaka yang diinstal dan dihapus [12].

4. Computer Vision

Computer vision adalah ilmu tentang mesin yang dapat melihat


sesuatu, bertindak sesuai dengan kondisi yang diberikan, dan
mendapatkan informasi dari apa yang dilihat oleh mesin untuk
menyelesaikan tugas tertentu. Computer vision pada dasarnya adalah cara
komputer untuk mendapatkan informasi dari suatu gambar atau objek
yang diamati [13].
Visi komputer adalah kombinasi dari berikut ini:

12
1) Pengolahan citra, area yang terkait dengan pemrosesan gambar dan
proses konversi gambar. Proses ini bertujuan untuk mendapatkan kualitas
gambar yang lebih baik.
2) Pengenalan pola, Bidang ini mengacu pada proses mengidentifikasi
objek dalam gambar atau menafsirkan gambar. Proses ini bertujuan untuk
mengekstrak informasi/pesan yang disampaikan melalui gambar/image.

5. Open Source Computer Vision (OpenCV)


OpenCV adalah perpustakaan gratis yang dikembangkan oleh
pengembang Intel Corporation. Pustaka ini terdiri dari fitur visi komputer
dan API (antarmuka pemrograman aplikasi) untuk pemrosesan gambar
tingkat tinggi dan tingkat rendah serta pengoptimalan aplikasi waktu
realtime. Visi komputer memungkinkan komputer untuk mengambil
tindakan dan mengenali objek. Implementasi computer vision meliputi
pengenalan wajah, pelacakan wajah/objek, dan pelacakan jalan serta lainnya
[14].

Gambar II. 7 Logo OpenCV

Fitur yang dimiliki OpenCV antara lain:


a. Operasi data gambar (alokasi memori, alokasi memori, salinan
gambar, pengaturan gambar, konversi)
b. Gambar / Video I / O (kamera yang didukung oleh perpustakaan
ini dapat digunakan)
c. Matrix dan operasi vektor, linier Ada juga rutinitas aljabar
(produk, pemecah, nilai eigen, SVD)

13
d. Pemrosesan gambar dasar (penyaringan, deteksi tepi, deteksi tepi,
pengambilan sampel dan interpolasi, konversi warna, manipulasi
morfologis, histogram, piramida gambar)
e. Analisis struktur
f. Kamera kalibrasi
g. Gerak deteksi
h. Deteksi objek
i. GUI Dasar (tampilan gambar / video, kontrol mouse / keyboard,
bilah gulir)
j. Keterangan (garis, kerucut, poligon, gambar teks)

6. TensorFlow
TensorFlow adalah framework yang digunakan untuk mengeksekusi
algoritma machine learning dan mengeksekusi perintah menggunakan data
yang dimiliki oleh suatu objek atau target, dimana dapat membedakan satu
objek dengan objek lainnya. Data yang digunakan untuk mengidentifikasi
objek berasal dari banyak gambar yang kompleks. TensorFlow sangat
fleksibel dan dapat digunakan untuk mewakili berbagai algoritme.
TensorFlow memiliki kemampuan untuk melatih model unit pemrosesan
grafis (GPU). Ini membutuhkan lebih sedikit waktu pelatihan daripada
menggunakan unit pemrosesan pusat (CPU) dan memungkinkan pemetaan
komputasi ke banyak computer [15].

Gambar II. 8 Logo TensorFlow

14
6.1 TensorFlow Lite
TensorFlow Lite TensorFlow Lite adalah ekstensi library machine
learning yang dirancang khusus untuk perangkat mobile. TensorFlow Lite
memungkinkan mesin untuk "belajar" pada perangkat dengan latensi
rendah dan ukuran biner kecil. Untuk menggunakan TensorFlow Lite di
perangkat mobile, pengguna harus menyediakan model dalam format
.tflite yang telah dilatih atau "dipelajari" dari contoh gambar yang
disediakan atau beberapa kasus [15].

6.2 TensorFlow Lite Object Detection


TensorFlow Lite Object Detection adalah bagian dari TensorFlow Lite
yang mendeteksi objek dalam gambar dan memberikan informasi tentang
objek beserta bidang yang menentukan lokasi objek dalam gambar. Model
penemuan objek dilatih untuk mendeteksi keberadaan dan lokasi beberapa
kelas objek. Ketika pengguna memberikan gambar ke model, model
menampilkan nama objek yang ditemukan, posisi kotak pembatas yang
berisi setiap objek yang ditemukan, dan skor yang menunjukkan
persentase atau tingkat akurasi bahwa penemuan itu benar [15].

7. Geany

Gambar II. 9 Logo Geany

Geany adalah editor teks yang menggunakan toolkit GTK + dengan


fitur integrated development environment. Tujuan Geany adalah untuk
menyediakan editor teks sederhana dan cepat yang sebagian besar
independen dari paket lain dan mendukung banyak jenis file. Berfokus pada

15
editor teks memungkinkan Geany menyederhanakan operasinya sebagai
IDE. Geany adalah aplikasi perangkat lunak yang menyediakan alat lengkap
untuk pengembangan perangkat lunak. Geany juga open source atau
perangkat lunak bebas dan dilisensikan di bawah GNU (General Public
License). Geany sangat ringan dan ideal untuk perangkat dengan spesifikasi
terbatas seperti Raspberry Pi dan Dragonboard [16].

8. Buzzer
Buzzer adalah komponen elektronik yang mengubah getaran listrik
menjadi getaran suara. Prinsip pengoperasian Buzzer hampir sama dengan
loudspeaker, jadi Buzzer juga terdiri dari kumparan yang dipasang pada
diafragma dan selanjutnya kumparan tersebut dikuatkan sehingga menjadi
elektromagnet. Buzzer umumnya digunakan untuk alarm karena mudah
digunakan, artinya Buzzer akan mengeluarkan bunyi ketika tegangan input
diberikan. Frekuensi suara yang dikeluarkan oleh Buzzer antara 1-5 kHz.

Gambar II. 10 Passive Buzzer


Buzzer biasanya digunakan sebagai indikator bahwa suatu proses telah
selesai atau telah terjadi kesalahan pada beberapa peralatan (alarm
peringatan bahaya). Ada dua jenis Buzzer di pasaran: Buzzer pasif dan
Buzzer aktif. Buzzer pasif adalah jenis Buzzer yang tidak memiliki suara
sendiri, sehingga tinggi rendahnya dapat diprogram, dan Buzzer aktif dapat
berdiri sendiri. Dengan kata lain, ketika ditenagai oleh sumber listrik, ia
sudah mengeluarkan suaranya sendiri [17].

9. Telegram
Telegram adalah aplikasi pesan instan berbasis cloud dengan
penekanan pada kecepatan dan keamanan. Telegram memiliki API

16
(Application Programming Interface) yang terbuka dan gratis, salah satunya
adalah Bot API. Ini adalah antarmuka berbasis HTTP (HyperText Transfer
Protocol) yang dibuat oleh pengembang untuk membuat Bot untuk
Telegram [18].

Gambar II. 11 Telegram

Ada dua jenis API yang disediakan oleh Telegram. API pertama adalah
klien Telegram, yang memungkinkan siapa saja untuk membuat,
memodifikasi, dan mendistribusikan versi aplikasi pesan instan mereka
sendiri. Untuk itu disediakan source code yang saat ini digunakan agar
developer tidak perlu menulis aplikasi Telegram dari awal.
Jenis lainnya adalah API Telegram Bot. Jenis API kedua ini
memungkinkan pengembang untuk membuat yang dapat merespons pesan
dari semua pengguna saat mengirim pesan perintah yang ditentukan oleh
Bot itu sendiri. Layanan ini hanya tersedia untuk pengguna Telegram, jadi
memerlukan aplikasi dan akun Telegram untuk berkomunikasi dengan Bot
Telegram. Telegram Bot adalah akun khusus yang tidak memerlukan nomor
telepon tambahan sebagai syarat khusus. Akun Bot bertindak sebagai
antarmuka ke kode yang berjalan di server pengembang [19].

10. Angry IP Scanner


IP Scan adalah aplikasi yang berjalan untuk memindai atau
melakukan pencarian IP pada jaringan internet. Tentunya jaringan ini bisa
berupa LAN (Local Area Network), MAN (Metropolitan Area Network),
WAN (Wide Area Network), jadi penggunaan IP scan ini untuk
mengetahui IP atau pengguna yang berada di dalam jaringan. Pemindaian
IP ini diperoleh dengan menggunakan perangkat lunak yang dapat

17
mendeteksi keberadaan IP aktif di jaringan, yaitu dengan menggunakan
perangkat lunak Angry IP Scanner [20].

Gambar II. 12 Angry Ip Scanner

Angry IP Scanner adalah alat yang digunakan untuk menemukan


alamat IP aktif atau aktif dalam rentang alamat IP yang diinginkan. Selain
itu, AngryIP Scanner juga dapat mendeteksi port terbuka atau tertutup
dari alamat IP aktif, sehingga Anda dapat menggunakan perangkat lunak
ini untuk menemukan target serangan. Pemindaian port adalah proses
menemukan port yang terbuka di jaringan komputer Anda. Pemindaian
membantu menemukan kerentanan system [21].

11. VNC Viewer


VNC Viewer adalah singkatan dari Virtual Network Computing.
Virtual Network Computing (VNC) adalah sistem klien berdasarkan
protokol antarmuka platform-independen sederhana. VNC Viewer adalah
perangkat lunak kendali jarak jauh yang dapat diakses oleh komputer
yang menggunakan perangkat lunak ini untuk bekerja di komputer lain
yang terhubung ke jaringan yang sama. VNC Viewer menggunakan
Remote Frame Buffer Protocol (RFB) yang digunakan oleh sistem
berbagi desktop grafis untuk kendali jarak jauh antar komputer. Penampil
VNC ini menggunakan jaringan untuk mentransfer keyboard dan mouse
dari satu komputer ke komputer lain, dan grafik layar yang diperbarui ke
arah lain. Perangkat lunak penampil VNC ini terdiri dari aplikasi server

18
dan klien untuk kendali jarak jauh layar komputer lain antar computer
[22].

Gambar II. 13 Logo VNC Viewer

Pada sistem server dan klien, server dapat mengkonfigurasi port dan
alamat IP untuk terhubung ke klien menggunakan Remote Desktop.
Dalam komputasi, Virtual Network Computing (VNC) adalah metode
berbagi grafis desktop yang menggunakan protokol Framebuffer Protocol
(RFB) untuk kendali jarak jauh antar komputer. Sistem VNC terdiri dari
VNC server yaitu program yang berjalan di komputer target, dan program
ini berjalan di komputer server sedangkan VNC client adalah Viewernya
[22].

B. Kerangka Berfikir

Dalam pembuatan tugas akhir ini langkah pertama yang dilakukan yakni
rumusan masalah, kemudian mengumpulkan data yang diperlukan. Setelah
mendapatkan data-data yang diperlukan dilanjutkan dengan membuat konsep
rancangan yang akan diimplementasikan dan melakukan uji coba hingga
rancangan tersebut sesuai dengan target, jika rancangan belum sesuai maka akan
dilakukan revisi rancangan dan melakukan pengujian ulang hingga sesuai
dengan yang diinginkan. Berikutnya adalah kerangka berpikir dalam bentuk
flowchart yang gunakan dalam penelitian:

19
Gambar II. 14 FlowChart Kerangka Berfikir

20
BAB III
METODOLOGI PENELITIAN

A. Metodologi Penelitian
Metode yang digunakan dalam penelitian ini adalah metode Research and
Development (R & D). Menurut Prof. Sugiyono, terdapat 4 level dalam R&D
dan penelitian akan menggunakan R&D Level 3. Penelitian dan Pengembangan
pada Level 3, adalah peneliti melakukan penelitian untuk mengembangkan
(merevisi) produk yang telah ada, membuat produk revisi dan menguji
keefektifan produk tersebut [23]. Berikut ini alur penelitian R&D Level 3.

Gambar III. 1 RnD Level 3


B. Konsep Rancangan

1. Kondisi yang ada saat Ini


Kondisi saat ini yang terdapat di Shelter Localizer Yogyakarta yaitu
pemantauan atau pengawasan CCTV belum dilengkapi dengan indikasi
alert ketika objek manusia terdeteksi. Ketika security lengah mengawasi
atau teralihkan saat memantau, maka proses pengawasan akan kurang
efektif dan tidak tahu kejadian yang terjadi secara realtime.

21
Gambar III. 2 Kondisi Saat Ini

2. Kondisi yang diharapkan


Dari uraian dan permasalahan yang telah dijelaskan diatas, maka
kondisi yang diingikan untuk menjawab permasalahan yaitu, membuat alert
ketika objek manusia terdeteksi.

Gambar III. 3 Kondisi yang diharapkan

Dengan adanya rancangan ini ketika manusia terdeteksi maka akan


memberikan informasi berupa dikirimkannya gambar objek ke security
melalui telegram. Dengan demikian proses pengawasan lebih efektif serta
dapat memberikan kemudahan terhadap pengawasan secara realtime.

22
3. Flowchart rancangan

Flowchart gambar menjelaskan tentang cara kerja rancangan yang akan


dibuat penulis dengan menggunakan Telegram sebagai media
pengawasan secara realtime. Apabila objek terindikasi berbahaya security
dapat menuju lokasi secara langsung serta melakukan perintah menghidupkan
atau mematikan alarm Buzzer yang telah terprogram melalui Botfather
Telegram.

Gambar III. 4 FlowChart Rancangan

23
C. Waktu Dan Lokasi Perancangan

Perancangan dan penulisan ini berlokasi di Politeknik Penerbangan


Indonesia Curug yang nantinya akan diaplikasikan pada bandara-bandara
unit.

Tabel III. 1 Agenda Penulisan dan Perancangan

Bulan
N
Tahapan Kegiatan 1 1 1
o
0 1 2 1 2 3 4 5 6 7
1 Penentuan Tema Judul
2 Pengumpulan Data
3 Penyusun Proposal Tugas Akhir
4 Seminar Proposal Tugas Akhir
5 Perbaikan Proposal
6 Konsultasi dengan Pembimbing
7 Koleksi Data
Pencarian Komponen yang
8 dibutuhkan
9 Pembuatan Rancangan
10 Pengujian Rancangan
11 Penulisan BAB I
13 Bimbingan BAB I
14 Penulisan BAB II
15 Bimbingan BAB II
16 Penulisan BAB III
17 Bimbingan BAB III
18 Penulisan BAB IV dan V
19 Bimbingan BAB IV dan V
20 Seminar Tugas Akhir
21 Perbaikan Tugas Akhir

24
D. Penentuan Alat Dan Bahan

Dalam perancangan ini membutuhkan beberapa alat serta bahan guna


membuat rancangan. Berikut dibawah ini merupakan tabel alat dan bahan.
Tabel III. 2 Alat dan Bahan

No. Alat dan Bahan Tipe Keterangan


1. Raspberry Pi 3b Sebagai mikrokomputer untuk
menjalankan program.
2. Kamera Pi Sebagai kamera penangkap objek.
Camera
3. Buzzer Low level Sebagai output alarm berupa (voice)
Passive suara.
4. SD Card Micro SD Sebagai tempat penyimpanan
installer bios Raspberry Pi.
5. Card Reader USB 3.0 Alat untuk membaca kartu memori
yang biasanya dihubungkan ke
komputer dengan kabel USB.
6. Kabel Jumper Female to Sebagai perantara penghubung
Female Raspberry dengan Buzzer.
7. Adaptor 5V untuk memberikan supply pada
rangkaian Raspberry.

8. Laptop Win. 11 Sebagai device perancangan.


9. Smartphone Minimal Sebagai media pengaplikasian
Andoid 7 Telegram.
10. Telegram Versi 8.8.5 Sebagai media meneruskan
informasi kesalahan peralatan ke
seluruh teknisi.

25
E. Kriteria Perancangan

Kriteria sangatlah dibutuhkan karena akan menentukan kebutuhan yang


akan dipakai untuk merancang suatu alat. Tahap permulaan dalam merancang
yaitu menentukan kebutuhan secara umum dan diharapkan dapat mencapai
tujuan perancangan secara umum.
1. Mampu mendeteksi manusia.
2. Dapat mengirimkan hasil gambar ke Telegram
3. Dapat menghubungkan Buzzer dengan Telegram
4. Dapat melakukan perintah di Bot Telegram.

26
BAB IV
PEMBAHASAN

Perencanaan merupakan proses yang dilakukan terhadap alat, mulai dari


rancangan kerja rangkaian hingga hasil jadi yang akan difungsikan.
Perencanaan dan pembuatan alat merupakan bagian terpenting dari seluruh
pembuatan Tugas Akhir ini. Pada prinsipnya perancangan dan sistematika
yang baik akan memberikan kemudahan-kemudahan dalam proses pembuatan
alat.
Berdasarkan dengan landasan masalah serta teori dasar yang telah
dijelaskan maka pada bab IV ini akan dijadikan acuan dalam penjelasan cara
kerja rancangan sistem pengawasan berbasis Human detection menggunakan
Telegram.

A. Gambaran Umum Perancangan

Gambar IV. 1 Gambaran Umum Perancangan

27
Dalam rancangan ini, pendeteksian objek tidak menggunakan sensor
melainkan langsung dari kamera. Kamera ini akan diprogramkan untuk
mendeteksi objek yang ada yakni manusia. Ketika manusia terdeteksi,
mikrokotroler Raspberry Pi 3b akan terintegrasi dengan mengirim data objek
ke smartphone. Hasil data objek tersebut akan diterima security melalui
Telegram. Apabila objek terindikasi berbahaya security dapat menuju lokasi
secara langsung serta melakukan perintah menghidupkan atau mematikan
alarm Buzzer yang telah terprogram melalui Botfather Telegram.

B. Tahapan Perancangan

Tahapan perancangan adalah merancang sistem dengan terperinci.


Berikut tahapan-tahapan perancangan sistem:

1. Menyiapkan perangkat Keras

Perangkat keras atau Hardware yang digunakan adalah


Raspberry Pi 3b, Pi camera, dan Buzzer sebagai berikut ini:

Gambar IV. 2 Wiring Rancangan Keseluruhan

a. Raspberry Pi 3b

Sebagai mikrokomputer menjalankan program dan penghubung


dengan Internet karena mempunyai fasilitas koneksi wifi.

28
Gambar IV. 3 Raspberry Pi 3b

Pada Raspberry dimanfaatkan Pin GPIO serta konektor CSI


dimana akan menguhubungkan dengan kamera dan Buzzer sehingga
komunikasi dapat terintegrasi untuk menjalankan sistem.

b. Pi camera

Pi camera berukuran sekitar 25mm x 20mm x 9mm, dan beratnya


hanya 3g. Modul kamera memiliki resolusi 5 megapiksel.

Gambar IV. 4 Pi Camera


Kamera ini terintegrasi dengan modul Raspberry Pi melalui
konektor CSI Raspberry Pi. Konektor CSI terdiri dari dua antarmuka
yang kecil. Antarmuka pertama adalah untuk transfer data dan sinyal
clock dari kamera ke prosesor dalam satu arah saja. Antarmuka kedua
terdiri dari SCL/ SDA. Yang merupakan control dua arah.

29
Gambar IV. 5 Interkoneksi Kabel CSI

Pada gambar berikut ini adalah hasil installasi Pi camera pada


Raspberry Pi.

Gambar IV. 6 Interkoneksi Kamera dengan CSI Raspberry

30
c. Buzzer

Buzzer sebagai output alarm berupa suara. Terdapat tiga buah pin
yang terdapat pada Buzzer, adapun pin tersebut adalah pin VCC, pin
OUT dan pin GND.

Gambar IV. 7 Interkoneksi Buzzer dengan Raspberry

Masing-masing dari pin tersebut memiliki fungsi yang berbeda. Pin

VCC dihubungkan dengan pin 5V pada GPIO untuk mendapatkan

suplai daya, pin GND adalah pin yang digunakan untuk ground.

Berbeda dengan pin OUT yang berfungsi sebagai output dari Buzzer,

hasil output berupa binary logic (1 atau 0) yang dihubungkan dengan

pin GPIO untuk selanjutnya di proses.

Untuk lebih detailnya berikut ini akan ditampilkan tiga buah pin

pada Buzzer yang ada:

31
Gambar IV. 8 Pin Pada Buzzer
Agar Buzzer dengan Raspberry Pi dapat saling terhubung

memerlukan sebuah kabel perantara, kabel yang digunakan adalah

kabel jumper female-to-female. Dengan menggunakan kabel jumper

tersebut pin-pin Buzzer dapat dihubungkan dengan GPIO pada

Raspberry Pi. Berikut ini adalah contoh kabel jumper yang digunakan:

Gambar IV. 9 Kabel Jumper Female to Female

Dengan memanfaatkan kabel jumper tersebut maka Buzzer dengan

Raspberry Pi dapat saling terhubung. Untuk konfigurasi cabeling pada

Raspberry Pi perlu untuk memperhatikan header dari GPIO Raspberry

Pi itu sendiri. GPIO memiliki komponen pin 3.3V dan 5V, pin ground

dan pin GPIO. Berikut ini adalah header GPIO pada Raspberry Pi.

32
Berikut dibawah ini adalah hasil cabeling pada GPIO Raspberry Pi dan

Buzzer dengan menggunakan kabel jumper female-to-female.

Tabel IV. 1 Tabel Konfigurasi Buzzer dengan GPIO Raspberry

Konfigurasi Buzzer dengan GPIO

Raspberry Pi

PIR Sensor GPIO Raspberry Pi

DC Voltage (VCC) Pin 5V

Output Pin GP4

Ground (GND) Pin Ground

2. Menyiapkan perangkat lunak


Pada proses ini dilakukan instalasi beberapa aplikasi yang akan
digunakan seperti Angry Ip Scanner, VNC Viewer dan Telegram. Adapun
proses maupun tahapan proses instalasi sebagai berikut:

a. Instalasi Angry Ip Scanner


1) Download terlebih dahulu aplikasi pada link berikut:
https://angryip.org/ . Setelah selesai terdownload, buka lokasi file
hasil download tesebut jalankan kemudian klik tombol Next >

33
Gambar IV. 10 Download Angry Ip Scanner

2) Atur lokasi installasi, Lalu klik install hingga finish atau tahapan
installasi telah selesai.

Gambar IV. 11 Install Angry Ip Scanner

3) Setelah terbuka Angry Ip Scannernya, nanti akan muncul notifikasi


dan klik next sampai habis. Kemudian close.

34
Gambar IV. 12 Tampilan Aplikasi Angry Ip Scanner

b. Instalasi VNC Viewer


1) Pertama download terlebih dahulu VNC, di link berikut
https://www.realvnc.com/en/connect/download/viewer/
2) Jika sudah terdownload install aplikasi. Pilih Bahasa yang akan
digunakan

Gambar IV. 13 Pilih Bahasa

3) Lalu klik OK dan akan masuk ke Welcome Page VNC Viewer Setup,
klik next, seperti gambar dibawah ini:

Gambar IV. 14 Welcome Page VNC Viewer

35
4) Kemudian akan dilanjutkan ke halaman End-User License Agreement,
centang I Accept untuk melanjutkan instalasi kemudian next.

Gambar IV. 15 User License Agreement VNC Viewer

5) Setelah itu klik instal dan finish. Instalasi VNC telah selesai

Gambar IV. 16 Install VNC Viewer

c. Telegram
1.) Langkah pertama akan dilakukan adalah instalasi. Untuk mengunduh
Telegram buka Google Play Store pada android atau Appstore pada
IOS.

36
Gambar IV. 17 Google Play Store

2.) Ketik “Telegram” di Kolom Pencarian lalu tekan tombol Install.

Gambar IV. 18 Pencarian Telegram di Playstore

3.) Setelah terinstal, daftar akun Telegram dengan mengisi nomor serta asal
negara.

Gambar IV. 19 Pendaftaran Akun Telegram

37
4.) Kode OTP akan diterima melalui sms, lalu input kode OTP tersebut.

Gambar IV. 20 Input Kode OTP

5.) Setelah memasukan biodata diri, Telegram selesai diinstalasi dan siap
digunakan

Gambar IV. 21 Tampilan Profil Telegram

6) Kemudian Langkah selanjutnya adalah membuat Bot pada Telegram.


Dalam kolom pencarian Ketik Botfather klik akun yang bercentak
biru

38
Gambar IV. 22 Pencarian Akun BotFather

7) Setelah itu ketik /start pada kolom percakapan untuk memulai


pembuatan Bot

Gambar IV. 23 Memulai Bot

8) Kemudian ketik /newbot dan input nama yang akan dibuat.

Gambar IV. 24 Membuat Bot Baru

39
9) Setelah itu akan diperoleh alamat Bot untuk pengguna dan token API
yang akan didaftarkan pada Raspberry.

Gambar IV. 25 Alamat dan Token API Bot

d. Raspberry Pi

Pemrograman pada Raspberry Pi dibangun dengan menggunakan


bahasa pemrograman Python yang dilakukan meliputi pengolahan citra
dari kamera dengan mengimplementasikan metode Tenserflow, proses
konfigurasi dengan Buzzer dan Kamera, serta pengiriman notifikasi
menuju handphone melalui Telegram.

1) Implementasi Metode TensorFlow


Implementasi program disini memanfaatkan beberapa fungsi
dari library OpenCV, yaitu TensorFlow Lite Object Detection
yang mendeteksi objek dalam gambar dan memberikan informasi
tentang objek beserta bidang yang menentukan lokasi objek
dalam gambar. Berikut adalah proses progmamnya:

40
Gambar IV. 26 Skript Program TensorFlow

2) Implementasi konfigurasi dengan Pi Camera


Implementasi program disini menghubungkan pi camera
dengan Raspberry Pi. Berikut adalah proses progmamnya:

Gambar IV. 27 Skript Program Pi Camera

3) Implementasi konfigurasi dengan Telegram


Proses disini mempunyai bagian penting yaitu pendaftaran
nomor token API yang telah dibuat melalui Bot Telegram.
Berikut adalah proses progmamnya:

Gambar IV. 28 Skript Program Bot Telegram

4) Implementasi pemrograman konfigurasi dengan Buzzer


Implementasi pemrograman disini memanfaakan fungsi
bawaan dari GPIO Raspberrry dikombinasikan dengan perintah
kondisi alarm pada Telegram. Berikut adalah proses
progmamnya:
41
Gambar IV. 29 Skript Program Buzzer

C. Uji Coba Rancangan

Sebelum melakukan pengujian terhadap keseluruhan sistem, akan


dijelaskan mengenai pengoperasian alat terlebih dahulu. Cara pengoperasian alat
adalah sebagai berikut:
a. Pertama menghubungkan rancangan alat dengan sumber tegangan AC 220
Volt menggunakan adaptor yang akan mengubah menjadi tegangan DC
sebesar 5 Volt.
b. Melakukan pencarian ip Raspberry dengan menggunakan Angry Ip
Scanner. Dilakukan dengan cara:
[1] Klik “start” untuk proses scanning ip dan tunggu hingga selesai.

Gambar IV. 30 Start Proses Scanning

[2] Setelah scanning selesai akan muncul hasil host yang aktif

42
Gambar IV. 31 Scanning Conpleted

[3] Kemudian pilih dan copy ip pada hostname raspberrypi.local

Gambar IV. 32 Ip Raspberry

c. Setelah mendapatkan alamat ip, Langkah selanjutnya adalah


menghubungkan VNC viewer agar dapat menampilkan tampilan Raspberry
dengan langkah sebagai berikut:

[1] Buat new connection pada opsi file di VNC

43
Gambar IV. 33 New Connection VNC Viewer

[2] Kemudian masukan alamat ip pada Raspberry dan buat nama projeknya

Gambar IV. 34 Label Projek

[3] Setelah itu hubungkan koneksi yang telah dibuat

44
Gambar IV. 35 Tampilan Beranda VNC Viewer

[4] Masukan username “pi” dengan password “raspberry”

Gambar IV. 36 Authenticate to VNC Server

[5] Apabila koneksi berhasil akan muncul tampilan Raspberry seperti


gambar dibawah ini.

45
Gambar IV. 37 Tampilan Dekstop Raspberry

d. Kemudian menjalankan program pengidentifikasi objek yang telah dibuat


dengan cara sebagai berikut:

1) Buka terminal pada pojok kanan taskbar.

Gambar IV. 38 Menu Terminal


2) Setelah terminal terbuka, Input perintah “cd code”

46
Gambar IV. 39 Penginputan Perintah cd code

3) Kemudian input perintah “python3 main.py” untuk menjalankan


program

Gambar IV. 40 Penginputan Perintah “python3 main.py”

4) Selanjutnya program akan berjalan dan mengidentifikasi objek

47
Gambar IV. 41 Rancangan Program Berjalan

e. Setelah program berjalan hasil tangkapan objek akan dikirim ke Bot


Telegram yang telah di buat serta dapat dilakukan analisa.

Gambar IV. 42 Tampilan Hasil Gambar Objek di Telegram

f. Ketika mendapati objek yang tertangkap berbahaya security dapat


melakukan perintah menghidupkan alarm Buzzer pada Bot Telegram.
Perintah “on” atau “off” untuk menghidupkan dan mematikan alarm.

48
Gambar IV. 43 Melakukan Perintah Menghidupkan Buzzer

g. Gambar akan otomatis dikirim ke Bot Telegram apabila objek terdeteksi dan
security dapat menghidupkan alarm bila diperlukan.

Setelah proses pengoperasian alat dapat berjalan dengan baik, adapun


beberapa uji coba rancangan yang sudah penulis tentukan dalam program
rancangan sesuai dengan kriteria perancangan yakni sebagai berikut:

a. Uji coba terhadap objek manusia

Pada uji coba ini dilakukan percobaan dengan objek yang diinginkan
yakni manusia. Ketika kamera menangkap objek manusia, maka kamera
akan meng-capture tangkapan objek.

49
Gambar IV. 44 Objek Manusia Terdeteksi

Kemudian Capture tangkapan objek kan dikirimkan ke security


melalui Telegram.

Gambar IV. 45 Hasil Tangkapan Objek di Telegram

Hasil dari uji coba menunjukkan bahwa objek dapat teridentifikasi


serta mengirimkan hasil tangkapan objek ke Telegram.

b. Uji coba terhadap objek selain manusia

50
Selanjutnya uji coba ini dilakukan percobaan dengan objek selain
manusia. Ketika kamera menangkap objek bukan manusia maka kamera
tidak akan akan meng-capture tangkapan objek dan proses pengiriman
gambar tidak terjadi. Uji coba akan dilakukan terhadap hewan dan benda.

1) Untuk objek hewan menggunakan objek hewan kucing.

Gambar IV. 46 Objek Hewan Kucing

2) Kemudian untuk objek benda dilakukan dengan objek benda seperti


buku dan botol minum.

Gambar IV. 48 Objek Gambar IV. 47 Objek


Benda Buku Benda Botol

Hasil dari uji coba menunjukkan bahwa objek tidak dapat


teridentifikasi serta tidak mengirimkan hasil tangkapan objek ke
Telegram. Dengan demikian sesuai dengan kriteria perancangan.

51
c. Uji coba alarm Buzzer
Yang terakhir dilakukan uji coba melakukan perintah menghidupkan
serta mematikan alarm Buzzer. Ketika kamera menangkap objek manusia,
kamera akan meng-capture tangkapan objek dan akan dikirimkan ke
security melalui Telegram. Apabila objek ter-indikasi berbahaya maka
security dapat menghidupkan serta mematikan alarm bila diperlukan.

Gambar IV. 49 Perintah Pada Bot Telegram

Ketika dilakukannya perintah dalam Bot Telegram maka akan


terintegrasi langsung dalam Buzzer.

52
Gambar IV. 50 Buzzer on dan off

Hasil dari uji coba menunjukkan bahwa ketika dilakukannya perintan


“on” maka alarm Buzzer akan berbunyi. Begitupun sebaliknya ketika
dilakukannya perintah “off” maka alarm Buzzer akan berhenti berbunyi.

D. Interpretasi Hasil Uji Coba Rancangan

Berdasarkan hasil dari tahap uji coba rancangan, maka dapat di


interpretasi keberhasilan. Terdapat poin-poin yang menentukan rancangan
yaitu:
Tabel IV. 2 Interprestasi Hasil Uji Coba

Uji Coba Hasil Keterangan

Pengorprasian Alat Berhasil Rancangan dapat


dioprasikan dengan baik.

Objek deteksi Berhasil Kamera mampu


manusia mengidentifikasikan
objek manusia serta
mengirimkan hasil ke
Telegram

53
Objek deteksi bukan Berhasil Sample objek yang
manusia digunakan adalah buku
serta kucing. Kamera
tidak mengidentifikasi
objek oleh karena itu
proses pengiriman
gambar atau alert
kepada security tidak
terjadi. Maka rancangan
sesuai dengan kriteria.

Menghidupkan dan Berhasil Dapat dilakukannya


mematikan alarm perintah melalui Telegram
Buzzer dengan baik

54
BAB V
KESIMPULAN DAN SARAN

A. Kesimpulan

Berdasarkan hasil rancangan di atas, maka dapat diambil kesimpulan sebagai


berikut:
1. Rancangan sistem pengawasan berbasis Human detection menggunakan
Telegram dapat memberikan alert ketika objek manusia tertangkap kamera.
2. Rancangan sistem pengawasan ini dapat di monitor menggunakan
Handphone security atau Avsec melalui aplikasi telegran.
3. Pekerjaan security atau Avsec dalam memonitor keamanan pada restricted
area menjadi lebih efektif.

B. Saran

Menyadari bahwa rancangan ini masih belum sempura, penulis berharap ada
pengembangan selanjutnya mengenai objek-objek yang dapat dideteksi sehingga
dapat menyesuaikan dengan perkembangan teknologi.

55
DAFTAR PUSTAKA

[1] Presiden Republik Indonesia, "Undang-Undang Republik Indonesia


Nomor 1 Tahun 2009 Tentang Penerbangan," 2009.
[2] Menteri Perhubungan Republik Indonesia "Peraturan Menteri
Perhubungan Nomor: PM 33 Tahun 2015 tentang Pengendalian Jalan
Masuk (Acces Control) Ke Daerah Keamanan Terbatas di Bandar," 2015.
[3] PERMENHUB 62, “Menteri perhubungan republik indonesia,” Peratur.
Menteri Perhub. Republik Indones. Nomor Pm 115 Tahun 2018, 2019.
[4] D. E. Kurniawan and S. Fani, “Perancangan Sistem Kamera Pengawas
Berbasis Perangkat Bergerak Menggunakan Raspberry Pi,” J. Ilm. Teknol.
Infomasi Terap., vol. 3, no. 2, 2017, doi:
10.33197/jitter.vol3.iss2.2017.130.
[5] B. A. Pramono, A. Hendrawan, and A. F. Daru, “RASPBERRY PI
DENGAN MODUL KAMERA DAN MOTION SENSOR SEBAGAI
SOLUSI CCTV LAB FTIK UNIV . SEMARANG Fakultas Teknologi
Informasi dan Komunikasi , Universitas Semarang,” Pengemb. Rekayasa
dan Teknol., vol. 14, no. 1, pp. 5–9, 2018.
[6] R. Rifandi, “Rancang Bangun Kamera Pengawas Menggunakan
Raspberry Dengan Aplikasi Telegram Berbasis Internet of Things,” J.
PROSISKO, vol. 8, no. 1, 2021, [Online]. Available: www.amazone.com
[7] E. Fernando, “Arsitektur teknologi webserver berbasis mini pc dengan
raspberry pi,” Akademika, vol. 9, no. August, pp. 281–285, 2016.
[8] S. R. Prihantono, “Rancang Bangun Sistem Keamanan dan
PengenalanObjek dalam Ruangan Sebagai Pengganti CCTV
denganMenggunakan Raspberry Pi,” J. Tek. Pomits, vol. Vol. 2, no. pp.
2301-9271, 2013.
[9] N. A. Syahid, M. Rivai, and S. Suwito, Sistem Keamanan pada
Lingkungan Pondok Pesantren Menggunakan Raspberry Pi, vol. 5, no. 2.
2016. doi: 10.12962/j23373539.v5i2.17063.
[10] H. Irmayanti, S. I. Lestariningati, U. K. Indonesia, U. K. Indonesia, U. K.
Indonesia, and B. Subtraction, “Deteksi gerak camera pi dengan metode
background subtraction,” pp. 1–7.
[11] A. N. Syahrudin and T. Kurniawan, “Input Dan Output Pada Bahasa
Pemrograman Python,” J. Dasar Pemrograman Python STMIK, no.
January, pp. 1–7, 2018.
[12] S. Aisa, “Implementation Raspberry Pi Using Private Cloud for Accessing
Personal Data,” J. Penelit. Pos dan Inform., vol. 6, no. 2, p. 137, 2016, doi:
10.17933/jppi.2016.060202.
[13] S. A. Amrullah, “Perancangan Sistem Inspeksi Visual Berbasis Computer
Vision Untuk Penggolongan Buah Apel,” pp. 1–50, 2017.
[14] A. Hanuebi et al., “Aplikasi Pengenalan Wajah Untuk Membuka Pintu
Berbasis Raspberry Pi,” Apl. Pengenalan Wajah Untuk Membuka Pintu
Berbas. Raspberry Pi, vol. 14, no. 2, pp. 243–252, 2019.
[15] I. W. Prastika, E. Zuliarso, J. T. Lomba, J. No, and S. 50241, “Deteksi
Penyakit Kulit Wajah Menggunakan Tensorflow Dengan Metode

56
Convolutional Neural Network,” J. Manaj. Inform. Sist. Informasi), vol.
4, no. 2, pp. 84–91, 2021, [Online]. Available: http://e-
journal.stmiklombok.ac.id/index.php/misi
[16] T. Elektro, U. Sam, R. Manado, and J. K. B. Manado, “Aplikasi
Pengenalan Wajah Untuk Sistem Absensi Kelas Berbasis Raspberry Pi,”
J. Tek. Inform., vol. 15, no. 3, pp. 179–188, 2020, [Online]. Available:
https://ejournal.unsrat.ac.id/index.php/informatika/article/view/31290/29
990
[17] D. Rofifah, “Motor Listrik DC,” Pap. Knowledge. Towar. a Media Hist.
Doc., pp. 12–26, 2020.
[18] N. K. Yap HK, Liu ID, “Perancangan Tempat Sampah Berbasis Internet
Of Things Menggunakan Aplikasi Telegram,” A Psicanal. dos contos
fadas. Tradução Arlene Caetano, p. 466, 2019.
[19] A. Cokrojoyo, J. Andjarwirawan, and A. Noertjahyana, “Pembuatan Bot
Telegram Untuk Mengambil Informasi dan Jadwal Film Menggunakan
PHP,” J. Infra, vol. 5, no. 1, pp. 224–227, Program Studi Teknik
Informatika Fakultas, 2017, [Online]. Available:
http://studentjournal.petra.ac.id/index.php/teknik-
informatika/article/view/5163
[20] D. Harjowinoto, A. Noertjahyana, and J. Andjarwirawan, “Vulnerability
Testing pada Sistem Administrasi” J. Infra, vol. 4, no. 1, p. pp.227-p.232,
2016.
[21] W. Aris Syah Putra, “Analisis dan Pengukuran Tingkat Keamanan
Layanan Hotspot ” pp. 9–25, 2019.
[22] Y. Ariyanto, “Implementasi Remote Desktop Komputer Menggunakan
Virtual Network Computing ( Vnc ) Server Dan Vnc Viewer Berbasis
Android,” 2017.
[23] M. Peneliian and D. A. N. Pengembangan, “Metode peneliian dan
pengembangan research & development”.

57
LAMPIRAN

Lampiran A. Lembar Persetujuan Mengikuti Tugas Akhir

58
Lampiran B. Lembar Konsultasi Bimbingan Tugas Akhir

59
Lampiran C. Skript Konfigurasi TensorFlow

# Import TensorFlow libraries


# If tflite_runtime is installed, import interpreter from tflite_runtime, else import from regular
tensorflow
# If using Coral Edge TPU, import the load_delegate library
pkg = importlib.util.find_spec('tflite_runtime')
if pkg:
from tflite_runtime.interpreter import Interpreter
if use_TPU:
from tflite_runtime.interpreter import load_delegate
else:
from tensorflow.lite.python.interpreter import Interpreter
if use_TPU:
from tensorflow.lite.python.interpreter import load_delegate

# If using Edge TPU, assign filename for Edge TPU model


if use_TPU:
# If user has specified the name of the .tflite file, use that name, otherwise use default
'edgetpu.tflite'
if (GRAPH_NAME == 'detect.tflite'):
GRAPH_NAME = 'edgetpu.tflite'

# Get path to current working directory


CWD_PATH = os.getcwd()

# Path to .tflite file, which contains the model that is used for object detection
PATH_TO_CKPT = os.path.join(CWD_PATH,MODEL_NAME,GRAPH_NAME)

# Path to label map file


PATH_TO_LABELS = os.path.join(CWD_PATH,MODEL_NAME,LABELMAP_NAME)

# Load the label map


with open(PATH_TO_LABELS, 'r') as f:
labels = [line.strip() for line in f.readlines()]

# Have to do a weird fix for label map if using the COCO "starter model" from
# https://www.tensorflow.org/lite/models/object_detection/overview
# First label is '???', which has to be removed.
if labels[0] == '???':
del(labels[0])

# Load the Tensorflow Lite model.


# If using Edge TPU, use special load_delegate argument
if use_TPU:
interpreter = Interpreter(model_path=PATH_TO_CKPT,
experimental_delegates=[load_delegate('libedgetpu.so.1.0')])
print(PATH_TO_CKPT)
else:
interpreter = Interpreter(model_path=PATH_TO_CKPT)

interpreter.allocate_tensors()

# Get model details


input_details = interpreter.get_input_details()
output_details = interpreter.get_output_details()
height = input_details[0]['shape'][1]

60
width = input_details[0]['shape'][2]

floating_model = (input_details[0]['dtype'] == np.float32)

input_mean = 127.5
input_std = 127.5

# Check output layer name to determine if this model was created with TF2 or TF1,
# because outputs are ordered differently for TF2 and TF1 models
outname = output_details[0]['name']

if ('StatefulPartitionedCall' in outname): # This is a TF2 model


boxes_idx, classes_idx, scores_idx = 1, 3, 0
else: # This is a TF1 model
boxes_idx, classes_idx, scores_idx = 0, 1, 2

61
Lampiran D. Skript Konfigurasi Kamera

class VideoStream:
"""Camera object that controls video streaming from the Picamera"""
def __init__(self,resolution=(640,480),framerate=30):
# Initialize the PiCamera and the camera image stream
self.stream = cv2.VideoCapture(0)
ret = self.stream.set(cv2.CAP_PROP_FOURCC, cv2.VideoWriter_fourcc(*'MJPG'))
ret = self.stream.set(3,resolution[0])
ret = self.stream.set(4,resolution[1])

# Read first frame from the stream


(self.grabbed, self.frame) = self.stream.read()

# Variable to control when the camera is stopped


self.stopped = False

def start(self):
# Start the thread that reads frames from the video stream
Thread(target=self.update,args=()).start()
return self

def update(self):
# Keep looping indefinitely until the thread is stopped
while True:
# If the camera is stopped, stop the thread
if self.stopped:
# Close camera resources
self.stream.release()
return

# Otherwise, grab the next frame from the stream


(self.grabbed, self.frame) = self.stream.read()

def read(self):
# Return the most recent frame
return self.frame

def stop(self):
# Indicate that the camera and thread should be stopped
self.stopped = True

# Define and parse input arguments


parser = argparse.ArgumentParser()
parser.add_argument('--modeldir', help='Folder the .tflite file is located in',
default='sample')
parser.add_argument('--graph', help='Name of the .tflite file, if different than detect.tflite',
default='detect.tflite')
parser.add_argument('--labels', help='Name of the labelmap file, if different than labelmap.txt',
default='labelmap.txt')
parser.add_argument('--threshold', help='Minimum confidence threshold for displaying detected
objects',
default=0.5)
parser.add_argument('--resolution', help='Desired webcam resolution in WxH. If the webcam does
not support the resolution entered, errors may occur.',
default='1280x720')
parser.add_argument('--edgetpu', help='Use Coral Edge TPU Accelerator to speed up detection',

62
action='store_true')

args = parser.parse_args()

MODEL_NAME = args.modeldir
GRAPH_NAME = args.graph
LABELMAP_NAME = args.labels
min_conf_threshold = float(args.threshold)
resW, resH = args.resolution.split('x')
imW, imH = int(resW), int(resH)
use_TPU = args.edgetpu

63
Lampiran E. Skript Konfigurasi Bot Telegram

#user1 = "1238554346"
user1 = "5093089735"

def handle(msg):
chat_id = msg['chat']['id']
command = msg['text']
print(chat_id)
print('Perintah yang diterima: %s' % command)
if command == '/start':
bot.sendMessage(chat_id, "Telegram bot aktif")
elif command == 'on':
buzzer.start(50)
bot.sendMessage(chat_id, "Buzzer On")
elif command =='off':
buzzer.stop()
bot.sendMessage(chat_id, "Buzzer Off")
else:
bot.sendMessage(chat_id, "Perintah tidak ditetapkan")

bot = telepot.Bot('5438731832:AAGnJAbxG2Kaemmspqf2kfxVUV6NT1fouH0')
bot.message_loop(handle)
print('Menunggu perintah ...')

while True:

64
Lampiran F. Skript Konfigurasi Buzzer

GPIO.setwarnings(False)
flag = 0

GPIO.setmode(GPIO.BCM)
GPIO.setup(4, GPIO.OUT)
buzzer = GPIO.PWM(4, 1047)

65
Lampiran G. Skript Program Rancangan

import telepot
import RPi.GPIO as GPIO
import os
import argparse
import cv2
import numpy as np
import sys
import time
from threading import Thread
import importlib.util
from datetime import datetime
import pytz

class VideoStream:
"""Camera object that controls video streaming from the Picamera"""
def __init__(self,resolution=(640,480),framerate=30):
# Initialize the PiCamera and the camera image stream
self.stream = cv2.VideoCapture(0)
ret = self.stream.set(cv2.CAP_PROP_FOURCC, cv2.VideoWriter_fourcc(*'MJPG'))
ret = self.stream.set(3,resolution[0])
ret = self.stream.set(4,resolution[1])

# Read first frame from the stream


(self.grabbed, self.frame) = self.stream.read()

# Variable to control when the camera is stopped


self.stopped = False

def start(self):
# Start the thread that reads frames from the video stream
Thread(target=self.update,args=()).start()
return self

def update(self):
# Keep looping indefinitely until the thread is stopped
while True:
# If the camera is stopped, stop the thread
if self.stopped:
# Close camera resources
self.stream.release()
return

# Otherwise, grab the next frame from the stream


(self.grabbed, self.frame) = self.stream.read()

66
def read(self):
# Return the most recent frame
return self.frame

def stop(self):
# Indicate that the camera and thread should be stopped
self.stopped = True

# Define and parse input arguments


parser = argparse.ArgumentParser()
parser.add_argument('--modeldir', help='Folder the .tflite file is located in',
default='sample')
parser.add_argument('--graph', help='Name of the .tflite file, if different than detect.tflite',
default='detect.tflite')
parser.add_argument('--labels', help='Name of the labelmap file, if different than labelmap.txt',
default='labelmap.txt')
parser.add_argument('--threshold', help='Minimum confidence threshold for displaying detected
objects',
default=0.5)
parser.add_argument('--resolution', help='Desired webcam resolution in WxH. If the webcam does
not support the resolution entered, errors may occur.',
default='1280x720')
parser.add_argument('--edgetpu', help='Use Coral Edge TPU Accelerator to speed up detection',
action='store_true')

args = parser.parse_args()

MODEL_NAME = args.modeldir
GRAPH_NAME = args.graph
LABELMAP_NAME = args.labels
min_conf_threshold = float(args.threshold)
resW, resH = args.resolution.split('x')
imW, imH = int(resW), int(resH)
use_TPU = args.edgetpu

# Import TensorFlow libraries


# If tflite_runtime is installed, import interpreter from tflite_runtime, else import from regular
tensorflow
# If using Coral Edge TPU, import the load_delegate library
pkg = importlib.util.find_spec('tflite_runtime')
if pkg:
from tflite_runtime.interpreter import Interpreter
if use_TPU:
from tflite_runtime.interpreter import load_delegate
else:
from tensorflow.lite.python.interpreter import Interpreter

67
if use_TPU:
from tensorflow.lite.python.interpreter import load_delegate

# If using Edge TPU, assign filename for Edge TPU model


if use_TPU:
# If user has specified the name of the .tflite file, use that name, otherwise use default
'edgetpu.tflite'
if (GRAPH_NAME == 'detect.tflite'):
GRAPH_NAME = 'edgetpu.tflite'

# Get path to current working directory


CWD_PATH = os.getcwd()

# Path to .tflite file, which contains the model that is used for object detection
PATH_TO_CKPT = os.path.join(CWD_PATH,MODEL_NAME,GRAPH_NAME)

# Path to label map file


PATH_TO_LABELS = os.path.join(CWD_PATH,MODEL_NAME,LABELMAP_NAME)

# Load the label map


with open(PATH_TO_LABELS, 'r') as f:
labels = [line.strip() for line in f.readlines()]

# Have to do a weird fix for label map if using the COCO "starter model" from
# https://www.tensorflow.org/lite/models/object_detection/overview
# First label is '???', which has to be removed.
if labels[0] == '???':
del(labels[0])

# Load the Tensorflow Lite model.


# If using Edge TPU, use special load_delegate argument
if use_TPU:
interpreter = Interpreter(model_path=PATH_TO_CKPT,
experimental_delegates=[load_delegate('libedgetpu.so.1.0')])
print(PATH_TO_CKPT)
else:
interpreter = Interpreter(model_path=PATH_TO_CKPT)

interpreter.allocate_tensors()

# Get model details


input_details = interpreter.get_input_details()
output_details = interpreter.get_output_details()
height = input_details[0]['shape'][1]
width = input_details[0]['shape'][2]

floating_model = (input_details[0]['dtype'] == np.float32)

68
input_mean = 127.5
input_std = 127.5

# Check output layer name to determine if this model was created with TF2 or TF1,
# because outputs are ordered differently for TF2 and TF1 models
outname = output_details[0]['name']

if ('StatefulPartitionedCall' in outname): # This is a TF2 model


boxes_idx, classes_idx, scores_idx = 1, 3, 0
else: # This is a TF1 model
boxes_idx, classes_idx, scores_idx = 0, 1, 2

# Initialize frame rate calculation


frame_rate_calc = 1
freq = cv2.getTickFrequency()

# Initialize video stream


videostream = VideoStream(resolution=(imW,imH),framerate=30).start()
time.sleep(1)

GPIO.setwarnings(False)
flag = 0

GPIO.setmode(GPIO.BCM)
GPIO.setup(4, GPIO.OUT)
buzzer = GPIO.PWM(4, 1047)

#user1 = "1238554346"
user1 = "5093089735"

def handle(msg):
chat_id = msg['chat']['id']
command = msg['text']
print(chat_id)
print('Perintah yang diterima: %s' % command)
if command == '/start':
bot.sendMessage(chat_id, "Telegram bot aktif")
elif command == 'on':
buzzer.start(50)
bot.sendMessage(chat_id, "Buzzer On")
elif command =='off':
buzzer.stop()
bot.sendMessage(chat_id, "Buzzer Off")
else:
bot.sendMessage(chat_id, "Perintah tidak ditetapkan")

69
bot = telepot.Bot('5438731832:AAGnJAbxG2Kaemmspqf2kfxVUV6NT1fouH0')
bot.message_loop(handle)
print('Menunggu perintah ...')

while True:

# Start timer (for calculating frame rate)


t1 = cv2.getTickCount()

# Grab frame from video stream


frame1 = videostream.read()

# Acquire frame and resize to expected shape [1xHxWx3]


frame = frame1.copy()
frame_rgb = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)
frame_resized = cv2.resize(frame_rgb, (width, height))
input_data = np.expand_dims(frame_resized, axis=0)

# Normalize pixel values if using a floating model (i.e. if model is non-quantized)


if floating_model:
input_data = (np.float32(input_data) - input_mean) / input_std

# Perform the actual detection by running the model with the image as input
interpreter.set_tensor(input_details[0]['index'],input_data)
interpreter.invoke()

# Retrieve detection results


boxes = interpreter.get_tensor(output_details[boxes_idx]['index'])[0] # Bounding box
coordinates of detected objects
classes = interpreter.get_tensor(output_details[classes_idx]['index'])[0] # Class index of
detected objects
scores = interpreter.get_tensor(output_details[scores_idx]['index'])[0] # Confidence of detected
objects

# Loop over all detections and draw detection box if confidence is above minimum threshold
for i in range(len(scores)):
if ((scores[i] > min_conf_threshold) and (scores[i] <= 1.0)):

object_name = labels[int(classes[i])] # Look up object name from "labels" array using class
index

if object_name == 'person' and int(scores[i]*100) > 60:


ymin = int(max(1,(boxes[i][0] * imH)))
xmin = int(max(1,(boxes[i][1] * imW)))
ymax = int(min(imH,(boxes[i][2] * imH)))
xmax = int(min(imW,(boxes[i][3] * imW)))

70
cv2.rectangle(frame, (xmin,ymin), (xmax,ymax), (10, 255, 0), 2)
label = '%s: %d%%' % (object_name, int(scores[i]*100)) # Example: 'person: 72%'
labelSize, baseLine = cv2.getTextSize(label, cv2.FONT_HERSHEY_SIMPLEX, 0.7, 2)
# Get font size
label_ymin = max(ymin, labelSize[1] + 10) # Make sure not to draw label too close to
top of window
cv2.rectangle(frame, (xmin, label_ymin-labelSize[1]-10), (xmin+labelSize[0],
label_ymin+baseLine-10), (255, 255, 255), cv2.FILLED) # Draw white box to put label text in
cv2.putText(frame, label, (xmin, label_ymin-7), cv2.FONT_HERSHEY_SIMPLEX, 0.7,
(0, 0, 0), 2) # Draw label text

if object_name == 'person' and int(scores[i]*100) > 70 and flag == 0:


#FILE NAME
timezone = pytz.timezone("Asia/Jakarta")
timezoneDate = datetime.now(timezone)
currentTimezone = timezoneDate.strftime("%d-%m-%Y_%H:%M:%S")

# WRITE IMAGE
cv2.imwrite("img/{}.jpg".format(currentTimezone), frame)
bot.sendPhoto(user1, photo=open("img/{}.jpg".format(currentTimezone), 'rb'))
flag = 1
else:
flag = 0
#print(flag)
# Draw framerate in corner of frame
cv2.putText(frame,'FPS:
{0:.2f}'.format(frame_rate_calc),(30,50),cv2.FONT_HERSHEY_SIMPLEX,1,(255,255,0),2,cv2.L
INE_AA)

# All the results have been drawn on the frame, so it's time to display it.
cv2.imshow('Object detector', frame)

# Calculate framerate
t2 = cv2.getTickCount()
time1 = (t2-t1)/freq
frame_rate_calc= 1/time1
# Press 'q' to quit
if cv2.waitKey(1) == ord('q'):
break

# Clean up
cv2.destroyAllWindows()
videostream.stop()

71
Lampiran H. Hasil Pengecekan Trunitin

72

Anda mungkin juga menyukai