• Tidak ada hasil yang ditemukan

PROTOTIPE SISTEM PENCATATAN KELUAR MASUK BARANG MENGGUNAKAN RFID ISO 18000-6 DAN PEMBAYARAN MENGGUNAKAN NFC ISO 14443A

N/A
N/A
Protected

Academic year: 2019

Membagikan "PROTOTIPE SISTEM PENCATATAN KELUAR MASUK BARANG MENGGUNAKAN RFID ISO 18000-6 DAN PEMBAYARAN MENGGUNAKAN NFC ISO 14443A"

Copied!
16
0
0

Teks penuh

(1)

PROTOTIPE SISTEM PENCATATAN KELUAR MASUK BARANG

MENGGUNAKAN RFID ISO 18000-6 DAN PEMBAYARAN

MENGGUNAKAN NFC ISO 14443A

Oleh

Jati Kristianto

NIM : 622013009

Skripsi

Untuk melengkapi salah satu syarat memperoleh

Gelar Sarjana Teknik

Program Studi Sistem Komputer

Fakultas Teknik Elektronika Dan Komputer

Universitas Kristen Satya Wacana

Salatiga

(2)
(3)
(4)
(5)
(6)

ii

ABSTRACT

Activities at the store, such as the circulation of goods and the payment process at

the checkout counter is something that requires extra effort and time. In addition, it takes

precision in the calculation of money. Moreover, cash are considered inefficient because

of the high cost of printing money. The purpose of this research is to make buying and

selling activity at store become more save time and energy, and not much use of currency.

In this thesis, we designed and created a prototype of goods logging system using

RFID ISO 18000-6 and Raspberry Pi, as well as payment using NFC ISO 14443A and

Arduino Mega, which can help store owner and manager in monitoring the store. Each

item will be affixed to RFID Tags. When entering the gate, the data will be read by the

RFID reader and sent to the server via API with JSON format. For the payment system,

the NFC Tag is affixed to the phone. Then the data is read by NFC reader and sent to the

server through API with JSON format.

The recording system successfully reads the ID and the contents of the RFID Tag,

then puts it into the database. Similarly, the payment system can do recording readings

and put them into the database. Then, the result of a transaction is printed using a thermal

printer. The information data of the profit can be downloaded in ".xls" format. The

average recording time of items required to store data from RFID Tags to a database is

2.52 seconds. Meanwhile, the average time required for the payment program to conduct

transactions for five products is 14.41 seconds. RFID reader can read 20 tags at once in 3

(7)

iii

KATA PENGANTAR

Puji dan syukur diucapkan ke hadirat Tuhan Yang Maha Esa yang telah

memberikan rahmat dan karunia-Nya sehingga perancangan dan penulisan skripsi ini

dapat selesai sebagai syarat untuk menyelesaikan studi pada Fakultas Teknik Elektronika

dan Komputer Universitas Kristen Satya Wacana.

Dalam proses penyelesaian skripsi ini tidak terlepas dari bantuan berbagai pihak

baik secara moral maupun materiil. Oleh karena itu, penulis ingin mengucapkan terima

kasih kepada:

1. Bapak Banu Wirawan Yohanes, M.CompSc, Bapak Darmawan Utomo, M.Eng

dan Bapak Saptadi Nugroho, M.Sc atas bimbingan, saran, dan nasihat yang telah

diberikan selama mengerjakan skripsi.

2. Kedua orang tua terkasih, adik dan Adhitya Eka Prakarti atas dukungan baik

materiil dan moral yang telah diberikan untuk penulis

3. Lundy Orlando Tjandra, Teman dan sahabat, SISKOM 2013 dan FTEK 2013 dan

teman-teman Fakultas Teknik Elektronika dan Komputer lainnya yang telah

menemani dan memberikan doa, dukungan, semangat, hiburan, dan nasehat

kepada penulis.

4. Seluruh dosen dan karyawan Fakultas Teknik Elektronika dan Komputer,

terkhusus Mbak Yola, Mbak Ragil, dan Mbak Rista dalam membantu kelancaran

penyelesaian skripsi penulis.

5. Seluruh pihak yang membantu penulis dalam menyusun skripsi ini yang tidak

