bab ii dasar teori...arduino compatible antena berada pada pcb, dengan jarak komunikasi 5cm ~ 7cm...

12
5 BAB II DASAR TEORI Bab ini membahas mengenai teori-teori pendukung yang digunakan sebagai acuan dalam merancang skripsi ini. 2.1 Radio Frequency Identification (RFID) RFID hampir sama seperti barcode yang dapat mengenali melalui ID dari sebuah objek. Namun, RFID menggunakan gelombang radio dalam berkomunikasi. RFID reader akan mengirimkan sinyal radio yang akan ditangkap oleh Tag RFID. Kemudian, Tag akan mengirimkan short string dari data. Komunikasi tersebut tergantung pada ukuran, sensitivitas dari antena pembaca, dan kekuatan transmisi. Rentang frekuensi yang digunakan RFID mulai dari kisaran di bawah 135kHz sampai frekuensi tinggi di atas 135kHz, yaitu 24GHz. Tetapi, frekuensi yang biasanya dipakai ialah 0- 135kHz, untuk frekuensi standar Industrial Scientific and Medical (ISM) sekitar 6,78 MHz, 13,56 MHz, 27,125 MHz, 40,68 MHz, 869,0 MHz, 2,45 GHz, 5,8 GHz dan 24.125 GHz, serta untuk di Eropa sekitar 865 dan 868MHz dan 915MHz untuk di Amerika Serikat. ISO 18000-6 merupakan standar air interface untuk RFID 5 yang beroperasi pada frekuensi antara 860 MHz sampai 960 MHz yang diaplikasikan untuk manajemen barang. Tag RFID yang digunakan pada skripsi ini ialah ISO 14443 yang berupa sirkuit kartu. Kartu dapat berupa Tipe A dan Tipe B, yang keduanya berkomunikasi melalui radio pada 13,56 MHz ( RFID HF). Perbedaan utama antara jenis ini menyangkut metode modulasi, skema pengkodean dan prosedur inisialisasi protokol. Kedua kartu Tipe A dan Tipe B menggunakan protokol transmisi yang sama. Protokol transmisi menentukan pertukaran blok data dan mekanisme.[3]

Upload: others

Post on 28-Oct-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: BAB II DASAR TEORI...Arduino compatible Antena berada pada PCB, dengan jarak komunikasi 5cm ~ 7cm Standar 5V TTL untuk I2C dan UART, 3.3V TTL SPI Bekerja sebagai reader / writer RFID

5

BAB II

DASAR TEORI

Bab ini membahas mengenai teori-teori pendukung yang digunakan sebagai acuan

dalam merancang skripsi ini.

2.1 Radio Frequency Identification (RFID)

RFID hampir sama seperti barcode yang dapat mengenali melalui ID dari sebuah

objek. Namun, RFID menggunakan gelombang radio dalam berkomunikasi. RFID reader

akan mengirimkan sinyal radio yang akan ditangkap oleh Tag RFID. Kemudian, Tag akan

mengirimkan short string dari data. Komunikasi tersebut tergantung pada ukuran,

sensitivitas dari antena pembaca, dan kekuatan transmisi.

Rentang frekuensi yang digunakan RFID mulai dari kisaran di bawah 135kHz

sampai frekuensi tinggi di atas 135kHz, yaitu 24GHz. Tetapi, frekuensi yang biasanya

dipakai ialah 0- 135kHz, untuk frekuensi standar Industrial Scientific and Medical (ISM)

sekitar 6,78 MHz, 13,56 MHz, 27,125 MHz, 40,68 MHz, 869,0 MHz, 2,45 GHz, 5,8 GHz

dan 24.125 GHz, serta untuk di Eropa sekitar 865 dan 868MHz dan 915MHz untuk di

Amerika Serikat. ISO 18000-6 merupakan standar air interface untuk RFID 5 yang

beroperasi pada frekuensi antara 860 MHz sampai 960 MHz yang diaplikasikan untuk

manajemen barang.

Tag RFID yang digunakan pada skripsi ini ialah ISO 14443 yang berupa sirkuit

kartu. Kartu dapat berupa Tipe A dan Tipe B, yang keduanya berkomunikasi melalui radio

pada 13,56 MHz ( RFID HF). Perbedaan utama antara jenis ini menyangkut metode

