proposal tugas akhir

17
PERANCANGAN PERANGKAT LUNAK PADA VENDING MACHINE MENGGUNAKAN APLIKASI NETBEANS DAN CODEVISION AVR USULAN TUGAS AKHIR Dibuat Untuk Memenuhi Syarat Mendapatkan Gelar Sarjana Teknik pada Jurusan Teknik Elektro Fakultas Teknik Universitas Sriwijaya Oleh : PANJI AREKSA 03081004049

Upload: panji-areksa

Post on 12-Aug-2015

217 views

Category:

Documents


8 download

TRANSCRIPT

PERANCANGAN PERANGKAT LUNAK PADA VENDING MACHINE MENGGUNAKAN APLIKASI NETBEANS DAN CODEVISION AVR

USULAN TUGAS AKHIR

Dibuat Untuk Memenuhi Syarat Mendapatkan Gelar Sarjana Teknik pada Jurusan Teknik Elektro Fakultas Teknik Universitas Sriwijaya

Oleh : PANJI AREKSA 03081004049

JURUSAN TEKNIK ELEKTRO FAKULTAS TEKNIK UNIVERSITAS SRIWIJAYA 2012

PERANCANGAN PERANGKAT LUNAK PADA VENDING MACHINE MENGGUNAKAN APLIKASI NETBEANS DAN CODEVISION AVR

USULAN TUGAS AKHIRDibuat Untuk Memenuhi Syarat Mendapatkan Gelar Sarjana Teknik pada Jurusan Teknik Elektro Fakultas Teknik Universitas Sriwijaya

Oleh : PANJI AREKSA 03081004049

Palembang, 12 Desember 2012 Pembimbing Utama,

Ir. Sariman, MS NIP. 19580707 198703 1 004

JUDUL

:

PERANCANGAN PERANGKAT LUNAK PADA DRINK VENDING MACHINE MENGGUNAKAN APLIKASI NETBEANS DAN CODEVISION AVR

BIDANG

:

TEKNIK KENDALI DAN KOMPUTER

1. 1.1

PENDAHULUAN Latar Belakang Bandara sebagai tempat pemberhentian pesawat tentu ramai dengan orang-orang yang menunggu kedatangan kerabat, menanti keberangkatan ataupun transit. Kegiatan menunggu seperti ini tentulah menjadi hal yang sangat membosankan bila tidak diisi dengan kegiatan lain. Makan dan minum bisa jadi alternatif untuk memecah kebosanan. Untuk kemudahan transaksi di bandara disediakan sejumlah drink vending machine. Mesin-mesin ini biasanya memajang berbagai jenis minuman yang di jual. Kondisi ini menggelitik penulis untuk membuat inovasi atas drink vending machine ini. Penulis bermaksud untuk merancang drink vending machine yang memiliki antarmuka sebuah layar monitor untuk menampilkan jenis-jenis minuman yang dijual sehingga mesin tidak harus berukuran sangat lebar. Selain itu untuk mengatasi kejenuhan mereka yang sedang menunggu, penulis bermaksud untuk menghibur mereka yang sedang menunggu dengan menambahkan permainan yang unik pada mesin ini.

1.2 Perumusan Masalah Adapun masalah yang akan diangkat yakni : 1. 2. 3. Bagaimana menampilkan jenis-jenis minuman pada layar monitor Bagaimana membuat Game dengan bahasa pemrograman Java Bagaimana memrogram kontroler untuk mengeluarkan minuman yang dipilih oleh pembeli

1.3

Pembatasan Masalah Dari latar belakang diatas, maka batasan-batasan masalah pada Tugas Akhir ini adalah sebagai berikut : 1. 2. Java sebagai bahasa pemrograman pada antarmuka NetBeans IDE 7.2 sebagai program developer untuk aplikasi java

1.4

Tujuan Penulisan Tujuan pada tugas akhir ini adalah merancang sebuah drink vending machine dengan inovasi game sebagai cara unik untuk membeli dengan antar meuka sebuah monitor.

1.5

