• Tidak ada hasil yang ditemukan

PERANCANGAN SISTEM ABSENSI DENGAN KARTU TANDA MAHASISWA BERBASIS TEKNOLOGI RFID MENGGUNAKAN LOKAL SERVER DAN MYSQL DATABASE

N/A
N/A
Protected

Academic year: 2023

Membagikan "PERANCANGAN SISTEM ABSENSI DENGAN KARTU TANDA MAHASISWA BERBASIS TEKNOLOGI RFID MENGGUNAKAN LOKAL SERVER DAN MYSQL DATABASE"

Copied!
86
0
0

Teks penuh

(1)

i

PERANCANGAN SISTEM ABSENSI DENGAN KARTU TANDA MAHASISWA BERBASIS TEKNOLOGI RFID

MENGGUNAKAN LOKAL SERVER DAN MYSQL DATABASE

DESIGN OF ABSENTION SYSTEM WITH STUDENT SIGNING CARD BASED ON RFID TECHNOLOGY USING LOCAL

SERVER AND MYSQL DATABASE SKRIPSI

Disusun oleh :

ANGGA PRIYATMOKO NIM : 181042033

Program Studi : Teknik Elektro Jenjang Studi : Strata Satu (S-1) Konsentrasi : Elektronika Jurusan : Teknik Elektro Fakultas : Teknologi Industri

INSTITUT SAINS & TEKNOLOGI AKPRIND YOGYAKARTA

2020

(2)

ii

HALAMAN PENGESAHAN

PERANCANGAN SISTEM ABSENSI DENGAN KARTU TANDA MAHASISWA BERBASIS TEKNOLOGI RFID MENGGUNAKAN

LOKAL SERVER DAN MYSQL DATABASE

SKRIPSI

Diajukan Sebagai Salah Satu Syarat untuk Memperoleh Gelar Sarjana Teknik Program S-1

Pada Jurusan Teknik Elektro Fakultas Teknologi Industri Institut Sains dan Teknologi AKPRIND Yogyakarta

Disusun oleh : ANGGA PRIYATMOKO

181042033

Telah disetujui dan disahkan pada tanggal 28 April 2020

Dosen Pembimbing I

Sigit Priyambodo, S.T., M.T.

NIK. 96.0967.521.E

Dosen Pembimbing II

Syafriyudin, S.T., M.T.

NIK. 95.0568.506.E Mengetahui,

Ketua Jurusan Teknik Elektro

Sigit Priyambodo, S.T., M.T.

NIK. 96.0967.521.E

(3)

iii

HALAMAN PERSETUJUAN

PERANCANGAN SISTEM ABSENSI DENGAN KARTU TANDA MAHASISWA BERBASIS TEKNOLOGI RFID MENGGUNAKAN LOKAL SERVER DAN MYSQL DATABASE

Diajukan Sebagai Salah Satu Syarat untuk Memperoleh Gelar Sarjana Teknik Program S-1 Pada Jurusan Teknik Elektro Fakultas Teknologi Industri Institut Sains dan Teknologi AKPRIND Yogyakarta yang telah dipresentasikan di depan Dosen Penguji pada tanggal 28 April 2020

Tim Dosen Penguji : Ketua Penguji

Sigit Priyambodo, S.T., M.T. : ...

Penguji I

Syafriyudin, ST.,M.T. : ...

Penguji II

Beny Firman, S.T., M.Eng. : ...

Mengetahui,

Ketua Jurusan Teknik Elektro

Sigit Priyambodo, S.T., M.T.

NIK. 96.0967.521.E

(4)

iv

HALAMAN PERNYATAAN

Saya yang bertanda tangan di bawah ini:

Nama : Angga Priyatmoko

NIM : 181042033

Judul Skripsi : Perancangan Sistem Absensi dengan Kartu Tanda Mahasiswa Berbasis Teknologi RFID Menggunakan Lokal Server dan MYSQL Database

Menyatakan dengan sebenarnya bahwa Skripsi ini merupakan hasil karya saya sendiri. Jika terdapat karya orang lain, saya akan mencantumkan sumber yang jelas. Informasi dan materi Skripsi yang terkait hak milik, hak intelektual dan paten merupakan milik bersama antara tiga pihak yaitu penulis, dosen pembimbing dan Institut Sains & Teknologi AKPRIND Yogyakarta. Dalam hal penggunaan informasi dan materi Skripsi terkait paten maka akan diskusikan lebih lanjut untuk mendapatkan persetujuan dari ketiga pihak tersebut di atas.

Apabila dikemudian hari ditemukan ketidakbenaran dalam pernyataan ini, maka saya bersedia menerima sanksi sesuai dengan aturan yang berlaku. Demikian pernyataan ini saya buat tanpa ada paksaan dari pihak mana pun.

Yogyakarta, 11 Februari 2020

materai

Angga Priyatmoko

(5)

v

KATA PENGANTAR

Puji dan syukur penulis panjatkan kehadirat Allah SWT, Tuhan Semesta Alam, karena atas berkat dan rahmat-Nya penulis dapat menyelesaikan skripsi dan penulisan laporan ini dengan baik. Laporan skripsi ini disusun untuk memenuhi salah satu syarat dalam memperoleh gelar Sarjana Teknik (S.T.) pada Program Studi S1 Teknik Elektro Fakultas Teknik Industri Institut Sains & Teknologi AKPRIND Yogyakarta.

Selama proses pengerjaan skripsi ini, penulis banyak mendapatkan bantuan dan dukungan dari berbagai pihak. Dalam kesempatan ini, penulis ingin mengucapkan terima kasih yang sebesar-besarnya kepada :

1. Bapak Sigit Priyambodo, S.T., M.T., selaku Ketua Jurusan Teknik Elektro Institut Sains & Teknologi AKPRIND Yogyakarta.

2. Bapak Sigit Priyambodo, S.T., M.T., selaku dosen pembimbing 1 skripsi.

3. Bapak Syafriyudin, S.T., M.T., selaku dosen pembimbing 2 skripsi.

4. Seluruh Dosen dan Karyawan Jurusan Teknik Elektro Institut Sains &

Teknologi AKPRIND Yogyakarta.

Penulis menyadari bahwa dalam penyusunan dan penulisan laporan ini masih banyak terdapat kekurangan, sehingga penulis dengan senang hati menerima saran maupun kritik yang bersifat membangun dari pembaca untuk menjadi bahan evaluasi penulis untuk lebih baik di masa mendatang. Akhir kata penulis berharap laporan ini dapat bermanfaat dan menambah ilmu pengetahuan bagi pembaca.

Sleman, 11 Februari 2020

Penulis

(6)

vi MOTTO

Jika hidup diibaratkan sebagai sebuah sekolah, maka kita semua adalah seorang murid. Jadi selama kita masih hidup jangan pernah berhenti untuk belajar.

==== ## ====

Success is the sum of small efforts repeated day in and day out.

==== ## ====

(7)

vii INTISARI

Salah satu hal penting yang ada pada lingkungan akademik adalah absensi kehadiran. Proses rekap absensi setiap instansi memilik cara tersendiri, ada yang manual menggunakan kertas maupun sistem online. Kampus IST AKPRIND Yogyakarta adalah salah satu yang sudah menggunakan sistem rekap dengan kertas dan input melalui sistem online. Tetapi, proses absensi online yang dilakukan di IST AKPRIND masih memilik kendala salah satunya yaitu proses yang lama ketika mahasiswa melakukan absensi dikarenakan harus antre satu persatu dan masih memungkinkan mahasiswa untuk melakukan titip absen.

Oleh karena itu, skripsi ini akan membuat sebuah perancangan sistem absensi menggunakan Kartu Tanda Mahasiswa (KTM) dengan teknologi RFID yang akan dihubungkan ke database MYSQL dengan komunikasi jaringan lokal yang diharapkan dapat menigkatkan kecepatan mahasiswa dalam melakukan absensi.

Dari penelitian ini didapatkan hasil bahwa alat tersebut mampu membaca data mahasiswa pada lokal server dengan tingkat keakuratan 100% dengan rata-rata pembacaan data pada lokal server hingga mendapatkan response data selama 2.113 mili detik atau sekitar 2,1 detik. Waktu ini juga dipengaruhi oleh jaringan yang digunakan, semakin baik jaringan tersebut maka akan semakin cepat proses pembacaan data dari lokal server.

Kata kunci : Absensi, RFID, Database, MYSQL

(8)

viii ABSTRACT

One important thing that exists in the academic environment is attendance attendance. The attendance recap process for each agency has its own way, some use paper or an online system. IST AKPRIND Yogyakarta campus is one that already uses a recap system with paper and input through an online system.

However, the online attendance process carried out at IST AKPRIND still has obstacles, one of which is the long process when students attend attendance because they have to queue one by one and still allow students to make absences.

Therefore, this thesis will make an attendance system design using Student Identity Cards (KTM) with RFID technology which will be connected to the MYSQL database with local network communication which is expected to increase the speed of students in attending.

From the results of this study the results obtained from the tool that the tool is able to read student data on the local server with 100% accuracy with an average reading of data on the local server to get a response of 2,113 milliseconds or about 2.1 seconds. This time is also influenced by the network used, the better the network, the faster the process of reading data from the local server.

