Rizki Pradana Putra, I Gusti Agung Pt Raka Agung, Pratolo Rahardjo 102
RANCANG BANGUN VENDING MACHINE MENGGUNAKAN QR CODE
BERBASIS MIKROKONTROLER
Rizki Pradana Putra, I Gusti Agung Pt Raka Agung+, Pratolo Rahardjo++
Program Studi Teknik Elektro, Fakultas Teknik, Universitas Udayana
+Email: [email protected] ABSTRAK
Salah satu teknologi yang terus dikembangkan saat ini adalah teknologi sistem otomatis. Sebuah sistem otomatis yang berpotensi untuk terus berkembang di era modern ini adalah vending machine. Seiring dengan perkembangan teknologi, mulai dikembangkan vending machine menggunakan tag/kartu RFID (Radio Frequency Identification) sebagai pengganti uang kertas. Kekurangan dari sistem ini adalah bergantungnya aktivasi mesin pada sebuah tag/kartu RFID yang masih memiliki resiko dari segi keamanan. Oleh karena itu akan dikembangkan vending machine menggunakan QR (Quick Response) Code dan terintegrasi dengan smartphone berbasis android sebagai pengganti RFID. Sistem vending machine menggunakan QR Code berbasis mikrokontroler bekerja untuk mengeluarkan minuman kaleng secara otomatis setelah memproses data serial yang dikirim oleh smartphone melalui aplikasi yang telah dirancang dengan komunikasi Bluetooth. Pengguna dapat mendaftarkan akun pada aplikasi dan mengisi saldo untuk membeli minuman kaleng pada vending machine.
Kata Kunci : Vending Machine, QR Code, Bluetooth HC-05.
ABSTRACT
One of the technologies that continues to be developed today is automated system technology. An automatic system that has the potential to continue to develop in this modern era is the vending machine. Along with the development of technology, vending machines have begun to be developed using tags / RFID cards (Radio Frequency Identification) in lieu of paper money. The disadvantage of this system is the dependence of machine activation on an RFID tag / card that still has security risks. Therefore, a vending machine will be developed using QR (Quick Response) Code and integrated with an Android-based smartphone instead of RFID.
The microcontroller based vending machine system uses a QR Code to work to serve drinks automatically after processing serial data sent by a smartphone through an application that has been designed with Bluetooth communication. Users can register an account on the application and fill in the balance to buy canned drinks at the vending machine.
Keywords: Vending Machine, QR Code, Bluetooth HC-05.
1. Pendahuluan
Sistem otomatis merupakan sebuah sistem yang akan bekerja secara mandiri dan terus menerus tanpa harus dikendalikan oleh manusia.
Contoh sistem otomatis yang berpotensi untuk terus berkembang di era modern ini adalah vending machine. Vending machine merupakan sebuah mesin yang menjual barang seperti makanan ringan, minuman kemasan, bahkan emas batangan secara otomatis atau tanpa memerlukan tenaga operator dalam melakukan aktivitas transaksi [1].
Seiring dengan perkembangan teknologi, mulai dikembangkan vending machine menggunakan tag/kartu RFID (Radio Frequency Identification) sebagai pengganti uang kertas atau koin. Seorang mahasiswa bernama Aulia [2] mengembangkan vending machine menggunakan RFID sebagai aktivatornya. Vending machine ini akan aktif setelah membaca tag/kartu RFID yang sudah terdaftar. Kekurangan dari sistem ini adalah bergantungnya aktivasi mesin pada sebuah tag/kartu RFID yang masih memiliki resiko dari segi keamanan. Kekurangan yang
Rizki Pradana Putra, I Gusti Agung Pt Raka Agung, Pratolo Rahardjo 103 kedua adalah tag/kartu RFID ini hanya
berfungsi sebagai aktivator saja atau belum memuat uang virtual yang digunakan untuk membeli minuman di dalam mesin.
Oleh karena itu akan dikembangkan vending machine menggunakan QR (Quick Response) Code dan terintegrasi dengan smartphone berbasis android sebagai pengganti RFID. Pada vending machine ini akan ditempel QR Code yang sudah berisi data harga dari minuman kaleng yang ada pada mesin.
Proses scanning QR Code dilakukan oleh aplikasi berbasis android pada smartphone. Pada aplikasi ini akan dimuat data berupa username dan saldo pengguna. Komunikasi yang digunakan antara smartphone dan vending machine adalah komunikasi serial menggunakan Bluetooth. Melalui aplikasi ini, minuman kaleng dalam vending machine dapat dibeli. Dengan penelitian ini, diharapkan dapat membantu dalam segi kemudahan dan keamanan dalam bertransaksi pada vending machine.
2. Kajian Pustaka 2.1 Vending Machine
Vending machine merupakan sebuah mesin yang berfungsi sebagai penjual barang secara otomatis hanya dengan memasukkan koin atau uang kertas. Mesin ini dapat mengeluarkan minuman kaleng, makanan ringan, hingga emas batangan sesuai dengan barang apa yang memang dimuat di dalamnya.
2.2 Quick Response Code (QR Code)
QR Code atau kode QR adalah salah satu jenis kode matriks atau kode batang dua dimensi yang dikembangkan Denso Wave. QR merupakan singkatan dari Quick Response atau dalam Bahasa Indonesia dapat diartikan “respon cepat”. Singkatan ini sesuai dengan tujuan dari QR Code yaitu dapat
menyampaikan informasi dengan cepat dan dapat merespon dengan cepat pula [3]. Pada penelitian ini, QR Code digunakan untuk menyimpan data minuman.
2.3 Arduino Nano
Arduino nano adalah salah satu pengembangan board mikrokontroler yang berukuran kecil [4]. Pada penelitian ini, Arduino Nano digunakan sebagai pusat pengolah data dan pengendali vending machine. Arduino Nano ditunjukkan pada Gambar 1.
Gambar 1. Arduino Nano
2.4 Bluetooth HC-05
Modul HC-05 adalah modul Bluetooth SPP (Serial Port Protocol) yang mudah digunakan dan dirancang untuk pengaturan koneksi serial nirkabel [5]. Pada penelitian ini, Bluetooth HC-05 digunakan untuk menerima data serial dari smartphone android dan mengirim data kembali ke smartphone tersebut. Modul bluetooth HC-05 ditunjukkan pada Gambar 2.
Gambar 2. Modul Bluetooth HC-05
2.5 Motor Servo
Motor servo adalah sebuah aktuator yang sudut putarnya dapat diatur secara spesifik menggunakan sinyal kontrol. Shaft pada motor servo dapat mempertahankan posisinya selama sinyal control tidak berubah [6].
Penelitian ini menggunakan dua buah servo yang memiliki fungsi yang berbeda. Servo pertama digunakan untuk menahan minuman kaleng pertama dan servo kedua menahan
Rizki Pradana Putra, I Gusti Agung Pt Raka Agung, Pratolo Rahardjo 104 minuman kaleng kedua. Motor Servo
sg90 ditunjukkan pada Gambar 3.
Gambar 3. Motor Servo
2.6 Sensor Infrared Obstacle Avoidance
Sensor IR Obstacle Avoidance digunakan untuk mendeteksi adanya benda di depan sensor menggunakan pancaran sinar infrared [7]. Pada penelitian ini, sensor IR digunakan untuk mendeteksi adanya minuman pada vending machine. Sensor IR Obstacle Avoidance ditunjukkan pada Gambar 4.
Gambar 4. Sensor IR Obstacle Avoidance
2.7 Arduino Integrated Development Environment (IDE)
Arduino IDE merupakan software pemrograman untuk memasukkan dan membuat program pada Arduino.
Arduino IDE bersifat multiplatform dimana software ini dapat dijalankan pada windows, mac os, android, maupun pada linux [8]. Pada penelitian ini menggunakan Arduino IDE versi 1.8.7. untuk merancang program vending machine.
2.8 MIT App Inventor 2
MIT App Inventor 2 adalah aplikasi inovatif yang dikembangan Google dan MIT untuk mengenalkan dan mengembangkan pemrograman android. Pada penelitian ini menggunakan MIT App Inventor 2 yang dapat diakses secara online melalui
situs web http://ai2.appinventor.mit.edu/
[9].
2.9 Google Sheet
Google sheet adalah salah satu aplikasi yang menjadi bagian dari google cloud yang menawarkan sekumpulan fitur dan fungsi spreadsheet layaknya Microsoft Excel [10]. Pada penelitian ini, Google Sheet digunakan sebagai database untuk menyimpan akun dan saldo, serta data hasil penjualan.
2.10 Google App Script
Google App Script atau GAS merupakan sebuah bahasa pemrograman yang dapat digunakan oleh aplikasi – aplikasi yang terintegrasi dengan Google Cloud salah satunya adalah Google Sheet [11]. Pada penelitian ini, Google App Script digunakan untuk menulis UDF agar Google Sheet dapat digunakan sebagai database online.
3. Metodologi Penelitian
Alur dari penelitian ini dilakukan dengan beberapa tahapan yang ditunjukkan pada Gambar 5.
Rizki Pradana Putra, I Gusti Agung Pt Raka Agung, Pratolo Rahardjo 105 Gambar 5. Diagram Alir Penelitian
Gambar 5. Lanjutan
3.1 Perancangan Perangkat Keras dan Perangkat Lunak
Perancangan perangkat keras (hardware) dilakukan dengan menggunakan dua buah software, diantaranya, perancangan skematik dan lay out PCB menggunakan
software Diptrace 2.4.0.2. Diagram blok rancang bangun vending machine menggunakan QR Code berbasis mikrokontroler ditunjukkan pada Gambar 6
Gambar 6 Diagram Blok Perancangan Perangkat Keras
Garis merah menggambarkan perangkat yang terhubung langsung dengan Power Supply atau catu daya baterai, sedangkan perangkat lainnya mengambil sumber daya langsung dari Arduino Nano. Sementara untuk perangkat lunak (software) dibagi menjadi 2 yaitu software pada vending machine dan pada smartphone android.
Software untuk vending machine dijelaskan melalui diagram alir pada Gambar 7.
Rizki Pradana Putra, I Gusti Agung Pt Raka Agung, Pratolo Rahardjo 106 Gambar 7 Diagram Alir Vending Machine
Hal pertama yang dilakukan adalah inisiasi port dari rangkaian Bluetooth HC-05, rangkaian motor servo, rangkaian sensor IR, dan rangkaian LED. Setelah proses inisiasi, program
membaca input melalui Bluetooth HC- 05. Jika Bluetooth HC-05 mendapat input berupa character “A”, maka program akan membaca status dari sensor IR 1 dan 2. Jika sensor IR 1 memberikan status “HIGH”, maka LED merah 1 akan menyala dan program akan mengirimkan status “minuman 1 kosong” melalui Bluetooth HC-05.
Tetapi jika sensor IR 1 memberikan status “LOW”, maka LED Hijau 1 akan menyala dan program akan mengirimkan status “minuman 1 ada”
melalui Bluetooth HC-05. Hal tersebut berlaku sama untuk sensor IR 2. Jika Bluetooth HC-05 mendapat input berupa character “S”, maka motor servo 1 akan dijalankan sehingga minuman 1 dapat keluar dari vending machine. Jika Bluetooth HC-05 mendapat input berupa character “C”, maka motor servo 2 akan dijalankan sehingga minuman 2 dapat keluar dari vending machine. Jika Bluetooth HC-05 mendapat input berupa character “O”, maka LED Merah 1 akan berkedip. Jika Bluetooth HC-05 mendapat input berupa character “P”, maka LED Merah 2 akan berkedip. Jika tidak ada input data apapun dari Bluetooth HC-05, maka program dan semua rangkaian akan standby untuk menerima input kembali. Software untuk aplikasi android dijelaskan melalui diagram alir pada Gambar 8.
Gambar 8 Diagram Alir Aplikasi Android
Rizki Pradana Putra, I Gusti Agung Pt Raka Agung, Pratolo Rahardjo 107 Gambar 8 Lanjutan
Pertama yang dilakukan adalah inisiasi aplikasi dan memastikan mobile data serta Bluetooth pada smartphone android dalam keadaan on. Setelah inisisasi, program akan membaca input
data pada halaman login. Jika pengguna belum memiliki akun, maka pengguna dapat membuat akun melalui halaman sign up. Jika pengguna sudah memiliki akun, maka pengguna dapat melakukan proses login. Pada halaman menu utama akan ditampilkan data username pengguna dan saldo pengguna yang diambil dari database sesuai dengan data pada halaman login. Kemudian program akan menerima informasi mengenai ketersediaan minuman dari vending machine melalui Bluetooth. Pada halaman menu utama, terdapat 3 tombol yang dapat diakses oleh pengguna yaitu tombol scan, tombol top up, dan tombol buy. Akan tetapi tombol buy hanya dapat diakses setelah program berhasil melakukan scanning terhadap salah satu QR Code yang terdapat pada masing-masing minuman. Jika tombol scan ditekan, maka program akan melakukan proses scanning QR Code. Jika terdapat salah satu QR Code minuman yang sudah terdaftar terdeteksi, maka akan ditampilkan data dari minuman yang sudah terdeteksi dan tombol buy akan menjadi aktif dan dapat diakses. Ketika tombol buy ditekan dan minuman yang terdeteksi tersebut memiliki status tersedia dalam vending machine, maka program akan mengirimkan data minuman tersebut ke vending machine melalui Bluetooth dan program akan menjalankan fungsi pengurangan jumlah saldo pengguna sesuai harga minuman yang terdeteksi. Kemudian program akan mengirimkan informasi penjualan ke database selling unit dan mengirmkan data saldo terbaru ke database secara online. Saat tombol top up ditekan, maka pengguna akan masuk ke halaman menu top up saldo dan dapat memasukkan sendiri berapa jumlah saldo yang akan ditambahkan.
4. Hasil Dan Pembahasan 4.1 Realisasi Hasil Perancangan 4.1.1 Realisasi Vending Machine
Rizki Pradana Putra, I Gusti Agung Pt Raka Agung, Pratolo Rahardjo 108 Vending machine berbasis
mikrokontroler yang dirancang dalam penelitian ini menggunakan modul Bluetooth HC-05 sebagai sistem komunikasi dengan aplikasi android pada smartphone. Vending machine
dirancang dengan sebuah mikrokontroler Arduino Nano sebagai pusat pengolah data sensor dan pengendali servo. Realisasi vending machine berbasis mikrokontroler, ditunjukkan pada Gambar 9
Gambar 9 Realisasi Vending Machine
4.1.2 Realisasi Aplikasi Android Aplikasi berbasis Operating System Android yang dirancang dalam penelitian ini dibuat dengan software MIT App Inventor 2. Aplikasi ini dapat dijalankan pada smartphone Android dari versi 4.4+ (Kitkat) hingga versi 8.1 (Oreo). Aplikasi ini menggunakan internet untuk terhubung dengan database dan menggunakan Bluetooth untuk terhubung dengan vending machine. Kamera utama pada smartphone digunakan untuk proses scanning QR Code melalui aplikasi ini.
Realisasi aplikasi ditunjukkan pada Gambar 10 dan Gambar 11
(a) (b) (c)
Gambar 10 (a) Tampilan Halaman Log In pada Aplikasi. (b) Tampilan Halaman Sign Up pada Aplikasi. (c) Tampilan Halaman Utama pada Aplikasi.
Rizki Pradana Putra, I Gusti Agung Pt Raka Agung, Pratolo Rahardjo 109
(a) (b) (c)
Gambar 11 (a) Tampilan Proses QR Code Scanning oleh Aplikasi. (b) Tampilan Halaman Utama setelah Proses Scanning. (c) Tampilan Halaman Top Up pada Aplikasi.
4.2 Pengujian Rangkaian Komunikasi Bluetooth
Modul Bluetooth HC-05 dapat menerima pesan serial yang dikirim oleh smartphone android sesuai dengan aplikasinya. Hal tersebut juga berlaku sebaliknya, dimana smartphone android dapat menerima pesan serial yang dikirim oleh modul bluetooth HC- 05. Pesan serial yang diterima oleh modul bluetooth HC-05 ditampilkan pada serial monitor yang ditunjukkan pada Gambar 12.
Gambar 12 Tampilan Serial Monitor saat Menerima Data Serial.
Pesan serial yang diterima oleh smartphone android ditampilkan melalui aplikasi android yang telah dirancang dan ditunjukkan pada Gambar 13.
Gambar 13 Tampilan Data Serial pada Aplikasi yang Telah Diterima.
4.3 Pengujian Rangkaian Sensor IR Obstacle Avoidance dan Rangkaian LED
Sensor IR Obstacle Avoidance dan LED indikator berfungsi dengan baik sesuai dengan program yang telah dirancang. Ketika sensor mendeteksi adanya minuman maka LED hijau akan
XK
Rizki Pradana Putra, I Gusti Agung Pt Raka Agung, Pratolo Rahardjo 110 menyala dan ketika tidak mendeteksi
minuman maka LED merah akan menyala. Hasil pengujian ditunjukkan pada tabel 1.
Tabel 1 Hasil Pengujian Sensor IR dan LED
Kondisi LED Hijau 1 LED Merah 1 Minuman 1
Tersedia On Off
Minuman 1
Kosong Off On
Kondisi LED Hijau 2 LED Merah 2 Minuman 2
Tersedia On Off
Minuman 2
Kosong Off On
4.4 Pengujian Rangkaian Motor Servo
Motor Servo bekerja dengan baik sesuai dengan program yang telah dirancang. Pengujian dilakukan dengan mengirimkan pesan melalui komunikasi serial. Hasil pengujian ditunjukkan pada tabel 2.
Tabel 2 Hasil Pengujian Motor Servo Pesan
Serial
Motor Servo 1
Motor Servo 2 Karakter
“S”
Berputar 180° dan
kembali
Diam
Karakter
“C” Diam
Berputar 180° dan kembali
4.5 Pengujian Keseluruhan Sistem Pengujian sistem vending machine dilakukan menggunakan 3 unit smartphone dengan versi Operating System Android yang berbeda dan kamera berbeda. Hasil pengujian ditunjukkan pada tabel 3.
Tabel 3 Hasil Pengujian Sistem Vending Machine dengan Aplikasi Android
Sony Xperia
E3
Sony Xperia Z3
Compact Vivo V9 Sistem
Operasi
Android 4.4.2 (KitKat)
Android 6.0 (Marshmallow)
Android 8.1 (Oreo)
Kamera 5 MP 20.7 MP 16 MP
Utama Pengujian
Sistem Sign Up
Berjalan Dengan Baik
Berjalan Dengan Baik
Berjalan Dengan Baik Pengujian
Sistem Log In
Berjalan Dengan Baik
Berjalan Dengan Baik
Berjalan Dengan Baik Tabel 3 Lanjutan
Sony Xperia
E3
Sony Xperia Z3
Compact Vivo V9 Pengujian
Sistem Scanning
Berjalan Dengan Baik
Berjalan Dengan Baik
Berjalan Dengan Baik Pengujian
Sistem Buy
Berjalan Dengan Baik
Berjalan Dengan Baik
Berjalan Dengan Baik Pengujian
Sistem Top Up
Berjalan Dengan Baik
Berjalan Dengan Baik
Berjalan Dengan Baik
5. Kesimpulan
Simpulan yang didapat melalui penelitian tersebut adalah vending
machine dapat dirancang
menggunakan Arduino Nano sebagai mikrokontroler utama, sensor IR sebagai pendeteksi adanya minuman pada vending machine, motor servo sebagai penahan minuman dan mengeluarkan minuman ketika diperintahkan oleh Arduino Nano, serta modul Bluetooth HC-05 yang berperan sebagai master dan slave untuk komunikasi antara vending machine dengan smartphone melalui aplikasi android.
Daftar Pustaka
[1] Fajarlusy, Apa itu Vending Machine.
2010. Tersedia di:
https://fajarlusy.wordpress.com/201 0/11/17/apa-itu-vending-machine/.
Diakses tanggal 21 Oktober 2018.
[2] M. P. Aulia, Rancang Bangun Mesin Penjual Minuman Otomatis
Menggunakan Rfid (Radio Frekuensi Identification) Berbasis
Mikrokontroller, Padang: Politeknik Negeri Padang, 2016.
[3] Ridwanaz, Pengertian QR Code atau Kode QR dan Penggunaan-nya. 2011.
Rizki Pradana Putra, I Gusti Agung Pt Raka Agung, Pratolo Rahardjo 111 Tersedia di:
http://www.ridwanaz.com/2011/08/
pengertian-qr-code-atau-kode-qr- dan-penggunaan-nya.html. Diakses tanggal 21 Oktober 2018.
[4] Arduino, Arduino Nano. 2019.
Tersedia di:
https://store.arduino.cc/usa/arduino -nano. Diakses tanggal 30 March 2019.
[5] Itead Studio, HC-05. 2010. Tersedia di: http://www.electronicaestudio.com/
docs/istd016A.pdf. Diakses tanggal 21 Oktober 2018.
[6] Servodatabase, TowerPro SG90 Servo. 2019. Tersedia
di: https://servodatabase.com/servo /towerpro/sg90. Diakses tanggal 22 April 2019.
[7] Research Design Lab, IR Obstacle Sensor. 2012. Tersedia
di: https://researchdesignlab.com/ir-
obstacle-sensor.html. Diakses tanggal 22 April 2019.
[8] Arduino, Download the Arduino IDE.
2018. Tersedia di:
https://www.arduino.cc/. Diakses tanggal 21 Oktober 2018.
[9] Massachusetts Institute of
Technology, MIT App Inventor. 2017.
Tersedia di:
http://ai2.appinventor.mit.edu.
Diakses tanggal 7 Oktober 2018.
[10] Google Inc., Google Sheet. 2017.
Tersedia di:
https://www.google.com/intl/en_US /sheets/about/. Diakses tanggal 21 Oktober 2018.
[11] Google Inc., Google Apps Script.
2017. Tersedia di:
https://developers.google.com/apps -script/overview. Diakses tanggal 21 Oktober 2018.