dapat disebutkan satu per satu.

Dalam penulisan skripsi ini disadari masih banyak kekurangan baik dalam isi

maupun penyampaian dan dalam penulisannya, untuk itu kritik dan saran yang

membangun diharapkan penulis demi perbaikan skripsi ke depannya.

Salatiga, Juli 2017

Penulis,

(8)

iv

DAFTAR ISI

INTISARI ...i

ABSTRACT ... ii

KATA PENGANTAR... iii

DAFTAR ISI ... iv

DAFTAR GAMBAR ...vii

DAFTAR TABEL ... ix

DAFTAR KODE ... x

DAFTAR SINGKATAN ... xi

BAB I PENDAHULUAN ... 1

1.1. Tujuan ... 1

1.2. Latar Belakang ... 1

1.2.1. Pendahuluan ... 1

1.2.2. Solusi Permasalahan ... 2

1.3. Spesifikasi ... 3

1.4. Sistematika Penulisan ... 3

BAB II DASAR TEORI ... 5

2.1. Client Side ... 5

2.1.1. Radio Frequency Identification (RFID) ... 5

2.1.1.1. Reserve memory ... 6

2.1.1.1.1. Kill Password ... 6

2.1.1.1.2. Acccess password ... 7

2.1.1.2. EPC memory ... 7

2.1.1.3. ID Memory ... 7

2.1.1.4. User Memory ... 7

2.1.2. Near Field Communication ( N F C ) ... 8

2.1.3. Raspberry Pi ... 13

2.1.4. Arduino ... 14

2.1.5. Ethernet Shield ... 15

(9)

v

2.1.7. Liquid Crystal Display (LCD) dan Inter Integrated Circuit (I2C) ... 18

2.1.8. Buzzer ... 20

2.1.9. Tiny Thermal Printer ... 20

2.2. Server Side ... 21

2.2.1. Representional State Transfer Application Programming Interface ... 21

2.2.1.1. Perancangan Identifier atau URL... 21

2.2.1.2. Perancangan Interaksi dengan HTTP ... 21

2.2.1.3. Perancangan Metadata ... 22

2.2.1.4. Perancangan Representasi ... 24

2.2.2. Java Script Object Notation (JSON)... 24

2.2.3. Laravel... 25

2.2.4. Hypertext Preprocessor (PHP)... 26

2.2.5. MySQL ... 27

2.2.6. XAMPP ... 27

BAB III PERANCANGAN ... 28

3.1. Arsitektur Sistem ... 28

3.2. Perancangan Client ... 33

3.1.1. Perangkat Keras Client ... 33

3.1.1.1 Perangkat Keras Pencatatan Barang ... 33

3.1.1.1.1. Raspberry Pi ... 33

3.1.1.1.2. RFID ... 34

3.1.1.1.3. RTC ... 35

3.1.1.2. Perangkat Keras Pembayaran ... 37

3.1.1.2.1. Arduino ... 38

3.1.1.2.2. NFC ... 38

3.1.1.2.3. Ethernet Shield ... 39

3.1.1.2.4. I2C dan LCD ... 39

3.1.1.2.5. Tiny Thermal Printer ... 39

3.1.1.2.6. RTC ... 40

3.1.1.2.7. Buzzer ... 41

3.1.3. Perangkat Lunak Client ... 41

3.1.3.1. Perangkat Lunak Pencatatan Barang ... 41

(10)

vi

3.1.3.1.2. Request ... 43

3.1.3.1.3. JSON ... 43

3.1.3.2. Perangkat Lunak Pembayaran ... 44

3.1.3.2.1. Request ... 44

3.1.3.2.2. JSON ... 44

3.2 Perancangan Server ... 45

3.2.1. Laravel... 45

3.2.2. Fractal ... 51

3.2.3. Database... 52

BAB IV PENGUJIAN DAN ANALISIS ... 54

4.1. Pengujian Pencatatan Barang ... 54

4.1.1. Pembacaan Banyak Tag dengan Jangka Waktu ... 54

4.1.2. Pembacaan Tag yang Melewati Gerbang ... 57

