UNIVERSITAS
GUNADARMA
FAKULTAS ILMU
KOMPUTER & TEKNOLOGI INFORMASI
TUGAS PENGANTAR
TELEMATIKA
Kolaborasi Antara OSGI Framework
Dengan Teknologi
JINI Pada Home Network System
4KA11
1.
Maulana Syarif Hidayatulloh (14110275)
2.
Vicky Ariesca Merliana (19110701)
3.
Slamet Raharjo (16110630)
UNIVERSITAS
GUNADARMA
2014
2014
Abstrak
OSGi Framework dan Teknologi Jini
merupakan keunggulan keunggulan dapat lebih meningkatkan network apabila
dikabolarosikan. Salah satu Penelitian ini bertujuan membangun sebuah prototype
home network system dengan mengimplementasikan OSGi framework
dan teknologi Jini. Dalam penelitian ini penulis mempelajari dan menerapkan
penggunaan teknologi Jini untuk menghubungkan beberapa OSGi framework dan
pengendalian home network system melalui internet. Jaringan komputer yang
menghubungkan dan mengendalikan berbagai macam peralatan elektronis di
rumah disebut sebagai home network. Standar protokol yang dapat digunakan untuk
home networking antara lain adalah Bluetooth, uPnP, HAVi dan X10. Untuk
mengintegrasikan peralatan yang memiliki protokol-protokol berbeda
tersebut dan menghubungkan sebuah home network dengan internetdiperlukan sebuah
service gateway. Open Service Gateway Initiative (OSGi) Consortium
mengembangkan spesifikasi standar untuk service gateway. Sun Microsistem
mengembangkan perangkat lunak berbasis Java yang mengimplementasikan
standar OSGi yaitu Java Embedded Server. Jini merupakan salah satu
standar untuk home networking dan sistem terdistribusi berbasis Java. Teknologi
Jini memungkinkan komunikasi antar OSGi framework. Hasil penelitian ini
menunjukkan bahwa kolaborasi antara OSGi framework dan teknologi Jini
dapat diimplementasikan dalam pembuatan home gateway untuk home network system.
BAB I PENDAHULUAN
1.1. Latar Belakang Permasalahan
1.2. Tujuan
Penelitian
Tujuan dari penelitian yang
dilakukan penulis adalahmembuat Rancangan dan implementasi
home network systemyang
menerapkan standar OSGi, teknologi Java Embedded Server
dan teknologi Jini.
Dari tujuan tersebut terdapat sub
tujuan sebagai berikut:
1. Mempelajari da nmengimplementasikan
standar OSGi untuk homenetwork system
2. Mempelajari penerapan Jini untuk distributed
system.
3. Mempelajari dan mengimplementasikan Jini untukmenghubungkan dua atau lebih
OSGi framework.
4. Membangun home
network system yang dapat diaksesmelalui
internet
1.3. Ruang Lingkup Permasalahan
Ruang lingkup dari penelitian ini adalah:
1. Mempelajari dan menerapkan spesifikasi OSGi
2. Mempelajari dan menerapkan teknologi
JES sebagaiimplementasi
Spesifikasi OSGi dan berfungsi sebagai OSGi frameworkpada home network system.
3. Menggunakan Jini sebagai teknologi
Java yang mendukung
distributed services pada home network system.
4. Mempelajari dan menggunakan protokol
X10 untukkomunikasi
System pengontrol dengan peralatan berbasis protokol
X10.
5. Mempelajari dan menggunakan
Java Communication™ API untuk Komunikasi system
pengontrol dengan peralatan yang terhubung Melalui serial parallel port.
1.4. Metodologi Penelitian
Metodologi yang
digunakan olehpenulis dalam penelitian ini meliputi langkah-langkah
sebagai berikut:
1. Perumusan masalah
2. Studi Literatur yang dipelajari oleh penulis adalah sebagaiberikut:
a. Java
Communication™ API (for Linux) Java
Communication™ API merupakan Java API yang Digunakan untuk mengakses serial
pararel port.
b. Protokol
X10
Standar protocol untuk komunikasi antara peralatan
elektronik
Yang berkomunikasi melalui jaringan listrik.
c. J2ME Java Virtual Machine yang digunakan untukmenjalankan program yang berbasis Java untuk lingkunganembedded
system.
d. Jini Tehnologi Java yang menggabungkan sekelompokpenyedia dan pengguna service
pada sebuahnetwork, service tersebut diberikan oleh peralatan
yang terhubung ke network.
e. OSGi framework dan
JES
OSGi merupakan standar spesifikasiuntuk service
gateway yangmenghubungkan home network systemdengan
internet. JES merupakanteknologi Java yang
mengimplementasikan standar OSGi.
f. Servlet Servlet digunakan untuk menghasilkan dokumen
HTML untuk antarmuka
pengontrolan home network
system dari web browser via protokol HTTP.
1.5. Sistematika Penulisan
Sistematika penulisan ini adalah sebagai berikut
:
· Bab
I Pendahuluan,
berisi latar belakang masalah, tujuanpenelitian, ruang lingkup masalah,
metode penelitian, dansistematika penulisan.
· Bab
II Landasan Teori, berisi landasan-landasan teori yang
digunakan dalam penulisan ini.
Landasan teori diperolehpenulis dari studi literature yang meliputi protokol
X10, Java Communication™ API, J2ME, Jini dan OSGi.
· Bab
III Analisa Kebutuhan Sistem, berisi arsitektursistem,
analisa kebutuhan system dari sisi pengguna dan usecase
diagram.
· Bab
VII Kesimpulan,
berisi kesimpulan dari skripsi inidan berisi saran
pengembangan di masa depan terhadap sistem yang dihasilkan.
Keseluruhan tulisan dalam penulisa inimenggunakan font Times New Roman 12-14
poinkecuali untuk penulisan kelas-kelas menggunakanfont Courier
New 10 poin dan penulisan kode program menggunakan font Arial
8 poin.
BAB II LANDASAN TEORI
2.1. Java
Communication™ API
Antarmuka terpopuler dari sebuah personal
komputer (PC) adalah
serial port atau disebut juga sebagai
RS-232 (singkatan dariRecommend
Standar 232).
Antar muka ini memungkinkan computerberkomunikasi
denganexternal device. Peralatan yang
memiliki antarmukaserial misalnya printer, modem, bar
code scanner dan smart card reader.
Selain antarmuka serial port terdapat antarmukaparallel
port. [Mysore, 1998]
Untuk melakukan komunikasi dengan serial I/O devicedan parallel
I/O device dengan bahasa pemrograman
Java, dibuatlah Java Communication™ API. Untuksistemoperasi Linux
digunakan Java Communication™ API for Linux yang berisipackagegnu.io yang
mendukung serial port dan pararel portdengan semantik
java yang tradisional seperti stream danevent.
Dengan menggunakan Java Communication™ API, kita dapatmengirimkan dan menerima
data dari external device yang terhubung ke PC
kita melalui serial port dan parlelport. Java
Communication™
API juga memberikan pilihan lengkap untukmengkonfigurasi semua
parameter yang di perlukan untukberkomunikasi dengan serialI/O device dan parallelI/O device.
Parameter yang dapatdikonfigurasi antara lain adalah baud rate, flow
control dan parity bit.Pada struktur API untukpemrograman serial dan parelel
device, Java Communication™ API berperan sebagai port
manager.
Java Communication™ API
memberikan fungsionalitassebagai
berikut:
1. Spesifikasi API yang
lengkap untuk komunikasi computerdengan
Serial port dan paralel port.
2. Kontrol penuhuntuk semua
parameter yang meliputi baud rate, parity
Bit dan flow
control.
3. Basic I/O Control yang
menjadi sub kelas dari Java I/O Stream. Untuk input dan ouput, Java
Communication™ API menggunakan stream yang
sudahsangat dikenal oleh semua Java programmer. Streamdapat digunakan lebih luas untuk mendukung flow
controldan threshold control.
4. Menggunakan Java event
model untuk memberikannotifikasi atas perubahan input yang
diterima.
2.2. Protokol
X10
Protokol X10 merupakan salah satu protokol
yang digunakan untuk
Mengendalikan beberapa peralatan elektronik
yang terhubung kejaringan
listrik. Protokol X10
menggunakan gelombang listrik sebagai media
perantara untuk menyampaikan perintah tertentuk eperalatan
X10.
[Kingery, 1999]
Ada 2 macam X10 device yaitu X10 tranmitter dan
X10receiver. X10 transmitter merupakan X10 device yang
dapat mengirimkanperintah ke X10 receiver. X10 receiver dapat menerima sinyalberisi perintah dari
X10 transmitter tetapi tidak dapatmengirimkan sinyal terhadap X10 transmitter sebagai respon dariperintah
yang diberikan. Setiap perintah yang dikirimkan X10 transmitterakan dibroadcast kesemua peralatan
X10 yang terhubung kejaringanlistrik. Sebuah X10 tranmitter yang
dapat dihubungkan dengan computerdisebut sebagai X10 controller.
X10 transmitter memiliki antar muka serial
port sehinggadapatdihubungkandengankomputer.
Dengan adanya antar muka serial port tersebut kita dapat mengirim perintahdari computer ke
X10 device yang ada.
BAB III ANALISA KEBUTUHAN SISTEM
Pada bab ini akan dibahas permasalahan dan analisa kebutuhan
dari sistem.
Pada tahap ini akan dibuat gambaran
umum tentang struktur, pola serta komponen sistem
secara umum, rumusan kebutuhan fungsionalitas dari sistem danuse case diagram.
3.1. Arsitektur
Sistem
Ada 3 komponen utama yang akan dibangun
yaitu home network system, JES framework
dan Jini system. Ketiganya
saling terkait dan
mendukung satu sama lain.
Masing-masing
komponen akan dijelaskan dalam
sub-sub bab sebagai berikut:
3.1.1 Home
Network System
Sebuah home network system meliputi satu
atau lebih device yang terhubung ke sebuah komputer
yang akan digunakan untuk
mengendalikan device.
Dalam penelitian ini digunakan
beberapa peralatan untuk
merepresentasikan device yang
dapat terhubung ke sistem yaitu:
1. X10 device
X10 device yang digunakan dalam penelitian
ini terdiri dari 3
buah alat yaitu :
a. 1 buah X10 controller/transmitter (CM12U)
yang memiliki
antarmuka RS-232 untuk dihubungkan
dengan serial port komputer.
b. 1 buah X10 receiver/appliance
module (AM12U), X10 receiver ini dihubungkan dengan sebuah lampu yang akan merepresentasikan sebuah appliance.
Operasi yang dapat
dilakukan pada X10 receiver ini
adalah operasi menyalakan
dan mematikan appliance.
c. 1 buah X10 receiver/lamp
module (AM12U), X10 receiver ini dihubungkan dengan sebuah lampu. Operasi yang dapat dilakukan pada X10 receiver ini
adalah operasi menyalakan
(on), mematikan (off), meredupkan (dim)
dan memperterang
(bright) lampu.
2. Serial I/O Switch (K108)
K108 merupakan rangkaian microcontroller elektronik
yang
memiliki
8 output switch,
4 input switch dan
memiliki
antarmuka RS-232 untuk dihubungkan
dengan serial
port
komputer. Operasi yang dapat
dilakukan pada K108 adalah menyalakan dan mematikan
switch serta
mendapatkan status
switch. Tiap switch K108 dapat dihubungkan ke
alat elektronik
lainnya. Dalam penelitian ini K108 dihubungkan dengan lampu, pemanas dan pendingin.
3. Serial Digital Termometer (K145)
K145 merupakan
rangkaian microcontroller elektronik
yang
digunakan untuk mengukur suhu
ruangan dan memiliki
antarmuka RS-232 untuk dihubungkan
dengan serial
port
komputer. K145 memiliki 4 buah sensor port yang
masing-
masing dapat dihubungkan dengan
sebuah sensor suhu. Operasi yang dapat dilakukan pada K145
adalah mendapatkan informasi suhu dari sensor suhu.
3.1.2 JESFramework
Pada penelitian ini akan dibuat Jini system yang
menghubungkan beberapa OSGi framework.
OSGi framework ini diimplementasikan dengan JES. Untuk keperluan tersebut
dibangun
4 buah JES framework yang berada di 4 buah
komputer yang
berbeda.
JES framework yang pertama akan
menjalankan Jini
lookup service. JES framework yang
ke dua akan dihubungkan
dengan X10 device dan JES framework yang
ke tiga dihubungkan
dengan K145 dan K108. Sedangkan
JES frameworkyang ke empat akan
digunakan sebagai
Jini client dan
menyediakan akses
pengoperasian device melalui
protokol HTTP. Penjelasan lebih
lanjut dapat dilihat pada sub bab 3.1.4 tentang skenario
sistem.
Pada 2 gambar berikut dapat dilihat
arsitektur jaringan dan
JES framework dalam
jaringan yang akan diimplementasikan.
3.1.3 Jini System
Dari 3 jenis device yang digunakan dalam
pembuatan home network system ini akan diimplementasikan sebagai
JES service yang berjalan di atas JES framework dan
menjadi Jini service yang akan
dapat diakses oleh Jini client. Jini system yang
akan dibuat terdiri dari service, client dan lookup service yang
masing-masing berjalan di atas JES
framework.
JES framework yang pertama akan menjalankan Jini lookup
service dan yang ke dua akan menjalankan
Jini service
untuk X10 device. JES framework yang
ke tiga akan menjalankan Jini service untuk K108 dan K145.
Sedangkan JESframework yang ke empat
akan berperan sebagai
Jini client dan home
portal yang
menyediakan akses kendali ke device melalui
internet.
Pada gambar berikut dapat dilihat
arsitektur Jini system yang
akan diimplementasikan dalam skripsi ini.
3.1.4 Skenario Sistem
Pada sub bab 3.1.1 telah dijelaskan ada 3 macam device yang akan digunakan. Dari 3 device
akan dibuat 5 macam alat yaitu: lampu, pemanas, pendingin, X10 device dan
termometer. Lampu,
pemanas dan pendingin merupakan
peralatan elektronik yang biasa digunakan di rumah. Lampu, pemanas
dan pendingin akan
dihubungkan ke K108. Termometer
menggunakan K145 yang
memiliki sensor suhu. Kelima alat
tersebut akan dihubungkan ke beberapa komputer yang berbeda untuk
membentuk suatu system
terdistribusi. Untuk pengembangan
sistem dibutuhkan 5 komputer, kelima komputer tersebut akan diberi
kode C01, C02, C03, C04
dan C05 untuk memudahkan penulisan. Komputer C01 digunakan sebagai
Jini lookup service. X10
device akan
terhubung ke komputer C02. Sedangkan lampu, pemanas,
pendingin dan termometer akan terhubung ke computer C03. Komputer C02 dan C03 tersebut
diinstal Java Embedded Server sebagai
OSGi framework untuk
menjalankan device manager
dan device service dari
masing-masing alat. Kedua
komputer tersebut juga berperan
sebagai penyediaservice Jini. Komputer
C04 akan berperan sebagai Jini client dan web server.
Komputer ini juga akan menyediakan antarmuka
berupa
dokumen HTML yang dapat diakses
oleh internet user melalui protocol HTTP.
Dokumen HTML ini dihasilkan olehservlet dan berisi form untuk
mengoperasikan kelima alat yaitu lampu, pemanas,
pendingin, termometer dan X10 device. Servlet yang menghasilkan
dokumen HTML tersebut akan memproses request dari user dengan menggunakan Jini client
untuk memperoleh Jini service. Komputer C02 dan C03 juga menyediakan antarmuka
berupa dokumen HTML untuk
mengkonfigurasi device yang terhubung dengan masing-masing komputer tersebut. Sedangkan komputer C05 digunakan sebagai web browser.
Secara keseluruhan sistem dibuat dengan tujuan
agar user dapat mengakses, mengkonfigurasi dan
mengoperasikan device yang berada pada lingkungan sistem terdistribusi dengan menerapkan OSGi dan Jini.
3.1.5 Application
Layer
Berdasarkan gambaran struktur dan skenarion sistem tersebut akan dilakukan pendefinisian layer (lapisan)
aplikasi. Ada 3 lapisan
dari aplikasi yang akan dibuat yaitu
terdiri dari presentation and application layer, physical
layer dan service layer. Presentation
and application layer atau
lapisan presentasi dan aplikasi merupakan lapisan yang dikembangkan
untuk pembuatan user interface yang
dapat diakses user melalui protokol HTTP dengan web browser. Service
layer atau lapisan servicemerupakan lapisan yang menjadi penghubung dan alat komunikasi antarapresentationand
application layer dan physical
layer. Physical layer atau lapisan fisik adalah peralatan fisik yang akan dikontrol
oleh service
layer.
3.2. Pengguna
Sistem
Setelah mendapatkan gambaran sistem yang akan dibangun selanjutnya dirumuskan pengguna sistem dan fungsionalitas
sistem tersebut.
Terdapat 2 tipe user yang akan menggunakan
sistem yaitu:
1. Configurator, merupakan user yang
dapat mengkonfigurasi device seperti menentukan port yang digunakan
oleh sebuah device.
2. Operator,
merupakan user yang dapat melakukan
operasi terhadap
device seperti menyalakan dan mematikan device.
3.3. Fungsionalitas
Sistem
Fungsionalitas dari sistem yang akan dibangun oleh penulis
dibagi
menjadi beberapa bagian yaitu:
1. Pengkonfigurasian device
Configurator dapat mengkonfigurasi 3 macam alat
yang telah
dijelaskan pada sub bab
3.1.1 yaitu X10 device, K108 dan K145.
·
Pengkonfigurasian X10 device, configurator dapat mengkonfigurasi port yang digunakan oleh
X10controller dan menentukan device address dari
X10 receiver.
·
Pengkonfigurasian K108 device, configurator dapat
mengkonfigurasi
port yang
digunakan oleh K108 (serial I/O switch) dan menentukan
jenis alat yang terhubung ke masing-masing switch K108. Dalam
penelitian ini ada 3 jenis alat yang
dihubungkan ke K108 yaitu lampu,
pemanas dan pendingin.
·
Pengkonfigurasian K145 device, configurator dapat
mengkonfigurasi
port yang digunakan oleh K145 (thermometer digital)
dan menentukan sensor suhu mana yang terpakai.
2. Pengoperasian device
Operator dapat
melakukan operasi terhadap device yang
terdapat
dalam sistem.
a. Pengoperasian
X10 device, operator dapat
melakukan operasi
menyalakan, mematikan X10 device dan
melakukan penjadualan
dari operasi tersebut.
b. Pengoperasian
lampu, operator dapat
melakukan operasi
menyalakan, mematikan lampu dan
melakukan penjadualan dari operasi tersebut.
c. Pengoperasian
pendingin, operator dapat
melakukan operasi
menyalakan, mematikan pendingin dan
melakukan penjadualan
dari operasi tersebut.
d. Pengoperasian
pemanas, operator dapat
melakukan operasi
menyalakan, mematikan pemanas dan
melakukan penjadualan
dari operasi tersebut.
3. Pengambilan
data waktu, operator dapat mengetahui waktu pada saat ini. Satuan waktu yang ditampilkan adalah jam, menit dan
detik
4. Pengambilan
data temperatur, operator dapat mengetahui temperature ruangan pada saat ini.
BAB IV
KESIMPULAN DAN SARAN
4.1. Kesimpulan
·
Dari penelitian dan pembuatan sistem oleh penulis,
diperoleh kesimpulan sebagai berikut:
·
Teknologi Jini dapat menghubungkan beberapa OSGi
framework denga mengimplementasikan Jini sebagai service bundle
·
OSGi framework yang diimplementasikan dengan Java Embedded
Server memudahkan manajemen aplikasi yang dipresentasikan dengan service
bundle. OSGi framework menerapkan konsep aplikasi yang dinamis, yaitu aplikasi
tidak bersifat static tetapi memiliki daur hidup ( life cycle ).
·
Kolaborasi OSGi framework dan teknologi Jini mewujudkan
konsep plug and play device yaitu sebuah device dapat dengan mudah bergabung ke
jaringan dan lepas dari jaringan tanpa perlu menghentikan sistem yang sedang
berjalan.
·
Kolaborasi OSGi framework dan teknologi Jini mewujudkan
konsep “smart device that talk each other” yaitu sebuah device dapat
berkomunikasi dengan device lainnya melalui service dari masing- masing device.
Dalam penelitian ini contohnya jika service dari timer dan service dari X10
device dijalankan maka penjadualan X10 device akan muncul.
·
OSGi framework dapat menangani device dengan
protokol-protokol berbeda satu sama lain. Dalam penelitian ini, OSGi framework
mampu menangani X10 device yang menggunakan protokol X10 dan serial device.
·
Dalam OSGi framework setiap service bundle memiliki
interface dan implementation
·
yang terpisah. Hal ini memudahkan dalam penulisan program
karena implementation dapat ditulis ulang tanpa perlu merubah interface yang
ada. Pemisahan interface dan implementation tersebut sangat bermanfaat jika
service akan digunakan oleh service lain dalam OSGi framework.
·
Device yg ada saat ini masih bersifat dumb device. Device
tidak dapat memberikan input ke sistem sehingga masih menggunakan configurator
untuk melakukan konfigurasi device secara manual.
·
Sistem ini dapat diakses dari LAN dan internet melalui
web browser apabila komputer yang digunakan untuk menjalankan HTTP server antar
muka web memiliki IP address yang dapat diakses dari LAN dan internet.
4.2. Saran
Saran-saran pengembangan dari
penelitian ini adalah:
·
Sistem dapat dikembangkan lebih lanjut untuk
menghubungkan lebih banyak
·
Device dan menggunakan protocol-protokol lain seperti
Bluetooth, uPnP dan HAVi.
·
Sistem dapat dikembangkan lebih lanjut untuk menggunakan
antarmuka berbasis extensible markup language (XML) untuk memudahkan sistem
menampilkan hasil ke user
·
dengan adanya pemisahan antara data dan visualisasi data
karena sifat XML yang memungkinkan sebuah dokumen independen terhadap
layout-nya. XML juga dapat digunakan untuk menyeragamkan format data yang akan
diproses oleh sistem.
·
Sistem dapat dikembangkan lebih lanjut untuk menggunakan
antarmuka yang lebih beragam, tidak hanya berupa dokumen HTML tetapi juga
dokumen WML dan SMS
·
execution command interface sehingga sistem selain
melalui web browser juga dapat diakses melalui wap browser dan mobile phone.
DAFTAR PUSTAKA
[Arrington, 2001] Arrington, CT. Enterprise Java with UML. John Wiley &
Sons Inc. 2001
[Avedal, 2000] Avedal, Karl et al. Professional JSP. Wrox. 2000
[Booch, 1998] Booch, Grady. James Rumbaugh and Ivar Jacobson. The
Unified Modelling Language User Guide. Addison Wesley. 1998
[Chen, 2002] Chen, Kirk. Li Gong. Programming Open Source Gatewa s with Java Embedded Server Technology. Addison Wesley. 2002
[Cooper, 1998] Cooper, James W. The Design Patterns Java Companion.
Addison Wesley. 1998
[Davidson, 1999] Davidson, James Duncan and Danny Coward. Java Servlet
Specification v2.2 Final Release. Sun Microsystem. 1999.
[Day, 2000] Day, Bill. Jini™ Connection Technology Architecture
Overview. Sun Microsystem. 2002
[Kingery, 1999] Kingery, Phil. "Digital X-10" Which One Should I Use, Part
[Knudsen, 2001] Knudsen, Jonathan. Wireless Java: Developing with Java 2,
Micro Edition. Apress. 2001
[Kumar, 2001] Kumar, Anand. White Paper: Jini Network Technology.
Advanced Tehnology Group. 2001
[Lombardo, 2002] Lombardo, John. Embedded Linux. News Riders. 2002
[Mysore, 1998] Mysore, Shivaram H. and Rinaldo Di Giorgio. Java gets
serial support with the new javax.comm package. 1998
[Newmarch, 2000] Newmarch, Jan. A Programmer’s Guide to Jini Technology.
Apress. 2000
[Perrone, 1999] Perrone, Paul J and Venkata S.R Krishna Chaganti. Jini in
the box. Embedded Systems Programming vol 12 num 12. November 1999
[Quatrani, 2000] Quatrani, Terry. Visual Modelling with Rational Rose 2000
and UML. Addison Wesley. 2000
[RationalA, 2000] Rational Software Corporation and IBM Corporation.
Rational Unified Process. 2000
[RationalB, 2000] Rational Software Corporation and IBM Corporation.
Rational Rose 2000 Help. 2000
Tidak ada komentar:
Posting Komentar