Java control parallel port aris suryadi

35
PROJECT SIMULASI PUSAT PENGONTROLAN ALAT ELEKTRONIK DENGAN PARALLEL PORT MENGGUNAKAN JAVA APPLICATION Disusun Oleh : Aris Suryadi(R053005800112) SEMESTER 1 Faculty: Indah Ayu, S.T. Gedung Pasca Sarjana Lt.3 Fakultas Teknik Universitas Indonesia Kampus Baru UI Depok 16424

description

Project Semester 1 Aris Suryadi, mengakses paralel port printer dengan Java dan library jnpout32.dll

Transcript of Java control parallel port aris suryadi

Page 1: Java control parallel port   aris suryadi

PROJECT

SIMULASI PUSAT PENGONTROLAN ALAT ELEKTRONIK DENGAN PARALLEL PORT MENGGUNAKAN JAVA

APPLICATION

Disusun Oleh :Aris Suryadi(R053005800112)

SEMESTER 1

Faculty:Indah Ayu, S.T.

Gedung Pasca Sarjana Lt.3 Fakultas Teknik Universitas IndonesiaKampus Baru UI Depok 16424

Page 2: Java control parallel port   aris suryadi

DAFTAR ISI

LEMBAR PENGESAHAN ………………………………………………… i

KATA PENGANTAR ……………………………………………………… ii

DAFTAR ISI ……………………………………………………………….. iii

BAB I PENDAHULUAN

1.1 Latar Belakang Masalah .............................................................. 1

1.2 Batasan Masalah .......................................................................... 2

1.3 Tujuan Penelitian ......................................................................... 2

1.4 Metode Penelitian ........................................................................ 3

1.5 Sistematika Penulisan .................................................................. 3

BAB II LANDASAN TEORI

2.1 Sejarah Java ................................................................................. 5

BAB III DESING DAN IMPLEMENTASI

3.1 Unified Modelling Language (UML) .......................................... 18

3.2 Flowchart Program ...................................................................... 19

BAB IV PEMBAHASAN DAN ANALISA

4.1 Pembahasan Aplikasi .................................................................. 24

4.2 Skema Jnpout32.dll ..................................................................... 30

4.3 Pembahasan Perangkat Keras ..................................................... 31

BAB V PENUTUP

5.1 Kesimpulan ................................................................................. 33

5.2 Saran ........................................................................................... 33

DAFTAR PUSTAKA

LAMPIRAN

Page 3: Java control parallel port   aris suryadi

BAB I

PENDAHULUAN

1.1 Latar Belakang Masalah

Perkembangan di bidang teknologi informasi dan komunikasi saat ini sangat

pesat dan berpengaruh sangat signifikan terhadap pribadi maupun komunitas, segala

aktivitas, kehidupan, cara kerja, metoda belajar, gaya hidup maupun cara berpikir.

Oleh karena itu, pemanfaatan teknologi informasi dan komunikasi harus

diperkenalkan kepada masyarakat luas agar mereka mempunyai bekal pengetahuan

dan pengalaman yang memadai untuk bisa menerapkan dan menggunakannya dalam

kegiatan sehari-hari khususnya dalam bidang Teknologi Informasi.

Dengan memasukan teknologi informasi dan komunikasi di dalam khalayak,

akan membantu masyarakat untuk belajar teknologi informasi dan komunikasi, dan

menggunakan segala potensi yang ada untuk pengembangan kemampuan diri.

Pembelajaran teknologi informasi dan komunikasi akan memberikan motivasi dan

kesenangan kepada masyarakat untuk belajar dan bekerja secara mandiri.

Ruang lingkup pembelajaran teknologi informasi dan komunikasi di

Masyarakat umum biasanya masih minim dan bersifat tidak formal, jikalau ada

biayanya relatif mahal untuk masyarakat indonesia kalangan menengah kebawah,

dilain segi pengetahuan tentang Teknologi Informasi sangatlah dituntut dalam dunia

pekerjaan maupun bisnis.

Maka dari itu masyarakat dituntut untuk bisa belajar sendiri atau otodidak

dalam mempelajari segala pengetahuan tentang teknologi dan komunikasi, selain

tidak mengeluarkan banyak biaya, sikap ini bisa menimbulkan dan meningkatkan

kreatifitas dan produktivitas sehingga masyarakat Indonesia bisa bersaing di dunia

internasional.

Sesuai dengan perkembangan teknologi dewasa ini makin pesatnya era teknologi

tinggi yang menggunakan teknologi digital yang aplikasinya dapat digunakan sebagai

pengontrolan dan pengendalian suatu objek, ini menyebabkan manusia untuk lebih

mencari solusi yang serba praktis, seperti halnya dalam mengendalikan peralatan dan

pengontrolan disebuah gedung atau panel-panel besar pada sebuah industri, dirasa

sudah tidak efektif lagi bila pengoperasiannya dilakukan oleh manusia, apalagi yang

sifatnya rutin dan dibutuhkan perhitungan yang sangat akurat. Seperti halnya

Page 4: Java control parallel port   aris suryadi

mengontrol semua alat-alat elektronika dari jarak jauh dengan komputer, sistem