Keywords: Attendance, RFID, Database, MYSQL

(9)

ix

DAFTAR PUSTAKA

HALAMAN PENGESAHAN ... ii

HALAMAN PERSETUJUAN ... iii

HALAMAN PERNYATAAN ... iv

KATA PENGANTAR ... v

MOTTO ... vi

INTISARI ... vii

ABSTRACT ... viii

DAFTAR PUSTAKA ... ix

DAFTAR TABEL ... xi

DAFTAR GAMBAR ... xii

DAFTAR SINGKATAN ... xiv

BAB 1 PENDAHULUAN ... 1

1.1 Latar Belakang ... 1

1.2 Perumusan Masalah ... 1

1.3 Batasan Masalah ... 2

1.4 Tujuan dan Manfaat Penelitian ... 2

1.4.1 Tujuan Penelitian ... 2

1.4.2 Manfaat Penelitian ... 2

1.5 Keaslian Penelitian ... 3

1.6 Sistematika Penulisan ... 5

BAB II TINJAUAN PUSTAKA DAN LANDASAN TEORI ... 6

2.1 Tinjauan Pustaka ... 6

2.2 Landasan Teori ... 6

2.2.1 Modul RFID PN532 ... 6

2.2.2 Kartu RFID ... 8

2.2.3 Wemos D1 Mini ... 10

2.2.4 LCD OLED 0.96 ... 11

2.2.5 Jaringan Lokal (LAN) ... 12

(10)

2.2.6 Aplikasi XAMPP ... 14

2.2.7 REpresentational State Transfer (REST) ... 16

2.3 Hipotesis ... 17

BAB III METODOLOGI PENELITIAN ... 18

3.1 Alat dan Bahan ... 18

3.2 Tahapan Penelitian ... 20

3.3 Perancangan Sistem Alat ... 21

3.4 Perancangan Mekanik Alat ... 22

3.5 Perancangan Sistem Elektronis Alat ... 23

3.6 Perancangan Program Arduino ... 25

3.7 Perancangan Database MYSQL ... 29

3.8 Perancangan Program PHP dan HTML ... 31

3.9 Cara Analisis ... 36

BAB IV HASIL DAN PEMBAHASAN ... 37

4.1 Hasil Implementasi Alat ... 37

4.2 Hasil Pengujian Fungsional ... 38

4.2.1 Hasil Pengujian UID RFID ... 38

4.2.2 Hasil Pengujian Koneksi Jaringan LAN ... 39

4.2.3 Hasil Pengujian Tampilan LCD ... 40

4.2.4 Hasil Pengujian Sistem REST ... 41

4.3 Hasil Pengujian Parsing Data ... 44

4.4 Hasil Pengujian Tampilan GUI dengan beberapa Aplikasi ... 47

4.5 Hasil Pengujian Sistem Pembacaan Data Mahasiswa ... 48

4.6 Pembahasan ... 51

BAB V KESIMPULAN DAN SARAN ... 54

5.1 Kesimpulan ... 54

5.2 Saran ... 54

(11)

xi

DAFTAR TABEL

Tabel 1.1 Keaslian Penelitian ... 3

Tabel 2.1 Mode Komunikasi Modul PN532 ... 7

Tabel 2.2 Pin Mapping Wemos D1 Mini ... 11

Tabel 3.1 Alat yang dibutuhkan ... 18

Tabel 3.2 bahan yang dibutuhkan ... 19

Tabel 3.1 Keterangan Modul yang Digunakan ... 23

Tabel 4.1 Detail UID Kartu RFID ... 38

Tabel 4.2 Hasil Tapping Kartu RFID ... 48

Tabel 4.3 Hasil Pembacaan Data Mahasiswa ... 50

(12)

xii

DAFTAR GAMBAR

Gambar 2.1 Saklar Mode Komunikasi ... 7

Gambar 2.2 Kartu RFID ... 8

Gambar 2.3 Wemos D1 Mini ... 10

Gambar 2.4 LCD OLED 0.96 Inch ... 12

Gambar 2.5 Sistem Jaringan LAN ... 13

Gambar 2.6 Tampilan Aplikasi XAMPP ... 14

Gambar 3.1 Topologi Sistem ... 21

Gambar 3.2 Desain Mekanik ... 22

Gambar 3.3 Tampilan Bagian Dalam Badan Robot ... 23

Gambar 3.4 Skematik Rangkaian ... 24

Gambar 3.5 Flowchart Program Arduino ... 26

Gambar 3.7 Struktur Database ... 29

Gambar 3.7 Database tb_mahasiswa ... 30

Gambar 3.8 Database tb_taphistory ... 30

Gambar 3.9 Tampilan Data Mahasiswa ... 31

Gambar 3.10 Tampilan Menu Registrasi ... 32

Gambar 3.11 Tampilan History Tap Kartu ... 33

Gambar 3.11 Flowchart Program PHP ... 34

Gambar 4.1 Alat Tampak Depan ... 37

Gambar 4.2 Alat Tampak Dalam ... 38

Gambar 4.3 Pengujian Koneksi Jaringan LAN ... 40

Gambar 4.4 Hasil Pengujian Tampilan LCD ... 41

Gambar 4.5 Hasil Respond dari Lokal Server melalui Serial Monitor ... 43

Gambar 4.6 Hasil Response dari Lokal Server melalui Browser Google Chrome 44 Gambar 4.7 Response Data dari Server pada Arduino ... 45

Gambar 4.8 Hasil Response Data dari Lokal Server melalui Aplikasi Browser ... 45

Gambar 4.9 Hasil Parsing Data ... 46

Gambar 4.10 Tampilan Menggunakan Google Chrome Desktop ... 47

Gambar 4.11 Tampilan Menggunakan Safari Desktop ... 47

(13)

Gambar 4.12 Tampilan Menggunakan Safari dan Google Chrome Mobile ... 47 Gambar 4.13 Data Mahasiswa yang Terdaftar ... 48 Gambar 4.14 Hasil History Tap pada Tampilan Webiste ... 51

(14)

xiv

DAFTAR SINGKATAN

H

HSU High Speed UART

adalah bagian perangkat keras komputer yang menerjemahkan antara bit-bit paralel data dan bit-bit serial. UART biasanya berupa sirkuit terintegrasi yang digunakan untuk komunikasi serial pada komputer atau port serial perangkat periperal. UART

sekarang ini termasuk di dalam beberapa mikrokontroler I

IIC Inter Integrated Circuit

standar komunikasi serial dua arah menggunakan dua saluran yang didisain khusus untuk mengirim maupun menerima data.

K

KTM Kartu Tanda Mahasiswa

merupakan kartu identitas elektronik bagi mahasiswa yang terdaftar sebagai mahasiswa di suatu lembaga pendidikan.

R

RFID Radio Frequency Identifier

sebuah teknologi yang menggunakan komunikasi via gelombang elektromagnetik untuk merubah data antara terminal dengan suatu objek seperti produk barang, hewan, ataupun manusia dengan tujuan untuk identifikasi dan penelusuran jejak melalui penggunaan suatu piranti yang bernama RFID tag REST REpresentational State Transfer

suatu arsitektur metode komunikasi yang sering diterapkan dalam pengembangan layanan berbasis web.

S

SPI Serial Peripheral Interface

merupakan metode komunikasi seri synchronous dari mikrokontroller yang berarti mikrokontroller tersebut harus

menggunakan clock yang sama untuk mengsinkronisasi deteksi bit pada receiver.

(15)

1 BAB 1

PENDAHULUAN

1.1 Latar Belakang

Sistem absensi mahasiswa di Institut Sains dan Teknologi AKPRIND Yogyakarta memiliki 3 pilihan diantaranya menggunakan absesnsi secara manual dengan cara setiap mahasiswa membubuhkan tanda tangannya di lembar absensi mata kuliah, memasukan nomor induk mahasiswa melalui komputer yang berada di Kelas atau dengan metode scan barcode yang ditampilkan pada proyektor di Kelas. Tetapi, hal ini masih menimbulkan kendala diantaranya saat absensi manual sering terjadi kesalahan jumlah kehadiran mahasiswa dalam setiap pertemuan dan memungkinkan mahasiswa malakukan “titip absen”. Pada sistem absen input manual melalui komputer, proses absensi menjadi lama dikarenakan seluruh mahasiswa harus antre satu persatu untuk melakukan input nomor induk mahasiswa pada komputer tersebut. Sedangkan untuk metode barcode terjadi kendala dikarenakan tidak semua mahasiswa menggunakan perangkat pintar Android dan beberapa kali sering terjadi scan barcode yang gagal.

Untuk mengatasi persoalan diatas, maka dirancang sebuah perangkat dengan teknologi Radio Frequency Identifier (RFID) sebagai pembaca kartu tanda mahasiswa dimana didalamnya sudah terdapat kode-kode yang akan mengakses data mahasiswa yang ada pada server. Metode ini diharapkan dapat digunakan sebagai alternatif untuk menambah metode proses absensi mahasiswa, sehingga ketika mahasiswa masuk kelas tinggal menempelkan kartu pada alat tersebut dan absensi sudah berhasil dilakukan.

