Selasa, 07 Januari 2014

Pengantar Telematika : Kolaborasi Antara OSGI Framework Dengan Teknologi JINI Pada Home Network System

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




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.    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 sebuahnetworkservice 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 rateflow 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 rateparity
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 programmerStreamdapat 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 layerPresentation
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 browserService 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
[Geisler, 2002]               Geisler, Michael. Lamp Project. 2002. http://lamp.jini.org/

[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
[Peterson, 2002]            Peterson, Jesse. X10 API. 2002. http://www.peterson.com.
[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