pengontrolan alat elektonik sesuai periodik waktu tertentu sangatlah dibutuhkan

sebagai penunjang sektor industri maupun rumahan, sehingga kehidupan manusia

semakin praktis dan canggih.

1.2 Batasan Masalah

Untuk lebih mendalamnya penulis akan coba memaparkan secara globalitas

tentang Java application dan cara kerja dari jnpout32.dll sebagai interpreter ke parallel

port, serta sistem kerja db25 parallel port

1.3 Tujuan Penulisan

Seiring berkembangnya jaman dan semakin canggihnya teknologi yang

bermunculan dan pesatnya perkembangan di bidang industri dan rumahan, maka dari

itu dibutuhkan alat penunjang yang dapat memudahkan dan membantu kegiatan

manusia. Maka dari itu penulis melakukan penelitian project ini agar hasil dari

penelitian ini dapat berguna bagi sektor industri dan rumahan khusunya pada bagian

pusat pengontrolan elektronik.

Penulis berharap aplikasi ini sangat berguna serta membantu, setidaknya

sebagai batu loncatan bagi para pembaca untuk mengembangkan aplikasi ini sehingga

membuat kehidupan manusia menjadi lebih praktis, dinamis, dan modern

Page 5: Java control parallel port   aris suryadi

1.4 Metode Penulisan

Metode yang digunakan dalam pembuatan makalah ini adalah metode

deskripsi analisi.Yang dimaksud dengan metode deskripsi analisis adalah metode

yang memberikan gambaran-gambaran secara objektif,menguraikannya Serta

membahasnya secara lengkap dan terperinci tentang projek yang telah penulis susun.

1.5 Sistematika Penulisan

Bab I Pendahuluan

Berisi tentang latar belakang penulis memilih judul penulisan dan berisi

tentang batasan dari penulisan, tujuan dari penulisan, metode penulisan dan

sistematika yang penulis terapkan.

Bab II Landasan Teori

Menjelaskan secara globalitas tentang Java application dan applet serta paket-

paket yang disertakan, serta dijelaskan pula tentang parallel port dan cara kerja

jnpout32.dll

Bab III Design dan Implementasi

Menjelaskan tentang UML, Flowchart serta diagram kehidupan tentang

Aplikasi yang telah dibuat.

Bab IV Pembahasan dan Analisa

Di Bab ini akan dijelaskan tentang penggunaan dan pengoperasian aplikasi

serta alat yang telah penulis buat, dan disertakan pula cara kerja sistem aplikasi

tersebut.

Bab V Penutup

Berisi tentang kesimpulan dan saran dari penulis.

Page 6: Java control parallel port   aris suryadi

Lampiran

Berisi tentang lampiran yang terkait dengan penulisan seperti source code,

tabel dan gambar.

Daftar Pustaka

Berisi tentang sumber-sumber dan referensi yang penulis dapatkan ketika

menyusun laporan project ini.

Page 7: Java control parallel port   aris suryadi

BAB II

LANDASAN TEORI

2.1 Sejarah Java

Java adalah bahasa pemrograman yang berorientasikan objek yang

dikembangkan oleh Sun Microsystems. Berdasar dari C++, java didesain untuk

menjadi kecil, simpel dan mudah digunakan dalam berbagai platform.

Penemu Java adalah chief programmer Sun Microsystems, James Gosling.

Beliau dan timnya memulai suatu proyek untuk membuat software yang bisa

mengendalikan alat-alat elektronik. Gosling memulai proyek menggunakan C++

karena orientasi yang berdasarkan objek yang ada dalam C++ itu sendiri. Tetapi dia

sendiri banyak menemukan masalah dengan suatu aspek yang rumit dari C++ seperti

bug program, yang terdiri dari pointer error, dan memory leaks atau kebocoran

memori. Dari situlah Gosling memutuskan untuk membuat bahasa pemrograman yang

baru untuk mengatasi masalah yang ada dalam bahasa C++.

Gosling menyukai syntax dasar dan fitur orientasi objek dari C++. Maka dari

itu dia membuat bahasa yang baru berdasar dari C++ dan mencoba menghilangkan

masalah yang ada dalam C++ itu sendiri. Hasilnya adalah bahasa pemrograman yang

baru bernama Oak, kemudian akhirnya dinamakan Java.

2.2. Program-program Java

Program dalam Java yang digunakan dalam project ini adalah aplikasi.

2.2.1 Aplikasi

Aplikasi adalah suatu program yang bisa dijalankan dalam prompt sistem

operasi manapun. Aplikasi yang berdiri sendiri atau yang sering disebut Stand

Alone Application bisa terdiri dari aplikasi yang berbasis Windows atau aplikasi

berbasis console. Aplikasi berbasis Windows mempunyai interface dengan user

secara grafis atau yang lebih dikenal dengan istilah graphical user interface.

Aplikasi tersebut menggunakan fitur-fitur yang didukung oleh platform-platform

seperti Microsoft Windows, Macintosh, Motif, dan OS/2. Aplikasi berbasis

console adalah aplikasi berbasis karakter (tulisan atau simbol-simbol) yang tidak

