Arsitektur umum pada penelitian ini dapat dilihat pada gambar 3.1,
Gambar 3.1 Arsitektur Umum Dari Penelitian
Arsitektur umum yang dilakukan pada penelitian ini terdiri atas 3 bagian yaitu, input, proses dan output :
1. Input
Data input terdiri dari dua bagian, yaitu data kartu yang dimasukkan oleh pelanggan saat melakukan pembayaran dan data kartu pada saat proses pendaftaran pelanggan pada Bot Telegram. Pelanggan menggunakan kartu RFID dalam bentuk kartu anggota yang di dekatkan pada bidang mesin RFID Reader. Jika mesin RFID Reader mengeluarkan bunyi ‘beep’, maka proses pendeteksian kartu untuk pembayaran sudah berhasil. Sedangkan untuk data yang dimasukkan oleh pelanggan pada saat proses pendaftaran pada Bot Telegram adalah data ID kartu, nomor induk kependudukan, dan kata sandi.
2. Proses
2.1 Proses Pendaftaran Kartu Baru Untuk Pelanggan
Alat yang akan dibuat mempunyai dua fungsi, yang pertama adalah fungsi untuk mendaftarkan pelanggan baru. Pelanggan akan mendapatkan kartu baru yang dapat diisi saldo dan berguna saat melakukan pembayaran, sehingga tidak lagi memerlukan uang tunai. Data kartu baru yang telah di ambil pada proses input akan di kirim ke node utama untuk dikirim langsung ke sistem. Setelah sistem menerima data kartu, proses pendaftaran dapat diselesaikan setelah terlebih dahulu mengisi data pribadi dari pelanggan.
2.2 Proses Pembayaran dan Pengiriman Data Rincian Pembayaran
Ini adalah fungsi kedua dari alat yang akan dibuat, yaitu sebagai pembayaran. Setelah data kartu terkirim dari node utama, data saldo pada kartu pelanggan akan tampil pada halaman kasir. Setelah selesai proses pembayaran, maka sistem akan mengirimkan data rincian pembayaran dengan kartu pelanggan menggunakan fungsi broadcast pesan pada Bot Telegram. Fungsi broadcast ini akan mengirimkan data rincian pembayaran kepada pelanggan yang telah mendaftarkan diri pada Bot Telegram.
2.3 Proses Pendaftaran Pelanggan Pada Bot Telegram
Pelanggan dapat mendaftarkan diri dengan menggunakan aplikasi Telegram.
Pelanggan dapat mencari Bot Telegram pihak penyedia kartu (pihak penjual) dan mengikuti arahan yang diberikan oleh Bot Telegram tersebut. Untuk pendaftaran, dibutuhkan ID kartu, nomor induk kependudukan, dan kata sandi, jika data yang dimasukkan benar, maka data akan dimasukkan kedalam database. Jika salah, maka pelanggan akan diminta untuk memasukkan data yang benar atau membatalkan pendaftaran.
3. Output
Data output yang dihasilkan dari sistem ini berupa pemberitahuan pesan dari Bot Telegram kepada pelanggan yang isinya adalah rincian pembayaran yang telah dilakukan menggunakan kartu pelanggan.
3.1.2 Diagram Kabel
Pada perancangan sistem, terdapat rancangan alur kabel yang akan menghubungkan antara satu peralatan dengan peralatan lainnnya. Rancangan ini dibuat untuk memudahkan proses pemasangan dan penentuan letak peralatan. Pada penelitian ini terdapat dua diagram kabel, yaitu diagram untuk node utama dan diagram untuk node cabang/mesin pembayaran. Gambar 3.2 menunjukkan diagram kabel untuk node utama dan Gambar 3.3 menunjukkan diagram kabel untuk node cabang.
Gambar 3.2 Diagram Kabel Node Utama
Berikut keterangan dari diagram kabel pada node utama dan node utama :
- Modul Baterai CR2032
Modul ini hanya menggunakan dua pinout sebagai komunikasi utama, yaitu pin positif dan negatif. Pin positif pada modul terhubung pada pin VBat STM32F103C8T6, dan pin negatif pada modul terhubung pada pin GND STM32F103C8T6.
- Modul Ethernet W5500
Modul ini berkomunikasi menggunakan SPI. Pada mikrokontroler, modul ini harus menggunakan pinout SPI 1 agar dapat berjalan dengan baik. Pinout pada modul yang terhubung adalah pin CS, SCK, MOSI, MISO, RST, 3.3, dan pin GND. Pin CS pada modul terhubung pada pin PA4 STM32F103C8T6, pin SCK pada modul terhubung pada pin PA5 STM32F103C8T6, pin MOSI pada modul terhubung pada pin PA7 STM32F103C8T6, pin MISO pada modul terhubung pada pin PA6 STM32F103C8T6, pin RST dan pin 3.3 pada modul terhubung pada pin 3,3V STM32F103C8T6, dan pin GND pada modul terhubung pada pin GND STM32F103C8T6.
- Modul NRF24L01
Modul ini menggunakan metode komunikasi SPI. Pin CE pada NRF24L01 terhubung pada pin PA8 STM32F103C8T6, pin CSN pada NRF24L01 terhubung pada pin PB12 STM32F103C8T6, pin SCK pada NRF24L01 terhubung pada pin PB13 STM32F103C8T6, pin MOSI pada NRF24L01 terhubung pada pin PB15 STM32F103C8T6, pin MISO pada NRF24L01 terhubung pada pin PB14 STM32F103C8T6, pin IRQ pada NRF24L01 terhubung pada pin PA0 STM32F103C8T6, pin VCC pada NRF24L01 terhubung pada pin 3,3V STM32F103C8T6, dan pin GND pada NRF24L01 terhubung pada pin GND STM32F103C8T6.
Gambar 3.3 Diagram Kabel Node Cabang/Mesin Pembayaran
Dan berikut keterangan dari diagram kabel pada node utama dan node cabang : - Modul Buzzer
Pin positif pada modul ini dihubungkan pada pin PA1 STM32F103C8T6 dan pin negatif pada modul terhubung pada pin GND STM32F103C8T6.
- Modul MFRC522
Modul ini dihubungkan dengan mikrokontroler STM32F103C8T6 menggunakan metode komunikasi SPI. Pinout modul MFRC522 yang terhubung adalah pin SDA, SCK, MOSI, MISO, RST, VCC, dan GND. Pin SDA pada MFRC522 terhubung pada pin PB0 STM32F103C8T6, pin SCK pada MFRC522 terhubung pada pin PA5 STM32F103C8T6, pin MOSI pada MFRC522 terhubung pada pin PA7 STM32F103C8T6, pin MISO pada MFRC522 terhubung pada pin PA6 STM32F103C8T6, pin RST pada MFRC522 terhubung pada pin PB1 STM32F103C8T6, pin VCC pada MFRC522 terhubung pada pin 3,3V STM32F103C8T6, dan pin GND pada MFRC522 terhubung pada pin GND STM32F103C8T6.
3.1.3 Pembuatan Database Sistem
Untuk database dari sistem yang dibuat menggunakan delapan tabel yaitu tabel data transaksi, pelanggan, produk, stok, detail transaksi, dan tabel sementara untuk bayar dan daftar. Untuk lebih detail mengenai database pada sistem dapat dilihat pada tabel 3.1 hingga tabel 3.8,
Tabel 3.1 Tabel tb_bayar
Atribut Tipe Data Extra
id_kartu varchar(20) none
kode_mesin varchar(10) none
Tabel 3.2 Tabel tb_daftar
Atribut Tipe Data Extra
id_kartu varchar(20) none
kode_mesin varchar(10) none
Tabel 3.3 Tabel tb_detail_transaksi
Atribut Tipe Data Extra
id int(11) PRIMARY_KEY,
Tabel 3.4 Tabel tb_pelanggan
Atribut Tipe Data Extra
id_pelanggan char(7) PRIMARY_KEY
id_telegram varchar(20) None
pin varchar(150) None
blokir enum(‘Y’, ‘N’) Default (N)
Tabel 3.5 Tabel tb_produk
Atribut Tipe Data Extra
id_produk int(11) PRIMARY_KEY,
AUTO_INCREMENT
kode_produk varchar(20) none
nama_produk varchar(50) none
harga int(11) none
Tabel 3.6 Tabel tb_stok
Atribut Tipe Data Extra
id_stok int(11) PRIMARY_KEY,
AUTO_INCREMENT
id_produk int(11) none
jumlah_stok int(11) none
Tabel 3.7 Tabel tb_transaksi
Atribut Tipe Data Extra
no_faktur int(11) PRIMARY_KEY,
Tabel 3.8 Tabel tb_user
Atribut Tipe Data Extra
id_user int(11) PRIMARY_KEY,
AUTO_INCREMENT
username varchar(50) none
Tabel 3.9 Tabel tb_voucher
Atribut Tipe Data Extra
id int(11) PRIMARY_KEY,
AUTO_INCREMENT kode_voucher varchar(30) None
nominal varchar(30) None
status enum(‘Y’,’N’) Default : Y