20
BAB III
PERANCANGAN SISTEM
Pada bab ini akan dijelaskan perancangan modul e-STNK serta penerapannya
pada sistem parkir yang menggunakan komunikasi socket sebagai media komunikasi
sistem. Perancangan terdiri dari perancangan perangkat keras dan perancangan
perangkat lunak.
3.1. Gambaran Sistem
Gambar 3.1. Blok diagram keseluruhan sistem yang dirancang.
Gambar 3.1 menunjukkan blok diagram keseluruhan sistem yang dirancang,
secara umum sistem yang dirancang terdiri dari beberapa bagian utama yaitu modul e-
STNK, aplikasi desktop server, dan aplikasi TCP server. Berikut penjelasan dari blok
diagram di atas :
1. Kartu tag RFID pada aplikasi ini berisi data hash nomor polisi kendaraan.
2. Pengguna melakukan pengecekan verifikasi data yang tersimpan pada kartu
21
tag RFID dengan menggunakan modul e-STNK.
3. Modul e-STNK membaca data dari tag RFID kemudian melakukan
autentifikasi ke server dengan menggunakan modul GSM/GPRS dengan
metode soket TCP/IP.
4. Server sistem e-STNK ini berupa sebuah aplikasi socket server console yang
menangani komunikasi socket antara modul e-STNK dan server. Setelah
menerima permintaan autentifikasi dari modul e-STNK, maka akan dilakukan
pengecekan data ke basis data, apakah nomor STNK itu teregistrasi atau tidak,
kemudian mengembalikan informasi tersebut ke modul e-STNK.
5. Admin bertugas untuk meregistrasikan data nomor polisi kendaraan ke kartu
tag RFID dan data pendukung lainnya ke dalam basis data. Untuk antarmuka
admin, disediakan aplikasi desktop untuk mengolah data pada basis data e-
STNK serta melakukan penulisan data ke tag RFID.
3.2. Perancangan Perangkat Keras
Pada bagian ini akan dijelaskan mengenai perancangan hingga perealisasian
perangkat keras sistem. Perancangan perangkat keras meliputi perancangan pada modul
e-STNK yang terdiri dari beberapa bagian serta mikrokontroler ATMega2560 sebagai
pengendali utama. Mikrokontroler tersebut terhubung dengan beberapa modul yaitu
modul RFID MFRC522, modul GSM/GPRS SIM908, modul LCD keypad shield, serta
buzzer.
Gambar 3.2. Blok diagram perangkat keras modul e-STNK
Gambar 3.2 menunjukkan blok diagram perancangan modul e-STNK. Berikut
penjelasan dari masing – masing modul.
22
3.2.1. RFID MFRC522
RFID MFRC522 merupakan sensor utama dari modul e-STNK yang digunakan
untuk membaca dan menulis data ke kartu tag. RFID ini bekerja pada frekuensi 13,56
MHz, berkomunikasi melalui protokol SPI dengan mikrokontroler, serta memiliki jarak
pembacaan kartu maksimal adalah 5 cm. Kartu tag yang digunakan adalah kartu tag
jenis mifare ISO 14443A dengan kapasitas 1KB. Gambar 3.2 menunjukkan sensor
RFID dan kartu tag yang digunakan.
Gambar 3.2. Sensor MFRC522 dan kartu tag mifare ISO 14443A
Konfigurasi pin sensor MFRC522 dengan ATMega 2560 ditunjukkan oleh Tabel
3.1 sebagai berikut :
Tabel 3.1. Konfigurasi Pin RFID MFRC522 dengan ATMega 2560
Pin RFID MFRC522 Pin ATMega 2560
1 3.3V
2 PD49
3 GND
4 NC
5 PD50 (MISO)
6 PD51 (MOSI)
7 PD52 (SCK)
8 PD53 (SS)
3.2.2. Modul GSM/GPRS SIM908
SIM908 digunakan untuk berkomunikasi dengan aplikasi TCP server melalui
GPRS. Modul SIM908 ini memiliki dua rangkaian utama yang dibutuhkan untuk
mendukung modul agar dapat bekerja yaitu antarmuka kartu SIM dan catu daya. Kedua
rangkaian ini bersama dengan modul SIM908 disatukan pada sebuah stamp dengan
tujuan memudahkan dalam penggunaan modul. Catu daya menggunakan baterai lithium
ion 3,7 volt 1000 mAh.
23
SIM908 memiliki pin power key yang berguna untuk mengaktifkan dan
menonaktifkan kerja modul serta pin status key yang berguna sebagai indikator apakah
modul sedang hidup atau mati. Cara mengaktifkan modul SIM908 adalah dengan
memberikan level tegangan low selama 1 detik pada pin power key kemudian diberikan
level tegangan high. Modul SIM908 aktif ditandai dengan pin status yang berlogika
high. Timing diagram dari proses pengaktifkan modul SIM908 dapat dilihat pada
Gambar 3.3. Skema ini digunakan oleh mikrokontroler pada saat inisialisasi dan reset
modul 908.
Gambar 3.3. Timing diagram proses pengaktifan modul SIM908 [5]
SIM908 dikendalikan oleh mikrokontroler dengan komunikasi serial. Pin
konfigurasi dari modul SIM908 dengan mikrokontroler dapat dilihat pada Gambar 3.4.
Gambar 3.4. Konfigurasi pin modul SIM908 dengan mikrokontroler.
3.2.3. Modul LCD Keypad Shield
Sebagai penampil informasi serta antarmuka keypad pada modul e-STNK,
digunakan modul LCD Keypad Shield dari DFRobot. Modul ini terdiri dari sebuah LCD
24
karakter 2x16 dan antarmuka keypad yang terdiri atas 6 buah tombol. LCD karakter
tersebut mendukung 4 bit mode data dan digunakan untuk menampilkan menu serta
informasi dari berbagai proses yang dilakukan oleh modul e-STNK. Tombol yang
digunakan hanya 4 buah, yaitu UP untuk memilih menu ke atas, DOWN untuk memilih
menu ke bawah, SELECT untuk memasuki menu yang dipilih, serta LEFT yang
digunakan untuk kembali ke menu utama. Gambar 3.5 menunjukkan gambar modul
LCD Keypad Shield, sedangkan Tabel 3.2 menunjukkan konfigurasi pin yang
terhubung dengan mikrokontroler.
Gambar 3.5 Modul LCD keypad shield [9]
Tabel 3.2. Konfigurasi Pin LCD Keypad Shield dengan ATMega 2560
LCD Keypad Shield Pin ATMega 2560
Tombol (SELECT, UP, RIGHT,
DOWN, LEFT)
Analog 0
DB4 Digital 4
DB5 Digital 5
DB6 Digital 6
DB7 Digital 7
RS (Data or Signal Display Selection) Digital 8
Enable Digital 9
Backlit Control Digital 10
3.2.4. Buzzer
Buzzer digunakan sebagai bunyi penanda saat suatu proses (baca, tulis, atau
verifikasi) telah selesai dilakukan oleh modul e-STNK. Rangkaian buzzer menggunakan
transistor NPN C828A yang digunakan sebagai saklar. Kaki basis transistor terhubung
25
dengan resistor 330 ohm yang disambung ke pin digital 44 dari mikrokontroler.
Rangkaian buzzer dapat dilihat pada Gambar 3.6.
Gambar 3.6. Skematik rangkaian buzzer
3.3. Perancangan Perangkat Lunak
Pada bagian ini akan dijelaskan mengenai perancangan perangkat lunak sistem.
Gambaran umum perangkat lunak pada sistem ini dapat dilihat pada Gambar 3.7.
Gambar 3.7. Gambaran umum perangkat lunak pada sistem e-STNK
Perancangan perangkat lunak meliputi perangkat lunak pada mikrokontroler, basis
data, aplikasi TCP server, aplikasi desktop server, serta komunikasi GPRS.
3.3.1. Perangkat lunak pada mikrokontroler
Mikrokontroler digunakan sebagai pengendali utama dari modul e-STNK.
Perangkat lunak tersebut mengakomodasi setiap tugas – tugas dari modul e-STNK.
Gambar 3.8 memperlihatkan garis besar jalannya program perangkat lunak pada
mikrokontroler.
26
Gambar 3.8. Aliran proses perangkat lunak pada modul e-STNK
Berikut adalah penjelasan dari diagram alir pada gambar di atas :
Saat modul e-STNK dihidupkan, pertama kali akan dilakukan inisialisasi
serial, inisialisasi LCD, inisialisasi RFID, serta inisialisasi modul
GSM/GPRS.
Setelah melakukan inisialisasi, maka akan mencoba berhubungan dengan
server melalui komunikasi socket kemudian masuk ke menu utama dari
27
modul e-STNK. Terdapat 2 menu utama yaitu menu Sistem Parkir dan
Komputer.
Jika memilih menu sistem parkir, maka modul e-STNK akan menunggu
kartu tag RFID didekatkan ke antena RFID. Setelah didekatkan, modul e-
STNK akan membaca nomor serial kartu tag serta data hash nomor polisi
kendaraan yang tersimpan di dalam kartu tag.
Kemudian modul e-STNK akan mengirimkan paket data ke aplikasi console
TCP server untuk melakukan verifikasi, kemudian menampilkan balasan
dari aplikasi TCP server ke tampilan LCD. Bentuk paket datanya adalah
sebagai berikut :
32-byte data hash # n-Byte nomor serial tag
Balasan yang mungkin diterima dari aplikasi TCP server adalah :
- Blank Card jika kartu tag kosong / tidak ada datanya.
- String nomor polisi kendaraan apabila teregistrasi dan data ditemukan
didalam database.
- INVALID apabila terjadi error / paket data terganggu sehingga terjadi
masalah parsing paket data
- UNREGISTERED jika data yang dicari tidak ada.
Contoh paket data yang dikirimkan saat melakukan verifikasi serta balasan
dari aplikasi TCP server ditunjukkan oleh Gambar 3.9.
Gambar 3.9. Contoh paket data verifikasi nomor STNK serta balasan
dari aplikasi TCP server.
Jika pengguna memilih mode komputer, maka modul e-STNK harus
disambungkan ke komputer yang menjalankan aplikasi desktop server
melalui USB.
Setelah tersambung dengan komputer, modul e-STNK akan menunggu
perintah dari aplikasi desktop server. Jika saat menunggu perintah terjadi
interupsi oleh pengguna dengan menekan tombol BACK pada modul e-
28
STNK, maka akan keluar dari menu mode komputer dan kembali ke menu
utama.
Jika aplikasi desktop server mengirimkan perintah untuk membaca data
kartu tag, yaitu dengan mengirimkan command “R1#” melalui serial, maka
modul e-STNK akan melakukan pembacaan data pada kartu. Modul e-STNK
menunggu kartu tag didekatkan, kemudian membaca datanya lalu data
tersebut dikirimkan ke aplikasi desktop server melalui serial.
Jika aplikasi desktop server mengirimkan perintah untuk menulis data ke
kartu tag, yaitu dengan mengirimkan command “W1#” melalui serial, maka
modul e-STNK akan menerima data yang akan dituliskan ke kartu tag
melalui serial, kemudian menunggu kartu tag didekatkan ke antena RFID,
lalu melakukan penulisan data ke kartu tag. Setelah itu, modul e-STNK akan
mengirimkan “ACK” ke aplikasi desktop server melalui serial sebagai tanda
bahwa penulisan data telah selesai dilakukan.
3.3.2. Basis data
Basis data merupakan pusat penyimpanan data pada sistem e-STNK ini. Data
yang disimpan pada basis data ini adalah data mahasiswa, data karyawan, data daftar
fakultas, data jenis jabatan, data STNK, data registrasi e-STNK, serta data parkir. Entity
Relationship Diagram (ERD) dapat dilihat pada Gambar 3.10. Penjelasan masing-
masing tabel dalam ERD pada Gambar 3.10 adalah sebagai berikut :
a) Tabel Fakultas
Tabel ini berisi nama – nama fakultas beserta kode fakultas yang digunakan.
b) Tabel Jabatan
Tabel ini berisi nama jabatan dari karyawan.
c) Tabel Karyawan
Tabel ini berisi data pribadi karyawan yang meliputi NIP, nama, alamat asal,
alamat tinggal, tempat dan tanggal lahir, nomor telepon, fakultas, serta jabatan.
d) Tabel Mahasiswa
Tabel ini berisi data pribadi mahasiswa yang meliputi NIM, nama, alamat
asal, alamat tinggal, tempat dan tanggal lahir, nomor telepon, fakultas, serta
angkatan.
e) Tabel JenisKendaraan
29
Tabel ini berisi nama jenis kendaraan yang terdapat pada STNK.
f) Tabel STNK
Tabel ini berisi data – data yang terdapat pada STNK seperti nomor polisi,
nama pemilik, alamat, merk, jenis kendaraan, tahun pembuatan, serta data-data
lainnya sesuai dengan STNK.
g) Tabel Registrasi
Tabel ini berisi data registrasi e-STNK. Ketika mahasiswa / karyawan
meregistrasikan STNK nya, maka data registrasi akan disimpan di tabel ini. Di
tabel ini ada satu kolom bernama IsMahasiswa yang menandai registrasi
dilakukan oleh mahasiswa atau karyawan. Jika IsMahasiswa bernilai 0, maka
registrasi dilakukan oleh karyawan, sedangkan jika bernilai 1 maka registrasi
dilakukan oleh mahasiswa.
h) Tabel ParkirOut
Tabel ini berisi data parkir yang diperoleh dari modul e-STNK. Informasi
yang disimpan berupa tanggal dan waktu parkir keluar.
i) Tabel Pengguna
Tabel pengguna berisi data pengguna yang bisa mengakses aplikasi desktop
server e-STNK. Informasi yang disimpan di tabel ini adalah nama pengguna
serta password yang digunakan untuk masuk ke aplikasi.
j) Tabel LogHistory
Tabel ini berisi history dari aktivitas pengguna. Ketika pengguna menambah
atau mengubah atau menghapus data dari basis data, maka datanya akan dicatat
pada tabel LogHistory ini.
Pada basis data server cadangan, ditambahkan fitur replikasi transactional.
Berikut adalah langkah – langkah yang dilakukan dalam menambahkan fitur ini :
Membuat VPN untuk server utama dan server cadangan dengan
menggunakan software LogMeIn Hamachi.
Mengkonfigurasi publisher pada basis data server cadangan.
Mengkonfigurasi distribution database pada server cadangan.
Mengkonfigurasi subscriber pada basis data server utama.
Untuk panduan konfigurasi fitur replikasi basis data lebih lengkapnya bisa
dilihat pada Lampiran A.
30
Gambar 3.10. ERD basis data e-STNK
31
3.3.3. Aplikasi TCP server
Aplikasi TCP server merupakan jembatan penghubung antara modul e-STNK
dengan basis data yang terdapat di server. Berikut adalah fungsi dari aplikasi TCP
server yang dibuat :
1. Menerima koneksi dari modul e-STNK dengan metode komunikasi socket.
2. Menerima paket data verifikasi dari modul e-STNK.
3. Memisahkan paket data yang diterima dari modul e-STNK.
4. Melakukan pengecekan ke dalam basis data apakah nomor polisi kendaraan
teregistrasi atau tidak.
5. Melakukan verifikasi data hash nomor polisi kendaraan dari modul e-STNK
apakah valid atau tidak.
6. Memberi balasan hasil verifikasi ke modul e-STNK.
Diagram alir jalannya aplikasi TCP server dapat dilihat pada Gambar 3.11.
Gambar 3.11. Diagram alir jalannya aplikasi TCP server
32
3.3.4. Aplikasi Desktop Server
Aplikasi desktop server e-STNK merupakan aplikasi back end pada sistem e-
STNK yang memiliki fungsi sebagai berikut :
1. Menambah, mengubah, dan menghapus data karyawan, mahasiswa, dan
fakultas serta menyimpannya ke dalam basis data;
2. Menambah, mengubah, dan menghapus data registrasi e-STNK serta
menyimpannya ke dalam basis data;
3. Menulis data hash nomor polisi kendaraan ke kartu tag RFID dengan
menggunakan bantuan modul e-STNK;
4. Membaca data hash nomor polisi kendaraan kartu tag RFID dengan
menggunakan bantuan modul e-STNK;
5. Menampilkan data parkir sesuai dengan batasan waktu yang dipilih dalam
bentuk tabel dan grafik.
Diagram alir jalannya proses registrasi pada aplikasi desktop server ini dapat
dilihat pada Gambar 3.12 serta diagram alir proses baca tulis data kartu tag pada
aplikasi desktop server dapat dilihat pada Gambar 3.13.
Gambar 3.12. Aliran proses registrasi pada aplikasi desktop server e-STNK
33
Gambar 3.13. Aliran proses baca tulis data kartu tag pada aplikasi desktop
e-STNK dengan bantuan modul e-STNK
3.3.5. Komunikasi GPRS
Untuk berkomunikasi dengan modul SIM908, maka digunakan perintah –
perintah ATCommand yang dikirim dengan menggunakan komunikasi serial. Fungsi
utama yang digunakan dari modul ini adalah kemampuannya untuk melakukan
komunikasi GPRS. Kemampuan ini dimanfaatkan oleh modul e-STNK untuk menjalin
komunikasi dengan aplikasi TCP server dengan metode komunikasi socket. Aliran
perancangan perangkat lunak komunikasi GPRS dapat dilihat pada Gambar 3.14.
34
Gambar 3.14. Aliran proses komunikasi GPRS pada modul SIM908