mempunyai interface grafis untuk user. Aplikasi yang berdiri sendiri biasanya

menggunakan resource dari satu komputer. Aplikasi berbasis jaringan bisa

Page 8: Java control parallel port   aris suryadi

menggunakan resource yang tersedia dalam suatu jaringan. Aplikasi yang

terdistribusi bisa mengakses objek yang dijalankan melalui lebih dari satu

komputer dalam suatu jaringan. Aplikasi bisa membaca dari atau menulis ke

dalam suatu file dalam suatu komputer. Aplikasi bisa juga membangun koneksi

jaringan, mengakses resource dari berbagai jaringan, dan menjalankan aplikasi

dari berbagai jaringan. Aplikasi yang berdiri sendiri biasanya berada dalam suatu

hard disk suatu komputer. Ketika aplikasi tersebut perlu untuk dijalankan, aplikasi

tersebut diambil dari hard disk kemudian dipindahkan ke dalam internal memori

dan akhirnya dieksekusi.

2.3 User Interface

Dimasa yang serba praktis dan mudah ini, para pengembang dan pembuat

software dituntut untuk menjadilan karyanya mudah dan nyaman untuk dioperasikan,

maka dari itu java mendukung user interface yang cukup friendly. yang dinamakan

GUI

Kontrol secara visual, seperti text box, check box, tombol-tombol, dan combo

box disebut sebagai komponen. Top-level windows yang memegang komponen-

komponen tersebut biasa dikenal sebagai containers. Tiap komponen mewarisi

properties dari parent containers seperti huruf dan warna. Container juga

mengendalikan posisi dari komponen yang berada dalam container tersebut.

Komponen yang terlihat di monitor yang berada dalam container dibatasi

keberadaannya oleh parent container. Komponen grafikal seperti text box, dan

tombol-tombol berada di dalam kontainer. Container berada dalam frame window,

yaitu tipe lain dari container. Frame window adalah top-level window dan tidak

mempunyai parent container.

2.4 Abstract Window Toolkit (AWT)

Dalam Java 1.0, user interface dihasilkan menggunakan AWT. Tampilan

aplikasi yang dihasilkan menggunakan AWT berbeda dalam tiap platform. Sebagai

contoh, tombol yang berasal dari java.awt.button terlihat berbeda dalam

tampilan Windows dan Macintosh. Keadaan tadi menghasilkan tampilan user

interface yang sama tetapi berbeda dikarenakan platform yang berbeda.

Page 9: Java control parallel port   aris suryadi

Bagaimanapun perbedaan tesebut kecil, dalam artian tiap programmer harus menguji

kode-kode mereka dalam tiap platform yang berbeda. Untuk mengatasi kekurangan

dari AWT, kemudian dikembangkan Java Foundation Classes.

Pada Java 1.1, AWT mempunyai fitur-fitur baru, yaitu:

1. Improved Event Handling

2. New Components and Containers

3. Clipboards

4. Printing, serta banyak lagi fitur lainnya.

2.5 Paket Swing

Dibandingkan dengan AWT komponen yang paling simpel pun seperti Swing

memiliki lebih banyak fitur. Sebagai contoh, label dan tombol-tombol dalam Swing

bisa mempunyai ikon dan tooltip. User bisa menggunakan tombol berbentuk bulat dan

juga menggunakan border yang berbeda ke tiap kontrol. Kemudian, Swing juga

biasanya digunakan untuk membuat fitur-fitur interface seperti ikon, gambar, tooltip,

dan kontrol.

2.6 Paket Java.io

Paket java.io berisi kelas-kelas yang menangani operasi input-output(I/O)

dalam Java. Hampir semua input-output dalam java berdasarkan pada stream. Stream

menampilkan arus dari data atau aliran komunikasi dengan membaca akhir dari suatu

stream dan proses penulisan pada akhir yang lain, sedikitnya secara konseptual.

Penulis menggunakan paket ini untuk sebagai operasi menulis file dan membaca file.

2.7 Unified Modelling Language (UML)

UML adalah bahasa acuan standar atau standard modelling language yang

biasa digunakan untuk membuat sistem software acuan dalam kompleksitas yang

bervariasi. Sistem biasa berkisar dari informasi sistem enterprise sampai sistem

berbasis Web yang terdistribusi. Untuk menggunakan kedua sistem tersebut UML

Page 10: Java control parallel port   aris suryadi

memberikan notasi-notasi dan beberapa aturan. Fokusnya adalah untuk membuat

software model yang simpel, terdokumentasi dengan baik, dan mudah dipahami.

Pengguna bahasa acuan atu modelling language yang berorientasi objek

dihadapkan dengan meningkatnya aplikasi yang kompleks, dimana aplikasi tersebut

dibuat dengan mengeksperimen pendekatan alternatif ke analisa dan desain. Banyak

dari pengguna bahasa acuan mempunyai masalah dalam menemukan apa yang mereka

butuhkan. Beberapa dari pendekatan modelling utama yang digunakan adalah Metode

Booch yang berasal dari Grady Booch, Object Oriented Software Engineering