4.1.3. Pembacaan Tag RFID pada Beberapa Jenis Barang ... 58

4.1.4. Pembacaan Tag RFID pada Alas Logam dengan Perantara Kertas ... 59

4.1.5. Pembacaan Tag RFID dengan Ketebalan Kertas yang Berubah-ubah ... 60

4.1.6. Pembacaan Tag RFID dengan Perubahan Jarak ... 62

4.2. Pengujian Pembayaran ... 63

4.2.1. Pembacaan Tag NFC pada Plastik dan Besi ... 63

4.2.3. Pembacaan Tag NFC pada Logam dengan Perantara ... 63

4.2.4. Pembacaan Tag NFC dengan Ketebalan yang Berubah-ubah ... 64

4.2.5. Pembacaan Dua Tag NFC Bersamaan ... 65

4.3. Pengujian Waktu Eksekusi ... 66

4.3.1. Pengujian Waktu Eksekusi Pencatatan Barang ... 66

4.3.2. Pengujian Waktu Eksekusi Pembayaran ... 68

4.4. Pengujian Sistem Secara Keseluruhan ... 69

BAB V KESIMPULAN DAN SARAN ... 75

5.1. Kesimpulan ... 75

5.2. Saran ... 76

(11)

vii

DAFTAR GAMBAR

Gambar 1.1. Persentase Rumah Tangga yang Memiliki/Menguasai

Telepon Seluler di Indonesia[2] ... 3

Gambar 2.1. Alamat Fisik RFID[4] ... 6

Gambar 2.2. Struktur Pesan NDEF[6] ... 10

Gambar 2.3. Struktur NDEF Record[8] ... 11

Gambar 2.4. Modul PN532 NFC RFID[12] ... 12

Gambar 2.5. Switch Untuk Memilih Komunikasi Modul[12] ... 12

Gambar 2.6. Raspberry Pi 2 Model B ... 13

Gambar 2.7. Pin Atmega 2560[13] ... 14

Gambar 2.8. Arduino Mega ... 15

Gambar 2.9. Ethernet Shield V1 ... 16

Gambar 2.10. Blok Diagram W5100[15] ... 16

Gambar 2.11. Modul RTC DS3231... 17

Gambar 2.12. Rangkaian DS321[16] ... 17

Gambar 2.13. Blok Diagram LCD[18] ... 18

Gambar 2.14. Fungsi dari Pin LCD[18] ... 18

Gambar 2.15. LCD Karakter 20X4 ... 19

Gambar 2.16. I2C PCF8574... 19

Gambar 2.17. Blok Diagram I2C PCF8574[19] ... 19

Gambar 2.18. Bentuk, Struktur, dan Simbol Buzzer Piezoelectric[20] ... 20

Gambar 2.19. Tiny Thermal Printer[28] ... 20

Gambar 2.20. Header Content-Type Berformat application/JSON ... 23

Gambar 2.22. MVC Laravel[25] ... 26

Gambar 3.1. Arsitektur Sistem ... 28

Gambar 3.2. Daftar Alir Sistem ... 29

Gambar 3.3. Diagram Alir Pencatatan Barang ... 30

Gambar 3.4. Diagram Alir Pembayaran ... 31

Gambar 3.5. Desain Alat Pencatatan Barang ... 31

Gambar 3.6. Desain Alat Pencatatan Barang 3 m ... 32

Gambar 3.7. Desain Alat Pembayaran... 32

Gambar 3.8. Perancangan Pencatatan Barang ... 33

(12)

viii

Gambar 3.10. RTC yang Terhubung ke Raspberry Pi ... 36

Gambar 3.11. Alamat RTC di Racpberry Pi ... 36

Gambar 3.12. Perancangan Pembayaran ... 37

Gambar 3.13. ERD Database ... 53

Gambar 4.1. Pengujian Banyak Tag dengan Jangka Waktu ... 54

Gambar 4.2. Grafik Keberhasilan Pengujian Banyak Tag dengan Jangka Waktu... 56

Gambar 4.3. Pengujian Pembacaan Tag RFID Pada Beberapa Jenis Barang ... 58

Gambar 4.4. Pengujian Pada Logam dengan Perantaraan Kertas ... 59