modulasi, skema pengkodean dan prosedur inisialisasi protokol. Kedua kartu Tipe A dan

Tipe B menggunakan protokol transmisi yang sama. Protokol transmisi menentukan

pertukaran blok data dan mekanisme.[3]

Page 2: BAB II DASAR TEORI...Arduino compatible Antena berada pada PCB, dengan jarak komunikasi 5cm ~ 7cm Standar 5V TTL untuk I2C dan UART, 3.3V TTL SPI Bekerja sebagai reader / writer RFID

6

2.2 Near Field Communication (NFC)

Gambar 2.1 Modul PN532 NFC RFID

NFC adalah teknologi nirkabel yang jarak komunikasinya kurang dari 4 cm. NFC

juga dapat berbagi data antar dua perangkat yang kompatibel. Sama seperti Bluetooth,

WiFi, dan nirkabel lainnya, NFC bekerja dengan cara mengirimkan informasi melalui

gelombang radio. Data dikirim NFC melalui induksi elektromagnetik antara dua

perangkat. Dengan jaraknya yang kurang dari 4 cm, NFC menjadi komunikasi tanpa kabel

yang lebih aman, ketimbang komunikasi yang dimiliki komunikasi tanpa kabel lainnya.

NFC merupakan perpanjangan dari RFID dimana NFC lebih banyak melakukan

pertukaran data dari pada RFID.

Modul NFC PN532 adalah salah satu modul yang dapat membaca dan menulis

Tag NFC/RFID.Modul versi 3 ini berukuran kompak(42,7×40,4 mm dengan ketebalan

hanya 4mm) sehingga mudah ditempatkan pada berbagai peralatan elektronika. Akses

untuk semua pin dari IC NXP532 disediakan melalui lubang solder berjarak 2,54mm

(0,1”standar pin pitch/ spacing) untik pin header 8-pin dan tambahan 4-pin dan tambahan

10-pin dengan pitch, 1,27mm/ 0.5” untuk fungsi-fungsi tambahan.

Ada empat jenis NFC yang semuanya berbasis RFID. Tipe 1, 2, dan 4

menggunakan standar ISO 14443A, sedangkan tipe 3 menggunakan ISO 18092. Sebagai

tambahan, tipe yang kelima adalah tipe yang kompatibel, tetapi tidak terlalu memenuhi

bagian dari spesifikasi NFC. RFID yang akan digunakan adalah ISO 14443A yang

memiliki fitur dan keungulan sebagai berikut:

Page 3: BAB II DASAR TEORI...Arduino compatible Antena berada pada PCB, dengan jarak komunikasi 5cm ~ 7cm Standar 5V TTL untuk I2C dan UART, 3.3V TTL SPI Bekerja sebagai reader / writer RFID

7

Mendukung komunikasi I2C, SPI dan HSU (High Speed UART)

RFID reader / writer mode support

• Kartu Mifare 1k, 4k, Ultralight, dan DesFire

• Kartu ISO / IEC 14443-4 seperti CD97BX, CD light, DesFire, P5CN072

(SMX)

• Kartu Jewel Innovision seperti kartu IRT5001

• Kartu FeliCa seperti RCS_860 dan RCS_854

Arduino compatible

Antena berada pada PCB, dengan jarak komunikasi 5cm ~ 7cm

Standar 5V TTL untuk I2C dan UART, 3.3V TTL SPI

Bekerja sebagai reader / writer RFID

Bekerja sebagai kartu 14443A

Mendukung NFC dengan ponsel Android

Ukuran kecil: 43mm * 41mm * 4mm

Pada skripsi ini modul NFC yang digunakan adalah PN532 NFC RFID versi 3.

Modul ini memiliki tiga komunikasi yaitu HSU, I2C dan SPI. I2C dan HSU memiliki pin

yang sama. Definisi pin IIC dicetak di depan dan HSU dicetak di bagian belakang. Modus

HSU dikonfigurasi sebagai mode default.

Gambar 2.2 Switch untuk memilih komunikasi modul

Page 4: BAB II DASAR TEORI...Arduino compatible Antena berada pada PCB, dengan jarak komunikasi 5cm ~ 7cm Standar 5V TTL untuk I2C dan UART, 3.3V TTL SPI Bekerja sebagai reader / writer RFID