1.2 Perumusan Masalah

Berdasarkan latar belakang masalah yang telah dijelaskan di atas maka rumusan masalah dalam penelitian ini adalah:

a) Bagaimana cara menerapkan teknologi RFID pada absesni mahasiswa di Kampus IST AKPRIND ?

(16)

b) Bagaimana cara membuat sistem absensi dengan teknologi kartu RFID yang terhubung dengan server melalui jaringan lokal ?

1.3 Batasan Masalah

Pembatasan masalah diperlukan untuk mempermudah pelaksanaan maupun penulisan skripsi sehingga tidak menyimpang dari judul yang sudah ditetapkan.

Lingkup pembatasan masalah dalam skripsi ini dibatasi pada :

a) Kartu RFID yang digunakan adalah jenis Mifare 13.56 MHz 1K 4 byte UID atau 8 byte UID

b) Database yang digunakan menggunakan MYSQL dengan lokal server buatan menggunakan aplikasi XAMPP.

c) Koneksi internet yang digunakan yaitu dengan wireless (non kabel) jaringan lokal dengan kendali utama menggunakan ESP8266 Wemos D1 Mini V3.

d) Sistem yang dibuat meliputi pembacaan data mahasiswa yang berada pada database melalui kartu RFID kemudian dimasukan kesebuah history absensi dan melakukan registrasi mahasiswa baru untuk didaftarkan pada database yang sudah tersedia.

1.4 Tujuan dan Manfaat Penelitian 1.4.1 Tujuan Penelitian

Adapun tujuan dari pembuatan skripsi ini adalah :

a) Mampu merancang sebuah sistem absensi mahasiswa dengan Kartu Tanda Mahasiswa (KTM) yang dilengkapi dengan teknologi Radio Frequency Identification (RFID).

1.4.2 Manfaat Penelitian

Adapun tujuan dari pembuatan skripsi ini adalah :

a) Memberikan pilihan pengganti maupun tambahan dari sistem absensi lama, sehingga mahasiswa dapat melakukan absensi dengan waktu yang lebih cepat.

(17)

1.5 Keaslian Penelitian

Untuk mendapatkan hasil yang optimal dari alat yang dibuat serta analisisnya, maka digunakan berbagai pendekatan. Keaslian penelitian ditunjukkan dengan menampilkan beberapa metode dari penelitian sebelumnya yang berhubungan dengan sistem yang dibuat, kemudian dibandingkan dengan yang dilakukan oleh peneliti. Berikut ini beberapa penelitian yang sudah pernah dilakukan oleh peneliti lainnya dengan topik yang sama sebagai pembanding dari alat yang dibuat :

Tabel 1.1 Keaslian Penelitian

NO PENELITI JUDUL HASIL PERBEDAAN

1 Antonius Irianto Sukowati, Helmi Fauziah Yulianti, Imam Purwanto

Rancang Bangun Sistem Absensi Mahasiswa

Sekolah Tinggi Teknik Cendekia (STTC) Berbasis Radio Frequency Identi cation (RFID)

menggunakan Arduino UNO R3

Berhasil

membuat sistem RFID sampai jarak walapun terdapat

halangan.

(Antonius Irianto, Helmi Fauziah, 2017)

Feedback data mahasiswa ke perangkat keras dan ditampilkan pada LCD.

2 2

Riski Tuloli, Ismail Mohidin

Aplikasi Absen Kuliah

Menggunakan Kode QR (Quick Response)

Dapat melakukan absensi dan terhubung dengan website

Menggunakan sistem RFID. (Tuloli and Mohidin, 2019)

3 3

Indri Neforawa, Muhamm

Rancang Bangun Aplikasi Sistem Informasi

Berhasil

membuat sistem absensi dengan

Menggunakan RFID dan terdapat Feedback data

(18)

ad Irdam Fareza dan Vida Juniarti

Monitoring Absensi Mahasiswa

Politeknik Negeri Jakarta

Menggunakan Teknologi Nfc Pada Android

NFC pada

smartphone.

(Bunga et al., 2016)

mahasiswa ke perangkat keras dan ditampilkan pada LCD.

4 4

Kukuh Prasetiyo Aji, Ucuk Darusala m , Novi Dian Nathasia

Perancangan Sistem Presensi Untuk Pegawai Dengan RFID Berbasis IoT Menggunakan NodeMCU ESP8266

Berhasil

membuat sistem absensi yang terhubung dengan server dan database MYSQL.

Adanya fitur Feedback data mahasiswa ke perangkat keras dan ditampilkan pada

LCD. (Aji,

Darusalam and Nathasia, 2020) 5 Kiki Dwi

Wijayanti (KIKI DWI WIJAYA NTI, 2020)

Rancang Bangun Sistem Informasi Keberadaan dan Situasi Dosen Di Ruang Dosen Berbasis Radio Frequency Identification (Rfid) dan

Aplikasi Android

Berhasil

membuat sistem absensi

mahasiswa dengan

ESP8266 yang terhubung dengan android

Menggunakan

database MYSQL dan Adanya fitur Feedback data mahasiswa ke perangkat keras dan ditampilkan pada LCD.

(19)

1.6 Sistematika Penulisan

Penulisan laporan skripsi ini akan disajikan dalam bentuk laporan tertulis yang disusun secara sistematis dan teratur sesuai dengan acuan dan kode etik penulisan laporan. Penulisan laporan skripsi ini dilakukan dengan sistematika sebagai berikut:

BAB I : PENDAHULUAN

Memuat latar belakang masalah, tujuan dan maksud, batasan masalah metodologi penelitian dan sistematika penulisan.

BAB II : LANDASAN TEORI

Memuat pengertian dan penjelasan tentang Modul RFID PN532 yang digunakan sebagai pembaca dan penulis data kartu RFID, Kartu RFID, Wemos D1 Mini ESP8266, LCD OLED 0.96 dengan komunikasi IIC, Jaringan Lokal, Aplikasi XAMPP untuk membuat lokal server buatan, dan metode REpresentational State Transfer (REST)

BAB III : PERANCANGAN

Memuat perancangan sistem secara umum, perancangan perangkat keras berupa mekanik dan elektronis, perancangan perangkat lunak berupa program Arduino IDE, HTML dan PHP.

BAB IV : PENGUJIAN DAN ANALISA KERJA SISTEM

Memuat pengujian dan analisis mengenai pembacaan RFID, hasil respond dari lokal server karena adanya request dari Wemos D1 Mini, parsing data hasil respond serta pengujian sistem secara menyeluruh.

BAB V : PENUTUP

Memuat kesimpulan dari perancangan, pembuatan, pengujian dan analisis kerja alat, serta berisi saran-saran untuk pengembangan lebih lanjut.

(20)

6 BAB II

TINJAUAN PUSTAKA DAN LANDASAN TEORI

2.1 Tinjauan Pustaka

Radio Frequency Identification atau yang lebih dikenal sebagai RFID merupakan suatu metode identifikasi objek yang memanfaatkan teknologi gelombang radio. Proses identifikasi dilakukan oleh RFID reader dan RFID transponder (RFID tag). RFID tag dilekatkan pada suatu benda atau suatu objek yang akan diidentifikasi. Tiap-tiap RFID tag memiliki data angka identifikasi (ID number) yang unik, sehingga tidak ada RFID tag yang memiliki ID number yang sama.

RFID digunakan untuk mendeskripsikan sebuah sistem yang mampu untuk mengirimkan data identitas sebuah objek secara nirkabel dengan menggunakan gelombang radio. RFID termasuk kedalam teknologi Automatic Identification (Auto- ID). Saat ini sistem identifikasi otomatis tersebut menjadi sangat populer dalam berbagai macam industri seperti jasa, pembelian, manufaktur dan lain sebagainya. Teknologi lain yang termasuk dalam Auto-ID adalah barcode, pembaca karakter optis dan teknologi biometri. Label barcode yang ada dimana- mana merupakan pencetus revolusi sistem identifikasi otomatis. Meskipun barcode sangat murah namun terdapat kelemahan dalam segi kapasistas penyimpanannya yang rendah dan tidak adanya kemampuan untuk diprogram ulang. Solusi optimal secara teknis adalah dengan memanfaatkan sebuah silicon chip sebagai media penyimpanan yang kemudian diadopsi dalam sistem RFID. (Isyanto, Solikhin and Ibrahim, 2019)

2.2 Landasan Teori

2.2.1 Modul RFID PN532

Modul PN532 adalah salah satu modul yang dapat membaca dan menulis tag NFC/RFID tergantung dari kode yang digunakan. Modul PN532 memiliki tiga buah alternatif jalur komunikasi diantaranya yaitu Serial Peripheral Interface

(21)

(SPI), Inter Integrated Circuit (IIC) dan High Speed UART (HSU) sehingga pengguna lebih fleksibel dalam pengimplementasian perangkat tersebut dalam berbagai jenis sistem yang dibuat.(Ajie, 2006)

Penggantian mode komunikasi modul ini dapat dipilih dengan mengatur saklar yang terdapat pada modul tersebut seperti yang terlihat pada gambar 2.1

Gambar 2.1 Saklar Mode Komunikasi (Sumber : osoyoo.com)