(OOSE) oleh Ivar Jacobson, dan Object Modelling Technique (OMT) oleh James

Rumbaugh. Tiap-tiap metode dan bahasa tersebut mempunyai kelebihan dan

kekurangan. Sebagai contoh, metode Booch sangat ekspresif dalam fase desain dan

konstruksi, metode OOSE lebih berguna dalam fase menangkap kebutuhan dan

analisa, dan metode OMT sangat berguna dalam analisa data yang intensif dan

informasi sistem.

2.8 Asal Mula dan Evolusi dari UML

Pada awal tahun 90an, dimana meningkatnya pembagian ide, pekerjaan

dimulai untuk mengembangkan standar yang umum. Usaha dalam pembuatan UML

dimulai ketika Rumbaugh bergabung dalam Rational Corporation pada tahun 1994

dan Ivar Jacobson bergabung ke dalam Rational pada tahun 1995.

UML dikembangkan oleh Grady Booch, James Rumbaugh, dan Ivar

Jacobson, dimana UML merupakan bahasa standard modelling dan versi pertama

dirilis pada bulan Juni 1996.

Konsorsium UML didirikan untuk mendukung perusahaan-perusahaan

software besar. Perusahaan-perusahaan tersebut memandang UML sebagai

kepentingan dalam bisnis mereka dan sumber yang terpercaya dalam perkembangan

UML. Perusahaan-perusahaan tersebut adalah Digital Equipment Corporation,

Hewlett-Packard, Microsoft, Oracle, dan Rational Corporation.

Konsorsium UML mempersiapkan dan mempresentasikan UML versi revisi

kepada Obeject Management Group (OMG). UML telah diterima oleh OMG sebagai

bahasa acuan standar atau standard modelling language dan telah diambil alih

pemeliharaannya oleh OMG.

2.9 Tujuan dari UML

Page 11: Java control parallel port   aris suryadi

UML bukanlah sebuah bahasa yang paten atau sudah menjadi hak milik.

Semua perusahaan yang menjadi bagian konsorsium UML mengkorporasi UML

sebagai standarisasi dalam proses perkembangan mereka. Tujuan dari UML adalah:

• Menyediakan bahasa acuan yang simpel dan acuan visual yang siap

digunakan, dimana membuat pengguna untuk memvisualisasikan

sistem tersebut.

• Untuk menjadi proses yang berdiri sendiri.

• Untuk menjadi bahasa yang berdiri sendiri.

2.10Apa Yang Diwakili oleh UML

UML menyediakan kumpulan perbendaharaan kata dan peraturan-peraturan

untuk menggunakan bahasa acuan tersebut. Perbendaharaan kata dan peraturan-

peraturan tersebut mewakili elemen logikal dan fisikal dari suatu sistem.

UML biasanya digunakan untuk:

• Memvisualisasikan sistem software dengan simbol-simbol yang jelas

yang biasa digunakan untuk mewakili bermacam-macam elemen

dalam sistem. Maka dari itu, pengembang atau alat bisa secara jelas

menerjemahkan suatu model yang ditulis oleh pengembang yang lain

menggunakan UML.

• Menjelaskan sistem software dan membantu dalam pembangunan

suatu model secara tepat, jelas, dan lengkap.

• Membuat model dari suatu sistem software yang bisa secara langsung

berkomunikasi dengan bermacam-macam bahasa pemrograman.

• Menyimpan model suatu sistem software dengan menyebutkan

kebutuhan dari sistem ketika dalam tahap pengembangan.

2.11Dimana UML digunakan

Dibawah ini adalah beberapa tempat yang biasanya menggunakan UML:

• Pelayanan Perbankan

• Sistem Pertahanan

• Servis yang terdistribusi berbasis Web

• Sistem informasi enterprise

• Sistem Medis

Page 12: Java control parallel port   aris suryadi

• Sistem Penerbangan

2.12Gambaran Besar UML

UML biasa digunakan oleh para insinyur untuk membuat cetak biru standar

dari suatu sistem. UML menyediakan beberapa alat-alat berbentuk grafis yang biasa

digunakan untuk memvisualisasi suatu sistem dari beberapa pandangan. Beberapa

pandangan dalam sistem inilah yang diwakili dengan menggunakan diagram yang

menggambarkan model suatu sistem. Berikut adalah gambaran besar dalam UML,

menggunakan diagram.

Page 13: Java control parallel port   aris suryadi

2.13Pandangan Dalam UML

UML bisa digunakan untuk menggambarkan aspek yang berbeda dari suatu

sistem software melalui beberapa macam pandangan Pandangan tersebut adalah:

• Pandangan User – mewakili tujuan dan maksud dari suatu sistem

melalui pandangan dari User atau pengguna.

• Pandangan struktural – mewakili keadaan statis atau keadaan diam

dari suatu sistem.

• Pandangan keadaan – mewakili distribusi dari elemen logikal, seperti

struktur source code, dan struktur implementasi dari suatu sistem

ketika berjalan.

• Pandangan sekitar – mewakili distribusi elemen fisik dari suatu

sistem. Pandangan sekitar menggambarkan simpul-simpul atau yang