8

2.3 Arduino Mega 2560

Arduino Mega 2560 adalah papan mikrokontroler berdasarkan ATmega2560

(datasheet). Ini memiliki 54 pin input / output digital (dimana 14 dapat digunakan sebagai

output PWM), 16 input analog, 4 UART (port serial perangkat keras), osilator kristal 16

MHz, koneksi USB, colokan listrik, header ICSP, dan tombol reset. Ini berisi semua yang

dibutuhkan untuk mendukung mikrokontroler, cukup hubungkan ke komputer dengan

kabel USB atau nyalakan dengan adaptor AC ke DC atau baterai untuk memulai.

Gambar 2.3 Arduino Mega

Masing-masing dari 54 pin digital pada Mega dapat digunakan sebagai input atau

output, dengan menggunakan fungsi pinMode(), digitalWrite(), dan

digitalRead(). Mereka beroperasi pada 5 volt. Setiap pin dapat menyediakan atau

menerima maksimum 40 mA dan memiliki resistor pull-up internal (terputus bila ada

kesalahan) 20-50 kOhms.

Gambar 2.4 Pin Atmega 2560

Page 5: BAB II DASAR TEORI...Arduino compatible Antena berada pada PCB, dengan jarak komunikasi 5cm ~ 7cm Standar 5V TTL untuk I2C dan UART, 3.3V TTL SPI Bekerja sebagai reader / writer RFID

9

2.4 Ethernet ENC28J60

Gambar 2.5 Ethernet ENC28J60

Arduino Ethernet Shield V1 memungkinkan Arduino terhubung ke internet. Hal

ini didasarkan pada chip ethernet Wiznet W5100. Wiznet W5100 menyediakan sebuah

jaringan (IP) stack yang mampu untuk kedua TCP dan UDP. Ini mendukung hingga

empat koneksi soket simultan.

Pustaka Ethernet dapat digunakan untuk menulis sketsa yang terhubung ke

internet. Ethernet terhubung ke papan Arduino menggunakan header wire-wrap panjang.

Hal ini membuat tata letak pin tetap utuh dan memungkinkan pin lain dapat ditumpuk di

atas Ethernet Shield memiliki koneksi RJ-45 standar, dengan transformator jalur terpadu

dan Power over Ethernet diaktifkan. Ethernet Shield memiliki beberapa informasi LED:

• PWR: menunjukkan bahwa papan dan shield aktif

• LINK: menunjukkan adanya network link dan berkedip saat shield

mentransmisikan atau menerima data

• FULLD: menunjukkan bahwa koneksi jaringan adalah full duplex

• 100M: menunjukkan adanya koneksi jaringan 100 Mb / s (berlawanan

dengan 10Mb / s)

• RX: berkedip saat perisai menerima data

• TX: berkedip saat perisai mengirim data

• COLL: berkedip saat tabrakan jaringan terdeteksi

Page 6: BAB II DASAR TEORI...Arduino compatible Antena berada pada PCB, dengan jarak komunikasi 5cm ~ 7cm Standar 5V TTL untuk I2C dan UART, 3.3V TTL SPI Bekerja sebagai reader / writer RFID

10

2.5 Solenoid-Door Lock

Gambar 2.6 Solenoid-Door Lock

Solenoid adalah aktuator yang mampu melakukan gerakan linier. Solenoid dapat

berupa elektromekanis (AC/DC), hidrolik atau pneumatik. Semua operasi berdasar pada

prinsip-prinsip dasar yang sama. Dengan memberikan sumber tegangan maka solenoid

dapat menghasilakan gaya yang linier. Contohnya untuk menekan tombol, memukul

tombol pada piano, operator katup, dan bahkan untuk robot melompat. Solenoid DC

beroperasi pada prinsip-prinsip seperti motor DC. Perbedaan antara solenoid dan motor

adalah bahwa solenoid adalah motor yang tidak dapat berputar.

Di dalam solenoida terdapat kawat melingkar pada inti besi. Ketika arus listrik

melalui kawat ini, maka terjadi medan magnet untuk menghasilkan energi yang bisa

mendorong inti besi. Poros dalam dari solenoid adalah piston seperti silinder terbuat dari

besi atau baja, yang disebut plunger (setara dengan sebuah dinamo). Medan magnet

