Aplikasi Embedded Internet
pada Vending Machine Menggunakan Microprocessor Rabbit RCM3200
1.PENDAHULUAN
Vending Machine adalah sebuah mesin penjual minuman
yang dapat beroperasi secara standalone untuk melayani transaksi pembelian
minuman atau makanan kecil. Vending Machine konvensional yang beredar saat ini
memiliki beberapa kekurangan yaitu pengelola tidak bisa mempunyai informasi
secara on-line yang sewaktu-waktu bisa diakses misalnya tentang kondisi mesin
seperti: hasil transaksi penjualan,stok produk yang tersimpan pada mesin,
kondisi mesin pendingin dan lain-lain.
2.TUJUAN
Untuk mengatasi masalah agar supaya pengelola lebih
mudah mengontrol vending machine, penelitian ini dibangun sebuah model sistem
embedded pengendali vending machine yang memiliki koneksi Internet (embedded
Internet). Dengan demikian seluruh aktifitas mesin dapat dimonitor oleh
pengelola mesin secara jarak jauh sepanjang masih ada koneksi web Internet.
Pengelola dapat memonitor transaksi penjualan, stok produk serta temperatur
mesin pendingin. Sistem embedded Internet saat ini sudah mulai popular
diaplikasikan pada sistem kendali, peralatan rumah tangga, instrumentasi dan
lain-lain [1,2]. Selanjutnya paper ini diorganisasi sebagai berikut: bagian 2
mengulas tentang teknologi embedded internet yan digunakan, bagian 3
membicarakan tentang perancangan sistem dan bagian 4 tentang pengujian sistem
serta diakhiri dengan penutup.
METODE YANG DIGUNAKAN
3.1 Mikroprosesor Rabbit 3000
Mikroprosesor yang akan digunakan adalah
mikroprosesor Rabbit 3000 mempunyai kemampuan yang tinggi, low-EMI
microprocessor yang didesain secara spesifik untuk embedded control,
komunikasi, dan koneksi dengan Ethernet dan Internet.
3.2 Dynamic C [5,6]
Dynamic C merupakan Software yang didesain khusus
untuk digunakan pada kontroler Z-World dan kontroler lainnya yang berbasiskan
mikroprosesor Rabbit. Rabbit 2000 dan Rabbit 3000 merupakan mikroprosesor 8
bit. Dynamic C terintegrasi dari beberapa fungsi yaitu editing, compiling,
linking, loading, dan debugging dalam 1 program. Pada kenyataannya, compiling,
linking, loading adalah 1 fungsi. Di dalam Dynamic C terdapat editor teks yang
mudah untuk digunakan.
3.3 Pemrograman Socket dengan PHP
Penelitian ini mencoba untuk mengaplikasikan PHP
terutama penggunaan pemrograman socket. Socket menyediakan jalan bagi client
dan server untuk saling berkomunikasi di dalam jaringan komputer. Socket
membuat jalur end to end communication (yang memungkinkan client untuk mengirim
request ke server dan server menerima request tersebut dan memberikan respon
kepada client.
4.CARA KERJA
4.1 Perencanaan Sistem Vending Machine
Sistem ini dibagi menjadi 2 bagian utama yaitu modul
Rabbitcore RCM3200 dan computer administrator. Modul Rabbitcore RCM3200
diaplikasikan sebagai vending machine dan terdapat interface input dan output
yaitu : • Driver Solenoid • Keypad • LCD
16×2 • Sensor Suhu.
4.1.1 Software RabbitCore RCM3200 (Vending Machine)
Cara kerja dari RabbitCore adalah saat pertama kali
dinyalakan, maka akan dilakukan inisialisasi port dan alamat IP tertentu.
Kemudian mulai mencet penekanan keypad. Jika tidak ada penekanan keypad, maka
program akan menunggu selama 60 detik. Dan setelah waktu 60 detik terpenuhi
tanpa ada penekanan keypad, maka dijalankan pengecekan input data (berupa
suhu). Dan jika data telah siap atau tersedia, data tersebut dikonversikan
menjadi derajat Celsius yang kemudian dikirimkan pada server. Kemudian
dilakukan cek penekanan keypad kembali. Jika ada penekanan keypad, maka
RabbitCore akan meminta input data berupa NRP, password dan pilihan minuman
yang dipesan sertan menampilkannya pada LCD. Dan setelah semua input data
masuk, maka data tersebut akan dikirimkan pada server (untuk dicek
validasinya). Setelah mendapat balasan dari server (bahwa data tersebut valid),
maka transaksi pembelian dijalankan. Dan jika tidak valid, maka transaksi
ditolak. Untuk membatalkan transaksi, user dapat menekan tombol ”cancel” pada
keypad.
4.2 Perencanaan Software
Dalam perencanaan software dibedakan menjadi dua
bagian utama, yaitu software untuk modul RabbitCore RCM3200 (vending machine)
dan software pada komputer administrator. Vending machine berbasiskan RabitCore
disebut pulasebagai komputer client sedangkan computer administrator disebut
pula sebagai server. Administrator/Server berfungsi untuk pencatatan data-data
vending machine dan layanan akses pengguna.
4.2.1. Software pada Komputer Administrator
2.2.1.1. Database MySQL
Pada komputer administrator, dibuat sebuahdatabase
dengan nama vending yang mempunyai 4 tabel, yaitu :
Tabel data_user digunakan untuk menyimpan data-data
penting pelanggan atau konsumen. Kolom saldo akan berkurang nilainya, jika
terjadi transaksi pada pelanggan yang bersangkutan sesuai dengan harga yang
telah ditentukan.
Tabel logging digunakan untuk menerima dan menyimpan
data berupa suhu dan waktu yang dikirim oleh vending machine.
Tabel stok_minuman digunakan untuk menyimpan jumlah
stok minuman yang tersedia pada vending machine.
Tabel transaksi digunakan untuk menerima dan
menyimpan transaksi yang terjadi. • Tabel voucher digunakan untuk menyimpan
pembelian voucher.
4.2.2.2. PHP
Terdapat 2 skrip program utama yaitu
‘server_NRP_password.php’ dan ‘server_logging.php’. File
‘server_NRP_password.php’ digunakan agar komputer admin menjadi server pada
port 1237 (yang menunggu, menerima input dari vending machine berupa data NRP,
password dan pilihan minuman, serta memberi balasan berupa validasi transaksi).
File ‘server_logging.php’ menjalankan computer admin menjadi server pada port
1242 (yang menunggu, menerima input dari vending machine berupa data suhu dan
waktu, kemudian menyimpannya pada database, serta member balasan pada vending
machine bahwa data telah diterima).
5.LANDASAN TEORI
5.1 Aplikasi Embedded Internet
Sistem embedded merupakan computing device yang didesain dengan tujuan
tertentu secara spesifik untuk melakukan fungsi tertentu. Sistem embedded
terdiri dari perangkat keras dan perangkat lunak. Perangkat keras meliputi
mikroprosesor atau mikrokontroler dengan penambahan memori eksternal, I/O dan
komponen lainnya seperti sensor, keypad, LED, LCD, dan berbagai macam aktuator
lainnya. Perangkat lunak embedded merupakan penggerak pada sistem embedded.
Sebagian besar perangkat lunak sistem embedded real time memiliki program
aplikasi yang spesifik yang didukung oleh Real Time Operating System (RTOS).
Perangkat lunak embedded biasanya disebut firmware karena perangkat lunak tipe
ini dimuat ke ROM, EPROM atau memory Flash. Sekali program dimasukkan kedalam
perangkat keras maka tidak akan pernah berubah kecuali diprogram ulang.
5.2 Vending
Machine
Vending
machine merupakan suatu alat atau mesin yang menjual barang secara otomatis.
Vending Machine tidak membutuhkan tenaga operator untuk menjual barang, kita
dapat memilih sendiri barang yang kita inginkan.
Vending
Machine menurut sejarahnya ditemukan pada abad pertama oleh seorang pahlawan
dari Alexandria. Vending Machine modern pertama kali diperkenalkan di London
pada tahun 1880, vending machine ini menjual kartu pos. Sedangkan di US pada
tahun 1888 dibuat vending machine untuk menjual permen karet, mesin dibuat oleh
Thomas Adams Gum Company yaitu perusahaan pembuat permen karet. Perkembangan
vending machine justru berkembang pesat di Jepang. Dimana hampir segala
kebutuhan sehari-hari jika bisa di buat vending machinenya.
Cara
pengguanaan mesin ini sangatlah mudah yaitu kita tinggal memasukan uang koin
atau kertas (ada juga yang menggunakan kupon), lalu kita tekan tombol sesuai
dengan barang yang kita inginkan, maka barang yang kita pilih akan dengan
sendiri keluar.
5.3 Microprocessor
Rabbit RCM3200
Mikroprosesor yang akan
digunakan adalah mikroprosesor Rabbit 3000 mempunyai kemampuan yang tinggi,
low-EMI microprocessor yang didesain secara spesifik untuk embedded control,
komunikasi, dan koneksi dengan Ethernet dan Internet. Buffer I/O Rabbit
mempunyai batas kemampuan arus sourcing dan sinking sebesar 6.8 mA per pin
dengan batas tegangan maksimum untuk semua I/O adalah 5.5 V. RCM3200 mempunyai
I/O parallel sebanyak 52 buah yang dikelompokkan menjadi 7 port (masing-masing
8 bit) yang tersedia pada header J1 dan J2. Sebanyak 44 bidirectional I/O
terletak pada pin PA0-PA7, PB0, PB2-PB7, PD2-PD7, PE0-PE1, PE3-PE7, PF0-PF7,
dan PG0-PG7.
6.KESIMPULAN
Setelah melakukan pengujian
diatas kini Vending Machine dapat tampil lebih baik karena didukung dengan
koneksi internet yang memudahkan pengelola alat tersebut.Dengan demikian
seluruh aktifitas mesin dapat dimonitor oleh pengelola mesin secara jarak jauh
sepanjang mesin ada koneksi internet.pengelola dapat memonitor transaksi
penjualan,stok barang yang tersisa serta temperature/suhu pada mesin pendingin.
7.KEKURANGAN
DAN KELEBIHAN
7.1
Kekurangan
Sistem masih
belum menjamin sekuritas pengiriman data. Karena data yang dikirim masih dalam
bentuk plain text, sehingga data dapat dengan mudah untuk dibaca oleh semua
orang sehingga masih dapat terjadi kecurangan.
Kekurangan
pada protokol transaksi sistem, yaitu saat itu transaksi yang terjadi belum
selesai (contoh: sudah dilakukan pengurangan rekening pada database, kemudian
pada saat server mengirim respon, jaringan internet putus) telah dapat diatasi
dengan menambahkan acknowlegment pada client dan kemudian dilakukan update pada
database server .
Sistem
vending machine masih terdapat bug,yaitu pada saat terjadi bentrok antara
proses monitoring suhu dan proses transaksi. Hal ini diatasi dengan melakukan
pembatalan transaksi oleh user.
Untuk
menghindari terjadinya gangguan pemadaman listrik, vending machine dapat
dihubungkan dengan UPS agar tetap dapat melakukan fungsinya.
Karena
internet merupakan media komunikasi yang bersifat publik maka perlu
diperhatikan masalah sekuritas data agar dapat mengurangi kecurangan.
7.2
Kelebihan
Modul yang
terhubung pada vending machine telah berfungsi dengan baik sehingga mendukung
penerapan aplikasi vending machine konvensional pada umumnya.
Pengujian
embedded vending machine telah dapat memecahkan masalah yang dihadapi pada
vending machine konvensional di dalam hal mendapatkan informasi mesin yang up
to date seperti suhu, stok minuman dan waktu terjadinya transaksi.
Penggunaan
modul Rabbitcore RCM3200 yang berbasiskan mikroprosesor Rabbit 3000 dapat
berjalan standalone dan sangat mendukung penerapan pengintegrasian vending
machine pada jaringan internet terutama dalam pertukaran data yang dilakukan
client (vending machine) dan server (komputer admin) .