dikenal dengan istilah nodes yang membentuk sebuah bagian dari

kebutuhan hardware secara fisik untuk perkembangan dari suatu

sistem.

Tetapi dari semua macam pandangan di atas, penulis hanya menggunakan

salah satu yaitu pandangan pengguna untuk menjelaskan aplikasi yang dibuat.

Pandangan Struktural Pandangan Implementasi

Pandangan Keadaan Pandangan Sekitar

Pandangan User

Page 14: Java control parallel port   aris suryadi

2.14Pandangan User

Definisi dari pandangan user adalah suatu pandangan yang mewakili tujuan

dan maksud dari bermacam-macam user dan kebutuhan mereka dari suatu sistem.

Pandangan user tersebut mewakili suatu bagian dari sebuah sistem dimana user atau

pengguna tersebut berinteraksi dengan sistem tersebut.

2.15Siapa Saja User dalam Sistem

User yang menggunakan sistem bisa saja user manusia atau sistem yang lain

dimana sistem tersebut secara langsung berinteraksi dengan sistem asli. Peran dari

pengguna sistem bisa didefinisikan berdasarkan fungsi yang mereka lakukan.

Sebagai contoh sistem rekening dari sebuah swalayan dimana anda biasa

membeli belanjaan anda. Karyaman yang mengupdate detail belanjaan berarti dia

adalah user dalam sebuah sistem atau system user.

2.16Aktor

Aktor adalah elemen yang berada di luar sistem, dan maka dari itu dijuluki

wujud eksternal dari sebuah sistem. Aktor biasanya menjadi acuan dari pengguna

suatu sistem. Aktor berinteraksi secara langsung dengan sistem, saling tukar pesan,

dan meminta suatu aksi untuk dilakukan. Sebagai contoh, sistem pembuatan rekening

dalam suatu swalayan, karyawan yang memasukkan detail atau data dari suatu produk

dikatakan sebagai aktor.

Wujud eksternal yang berinteraksi secara tidak langsung dengan suatu sistem

tidak bisa dibilang sebagai aktor dari sistem tersebut. Sebagai contoh, dalam sistem

pembuatan rekening dalam sebuah swalayan, seorang pelanggan, pelanggan tersebut

bukanlah sebuah aktor karena tidak berinteraksi dengan sistem.

Aktor terdiri dari empat kategori, yaitu:

• Aktor utama – Orang yang berinteraksi secara langsung dengan sistem

disebut aktor utama. Dalam sistem pembuatan rekening misalnya,

seorang karyawan merupakan aktor utama.

Page 15: Java control parallel port   aris suryadi

• Aktor tambahan – Orang yang terlibat dalam pemeliharaan atau

perawatan dari sebuah sistem disebut aktor tambahan. Sebagai contoh,

dalam sistem pembuatan rekening, orang yang bekerja dalam swalayan

dimana orang tersebut menyediakan kertas untuk mencetak rekening

tersebut disebut sebagai aktor tambahan.

• Hardware eksternal – Hardware yang merupakan bagian dari suatu

sistem selain hardware yang menjalankan aplikasi disebut hardware

eksternal. Dalam sistem rekening contohnya, printer yang digunakan

untuk mencetak rekening tersebut merupakan hardware eksternal.

• Sistem yang lain – Sistem eksternal yang dimana sistem tersebut harus

berinteraksi dengan sistem utama merupakan sistem yang lain.

2.17Use Case

Use Case terdiri dari elemen yang berada dalam sistem dan bertanggung jawab

atas kinerja dari sebuah sistem. Use case tersebut juga menyangkut dengan fungsi dan

keadaan suatu sistem. Maka dari itu, use case tidak lain adalah aksi yang dilakukan

oleh suatu sistem untuk memberikan suatu hasil yang diminta oleh aktor dari suatu

sistem.

Use case menggambarkan semua kejadian yang ada, yang terjadi dalam semua

skenario yang ada. Use case tersebut menggambarkan semua interaksi yang bisa

terjadi antara aktor dan sistem.

Relationship menggambarkan hubungan yang logis antara use case dan aktor.

Dalam hal ini relationship sifatnya tidak terarah.

Di bawah ini adalah contoh-contoh dari use case dalam sistem rekening di

pasar swalayan:

• Memasukkan data rekening

• Menghitung jumlah total

• Mencetak rekening

2.18Diagram Use Case

Diagram use case termasuk dalam pandangan user dari sebuah sistem.

Diagram use case terdiri dari aktor, use case, dan hubungan atau relationship antar

Page 16: Java control parallel port   aris suryadi

komponen tersebut. Diagram tersebut menjelaskan keadaan dari suatu sistem, yang

terlihat oleh pengguna itu sendiri dan pengembang, keadaan tersebut sama juga

dengan ekspektasi mereka dalam hal ini pengguna dan pengembang terhadap sistem

itu sendiri. Singkatnya, diagram use case menggambarkan fungsi yang disediakan

oleh sistem kepada wujud eksternal.

Diagram use case terdiri dari aktor dan use case. Aktor digambarkan oleh