Tabel 2.1 menunjukan logika dari mode komunikasi modul PN532 Tabel 2.1 Mode Komunikasi Modul PN532

Mode Saklar 1 Saklar 2

HSU Off Off

IIC On Off

SPI Off On

(22)

Berikut ini spesifikasi dari Modul PN532 :

1) Mendukung kounikasi I2C, SPI dan HSU (High Speed UART) serta mudah ketika ingin berpindah dari ketiga mode tersebut.

2) Dapat bekerja pada NFC dan RFID membaca atau menulis.

3) Jarak komunikasi dengan kartu maksimalsejauh 3 cm.

2.2.2 Kartu RFID

Kartu RFID adalah kartu yang telah ditanam label atau tag RFID. Label atau tag RFID sendiri merupakan kependekan dari Radio Frequency Identtification yaitu sebuah teknologi untuk mengidentifikasi suatu informasi menggunakan gelombang radio atau gelombang elektromagnetik. Fungsi kartu ini sangat banyak, salah satunya adalah untuk menyimpan suatu data penting. Untuk membaca data yang telah disimpan pada kartu tersebut diperlukan sebuah mesin pembaca kartu ini.

Gambar 2.2 Kartu RFID

Kartu RFID sudah lama masuk ke Indonesia dan sebenarnya bisa dijumpai dengan mudah dalam kehidupan sehari-hari contohnya saat menggunakan emoney, tol elektronik, tiket kereta maupun busway elektronik hingga menggunakan kunci pintu elektronik.(bikinidcard, 2020)

(23)

Kartu RFID dibagi dalam beberapa jenis yaitu:

1) Kartu Proximity

Kartu proximity sebenarnya sama dengan RFID, bedanya kartu ini hanya memiliki akses untuk dibaca. Jadi, ketika kartu ini pertama kali diisi data oleh seseorang kemudian orang tersebut memberikannya kepada orang lain, maka orang kedua yang menerima kartu ini hanya bisa membaca data pada kartu ini, tidak bisa mengubah data.

Contoh penggunaan kartu ini adalah pada kunci pintu elektronik.

Karu proximity merupakan ID Card RFID 125 khz artinya kartu dan alat pembacanya bekerja pada frekunsi 125 Khz. Namun pada teknologi terbaru, kartu ini dapat bekerja pada frekuensi 13,56 Mhz.

2) Kartu RFID

Mifare sebenarnya sebuah kartu RFID yang bekerja pada frekuensi 13,56 Mhz. Kartu mifare ini banyak juga digunakan oleh perusahaan maupun instansi. Contohnya dapat diaplikasikan sebagai ID card karyawan, kartu mahasiswa, kartu pelajar, karu perpustakaan, kartu parkir, tiket transportasi hingga kunci pintu hotel maupun apartemen.

Berikut ini spesifikasi kartu RFID Mifare 1Kb 13.56Mhz : 1) Bahan Kartu : PVC

2) Frekuensi: 13.56 Mhz

3) Protokol : ISO14443A Compatible 4) Jarak Pembacaan : 3 - 10 cm 5) Using Cycle : 100,000 cycles

6) Suhu Penyimpanan : -20c ~ 50C derajat 7) Memori : 1025 bytes

8) Supported readers : SL500L, SL500A, SL500F, SL013, SL025B, SL025M, SL018, SL030, SL031, SL032, SL040, SL040A, SL060, SL600

(24)

2.2.3 Wemos D1 Mini

WeMos D1 mini merupakan modul development board yang berbasis WiFi dari keluarga ESP8266 yang dimana dapat diprogram menggunakan software IDE Arduino seperti halnya dengan NodeMCU.(Faudin, 2018)

Gambar 2.3 Wemos D1 Mini

Salah satu kelebihan dari WeMos D1 mini ini dibandingkan dengan modul development board berbasis ESP8266 lainnya yaitu adanya modul shield untuk pendukung hardware plug and play.

Berikut ini spesifikasi dari Wemos D1 Mini : 1) Beroperasi pada tegangan operasional 3,3 V

2) Memiliki 11 pin digital IO termasuk didalamnya spesial pin untuk fungsi I2C, one-wire, PWM, SPI, interrupt

3) Memiliki 1 pin analog input atau ADC

4) Berbasis micro USB untuk fungsi pemrogramannya 5) Memori flash : 4Mbyte

6) Dimensi : 34,2 mm x 25,6 mm 7) Clock speed : 80MHz

8) Menggunakan IC CH340G untuk komunikasinya

(25)

Berikut ini pin mapping dari Wemos D1 Mini

Tabel 2.2 Pin Mapping Wemos D1 Mini Nama pada Wemos D1 Mini ESP8266

D0 GPIO 16

D1 GPIO 5

D2 GPIO 4

D3 GPIO 0

D4 GPIO 2

D5 GPIO 14

D6 GPIO 12

D7 GPIO 13

D8 GPIO 15

2.2.4 LCD OLED 0.96

LED 0.96 adalah penampil grafik dengan ukuran 0.96 inci dan resolusi 128x64 pixel menggunakan teknologi OLED. Penampil OLED biasanya terbuat dari karbon dan hidrogen. Untuk komunikasi dengan mikrokontroler Arduino menggunakan komunikasi I2C, menggunakan 2 pin yaitu pin SDA dan Pin SCL, sehingga dapat menghemat Pin.(Elektronika, 2018)

Berbeda dengan teknologi LCD, layar OLED dapat menghasilkan cahaya sendiri dari masing-masing pikselnya dan tidak membutuhkan tambahan backlight lagi, sehingga tampilan dari layar OLED terlihat lebih terang dan jernih dan warna

(26)

hitamnya benar-benar hitam pekat. Sehingga pemakaian daya relatif lebih hemat OLED di banding LCD, jadi OLED dan LCD punya teknologi yang berbeda.

Saat pertama kali keluar modul ini hanya menyediakan warna putih, tetapi untuk saat ini modul ini memiliki beberapa variasi warna, misalnya warna biru dan warna kombinasi kuning dan biru. Modul ini walaupun relatif kecil tetapi cukup canggih dan bisa di andalkan karena dapat menampilkan teks, gambar dan animasi.

Komunikasi LCD OLED 0.96 Inch dengan arduino menggunakan komunikasi IIC sehingga pin yang di gunakan hanya 2 yaitu SDA dan SCL.

Gambar 2.4 LCD OLED 0.96 Inch 2.2.5 Jaringan Lokal (LAN)

Local Area Network (LAN) adalah jaringan komputer yang jaringannya hanya mencakup wilayah kecil seperti jaringan komputer kampus, gedung, kantor, dalam rumah, sekolah atau yang lebih kecil. Saat ini, kebanyakan LAN berbasis pada teknologi IEEE 802.3 Ethernet menggunakan perangkat switch, yang mempunyai kecepatan transfer data 10, 100, atau 1000 Mbit/s. Selain teknologi Ethernet, saat ini teknologi 802.11b (atau biasa disebut Wi-fi) juga sering digunakan untuk membentuk LAN. Tempat-tempat yang menyediakan koneksi LAN dengan teknologi Wi-fi biasa disebut hotspot.(Admin, 2018)

Pada sebuah LAN setiap komputer mempunyai daya komputasi tersendiri, selain itu setiap komputer juga dapat mengakses resource atau sumber daya yang ada dalam jaringan tersebut, tentunya sesuai dengan hak akses yang dimiliki.

(27)

Beberapa contoh sumber daya yang dapat diakses antara lain akses data, penggunaan printer dan komunikasi dengan pengguna lain.

Jaringan LAN pertama kali ditemukan pada tahun 1950 yang diawali dengan sebuah penemuan sebuah komputer yang dikenal dengan super komputer.

Komputer ini mampu melayani beberapa terminal yang tersedia dengan konsep distribusi proses berdasarkan waktu yang banyak dikenal dengan Time Sharing System. Semenjak itu konsep jaringan lokal terus berkembang. Gambar 2.5 menunjukan contoh sistem jaringan lokal.

Gambar 2.5 Sistem Jaringan LAN

Pada dasarnya fungsi utama jaringan LAN adalah untuk menghubungkan beberapa komputer di dalam jaringan sehingga proses kerja menjadi lebih mudah dan cepat. Sesuai dengan pengertian LAN yang dijelaskan sebelumya, adapun tujuan LAN adalah sebagai berikut:

1) Untuk menghubungkan beberapa komputer dalam suatu wilayah kecil.

2) Untuk memungkinkan dilakukannya komunikasi antar komputer dan perangkat dalam jaringan.

3) Untuk memungkinkan dan mempercepat proses berbagi data dan program antar komputer di dalam jaringan.

(28)

4) Membantu menghemat biaya operasional karena perangkat dalam satu jaringan dapat dipakai secara bersama-sama (misalnya: printer, server, dan lain sebagainya).

2.2.6 Aplikasi XAMPP