Metodologi Penulisan Adapun metode-metode yang akan digunakan dalam penulisan tugas akhir antara lain: 1. Metode studi literature, yaitu memperoleh bahan-bahan penulisan dari buku maupun website. 2. Metode observasi, yaitu studi yang dilakukan dengan cara melakukan pengamatan dan percobaan pada alat. 3. Metode konsultasi, yaitu Konsultasi dilakukan dengan dosen pembimbing ataupun dengan pembimbing dari instansi yang bersangkutan serta dengan pihak pihak yang berkenaan dengan tugas akhir ini.

2. 2.1

TINJAUAN PUSTAKA NetBeans NetBeans merupakan sebuah aplikasi Integrated Development Environment (IDE) yang berbasiskan Java dari Sun Microsystems yang berjalan di atas swing. Swing merupakan sebuah teknologi java untuk pengembangan aplikasi desktip yang dapat berjalan pada berbagai macam platform seperti windows, linux, Mac OS X dan Solaris. Sebuah IDE merupakan lingkup pemrograman yang di integrasikan ke dalam suatu aplikasi perangkat lunak yang menyediakan Graphic User Interface (GUI), suatu kode editor atau text, suatu compiler dengan suatu debugger. NetBeans juga digunakan oleh programmer utnuk menulis, mengcompile, mencari kesalahan dan menyeberkan program netbeans yang ditulis dalam bahasa pemrograman java namun selain itu dapat juga mendukung bahasa pemrograman lainya dan program ini pun bebas untuk mobile applications dengan Java language, C/C++, dan bahkan dynamic languages seperti PHP, JavaScript, Groovy, dan Ruby.

2.2

CodeVision AVR CodeVision AVR merupakan software untuk membuat code program mikrokontroler AVR. Kebanyakan programmer memakai software ini karena fasilitas-fasilitas yang disediakan CodeVision AVR sangatlah memudahkan bagi programmer dalam mambuat code.

2.3

Library GTGE Golden T Game Engine (GTGE) merupakan sebuah 2D Game Library / Game SDK (Software Development Kit) untuk membuat game yang berkualitas dengan mudah. GTGE merupakan kumpulan fungsi bahasa pemograman Java (pustaka Java), yang artinya Anda akan menggunakan bahasa pemograman Java untuk membuat game dengan GTGE. GTGE merupakan suatu pustaka lapisan tingkat tinggi (High Level Interface), artinya programmer tidak perlu mengkhawatirkan perintah tingkat rendah lagi (yang menyangkut perintah ke hardware komputer). GTGE mencoba menutupi (namun tidak mengunci) fungsi tingkat rendah tersebut dengan menempatkan programmer pada lapisan yang paling baik agar programmer dapat membuat game dengan senyaman mungkin. GTGE memberikan akses ke fungsi hardware tersebut secara langsung dengan cara yang paling mudah.

GTGE menfokuskan untuk membuat suatu engine game yang benarbenar mudah untuk digunakan namun tetap fleksibel dan tangguh untuk dapat membuat segala jenis game. Singkatnya GTGE merupakan kumpulan fungsi-fungsi siap pakai untuk membuat game, seperti fungsi untuk penggambaran ke layar, polling keyboard dan mouse, pemanggilan suara atau musik, dll. Fungsi-fungsi inilah yang disebut dengan Game Engine.

2.3.1

Tinjauan Umum GTGE Dalam bahasa pemograman Java, setiap fungsi berada didalam class,

demikian juga halnya dengan fungsi-fungsi GTGE. Dan untuk memudahkan pencarian dan penggunaan fungsi dari dalam suatu class, Java mendukung pengelompokan sekelompok class ke dalam suatu package. GTGE memanfaatkan hal ini seoptimal mungkin untuk membuat GTGE API terstruktur dengan baik, dan membuat pencarian dan penggunaan fungsi GTGE menjadi sangat mudah.

GTGE membuat suatu class berdasarkan fungsi-fungsi tertentu (misalnya membuat class untuk fungsi grafis), dan mengelompokkan class-class yang berkarakteristik sama (misalnya class-class engine) ke dalam sebuah package. Untuk jelasnya mari kita lihat diagram isi GTGE :