sebuah simbol dan use case digambarkan oleh bentuk elips.

Contoh:

2.19 Parallel Port

Port parallel atau port printer sebenarnya terdiri dari tiga bagian yang masing-

masing diberi nama sesuai dengan tugasnya dalam melaksanakan pencetakan pada

printer. Tiga bagian tersebut adalah Data Port(DP), Printer Control(PC), and Printer

Status(PS). DP digunakan untuk mengirim data yang harus dicetak oleh printer, PC

digunakan untuk mengirimkan kode-kode control dari komputer ke printer, misalnya

kode-kode untuk menggulung kertas, dan PS digunakan untuk mengirimkan kode-

kode status printer ke komputer, misalnya untuk menginformasikan bahwa kertas

telah habis.

DP, PC, dan PS sebenarnya adalah port-port 8 bit, namun hanya DP yang

benar-benar 8 bit. Untuk PC dan PS, hanya beberapa bit saja yang dipakai yang

berarti hanya beberapa bit saja dari port-port ini yang dapat dimanfaatkan untuk

keperluan interfacing. Port PC adalah port baca/tulis (read/write), PS adalah port baca

saja (read only), sedangkan port DP adalah port baca/tulis juga. Akan tetapi,

kemampuan ini hanya dimiliki oleh Enchanced Parallel Port(EPP), sedangkan port

parallel standar hanya memiliki kemampuan tulis saja. Pada EPP, pengaturan arah

<Nama Aktor>

<Nama Use Case>

Page 17: Java control parallel port   aris suryadi

jalur data DP dilakuakn lewat bit 5 PC, jika bit 5 PC bernilai 0, maka jalur data dwi-

arah DP menjadi output dari port parallel, sebaliknya jika bit 5 PC bernilai 1, maka

jalur data dwi-arah DP menjadi inpout dari port parallel.

Selangkapnya konfigursi slot DB-25 female yang terdapat pada gambar

berikut ini

Konfigurasi slot DB-25 Female

Tabel konfigurasi pin dan nama sinyal konektor parallel standar DB25

Nomor Pin Nama Sinyal Direction Register Komplemen

1 Strobe In/Out Control bit 0 Ya2 Data 0 Out Data bit 03 Data 1 Out Data bit 14 Data 2 Out Data bit 25 Data 3 Out Data bit 36 Data 4 Out Data bit 47 Data 5 Out Data bit 58 Data 6 Out Data bit 6

9 Data7 Out Data bit 7

10 Ack In Status bit 6

11 Busy In Status bit 7 Ya

Page 18: Java control parallel port   aris suryadi

12 Paper

Out/Paper End

In Status bit 5

13 Select In Status bit 414 Auto-Lined In/Out Control bit 1 Ya

15 Error/Fault In Status bit 5

16 Initialize In/Out Control bit 217 Select Printer/

Select in

In/Out Control bit 3 Ya

18-25 Ground Gnd

Untuk dapat menggunakan port parallel, kita harus mengetahui alamtnya. Base

address LPT1 biasanya adalah 888(378h) dan LPT2 biasanya 632(278h). Alamat

tersebut adalah alamat yang umumnya digunakan, tergantung dari jenis komputer.

Tepatnya kita bisa melihat pada peta memori tempat menyimpan alamat tersebut,

yaitu memori 0000.0408h untuk base address LPT1 dan memori 0000.040Ah untuk

base Addres LPT2.

Setelah kita mengetahui alamat dari port parallel, maka kita dapat menentukan

alamat DP, PC, dan PS. Alamat DP adalah base address dari port parallel tersebut,

alamat PS adalah base address + 1, dan alamat PC adalah base address + 2. tabel

berikut adalah tabel alamat masing-masing port yang umumnya digunakan.

Nama Port Alamat RegisterLPT1 DP 378h/888LPT1 PS 379h/889

LPT1 PC 37Ah/890

2.20 Pengaksesan Parallel Port dengan Java

Setelah kita mengetahui anatomi port parallel dan konfigurasi slot DB-25 yang

terletak dibelakang komputer, tentunya timbul pertanyaan bagaimana port-port

tersebut dapat digunakan untuk mengontrol, yakni untuk mengirimkan atau menerima

data.

Page 19: Java control parallel port   aris suryadi

Sebelum kita membahas semuanya lebih jauh, ada beberapa kelemahan dalam

java yaitu tidak bisa berinterkasi langsung dengan hardware. Melainkan harus

disertakannya paket baru lagi yang didapat dari Java Sun yaitu pake Java.comm.

tetapi karena pemakainnya yang rumit maka penulis lebih memilih menggunakan

jnpout32.dll tidak lain adalah hasil modifikasi dari inpout32.dll yang berguna sebagai

jembatan antara bahasa pemograman java dengan Parallel port. Tetapi sebelum kita

bisa menggunakan jnpout32.dll, terlebih dahulu kita harus mendeklarasikannya di

class lain, serta jnpout32.dll harus disalin d c:\%windir%\system32 atau satu folder

dengan class yang kita buat.

Page 20: Java control parallel port   aris suryadi

BAB III

DESIGN DAN IMPLEMENTASI