XAMPP adalah sebuah paket perangkat lunak (software) komputer yang sistem penamaannya diambil dari akronim kata Apache, MySQL (dulu) / MariaDB (sekarang), PHP, dan Perl. Sementara imbuhan huruf “X” yang terdapat pada awal kata berasal dari istilah cross platform sebagai simbol bahwa aplikasi ini bisa dijalankan di empat sistem operasi berbeda, seperti OS Linux, OS Windows, Mac OS, dan juga Solaris.(Andy, 2019)

Program aplikasi XAMPP berfungsi sebagai server lokal untuk mengampu berbagai jenis data website yang sedang dalam proses pengembangan. Dalam prakteknya, XAMPP bisa digunakan untuk menguji kinerja fitur ataupun menampilkan konten yang ada didalam website kepada orang lain tanpa harus terkoneksi dengan internet, atau istilahnya website offline. XAMPP bekerja secara offline layaknya web hosting biasa namun tidak bisa diakses oleh banyak orang.

Maka dari itu, XAMPP biasanya banyak digunakan oleh para mahasiswa maupun pelajar untuk melihat hasil desain website sebelum akhirnya dibuat online menggunakan web hosting yang biasa dijual dipasaran.

Gambar 2.6 Tampilan Aplikasi XAMPP

(29)

Sejarah mencatat, software XAMPP pertama kali dikembangkan oleh tim proyek bernama Apache Friends dan sampai saat ini sudah masuk dalam rilis versi 7.3.9 yang bisa didapatkan secara gratis dengan label General Public License (GPL).

Jika dijabarkan secara gamblang, masing-masing huruf yang ada di dalam nama XAMPP memiliki arti sebagai berikut ini:

1) X = Cross Platform

Merupakan kode penanda untuk software cross platform atau yang bisa berjalan di banyak sistem operasi.

2) A = Apache

Apache adalah aplikasi web server yang bersifat gratis dan bisa dikembangkan oleh banyak orang (open source).

3) M = MySQL / MariaDB

MySQL atau MariaDB merupakan aplikasi database server yang dikembangkan oleh orang yang sama. MySQL berperan dalam mengolah, mengedit, dan menghapus daftar melalui database.

4) P = PHP

Huruf “P” yang pertama dari akronim kata XAMPP adalah inisial untuk menunjukkan eksistensi bahasa pemrograman PHP. Bahasa pemrograman ini biasanya digunakan untuk membuat website dinamis, contohnya dalam website berbasis CMS WordPress.

5) P = Perl

Sementara itu, untuk huruf P selanjutnya merupakan singkatan dari bahasa pemrograman Perl yang kerap digunakan untuk memenuhi berbagai macam kebutuhan. Perl ini bisa berjalan di dalam banyak sistem operasi sehingga sangat fleksibel dan banyak digunakan.

(30)

2.2.7 REpresentational State Transfer (REST)

REpresentational State Transfer (REST) adalah suatu arsitektur metode komunikasi yang sering diterapkan dalam pengembangan layanan berbasis web.

Arsitektur REST, yang umumnya dijalankan melalui Hypertext Transfer Protocol (HTTP), melibatkan proses pembacaan laman web tertentu yang memuat sebuah file XML atau JSON. File inilah yang menguraikan dan memuat konten yang hendak disajikan. Setelah melalui sebuah proses definisi tertentu, konsumen akan bisa mengakses antarmuka aplikasi yang dimaksudkan.

Kekhasan REST terletak pada interaksi antara klien dan server yang difasilitasi oleh sejumlah tipe operasional (verba) dan Universal Resource Identifiers (URIs) yang unik bagi tiap-tiap sumberdaya. Masing-masing verba – GET, POST, PUT dan DELETE – memiliki makna operasional khusus untuk menghindari ambiguitas. Berikut metode HTTP yang umum digunakan dalam arsitektur berbasis REST.

1) GET, menyediakan hanya akses baca pada resource 2) PUT, digunakan untuk menciptakan resource baru 3) DELETE, digunakan untuk menghapus resource

4) POST, digunakan untuk memperbarui resource yang ada atau membuat resource baru

5) OPTIONS, digunakan untuk mendapatkan operasi yang disupport pada resource

Sebuah client mengirimkan sebuah data atau request melalui HTTP Request dan kemudian server merespon melalui HTTP Response.

Komponen dari http request yaitu :

1) Verb, HTTP method yang digunakan misalnya GET, POST, DELETE, PUT dll.

2) Uniform Resource Identifier (URI) untuk mengidentifikasikan lokasi resource pada server.

(31)

3) HTTP Version, menunjukkan versi dari HTTP yang digunakan, contoh HTTP v1.1.

4) Request Header, berisi metadata untuk HTTP Request. Contoh, type client/browser, format yang didukung oleh client, format dari body pesan, seting cache dll.

5) Request Body, konten dari data.

Sedangkan komponen dari http response :

1) Status/Response Code, mengindikasikan status server terhadap resource yang direquest. misal : 404, artinya resource tidak ditemukan dan 200 response OK.

2) HTTP Version, menunjukkan versi dari HTTP yang digunakan, contoh HTTP v1.1.

3) Response Header, berisi metadata untuk HTTP Response. Contoh, type server, panjang content, tipe content, waktu response, dll

4) Response Body, konten dari data yang diberikan.

2.3 Hipotesis

Hipotesis dari penelitian ini yaitu dengan sistem absensi berbasis teknologi RFID ini dapat membantu mahasiswa dalam melakukan absensi menjadi lebih cepat dan tingkat keberhasilan yang mencapai 90%.

(32)

18 BAB III

METODOLOGI PENELITIAN

Metodologi penelitian adalah proses atau cara ilmiah untuk mendapatkan data yang akan digunakan untuk keperluan penelitian. Pada bab ini akan dipaparkan tentang mekanisme perancangan alat mulai dari perancangan sistem, perancangan perangkat keras.

3.1 Alat dan Bahan

Berdasarkan identifikasi kebutuhan dalam melakukan penelitian ini yang berjudul “PERANCANGAN SISTEM ABSENSI DENGAN KARTU TANDA MAHASISWA BERBASIS TEKNOLOGI RFID MENGGUNAKAN LOKAL SERVER DAN MYSQL DATABASE” didapatkan beberapa alat dan bahan yang dibutuhkan agar penelitian ini dapat selesai.

3.1.1 Alat

Penelitian ini membutuhkan alat guna proses pembuatan mekanik, sistem elektronis, sistem program maupun proses penelitian. Tabel 3.1 menujukan alat yang dibutuhkan

Tabel 3.1 Alat yang dibutuhkan

No Alat Nama Alat Keterangan

1. Mekanik 3D Printer

Anycubic i3 Mega

Untuk mencetak mekanik perancangan alat.

Obeng + dan - Untuk mengencangkan Baut Hex Key Untuk mengencangkan baut

(33)

No Alat Nama Alat Keterangan 2. Perangkat Lunak Arduino IDE

1.8.1

Untuk memprogram Wemos D1 Mini

Autodesk Inventor

Untuk mendesain 3D casing alat

Ultimaker Cura 4.3

Untuk mengkonversi format .stl menjadi .gcode (untuk

proses cetak 3D Printer) Visual Studio

Code

Untuk memprogram tampilan website

XAMPP Untuk membuat server buatan 3. Elektronis Solder Station Untuk melunakan tenol.

Timah Menambungkan komponen Attractor Untuk menyedot timah.

3.1.2 Bahan

Bahan yang digunakan meliputi bahan yang digunakan untuk perakitan mekanik dan perakitan elektronis. Tabel 3.2 menunjukan bahan-bahan yang digunakan.

Tabel 3.2 bahan yang dibutuhkan

No Bahan Jumlah Spesifikasi

1. Wemos D1 Mini V3 1 Pcs ESP8266

2. Modul RFID PN532 1 Pcs Komunikasi SPI

(34)

No Bahan Jumlah Spesifikasi

3. LCD Oled 0.96 I2C 1 Pcs Komunikasi I2C

4. Buzzer 1 Pcs 5v Buzzer

5. Filamen PLA+ 5 Meter PLA Putih 6. Kabel Jumper 2 Meter 0.5mm 7. Resistor ¼ Watt 1 Pcs 2.000 ohm 8. Kabel Downloader 1 Pcs Micro US

9. Timah 2 Meter -

10. Baut 4 Pcs Ukuran M2

3.2 Tahapan Penelitian

Tahapan penelitian ini dilakukan untuk mengetahui alur penelitian dari mulai studi literatur hingga tahap penulisan laporan. Berikut ini tahapan dari proses penelitian yang digunakan :

1) Studi Literatur

Merupakan tahap dimana peneliti mengumpulkan beragam materi dari berbagai sumber tertulis seperti jurnal, buku, arsip, maupun media elektronis seperti youtube, github, dll

2) Perancangan Sistem

Merupakan tahap perancangan sistem dari alat yang dibuat mulai dari sistem elektroniks, sistem mekanik hingga sistem pemrograman.

3) Implementasi Sistem

Merupakan tahap dimana hasil dari perancangan sistem diimplementasilan secara nyata agar dapat diuji coba secara langsung.

(35)

4) Pengujian Sistem

Merupakan tahap dilakaukan pengujian untuk membuktikan apakah alat yang dibuat sudah menyelesaikan rumusan masalah atau belum.

5) Penyusunan Laporan