kemudian menerapkan kekuatan untuk plunger ini, baik menarik atau repeling (kembali

posisi). Ketika medan magnet dimatikan, pegas plunger kemudian kembali ke keadaan

semula.

2.6 Real Time Clock (RTC)

RTC adalah perangkat keras yang berfungsi sebagai alat untuk menghitung waktu,

baik itu mulai dari tahun, bulan, tanggal, hari, jam, menit dan detik. Waktu tersebut akan

disimpan sehingga RCT akan menghasilkan waktu yang akurat.

Gambar 2.7 Modul RTC DS3231

Page 7: BAB II DASAR TEORI...Arduino compatible Antena berada pada PCB, dengan jarak komunikasi 5cm ~ 7cm Standar 5V TTL untuk I2C dan UART, 3.3V TTL SPI Bekerja sebagai reader / writer RFID

11

RTC yang digunakan pada skripsi ini ialah DS3231. DS3231 adalah I2C dengan

harga yang murah dan sangat akurat. Perangkat menggunakan baterai yang berfungsi

untuk merawat ketepatan waktu ketika tegangan utama ke perangkat terganggu. DS3231

memiliki spesifikasi sebagai berikut :

• RTC yang sangat akurat mengelola semua fungsi pengatur waktu secara

lengkap

• Real-Time Clock dapat menghitung detik, menit, jam, tanggal, bulan, hari

dalam seminggu, dan tahun, dengan kemampuan koreksi tahun kabisat

sampai 2100

• Akurasi ± 2ppm dari 0 ° C sampai +40 ° C

• Akurasi ± 3.5ppm dari -40 ° C sampai +85 ° C

• Keluaran sensor digital dengan akurasi ±3°C 6.

• Register untuk trim yang berumur

• RST Output / Pushbutton Reset Debounce Input

• Dua Alarm Time-of-Day

• Sinyal Output Wave-Programmable

• Antarmuka serial sederhana sehingga dapat menghubungkan ke

kebanyakan Microcontrollers

• Antarmuka I2C yang cepat (400kHz)

• Masukan cadangan menggunakan baterai untuk pencatatan waktu terus-

menerus

• Low power operation, memperpanjang waktu penggunaan baterai

cadangan

• Operasi tegangan berkisar 3.3V

• Rentang Suhu Operasional: Komersial (0 ° C sampai + 70 ° C) dan Industri

(-40° C sampai +85 ° C)

Page 8: BAB II DASAR TEORI...Arduino compatible Antena berada pada PCB, dengan jarak komunikasi 5cm ~ 7cm Standar 5V TTL untuk I2C dan UART, 3.3V TTL SPI Bekerja sebagai reader / writer RFID

12

2.7 LCD (Liquid Crystal Display)

Gambar 2.8 LCD karakter 20×4

LCD (Liquid Crystal Display) adalah salah satu komponen elektronika yang

berfungsi sebagai tampilan suatu data, baik karakter, huruf ataupun grafik. LCD sudah

tersedia dalam bentuk modul yaitu tampilan LCD beserta rangkaian pendukungnya. LCD

mempunyai pin data, kontrol catu daya, dan pengatur kontras tampilan. LCD juga

merupakan perangkat display yang paling umum dipasangkan di Mikrokontroller,

Mengingat ukurannya yang kecil dan kemampuannya menampilkan karakter atau grafik

yang lebih dibandingkan display seven-segmen. Pada pengembangan sistem embedded,

LCD mutlak diperlukan sebagai sumber pemberi informasi utama, misalnya alat

pengukur kadar gula darah, penampil waktu jam, penampil counter putaran motor industri

dan lain-lain.

Pada skripsi ini pin yang terdapat pada LCD tidak langsung dihubungkan

keArduino akan tetapi pin tersebut dihubungkan ke I2C PCF8574 terlebih dahulu.

Kemudian I2C tersebut akan langsung dihubungkan dengan pin serial clock (SDA) dan

serial data (SCL) Arduino. I2C PCF8574 memiliki fitur sebagai berikut :

• Konsumsi Standby-Current yang Rendah 10 μA Max

• I2C ke Parallel-Port Expander

• Open-Drain Interrupt Output

• Kompatibel dengan kebanyakan Microcontrollers