Didalam BAB ini penulis mencoba untuk memaparkan design yang digunakan

untuk membuat program ini yang sangat membantu dalam pembuatannya.

3.1 Unified Model Language(UML)

Berikut ini penulis mencoba menjelaskan jalannya program aplikasi yang

dibuat dengan diagram use case:

Electronics Center Controlling System

3.2 Flowchart Program

Berikut ini penulis memberikan flowchart cara kerja aplikasi ini.

Administrator/engineer

Send command

Jnpout32.dll Send bit to parallel port

Parallel port Controlling to

HardwareSwitch On/Off

Lamps or electonics

Page 21: Java control parallel port   aris suryadi

Flowchart Login Form

Yes

No

No

Yes

Start

Input User Name and Password

If the password and user is right

Call Mainform

Counter +1

counter = 3

End

Page 22: Java control parallel port   aris suryadi

Flowchart Mainform

No

Yes

START

Load From Database data.dat

are the config turn

on all lamps?

Send bit 0 to parallel port

Send bit 255 to parallel port

Accept command from user

Send bit to parallel port comparing with

input form user

Display Action to txtlog

Page 23: Java control parallel port   aris suryadi

Flowchart Option Form

User click save log button

Save the log from txtlog to Log.log file

User click View log button

View The Log.log

End

Start

Load The data.dat for verifier

User input the change

Input username, old password, new password, confirm

password

Page 24: Java control parallel port   aris suryadi

Yes Yes

No

No

FlowChart Find User

Yes

No

If old password is right

If new password and

confirm password

match

Save changes to user.dat

Display Error Messages

End

Start

InputUser Name

Is the username

exist?

Display error message

DisplayUser

Detail

End

Call Edit User Form

Page 25: Java control parallel port   aris suryadi

FlowChart Edit User(edituser.java)

Flowchart Adduser(adduser.java)

Start

User input the new user details

Save new user detailto user.dat

End

Start

Input the user details

End

Save user details to user.dat

Page 26: Java control parallel port   aris suryadi

BAB IV

PEMBAHASAN DAN ANALISA

4.1 Pembahasan Aplikasi

Didalam aplikasi ini yang berperan sebagai form utama adalah form login

dimana form login ini dipanggil dari file login.java. ketika form login muncul maka

user akan ditanyakan username dan passwordnya. Jika si user tidak memasukan sama

sekali username dan password atau dalam keadaan blank maka program akan

menanyakan error message tersebut, sampai si user benar-benar menginputkan data.

Setelah user memasukan user name dan password seketika itu program me-load

database data.dat yang memanggil keyword user dan keyword pass sebagai

parameter verifikasi. Jika user name dan passwordnya sesuai, maka login form akan

keluar dan memanggil Main form yaitu mainform.java. Jika user salah memasukan

username atau password maka program akan menampilkan pesan error dan

menyimpan kedalam memori jumlah kesalahan(counter), jika counter sama dengan 3

atau si user memasukan 3 kali user name dan password yang salah maka program

akan otomatis keluar.

Gambar login form(login.java)

Page 27: Java control parallel port   aris suryadi

Setelah masuk ke Main Form maka user akan disuguhkan Tampilan windows

User Friendly sebagai pusat pengontrolan Alat Elektronik user akan disuguhhkan oleh

beberapa tombol dimana setiap tombol memiliki fungsi berbeda-beda. Pada panel

monitoring terdapat gambar besar yang menjadi base picture dari program ini yang

berfungsi sebagai monitor. Pada panel log event terdapat JTextArea yang berfungsi

menampung dan mencatat semua action dan event yang telah dilakukan user dan

aplikasi. Pada panel control command terdapat 12 Jbutton yang setiap tombolnya

sebagian cara kerjanya berbeda. Jika user menekan tombol berwarn hijau betuliskan

Room1 maka lampu pada Room 1 akan mati, dimana aplikasi mengirimkan 1 bit ke

parallel port, serta menon-aktifkan tombol disebelahnya yaitu tombol berwarna merah

bertuliskan Room1.

Gambar main form(mainform.java)

Nama Tombol Caption Send bit to Parport

Btnroom1on Room 1 1

Page 28: Java control parallel port   aris suryadi

Btnroom2on Room 2 2Btnroom3on Room 3 4Btnroom4on Room 4 8Btnroom5on Room 5 16

Btnroom6on Room 6 32

Btnroom7on Room 7 64

Btnroom8on Room 8 128

Table Action Tombol Control Command Turn on lamps

Nama Tombol Caption Send bit to Parport

Btnroom1off Room 1 254Btnroom2off Room 2 253Btnroom3off Room 3 251Btnroom4off Room 4 247Btnroom5off Room 5 239Btnroom6off Room 6 223

Btnroom7off Room 7 191

Btnroom8off Room 8 127

Table Action Tombol Control Command Turn off lamps

Page 29: Java control parallel port   aris suryadi

Jika user ingin mengubah konfigurasi dari password, seperti mengubah

password, menyetel program ketika dijalankan, maka user dapat memilih

option form. Dimana option form ini dipanggil dalam class option.java. cara