Merupakan tahap akhir dimana hasil dari penelitian ini dituangkan kedalam sebuah laporan secara keseluruhan dari judul penelitian, landasan teori, tujuan penelitian, sampai kesimpulan dari penelitian ini.

3.3 Perancangan Sistem Alat

Penelitian ini menggunakan beberapa piranti yang dikendalikan seutuhnya oleh Wemos D1 Mini. Berbagai macam piranti tersebut disusun sedemikian rupa sehingga membentuk topologi sistem seperti gambar 3.1

Gambar 3.1 Topologi Sistem

Dari gambar diatas Routher digunakan sebagai media penghubung antara server dengan alat absesnsi menggunakan jaringan Wifi. Server yang digunakan yaitu server buatan dengan menggunakan aplikasi XAMPP yang terinstall pada sebuah laptop. Pada server tersebut terdapat database MYSQL dimana akan menyimpan seluruh data mahasiswa maupun data history dari tap kartu mahasiswa.

(36)

Modul PN532 digunakan sebagai media untuk membaca data kartu RFID.

Modul ini dihubungkan dengan Wemos D1 Mini dengan komunikasi Serial Peripheral Interface (SPI). Sedangkan LCD Oled 0.96 dihubungkan dengan Wemos D1 Mini menggunakan komunikasi Inter Integrated Circuit (I2C).

3.4 Perancangan Mekanik Alat

Box yang digunakan terbuat dari bahan ABS yang dicetak menggunakan 3D Printer pada bagian atas dan bawah. Seluruh modul yang digunakan dimasukan pada box tersebut dan untuk LCD Oled 0.96” ditampilkan menonjol pada bagian penutup atas yang sudah diberi ruang.

Gambar 3.2 Desain Mekanik

Pengkabelan alat ini tidak menggunakan PCB melainkan langsung dihubungkan dengan menggunakan kabel, hal ini dilakukan agar mempermudah proses troubleshooting apabila terdapat kesalahan maupun perubahan sistem.

(37)

Gambar 3.3 menunjukan tata letak dari modul-modul yang sudah disebutkan pada poin perancangan sistem alat.

Gambar 3.3 Tampilan Bagian Dalam Badan Robot

Keterangan perangkat yang ada didalam alat yang ditampilkan pada gambar diatas ditunjukan pada tabel 3.1

Tabel 3.1 Keterangan Modul yang Digunakan

Nomor Keterangan

1 Wemos D1 Mini 2 Modul RFID PN532 3 LCD OLED 0.96’

4 Buzzer 5v 3.5 Perancangan Sistem Elektronis Alat

Kendali utama dari sistem ini menggunakan papan Wemos D1 yang diletakan pada bagian dalam box. Terdapat berbagai masukan dalam sistem ini antara lain : Modul RFID PN532 yang digunakan untuk mengakses kartu RFID. Komunikasi

(38)

antara modul RFID PN532 dengan wemos D1 mini yaitu mengunakan komunikasi SPI dimana pin SCK mendapatkan pin D5, pin MISO mendapatkan pin D6, pin MOSI mendapatkan pin D7 dan pin SS mendapatkan pin D8 pada Wemos D1 mini.

Berdasarkan landasan teori pada bab II maka untuk mode komunikasi SPI pada modul PN531 switch 1 dibuat off dan switch 2 dibuat on. Gambar 3.4 menunjukan skematik dari sistem elektronik yang dibuat.

Gambar 3.4 Skematik Rangkaian

Untuk piranti keluaran pada alat ini terdapat LCD OLED 0.96 dan Buzzer.

LCD digunakan sebagai penampil data dan informasi terkait dengan data mahasiswa yang diambil dari database. Konfigurasi komunikasi yang digunakan yaitu komunikasi IIC. Pin SDA LCD mendapatkan pin D2 Wemos D1 Mini dan pin SCL LCD mendapatkan pin D1 Wemos D1 Mini. Piranti Buzzer akan digunakan sebagai indikator bunyi untuk mengisyaratkan bahwa proses absensi sudah berhasil dilakukan atau terjadi suatu error. Buzzer dikonfigurasi menjadi output active high dan masuk pada Wemos D1 Mini pada pin D3.

Catu daya yang digunakan untuk menjalankan sistem ini yaitu menggunakan kabel micro USB yang terhubung dengan PC atau laptop. Metode ini digunakan

(39)

agar sekaligus dapat dilakukan komunikasi secara langsung antara wemos D1 mini dengan komputer jika dibutuhkan.

3.6 Perancangan Program Arduino

Aplikasi yang digunakan untuk memprogram Wemos D1 Mini sebagai kendali utama dari alat ini adalah Arduino IDE. Arduino IDE dibuat dari bahasa pemrograman JAVA. Arduino IDE juga dilengkapi dengan library C/C++ yang biasa disebut Wiring yang membuat operasi masukan dan keluaran menjadi lebih mudah. Arduino IDE ini dikembangkan dari software Processing yang dirombak menjadi Arduino IDE khusus untuk pemrograman dengan Arduino. Untuk mempermudah proses pemrograman maka peneliti menggunakan bantuan library yang sudah disediakan oleh para developer. Metode ini dipilih agar penulisan program menjadi lebih singkat dan proses pengaksesan seluruh piranti yang digunakan menjadi lebih mudah.

Terdapat tujuh jenis library yang digunakan pada sistem ini yaitu : 1) Library Wire.h untuk mengakses komunikasi I2C.

2) Library SPI.h untuk mengkases komunikasi SPI (Serial Peripheral Interface)

3) Library PN532_SPI.h untuk mengakses komunikasi SPI antara Wemos D1 mini dengan Modul RFID PN532.

4) Library PN532.h untuk mengakses fungsi-fungsi modul RFID PN532, 5) Library Adafruit_SSD1306.h untuk mengakses penampil LCD Oled 0.96

inch dengan jenis komunikasi I2C.

6) Library Adafruit_GFX.h untuk mengakses fungsi-fungsi grafik yang akan ditampilkan pada LCD OLED.

7) Library ESP8266WiFi.h untuk mengakses komunikasi antara Wemos D1 Mini dengan jaringan internet.

(40)

Gambar 3.5 menunjukan aliran program mulai dari pembacaaan kartu RFID hingga mengirimkan request data ke database.

Gambar 3.5 Flowchart Program Arduino

UID merupakan identitas dari sebuah kartu RFID dimana setiap kartu RFID memilik identitas yang berbeda. Nantinya UID ini akan dijadikan sebuah pembeda atau identitas setiap mahasiswa. Berikut ini program Arduino IDE untuk membaca UID dari kartu RFID kemudian mengirimkan request data ke server :

void RFID_Function() {

String mahasiswa_uid = "";

success = nfc.readPassiveTargetID(PN532_MIFARE_ISO14443A, uid,

&uidLength);

if (success) { s lcd.clearDisplay();

Serial.println("Read data From Database");

lcd.setCursor(0, 0);

lcd.print("REQUEST DATA SERVER");

(41)

lcd.display();

for (uint8_t i = 0; i < uidLength; i++) { String uidBuff = String(uid[i], HEX);

mahasiswa_uid.concat(uidBuff);

}

Serial.println(mahasiswa_uid);

lcd.setCursor(0, 10);

lcd.print("WAIT DATA SERVER");

lcd.display();

String readDatabase = requestData("check", mahasiswa_uid);

lcd.drawRect(0, 26, 128, 30, WHITE);

if (readDatabase == "error") { Serial.println("ERROR");

lcd.setCursor(3, 30);

lcd.print("ERROR");

lcd.display();

beep(5, 100);

} else {

Serial.print("Nama Mahasiswa : ");

Serial.println(readDatabase);

lcd.setCursor(3, 30);

lcd.print(readDatabase);

lcd.display();

if (readDatabase == "NOT REGISTERED") beep(2, 100);

else beep(1, 100);

}

while (nfc.readPassiveTargetID(PN532_MIFARE_ISO14443A, uid,

&uidLength)) {}

lcd.clearDisplay();

} }

(42)

Pada program diatas terdapat sebuah perintah untuk memanggil function

“requestDat”a. Function tersebut berfungsi untuk mengirimkan request ke server dengan load carry berupa data ruangan dan data UID RFID yang sama-sama memiliki jenis data string. Berikut ini program mengirimkan request data ke server untuk mendapatkan data nim dan nama mahasiswa :

String requestData (String prefix, String a) { String _nama = "";

WiFiClient client;

if (!client.connect(host, httpPort)) { Serial.println("connection failed");

return "error";

}

String url = "http://";

url.concat(host);

url.concat("/rfid/getUID.php?");

url.concat("prefix=");

url.concat(prefix);

url.concat("&nim=");

url.concat(a);

Serial.print("Requesting URL: ");

Serial.println(url);

client.print(String("GET ") + url + " HTTP/1.1\r\n" + "Host: " + host + "\r\n" +

"Connection: close\r\n\r\n");

unsigned long timeout = millis();

while (client.available() == 0) { if (millis() - timeout > 5000) {

Serial.println(">>> Client Timeout !");

client.stop();

return "error";

} }

(43)

bool content = false;

while (client.available()) {

String line = client.readStringUntil('~');

if (content) { _nama = line;

break;

}

content = true;

}

return _nama;

}

