BAB 2 LANDASAN TEORI

advertisement
BAB 2
LANDASAN TEORI
2.1 Sistem Terdistribusi
Sistem terdistribusi adalah suatu sistem dimana komponen-komponen pada suatu
sistem informasi didistribusikan ke berbagai lokasi pada sebuah jaringan komputer. Pada
industri komputer yang berkembang saat ini dikenal ada 3 jenis arsitektur
pengembangan aplikasi yaitu :Desktop (1-Tier), Client-Server (2-Tier), dan MultiTier (nTier). Perbedaan jenis arsitektur terletak pada bagaimana lapisan-lapisan (layers) yang
menyusun suatu aplikasi diterapkan. Seperti diketahui ada 3 lapisan tradisional dari
suatu aplikasi, yaitu : lapisan presentasi, lapisan bisnis dan lapisan servis data.
Sedangkan yang termasuk dalam arsitektur sistem terdistribusi adalah aplikasi ClientServer (2-Tier) dan Multitier (n-Tier).
(http://borland.com/jbuilder/docs/jb_j2eeapps.jar!/j2eeapps/j2ee_programming.html)
2.1.1
Lapisan Sistem Terdistribusi
2.1.1.1 Lapisan Servis Presentasi (Client tier)
Adalah lapisan dari aplikasi yang berhubungan langsung dengan
pengguna melalui grafik antar muka pengguna (Graphical User Interface
– GUI). Lapisan ini biasanya berjalan di PC (Personal Computer)
pengguna untuk menyajikan dan meng-edit data. Antarmuka yang baik
harus memiliki cara yang intuitif untuk menjelaskan data, memanggil
object bisnis pada lapisan servis bisnis untuk mengolah data, dan
mengembalikan hasilnya ke pengguna dengan cara informatif. Lapisan ini
7
8
lebih memperhatikan bagaimana menyajikan data kepada pengguna
sebagai solusi atau hasil dari masalah dibandingkan detil dari proses
untuk mendapatkan hasil.
2.1.1.2 Lapisan Sevis Bisnis (Middle Tier)
Lapisan bisnis digunakan untuk melaksanakan atau mendukung
aturan-aturan bisnis dan aturan-aturan data dari aplikasi. Lapisan
presentasi menggunakan servis yang terdapat di dalam lapisan ini, akan
tetapi lapisan ini tidak terikat oleh satu client, servis yang disediakan oleh
lapisan ini dapat digunakan oleh semua aplikasi. Aturan bisnis dapat
berupa algoritma bisnis, polis bisnis, dsb. Aturan data digunakan untuk
membantu menjaga agar data yang disimpan pada banyak tempat tetap
konsisten. Aturan-aturan ini diimplementasikan pada modul-modul atau
disebut juga bisnis object dan biasanya bisnis object tersebut diletakkan
pada lokasi terpusat agar dapat digunakan oleh aplikasi-aplikasi.
2.1.1.3 Lapisan Servis Data (Server Tier)
Lapisan servis bisnis tidak memiliki pengetahuan tentang
bagaimana atau dimana data yang sedang diolah disimpan, karenanya ia
bergantung pada lapisan servis data, yang dapat melakukan perjalanan
mengambil dan menyimpan data sesungguhnya pada DBMS (DataBase
Management System) atau alat penyimpanan lainnya seperti mainframe
atau internet.
9
2.1.2
Arsitektur Sistem Terdistribusi
2.1.2.1 Arsitektur Client-server (2-Tier)
Pada awal tahun 1990-an, sistem informasi kebanyakan
menggunakan arsitektur 2-tier yaitu lient-server architecture. User
interface biasanya berjalan pada komputer dekstop, ini adalah client tier.
Data dari perushaan yang diakses oleh client berada dalam sebuah
database dan di-server. Pendekatan ini awalnya menjanjikan peningkatan
pada skalabilitas dan fungsionalitas.
Salah satu bentuk sederhana dari arsitekture jenis ini apabila suatu
aplikasi memiliki basis data yang remote, basis data tersebut dapat
diakses dengan menggunakan segala bentuk Client-Server database API,
seperti ActiveX Data Objects (ADO), Remote Data Objects (RDO),
ODBC API, atau Java Database Connectivity (JDBC).
Gambar 2.1 Arsitektur Clent-Server (2 Tier)
(http://borland.com/jbuilder/docs/jb_j2eeapps.jar!/j2eeapps/j2ee_programming.html)
Arsitektur Client-Server memiliki dua lapisan yang jelas yaitu
lapisan presentasi yang menyatu dengan lapisan servis bisnis bisa terletak
pada komputer Client maupun Server dan lapisan servis data yang
biasanya terletak pada komputer yang digunakan sebagai server.
10
Gambar 2.2 Arsitektur Client-Server
(http://borland.com/jbuilder/docs/jb_j2eeapps.jar!/j2eeapps/j2ee_programming.html)
2.1.2.2 Arsitektur Multitier (n-Tier)
Melalui
pengalaman
dan
kerja
keras,
para
pengembang
mengetahui bahwa untuk membangun dan me-maintain sebuah sistem
terdistribusi yang flexible sangatlah sulit dengan menggunakan arsitektur
client-server, karena bussines logic terletak pada aplikasi client, dan
setiap kali akan dilakukan perubahan, maka perubahan itu harus
diimplementsikan pada seluruh komputer client pada perusahan, dan
maintenance menjadi mimpi buruk. Aplikasi ini juga harus bisa memanage transaksi, sadar akan keamanan, dan memproses data secara
efisien, sementara menghasilkan tampilan yang mudah dimengerti untuk
penggunanya. Walaupun arsitektur client-server masih cukup untuk
11
beberapa lingkungan kerja, banyak perusahaan menginginkan sesuatu
yang lebih daripada yang bisa diberikan oleh arsitektur client-server.
Setelah kelemahan dari arsitektur client-server mulai terlihat jelas,
para pengembang berusaha mencari jalan yang lebih baik. Jawabannya
adalah arsitektur multi-tier.
Adanya tambahan lapisan, yaitu middle tier antara lapisan servis
pemakai dengan lapisan servis data pada arsitektur aplikasi 2-tier akan
membentuk arsitektur aplikasi n-Tier. Lapisan servis aplikasi yang berada
ditengah-tengah ini sering disebut dengan aturan bisnis, dan biasanya
secara fisik lapisan ini diletakkan di server bersama dengan lapisan servis
data.
Gambar 2.3 Arsitektur MultiTier
(http://borland.com/jbuilder/docs/jb_j2eeapps.jar!/j2eeapps/j2ee_programming.html)
12
2.2 SMS (Short Message Service)
SMS merupakan salah satu layanan pesan teks yang dikembangkan dan
distandarisasi oleh suatu badan yang bernama ETSI (European Telecomunication
Standards Institute) sebagai bagian dari pengembangan GSM Phase 2, yang terdapat
pada dokumentasi GSM 03.40 dan GSM 03.38. Fitur SMS ini memungkinkan perangkat
Stasiun Seluler Digital (Digital Cellular Terminal, seperti ponsel) untuk dapat mengirim
dan menerima pesan-pesan teks dengan panjang sampai dengan 160 karakter melalui
jaringan GSM.
SMS dapat dikirimkan ke perangkat Stasiun Seluler Digital lainnya hanya dalam
beberapa detik selama berada pada jangkauan pelayanan GSM. Lebih dari itu, layanan
SMS memberikan jaminan bahwa SMS akan sampai pada tujuan meskipun perangkat
yang dituju sedang tidak aktif yang dapat disebabkan karena sedang dalam kondisi mati
atau berada di luar jangkauan layanan GSM. Jaringan SMS akan menyimpan sementara
pesan yang belum terkirim, dan akan segera mengirimkan ke perangkat yang dituju
setelah adanya tanda bahwa perangkat tersebut telah aktif atau telah berada pada
jangkauan layanan.
Dengan fakta bahwa layanan SMS (melalui jaringan GSM) mendukung
jangkauan/jelajah nasional dan internasional dengan waktu keterlambatan yang sangat
kecil, memungkinkan layanan SMS cocok untuk dikembangkan sebagai aplikasi-aplikasi
seperti: pager, e-mail, dan notifikasi voice mail, serta layanan pesan banyak pemakai
(multiple users). Namun pengembangan aplikasi tersebut masih bergantung pada tingkat
layanan yang disediakan oleh operator jaringan. (www.jazi.staff.ugm.ac.id)
13
2.2.1
Proses transmisi SMS
Proses pengiriman SMS ada dua macam yaitu, inter-operator dan intra-
operator. Proses pengiriman intra-operator terjadi jika pengirim dan penerima
menggunakan SMS centre yang sama atau menggunakan operator telepon yang
sama. Sedangkan inter-operator terjadi jika pengirim dan penerima menggunakan
SMS centre yang berbeda. Pada inter-operator terjadi kerjasama antara operator
yang digunakan oleh pengirim dan penerima.
Saat pesan dikirim dan device penerima sedang offline atau berada diluar
jangkauan jaringan maka operator akan menyimpan pesan tersebut sampai device
tujuan online dan selama validitas pesan belum expired. Pada inter-operator
operator yang akan menyimpan pesan saat device tujuan sedang offline adalah
operator yang digunakan oleh penerima.
Gambar 2.4 Proses pengiriman intra-operator
http://www.developershome.com/sms/intraInterInternationalSMS.asp
14
Gambar 2.5 Proses pengiriman inter-operator
http://www.developershome.com/sms/intraInterInternationalSMS.asp
2.2.2
PDU (Protocol Data Unit)
Setiap mobile device memiliki mode-mode untuk menerima atau
mengirim data melalui SMS, data tersebut dapat berupa PDU ataupun teks. Ada
mobile device yang mampu untuk menerima dan mengirim data berupa PDU dan
teks, dan ada pula mobile device yang hanya mampu menerima dan mengirim
data berupa PDU saja.
Dalam mode PDU, data yang dikirim atau diterima berupa pasanganpasangan bilangan hexadesimal yang disebut dengan oktet. Sedangkan dalam
mode teks, data yang diterima berupa karakter alphabet biasa.
15
Dalam mode PDU dan teks, data tidak hanya terdiri dari pesan teks SMS
saja, tetapi juga berisi informasi-informasi lainnya seperti nomor pengirim,
nomor SMS Centre,dan waktu pengiriman.
Salah satu kelebihan PDU adalah kemudahan jika akan dilakukan
kompresi pesan atau penyandian data menjadi untaian bit-bit biner.
Jenis-jenis PDU yang akan digunakan yaitu, PDU-Penerimaan (SMSDeliver) dan PDU-Pengiriman (SMS-Submit).
2.2.2.1 PDU-Penerimaan (SMS-Deliver)
PDU-Penerimaan adalah pesan yang diterima oleh terminal dari
SMS Centre(SMSC) dalam bentuk PDU.
PDU-Penerimaan memiliki format sebagai berikut:
1. SCA (Service Centre Acces)
Berisi informasi tentang SMSC. SCA memiliki tiga komponen
utama yaitu:
o Len (length) yaitu panjang informasi SMSC dalam
oktet
o Type of address yaitu tipe alamat dari SMSC, dimana
nilai 81h untuk format lokal dan nilai 91h untuk
format internasional.
o Nomor SMSC, dimana jika panjang nomor SMSC
ganjil maka pada akhir karakter ditambahkan huruf
”F”.
16
2. Tipe PDU (PDU Type)
Berisi informasi tentang jenis PDU tersebut.
3. OA (Originating Address)
Berisi informasi tentang nomor pengirim. OA memiliki tiga
komponen utama yaitu :
o Len (Length) yaitu panjang nomor Originating
Address dalam oktet.
o Type of Number sebagai type alamat dari Originating
Address.
o Nomor OA, dimana jika panjang nomor SMSC ganjil
maka pada akhir karakter ditambahkan huruf ”F”.
4. PID (Protocol Identifier)
Berisi informasi identifikasi protocol yang digunakan. Nilai
default dari PID adalah 00, yang berarti “Standart-Text-SMS”
5. DCS (Data Coding Scheme)
Berisi informasi skema pengkodean data yang digunakan.
DCS digunakan untuk menentukan message class. Berikut
akan ditampilkan tabel message class
17
Tabel 2.1 Tabel Message Class
Nilai
Hexadesimal
00
F0
F1
F2
F3
F4
F5
F6
F7
Character coding
Message Class
Default (7 bit)
Default (7 bit)
Default (7 bit)
Default (7 bit)
Default (7 bit)
8 bit
8 bit
8 bit
8 bit
Tidak ada class
Class 0 (immediate display)
Class 1 (mobile equipment specific)
Class 2 (SIM specific message)
Class 3 (terminate equipment specific)
Class 0 (immediate display)
Class 1 (mobile equipment specific)
Class 2 (SIM specific message)
Class 3(terminate equipment specific)
6. SCTS (Sevice Center Time Stamp)
Berisi informasi tentang waktu pengiriman.
7. UDL (User Data Length)
Berisi informasi panjang dari data utama atau isi pesan dari
sms yang dibawa.
8. UD (User data)
Berisi informasi-informasi data utama yang dibawa. Data
utama atau isi pesan dari sms tersebut diubah menjadi
bilangan hexadesimal.
Gambar 2.6 Format PDU-Penerimaan
(www.jazi.staff.ugm.ac.id)
18
2.2.2.2 PDU-Pengiriman (SMS-Submit)
PDU-Pengiriman memiliki informasi-informasi yang sama
dengan penerimaan, dan yang berbeda adalah informasi-informasi berikut
1. MR (Message Reference)
Parameter yang mengindikasikan nomor referensi SMS-Pengirim
2. DA (Destination Address)
Berisi informasi alamat yang dituju.
3. VP (Validity Period)
Berisi informasi jangka waktu validitas pesan pada jaringan.
Gambar 2.7 Format PDU-Pengirim
(www.jazi.staff.ugm.ac.id)
2.2.3
Perintah AT ( AT Command )
Perintah AT Command digunakan untuk berkomunikasi dengan terminal
(modem) melalui serial port pada komputer. Dengan menggunakan perintah AT
maka dapat diketahui bagaimana kondisi dari terminal, seperti mengetahui
kondisi sinyal, kondisi baterai, mengirim pesan, membaca pesan, menambah
item pada telepon, dan sebagainya.
19
Tabel 2.2 Tabel Perintah AT Command
AT Command
AT+CMGS
AT+CMGW
AT+CMGL
AT+CMGF
AT+CMGD
Fungsi
Mengirim pesan
Menulis pesan ke memory
Membaca pesan yang ada diinbox
Format pesan
Menghapus pesan
www.sonyericsson.com/downloads/dg_at_2005_r2b.pdf
2.3 Pemantauan Rumah Jarak Jauh
Pemantauan rumah jarak jauh adalah kemampuan untuk memantau dan
mengendalikan semua perangkat yang ada di rumah dan kondisi rumah dari jarak yang
jauh (http://www.hynixmcu.com/download)
Kebutuhan pemantauan rumah jarak jauh:
•
Penghematan biaya
Menekan biaya listrik Karena kelalaian mematikan peralatan listrik seperti
air , lampu , kompor listrik dan sebagainya.
•
Kenyamanan
Untuk masyarakat yang sering bepergian keluar rumah sistem pemantauan
rumah jarak jauh akan sangat berguna karena kondisi rumah bisa dipantau
dari jarak jauh
•
Keamanan
Mencegah penyusup masuk dan kebakaran karena kelalaian pemilik rumah
20
Contoh sistem pemantauan rumah adalah Zigbee yang dibuat oleh Zigbee
Company
Gambar 2.8 Zigbee Home Automation (http://proquest.umi.com/pqdweb)
2.4 Mobile Device
Mobile device adalah alat computing berukuran kecil, berisikan layer tampilan
kecil
untuk
output
dan
keyboard
(http://en.wikipedia.org/wiki/Mobile_device).
Contoh
kecil
mobile
untuk
device
input.
antara lain
smartphone, Bluetooth headset, telepon tanpa kabel, PDA(Personal Digital Assistant),
Pager, Handphone, dan sebagainya.
2.5 Java 2 Platform
Java adalah bahasa pemrograman yang sebaguna, karena Java adalah bahasa
pemrograman yang dapat digunakan untuk membuat aplikasi desktop, web, ponsel,
network, robotika maupun game console. Java merupakan bahasa pemrograman yang
21
memiliki portabilitas yang tinggi, karena Java dapat berjalan pada sistem operasi apapun
dan pada komputer apapun.
2.5.1
Sejarah Perkembangan Java
Java mulai dikembangkan pada bulan Agustus 1991 oleh perusahaan Sun
Microsystem melalui sebuah proyek penelitian yang bernama “Green Project “
yang dipimpin oleh James Gosling. Tujuan dari proyek ini adalah membuat
bahasa pemrograman yang dapat digunakan pada chip-chip embeded untuk
device Intellegent Customer Electronics, yang bersifat multi-platform sehingga
tidak bergantung pada vendor yang memanukfaktur chip tersebut.
Bahasa pemrograman yang diciptakan oleh Green Project diberi nama
OAK (Object Aplication Kernel). Konon nama OAK berasal dari pohon jati
yang terlihat dari jendela ruang kerja James Gosling. Implementasi pertama dari
OAK adalah sebuah prototype semacam PDA (Personal Digital Assistance) yang
dapat berkomunikasi satu sama lain, dan dinamai Star7. Karena nama OAK
kurang komersil maka pada tahun 1995, nama OAK diganti menjadi Java.
Kerena sejak awal ditujukan untuk pemrograman device kecil, maka Java
memiliki beberapa karakteristik, yaitu berukuran kecil, efisien dan portable
untuk berbagai hardware.
Keunikan Java adalah terletak pada Java Virtual Machine (JVM), JVM
dapat dianalogikan sebagai SandBox, tempat semua program Java dikompilasi
dan dijalankan. Apabila pada program hasil kompilasi bahasa lain terdapat
kesalahan atau bug yang menyangkut penempatan memori, maka resikonya
adalah kerusakan pada sistem operasinya. Pada Java selain organisasi memori
22
telah diatur secara mandiri oleh sebuah Garbage Collector, seluruh operasi
memori yang dilakukan program Java, dilakukannya pada JVM, sehingga apabila
terdapat kesalahan atau bug yang beresiko, maka yang akan rusak hanya JVM,
dan tidak akan mempengaruhi sistem operasinya.
2.5.2
Keunggulan-keunggulan Java
Beberapa kelebihan yang dimiliki oleh Java, antara lain :
1.
Java bersifat multi-platform
Portabilitas pada Java tidak hanya sebatas pada program sumber
(source code), melainkan juga pada tingkat code biner yang
disebut bytecode. Jadi jika suatu program telah dikompilasi pada
komputer bersistem Windows, maka hasil kompilasi program
tersebut dapat langsung dijalankan pada komputer bersistem
Macintosh. (Abdul Kadir, 2004, p2). Kode yang disebut
bytecode dapat dijalanan pada berbagai sistem operasi karena
kode ini berbeda dengan kode mesin. Kode mesin sangat
bergantung pada platform, sedangkan bytecode dapat dimengerti
oleh semua platform yang telah dilengkapi oleh interpreter Java.
2.
Java bersifat multi-thread
Thread adalah alur program berjalan, pada umumnya program
memiliki satu thread per program sehingga program tersebut
dikatakan
bersifat
sequensial.
Multi-threading
adalah
kemampuan menjalankan beberapa alur proses secara bersamaan.
3.
Java merupakan Object Oriented Programming(OOP)
23
Dengan menggunakan OOP maka setiap sub program dapat
dibuat terpisah, sehingga program yang dibuat dapat terstruktur
dengan baik. Sehingga memudahkan dalam pemeriksaan dan
perbaikan terhadap error.
4.
Java bersifat sederhana dan relatif mudah
Java merupakan penyederhanaan dari bahasa C++, yaitu dengan
mengurangi keruwetan dalam penggunaan pointer pada C++, dan
menambah beberapa fungsi-fungsi yang ada dalam C++.
5.
Java bersifat robust
Program Java tidak akan menyebabkan crash pada sistem karena
Java meng-interpreter dan memeriksa semua akses sistem yang
dilakukan.
6.
Java mendukung web-based aplication
Sekarang ini desktop aplication mulai ditinggalkan dan diganti
dengan web-based aplication. Salah satu kelebihan web-based
aplication adalah web-based aplication menggunakan web
server. Sehingga ketika akan mengedit atau menambahkan fiturfitur pada program aplikasi, user cukup mendowload saja.
7.
Java bersifat terdistribusi
Bila pada bahasa pemrograman lain, hasil akhir dari pembuatan
program adalah sebuah file ber-extention *.EXE, pada Java hasil
akhirnya adalah file ber-extention *.CLASS. Hal tersebut karena
Java difokuskan untuk aplikasi berbasis terdistribusi yang dapat
diaktifkan melalui jaringan atau internet.
24
8.
Java memiliki fasilitas Garbage Collector
Java bisa menghapus (destruct) sendiri object-object yang tidak
digunakan lagi secara otomatis.
2.5.3
Konsep Object Oriented Programming (OOP) dalam Java
Object Oriented Programming merupakan suatu konsep pemrograman
yang mengkombinasikan data dan method (fungsi) untuk mengakses data
menjadi sebuah kesatuan unit. Unit ini dikenal dengan nama object. (Abdul
Kadir, 2004, p4)
Object merupakan suatu encapsulation dari data dan fungsi. Sebuah
peningkatan pemahaman sebelumnya dimana posisi data dalam suatu program
lebih rendah dari fungsi atau mehod, dalam OOP, data mempunyai kedudukan
yang seimbang dengan fungsi atau method.
2.5.3.1 Class dan Object
Class
dapat
dianalogikan
sebagai
sebuah
object.
Class
menentukan spesifikasi pembentuk object. Mulai dari jenis data, fungsifungsinya, nilai awalnya, hingga cara berinteraksi dengan object lain.
Sebuah class umumnya terdiri dari variabel instan dan method
untuk object. Method merupakan fungsi yang melekat pada sebuah object
atau instansi dari class tertentu.
25
Dengan menggunakan sebuah class, sejumlah object dapat
diciptakan. Object-object dari class yang sama memiliki sifat-sifat yang
sama.
2.5.3.2 Inheritance
Inhritance (pewarisan) merupakan konsep dalam pemrograman
berorientasi object yang memungkinkan untuk membuat class dengan
didasarkan pada class yang sudah ada sebelumnya, sehingga mewarisi
semua fungsi dan variabelnya.
Inheritance merupakan suatu mekanisme yang memungkinkan
seseorang menciptakan suatu class baru berdasarkan class yang sudah
tersedia tanpa perlu menuliskan kode dari nol. (Abdul Kadir, 2004, p174)
2.5.3.3 Interface
Interface merupakan suatu mekanisme yang disediakan oleh Java
yang memungkinkan agar banyak class dapat berbagi konstanta atau
menentukan bentuk metode yang dapat digunakan oleh sejumlah class.
Method yang digunakan adalah metode abstrak, yang hanya terdapat
deklarasi dan definisi. Begitu pula variabel yang dipergunakan adalah
variabel konstan (static funal).
Suatu class hanya dapat mewarisi variabel dan method dari satu
superclass saja namun dengan mempergunakan interface satu class dapat
mempergunakan abstract method dan konstanta dari banyak interface
26
berbeda. Interface juga dapat mewarisi interface lain seperti halnya class
dapat mewarisi class lainnya.
2.5.4
Java 2 Standart Edition (J2SE)
Seperti banyak bahasa pemrograman pada umumnya, Java banyak
bergantung pada library untuk mendukung fungsionalitas tertentu. Pada bahasa
pemrograman Java, kumpulan dari berbagai class yang saling berkait dinamakan
package.
Setiap edisi dari Java seperti Standart Edition, Enterprise Edition, dan
Micro Edition digunakan untuk fungsi spesifik tertentu. Seperti aplikasi yang
berbasis window didukung oleh Java 2 Standart Edition.
Java 2 Standart Edition menyediakan sebuah lingkungan yang kaya akan
fitur, aman, stabil dan multi-platform. Java 2 Standart Edition juga mendukung
hal-hal penting seperti database connectivity, design user interface (UI), inputoutput, pemrograman jaringan, dan dasar dari segala pemrograman Java.
27
Gambar 2.9 J2SE Platform
(J2SE SDK1.6 )
2.5.5
JavaTM Communication API
JavaTM communications API merupakan library tambahan untuk Java
agar dapat digunakan untuk membuat program aplikasi yang dapat dihubungkan
ke fax, voice mail, dan smart card. Library tambahan tersebut memiliki classclass yang dapat digunakan untuk berkomunikasi dengan device-device yang
terhubung
dengan
komputer.
JavaTM
communications
API
dapat
diimplementasikan pada sistem ber-platform solaris atau Win32.
JavaTM communications API mendukung untuk komunikasi RS232 serial
port dan IEEE 1284 parallel port..
Beberapa fungsi pada JavaTM communications API:
1. Dapat memperlihatkan port-port berguna yang ada pada system.
28
2. Dapat membuka dan mengklaim kepemilikan dari port yang terbuka.
3. Dapat memutuskan hubungan dengan port
4. Dapat digunakan untuk berbagai aplikasi.
5. Mendukung komunikasi I/O asyncronous dan syncronous.
6. Dapat menerima event yang menggambarkan perubahan state pada port.
(http://www.java.sun.com)
2.5.6
Java Database Connectivity (JDBC)
JDBC API adalah sebuah spesifikasi yang mendefinisikan bagaimana
program yang ditulis dengan Java dapat berkomunikasi dan berinteraksi dengan
database. JDBC API mendefinisikan bagaimana sebuah komunikasi dijalankan
dan bagaimana sebuah aplikasi dan database dapat saling berinteraksi. Untuk
lebih spesifiknya JDBC API mendefinisikan bagaimana sebuah aplikasi
membuka koneksi, berkomunikasi dengan database, mengeksekusi perintahperintah SQL dan menerima hasil query.
JDBC adalah suatu ide baru yang dibuat untuk mendukung java. Konsep
JDBC diambil dari sumber lain yang merupakan bagian dari Microsoft Open
Database Connectivity.
JDBC berbeda dengan ODBC (Open DataBase Connectivity). Pada
ODBC dimungkinkan semua bahasa pemrograman untuk mengakses database
yang disediakannya.
29
Gambar 2.10 Aplikasi Java menggunakan JDBC
(Matthew Siple, 1998,P 1-3)
2.6 MySql
MySQL AB membangun dan mendukung produk-produk database yang
menghasilkan dan yang mempunyai kinerja tinggi. Dengan bendera perusahaan
menawarkan ‘MySQL Enterprise’, satu set software lengkap yang sudah dites, alat
monitoring yang proaktif, dan layanan pendukung premium.
MySQL adalah software open source untuk database yang paling populer,
dengan lebih dari 100 juta kopi software yang didownload atau didistribusikan melalui
sejarahnya. Dengan kecepatan tinggi, reliability, dan mudah digunakan, MySQL
menjadi pilihan manajer IT perusahaan karena MySQL mengurangi masalah utama yang
berhubungan dengan downtime, perawatan, administrasi, dan dukungan.
30
MySQL adalah bagian penting dari LAMP (Linux, Apache, MySQL, PHP/ Perl/
Phyton), perusahaan software open source dengan perkembangan cepat dalam
bidangnya. Semakin banyak perusahaan yang menggunakan LAMP sebagai sofware
pilihan karena biaya yang lebih rendah dan kebebasan dari keterbatasan.
Perusahaan MySQL AB ditemukan di Swedia oleh dua orang Swedia dan satu
orang Filandia : David Axmark, Allan Larsson dan Michael "Monty" Widenius yang
bekerja sama sejak tahun 80 an. MySQL AB adalah pemilik tunggal dari source code
server MySQL, trademark MySQL dan domain mysql.com. Perusahaan ini secara
pribadi didirikan dan tanpa debitor, dan dibiayai oleh modal proyek sejak Juli 2001.
(http://www.mysql.com/company/)
2.7 Sejarah Mikroprosesor dan Komputer
2.7.1. Komputer Generasi Pertama
Perkembangan
mikrokontroler
didahului
dengan
perkembangan
mikroprosesor yang sangat berdampak pada perkembangan teknologi komputer,
mikrokontroler sangat dibutuhkan untuk menjadi pengontrol utama sistem
elektronika digital, baik yang berukuran kecil maupun menengah. (Widodo
Budiharto, 2005, P 1)
Jauh sebelum ditemukannya transistor pada tahun 1947, komputer
berukuran besar sudah digunakan untuk komputasi data. Bahasa pemrograman
juga sudah ada pada tahun 1945 yang bernama Plankalkul yang dibuat oleh
ilmuwan jerman yang bernama Konrad Zuse, namun belum sempat
dipublikasikan hingga tahun 1972 karena kondisi pada saat itu sedang perang.
Konrad Zuse pada tahun 1945 juga telah membuat komputer dari relay
31
elektromekanik meskipun musnah karena perang, kecuali satu model terakhirnya
yaitu Z4. (Widodo Budiharto, 2005, P 3)
2.7.2
Mikroprosesor
Pada sebuah komputer terdapat mikroprosesor yang digunakan untuk
memproses data. Mikroprosesor merupakan sebuah chip yang berfungsi sebagai
pemroses data dari input yang diterima dari sebuah sistem. Letak mikroprosesor
pada komputer PC adalah pada CPU ( Central Processing Unit).
Pada tahun 1971, muncul prosesor pertama buatan Intel dengan seri 4004,
yang digunakan untuk kalkulator. Seri 4004 hanya menggunakan 2300 transistor
dan merupakan chip 4 bit. Satu tahun kemudian muncul mikroprosesor 8008
yang merupakan mikroprosesor 8 bit pertama. Mikroprosesor seri 8008
menggunakan 3300 transistor. Pada tahun 1974 Intel, memperkenalkan
mikroprosesor seri 8080 dan 8085.
Pada tahun 1978, Intel memperkenalkan mikroprosesor 8086 yang secara
eksternal dapat menangani alamat 20 bit dan data 16 bit. Karena masih ada
perangkat keras yang masih memiliki lebar data 8 bit, maka dari itu prosesor ini
memiliki masalah dengan lebar data tersebut. Kemudian Intel meluncurkan
mikroprosesor 8088. Mikroprosesor 8088 mampu menangani data 8 bit dan 16
bit.
2.7.2.1 Mikrokontoller dan Mikroprosessor
Mikroprosesor adalah CPU yang dipaket menjadi satu chip
semikonduktor. Mikroprosessor memiliki kemampuan pemrosesan yang
32
sama dengan mini komputer, tetapi ukuran dan kecepatan mikroprosesor
tidaklah sama dengan minikomputer. Pada awalnya mikroprosesor
digunakan untuk menggambarkan karakter prosesor yang memiliki
ukuran yang sangat kecil. Komputer yang dibuat dengan menggunakan
mikroprosesor disebut dengan mikrokomputer. Sebagai input output pada
mikrokomputer biasanya menggunakan standart input output pada
personal komputer atau komputer pribadi, seperti penggunaan monitor
sebagai output dan keyboard sebagai input.
Mikrokontroler merupakan keseluruhan komputer yang dibuat
dalam satu chip. Untuk alat-alat elektronik mikroprosesor standart tidak
cukup, karena itu mikro prosesor memerlukan komponen eksternal
tambahan seperti memori, converter analog ke digital, dan juga perangkat
komunikasi serial lainnya. Mikroprosesor dengan tambahan alat-alat
eksternal disebut dengan mikrokontroler. ( Sencer Yeralan, 1995, P1 )
2.7.2.2 Embedded System
Embedded system digunakan untuk system yang beroperasi secara
real-time. Sistem yang beroperasi secara real-time berati bahwa
controller tersebut harus mampu untuk menerima input atau masukan dari
lingkungan sistem tersebut dan kemudian memproses input atau masukan
tersebut. Jadi ketika ada input atau masukan dari lingkungan controller
harus selalu siap, jadi lingkungan tidak menunggu controller siap, tetapi
sistem yang harus selalu siap. Untuk itu controller harus memiliki
33
kecepatan yang cukup untuk memproses sinyal-sinyal dari lingkungan.
(Sencer Yeralan, 1995, P2 )
2.7.2.3 Mikrokontroler AT89S52
Mikrokontroler AT89S52 merupakan mikrokomputer CMOS 8 bit
dengan Kbyte Flash Erasable & Programable Read Only Memory
(EPROM). Mikrokontroler ini berteknologi memori non volatile
kerapatan tinggi dari ATMEL Karena menggunakan teknologi non
volatile maka isi memori dapat diisi dan dihapus berkali-kali. Memori ini
biasa digunakan untuk menyimpan instruksi (perintah) berstandar MCS51 code sehingga memungkinkan mikrokontroler ini untuk bekerja dalam
mode single chip operation (mode operasi keping tunggal) yang tidak
memerlukan external memory (memori luar) unruk menyimpan source
code tersebut. (Widodo Budiharto, 2005, P17)
2.7.2.4 Spesifikasi AT89S52
Spesifikasi penting AT89S52 antara lain :
1. Kompatible
dengan
keluarga
mikrontroler
MCS51
sebelumnya.
2. 8 Kbyte In-system Programmable (ISP) flash memori
dengan kemampuan 1000 kali baca/tulis.
3. Tegangan kerja 4-5 V
4. Bekerja dengan entang 0-33 MHz.
5. 256 X 8 bit RAM internal.
34
6. 32 jalur I/O yang dapat diprogram.
7. Tiga buah 16 bit Timer/Counter.
8. Delapan sumber interupt.
9. Saluran Full-Duplex serial UART.
10. Watchdog timer.
11. Dual data pointer.
12. Mode pemrograman ISP yang fleksibel (Byte dan Page
Mode).
(Widodo Budiharto, 2005, P18)
2.7.2.5 Deskripsi AT89S52
Gambar 2.11 IC AT89S52
(http://www.keil.com/dd/docs/datashts/atmel/at89s52_ds.pdf)
35
Deskripsi mikrokontroler AT89S52 antara lain:
1. Pin 1 sampai 8
Merupakan port 1 yang berfungsi sebagai I/O biasa
atau menerima low order address bytes selama pada saat
Flash Programming. Port ini memiliki internal pull up dan
berfungsi sebagai input dengan memberikan logika 1.
Sebagai output port ini dapat memberikan output sink
keempat buah input TTL. (Widodo Budiharto, 2005, P23)
Tabel 2.3 Port Pada AT89S52
Pin port
P1.0
P1.1
P1.5
P1.6
P1.7
Fungsi alternatif
T2(input cacah eksternal ke
Timer/Counter 2, clock out)
T2EX (Timer/Counter 2
capture/reload dan control
arah)
MOSI(digunakan untuk Insystem programming)
MISO(digunakan juga untuk
In-System programming)
SCK(digunakan untuk Insystem programming)
(Widodo Budiharto, 2005, P23)
2. Pin 9
Merupakan masukan reset (RST). Reset akan aktif
dengan memberikan input high selama 2 cycle. Bit
DISRTO di AUXR (alamat 8EH)dapat digunakan untuk
menonaktifkan fitur ini. (Widodo Budiharto, 2005, P23)
36
3. Pin 10 sampai 17
Tabel 2.4 Tabel Fungsi Port 3
bit
P3.0
P3.1
P3.2
P3.3
P3.4
P3.5
P3.6
nama
RXD
TXD
INT0
INT1
T0
T1
WR
P3.7
RD
Fungsi alternatif
Port Serial Input
Port Serial Output
Port External Interupt 0
Port External Interupt 1
Port External Timer 0
Port External Timer 1
External Data Memory
Write Strobe
External Data Memory
Read Strobe
(Widodo Budiharto, 2005, P24)
4. Pin 18 sampai 19
Jalur ini merupakan masukan ke penguat osilator
berpenguat tinggi.. pin ini diperlukan untuk dihubungkan
dengan kristal. XTAL1 digunakan sebagai input untuk
inverting osilator amplifier dan input ke rangkaian internal
clock. Sedangkan XTAL2 merupakan output dari inverting
ascilator amplifier. (Widodo Budiharto, 2005, P24)
5. Pin 20
Merupakan ground sumber tegangan (GND).
(Widodo Budiharto, 2005, P25)
6. Pin 21 sampai 28
Port 2 berfungsi sebagai I/O biasa atau high order
address, pada saat mengakses memori secara 16 bit
(Movx@DPTR). Pada saat mengakses memori secara 8 bit
(Movx@RN) port ini akan mengeluarkan isi dari P2 ke
37
Special Function Register. Port ini memiliki pull up dan
berfungsi sebagai input dengan memberi logika 1. sebagai
output, port ini dapat memberikan output sink ke empat
buah input TTL. (Widodo Budiharto, 2005, P25)
7. Pin 29
Program Store Enable(PSEN) merupakan sinyal
pengontrol dalam mengakses program memori eksternal
yang masuk ke dalam saluran (bus) selama proses
pemberian atau pengambilan instruksi (fetching). PSEN
akan aktif dua kali setiap cycle. Aktifasi PSEN yang kedua
akan ditunda selama proses akses ke memori data
eksternal. (Widodo Budiharto, 2005, P25)
8. Pin 30
Address Latch Enable (ALE) berfungsi untuk melatch low byte address pada saat mengakses memori
eksternal. Pada saat flash programming (PROG) berfungsi
sebagai sebagai sinyal input. Pada operasi standart ALE
akan mengeluarkan sinyal clock sebesar 1/6 dari frekuensi
oscilator, dan sering digunakan sebagai timing eksternal
atau tujuan clocking. Sinyal clock ini dapat di-disable
dengan menset bit 0 dari SFR pada lokasi 8EH. Pada saat
non aktif ALE tidak dapat diset ketika mikrokontroler
berada pada mode eksekusi eksternal. (Widodo Budiharto,
2005, P26)
38
9. Pin 31
External Access Enable (EA) merupakan sinyal
kontrol untuk pembacaan memori program. Pada saat
kondisi low, mikrokontroler akan menjalankan program
yang ada di memori eksternal. Sedangkan pada saat
kondisi high maka mikrokontroler akan mejalankan
program dari memori internal. Pada saat flash programing
pin ini akan mendapatkan tegangan sebesar 12 volt (VPP).
(Widodo Budiharto, 2005, P26)
10. Pin 32 sampai 39
Port 0 berfungsi I/O yang dapat digunakan sebagai
multiplex pada low address atau menerima kode byte pada
saat fllash programming. Pada saat berfungsi sebagai I/O
biasa port ini dapat memberikan output sink ke delapan
buah transistor transistor logic (TTL) input (Widodo
Budiharto, 2005, P26)
11. Pin 40
Merupakan sumber tegangan positif (VCC).
(Widodo Budiharto, 2005, P26)
2.7.3
Struktur Memori
AT89S52 memiliki struktur memori sebagai berikut :
1. RAM Internal
39
Berfungsi sebagai tempat penyimpanan sementara, dan
memiliki memori sebesar 256 byte.
2. Special function register
Register-register ini memiliki fungsi khusus yang akan
dijelaskan berikut ini:
o Accumulator (register A), merupakan register 8 bit yang
digunakan untuk operasi aritmatika dan operasi logika.
o Register B, memiliki fungsi yang sama dengan register A
o Program Counter(PC), merupakan register 16 bit yang
berfungsi untuk menunjuk lokasi memori untuk instruksi
berikutnya. Ketika direset atau di power up PC selalu bernilai
0000h dan nilai tersebut akan selalu bertambah setiap sebuah
instruksi diproses.
o Data Pointer(DPTR), digunakan untuk mengakses data atau
source code yang ada di memori eksternal.
o Stack Pointer (SP), berfungsi sebagai penunjuk alamat atau
data yang berada
o Program status word, register ini berisi bit status yang
menggambarkan keadaan mikrokontroler.
o Power control register, terdiri beberapa macam register untuk
kontrol.
3. Flash EPROM
Memori yang digunakan untuk menyimpan memori MCS51
(www.jazi.staff.ugm.ac.id)
40
2.7.4
Komunikasi Data Serial
Komunikasi data serial berbeda dengan komunikasi data paralel. Jika
komunikasi data paralel pengiriman dilakukan secara sekaligus maka pada
komunikasi data serial pengiriman dilakukan per bit melalui sebuah jalur
tunggal. Dalam komunikasi data serial perlu dilakukan sinkronisasi antara
pengirim dan penerima agar data yang dikirim dapat diterima dengan tepat dan
benar oleh penerima. Kelebihan dari komunikasi data serial adalah jarak
pengiriman dan peneriamaan dapat dilakukan dalam jarak yang cukup jauh
dibanding komunikasi data paralel, tetapi kekurangannya adalah kecepatan
komunikasi data serial lebih lambat dari pada komunikasi data paralel. Contoh
komunikasi data seial adalah komunikasi serial RS 232 dan RS 485
Pada komunikasi data serial terdapat dua mode dalam mentranmisikan
data yaitu :
1. Mode sinkron
Mode sinkron merupakan mode komunikasi yang pengiriman tiap
bit data dilakukan dengan menggunakan sinkronisasi clock. Pada saat
transmiter hendak mengirimkan data, harus disertai clock untuk
sinkronisasi antara transmiter dan receiver.
2. Mode Asinkron
Mode sinkron merupakan mode komunikasi yang pengiriman tiap
bit data dilakukan tanpa menggunakan sinkronisasi clock. Transmiter
yang ingin mengirimkan bit-bit data harus menyepakati suatu standar
Universal Acynchronous Receive Transmit (UART) sehingga komunikasi
41
data dilakukan dengan suatu standart yang telah disepakati terlebih
dahulu oleh transmiter dan receiver.
Standart UART terdapat pada IC yang dapat mengkonversi 8 bit
data ke dalam aliran serial untuk dikirimkan menuju receiver, demikian
sebaliknya pada saat menerima dari serial maka IC UART akan
mengubah data serial menjadi 8 bit data yang selanjutnya dapat diproses.
Gambar 2.12 Serial DB-25
(perc2 PENGENALAN INTERFACE SERIAL DAN UART rev LM.pdf)
Gambar 2.13 Serial DB-9
(perc2 PENGENALAN INTERFACE SERIAL DAN UART rev LM.pdf)
Tabel 2.5 Serial Pin Out Pada Konektor DB-25 dan DB-9
D-Type-25 Pin No.
Pin 2
Pin 3
Pin 4
Pin 5
Pin 6
Pin 7
Pin 8
Pin20
Pin 22
D-Type-9 Pin No.
Pin 3
Pin 2
Pin 7
Pin 8
Pin 6
Pin 5
Pin1
Pin 4
Pin 9
Singkatan
TD
RD
RTS
CTS
DSR
SG
CD
DTR
RI
Nama Lengkap
Transmit Data
Receive Data
Request To Send
Clear To Send
Dta Set Ready
Signal Ground
Carrier Detect
Data Transmit Ready
Ring Indicator
42
Tabel 2.6 Port Address dan IRQ pada Serial
Nama
COM1
COM2
COM3
COM4
Alamat
3F8
2F8
3E8
2E8
IRQ
4
3
4
3
Berikut akan dijelaskan masing-masing fungsi port pada serial :
1.DTR (Data Terminal Ready)
DTR berfungsi sebagai indikator yang berguna
untuk menunjukkan kapan modem akan digunakan dan
modem menset DSR untuk mengidentifikasikan bahwa
modem sudah siap dan koneksi sudah tersambung.
2.RTS (Request To Send)
Berfungsi untuk menset agar komputer dapat
meminta persetujuan untuk mengirim.
3.TxD (Transmit Data)
Berfungsi untuk proses pengiriman data.
4.CTS (Clear To Send)
Berfungsi untuk menginformasikan kepada
komputer bahwa modem sudah siap untuk menerima dan
megirim data lewat kabel telepon.
43
5.
DSR (Data Set Ready)
Untuk mengidentifikasi DTR. Bila DTR dibuat
drop oleh komputer maka akan menyebabkan kebanyakan
modem menjadi terputus. Setelah terputus maka modem
akan menyatakan bahwa DSR Low.
6.DCD (Data Carier Detect)
Pada modem, untuk mengaktifkan jalur transmisi
pada saluran komunikasi. DCD akan aktif apabila modem
mendeteksi adanya carrier dalam jalur transmisi pada
ujung saluran komunikasi.
7.RI (Ring Indikator)
Pada modem, merupakan pendeteksi adanya sinyal
telepon yang masuk pada saluran modem. RI akan aktif
apabila ada yang menggunakan jalur komunikasi telepon.
(perc2 PENGENALAN INTERFACE SERIAL DAN UART rev LM.pdf)
2.7.4.1 Mode Komunikasi
Macam-macam mode komunikasi adalah:
1.Mode komunikasi simplex
Pada mode ini komunikasi hanya terjadi satu arah.
Jadi posisi pengirim dan penerima bersifat pemanen, tidak
dapat dibalik-balik. Jika pengirim tidak dapat menerima
data dan penerima tidak dapat mengirim data.
2.Mode komunikasi half duplex
44
Pada mode ini komunikasi data dapat terjadi secara
dua arah. Tetapi komunikasi dilakukan secara bergantian
karena pada komunikasi ini hanya ada satu jalur data. Jadi
pengiriman data dan penerimaan data menggunakan satu
jalur yang sama. Pada half duplex sinkron, selang waktu
tunda terjadi apabila terjadi perubahan arah transmisi,
karena modem pengirim harus mengirimkan sekelompok
sinyal untuk inisialisasi piranti penerima agar bisa
menyesuaikan dengan kondisi kanal.
3. Mode komunikasi full duplex
pada mode ini komunikasi terjadi secara dua arah,
dan menggunakan dua jalur. Jadi pengiriman data dari
kedua belah pihak yang sedang berkomunikasi dapat
dilakukan secara bersamaan. Tetapi setiap jalur hanya bisa
digunakan untuk komunikasi satu arah.
Pertimbangan-pertimbangan dalam memilih jalur komunikasi
antara half duplex dan full duplex adalah dari segi ekonomi dan
kecepatan operasinya. Selain itu karakterististik dasar lalu lintas data dan
cara penanganan kesalahan yang dimiliki oleh sistem.
(www.jazi.staff.ugm.ac.id)
45
2.7.4.2 Format Data Komunikasi Serial
Format data pada komunikasi data serial terdiri dari beberapa
parameter. Parameter-parameter ini digunakan untuk menentukan bentuk
data serial yang akan dikomunikasikan. Parameter-parameter yang
digunakan untuk menentukan format data pada komunikasi data serial
adalah sebagai berikut:
1.Kecepatan mobilisasi data per bit (baud rate)
Dalam komunikasi ata serial laju data dinyatakan dalam
satuan baud. Laju pemindahan data dalam kanal komunikasi
merupakan laju tercepat dari pemindahan bit. Laju pemindahan
data pada kanal jaringan biasanya lebih rendah dari pada kanal
komunikasi. Penyebab rendahnya kelajuan data pada kanal
jaringan adalah karena adanya penambahan bit ekstra untuk
keperluan pewaktuan. Data serial dapat dimobilisasikan pada
berbagai baud rate. Baud rate yang digunakan pada teknik
komunikasi data serial null modem asyncronous adalah 300 bps
sampai 19200 bps.
2.Jumlah bit data per karakter (data length)
Dalam komunikasi data serial mode asyncronous biasanya
berlangsung transmisi data yang dikemas dalam bentuk karakter.
Dalam satu karakter diperbolehkan terdiri dari beberapa variasi
jumlah bit.dan variasi-variasi yang diperbolehkan terdiri dari 7 bit
dan 8 bit (panjang satu karakter saja). Kedua variasi ini yang
paling sering digunakan dalam komunikasi data serial.
46
3.Pariti yang digunakan
Bit parity adalah bit yang digunakan sebagai alat
pemeriksa kesalahan sederhana dalam proses transmisi data
digital. Pemakaian parity ini akan diikutsertakan dalam proses
penulisan inisialisasi peralatan serial yang bersangkutan. Bit
parity ini akan diletakkan setelah susunan bit data. Macam-macam
jenis parity adalah parity ganjil, parity genap, dan tanpa parity
(tidak memiliki pemeriksa kesalahan).
(www.jazi.staff.ugm.ac.id)
2.7.4.3 Konfigurasi Terminal Ganda
Macam-macam konfigurasi untuk terminal adalah :
1.Konfigurasi bintang
Digunakan diantara setiap terminal dan komputer.
Konfigurasi ini merupakan konfigurasi yang paling
sederhana. Saluran transmisi terpisah
(Carl Hamacher,1990, P504)
47
Gambar 2.14 Gambar Konfigurasi Bintang
(Carl Hamacher,1990, P504)
2.Konfigurasi saluran titik ganda (multi point)
Saluran
transmisi
tunggal
digunakan
untuk
menghubungkan sejumlah terminal. Dengan menggunakan
konfigurasi ini dapat mengurangi biaya kabel. Jika
menggunakan saluran ini maka masing-masing terminal
harus
diberi
alamat
dan
harus
ada
penjadwalan
penggunaan saluran transmisi. Pengalamatan itu bertujuan
agar komputer dapat mengetahui data atau pesan yang
diperoleh berasal dari teminal yang mana, karena hanya
ada satu saluran. Ada 3 metode model penjadwalan
pemakaian saluran transmisi, yaitu roll polling, hub
polling, dan contention. Roll polling merupakan prosedur
yang paling sederhana untuk saluran multi point.
Komputer mulai dengan mengirimkan pesan singkat ke
48
salah satu terminal. Jika terminal siap, terminal itu akan
menjawab dengan mentransmisikan datanya. Bila tidak
terminal akan mengirimkan jawaban not ready. Kemudian
komputer akan menanyakan ke terminal berikutnya,
demikian seterusnya. Hub polling merupaka modifikasi
dari skema roll polling untuk memperkecil over head
polling. Komputer memulai dengan mengirimkan pesan
pada saluran inbound ke terminal satu. Jika terminal siap,
terminal akan menjawab dengan mentransmisikan datanya
pada saluran outbound. Jika tidak, terminal akan
mentransmisikan pesan ke terminal dua. Sedangkan
contention, terminal akan mengirimkan data ke komputer
dengan menyertakan alamat tertentu sebelum pesan.
Gambar 2.15 Gambar Konfigurasi Multipoint
(Carl Hamacher,1990, P507)
3.Konfigurasi loop
Perbedaan utama antara konfigurasi loop dan
konigursi multi point adalah adanya bagian terpisah yang
menghubungkan interface loop pada organisasi loop.
49
Transmisi dalam loop selalu terjadi pada arah yang sama,
searah atau berlawanan arah dengan jarum jam. (Carl
Hamacher, 1990, P507)
2.8 Assembly Language
Secara fisik mikrokontroler bekerja dengan membaca instruksi yang tersimpan
didalam memori. Mikrokontroler menentukan alamat dan memori program yang akan
dibaca dan melakukan proses baca data di memori. Data yang dibaca diinterpretasikan
sebagai instruksi. Alamat instruksi disimpan oleh mikrokontroler di register yang
dikenal sebagai program counter. (Widodo Budiharto, 2005, P43)
2.8.1 Mode Pengalamatan
2.8.1.1 Pengalamatan Langsung
Pengalamatan langsung dilakukan dengan memberikan nilai ke
suatu register secara langsung. Untuk itu digunakan tanda #. Operand
yang digunakan pada pengalamatan langsung/immediate dapat berupa
bilangan bertanda mulai -256 hingga +256.
Mis: MOV A, #25H ; Isi akumulator dengan bilangan 25H
(Widodo Budiharto, 2005, P47)
2.8.1.2 Pengalamatan Tak Langsung
Pada pengalamatan ini, operand menunjuk ke sebuah register
yang berisi lokasi alamat memori yang akan digunakan dalam operasi.
Untuk melakukan pengalamatan tidak langsung digunakan simbol @.
50
Pengalamatan jenis ini biasa digunakan untuk melakukan penulisan,
pemindahan, atau pembacaan beberapa data dalam lokasi memori.
Mis: MOV P1, A ; Isi P1 dengan data dari akumulator
(Widodo Budiharto, 2005, P47)
2.8.1.3 Pengalamatan Kode
Pengalamatan kode terjadi, saat operand berfungsi sebagai alamat
dari intruksi JUMP dan CALL. (Widodo Budiharto, 2005, P48)
2.8.1.4 Pengalamtan Bit
Pengalamatan bit menunjukkan alamat lokasi bit baik yang berada
di dalam RAM internal atau perangkat keras. Simbol titik (.) digunakan
dalam operasi ini. (Widodo Budiharto, 2005, P48)
2.9
DCE dan DTE device
DTE adalah Data Terminal Equipment dan DCE adalah Data Communication
Equipment. DTE dan DCE dignakan untuk mengidikasikan pin-out pada alat
penghubung dan pensinyalan langsung pada pin. Komputer merupakan DTE dan devicedevice lain seperti modem dan serial device lainnya yang biasa digunakan sebagai DCE
device.
RS-232 adalah suatu alat standart yang digunakan sebagai penghubung antara
DTE dan DCE.
51
Gambar 2.16 Komunikasi DTE dan DCE
(http://www.sena.com/download/tutorial/tech_Serial_v1r0c0.pdf)
2.9.1
RS-232
RS-232 (Recommended Standart-232) adalah standar interface yang
disetujui oleh Electronic Industries Association (EIA) untuk menghubungkan ke
serial device. Dengan kata lain, RS-232 adalah standar untuk physical interface
dan protokol untuk komunikasi data serial berkecepatan rendah antara komputer
dan deice-device yang terhubung. RS-232 dapat digunakan untuk komunikasi
synchronous mode atau asynhcronus mode.
RS-232 dapat menggunakan konektor DB-9, Db-25, dan RJ-45.
RS-233 memiliki beberapa kekurangan yang serius sebagai suatu alat
penghubung elektrik, yaitu:
1.
RS-232 tidak mampu untuk menyaring noise yang ada secara keseluruhan.
2.
Jangkauan kabel untuk RS-232 hanya sebatas pada ruangan yang sama.
3.
RS-232 hanya mendukung komunikasi point-to-point dengan kecepatan
yang rendah. Mis: port Com1 pada komputer dapat digunakan untuk mouse
52
dan port Com2 untuk keyboard. Ini merupakan contoh dari komunikasi
point-to-point, satu port untuk satu alat.
2.9.2
RS-485
RS-485 adalah suatu standart dari Electronic Industry Assosiation (EIA)
untuk komunikasi multipoint. RS-485 mendukung beberapa jenis konektor yaitu
DB-9 dan DB-37. RS-485 merupakan jaringan multipoint yang memiliki
spesifikasi standart sampai 32 driver dan 32 receiver pada bus single (2-wire).
RS-485 menggunakan komunikasi bi-directional, menggunakan transmisi data
half-duplex, dan hanya standart EIA yang mengijinkan multiple receiver dan
driver pada konfigurasi bus.
2.9.3 Converter
Converter pada umumnya digunakan untuk mengubah karakteristik
elektrik dari suatu komunikasi yang baku komunikasi ke komunikasi yang lain.
Sebagai contoh, RS-232ÙRS-485 converter, secara otomatis RS-232 komputer
yang full-duplex dapat dihubungkan dengan RS-485 yang half-duplex. Sinyal
RS-232 yang full-duplex dapat langsung diubah menjadi sinyal RS-485 yang
half-duplex. RS-485 dengan sinyal half-duplexnya mampu me-multidrop
jaringan sampai 4000 kaki.
Converter merupakan sebuah alat yang menghubung data yang tidak
mengubah timing dan protokol data sumber. Saat konversi software harus dapat
berkomunikasi dengan corak jaringan yang luas. RS-232ÙRS-485 automatic
converter akan menjalankan RS-485 transmiter saat ada data yang terdeteksi
53
pada port RS-232, dan kembali ke mode penerima setelah karakter dikirim.
Ketika full-duplex dikonversi ke half-duplex hanya satu device yang
mentransmisi data pada waktu yang sama. Automatic converter memperhatikan
masalah timing dan memberikan komunikasi yang cepat tanpa campur tangan
software.
http://www.sena.com/download/tutorial/tech_Serial_v1r0c0.pdf
2.10 UML (Unified Modelling Language)
Unified Modelling Language adalah sebutan bahasa standar untuk menuliskan
rancangan
perangkat
lunak.
Unified
Modelling
Language
digunakan
untuk
menggambarkan, mengembangkan, dan mendokumentasikan artifact dari sebuah
software-intensive system.
Diagram UML dapat dibagi dalam 2 kelompok besar yaitu behavioral diagram
dan structural diagram. Behavioral diagram digunakan untuk menggambarkan
menunjukkan, mengembangkan, dan mendokumentasikan aspek-aspek dinamis dari
suatu sistem. Behavioral diagram terdiri dari :
•
Use case diagram
Use case diagram menggambarkan sekumpulan use case dan
actor dan hubungan antara use case dengan actor. Use case diagram
digunakan untuk menggambarkan static view dari sistem. Actor mewakili
sebuah peran (pengguna) dari use case yang ber-interaksi dengan use
case tersebut. Use case mewakili apa yang dilakukan oleh sebuah sistem,
namun tidak menggambarkan bagaimana pekerjaan tersebut dilakukan.
•
Sequence diagram dan Collaboration diagram
54
Sequence diagram dan collaboration diagram termasuk dalam
interaction diagram yang menggambarkan interaksi antara object yang
terjadi melalui pengiriman pesan antar object tersebut. Sequence diagram
merupakan interaction diagram yang menekankan pada urutan waktu
dari pengiriman dan penerimaan pesan, sedangkan collaboration diagram
merupakan interaction diagram yang menekankan pada susunan
oorganisasional dan hubungan dari object-object yang mengirimkan dan
menerima pesan.
•
Statechart diagram
Statechart diagram menunjukkan state-machine, menekankan
pada aliran kontrol dari satu state ke state lainnya. State machine adalah
menunjukkan serangkaian state (keadaan) yang dilalui suatu object
selama jangka waktu hidupnya dalam rangka memproses respon dari
suatu event (kejadian) dan hasil respon terhadap event tersebut. State
adalah suatu kejadian atau situasi dalam jangka waktu hidup suatu object,
dimana suatu object melakukan suatu aktivitas atau menunggu suatu
event. Event adalah suatu spesifikasi dari kejadian yang memiliki tempat
dalam ruang dan waktu. Dalam konteks state machine, event adalah
sebuah kejadian yang dapat memicu state transition (perpindahan state).
Transition adalah hubungan antara 2 state yang menunjukkan bahwa
object pada state pertama akan melakukan suatu aksi dan memasuki state
ke dua pada waktu event tertentu terjadi dan kondisi tertentu terpenuhi.
Action adalah perhitungan atomic yang dapat dieksekusi yang
55
menghasilkan perubahan state atau nilai balik. Activity adalah eksekusi
non-atomic yang terus menerus berjalan dalam sebuah state-machine
•
Activity diagram
Activity
diagram
menunjukkan
sejumlah
kegiatan,
aliran
sekuensial atau bercabang dari suatu activity ke activity lain, dan objectobject yang terlibat. Activity diagram menunjukkan aliran dari suatu
activity ke activity yang lainnya. Activity adalah eksekusi non-atomic
yang terus menerus berjalan dalam sebuah state-machine. Suatu activity
pada akhirnya menghasilkan suatu aksi yang terdiri dari perhitungan
atomic yang dapat dieksekusi yang menghasilkan perubahan state dari
suatu sistem atau nilai balik. Aksi meliputi pemanggilan operasi lain,
pengiriman signal, pembuatan atau penghancuran object atau perhitungan
biasa seperti evaluasi dari suatu akspresi.
Sedangkan structural diagram digunakan untuk menggambarkan,
menunjukkan, mengembangkan dan mendokumentasikan aspek-aspek
statis suatu sistem. Structural diagram terdiri dari :
•
Class diagram dan Object diagram
Class diagram adalah diagram yang menunjukkan
kumpulan
class,
interface,
collaboration,
dan
hubungan
(relationship) di antara mereka. Class adalah suatu gambaran dari
sekumpulan object yang berbagi attibute, operation, dan relation.
Attribute
adalah
sebuah
sifat
dari
suatu
class
yang
menggamabarkan sekumpulan nilai yang mungkin dimiliki dari
instanisasi dari sifat itu. Suatu class dapat memiliki berapapun
56
jumlah attibute atau bahkan tidak sama sekali. Attibute mewakili
sebuah sifat dari sesuatu yang sedang dimodelkan yang dimiliki
oleh
seluruh
onjek
dari
suatu
class.
Operation
adalah
implementasi dari sebuah layanan yang dapat dimintakan dari
object manapun yang dinstanisasi dari class tertentu. Dengan kata
lain, operation adalah suatu abstraksi dari sesuatu yang dapat
dilakukan terhadap suatu object dan dimiliki oleh semua object
dari class object tersebut.
•
Component diagram
Component diagram menampilkan sekumpulan dari
komponen-komponen
dan
hubungan
diantara
komponen-
komponen tersebut. Component diagram digunakan untuk
mengilustrasikan tampilan implementasi statis dari sebuah sistem,
component adalah bagian fisik yang dapat digantikan dari suatu
sistem yang sesuai dengan dan menyediakan realisasi dari
serangkaian interface.
•
Deployment diagram
Deployment diagram adalah diagram yang menunjukkan
konfigurasi dari suatu node yang memproses pada saat run-time.
Deployment diagram menampilkan sekumpulan node-node dan
hubungan di antara node-node tersebut. Yang termasuk dengan
node antara lain server dan desktop. Deployement diagram
digunakan untuk mengilustrasikan arsitektur dari rencana static
deployment.
Download