• Keluaran Latched Dengan Kemampuan High-Current Drive untuk mengontrol

LED secara langsung

• Kinerja Latch-Up Melebihi 100 mA Per JESD 78, Kelas II

Gambar 2.9 Modul I2C PCF8574

Page 9: BAB II DASAR TEORI...Arduino compatible Antena berada pada PCB, dengan jarak komunikasi 5cm ~ 7cm Standar 5V TTL untuk I2C dan UART, 3.3V TTL SPI Bekerja sebagai reader / writer RFID

13

2.8 Buzzer

Buzzer merupakan komponen elektronika yang mengubah sinyal listrik menjadi

getaran suara. Buzzer biasanya digunakan sebagai pemberitahuan atau peringatan pada

suatu alat tertentu. Jenis Buzzer yang biasanya ditemukan atau sering digunakan yaitu

Buzzer berjenis Piezoelectric, karena Buzzer Piezoelectric memiliki harga yang relative

cukup murah, ringan dan mudah untuk digabungkan dengan mikrokontroler.

Gambar 2.10 Buzzer

2.9 Router

Router adalah sebuah alat yang mengirimkan paket data melalui sebuah jaringan

atau Internet menuju tujuannya, melalui sebuah proses yang dikenal sebagai routing.

Router berfungsi sebagai penghubung antar dua atau lebih jaringan untuk meneruskan

data dari satu jaringan ke jaringan lainnya.

Gambar 2.11 Router

Fungsi utama Router adalah merutekan paket (informasi). Sebuah Router

memiliki kemampuan Routing, artinya Router secara cerdas dapat mengetahui kemana

rute perjalanan informasi (paket) akan dilewatkan, apakah ditujukan untuk host lain yang

satu network ataukah berada di network yang berbeda. Jika paket-paket ditujukan untuk

host pada network lain maka router akan meneruskannya ke network tersebut.

Sebaliknya, jika paket-paket ditujukan untuk host yang satu network maka router akan

menghalangi paket-paket keluar.

Page 10: BAB II DASAR TEORI...Arduino compatible Antena berada pada PCB, dengan jarak komunikasi 5cm ~ 7cm Standar 5V TTL untuk I2C dan UART, 3.3V TTL SPI Bekerja sebagai reader / writer RFID

14

2.10 Hypertext Preprocessor (PHP)

Gambar 2.12 Logo PHP

Sumber: https://secure.php.net/contact.php

PHP adalah bahasa server-side scripting yang menyatu dengan HTML untuk

membuat halaman web yang dinamis. Karena itu sintaks dan perintah-perintah PHP akan

dieksekusi di server kemudian hasilnya dikirimkan ke browser dalam format HTML. Jadi

kode program yang ditulis dalam PHP tidak akan terlihat oleh user sehingga keamanan

halaman web lebih terjamin. Hal ini juga berbeda jika dibandingkan dengan

pemrograman client-side seperti JavaScript yang diproses pada web browser

PHP dirancang untuk membentuk halaman web yang dinamis, yaitu halaman web

yang dapat membentuk suatu tampilan berdasarkan halaman permintaan terkini, seperti

menampilkan isi basis data ke halaman web. PHP dapat digunakan dengan gratis dan

bersifat Open Source Product, sehingga source code PHP dapat diubah dan

didistribusikan secara bebas.

2.11 MySql

MySQL adalah sebuah implementasi dari sistem manajemen basis data relasional

(RDBMS) yang didistribusikan secara gratis dibawah lisensi GPL (General Public

License). Setiap pengguna dapat secara bebas menggunakan MySQL, namun dengan

batasan perangkat lunak tersebut tidak boleh dijadikan produk turunan yang bersifat

komersial. MySQL sebenarnya merupakan turunan salah satu konsep utama dalam basis

data yang telah ada sebelumnya; SQL (Structured Query Language). SQL adalah sebuah

konsep pengoperasian basis data, terutama untuk pemilihan atau seleksi dan pemasukan

data, yang memungkinkan pengoperasian data dikerjakan dengan mudah secara otomatis.

Dalam bahasa SQL pada umumnya informasi tersimpan dalam tabel-tabel yang

secara logik merupakan struktur dua dimensi terdiri dari baris (row atau record) dan

kolom (column atau field). Sedangkan dalam sebuah database dapat terdiri dari beberapa

