5 Universitas Kristen Petra
2. TEORI PENUNJANG
2.1. WAP (Wireless Application Protocols)
WAP (Wireless Application Protocols) adalah protokol bagi perangkat-
perangkat nirkabel yang menyediakan layanan komunikasi data yang bagus bagi
pengguna, baik dalam bentuk yang berhubungan dengan telekomunikasi maupun
aplikasi-aplikasi berorientasi internet. Struktur WAP mengadopsi topologi layer-
layer yang ada pada Internet Protocol (model TCP/IP). Prinsip aplikasi ini adalah
untuk menghubungkan akses ke internet dari mobile phone atau handphone.
Berikut ini adalah arsitektur umum dari aplikasi WAP.
Gambar 2.1. Arsitektur umum aplikasi WAP
Sumber: Sekolah Tinggi Elektronika dan Komputer (STEKOM) – PAT, Semarang, Unang Achlison. Pemodelan Akses Basisdata Akademik Melalui WAP-GPRS. 2002. 21 Mei 2007, p.2. < http://www.elektro.undip.ac.id/transmisi/jun05/unangjun05.PDF>
Dari gambar di atas, sebuah WAP browser di-design untuk menyediakan
sebuah service dasar dari komputer yang berbasis pada web browser, tetapi
disederhanakan pengoperasiannya dalam batasan dari sebuah mobile phone.
Sebelum WAP browser mencapai server harus terdapat suatu Gateway (yang
disediakan oleh operator telepon seluler) yang bertugas untuk menghubungkan
Universitas Kristen Petra
6
keduanya. Yang sudah tentu handphone tersebut harus mendukung WAP yaitu
memiliki WAP minibrowser di dalamnya.
WAP sekarang merupakan protocol yang digunakan untuk mayoritas
seluruh situs mobile internet di dunia atau dikenal sebagai WAP sites. Aktivitas-
aktivitas sehari-hari yang dapat menggunakan aplikasi dari WAP sebagai interaktif
data antara lain:
• email by mobile phone
• tracking of stock market prices
• sports results
• news headlines
• music downloads
WAP ini diciptakan sebagai protokol untuk komunikasi data jaringan
wireless dengan latar belakang 3 pertimbangan, sebagai berikut :
• Kondisi pasar pengguna, yaitu karakter pasar yang berbeda dengan pelanggan
fixed-internet. Dalam internet bergerak pengguna tidak akan melakukan
surfing, dan penggunaannya akan lebih user-centric dan situation-centric di
mana informasi yang disediakan dapat lebih cepat dan tepat ke sasaran.
• Jaringan, yaitu karakter kecepatan data jaringan wireless yang rendah dan
delay tinggi. Jaringan wireless juga memiliki masalah dalam jangkauan, dan
untuk itu dibutuhkan infrastruktur dengan biaya tinggi untuk jangkauan hingga
daerah-daerah di pedalaman.
• Perangkat pendukung WAP, yaitu perangkat pendukung yang biasanya
berkarakter tampilan layar kecil, memori kapasitas kecil, dan kekuatan
prosesor yang rendah.
Seperti website,informasi WAP tersimpan dalam sebuah server. Tetapi
WAP tidak sehebat website karena WAP tidak bisa menampung bentuk-bentuk
informasi yang dapat dilakukan oleh website. Ini terjadi karena teknologi WAP
tidak memiliki kecepatan konektivitas seperti sistem kabel (fixed line). Sebagai
perbandingan WAP hanya terbatas pada angka 9600 bps, sedangkan kecepatan
fixed line mencapai 256 kbps bahkan bisa lebih.
Di server akan berisikan informasi yang menggunakan wireless markup
language (WML). Server belum dapat menerima aplikasi WAP secara langsung, ia
Universitas Kristen Petra
7
harus dikonfigurasi terlebih dahulu agar dapat menyimpan aplikasi WAP dan
mengirimkannya ke ponsel atau WAP emulator begitu ada permintaan dari kedua
alat tersebut.
2.1.1.Sejarah WAP
Sebelum dibangunnya protokol WAP, masing-masing dari perusahaan
komunikasi memiliki protokol yang mereka bangun sendiri-sendiri. Seperti
Unwired Planet dengan Handled Device Markup Language (HDML) sebagai
protokol untuk akses internet melalui paket data digital seluler. Lalu, Nokia
dengan protokol Tagged Text Markup Language (TTML) yang dirancang untuk
GSM. Ataupun, Ericsson dengan Intelligent Terminal Transfer Protocol (ITTP).
Ketiga protokol ini hanyalah sebagian dari berbagai macam protokol-
protokol yang beredar di pasaran. Adanya protokol-protokol yang berbeda-beda
ini tentu menyulitkan aplikasi nirkabel untuk berkembang lebih jauh. Karena itu,
disadari perlunya dibangun suatu protokol dengan platform yang dapat diterima
oleh semua pihak, mendukung akses internet dan kemampuan pengiriman pesan.
Maka pada pertengahan tahun 1997, empat perusahaan yaitu Nokia, Ericsson,
Motorola, dan “Phone.com” sepakat untuk membangun protokol baru untuk
perangkat mobile nirkabel, yaitu WAP. Pertemuan pertama untuk membahas
protokol tersebut dilakukan di Seattle pada bulan juni 1997.Semua pihak yang
hadir di pertemuan ini menyadari perlunya dikeluarkan rancangan untuk
spesifikasi protokol yang cepat. Disepakati pula bahwa anggota baru dapat
bergabung jika rancangan ini telah diluncurkan dan tersedia di pasar.
Tujuan utama dari pendefinisian protokol yang umum dan global ini
adalah supaya protokol ini nantinya independen terhadap media seluler yang ada
(misalnya GSM, D-AMPS, CDMA, dan PCS). Untuk mengatur pengembangan
WAP lebih lanjut dan bagaimana suatu aplikasi berjalan pada perangkat nirkabel,
maka dibentuklah sebuah konsorsium yaitu WAP Forum Ltd. Rancangan pertama
dari spesifikasi WAP 1.0 diluncurkan pada bulan April tahun 1998. Dengan
diluncurkannya rancangan pertama ini, sesuai dengan kesepakatan awal, maka
WAP Forum membuka kesempatan bagi anggota baru untuk bergabung. Pada Mei
tahun 1999 atau sebelas bulan setelah peluncuran spesifikasi WAP1.0. versi
Universitas Kristen Petra
8
komersial pertama dari WAP, yaitu WAP 1.1 telah diselesaikan. Dan dalam
perkembangnnya jumlah anggota konsorsium terus bertambah, sehingga sampai
saat ini telah memiliki anggota lebih dari 580 perusahaan.
2.1.2.WAP Protokol
Protokol WAP terdiri atas lima layer di samping bearer yang digunakan.
Dengan protokol ini, komunikasi antara client dan gateway dapat berlangsung.
Gambar 2.2. WAP Protokol
Sumber: Universitas Kristen Petra, Iwan Njoto Sandjaja. Introduction To Development Mobile Internet Application.21 Mei 2007, p26. <http://e-course.petra.ac.id/mod/resource/view.PHP?id=2437>
2.1.2.1.WAE (Wireless Aplication Environment)
WAE ini mengadopsi pemodelan WWW, sehingga semua content-nya
serupa dengan standar internet. Tetapi WAE lebih luas content-nya, karena
mendukung Mobile Network Service, seperti Call Control dan Messaging.
Universitas Kristen Petra
9
Gambar 2.3. WAE Model
Sumber: Universitas Kristen Petra, Iwan Njoto Sandjaja. Introduction To Development Mobile Internet Application.21 Mei 2007, p26. <http://e-course.petra.ac.id/mod/resource/view.PHP?id=2437>
2.1.2.2.WSP (Wireless Session Protocol)
Layer management entity menangani inisialisasi protokol, konfigurasi
dan error condition (seperti gagalnya hubungan karena mobile station berada di
luar layanan coverage area), yang tidak ditangani oleh protokol sendiri. WSP
didesain untuk fungsi transaction dan datagram services. Management
transaction, session atau application merupakan dukungan tambahan untuk
security context dan hubungan yang lebih aman. WSP merupakan protokol untuk
mengatur pertukaran content aplikasi antar client atau server. Secara garis besar,
WSP menyediakan fungsi untuk :
• Establish atau release session dari client ke server.
• Persetujuan penggunaan level protokol menggunakan capability negotiation
(Capability negotiation adalah kemampuan negosiasi untuk persetujuan
fungsionalitas session dan pemilihan protokol, sehingga memungkinkan
aplikasi pada server dapat didukung oleh client menggunakan konfigurasi dan
protokol tertentu).
• Pertukaran content antara client dan server.
• Suspend dan resume session.
• Menyediakan HTTP/1.1 fungsionality.
• Interupt transation in process.
• Push content dari server ke client dengan cara unsinkronous.
Universitas Kristen Petra
10
• Mendukung multiple, asyncronous transaction secara simultan.
2.1.2.3.WTP (Wireless Transaction protocol)
Transaction protocol adalah protokol untuk mengatur pertukaran data
(respose/request) dari suatu aplikasi, misalnya pada saat browsing. Dalam session
browsing, client mengirim request infomation ke server, dan server meresponnya.
Mekanisme response/request ini disebut sebagai trasaction, dan setiap transaction
mempunyai identifier sendiri. Tujuan protokol ini adalah memberikan sistem
penyampaian transaksi secara reliable/handal dengan kemampuan transmit
message yang mengalami loss dan mampu menghindari duplikasi message.
Fungsi-fungsi WTP adalah sebagai berikut :
• Transaction Handling
Prosedur-prosedur sehingga transaksi dapat berjalan antar WTP meliputi
Invoke Message, Verification, Hold on acknowledgement, Result Message,
Last acknowledgement.
• Re-transmisions, duplicate removal, acknowledgement
Penggunaan Re-transmision selama ACK agar terjamin reliabilitas dalam
pentransferan data dari suatu provider WTP ke WTP yang lain (jika terjadi
packet loss).
• Concatenation and separation
Concatenation adalah prosedur untuk mengirimkan multiple WTP Protocol
Data Unit (PDU) dalam satu Datagram Service Data Unit (SDU)pada bearer
network, dengan mapping terhadap WTP PDU ke SDU. Separation adalah
prosedur untuk mengekstrak satu SDU menjadi multiple PDU.
Keuntungan dari penggunaan WTP adalah :
• Memperbaiki reliability pada layanan datagram, WTP berada di atas dari
fungsi re-transmission dan acknowledgement. Hal ini sangat perlu jika
layanan datagram digunakan.
• Memperbaiki efisiensi pada layanan connection oriented. WTP tidak
mempunyai fase yang jelas untuk connection set-up atau teardown-
connection.
Universitas Kristen Petra
11
• WTP berorintasi pada message dan desain untuk jenis layanan berbasis
transaction, misalnya “browsing”.
2.1.2.4.WTLS (Wireless Transport Layer Security)
Security Layer protocol di WAP disebut Wireless Transport Layer
Security. WTLS beroperasi di atas layer transport, sebagai interface untuk
pengaturan (creating dan terminating) koneksi yang aman. Tujuan utama dari
WTLS adalah :
• Menyediakan privacy
Data yang ditransmisikan antar terminal dan aplikasi adalah private dan tidak
dapat dimengerti oleh pihak lain yang mungkin melakukan interception
terhadap aliran data.
• Data integrity
Data yang terkirim antar terminal dan aplikasi tidak mengalami perubahan dan
kerusakan.
• Autentifikasi antara dua aplikasi yang sedang berhubungan.
• Melakukan handshaking
Membuat jalur komunikasi dua arah secara private, sebelum melakukan
transfer data.
• Denial-of-service protection
Untuk melakukan deteksi dan rejeksi data yang tidak sukses verifikasinya,
untuk melindungi pengaksesan layer protokol yang lebih tinggi.
• Optimalisasi penggunaan kanal bearer dengan bandwidth rendah, dan setiap
aplikasi dapat dipilih menggunakan security sendiri.
• Compression
Untuk melakukan kompresi data dari layer atas sehingga sesuai untuk pen-
transmisian pada bearer yang memiliki bandwidth rendah.
2.1.2.5.WDP (Wireless Datagram Protocol)
WDP merupakan transport layer pada arsitektur WAP, beroperasi di atas
bearer service yang mendukung berbagai tipe network. WDP sebagai interface
Universitas Kristen Petra
12
terhadap layer protokol di atasnya, yaitu Security, Session, Aplication. Layanan
WDP meliputi, antara lain :
• Pengalamatan aplikasi dengan port number
• Optional SAR (Segmentation And Reassembly)
• Optional error detection
• Mampu memberikan layanan aplikasi yang beroperasi melalui bearer service
dan karakteristik yang berbeda
2.1.3.WAP Gateway
Komunkasi internet melalui WAP, dalam prosesnya menggunakan tahapan
yang dikenal dengan WAP gateway. Gateway merupakan entiti antara yang
menghubungkan antara dua elemen yang berbeda protokolnya atau sebagai jalur
keluar masuknya data. Tahapan ini berada di antara ponsel dan server. Fungsi WAP
gateway adalah untuk meneruskan permintaan informasi dari ponsel menuju
server melalui HTTP request dan dari server menuju ponsel lewat HTTP
response. WAP gateway diatur oleh wireless network operator sehingga kita tidak
perlu menciptakaanya sendiri.
WAP Gateway juga dapat berfungsi sebagai proxy. Fungsi WAP Gateway/
Proxy antara lain dapat dijabarkan sebagai berikut:
• Sebagai interface penghubung WAP protokol dengan protokol internet
• Sebagai caches untuk header protokol yang memperkuat efisiensi transfer data
• Caching content untuk file overload dari application server
• Domain Name Server (DNS) dari client yang akan memetakan URL ke IP
address tujuan
• Sebagai security gateway dimana dilakukan autentikasi client (pengguna)
sebagai subscriber suatu layanan WAP
• Sebagai billing support yang menjadi tempat informasi mengenai client yang
melakukan pembayaran melalui mobile-commerce.
2.2. GPRS (General Pocket Radio Service)
Dengan berkembangnya teknologi WAP memungkinkan bagi perangkat
wireless untuk mengakses internet dari lokasi manapun. Tetapi pada
Universitas Kristen Petra
13
kenyataannya, pengguna perangkat wireless ini mengalami kesulitan dalam
mengakses situs-situs WAP. Hal itu disebabkan karena kecepatan yang rendah
dalam melakukan koneksi ke internet, sehingga para pengguna menjadi enggan
untuk menggunakan perangkat wireless, karena dengan kecepatan yang rendah
maka makin besar pula pulsa atau biaya yang harus ditanggung oleh para
pengguna perangkat wireless. Perangkat wireless yang mempunyai fasilitas WAP
hanya dapat melakukan transfer data dengan kecepatan antara 9.6 sampai 22.8
Kbps. Sehingga diperlukan suatu teknologi yang dapat melakukan peningkatan
kecepatan transfer data untuk mengakses internet. Dan masalah ini dapat dijawab
dengan hadirnya teknologi GPRS, dimana teknologi GPRS ini dapat
memungkinkan pengguna perangkat wireless untuk melakukan transfer data
dengan kecepatan sampai 115Kbps.
2.2.1.Pengertian GPRS
GPRS adalah layanan yang didesain untuk jaringan wireless (GSM, DCS,
PCS). GPRS menggunakan teknik pemaketan data untuk mengirim data dari
internet atau jaringan X.25 ke terminal GPRS. Data tersebut dikirimkan melalui
jaringan radio GSM. GPRS distandarisasikan dalam ETSI (European
Telecomunications Standars Institute).
GPRS ini dapat memberikan kecepatan lebih dari 115 Kbps, tetapi itu
juga tergantung dari jaringan yang ada, skema pengkodingan channel, dan
kemampuan terminal. Peningkatan kecepatan ini dapat dicapai karena GPRS
menggunakan 1 sampai 8 timeslot dari channel radio yang digunakan secara
bersamaan oleh pengguna. Di dalam GPRS menggunakan 4 skema pengkodingan,
yaitu : CS1, CS2, CS3, dan CS4. Sistem pengkodingan ini bergantung pada
kondisi jaringan radio. Pada awalnya hanya CS1 dan CS2 yang dapat didukung
(yang memberikan kecepatan kira-kira 9 dan 13 Kbps dalam tiap timeslot). CS1
dan CS2 dapat mendeteksi error yang terjadi dengan bagus tetapi mempunyai
tingkat koreksi yang rendah. Sedangkan pada CS3 dan CS4 mempunyai tingkat
koreksi yang tinggi, tetapi kemampuan dalam mendeteksi error yang terjadi
kurang bahkan tidak mampu sama sekali.
Universitas Kristen Petra
14
2.2.2.Sistem Kerja Jaringan GPRS
Pada saat fitur GPRS ini dijalankan maka secara otomatis perangkat
tersebut mencari channel GPRS. Jika channel yang tepat sudah ditemukan,
perangkat akan langsung melakukan koneksi ke jaringan. SGSN menerima adanya
koneksi baru dari perangkat tersebut. Kemudian SGSN mengirimkan permintaan
ke HLR (mendapatkan data profil dari pelangan GPRS tersebut, dan
memeriksanya). Jika benar maka akan dibangun koneksi ke jaringan GPRS.
SGSN menggunakan data profil APN (Access Point Name) untuk mengenali
jaringan dan operator. APN digunakan untuk menentukan GGSN mana yang akan
menangani pelanggan tersebut. Gateway yang ditentukan melakukan pengecekan
pada pengguna dengan metode RADIUS (Remote Authetication Dial-In User
Service) dan mengalokasikan pengguna dengan alamat IP yang dinamik sebelum
mengatur koneksi dengan jaringan luar, termasuk juga pengaturan QoS dan VPN
(Virtual Private Network).
Pada jaringan GPRS, data yang dikirimkan dipecah menjadi paket-paket
kecil, kemudian paket-paket ini dikirimkan , ketika paket-paket tersebut datang di
tempat penerima, maka disusun kembali menjadi sebuah data utuh.
Gambar 2.4. Jaringan GPRS Dengan Internet
Sumber: Sekolah Tinggi Elektronika dan Komputer (STEKOM) – PAT, Semarang, Unang Achlison. Pemodelan Akses Basisdata Akademik Melalui WAP-GPRS. 2002. 21 Mei 2007, p.1. < http://www.elektro.undip.ac.id/transmisi/jun05/unangjun05.PDF>
2.3. WML (Wireless Markup Language)
WML (Wireless Markup Language) adalah bahasa komputasi yang
digunakan oleh WAP untuk mengubah informasi berupa teks dari dari halaman
situs dan menampilkannya di layar ponsel. WML merupakan subset dari XML
(Extensible Markup Language) dan dikhususkan untuk penggunaan content dan
Universitas Kristen Petra
15
perangkat user interface yang bekerja pada pita sempit, layar display yang kecil
dan keterbatasan fasilitas input dari user, keterbatasan memory dan penghitungan
seperti ponsel dan pager. WML mirip dengan HTML hanya media tampilannya saja
yang berbeda. Jika HTML mempunyai Java Script untuk membuat halaman
web menjadi dinamis dan menarik, pada WML juga terdapat WML Script. Java
Script dapat dimasukkan ke dalam file HTML, pada WML Script tidak bisa
dijadikan satu file dengan file WML. WML Script harus berdiri sendiri sebagai satu
file script khusus yang berekstensi .WMLs. Pada WML, gambar yang dapat
ditampilkan pada layar ponsel adalah gambar yang telah dikonversi ke dalam
format .wbmp 1 bit. Gambar tersebut terdiri dari warna hitam dan warna latar
belakang saja.
Fungsi dari WML, meliputi :
• Text Presentation atau Layout
WML mendukung teks dan image, termasuk di dalamnya beberapa format dan
perintah untuk layout, misalnya huruf tebal atau huruf miring suatu teks.
• Mengorganisasi Deck atau Card
Semua informasi si WML diatur dalam kumpulan card atau deck. Card untuk
satu atau lebih layanan interaktif dengan user.
• Inter-card Navigation and Linking
WML berguna juga untuk mengatur navigasi antara card dan deck. Hal ini
meliputi anchor link, maupun event handling.
• String Parameter dan State Management
Misalnya, penggunaan variabel dalam string dan secara run-time ditampilkan
pada output, sehingga pengguna sumber daya jaringan lebih efisien.
Struktur dari dokumen WML terdiri atas beberapa bagian utama, yaitu :
• Yang pertama adalah header, dalam header ada dua hal yang harus
dideklarasikan, yaitu deklarasi versi XML yang akan anda gunakan dan
deklarasi Document Type Definition (DTD). Deklarasi DTD ini bertujuan agar
tipe data dalam dokumen yang dibuat dapat dikenali dengan benar. Deklarasi
header WML adalah :
Universitas Kristen Petra
16
<?xml version = “1.0”?> <!DOCTYPE WML PUBLIC “-//WAPFORUM//DTD WML 1.1//EN” “http://www.WAPforum.org/DTD/WML_1.1.xml”>
Gambar 2.5. Kode Program Header WML
• Template berfungsi untuk memberikan tambahan pilihan pada menu options
atau tambahan tombol di beberapa browser.
• Card berfungsi untuk mendefinisikan halaman-halaman yang berada dalam
satu file WML.
Gambar 2.6. Struktur Dari WML
• Bahasa WML adalah case sensitive
Penulisan template dan card berada di dalam tag <WML>….</WML>. Penulisan
tag dimaksudkan agar dokumen WML dapat ditampilkan pada browser sesuai
dengan keinginan. Semua tag yang terdapat dalam WML case sensitive (<WML>
tidak sama dengan <WML>), dan harus benar-benar ditutup. Ada beberapa
penulisan yang menggunakan fungsi tag dalam WML :
Ø Tag awal dinyatakan dalam bentuk <nama tag> dan tag akhir dinyatakan
dalam bentuk </nama tag>.
Sintaks : <nama_tag>……</nama_tag>
Ø Pada tag WML dapat juga ditulis dengan tag tunggal.
Sintaks : <nama_tag/>
Universitas Kristen Petra
17
Ø Sedangkan komentar pada WML ditulis dengan sintaks sebagai berikut :
Sintaks : <!--komentar-->
Tabel 2.1. Tag Dasar WML
Tag Fungsi
<a></a> Membuat link <b></b> Menebalkan teks <big></big> Membesarkan teks <br/> Ganti baris <card></card> Membuat card <em></em> Memberikan penekanan terhadap teks <do></do> Memberikan input (accept) kepada tag di
dalam bloknya sehingga proses dapat dilanjutkan
<go/> atau <go></go> Menetapkan tujuan jika input dieksekusi <i></i> Membuat teks miring <img/> Menampilkan gambar <input/> Membuat textbox <option></option> Membuat pilihan di dalam selectbox <p></p> Membuat paragraph <postfield/> Mengirim variable ke server <prev/> Kembali ke halaman sebelumnya <refresh/> Mengulang pemanggilan halaman <select></select> Membuat selectbox <small></small> Mengecilkan teks <strong></strong> Menyatakan teks dengan penekanan yang kuat <table></table> Membuat tabel <td></td> Membuat cell pada tabel <template></template> Membuat template <tr></tr> Membuat baris pada tabel <u></u> Memberi garis bawah pada teks <WML></WML> Membuat deck WML
Sedangkan atribut pada WML berfungsi untuk menambahkan nilai tertentu
yang dapat mengubah sifat sebuah tag. Jadi atribut ini digunakan untuk mengatur
dokumen WML agar lebih spesifik. Penulisan atribut ini biasanya diletakkan pada
tag awal dan berisi nilai-nilai tertentu. Misalnya saja pada tag <p>, yang
digunakan unutk membuat paragraf baru, terdapat atribut align yang digunakan
untuk mengatur penataan teks. Nilai dari atribut tersebut dapat diisi “left”,
“center”, “right”.
Universitas Kristen Petra
18
2.4 PHP Triad
PHP Triad adalah software installer PHP secara instant yang berjalan
pada lingkungan Windows, setelah meng-install PHP Triad tidak saja telah meng-
install PHP, akan tetapi juga sekaligus telah meng-install Apache Web Server dan
Database MySQL. PHP Triad ini diciptakan oleh seseorang Pria berkebangsaan
Czech (Czech Republic Slovakia) bernama J Wynia. Beliau adalah seorang pria
yang memiliki basic yang matang tentang pemrograman, khususnya pemrograman
pada sisi server. J Wynia juga aktif di beberapa forum PHP terkemuka seperti
PHPBuilder (www.PHPbuilder.com) dan di forum Zend (www.zend.com). Hal ini
yang memberikan ide untuk beliau untuk menciptakan sebuah installer yang bisa
berjalan pada lingkungan Microsoft Windows. Pada pembuatan tugas akhir ini,
penulis menggunakan PHP Triad versi 2.11. Di dalam PHP Triad versi 2.11 ini
terdapat beberapa kumpulan software, yaitu :
• PHP - 4.0.5
• MySQL - 3.23.32 (database server)
• Apache - 1.3.14 (web server)
• PHPMyAdmin - 2.1.0 (untuk administrasi database)
• Perl - nsPerl 5.005_03
2.4.1.Apache Web Server
Web server adalah software yang memberikan layanan web. Dimana web
server menggunakan protocol yang disebut dengan HTTP (HyperText Transfer
Protocol) untuk melayani koneksi transfer data dalam jaringan internet. Kegunaan
web server ini menjadi sangat penting, karena dengan adanya web server maka
informasi yang ada di internet dapat ditampilkan dengan lebih efektif, dinamis dan
menarik. Web server juga dapat dikombinasikan dengan wireless internet, yaitu
dengan menggabungkan web server dengan sebuah WAP gateway. Dengan begitu,
maka web server ini dapat menjadi WAP server, yang siap melayani akses wireless
internet pada ponsel yang telah memiliki fitur WAP atau GPRS.
Pada pembuatan tugas akhir ini, penulis dalam pembuatan web server
menggunakan web server Apache versi 1.3.14 yang terdapat di dalam PHP Triad
versi 2.11. Apache adalah nama web server yang dibuat berbasiskan kode sumber
Universitas Kristen Petra
19
dan ide-ide yang ada pada web server leluhurnya, yaitu web server NCSA. Sesuai
namanya, web server NCSA dibuat oleh National Center for Supercomputing
Applications. Tidak seperti proyek leluhurnya yang dibiayai oleh pemerintah
Amerika, web server Apache dikembangkan oleh sekelompok programmer yang
bekerja tanpa dibayar oleh siapapun. Mereka mengerjakan proyek ini dengan
berbagai macam alasan, akan tetapi alasan yang paling mendasar adalah mereka
senang jika perangkat lunak mereka digunakan oleh banyak orang. Keunggulan
dari web server Apache :
• Freeware (software gratis).
• Mudah di-install.
• Mampu beroperasi pada berbagai platform sistem operasi .
• Mudah mengkonfigurasinya.
• Apache web server mudah dalam menambahkan periferal lainnya ke dalam
platform web server-nya, misalnya : untuk menambahkan modul, cukup hanya
men-set file konfigurasinya agar mengikutsertakan modul itu ke dalam
kumpulan modul lain yang sudah dioperasikan.
• Mampu di kompilasi sesuai dengan spesifikasi HTTP yang sekarang.
• Menyediakan feature untuk multihomed dan virtual server.
• Dapat men-set respon error yang akan dikirim web server dengan
menggunakan file atau skrip.
• Secara otomatis menjalankan file ”index.html”, halaman utamanya, untuk
ditampilkan secara otomatis pada client-nya.
• Lebih aman karena memiliki level-level pengamanan.
• Mendukung transaksi yang aman (secure transaction) menggunakan SSL
(Secure Socket Layer).
• Apache mempunyai komponen dasar terbanyak di antara web server-web
server lain, yang berarti bahwa web server Apache termasuk salah satu dari
web server yang lengkap.
2.4.2.PHP
PHP adalah sebuah bahasa pemrograman yang berguna untuk membuat
sebuah web. Tujuan utama penggunaan bahasa ini adalah untuk memungkinkan
Universitas Kristen Petra
20
perancang web menulis halaman web dinamik dengan cepat. Dalam hal ini,
aplikasi pada umumnya akan memberikan hasil pada web browser, tetapi
prosesnya secara keseluruhan dijalankan web server.
Dalam bukunya, Valade mengatakan, “Sekitar 13 juta domain yang
menggunakan bahasa pemrograman ini” (16). Perintah-perintah pada bahasa
pemrograman PHP ini dapat dikatakan mirip dengan bahasa pemrograman C.
Sehingga penggunaan PHP, sangat umum digunakan, karena setiap orang yang
menguasai bahasa pemrograman C, pasti akan dengan mudah dapat menguasai
bahasa pemrograman PHP. Selain itu, PHP banyak digunakan juga dikarenakan
hubungan atau koneksinya dengan database sangat kuat. Maksudnya, PHP sangat
mudah untuk dikoneksikan dengan database.
Beberapa keuntungan dari PHP antara lain:
• Cepat, karena ditulis di atas HTML code
• Tidak mahal. PHP dapat didapatkan dengan cuma-cuma
• Mudah untuk digunakan. PHP didesain untuk dimasukkan ke dalam file
HTML dengan mudah
• Dapat dijalankan pada berbagai OS (Operating System), seperti Windows,
Linux, Mac OS, dan lain-lain.
• Technical support dapat dicari secara luas, dan ada di mana-mana.
• Sekuritinya terjamin
• Didesain untuk mudah dikoneksikan dengan database
• Dapat dikustomisasi, artinya software PHP sendiri dapat dimodifikasi, dalam
artian dapat ditambahi atau dikurangi fitur-fiturnya sesuai dengan kebutuhan.
2.4.2.1.Sejarah PHP
PHP ini pertama kali diperkenalkan oleh Rasmus Lerdorf, seorang
programmer C. Ini bermula dari keinginan sederhana Rasmus Lerdorf untuk
mempunyai alat bantu (tools) dalam memonitor pengunjung yang melihat situs
web pribadinya. Inilah sebabnya pada awal pengembangannya, PHP merupakan
singkatan dari Personal Home Page tools, sebelum akhirnya dipaksakan menjadi
singkatan rekursif dari PHP: Hypertext Preprocessor.
Universitas Kristen Petra
21
Pertengahan tahun 1995 dirilis PHP/FI (FI adalah singkatan dari Form
Interpreter) yang memiliki kemampuan dasar membangun aplikasi web,
memproses form, dan mendukung database mSQL. Kemudian pada tahun 1996,
ia mengeluarkan PHP versi 2.0 yang kemampuannya telah dapat mengakses
database dan dapat terintegrasi dengan HTML. Pada tahun 1998 tepatnya pada
tanggal 6 Juni 1998 keluarlah PHP versi 3.0 yang dikeluarkan oleh Rasmus sendiri
bersama kelompok pengembang software-nya, yang memiliki dukungan lebih luas
lagi terhadap database yang ada termasuk MySQL dan Oracle.
Versi terbaru, yaitu PHP 4.0 keluar pada tanggal 22 Mei 2000 merupakan
versi yang lebih lengkap lagi dibandingkan dengan versi sebelumnya. Perubahan
yang paling mendasar pada PHP 4.0 adalah terintegrasinya Zend Engine yang
dibuat oleh Zend Suraski dan Andi Gutmans yang merupakan penyempurnaan
dari PHP scripting engine. Yang lainnya adalah build in HTTP session, tidak lagi
menggunakan library tambahan seperti pada PHP.
2.4.2.2.Struktur Program PHP
Kode- kode program PHP menyatu dengan tag – tag HTML di dalam satu
file. Untuk menunjukkan kode program PHP, dapat digunakan beberapa tag
seperti berikut ini:
• <script language=”PHP”> kode program PHP...</script>
• <?PHP kode program PHP... ?> atau <? Kode program PHP... ?>
File yang berisi tag HTML dan kode program PHP disimpan dengan
menggunakan ekstensi .PHP. Dengan demikian server akan mengetahui pada file
tersebut terdapat kode program PHP. Server akan menerjemahkan kode tersebut
dan memberikan hasil proses dalam bentuk tag HTML kepada browser yang
mengakses file tersebut.
Kode program PHP terdiri atas perintah – perintah untuk membuat
program PHP. Penulisan perintah – perintah PHP tersebut mempunyai aturan
dasar, sebagai berikut:
a. Setiap perintah PHP diakhiri dengan menggunakan tanda titik koma (;).
Universitas Kristen Petra
22
b. Penggunaan spasi tidak mempengaruhi penulisan perintah PHP. Hal ini
memudahkan pengaturan penulisan program sehingga program dapat lebih
jauh mudah dibaca.
c. Pada penulisan komentar program, dapat digunakan tiga macam style yaitu:
• C style, komentar diawali dengan tag “/*” dan diakhiri dengan tag “*/”.
Style ini dapat digunakan untuk komentar program yang lebih dari satu
baris.
• C++ style, komentar ini diawali dengan tanda “//” dan hanya digunakan
untuk satu baris komentar, untuk baris berikutnya harus diawali dengan
tanda tersebut lagi.
• Unix shell-style, komentar ini diawali dengan tanda “#” dan hanya
digunakan untuk satu baris komentar, untuk baris berikutnya harus diawali
dengan tanda tersebut lagi.
• Penulisan variabel pada PHP membedakan huruf kecil dan huruf besar
(case sensitive), sedangkan penulisan fungsi pada PHP tidak membedakan
huruf kecil dan huruf besar.
2.4.2.3.Tipe Data
OHO mengenal delapan tipe data, yaitu Boolean, Integer, Floating Point,
Strings, Arrays, Objects, Resource, dan Null. PHP akan menentukan tipe data dari
sebuah variabel secara otomatis, bergantung pada operasi yang sedang dilakukan
menggunakan variabel tersebut.
a. Boolean
Tipe data yang menyatakan nilai kebenaran, terdiri dari TRUE atau FALSE.
b. Integer
Tipe data yang menyatakan semua bilangan bulat antara – 2147483648
sampai +2147483647 pada platform 32-bit. PHP akan secara otomatis
mengkonversi data integer menjadi floating point jika berada di luar range.
Integer dapat dinyatakan dalam bentuk oktal, desimal, atau heksadesimal.
Universitas Kristen Petra
23
c. Floating Point
Tipe data yang menyatakan semua bilangan pecahan atau desimal antara
1,7x10-308 sampai dengan 1,7x10308. Floating point dapat dinyatakan dalam
bentuk desimal dan pangkat.
d. String
Tipe data yang menyatakan semua karakter. Pada PHP karakter sama dengan
byte (ada 256 perbedaan karakter yang memungkinkan). String dinyatakan
dengan menggunakan tanda petik tunggal atau tanda petik ganda yang
mengapitnya. Jika menggunakan tanda petik tunggal, maka string tidak dapat
dimasukkan ke dalam variabel.
e. Array
Tipe data yang dapat mengandung satu atau lebih data dan dapat disusun
berdasarkan numerik maupun string (associative array). Data di dalam sebuah
array dapat terdiri dari tipe data lain bahkan dapat juga bertipe array (multiple
array). Jadi pada PHP, elemen dari array dapat terdiri atas data dengan tipe-
tipe yang berbeda.
f. Object
Tipe data yang dapat berupa sebuah bilangan, variabel, atau bahkan sebuah
fungsi. Dengan adanya object, maka akan lebih membantu para programmer
yang terbiasa dengan OOP (Object Oriented Programming). Karena fasilitas
OOP pada PHP masih sedikit.
g. Resource
Tipe data yang menyatakan variabel khusus. Tipe data ini dibuat dan
digunakan oleh fungsi khusus.
h. Null
Tipe data yang menyatakan tidak mempunyai nilai dan bukan 0.
2.4.3.Database MySQL
MySQL (My Structure Query Language) atau dibaca My-Ess-Que-Ell
merupakan Relational Database Management System (RDBMS). DBMS
(Database Management System) merupakan salah satu sistem dalam mengakses
database yang menggunakan bahasa SQL. MySQL merupakan database server
Universitas Kristen Petra
24
yang dikembangkan oleh sebuah perusahaan MySQL AB. Perusahaan yang
berlokasi di Swedia ini memiliki hak resmi untuk mengembangkan dan mengelola
sistem, memberikan dukungan penjualan dan pelayanan, serta mempekerjakan
orang-orang yang memberikan kontribusi pada MySQL. MySQL didistribusikan
secara open source (artinya memungkinkan untuk semua orang untuk
menggunakan dan memodifikasi software.) dan gratis mulai tahun 1996,
walaupun sejarah pengembangannya mulai tahun 1979. Meskipun didistribusikan
secara gratis, MySQL juga mempunyai versi komersialnya.
MySQL memberikan hasil yang optimal dari sisi kecepatan dan reliabitas
manajemen data. Sifatnya yang open-source menyebabkan MySQL berkembang
secara pesat dan digunakan begitu banyak pengguna yang tidak ingin membuang
dana begitu besar untuk sebuah sistem basis data seperti jika menggunakan sistem
basis data komersial. Untuk penggunaan pada jumlah data skala medium ke
bawah, sangat cocok sekali menggunakan MySQL, apalagi ditambah ketersediaan
MySQL pada berbagai platform. Produk open source lain dalam beberapa hal lebih
unggul, misalnya PostgreSQL yang mampu menjamin integritas data dan dapat
digunakan untuk jumlah data skala besar, namun keterbatasan platform
pendukungnya sangat berpengaruh terhadap popularitasnya. Maka berikut ini
adalah beberapa keunggulan dari MySQL :
• Cepat. Sejak awal, MySQL dikembangkan dengan konsep database yang
berkecepatan tinggi dalam penyajian data.
• Tidak mahal. Walaupun mempunyai versi komersial, namun sesungguhnya
MySQL dapat di-download dengan gratis.
• Gampang digunakan. Penggunaan database MySQL dapat digunakan melalui
perintah SQL yang sederhana. Perintah SQL adalah standar bahasa untuk
RDBMS.
• Berjalan pada berbagai sistem operasi. MySQL berjalan dengan baik di
banyak sistem operasi, seperti Windows, Linux, Mac OS, Unix (Solaris, AIX,
dan DEC Unix), FreeBSD, OS/2, Irix dan lainnya.
• Dukungan penggunaan banyak tersedia. Ada banyak grup diskusi tentang
MySQL yang ditawarkan situs MySQL, atau dapat juga bertanya lewat MySQL
AB dengan sedikit biaya.
Universitas Kristen Petra
25
Dalam pengaplikasiannya database MySQL tidak berjalan dengan
sendirinya, dibutuhkan bahasa pemrograman-pemrograman yang lain. Hal
tersebut dapat dilihat pada gambar 2.7.
Gambar 2.7. Arsitektur Aplikasi Web Dengan Database
Dari gambar tersebut terlihat adanya hubungan antara Web server, Bahasa
Pemrograman dan database. Secara teknis database-lah yang menyimpan hampir
semua data dan data tersebut diolah oleh bahasa pemrograman yang kemudian
ditampilkan ke internet dengan menggunakan web server, anda dapat melihat
data-data tersebut dengan mengunjugi URL dengan menggunakan browser seperti
Konqueor, opera atau IE.
2.4.3.1.Perintah MySQL
Perintah MySQL secara umum, digolongkan menjadi tiga bagian yaitu:
a. DDL (Data Definition Language)
DDL digunakan untuk menambah, mengubah, dan menghapus tabel pada
MySQL. Perintah-perintah yang digolongkan dalam DDL adalah:
1. Create adalah perintah yang digunakan untuk membuat tabel.
Sintaks: Create table nama_tabel (nama_field tipe_data, …);
2. Alter adalah perintah yang digunakan untuk mengubah struktur tabel,
antara lain:
Universitas Kristen Petra
26
• Perubahan nama field
Sintaks: Alter table nama_tabel change nama_field_lama
nama_field_baru tipe_data;
• Perubahan tipe data
Sintaks: Alter table nama_tabel modify nama_field
tipe_data_baru;
• Penambahan field
Sintaks: Alter table nama_tabel add nama_field tipe_data;
3. Drop adalah perintah yang digunakan untuk menghapus tabel.
Sintaks: Drop table nama_tabel;
b. DML (Data Manipulation Language)
DML digunakan untuk menampilkan, mengubah, menambah, dan menghapus
baris dalam tabel. Yang dapat termasuk obyek adalah tabel, database.
Perintah-perintah yang digolongkan dalam DML adalah:
1. Insert adalah perintah yang digunakan memasukkan data ke dalam tabel,
ada dua sintaks yang dapat digunakan:
Sintaks: Insert into nama_tabel values (isi_field_1, …,
isi_field_n); atau Insert into nama_tabel (nama_field_1, …,
nama_field_n) values (isi_field_1, …, isi_field_n);
2. Update adalah perintah yang digunakan untuk mengubah data.
Sintaks: Update nama_tabel set nama_field_1 = isi_baru_1), …, nama_field_n = isi_baru_n where kriteria;
3. Select adalah perintah yang digunakan untuk menampilkan data.
Sintaks: Select nama_field_1, …, nama_field_n from nama_tabel where kriteria order by nama_field ascending |
descending;
4. Delete
Sintaks: Delete from nama_tabel where kriteria;
c. DCL (Data Control Language)
DCL digunakan untuk mengatur keamanan pada database dan tabel. Perintah-
perintah yang digolongkan dalam DCL adalah:
Universitas Kristen Petra
27
1. Grant adalah perintah yang digunakan untuk mengijinkan pengguna
untuk mengakses tabel dalam database tertentu.
2. Revoke adalah perintah yang digunakan untuk mencabut kembali ijin
yang diberikan oleh perintah grant.
2.4.4.Menghubungkan PHP Dengan MySQL
Untuk menghubungkan PHP dengan MySQL, perlu diketikkan kode
program seperti ini:
$connection=MySQL_connect("host","user","password")or die("couldnt");
$db=MySQL_select_db("database",$connection);
Kemudian, untuk mengambil data dari MySQL untuk digunakan dalam PHP, dapat
digunakan perintah: $query="select * from field"; $result=MySQL_query($query)
$query digunakan untuk memasukkan query yang akan ditulis pada console
MySQL, jika pengguna menggunakan MySQL. Contoh di atas adalah “select *
from field”. Setelah itu, ketikkan perintah “$result=MySQL_query($query)”.
Artinya, jalankan query dari variabel $query, dan hasilnya akan disimpan pada
variabel $result.
2.5. Visual Basic .NET
Visual Basic .NET (Dot NET) adalah salah satu pilar bahasa
pemrograman yang mendukung platform .NET yang merupakan bagian dari
teknologi .NET Framework. DOT NET Framework ini juga dapat
dikembangkan untuk aplikasi mobile dan embedded device yang disebut dengan
Compact .NET Framework. Visual Basic .NET bersama-sama dengan
Visual C++ .NET, Visual C# .NET, Visual J++ .NET, dan Visual J#
.NET merupakan bagian dari Visual Studio .NET sebagai bagian yang
menggunakan IDE (Integrated Development Environment).
Visual Basic .NET menyediakan fasilitas untuk membangun
beberapa tipe project, antara lain :
• Aplikasi Windows
• Class Library
Universitas Kristen Petra
28
• Windows Control Library
• Aplikasi Web ASP.NET
• Web Service dengan ASP.NET
• Aplikasi konsol
• Windows Service
• Aplikasi untuk Smart Device seperti Pocket PC
2.5.1.DOT NET Framework
DOT NET Framework adalah sebuah platform untuk membangun,
menjalankan dan meningkatkan generasi lanjut dari aplikasi terdistribusi.
Framework ini didesain untuk memenuhi tujuan-tujuan sebagai berikut :
• Menyediakan lingkungan pemrograman berorientasi object yang konsisten,
meskipun kode object disimpan dan dijalankan secara lokal, dijalankan secara
lokal tetapi terdistribusi di internet, atau secara remote.
• Menyediakan lingkungan yang menjalankan kode dengan meminimalkan
konflik saat deployment (penyebaran) dan versioning (pem-versi-an).
• Menyediakan lingkungan yang menjalankan kode dengan memberikan
jaminan keamanan saat kode dijalankan, termasuk kode yang dibuat oleh
pihak ketiga.
• Menyediakan lingkungan yang menjalankan kode dengan menghilangkan
masalah performa atau kecepatan dari lingkungan scripted (berupa script) dan
interpreted (dapat diintepretasikan).
• Membangun komunikasi standar industri yang memastikan kode berbasis
Framework .NET sehingga dapat diintegrasikan dengan kode lain.
Framework .NET memiliki dua komponen utama, yaitu :
Ø Common Language Runtime (CLR)
Ø DOT NET Framework Class Library
2.5.1.1.Common Language Runtime (CLR)
Common Language Runtime merupakan fondasi dari .NET Framework.
CLR atau yang biasa sering disebut Runtime saja, bertindak sebagai komponen
yang menangani kode pada saat dijalankan, menyediakan layanan seperti
Universitas Kristen Petra
29
manajemen memori, dan remoting, juga memastikan pendefinisian data secara
benar dan memastikan keakuratan kode program sehingga tercipta keamanan dan
kestabilan suatu program. CLR menyadiakan fungsi-fungsi, diantaranya sebagai
berikut :
• Me-load dan mengeksekusi kode program.
• Mengisolasi aplikasi
• Manajemen memori
• Security
• Exception Handling
• Interoperasi
2.5.1.2. DOT NET Framework Class Library
DOT NET Framework Class Library adalah suatu koleksi dari tipe data
yang dapat digunakan ulang yang terintegrasi dengan Common Language
Runtime. Class library ini berorientasi object, di mana komponen ini
menyediakan tipe data yang managed code-nya dapat menurunkan
fungsionalitasnya. Sehingga selain membuat tipe data dari .NET Framework ini
mudah digunakan, tetapi juga mudah untuk mempelajari fasilitas-fasilitas dari
.NET Framework. Fasilitas-fasilitas tipe data dari .NET Framework ini dapat
menyelesaikan bekas pemrograman umum, termasuk manajemen string, koleksi
data, konektivitas database, dan akses file.
2.6. Koneksi MySQL dan VB.NET Dengan Connector .NET
Connector.NET Provider merupakan komponen tambahan pada .NET
Framework yang memungkinkan untuk mengakses database MySQL melalui
protocol native, tanpa menggunakan OLE DB. Secara umum, provider ini
dikembangkan dengan berbasis pada teknologi ActiveX Data Object (ADO) untuk
.NET Framework atau yang lebih dikenal dengan ADO.NET. Kelebihan
Connector.NET Provider adalah memiliki kecepatan yang lebih baik jika
dibandingkan dengan ODBC. Selain itu, dapat juga memanfaatkan virtual
machine untuk mendukung sekuritas dan mengelola koleksi sampah (garbage
collection).
Universitas Kristen Petra
30
2.6.1.Sejarah Connector .NET
Pada bulan Januari 2004, ByteFX, Inc mengembangkan data provider
MySQL untuk lingkungan .NET. Data provider yang dikenal dengan ByteFX. Data
ini ditulis menggunakan bahasa C#, dan didistribusikan di bawah lisensi LGPL
(Lesser General Public License). ByteFX dibuat dengan mengimplementasikan
interface managed provider ADO.NET, sehingga mirip provider OledbClient
dan SqlClient yang sudah built-in di dalam .NET Framework.
Dua bulan setelah meluncurkan versi 0.75, ByteFX merilis versi 0.76,
versi ini juga masih bisa diperoleh dengan mengunjungi alamat
http://www.bytefx.com/. Setelah satu bulan meluncurkan versi 0.76, MySQL
AB menghubungi ByteFX untuk mengembangkan lebih lanjut data provider
miliknya. Setelah masing-masing pihak sepakat, MySQL AB merilis 1.0.0 yang
berasal dari kode asli ByteFX dan diberi nama Connector.NET.
Setelah bernaung di bawah bendera MySQL AB, Connector.NET
dilepas dengan lisensi GPL (General Public License). Hal ini juga berarti bahwa
lisensi data provider ini menjadi longgar dibandingkan LGPL. Tidak hanya itu
saja, Connector/NET juga merupakan salah satu provider .NET terbaik dan kaya
akan fitur.
2.6.2. MySQL.Data.MySQLClient
Dalam rangka mendukung operasi-operasi database, data provider
Connector .NET menyediakan dua buah namespace utama, yaitu namespace
MySQL.Data.MySQLClient dan MySQL.Data.Types. Di dalam pengolahan
database, kita akan sering menggunakan namespace
MySQL.Data.MySQLClient.
2.6.3.Class MySQLConnection
Class MySQLConnection merepresentasikan koneksi ke database
MySQL Server. Object yang dihasilkan dari instantiasi class ini menggambarkan
session ke sumber data, yaitu database MySQL. Pada saat menciptakan object
MySQLConnection, semua property akan di-set ke nilai awal.
Universitas Kristen Petra
31
2.6.4.Class MySQLCommand
Class MySQLCommand merepresentasikan pernyataan SQL yang akan
dieksekusi. Class ini cukup sederhana penggunaannya, akan tetapi sudah mampu
melakukan berbagai operasi database, seperti penambahan, pengubahan, serta
penghapusan record.
2.6.5.Class MySQLDataAdapter
Class MySQLDataAdapter merepresentasikan kumpulan perintah data
dan koneksi database yang digunakan untuk mengisi suatu dataset dan
memodifikasi database MySQL. Instantiasi class MySQLDataAdapter
memungkinkan untuk melakukan pengolahan data dengan memanfaatkan
komponen-komponen data milik ADO.NET.
Pada prinsipnya, MySQLDataAdapter bertindak sebagai jembatan
antara object DataSet dengan MySQL untuk mendapatkan kembali serta
menyimpan data. Agar dapat meningkatkan performasi ketika melakukan koneksi
dan pengolahan database, umumnya object MySQLDataAdapter akan digunakan
bersama-sama dengan objek MySQLConnection dan MySQLCommand.
2.6.6.Class MySQLCommandBuilder
Secara otomatis objek MySQLCommandBuilder mampu menghasilkan
perintah single-table untuk menyesuaikan perubahan yang dibuat ke suatu
DataSet.
2.6.7.Class MySQLDataReader
Class MySQLDataReader menyediakan kemampuan untuk melakukan
pembacaan dari database MySQL. Pembacaan yang dimaksud tidak hanya terbatas
pada data di dalam tabel, akan tetapi juga meliputi skema tabel maupun database.
Cara menciptakan objek MySQLDataReader adalah dengan memanggil
metode ExecuteReader dari object MySQLCommand, bukan secara langsung
melalui konstruktor. Hal ini juga berarti bahwa tidak diperkenankan melakukan
instantiasi class dengan menyertakan parameter berupa pernyataan SQL.
Universitas Kristen Petra
32
2.6.8.Class MySQLTransaction
Untuk mendukung transaksi database, Connector/NET menyediakan
class MySQLTransaction yang merepresentasikan transaksi SQL. Dukungan ini
akan membantu untuk mengimplementasikan fitur transaksi yang sejak lama
sudah dimiliki oleh SQL.
2.6.9.Class MySQLException
Exception merupakan kondisi kesalahan atau perilaku tak terduga yang
ditemui oleh eksekusi program. Ada beberapa penyebab terjadinya exception,
misalnya kesalahan di dalam kode, sumber daya sistem tidak tersedia, atau kondisi
tidak terduga yang ditemui oleh runtime.
2.7. PLC (Programmable Logic Controller)
PLC adalah controller yang berbasiskan mikroprosesor dan dapat
diprogram. Dari singakatannya saja dapat diketahui definisi sederhana dari PLC :
• Programmable : dapat diprogram (software based)
• Logic : bekerja berdasar logika yang dibuat. Logika di sini biasanya menunjuk
pada logika Boolean yang hanya terdiri dari 2 keadaan, ON atau OFF.
• Controller : Pengendali (otak) dari suatu sistem
Secara sederhana, cara kerja sistem yang dikontrol menggunakan PLC adalah
sebagai berikut :
1. PLC mendapatkan sinyal input dari input device.
2. Akibatnya PLC mengerjakan logika program yang ada di dalamnya.
3. PLC memberikan sinyal output pada output device
Pada umumnya PLC digunakan untuk mengontrol mesin-mesin di pabrik
dan industri, sehingga mesin-mesin itu dapat berjalan secara otomatis.
Keunggulan PLC dibandingkan dengan microcontroller adalah kemudahan untuk
memprogramnya. PLC dirancang sedemikian hingga tidak hanya programmer
saja yang memiliki kapabilitas untuk memprogram PLC.
Perancang dan pembuat PLC telah menempatkan sebuah program awal
dalam PLC. Program ini berguna untuk mempermudah proses pemrograman.
Sehingga memungkinkan untuk memasukkan atau mengubah program yang sudah
Universitas Kristen Petra
33
ada dengan menggunakan bahasa pemrograman yang sederhana dan mudah
dimengerti. Pengguna PLC yang ingin memprogram PLC, hanya perlu mengerti
tentang logic (logika).
Istilah logic dipergunakan karena sebagian besar pemrograman berkaitan
dengan pengimplementasian operasi-operasi logika dan switching
(penyambungan). Berikut adalah contoh suatu logika sederhana tentang logic
AND dan logic OR:
Tabel 2.2. Logika AND dan OR
A B AND OR 0 0 0 0 0 1 0 1 1 0 0 1 1 1 1 1
Operasi-operasi logika seperti di atas dapat dibawa dan diproses ke dalam bahasa
pemrograman PLC. Salah satunya adalah ladder diagram. Penggunaan ladder
diagram untuk membentuk operasi logika AND dan OR dapat dilihat pada
gambar 2.8.
Gambar 2.8. Ladder Diagram Logika AND dan OR
Salah satu keunggulan PLC yang lainnya adalah PLC dapat dipergunakan
untuk mengontrol beraneka ragam sistem kontrol. Contohnya, untuk mengubah
sebuah sistem kontrol atau aturan-aturan dalam sistem kontrol tersebut, tidak perlu
merubah rangkaian sistem kontrol tersebut. Pengguna hanya perlu untuk
memasukkan beberapa instruksi yang berbeda dari yang semula digunakan untuk
mengubah sistem. Hal itu berdampak pada keefektifan, kefleksibelan, dan
penghematan biaya dan waktu, meskipun sistem yang perlu dirubah adalah sebuah
sistem yang sangat kompleks.
Penggunaan PLC di bidang perindustrian membuat PLC memiliki
beberapa karakteristik, antara lain:
Universitas Kristen Petra
34
1. Kokoh dan dirancang untuk tahan terhadap getaran, suhu, kelembaban, dan
kebisingan.
2. Interface untuk input dan output telah tersedia secara built-in di dalamnya.
3. Mudah diprogram dan menggunakan bahasa pemrograman yang mudah
dipahami dan sebagian besar berkaitan dengan operasi-operasi logika dan
penyambungan (switching).
4. Dapat menangani input atau output dalam jumlah besar dan dalam bentuk
sinyal analog maupun digital.
Pada umumnya, sebuah sistem PLC memiliki lima komponen dasar,
yaitu:
1. Unit processor atau cental processing unit (CPU) atau unit pengolahan pusat
adalah unit yang berisi mikroprosesor yang menginterpretasikan sinyal-sinyal
input dan melaksanakan tindakan-tindakan pengontrolan, sesuai dengan
program yang tersimpan di dalam memori, lalu mengkomunikasikan
keputusan-keputusan yang diambilnya sebagai sinyal-sinyal kontrol ke
interface output.
2. Unit catu daya diperlukan untuk mengkonversikan tegangan AC sumber
menjadi tegangan rendah DC (5V dan 24V) yang dibutuhkan oleh processor
dan rangkaian-rangkaian di dalam modul-modul antarmuka input dan output.
3. Perangkat pemrograman dipergunakan untuk memasukkan program yang
dibutuhkan ke dalam memori. Program tersebut dibuat dengan menggunakan
perangkat ini dan kemudian dipindahkan ke dalam unit memori PLC.
4. Unit memori adalah tempat program yang digunakan untuk melaksanakan
tindakan-tindakan pengontrolan oleh mikroprosesor disimpan.
5. Bagian input dan output adalah antarmuka dimana processor menerima
informasi dari dan mengkomunikasikan informasi kontrol ke perangkat-
perangkat eksternal. Sinyal-sinyal input dapat berasal dari saklar-saklar,
sensor-sensor lain, seperti misalnya sel-sel fotoelektrik, sensor suhu atau
sensor-sensor lain, seperti misalnya sel-sel fotoelektrik, sensor suhu atau
sensor aliran cairan, dsb. Sinyal-sinyal output mungkin diberikan pada
kumparan-kumparan starter motor, katup-katup, solenoid, dll. Ada dua tipe
I/O pada PLC yaitu I/O digital dan I/O analog. Pada I/O digital, input dan
Universitas Kristen Petra
35
output-nya dapat menerima dan menghasilkan sinyal digital yang berbentuk
data biner ‘1’ dan ‘0’ atau kondisi ‘on-off’, sebagai contoh, saklar on-off
sebagai input digital dan output-nya mengontrol on-off solenoid. Sedangkan,
pada I/O analog, input atau output analog-nya dapat menerima dan
menghasilkan sinyal analog yang tidak hanya on-off saja.
Tabel 2.3. Struktur Memori PLC OMRON CPM1-20CDR-A
Data Area Words Bits Fungsi Input Area IR 000 – IR
009 (10 words)
IR 00000 – IR 00915 (160 bits)
Output Area IR 010 – IR 019 (10 words)
IR 01000 – IR 01915 (160 bits)
Bit-bit ini dapat dialokasikan ke terminal I/C eksternal
IR Area
Work Area IR 200 – IR 231 (32 words)
IR 20000 – IR 23115 (512 bits)
Bit-bit ini dapat digunakan dalam program
SR Area SR 232 – SR 255 (24 words)
SR 23200 – SR 25507 (384 bits)
Bit-bit ini disediakan untuk fungsi spesifik seperti flag dan control bits
TR Area --- TR 0 – TR 7 (8 bits)
Bit-bit ini digunakan untuk menyimpan status ON/OFF pada cabang program
HR Area HR 00 – HR 19 (20 words)
HR 0000 – HR 1915 (320 bits)
Bit-bit ini menyimpan data dan mempertahankan status ON/OFF pada saat power dimatikan
AR Area
AR 00 – AR 15 (16 words)
AR 0000 – AR 1515 (256 bits)
Bit-bit ini disediakan untuk fungsi spesifik seperti flag dan control bits
LR Area LR 00 – LR 15 (16 words)
LR 0000 – LR 1515 (256 bits)
Digunakan untuk data link 1:1 dengan PC lain
Universitas Kristen Petra
36
Tabel 2.3. Struktur Memori PLC OMRON CPM1-20CDR-A (sambungan) Timer/Counter Area TC 000 – TC 127 (nomer
timer/counter) Nomer yang sama digunakan untuk timer dan counter
DM Area Read/Write DM 0000 – DM 0999 DM 1022 – DM 1023 (1.022 words)
--- Data DM Area hanya dapat diakses dalam unit word saja Nilai word akan tetap dipertahankan ketika power dimatikan
Error Log DM 1000 – DM 1021 (22 words)
--- Digunakan untuk menyimpan waktu kejadian dan error code yang ditemukan. Word-word ini dapat digunakan sebagai DM read/write ketika error log tidak digunakan.
Read-Only DM 6144 – DM 6599 (456 words)
--- Tidak dapat diisi program
FC Setup DM 6600 – DM 6655 (56 words)
--- Digunakan untuk menyimpan berbagai parameter yang mengontrol kerja PLC.
Tabel 2.4. Spesifikasi Input PLC
Item Specification Input Voltage 24 VDC +10%/-15% Input Impedance IN00000 to IN00002: 2k?; other inputs: 4.7 k? Input Current IN00000 to IN00002: 12mA typical; other input:
5mA typical ON Voltage 14.4 VDC min. OFF Voltage 5.0 VDC max. ON Delay 2 ms max. OFF Delay 2 ms max.
Universitas Kristen Petra
37
Tabel 2.5. Spesifikasi Output PLC
Item Specification Output Type All output are relay outputs Max. Switching capacity
2 A, 250 VAC (cos F = 1) 2 A, 24 VDC (4 A/common)
Min. Switching capacity
10 mA, 5 VDC
Relay G6R-1A
Service life of relay
Electrical: 300,000 operations (resistive load) 100,000 operations (inductive load) Mechanical: 20,000,000 operations
ON delay 15 ms max. OFF delay 15 ms max. Sumber: A Beginner’s Guide to PLC OMRON, Singapore: OMRON, 1996, p.41, 170-172.
2.8. Komunikasi Microsoft Visual Basic .NET Dengan PLC
PLC dapat berkomunikasi dengan PC menggunakan Host Link Unit. Host
Link Unit adalah sebuah hardware yang berfungsi untuk menjembatani PC dalam
memonitor status pengoperasian dan lokasi data pada PLC. PLC yang digunakan
pada Tugas Akhir ini adalah OMRON CPM1-20CDR-A. Parameter yang
digunakan dalam Tugas Akhir ini adalah parameter standar, yaitu:
1. Kecepatan Transmisi
Baud Rate = 9.600 bps
2. Format Data
Start bit = 1, panjang data = 7 bit, event parity = 1 bit, stop bit = 2.
Jika tidak ingin menggunakan parameter standar, seperti dalam Tugas Akhir ini,
pengguna PLC dapat mengubah setting komunikasi pada alamat DM 6650 sampai
dengan DM 6653.
Setelah selesai dengan setting pada PLC, langkah selanjutnya adalah
men-setting PC. Tugas Akhir ini menggunakan program Microsoft Visual
Basic.NET, karena komponen “MSComm” sudah tersedia. Komponen
”MSComm” adalah komponen yang berfungsi untuk melakukan komunikasi
secara serial melalui port COM. Parameter kecepatan dan format data dapat di-
setting pada bagian properties dari komponen “MSComm”. Parameter-parameter
tersebut haruslah sesuai dengan parameter-parameter di Host Link Unit.
Universitas Kristen Petra
38
Dalam hal ini, PC berfungsi sebagai Master, yang artinya PC dapat
memberi perintah, dapat melakukan operasi Write (tulis) dan Read (baca).
Sebaliknya, PLC berfungsi sebagai Slave, artinya PLC hanya dapat memberikan
respon atas perintah yang dilakukan PC. Perintah-perintah yang dapat dikirimkan
oleh PC ke PLC bermacam-macam. Perintah tersebut terdiri dari satu rangkaian
data yang harus dikirim dengan bentuk paket terstruktur yang disebut frame.
Contoh penulisan frame adalah :
Gambar 2.9. Contoh Penulisan frame
Perintah pada gambar 2.9. adalah perintah untuk membaca alamat IR
0010 sebanyak 1 word. Untuk lebih jelasnya format penulisan frame adalah:
Gambar 2.10. Format Penulisan Command Frame
Keterangan dari gambar 2.10. adalah:
1. @ : kode awal yang harus diberikan sebagai tanda komunikasi dengan PLC
2. Node No. : nomor node sebagai identitas PLC
3. Header Code : penunjuk operasi write atau read sekaligus penanda area
memori PLC
4. Text : alamat yang dituju dan jumlah word-nya atau data yang ingin ditulis ke
PLC
5. FCS (Frame Check Sequence) : untuk mengecek kesalahan pada pengiriman
data.
6. Terminator : harus diberikan * dan + (karakter ASCII 13 atau enter)
Bentuk-bentuk header code yang umum digunakan dapat dilihat pada tabel 2.6.
@ R R 0 0 1 0 4 5 * + 0 0 0 1
Node No. Header Code
Beginning Word
No. of words FCS Terminator
0 0
Universitas Kristen Petra
39
Tabel 2.6. Bentuk-bentuk Header Code yang Umum Digunakan
PC Mode Header Code RUN MON PRG Name
RR Valid Valid Valid IR/SR Area Read RL Valid Valid Valid LR Area Read RH Valid Valid Valid HR Area Read RC Valid Valid Valid PV Read RG Valid Valid Valid TC Status Read RD Valid Valid Valid DM Area Read RJ Valid Valid Valid AR Area Read WR Not Valid Valid Valid IR/SR Area Write WL Not Valid Valid Valid LR Area Write WH Not Valid Valid Valid HR Area Read WC Not Valid Valid Valid PV Write WG Not Valid Valid Valid TC Status Write WD Not Valid Valid Valid DM Area Write WJ Not Valid Valid Valid AR Area Write
Setelah PC mengirimkan Command Frame ke PLC, maka PLC akan
memberi respon, berupa response frame. Format dari response frame adalah:
Gambar 2.11. Format Response Frame Dari PLC
Contoh dari end code dapat dilihat pada tabel 2.7.
Tabel 2.7. Contoh end code
End Code
Contents Probable Cause Corrective Measures
00 Normal Completion --- --- 01 Not executable in RUN
mode The command that was sent can not be executed when the PC is in RUN mode
02 Not executable in MONITOR mode
The command that was sent can not be executed when the PC is in MONITOR mode
Check the relation between the command and the PC mode.
0B Not executable in PROGRAM mode
The command that was sent can not be executed when the PC is in MONITOR mode
This code is not presently being used.
Universitas Kristen Petra
40
Tabel 2.7. Contoh end code (sambungan)
13 FCS Error The FCS is wrong. Either the FCS calculation is mistaken or there is adverse influence from noise.
Check the FCS calculation method. IF there was influence from noise, transfer the command again.
14 Format Error The command format is wrong.
Check the format and transfer the command again.
15 Entry number data error
The areas for reading and writing are error.
Check the areas and transfer the command again.
16 Command not supported The specified command does not exist.
Check the command code.
18 Frame length error The maximum frame length was exceeded.
Divide the command into multiple frames.
19 Not executable Items to read not registered for composite command (QQ).
Execute QQ to register items to read before attempting batch read.
Algoritma program pada Microsoft Visual Basic.NET meliputi
pengaktifan port, pembacaan isi port, pembuatan Command Frame, pengiriman
data, dan pembacaan respon dari PLC. Properties yang dibutuhkan untuk
mengaktifkan port adalah:
1. “CommPort” berfungsi mengatur setting nomor serial COM port yang
digunakan oleh PC.
2. “Settings” berfungsi mengatur setting baud rate, parity, data bits, stop bits
COM2. Dalam hal ini, penulis menggunakan baud-rate = 9.600 bps, nilai
parity = even, panjang data = 7 bit, dan stop bit = 2.
3. “PortOpen” berfungsi mengatur setting keadaan COM2, apakah COM port
sedang terbuka atau tertutup.
Agar dapat mengirimkan data dengan benar, perlu adanya pengecekan
terhadap hasil yang dikirim oleh PC dan diterima oleh PLC. Di sinilah fungsi
FCS, agar data yang diterima oleh PLC dapat diketahui apakah sesuai dengan data
Universitas Kristen Petra
41
yang dikirimkan oleh PC. FCS (Frame Check Sequence) adalah hasil konversi 8-
bit data ke 2 digit karakter ASCII. Ke 8 bit data merupakan hasil dari XOR secara
berurut (sequence) karakter pertama hingga karakter terakhir pada sebuah frame.
Langkah-langkah penghitungan FCS antara lain:
1. Mengubah masing – masing character dalam bentuk ASCII
2. Melakukan operasi XOR satu sama lain mulai dari character @, sampai
batas FCS calculation range
3. Hasil akhirnya diubah ke dalam bentuk Heksa Desimal
Berikut adalah contoh penghitungan FCS,
Gambar 2.12. Contoh Perhitungan FCS
Sumber: PLC CPM Programming Manual, Singapore: OMRON, Agustus 1996, p.239-240.
2.9. ADC (Analog to Digital Converter)
Fungsi dasar ADC adalah untuk mengubah nilai analog (biasanya dalam
bentuk tegangan) menjadi nilai digital (bit-bit biner) yang memberikan perkiraan
yang tepat untuk nilai analog tersebut. Secara konseptual, proses ini dapat
membentuk rasio antara sinyal input dan sebuah tegangan referensi Vref, dan
membulatkan (pembulatan ke bawah) hasilnya ke dalam bentuk data n-bit biner.
Secara matematis, proses ini dapat diwakilkan oleh rumus:
Universitas Kristen Petra
42
×= n
ref
in
VV
roundData 2 (2.1)
dimana: Vin adalah tegangan analog
Vref adalah tegangan referensi
Data adalah data output word
n adalah resolusi dari converter (jumlah bit pada Data)
Fungsi round merupakan fungsi pembulatan ke bawah dari hasil
perhitungan. Contoh, jika hasil perhitungan adalah 19,8, maka hasil tersebut akan
dibulatkan menjadi 19 (bukan menjadi 20). Tegangan referensi merupakan
tegangan tetap yang dibangkitkan secara internal. Dalam beberapa kasus,
tegangan referensi ini diberikan oleh rangkaian eksternal. Tegangan referensi ini
diperlukan untuk menentukan skala input maksimum dari converter. Jadi, dapat
dikatakan pula tegangan referensi merupakan tegangan input maksimum dari
converter.
Parameter-parameter ADC yang lainnya adalah resolusi, presisi dan
akurasi. Resolusi menyatakan banyaknya level dari rentang output. Biasanya
dinyatakan dalam Volt/bit. Bisa juga dinyatakan dalam bentuk persentase terhadap
full scale-nya. Namun pada prakteknya resolusi seringkali dinyatakan dalam
jumlah bit-nya saja.
Presisi adalah tingkat ketepatan ADC dalam menterjemahkan besaran
analog ke digital. Sedangkan akurasi adalah seberapa teliti output sebenarnya
terhadap output keluaran yang diharapkan (ideal). Akurasi biasanya dinyatakan
dalam bentuk persentase atau relatif terhadap LSB.
2.9.1.ADC 0804
ADC 0804 merupakan ADC dengan resolusi 8-bit dengan kecepatan
konversi 100 µs. ADC ini berguna untuk mengkonversikan tegangan analog dari
sensor suhu menjadi digital, sehingga dapat dibaca dan dimengerti oleh PLC.
Bentuk konversi input analog ke output digital yang dilakukan oleh ADC 0804
dapat dilihat pada tabel 2.8.
Universitas Kristen Petra
43
Tabel 2.8. Konversi Input Analog ke Output Digital Oleh ADC 0804
Sumber: National Semiconductors. ADC0801 / ADC0802 / ADC0803 / ADC0804 / ADC0805 8-bit µP Compatible A/D Converters Datasheet. 1989. 7 Maret 2007, p.25. <http://pdf1.alldatasheet.com/datasheet-pdf/view/8105/NSC/ADC0804. html>
ADC ini memiliki resolusi 8 bit, error ± 1 LSB (Vref/28) dan waktu
konversi 100 µs.
2.10. OP AMP (Operational Amplifier)
OP AMP mempunyai lima terminal dasar, yaitu dua terminal untuk
menyuplai daya, dua terminal lagi untuk input, dan satu terminal terakhir untuk
output. Simbol rangkaian untuk OP AMP merupakan sebuah ujung panah, dapat
dilihat pada gambar 2.13.
Gambar 2.13. Simbol Rangkaian OP AMP
Universitas Kristen Petra
44
2.10.1. LM 741
LM 741 hanya terdiri dari sebuah op-amp yang memiliki high gain dan
wide range dari sebuah tegangan, yang dapat digunakan untuk rangkaian
integrator, summing amplifier, dan aplikasi general feedback. Gambar skema LM
741 dapat dilihat pada gambar2.14..
Gambar 2.14. Skema LM 741
Sumber: National Semiconductors. LM741 Single Operational Amplifiers Datasheet. 13 Maret 2007, p.1. <http://www.datasheet4u.com/html/L/M/7/LM741_NationalSemiconductor. pdf.html>
2.10.2. LM 324
LM 324 berisi 4 buah op-amp dan dapat digunakan hanya dengan supply
tunggal 3-32 volt. Gambar skema LM 324 dapat dilihat pada gambar 2.15.
Gambar 2.15. Skema LM 324
Sumber: National Semiconductors. LM324, LM324A, LM224,LM2902, LM2902V, NCV2902 Single Supply Quad Operational Amplifiers Datasheet. 13 Maret 2007, p.1. <http://www.datasheet4u.com/html/L/M/3/LM324_ONSemiconductor.pdf.html>
Universitas Kristen Petra
45
2.11. SCADA
SCADA adalah sebuah sistem yang memungkinkan pengguna untuk
melakukan:
1. Monitoring : pengguna dapat mengawasi proses yang sedang berjalan
2. Controlling : pengguna dapat mengontrol proses yang sedang berjalan
3. Data Aqcuisition : pengguna dapat melihat data-data atau informasi-informasi
yang sebelumnya telah tersimpan dalam database
Ketiga fungsi di atas dapat dipenuhi dengan mewujudkan SCADA dalam
bentuk hardware maupun software. Istilah Man Machine Interface (MMI) muncul
untuk menjembatani jurang antara manusia dengan mesin, sehingga pengguna
dapat mengawasi dan mengendalikan plant dengan mudah.
Untuk mewujudkan suatu MMI (display untuk SCADA) yang baik, maka
diperlukan batasan atau standar dalam pembuatannya. Berikut ini hirarki dari
display grafik suatu MMI:
Gambar 2.16. Hierarki MMI
Sumber: City of London Environmental Service. Automation and Control Volume 3 Programming Requirements. 2002. 8 Februari 2007, p.36. <http://www.london.ca/StandardDocuments/SCADA_Std/Automation_Programming_V3_9.pdf>
Main Menu
Plant Overview
Historical Trend
Reports
Area Graphics
Area Graphics
Area Graphics
Alarm Display
Control Set Point Current Trend
Universitas Kristen Petra
46
Keterangan dari gambar 2.16. adalah:
1. Main Menu
Main Menu adalah tampilan awal untuk memasuki display. Untuk kebutuhan
security, bisa diberi password.
2. Tampilan Overview
Gambaran grafis dari keseluruhan sistem, memiliki link navigasi ke berbagai
grup lokal dari plant.
3. Area Graphics
Menampilkan detail dari keseluruhan proses beserta peralatannya dalam area
plant tertentu, menampilkan
4. Control Display
Untuk melakukan pengendalian output di plant dari software. Selain itu,
control display juga memberikan ruang atau field bagi input dari operator.
5. Setpoint Display
Untuk melihat dan mengatur semua setpoint dari sistem kontrol pada area
tertentu.
6. Trend Display
Memberikan tampilan grafis dari variabel proses.
7. Alarm Summary Display
Memberi daftar alarm yang diterima oleh SCADA. Dimana alarm bisa diatur
prioritasnya sesuai kebutuhan pengguna.
2.12. Relay
Electromechanical Relay (EMR) adalah sebuah device yang bekerja
berdasarkan gaya electromagnetic untuk menutup/membuka kontak switch. Relay
pada mulanya dikembangkan untuk memenuhi fungsi-fungsi yaitu remote control
dan power amplification. Contoh dari power amplification adalah starting relay
pada sebuah mobil.
Kontak relay memiliki dua konfigurasi dasar yaitu Normally Open (NO)
dan Normally Closed (NC). Normally Open memiliki kondisi kontak open pada
saat tidak di-energized dan kontak akan close bila di-energized. Sedangkan
Normally Closed memiliki kondisi kontak closed pada saat tidak di-energized dan
Universitas Kristen Petra
47
kontak akan open bila di-energized. Berdasarkan perjanjian, simbol relay selalu
menunjukkan kondisi kontak pada saat tidak di-energized. Relay memiliki
bermacam-macam variasi konfigurasi kontak. Seperti double-pole/double-throw
(DPDT), triple-pole/double-throw (3PDT), double-pole/single-throw (DPST),
single-pole/single-throw (SPST), dan sebagainya.
Switch dan relay digunakan secara luas pada industri-industri untuk
mengontrol motor, mesin, dan proses. Switch dapat menjalankan single machine
on dan off, tetapi jaringan relay logic dapat mengontrol proses yang dijalankan,
menyalakan sebuah mesin, menunggu sampai proses selesai, kemudian
menjalankan proses berikutnya.
Dari sini kemudian dikembangkan ladder, untuk kontrol sirkuit relay dan
switch. Diagram ladder terdiri dari rung dan dua power rails, power rail terletak
secara vertikal pada tiap sisi dari diagram. Dan rung terletak secara horisontal
diantara kedua power rail tersebut. Power rail adalah sumber tenaga pada sirkuit
(AC atau DC) dimana rail sebelah kiri disebut sebagai “hot side” atau tegangan
dan rail sebelah kanan adalah neutral (AC) atau ground (DC). Maka tiap rung
dihubungkan secara melintang antara sumber tegangan. Sebuah rung pada
umumnya terdiri dari kumpulan kontak relay atau switch dan sebuah beban (load)
seperti relay coil atau motor. Ketika kontak pada bagian rung menutup (close)
untuk membuat jalur yang continuous dari sisi power rail kiri ke kanan maka rung
tersebut akan aktif sehingga load akan di-energized.
2.13. Sensor Suhu
Sensor yang digunakan pada perancangan plant tugas akhir ini adalah
tipe detektor suhu resistif (resistive temprature detector-RTD). Tahanan listrik
bahan-bahan logam atau semikonduktor akan berubah seiring dengan perubahan
suhu. Dalam kasus bahan logam, yang paling sering digunakan adalah platina,
nikel, atau nikel campuran, yang tahanan listriknya berubah-ubah secara linier
dengan perubahan suhu, pada kisaran yang cukup lebar, meskipun perubahan
tahanan aktual per derajat suhu sangat kecil. Bahan-bahan semikonduktor, seperti
misalnya Pt-100 (platina), memperlihatkan perubahan tahanan yang sangat besar
dengan berubahnya suhu. Akan tetapi perubahan tersebut tidak linier. Detektor-
Universitas Kristen Petra
48
detektor semacam ini dapat digunakan sebagai salah satu jembatan Wheatstone
dan output dari jembatan Wheatstone digunakan sebagai ukuran suhu. Berikut
adalah gambar dari Jembatan Wheatstone:
Gambar 2.17. Jembatan Wheatstone
Kemungkinan lainnya adalah menggunakan sebuah rangkaian pembagi
tegangan, dimana perubahan tahanan Pt-100 akan mengubah jatuh tegangan
(voltage drop) pada sebuah resistor. Gambar berikut menunjukan rangkaian
pembagi tegangan:
Gambar 2.18. Rangkaian Pembagi Tegangan
Output dari rangkaian di atas ini adalah sebuah sinyal analog yang
merepresentasikan suhu yang terukur. RTD ditaruh pada bagian bawah resistor
tetap karena apabila ketika RTD mengalami kenaikan hambatan ketika suhu naik,
maka tegangan output akan ikut naik atau bertambah. Tetapi apabila RTD ditaruh
pada bagian atas ketika hambatan RTD naik maka tegangan akan menurun.
Pada umumnya Pt100 memiliki resistansi 100 ? pada suhu 0oC dan
138.5 ohm pada 100oC. Pada prinsipnya Pt100 mengukur hambatan dari elemen
platina dan perubahan suhu sebesar 1oC akan mengakibatkan perubahan resistansi
sebesar 0.384 ohm.
Top Related