3.7 Perancangan Database MYSQL

Pada penelitian ini database digunakan sebagai media penyimpanan data mahasiswa dan data history tapping Kartu Tanda Mahasiswa. Peneliti membuat database dengan nama RFID yang didalamnya terdapat 2 buah tabel untuk menyimpan data mahasiswa dan data history tapping seperti yang ditunjukan pada Gambar 3.7 dibawah ini.

Gambar 3.7 Struktur Database

Dalam database RFID terdapat dua buah tabel utama dalam perancangan sistem ini. Gambar 3.7 menunjukan tabel dari data mahasiswa yang berisikan mahasiswa_uid digunakan untuk menyimpan UID dari kartu RFID yang didaftarkan, atau bisa disebut sebagai identitas RFID mahasiswa dengan tipe data

(44)

varchar maksimum 20 karakter. mahasiswa_nim adalah data nim dari mahasiswa sesuai dengan ketentuan kampus dengan tipe data varchar maksimum 10 karakter.

mahasiswa_nama adalah identitas nama mahasiswa dengan tipe data varchar maksimum 100 karakter dan mahasiswa_email adalah data email mahasiswa dengan tipe data varchar maksimum 100 karakter. Tabel ini kemudian diberi nama tb_mahasiswa.

Gambar 3.7 Database tb_mahasiswa

Sedangkan untuk menyimpan data history tapping kartu dibuat struktur tabel history_id yang berfungsi untuk membuat nomor urut dalam perekaman data.

Data yang digunakan yaitu bertipe integer maksimum 11 karakter dengan konfigurasi AUTO_INCEREMENT, artinya nilai dari data tersebut akan otomaris bertambah jika terdapat data baru masuk pada tabel tersebut. history_id digunakan sebagai menyimpan data UID dari mahasiswa dengan tipe data varchar maksimum 20 karakter. history_waktu digunakan untuk menyimpan data tanggal dan waktu saat tapping dilakukan dan history_ruangan untuk menyimpan dara ruangan dari alat yang digunakan.

Gambar 3.8 Database tb_taphistory

(45)

3.8 Perancangan Program PHP dan HTML

Program PHP dan HTML pada penelitian ini digunakan untuk menampilkan database pada browser agar lebih mudah dalam proses pengamatan, peambahan data, pengeditan data maupun penghapusan data. Terdapat 3 buah tampilan utama pada perancangan interface website yaitu History yang akan menampilan data history tapping yang sudah pernah dilakukan, Data Mahasiswa yang memuat seluruh data mahasiswa yang sudah pernah didaftarkan dan Registration digunakan untuk mendaftarkan Kartu Tanda Mahasiswa baru. Tampilan tersebut ditunjukan pada gambar 3.9 dibawah ini.

Gambar 3.9 Tampilan Data Mahasiswa

Tampilan diatas seluruhnya dibuat menggunakan bahasa pemrograman PHP: Hypertext Preprocesso (PHP), HyperText Markup Language (HTML), Cascading Style Sheets (CSS) dan jQuey Javascript dengan bantuan aplikasi Visual Studio Code. Untuk membuat proses perancangan menjadi lebih mudah maka peneliti menggunakan css dari bootstrap, sehingga peneliti tinggal memanggil parameter css mana yang ingin digunakan. jQuery javascript digunakan untuk meng-compress berbagai baris atau line kode ke dalam satu buah fungsi sehingga tidak perlu menulis kembali semua baris kode hanya untuk menyelesaikan satu task.

(46)

Pada menu Registration pengguna diharuskan mengisi seluruh form yang sudah disediakan. Isi form tersebut yaitu ID yang akan berisi dengan UID RFID, cara untuk mengiri form ini yaitu dengan cara menempelkan kartu pada alat dan otomatis form akan terisi. Kemudian Nama berisi nama mahasiswa NIM berisi nomor induk mahasiswa dan email address berisi email mahasiswa. Ketika ada form yang tidak diisi maka akan terdapat peringatan bahwa data kurang, tetapi jika seluruh form sudah diisi dan ditekan tombol save maka data mahasiswa tersebut akan langsung disimpan pada database. Menu registrasi dapat dilihat pada gambar 3.10

Gambar 3.10 Tampilan Menu Registrasi

Menu berikutnya yaitu adalah History dimana pada halaman ini akan ditampilkan seluruh data dari rekam data hasil tapping kartu dari alat. Data yang ditampilkan pada halaman ini yaitu History ID, UID Mahasiswa, Nama Mahasiswa, Waktu Tapping dan Ruangan Alat. Ketika alat melakukan tapping maka secara otomatis alat tersebut akan mengirimkan perintah kepada lokal server untuk melakukan perekaman data dan disimpan pada database tabel tb_taphistory.

Gambar 3.11 menjukan tampilan dari halaman History

(47)

Gambar 3.11 Tampilan History Tap Kartu

Pada sisi program pada lokal server terdapat sebuah file PHP yang terdapat fungsi utama untuk menerima request dari alat dan meneruskan data dari alat kepada lokal server, nama file tersebut yaitu gerUID.php yang berada pada folder RFID. Nantinya file ini yang akan selalu diakses oleh alat untuk melakukan request dengan metode REpresentational State Transfer (REST).

Gambar 3.11 menunjukan aliran program ketika mendapatkan sebuah request dari Wemos D1 mini hingga mengirimkan kembali data respond. Pada program PHP juga terdapat fungsi untuk mengecek apakah koneksi dengan database berhasil atau tidak, jika berhasil maka program PHP akan mengirimkan data mahasiswa yang dimaksud. Tetapi, apabila koneksi ke database terjadi error maka program PHP akan memberikan respond error kepada Wemos D1 Mini.

(48)

Gambar 3.11 Flowchart Program PHP

(49)

Berikut ini program untuk menerima data dari Wemos D1 Mini kemudian menyimpan pada database dan memberikan respond kepada Wemos D1 berupa data mahasiswa agar diolah lebih lanjut oleh Wemos D1 Mini.

<?php

$dbuser = 'root';

$dbpass = '';

$dbhost = 'localhost';

$dbname = 'RFID';

$room = "";

$nim = "";

$nama = "";

$connect = @mysqli_connect($dbhost, $dbuser, $dbpass, $dbname);

if (!$connect) {

//echo "Error: " . mysqli_connect_error();

exit();

} else {

//echo "Koneksi ke Database Berhasil!<br><br>";

}

if (!empty($_GET["room"])) { $room = $_GET["room"];

}

if (!empty($_GET["nim"])) { $nim = $_GET["nim"];

$Write = "<?php $" . "UIDresult='" . $nim . "'; " . "echo $" .

"UIDresult;" . " ?>";

file_put_contents('UIDContainer.php', $Write);

}

$query = "SELECT mahasiswa_uid, mahasiswa_nama, mahasiswa_nim FROM tb_mahasiswa";

$result = mysqli_query($connect, $query);

if (mysqli_num_rows($result) > 0) { $row_index = 0;

while ($row = mysqli_fetch_assoc($result)) { if ($row["mahasiswa_uid"] == $nim) { $row_index = $row;

} }

(50)

if ($row_index == 0) { echo "~NOT REGISTERED~";

} else {

$now = date_create('now', timezone_open('Asia/Jakarta'))-

>format('Y-m-d H:i:s');

$query = "INSERT INTO tb_taphistory (history_id, history_uid, history_waktu, history_ruangan) VALUES (null,'$nim','$now','$room')";

if (mysqli_query($connect, $query)) {

echo "~" . $row_index["mahasiswa_nim"] . "/" .

$row_index["mahasiswa_nama"] . "~";

} else {

echo "~ERROR LOG~";

} } }

3.9 Cara Analisis

Pada penelitian ini dilakukan beberapa analisis agar sistem yang direncanakan dapat berfungsi dengan baik. Berikut ini adalah langkah kerja dalam melakukan analisa :

1) Menghubungkan alat dengan power supply.

2) Mendaftarkan beberapa kartu RFID sebagai Kartu Tanda Mahasiswa (KTM) 3) Menempelkan seluruh kartu RFID pada alat tersebut.

4) Mencatat hasil waktu dan hasil pembacaan dari lokal server yang ditampilkan pada alat tersebut.

5) Menganalisa hasil data yang didapatkan.

(51)

37 BAB IV

HASIL DAN PEMBAHASAN

Pada bab ini akan dijelaskan tentang dari hasil alat yang dibuat. Hasil tersebut dibagi menjadi hasil implementasi alat, hasil pengujian fungsional alat, pengujian parsing data dan hasil pengujian sistem.

4.1 Hasil Implementasi Alat

Berdasarkan perancangan alat yang dibahas pada bab sebelumnya dilakukan implementasi pembuatan alat agar dapat dilakukan percobaan dan analisa data.

Gambar 4.1 menunjukan hasil implemntasi alat tampak depan.

Gambar 4.1 Alat Tampak Depan