Dapat kita lihat diatas, class-class dengan karakteristik yang sama dikelompokkan ke dalam satu package, class graphics, class input, class sound yang merupakan class engine dikelompokkan ke dalam package engine, dan class sprite, class background, class collision yang merupakan class game object dikelompokkan ke dalam package game object.

Secara garis besar terdapat 3 package utama dalam GTGE : 1. Package com.golden.gamedev Package ini berisi kumpulan class inti yang menginisialisasi engine-engine game dari GTGE.

2. Package com.golden.gamedev.engine Package ini berisi class-class engine GTGE, mulai dari engine grafis, input, suara, dll.

3. Package com.golden.gamedev.object Package ini berisi class-class objek game, seperti sprite, latar game, dll.

Dengan disusunnya setiap class dengan rapi dan terstruktur, pencarian fungsi dan class dapat dilakukan dengan cepat dan mudah. Setelah kita mengetahui isi dari GTGE, sedikit prolog kode program untuk bagaimana cara agar class-class GTGE tersebut dapat digunakan. Dalam bahasa pemograman Java untuk dapat menggunakan suatu class dalam suatu package digunakan kata kunci import. Misal: untuk dapat memakai class Sprite yang berada di package com.golden.gamedev.object Maka sintaks programnya ialah seperti berikut : import com.golden.gamedev.object.Sprite;

2.3.3

Inisialisasi Game Awal mula membuat game dengan GTGE adalah

mensubclass Game class (Game class berada di package com.golden.gamedev), atau dengan kata lain setiap game merupakan turunan dari Game class.

Setiap turunan Game class wajib melaksanakan 3 tugas, yakni :

Inisialisasi Variabel Game Dalam tugas yang pertama ini turunan Game class menginisialisasi variabel-variabel yang akan digunakan di dalam game. Seperti membuat dan meletakkan sprite di posisi tertentu, membuat latar game, dll. Catatan: Game class tidak diperbolehkan memiliki overloading constructor, oleh karenanya difungsi inilah diletakkan yang biasa diletakkan di dalam constructor.

Update Game Mengupdate variabel game. Seperti menggerakkan posisi sprite berdasarkan input keyboard, menganimasi game, dll.

Render Game Merender game ke layar. Disini setiap objek game yang ingin ditampilkan ke dalam game dirender ke layar.

Secara umum dapat digambarkan sebagai berikut :

3. 3.1

PERANCANGAN PERANGKAT LUNAK Perancangan Antarmuka Antarmuka dari Vending Machine ini dibangun dengan munggunakan aplikasi NetBeans. Dengan menampilkan ke 21 jenis minuman dalam layar monitor, seperti gambar berikut :

Dengan tampilan ini, pembeli hanya disuguhi tiga tombol untuk memilih. Tombol ini hanya digunakan untuk memilih di kolom mana minuman yang dipilih berada. Hanya dengan tiga kali pemilihan, mesin ini akan mengetahui minuman mana yang dipilih oleh pembeli.

3.2

Perancangan Program Aplikasi program untuk drink vending machine ini di bangun dari Program Developer NetBeans menggunakan bahasa pemrograman java dan dengan memanfaatkan library GTGE. Flowchart dari program yang akan di buat :

3.2

Perancangan Program Aplikasi program untuk drink vending machine ini di bangun dari Program Developer NetBeans menggunakan bahasa pemrograman java dan dengan memanfaatkan library GTGE. Flowchart dari program yang akan di buat :

DAFTAR PUSTAKA

Anuff, Ed. 1997. The Java Sourcebook. Yogyakarta : Penerbit Andi Sasongko, Bagus Hari. 2012. Pemrograman Mikrokontroler dengan Bahasa C. Yogyakarta : Penerbiat Andi Rickyanto, Isak. 2003. Dasar Pemrograman Berorientasi Objek dengan JAVA 2 (JDK 1.4). Yogyakarta : Penerbit Andi Taru, Andi. 2010.Pemrograman Game dengan Java dan GTGE. Yogyakarta : Penerbit Andi.