Gambar 4.5. Pembacaan Tag RFID dengan Ketebalan Kertas ... 60

Gambar 4.6. Pengujian Pembacaan Tag NFC Pada Plastik dan Besi ... 63

Gambar 4.7. Pengujian Pembacaan Tag NFC pada Logam dengan Perantara ... 64

Gambar 4.8. Pengujian Pembacaan Tag NFC dengan Ketebalan Berubah-ubah ... 64

Gambar 4.9. Pengujian Pembacaan Dua Tag NFC Secara Bersamaan ... 66

Gambar 4.10. Hasil Memasukkan Data Produk ke Database ... 70

Gambar 4.11. Hasil Memasukkan Data Stiker ke Database ... 70

Gambar 4.12. Hasil Pencatatan Masuk Toko... 71

Gambar 4.13. Hasil Pencatatan Barang Terjual ... 71

Gambar 4.14. Hasil Pencatatan Detail Transaksi ... 72

Gambar 4.15. Hasil Pembayaran dengan NFC ... 72

Gambar 4.16. Bukti Transaksi ... 73

Gambar 4.17. Keuntungan Minggu Ke-44 ... 73

Gambar 4.18. Keuntungan Bulan November ... 74

(13)

ix

DAFTAR TABEL

Tabel 2.1. Format Request Response[5] ... 8

Tabel 2.2. Detail Format Request Response[5] ... 8

Tabel 2.3. Return Code ... 8

Tabel 2.4. Nilai dari Type Name Format... 11

Tabel 2.5. Pengaturan komunikasi modul[12] ... 12

Tabel 2.6. Respons Kategori Kode Status HTTP[21] ... 22

Tabel 2.7. Daftar Media Type[21]... 23

Tabel 3.1. Respons dari RFID Berbentuk Stiker ... 35

Tabel 3.2. Respons dari RFID Berbentuk PVC ... 35

Tabel 3.3. Command untuk Membaca TID dan Memori User ... 35

Tabel 4.1. Pengujian Banyak Tag dengan Jangka Waktu ... 55

Tabel 4.2. Pengujian Pembacaan Tag yang Melewati Gerbang ... 57

Tabel 4.3. Pengujian Pada Logam dengan Perantaraan Kertas ... 59

Tabel 4.4. Persentase Keberhasilan Pengujian Pada Logam dengan Perantaraan Kertas ... 60

Tabel 4.5. Pembacaan Tag RFID dengan Ketebalan Kertas ... 61

Tabel 4.6. Persentase Keberhasilan Pembacaan Tag RFID dengan Ketebalan Kertas ... 61

Tabel 4.7. Pembacaan Tag RFID dengan Perubahan Jarak ... 62

Tabel 4.8. Pengujian Pembacaan Tag NFC dengan Ketebalan Berubah-ubah ... 65

Tabel 4.9. Persentase Keberhasilan Pembacaan Tag NFC dengan Ketebalan Berubah-ubah ... 65

Tabel 4.10. Pengujian Pembacaan Dua Tag NFC Secara Bersamaan ... 66

Tabel 4.11. Pengujian Waktu Eksekusi Program Pencatatan Barang ... 67

(14)

x

DAFTAR KODE

Kode 2.1. Mendeklarasikan Nama Tabel di Model Laravel ... 26

Kode 3.1. Kode untuk Mengakses ID RFID ... 34

Kode 3.2. Perintah untuk Menggunakan modprobe DS1307 ... 37

Kode 3.3. Kode yang Ditambahkan pada /etc/rc.local ... 37

Kode 3.4. Membaca ID dan Rekaman pada Tag NFC ... 38

Kode 3.5. Arduino LCD I2C ... 39

Kode 3.6. Arduino Printer ... 40

Kode 3.7. Kode RTC Arduino ... 40

Kode 3.8. Mengubah Jam dan Tanggal Menjadi String ... 40

Kode 3.9. Menghidupkan dan Mematikan Buzzer ... 41

Kode 3.10. Membaca Serial ... 41

Kode 3.11. Menulis Serial ... 42

Kode 3.12. Python Request ... 43

Kode 3.13. Raspberry Pi JSON Format ... 43

