Pelita Informatika Budi Darma, Volume : XV, Nomor: 1, Oktober 2016
ISSN : 2301-9425
PENERAPAN FUNGSI TRANDUCER DALAM MERANCANG SIMULASI VENDING MACHINE 1
2
Samuel Banurea (1111173), Garuda Ginting
1) 2)
Mahasiswa program studi Teknik Informatika STMIK Budidarma Medan Dosen Tetap Program Studi Teknik Informatika STMIK Budi Darma Medan Jl. Sisingamangaraja No. 338 Simpang limun Medan http\\ stmik-budidarma.ac.id// Email:
[email protected]
ABSTRAK Simulasi dari proses dalam vending machine atau mesin penjual otomatis sebagai pembelajaran dalam matakuliah Teori Bahasa Automata (TBO) yang berkaitan dengan finite state machine (FSM) dengan keluaran atau sering disebut tranducer menggunakan mealy machine. Untuk menambah pengetahuan para mahasiswa mengenai finite state machine (FSM) dengan keluaran dengan contoh kasus vending machine. Tahapan yang terpenting pada simulasi fungsi ini adalah pembuatan diagram transisi dengan 4 buah state yang dilanjutkan dengan pembuatan tabel transisi. Untuk proses simulasi pada vending machine ini adalah mulai dari melihat harga minuman, memasukan koin,memilih minuman dan selanjutnya masuk kepada tahapan terpenting pada simulasi yaitu pembentukan diagram transisi dan tabel transisi. Dalam mealy machine setiap input pasti akan mengluarkan suatu keluaran. Dan output yang dikeluarkan itu menghasilkan suatu formulasi kondisi yaitu diterima atau ditolak. Untuk kondisi diterima, mesin harus menerima input koin minimal sebanyak 3000 rupiah atau lebih. Kata kunci: Vending Machine, Tranducer, Mealy Machine, State, 1. PENDAHULUAN 1.1 Latar belakang masalah Pemroses data atau pemecah masalah itu adalah perangkat lunak komputer. Operasi dasar ini disusun program atau perangkat lunak. Tingkat pemrosesan yang dikerjakan perangkat lunak pun dari machinelike, mulai berubah seperti human-like. Dalam teori informasi, disusun hirarki informasi, mulai dari data atau fakta, kemudian setelah proses seleksi dan pengurutan menjadi sesuatu yang berguna menjadi informasi. Informasi yang disusun secara sistematis dengan suatu alur logika tertentu menjadi knowledge. Dan pada akhirnya gabungan knowledge yang digabung dari berbagai sisi guna membangun wisdom. Data yang di proses pun telah banyak berubah, yang semula hanya berupa data bilangan dan karakter merambah ke audio visual (bunyi, suara, gambar, film). Sejauh perkembangan hingga saat ini, seluruh proses menggunakan format data digital dengan satuan bit (binary digit). Di dalam finite statate machine with output ada beberapa contoh yang dapat digunakan dalam penelitian seperti vending machine, mesin ATM dan lain-lain. Dalam vending machine terdapat beberapa aspek yang harus dipelajari seperti bagaimana proses dalam menjalankan vending machine. 1.2 Perumusan Masalah Adapun rumusan masalah dari rancangan simulasi ini adalah : 1. Bagaimana memahami kerja pencarian vending machine ?
2.
Bagaimana merancang simulasi vending machine yang sesuai dengan fungsi tranducer ? 3. Bagaimana simulasi vending machine dengan menggunakan fungsi tranducer ? 1.3 Batasan Masalah Adapun yang menjadi batasam masalah pada penelitian ini adalah sebagai berikut : 1. Perangkat lunak hanya berupa simulasi dari vending machine. 2. Menggunakan koin 500 dan 1000 sebagai masukkan dan dalam perancangan nilai koin hanya berupa input angka. 3. Jenis minuman yang digunakan adalah Cocacola,Sprite,Fanta,Pepsi,Pocari Sweat,Green Sand. 4. Harga minuman 3000, 3500 dan 4000. 1.4 Tujuan dan Manfaat Penelitian 1.4.1 Tujuan Penelitian Adapun tujuan dari penenelitian ini adalah sebagai berikut: 1. Merancang suatu Aplikasi vending machine yang sesuai dengan fungsi tranducer dengan pendekatan teori bahasa automata. 2. Mengimplementasikan hasil rancangan Aplikasi vending machine tersebut menjadi sebuah Aplikasi . 3. Dalam pembuatan Aplikasi Simulasi Vending Machine Softdrink dapat digunakan dalam pembelajaran dalam kuliah Teori Bahasa Automata tentang Tranducer atau Finite State Machine With Output.
Penerapan Fungsi Tranducer Dalam Merancang Simulasi Vending Machine Oleh: 1Samuel Banurea,2 Garuda Ginting
46
Pelita Informatika Budi Darma, Volume : XV, Nomor: 1, Oktober 2016
1.4.2 Manfaat Penelitian Adapun manfaaat dari hasil penelitian ini adalah sebagai berikut: 1. Menambah pengetahuan khususnya kepada penulis dan kepada pembaca pada umumnya. 2. Menerapkan teori dan praktek pada Mata Kuliah Teori Bahasa Automata. 3. Lebih memahami tentang cara kerja Finite State Machine dengan Output (Tranducer) yang dikembangkan dalam bentuk Aplikasi. 4. Menguji ilmu pengetahuan teori dan praktikum yang telah didapat pada bangku kuliah. 2. LANDASAN TEORI 2.1 Teori Bahasa Dan Automata Automata berasal dari kata automatic yang artinya bekerja dengan sendirinya. Secara istilah, automata adalah ilmu yang mempelajari mesin abstrak yang dapat menerima masukan secara sekuensial dan dapat menghasilkan keluaran. Setiap automata memiliki mekanisme untuk membaca masukan dari awal hingga akhir. Automata juga dapat dirancang untuk menghasilkan keluaran, menyimpan sementara simbol dari alfabet dan memanipulasi isi dari sel simpanan. Automata mempunyai unit kendali yang memiliki berhingga status dan mampu mengubah status tersebut. Secara umum, automata dapat digolongkan menjadi dua, yaitu accepter dan tranducer. Accepter (recognizer) adalah automata yang akan membuat keputusan tentang diterima atau tidaknya suatu masukan, sedangkan tranducer adalah accepter yang mampu menghasilkan keluaran. Pengembangan teori automata, komputasi dan teori bahasa difasilitasi perkembangan bidang psycholinguistic. Bidang psycho-linguistic berupaya menjawab pertanyaan-pertanyaan berikut : Apakah bahasa itu secara umum? Bagaimana manusia mengembangkan bahasa? Bagaimana manusia memahami bahasa? Bagaimana manusia mengajarkan bahasa ke anakanak? Apa gagasan-gagasan yang dapat dinyatakan dan bagaimana caranya? Bagaimana manusia membangun kalimat-kalimat dari gagasan-gagasan yang ada di pikirannya? 3.ANALISA DAN ALGORITMA 3.1 Analisa Masalah Dalam pembuatan simulasi terdapat suatu automata yang menjelaskan bagaimana pembacaan atau pendefinisian Simulasi Vending Machine. Contoh Automata tranducer adalah sebagai berikut:
ISSN : 2301-9425
KET: O= 0
A = 500
B,O
B,O A,o
Q0
Q1
C,O D,O
C,O D,O
B = 1000
A,o
B,O
A,o
C = Jeruk
B,O
B,O B,A
A,o
A,o
A,o
D = Apel
Q2
Q3
Q4
Q5
C,O D,O
C,O D,O
C,O D,O
C,O D,O
B,B Q6 A,A
C , Jus Jeruk D , Jus Apel
Gambar 3.1 Contoh diagram status tranducer Penjelasan rancangan diatas bahwa setiap kali ada masukkan pasti diikuti dengan keluaran sehingga aturan dapat digunakan dalam pembuatan simulasi vending machine yang masukkan berupa koin dan keluaran berupa koin sisa atau minuman kaleng. Sehingga automata tersebut digunakan dalam pembuatan simulasi. Perancangan automata di atas merupakan salah satu dari beberapa aturan yang terdapat di Finite State Automata (FSA), yaitu tranducer atau finite state machine with output. 3.2 Algoritma
Algoritma Algoritma adalah suatu cara yang digunakan untuk memperoleh atau menerangkan suatu keadaan tertentu sehingga bisa lebih mudah dimengerti, dan dalam penulisan skripsi ini juga penulis membuat algoritma untuk menjelaskan kepada pembaca bagaimana sistem yang dibangun dapat berjalan. 1 Algoritma Tranducer input : koin, state output : Kaleng minuman, kembalian Proses : Masukkan koin kedalam vending machine JumlahKoin = JumlahKoin+Koin State = JumlahKoin / 500 Jika State > 9 maka State = 9 Jika JumlahKoin >= 4000 maka Greensand Tersedia Jika JumlahKoin >= 3500 maka Pocari dan Pepsi Tersedia Jika JumlahKoin >= 3000 maka Cola, Fanta dan Sprite Tersedia Jika memesan Greensand maka JumlahKoin – 4000 Jika memesan Pocari atau Pepsi maka JumlahKoin – 3500
Penerapan Fungsi Tranducer Dalam Merancang Simulasi Vending Machine Oleh: 1Samuel Banurea,2 Garuda Ginting
47
Pelita Informatika Budi Darma, Volume : XV, Nomor: 1, Oktober 2016
ISSN : 2301-9425
Jika memesan Cola atau Fanta atau Sprite maka JumlahKoin – 3000 Jika ingin mengeluarkan koin maka Kembalian = JumlahKoin Ambil KalengMinuman Ambil Kembalian Karena dalam simulasi ini terdapat limit state maka dibuatkan algoritma pembagi, jadi apabila sampai state akhir maka apabila ada masukkan32 maka akan tetap di state akhir, misal apabila dari state Q8 kita masukkan koin 1000 seharusnya pindah di state Q10 akan tetapi di dalam simulasi ini state hanya sampai Q9 maka dari Q8 akan berpindah di Q9. algoritma pembagi atau algoritma modulo dapat dilihat pada algoritma 4.1. 4. IMPLEMENTASI 4.2.1 Implementasi Simulasi Hal pertama yang harus dilakukan dalam Gambar 4.2 Tampilan program input pembuatan simulasi adalah membuat procedure untuk setelah dijalankan dengan masukkan koin menampilkan tabel transisi, Program untuk 1000. menampilkan tabel transisi dan tampilan setelah dijalankan dapat dilihat pada gambar 4.1. KAMUS GLOBAL angkageser : variant (untuk menyimpan hasil bagi) Procedure modulo() { Procedure untuk melakukan pembagian koin } ALGORITMA angkageser koin / 500 if angkageser > 9 then angkageser 9 end if gesershape(angkageser) Gambar 4.1 Tampilan Tabel Transisi if koin > 4500 then setelah program dijalankan sisa koin – 4500 else Program untuk menampilkan tabel sisa 0 transisi diatas mengacu pada tabel transisi yang end if sudah dibuat pada perancangan. Program input akan menerima masukkan dalam hal ini koin dan akan menambahkan koin masukkan sebelumnya dengan koin yang dimasukkan misal masukkan koin pertama 1000 dan yang kedua koin 500 maka hasil penjumlahan dengan program input adalah 1500. Program input dan tampilan program input setelah dijalankan dapat dilihat pada gambar 4.2.
Penerapan Fungsi Tranducer Dalam Merancang Simulasi Vending Machine Oleh: 1Samuel Banurea,2 Garuda Ginting
48
Pelita Informatika Budi Darma, Volume : XV, Nomor: 1, Oktober 2016
ISSN : 2301-9425
Gambar 4.3 Tampilan penjumlahan masukkan dengan masukkan sebelumnya.
4.2.2 Implementasi Form Dalam pembuatan aplikasi tersebut diperlukan beberapa kontrol tambahan yang tidak tersedia di dalam kontrol instrinsik. Kontrol-kontrol tambahan tersebut adalah mscomctl.ocx(ListView). Tampilan dari form simulasi yang telah dibuat dapat dilihat pada gambar 4.4 dan gambar 4.5.
Gambar 7 tampilan menu utama (main form) vending machine 4.3.2 Proses Simulasi pada Vending Machine Untuk proses simulasi vending machine pada gambar 4.9 dan gambar 4.10 dibawah adalah input koin dengan jumlah 500 dan dilakukan pengimputan lagi dengan jumlah koin 1000. Dalam state diagram akan terjadi pergerakan pencarian nilai koin yang di inputkan.
Gambar 4.4 Tampilan objek form Simulasi 3 Implementasi Sistem Pada tahapan ini berisikan tentang semua proses yang terdapat dalam sistem, dimana semua proses tersebut diimplementasikan kedalam sistem sehingga sistem dapat berjalan dengan baik dan benar. Implementasi sistem program ini mencakup spesifikasi kebutuhan perangkat keras (hardware) dan spesifikasi perangkat lunak (software). 4.3 Cara Kerja Sistem Cara menjalankan program simulasi vending machine 1. Tampilan Form Utama Simulasi Vending Machine Tampilan program utama simulasi vending machine dapat dilihat pada gambar 4.7 dibawah ini. Pada program utama inilah akan diproses simulasi vending machine.
Gambar 8 Proses simulasi penginputan koin 500
Gambar 9 Proses simulasi penginputan koin 1000 Pada bagian pengambilan kembalian uang semua proses simulasi pada vending machine akan kembali
Penerapan Fungsi Tranducer Dalam Merancang Simulasi Vending Machine Oleh: 1Samuel Banurea,2 Garuda Ginting
49
Pelita Informatika Budi Darma, Volume : XV, Nomor: 1, Oktober 2016
pada tahap awal. proses pada state diagram akan kembali state awal.
Gambar 10 Proses simulasi pada Veinding Machine 5. KESIMPULAN Berdasarkan hasil penelitian dan analisa dari pembuatan Simulasi vending machine dan sudah sampai pada implementasi aplikasi, maka dapat diambil kesimpulan sebagai berikut: 1. Telah dibuat suatu aplikasi simulasi vending machine yang dapat menjelaskan cara kerja vending machine.
2.
ISSN : 2301-9425
Simulasi vending machine yang dibuat dapat menerima inputan koin 500 dan 1000 dan menghasilkan output berupa keterangan minuman yang dipilih dan sisa koin yang telah dimasukkan.
DAFTAR PUSTAKA [1] Kusumadewi.S,2000 Sistem Operasi, Edisi Kedua,Graha Ilmu,Jakarta. [2] Hariyanto.B,1999,Sistem Operasi,,Edisi Kedua,Informatika,Bandung. [3] Pengantar Sistem Operasi,Masyarakat Digital Gotong Royong (MDGR),Revisi 4.0. [4] Sistem Operasi,Gabungan Kelompok Kerja 21-28 IKI -20230 (http://www.bebas.vlsm.org/v06/kuliah /SistemOperasi/BUKU.html). [5]Erma Suryani,2006,Pemodelan dan Simulasi,,PT Graha Ilmu. [6] Mesran,2009,Visual Basic,Mitra Wacana Media,Medan. [7]Tim Divisi Penen Litian dan Pengembangan,Marir dalam 7 hari pemograman Visual Basic,Madiun:Andi, 2005 [8] www.cs.ucr.edu/~ysong/cs160/lab6/readerwriter.html,tanggal akses 16 januari 2016
Penerapan Fungsi Tranducer Dalam Merancang Simulasi Vending Machine Oleh: 1Samuel Banurea,2 Garuda Ginting
50