kerjanya cukup sederhana, ketika mainform memanggil option maka option

form akan muncul seketika method dari optionform tersebut me-load file

data.dat dimana didalamnya ada beberapa konfigurasi yang menjadi parameter

sebagai verifier dan berguna pula sebagai media penyimpanan dari konfigurasi.

Namun ketika user ingin mengubah konfigurasi, user diharuskan memasukan

password.

Gambar option form(option.java)

Page 30: Java control parallel port   aris suryadi

Find User berguna untuk mencari data detil dari user yang telah

terdaftar, dan parameter keywordnya adalah variable username. Jika user yang

dicari ditemukan maka program akan menampilkan message box berisi detil

dari user dan otomatis memanggil form Edit User.

GambarDialog Find User

Message box User Detil

Edit user berguna untuk mengubah data detil user yang sudah terdaftar,

ada beberapa field user yang bisa diedit yaitu password, real name, dan

position. Namun username tidak bisa dirubah karena sudah menjadi field

permanent.

Gambar Dialog Edit User

Save log berguna sebagai tombol untuk menyimpan log dan action event

yang terekam di txtlog pada panel log, dan file tersebut bernama log.log. Lalu

Page 31: Java control parallel port   aris suryadi

prinsip cara kerja view log cukup sederhana dimana form ini berfungsi hanya

melihat file log.log.

Gambar dialog view form (view.java)

4.2 Skema jnpout32.dll sebagai jembatan

Page 32: Java control parallel port   aris suryadi

Keyword FungsiInp32 Membaca data dari alamat registerOut32 Menulis data ke alamat register

Dllmain dipanggil ketika jnpout32.dll load atau unload ketika me-load

maka jnpout32.dll memanggil hwinterface service untuk mengcheck sistem

operasi apa yang digunakan.

Page 33: Java control parallel port   aris suryadi

4.3 Pembahasan Perangkat Keras

Didalam project ini penulis juga mengikutsertakan hardware sebagai

penunjang namun hanya simulasinya saja tetapai implementasi nya juga akan

dijelaskan secara menyeluruh, dibawah ini adalah skema dari perangkat keras

yang berfungsi sebagai terminal.

t

+5v

GND

DC +5V

+5v

+5v

+5v

+5v

+5v

+5v

+5v

+5v

c829

Page 34: Java control parallel port   aris suryadi

Skema Untuk Mengendalikan Beban Luar

Cara kerjanya adalah, jika kita mengirimkan bit pada pin 9 maka arus akan mengalir melewati LED dan membuat LED tersebut menyala, dan mengalir melalui LED yang ada didalam optocoupler dan selanjutnya akan mengalir ke Transistor optocoupler yang akan mensuplai arus pada basis transistor2N2222A dan menggerakan relay DC 12V. Melalui kontak NO relay DC inilah kita menggerakan beban luar yang dapat berupa lampu 40 watt 220 vm atau kipas angin 100 watt 220 ataupun TV 250 watt 220v dan AC 350 watt 220. berikut tabel kebutuhan supply arus. Berikut ini rumus untuk mengetahui besar arus untuk menghidupkan beban itu semua:

Nama Beban Rumus RelayTV 250 watt 250/220 = 1,136 Ampere 113,6 mALampu 40 watt 40/220 = 0,1818 Ampere 18,1 mA

AC 350 watt 350/220 = 1,59 Ampere 159,01 mA

Kipas angin 100w 100/220 = 0,45 Ampere 45,4 mA

I = P/V = I ampere

Page 35: Java control parallel port   aris suryadi

BAB VPENUTUP

5.1 Kesimpulan

Dari penelitian yang telah dilakukan oleh penulis dalam waktu singkat,

ternyata penggunaan bahasa pemograman Java untuk mengakses hardware tidaklah

sulit dan cukup menarik, karena prospek kedepannya cukup bagus, dilain sifatnya

yang multiplatform java juga cukup ringan digunakan untuk aplikasi besar.

Penggunaan alat pengendali beban luar diharapkan sangat berguna sekali dalam

kebutuhan manusia akan kepraktisan sehingga memilih untuk memakai teknologi ini

walaupun sederhana dan terlihat mudah, tetapi alat ini jika di kombinasikan akan

menjadi sangat powerfull.

5.2 Saran

Dari sekian waktu penulis melakukan penelitian, memang banyak sekali

hambatan yang ditemui, tetapi itu bisa dilewati dengan kerja keras. Penulis

menyarankan agar pembaca yang budiman yang mungkin tertarik agar bisa

mengembangkan aplikasi ini. Implementasi alat ini bisa mengendalikan alat-alat

elektronik berarus besar seperti AC dan TV. Alat ini sangatlah berguna jika

digunakan digedung-gedung besar yang memang system listriknya harus terpusat

pada satu tempat. Dan jika dikembangkan kembali bisa menjadi mesin automatisasi

pengontrolan alat elektronik secara periodik.

Dikesempatan kali ini penulis menggunakan hardaware komputer yaitu

processor AMD Sempron 2.7GHz overcloacking, DDRAM 512,dan menggunakan

sistem operasi windows Xp SP1.