Pada bagian dalam box berisikan 4 buah piranti yang disebutkan pada bab sebelumnya yaitu Wemos D1 Mini sebagai kendali utama alat, Modul RFID PN532, Penampil LCD 0.96 inch dengan komunikasi IIC, dan buzzer sebagai isyarat bunyi. Seluruh perangkat tersebut dihubungkan dengan menggunakan kabel jumper deret. Untuk memasangkan piranti tersebut pada box yaitu dengan menggunkana baut dan dikencangkan pada tempat baut yang sudah disediakan.

Tampilan bagian dalam box ditunjukan pada gambar 4.2 dibawah ini

(52)

Gambar 4.2 Alat Tampak Dalam 4.2 Hasil Pengujian Fungsional

4.2.1 Hasil Pengujian UID RFID

Pada pengujian ini dilakukan untuk mengetahui fungsional program dan alat yang dibuat untuk membaca UID dari kartu RFID. Dari seluruh kartu yang digunakan untuk percobaan dilakukan pembacaan UID untuk mengetahui identitas dari masing-masing kartu RFID tersebut yang nantinya akan dijadikan sebagai identitas setiap mahasiswa. Tabel 4.1 menunjukan data hasil dari pembacaan 6 buah kartu RFID.

Tabel 4.1 Detail UID Kartu RFID

Nomor Kartu UID RFID

Kartu RFID 01 F6 52 E3 50

Kartu RFID 02 46 EC D1 50

Kartu RFID 03 B6 6D C8 50

Kartu RFID 04 E1 CB 86 1E

Kartu RFID 05 66 4D D4 50

Kartu RFID 06 96 BC E2 50

(53)

Dari data pada tabel 4.1 membuktikan bahwa setiap kartu RFID memiliki sebuah kode unik yang disebut dengan UID yang berbeda-beda. UID sendiri Sehingga UID tersebut bisa digunakan sebagai identitas mahasiswa.

4.2.2 Hasil Pengujian Koneksi Jaringan LAN

Pada pengujian ini dilakukan untuk mengetahui fungsional program dan alat yang dibuat untuk terhubung pada jaringan LAN. Pengujian ini akan menampilkan hasil berupa teks dan alamat IP pada serial monitor. Program yang digunakan menggunakan bantuan dari library ESP8266Wifi.h bawaan dari tim ESP8266 sebagai penyedia development board berbasis wifi yang digunakan. Berikut ini program untuk melakukan uji coba koneksi ke jaringan wifi :

#include <Arduino.h>

#include <ESP8266WiFi.h>

#define WIFI_SSID "Portable Hotspot"

#define WIFI_PASSWORD "Password2018"

void setup() {

Serial.begin(9600);

WiFi.begin(WIFI_SSID, WIFI_PASSWORD);

Serial.println("");

Serial.println("CONNECTING WIFI");

while (WiFi.status() != WL_CONNECTED) { delay(500);

}

Serial.println("CONNECTED");

Serial.println("IP: ");

Serial.println(WiFi.localIP());

}

void loop() {

}

Pengujian ini menggunakan SSID bernama “Portable Hotspot” dengan password “Password2018” kemudian hasil dari perintah program akan ditampilkan pada serial monitor dengan baudrate 9600 dan pada gambar 4.3 menunjukan hasil dari pengujian koneksi jaringan dimana alat mendapatkan alamat IP 192.168.9.4 dari jaringan yang terhubung.

(54)

Gambar 4.3 Pengujian Koneksi Jaringan LAN 4.2.3 Hasil Pengujian Tampilan LCD

Pengujian ini dilakukan dengan menampilkan beberapa teks dan variabel pada LCD OLED 0.96 inch untuk memastikan bahwa piranti tersebut berkerja dengan baik. Berikut ini program untuk melakukan pengujian LCD :

#include <Wire.h>

#include <Adafruit_GFX.h>

#include <Adafruit_SSD1306.h>

#define SCREEN_WIDTH 128

#define SCREEN_HEIGHT 64

#define OLED_RESET -1

Adafruit_SSD1306 lcd(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);

int data = 3543;

void setup() {

Serial.println("Init Display");

if (!lcd.begin(SSD1306_SWITCHCAPVCC, 0x3C)) { Serial.println(F("SSD1306 allocation failed"));

while (1) { }

}

lcd.setTextColor(WHITE);

}

void loop() {

lcd.setCursor(0, 0);

lcd.print("HELLO WORLD");

lcd.setCursor(0, 20);

lcd.print("Data : ");

lcd.print(data);

lcd.display();

lcd.clearDisplay();

}

(55)

Perintah lcd.setCursor(0, 0); merupakan perintah untuk menentukan koordinat teks yang akan ditampilkan, parameter yang digunakan pada perintah ini yaitu koordinat X (posisi kolom) dan koordinay Y (posisi baris). Perintah lcd.print("HELLO WORLD"); untuk mencetak teks sesuai dengan keinginan pemrogram, dalam kasus ini yang dicetak adalah teks “HELLO WORLD”. Dari hasil pengujian didapatkan hasil bahwa program tersebut dapat menampilkan teks pada LCD seperti yang diperlihatkan gambar 4.4 dibawah ini.

Gambar 4.4 Hasil Pengujian Tampilan LCD 4.2.4 Hasil Pengujian Sistem REST

Pengujian ini dilakukan untuk memastikan bahwa sistem komunikasi antara Wemos D1 Mini dengan lokal server berjalan dengan baik. Alat akan mengirimkan sebuah request ke lokal server dan kemudian alat tersebut menunggu hingga mendapatkan respond dari server. Dalam pengujian ini alamat lokal server yang digunakan yaitu 192.168.100.1 dan direktori file php yang diakses adalah folder rfid/test.php yang berada pada lokal server. Berikut ini format REST yang dikirimkan ke slokal erver untuk melakukan pengujian.

http://192.168.100.1/rfid/test.php?room=B2.10&nim=181042033

Request ditujukan pada folder rfid dan file test.php dengan membawa konten data “room” berisikan “B2.10” dan “nim” berisikan “181042033” yang kemudian akan dibaca oleh program PHP dan akan memberikan response kembali kepada Wemos D1 Mini. Dalam kasus ini response yang diberikan yaitu teks "Koneksi REST Berhasil", nomor ruangan dan nim mahasiswa. Berikut ini program PHP untuk menerima request dari Wemos D1 Mini.

(56)

<?php

$room = $_GET["room"];

$nim = $_GET["nim"];

echo "Koneksi REST Berhasil";

echo "<br>";

echo "Ruangan : " . $room;

echo "<br>";

echo "Nim : " . $nim;

Berikut ini program untuk mengirimkan request dari Wemos D1 Mini ke lokal server.

#include <Arduino.h>

#include <ESP8266WiFi.h>

#define WIFI_SSID "Portable Hotspot"

#define WIFI_PASSWORD "Password2018"

const char* host = "192.168.9.2";

const int httpPort = 80;

void setup() {

Serial.begin(115200);

WiFi.begin(WIFI_SSID, WIFI_PASSWORD);

Serial.println("");

Serial.println("CONNECTING WIFI");

while (WiFi.status() != WL_CONNECTED) { delay(500);

}

Serial.println("CONNECTED");

Serial.println("IP: ");

Serial.println(WiFi.localIP());

WiFiClient client;

if (!client.connect(host, httpPort)) { Serial.println("connection failed");

}

client.print(String("GET

http://192.168.9.2/rfid/test.php?room=B2.10&nim=181042033") + "

HTTP/1.1\r\n" +

"Host: " + host + "\r\n" + "Connection: close\r\n\r\n");

unsigned long timeout = millis();

while (client.available() == 0) { if (millis() - timeout > 5000) {

Serial.println(">>> Client Timeout !");

Referensi

Garis besar

Dokumen terkait

Adapun tujuan utama dalam pembuatan karya ini merupakan suatu keinginan untuk mentransformasikan salah satu kearifan lokal Gorontalo yaitu kisah nabi Ayyub AS

Jadi yang disebut dengan distorsi pada seni lukis adalah perubahan bentuk suatu karya yang diubah oleh seorang seniman yang dibuat dan digambarkan dengan cara dilebih-lebihkan

Dari Gambar 1 di atas terlihat bahwa pada pengukuran glukosa darah 30 menit setelah pemberian glukosa, mencit yang diberi EEDK 50, 100, dan 200 mg/kg bb menunjukkan rata-rata

Tujuan dari proses keperawatan adalah untuk mengidentifikasi dan mendapatkan data dari masalah yang dialami klien, menentukan prioritas masalah, menyusun rencana tindakan,

Zakat Performing Ratio berpengaruh positif terhadap Good Corporate Governance, karena nilai zakat yang dimiliki bank syariah meningkat dari tahun ke tahun yang artinya bank

Data yang digunakan untuk menyusun Perancangan Buku Media Pendukung Pembelajaran Teknik Dasar Futsal Remaja Surabaya ini berasal dari sumber data primer dan

Dari hasil penelitian dapat disimpulkan penambahan laktosa pada pengencer posfat kuning telur untuk menyimpan semen ayam hutan hijau pada suhu 3-5 o C selama 48 jam mampu

Dari ketiga variasi geometri pada carabiner,  dapat kita ketahui bahwa pengaruh variasi geometri terhadap kekuatan material dengan tegangan tarik / tegangan von misses  sebesar