table.

Page 11: BAB II DASAR TEORI...Arduino compatible Antena berada pada PCB, dengan jarak komunikasi 5cm ~ 7cm Standar 5V TTL untuk I2C dan UART, 3.3V TTL SPI Bekerja sebagai reader / writer RFID

15

2.12 XAMPP Server

Gambar 2.13 Logo Xampp

XAMPP adalah program aplikasi pengembang yang berguna untuk

pengembangan website berbasis PHP dan MySQL. Perangkat lunak komputer ini

memiliki kelebihan untuk bisa berperan sebagai server web Apache untuk simulasi

pengembangan website. Tool pengembangan web ini mendukung teknologi web populer

seperti PHP, MySQL, dan Perl. Melalui program ini, programmer web dapat menguji

aplikasi web yang dikembangkan dan mempresentasikannya ke pihak lain secara

langsung dari komputer, tanpa perlu terkoneksi ke internet. XAMPP juga dilengkapi fitur

manajemen database PHPMyAdmin seperti pada server hosting sungguhan, sehingga

pengembang web dapat mengembangkan aplikasi web berbasis database secara mudah.

Program XAMPP banyak diaplikasikan dan digunakan oleh kalangan pengguna

komputer di bidang pemrograman web. XAMPP dapat dijalankan di sistem operasi

Windows 2000/XP/Vista/7/8 dan sistem operasi lain. Fungsinya adalah sebagai server

yang berdiri sendiri (localhost), yang terdiri atas program Apache HTTP Server, MySQL

database, dan penerjemah bahasa yang ditulis dengan bahasa pemrograman PHP dan

Perl.

2.13 Laravel

Laravel adalah framework pengembangan web MVC yang ditulis dalam PHP.

Laravel juga mempermudah dalam pengerjaan proyek secara bersama, oleh karena itu

Laravel sangat membantu untuk pengembangan web lebih lanjut. Laravel juga

menyediakan migrasi database yang sangat membantu. Laravel mendukung beberapa

database seperti MySQL, MSSQL, PostgreSQL, dan SQLite. Pada saat migrasi database

Page 12: BAB II DASAR TEORI...Arduino compatible Antena berada pada PCB, dengan jarak komunikasi 5cm ~ 7cm Standar 5V TTL untuk I2C dan UART, 3.3V TTL SPI Bekerja sebagai reader / writer RFID

16

tidak akan dipersulit dengan ketidakcocokan tipe database yang akan digunakan. Ini

membuat proyek web yang dikerjakan lebih terstruktur dan lebih mudah dipahami.

Tugas Akhir ini menggunakan framework laravel 5.4.33. Seperti yang telah

diketahui, Laravel adalah framework yang berbasis MVC. Dalam membuat API yang

dibutuhkan ialah Model dan Controller. Model adalah wujud dari database, baik itu

kolom dan relasi database yang dibutuhkan untuk mendefinisikan sebuah model adalah

menciptakan kelas baru yang memperluas kelas Model. Sementara nama kelas ditulis

dengan format CamelCase. Contohnya jika di database nama tabelnya adalah

“stiker_user” maka nama kelas tersebut menjadi “StrikerUser”. Karena kelas Model

akan membaca tabel “StikerUser” sebagai “stiker_users”, untuk dapat tetap membaca

tabel di database sebagai “stiker_produk” maka dapat didefinisikan variabel

protected $table = 'striker_produk'. Dengan cara tersebut dapat

digunakan tabel yang tidak sesuai dengan nama kelas.

class StikerUser extends Model

{

protected $table = 'stiker_user’;

}

Kode 2.1 Kode Mendeklarasikan Nama table pada Model Laravel

Controller pada Laravel terbagi menjadi dua jenis yaitu controller standar dan

controller source. Tugas mereka adalah memahami permintaan yang masuk dan

mengirim respons yang tepat. Controller standar atau controller tradisional dimana

tindakan detail yang mengambil satu parameter dan yang berada di Projects controller,

berdasarkan ketentuan, dapat peroleh di /proyek/detail/123. Controller source,

memungkinkan untuk menentukan pengendali yang tenang yang merespons HTTP yang

berbeda, seperti GET, POST, PUT, dan DELETE.

Gambar 2.14 MVC Laravel