Kode 3.14. Request Arduino ... 44

Kode 3.15. Arduino JSON Decode ... 44

Kode 3.16. Menyalin Objek JSON ke Variabel ... 44

Kode 3.17. Arduino JSON Encode... 45

Kode 3.18. Kode Migrasi Tabel ... 46

Kode 3.19. Kode Model ... 47

Kode 3.20. Method __construct() ... 48

Kode 3.22. Method retrieveAll() ... 49

Kode 3.23. Method update() ... 49

Kode 3.24. Method delete() ... 50

Kode 3.25. Route API Laravel ... 50

Kode 3.26. Konfigurasi Providers ... 51

Kode 3.27. Konfigurasi Aliases ... 51

Kode 3.28. Kode ProdukTransformer ... 52

(15)

xi

DAFTAR SINGKATAN

API Application Programming Interface

ARM Advanced RISC Machine

ATM Anjungan Tunai Mandiri

AVR Alf Vegard’s Risc processor

CLI Command Line Interface

CMOS Complementary Metal Oxide Semiconductor

CRC Cyclic Redundancy Check

CRUD Create Read Update Delete

DBMS Database Management System

EPC Electronic Product Code

EPROM Erasable Programmable Read Only Memory

ERD Entity Relationship Diagram

FTP File Transfer Protocol

HSU High Speed UART

HTML HyperText Mark up Language

HTTP Hypertext Transfer Protocol

I2C Inter Integrated Circuit

ID Identifier

ISO International Organization for Standardization

JSON JavaScript Object Notation

LAN Local Area Network

LCD Liquid Cristal Display

MIME Multipurpose Internet Mail Extension

MVC Model View Controller

NDEF NFC Data Exchange Format

NFC Near Field Communication

NTP Network Time Protocol

(16)

xii PC Protocol Control

PHP Hypertext Preprocessor

PVC Polyvinyl chloride

RAM Random Access Memory

REST Representational State Transfer

RFID Radio Frequency Identification

RISC Reduced Instruction Set Computing

RTC Real Time Clock

RTD Record Type Definition

SPI Serial Peripheral Interface

SQL Structured Query Language

SRAM Static Random Access Memory

TCP Transmission Control Protocol

TID Tag Identifier

TNF Type Name Format

UDP User Datagram Protocol

URI Uniform Resource Identifier

URL Uniform Resource Locator

USB Universal Serial Bus

WiFi Wireless Fidelity

WLAN Wireless Local Area Network

XAMPP X, Apache, MySQL, PHP dan Perl

XML Extensible Markup Language

Referensi

Dokumen terkait

Pengguna dapat menggunakan alat pengunci pintu ini dengan cara mendekatkan Tag RFID pada masing-masing reader, dengan pola pembacaan tertentu.. Jika UID dank ode

Apabila kode pada RFID tag tidak sesuai dengan kode yang telah diinputkan pada program atau sepeda motor dihidupkan tanpa menggunakan RFID tag maka sepeda motor tidak dapat

Dengan adanya aplikasi dengan bahasa pemrograman Java ini diharapkan dapat membantu pihak – pihak yang bekerja pada sebuah proyek konstruksi untuk memanajemen material di

ketika kartu RFID tag pasif dideteksi ke RFID reader dan kode tag sesuai dengan database pada server program, tampilan aplikasi akan menampilkan data riwayat

Diharapkan dengan melakukan penelitian ini dapat menjadikan tag RFID sebagai media untuk menyimpan data berupa nilai nominal uang dan dengan menerapkan metode Ceasar Cipher

Hasil pengujian dengan media penghalang membuktikan bahwa bahan jenis logam dapat menghalangi laju gelombang radio yang dipancarkan reader RFID untuk sampai kepada kartu tag

Tugas Akhir ini bertujuan untuk membuat prototype sistem pembayaran dengan metode pasca bayar menggunakan RFID dengan mekanisme pintu gerbang pada taman bermain

Dalam pengujian sistem secara keseluruhan dilakukan dengan cara, mula-mula sopir angkutan kota mendekatkan RFID tag yang akan dibaca oleh RFID reader, pada saat kartu