KAMERA PENGINTAI - Repository Amikom

advertisement
MEMBANGUN APLIKASI MOBILE “KAMERA PENGINTAI”
MENGGUNAKAN BLUETOOTH SEBAGAI MEDIA
TRANSMISI BERBASIS J2ME
Naskah Publikasi
diajukan oleh
Ali Mahfud
07.11.1587
kepada
SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER
AMIKOM
YOGYAKARTA
2011
DEVELOPING MOBILE APPLICATION "SURVEILLANCE CAMERA"
USING BLUETOOTH AS TRANSMISSION MEDIA
BASED ON J2ME
MEMBANGUN APLIKASI MOBILE “KAMERA PENGINTAI”
MENGGUNAKAN BLUETOOTH SEBAGAI MEDIA
TRANSMISI BERBASIS J2ME
Ali Mahfud
Jurusan Teknik Informatika
STMIK AMIKOM YOGYAKARTA
ABSTRACT
Surveillance camera is a technology that is designed as a security monitoring
tool. Criminal acts to be the main reason the use of surveillance cameras. The
surveillance camera has been implemented in many technologies such of CCTV and IP
cameras. Unfortunately, having these tools are very expensive. Therefore, the author
tries to give a solution to this problem by developing a mobile version of surveillance
camera.
The surveillance camera is built on Java 2 Micro Edition platform which runs on
mobile devices that support Java. The functions of this application are various such as
activities or events monitoring tools. This application implements client server approach.
One device acts as a server and the others act as a client. The client side requires cell
phone that has a camera, Bluetooth and Java MIDP 2.1 support with a fairly large internal
memory, while the server requires a personal computer.
This application is applicable while in a Bluetooth coverage area held by the
device in question (in this case mobile devices and laptops). The further the reach of the
data transmission is also influenced by the more slowly because existing medium. In the
implementation of this application is used at relatively close distances.
Keyword: J2ME, Bluetooth, Spy Camera, Surveillance Camera
1.
Pendahuluan
Handphone merupakan salah satu teknologi yang berkembang dengan pesat.
Awalnya handphone hanya dapat digunakan sebagai media komunikasi suara. Namun
seiring dengan bertambahnya kebutuhan manusia dibidang komunikasi yang diiringi
dengan kemajuan teknologi, kini handphone telah menjadi perangkat multi fungsi, selain
sebagai alat komunikasi suara, handphone juga dapat mengirimkan pesan teks berupa
SMS (Short Message Service), mengambil gambar dan video menggunakan kamera
Built-In, mengirim file menggunakan Bluetooth. Selain itu juga dapat menjalankan aplikasi
mobile sebagai media hiburan dan informasi.
Aplikasi-aplikasi mobile juga berkembang dengan pesat, karena didukung dengan
semakin berkembangnya bahasa pemrograman untuk aplikasi mobile. Salah satu bahasa
pemrograman untuk perangkat mobile yang banyak digunakan adalah J2ME (Java 2
Micro Edition) merupakan superset (bagian) dari J2SE (Java 2 Standard Edition) untuk
perangkat mikro, contohnya handphone, PDA dan sejenisnya.
Perkembangan perangkat mobile khususnya handphone sangat berpengaruh
terhadap perkembangan aplikasi mobile. Aplikasi mobile harus menyesuaikan dengan
perangkat kerasnya agar dapat terjadi sinkronisasi antara keduanya. Dampak
perkembangan tersebut telah dirasakan diberbagai bidang kehidupan kita. Salah satunya
adalah pada bidang keamanan.
Kemajuan teknologi sangat dibutuhkan dibidang keamanan. Dewasa ini kerap
terjadi tindakan kriminal di pedesaan maupun di perkotaan. Contoh kongkritnya yaitu
terjadinya tindak kriminal dalam bentuk pencurian atau perampokan di pusat-pusat
perbelanjaan dan di toko-toko. Bahkan sering juga terjadi dirumah-rumah penduduk.
Untuk mengurangi tindak kriminal tersebut dibutuhkan teknologi pemantau kejadian.
CCTV dan IP camera merupakan salah satu teknologi yang dirancang untuk memantau
kejadian. Akan tetapi permasalahannya, kalangan ekonomi menengah kebawah tidak
dapat menjangkau alat tersebut karena harganya yang relatif mahal.
Berdasarkan latar belakang diatas, maka penulis mengembangkan teknologi
mobile dengan membangun aplikasi kamera pengintai yang dapat digunakan sebagai
media pemantau ruangan dengan bahasa pemrograman Java 2 Micro Edition. Dengan
aplikasi ini, pengguna dapat melihat kejadian ditempat yang diinginkan menggunakan
handphone.
2.
Landasan Teori
2.1
Teknologi Java
Java menurut definisi sun adalah nama untuk sekumpulan teknologi untuk
membuat dan menjalankan perangkat lunak pada komputer standalone ataupun pada
lingkungan jaringan. Java adalah bahasa pemograman tingkat tinggi yang berorientasi
objek, diedarkan oleh Sun Microsystem1 pada awal tahun 1996. Sejarah awal Java
berawal di tahun 1991 ketika satu group insinyur-insinyur Sun, yang dipimpin oleh Patrick
Naughton dan James Gosling, ingin mendesain sebuah bahasa pemograman komputer
yang berukuran kecil yang dapat digunakan untuk peralatan elektronika konsumen
seperti switchboxes TV kabel. Dikarenakan peralatan-peralatan ini menggunakan
konsumsi daya dan memory yang rendah, maka bahasa pemograman tersebut harus
berukuran sangat kecil. Juga karena setiap vendor menggunakan CPU (Central
Processing Unit) yang berbeda, maka bahasa tersebut harus bersifat multiplatform, tidak
terikat hanya pada satu arsitektur (Architecture Neutral). Proyek ini diberi nama Green
Project.
2.2
J2ME (Java 2 Micro Edition)
2.2.1
Pengertian J2ME
J2ME adalah satu set spesifikasi dan teknologi yang fokus kepada perangkat
konsumen. Perangkat ini memiliki jumlah memori yang terbatas, menghabiskan sedikit
daya dari baterei, layar yang kecil dan bandwith jaringan yang rendah.
2.2.2
Profile
Sebuah profile memberikan library tambahan untuk suatu kelas tertentu pada
sebuah perangkat. Profile-profile menyediakan user interface(UI) API, persistence,
messaging library, dan sebagainya.
Satu set library tambahan atau package tambahan menyediakan kemampuan
program tambahan. Pemasukan package ini ke dalam perangkat J2ME dapat berubahubah karena tergantung pada kemampuan sebuah perangkat. Sebagai contoh, beberapa
perangkat MIDP tidak memiliki Bluetooth built-in, sehingga Bluetooth API tidak disediakan
dalam perangkat ini.
J2ME mempunyai beberapa profil antara lain :
1. Mobile Information Device Profile (MIDP)
2. Foundation Profile (FP)
3. Personal Profile
4. Personal Digital Assistance (PDA)
2.2.3
Configuration
Suatu configuration menggambarkan fitur minimal dari lingkungan lengkap java
runtime. untuk menjamin kemampuan portabilitas dan interoperabilitas optimal diantara
berbagai macam perangkat yang dibatasi sumber dayanya (memory, prosesor, koneksi
yang dibatasi), configuration tidak menggambarkan fitur tambahan. Suatu configuration
J2ME menggambarkan suatu komplemen yang minimum dari teknologi java. adalah
merupakan tugas profile-profile untuk menggambarkan tambahan library untuk suatu
kategori perangkat tertentu.
Configuration menggambarkan:
a. Subset bahasa pemrograman JAVA
b. Kemampuan Java Virtual Machine (JVM)
c.
Core platform libraries
d. Fitur sekuriti dan jaringan
J2ME
mempunyai
dua
konfigurasi
yaitu
Connected
Limited
Device
Configuration (CLDC) dan Connected Device Configuration (CDC).
2.2.4
MMAPI (Mobile Media Application Programming Interface)
Mobile Media API adalah paket tambahan yang mendukung aplikasi multimedia
di peralatan J2ME. Ini adalah standar Java yang ditetapkan oleh Java Community
Process (JCP) dalam JSR 135. Standar ini didesain fleksibel jalan di beberapa protokol
dan format. Contoh penerapannya tidak harus dengan protokol HTTP, Real-Time
Transport Protokol (RTP), media dengan format MP3, MIDI atau MPEG-4 saja.
Mobile Media API (MMAPI) memungkinkan kita untuk menciptakan nada,
mengakses kamera, memutar serta merekam audio dan video dari device yang
kompatibel.
2.2.5
Arsitektur MMAPI
Gambar 2.1 Arsitektur MMAPI
Manager menciptakan Player dari DataSource. Manager memiliki method untuk
menciptakan Player dari media locator (lokasi URL), DataSource, dan InputStream.
DataSource menangani mekanisme pengambilan data dari sumber yang telah ada.
Sumber yang ada bisa dari file JAR atau dari jaringan (via HTTP), record dari sebuah
RMS, koneksi streaming dari server, atau dari sumber lain. Player tidak perlu mengatur
tentang darimana data datang dan data mana yang diambil, yang perlu dilakukan oleh
Player adalah membaca data dari DataSource, kemudian menampilkan atau memutar
media ke device output.
Siklus Player terdiri dari lima keadaan yaitu: UNREALIZED, REALIZED,
PREFETCHED, STARTED dan CLOSE. Menghasilkan enam transisi keadaan yaitu:
realize(), prefetch(), start(), stop(), deallocate(), close().
2.3
2.3.1
Bluetooth
Sejarah Bluetooth
Bluetooth adalah nama orang, yaitu Harold Bluetooth (dalam bahasa Inggris)
atau Harald Blatand (bahasa Denmark), raja Viking Denmark di tahun 940-985, yang
berhasil melanjutkan perjuangan ayahnya raja Gorm Dek Gammel, mempersatukan
Denmark dengan Norwegia.
Nama Bluetooth mengesankan akan gambaran gigi seseorang yang berwarna
biru atau butut. Konotasi demikian tidaklah jauh keliru, karena menurut cerita mitologi,
Raja Viking Denmark itu konon berambut dan berkulit gelap. Ia gemar makan blueberries
atau arbei, maka layak bila gigi Blatand menjadi kebiru-biruan atau Blue tooth.
Nama
Bluetooth
diberikan
untuk
teknologi
wireless
ini
oleh
Telefonaktiebolagest LM Ericsson, perusahaan besar telepon mobile Swedia, ketika
pertama kali dikembangkan pada pertengahan tahun 1990.
2.3.2
Pembagian Kelas Bluetooth
Perangkat Bluetooth umumnya dapat saling berkomunikasi pada dalam
jangkauan 1 – 100 m. Jarak maksimal dapat dihasilkan tergantung dari daya output yang
digunakan dalam modul Bluetooth . Modul Bluetooth disini biasanya berupa satu IC chip
komunikasi khusus yang telah di implementasikan protokol Bluetooth. Terdapat tiga kelas
Bluetooth berdasarkan daya output dari jarak jangkauannya seperti pada table dibawah
ini:
Tabel 2.1 Klasisfikasi Daya Pancar Radio Bluetooth
Kelas
Daya
1
2
3
2.4
Daya output maksimum [mW]
<100 (20dBm)
1 - 2,5 (4 dBm)
1 mw (0dBm)
Jangkauan /Range[meter]
100
10
0,1 - 1
Netbeans IDE 6.9.1
NetBeans IDE (integrated development environment) adalah IDE open source
yang ditulis sepenuhnya dengan bahasa pemrograman Java menggunakan platform
NetBeans. NetBeans IDE dapat berjalan pada Windows, Mac, Linux, dan Solaris yang
mendukung pengembangan semua tipe aplikasi Java (J2SE, web, EJB, dan aplikasi
mobile). Fitur lainnya adalah sistem proyek berbasis Ant, kontrol versi, dan refactoring.
Netbeans bersifat modularitas, maksudnya adalah fungsi IDE di sediakan oleh
modul-modul. Tiap modul menyediakan fungsi yang didefinisikan dengan baik, seperti
dukungan untuk bahasa pemrograman Java, editing, atau dukungan bagi CVS. NetBeans
memuat semua modul yang diperlukan dalam pengembangan Java dalam sekali
download, memungkinkan pengguna untuk memulai bekerja sesegera mungkin. Modul-
modul juga mengijinkan NetBeans untuk bisa dikembangkan.
3.
3.1
Analisa Dan Perancangan
Analisa Kebutuhan Sistem
Analisis kebutuhan sistem dilakukan untuk mengetahui apa saja yang dibutuhkan
pada pembuatan aplikasi Bluescm yang meliputi proses pembuatan, kebutuhan pada
tahap pengujian dan implementasi.
Analisis yang perlu dilakukan yaitu analisis
kebutuhan perangkat keras dan analisis kebutuhan perangkat lunak.
3.2
Kebutuhan Perangkat Keras
1. Notebook
Pembuatan aplikasi Bluescm ini membutuhkan perangkat komputer untuk
menuliskan kode program, baik kode program untuk aplikasi client maupun kode program
untuk aplikasi server. Perangkat komputer yang digunakan oleh penulis yaitu notebook
acer aspire 4710 beserta kelengkapannya dengan spesifikasi sebagai berikut:
Tabel 3.1 Spesifikasi Notebook Acer Aspire 4710
Perangkat Keras
Prosesor
Motherboard
RAM
Display
Hardisk
Optical Drive
Keyboard
Mouse
Network
Spesifikasi
Intel Core Duo T2450 @2,00 GHz
Acer Volvi (U2E1)
Visipro DDR2 2048 Mbytes
Mobile Intel® 945 Express Chipset Family, 14,1”
@ 1280x800
Seagate ST9250315AS ATA Device (SATA) 250
GB
Optiarc DVD RW AD-7560A ATA Device
Embedded Keyboard
Logitech Value Optical
- Intel(R) PRO/Wireless 3945ABG dan
- Broadcom Netlink Gigabit Ethernet
2.Handphone
Perangkat handphone yang digunakan untuk menjalankan aplikasi ini adalah
handphone yang minimal memiliki dukungan java dengan profile MIDP 2.0 dan
konfigurasi CLDC 1.1. Adapun perangkat handphone yang digunakan pada pembuatan
aplikasi Bluescm ini adalah Nokia 5320 Xpress Music
dengan spesifikasi sebagai
berikut:
Tabel 3.2 Spesifikasi Handphone Nokia 5320 Xpress Music
Nokia 5320 Xpress Music
Berat
Memory Internal
Dimensi
Kamera
Layar
Java
Bluetooth
3.3
Spesifikasi
90 g
140 MB
108 x 46 x 15 mm, 67 cc
2 MP, 1600x1200 pixels, LED Flash
TFT 16 M warna
MIDP 2.1
v2.0 A2DP
Kebutuhan Perangkat Lunak
Perangkat lunak yang digunakan dalam perancangan aplikasi ini adalah sebagai
berikut:
Tabel 3.3 Kebutuhan Perangkat Lunak
Perangkat Lunak
Windows 7 Ultimate
Keterangan
System operasi yang digunakan dalam
Netbeans 6.9.1
pembuatan aplikasi ini.
Software
IDE
dengan
Visual Paradigm for UML 7.2
pemrograman java
Software ini digunakan untuk pembuatan
Enterprise Edition
GUI Design Studio 4.1
UML diagram
Digunakan untuk perancangan antarmuka
bahasa
3.4
3.4.1
Perancangan Sistem
Use Case Diagram
Use Case Diagram menggambarkan proses yang terjadi didalam aplikasi ini.
Selain itu, hubungan antara proses satu dengan yang lain, begitu juga hubungan antara
pengguna dengan proses yang terdapat didalam aplikasi. Use menjelaskan secara naratif
bagaimana sistem yang akan digunakan menggunakan skenario untuk menjelaskan
setiap aktifitas yang mungkin terjadi.
Gambar 3.1 Use Case Diagram
3.4.2
Activity Diagram
Activity Diagram menggambarkan aliran kejadian suatu aplikasi. Pada diagram
ini digambarkan aliran kerja suatu proses menggunakan text yang mudah dibaca oleh
pengguna. Rancangan activity diagram menggambarkan diagram aktifitas dua pengguna
aplikasi yaitu client dan server. Komponen utamanya adalah state dan message. Pada
perancangan ini dibuat dua activity diagram agar alur program lebih mudah untuk
dipahami.
Gambar 3.2 Activity Diagram Client
Gambar 3.3 Activity Diagram Server
3.4.3
Class Diagram
Fungsi Class Diagram adalah untuk menjelaskan tipe dari sebuah sistem
dan hubungan-hubungannya (relationships) yang dibagi menjadi tiga bagian yaitu class,
attribute yang dimiliki juga method yang akan dijalankan. Rancangan class diagram dari
aplikasi ini dijelaskan pada gambar berikut :
1.
Class Diagram Client
Gambar 3.4 Class Diagram Client
2.
Class Diagram Server
Gambar 3.5 Class Diagram Server
3.4.4
Sequence Diagram
1. Sequence Diagram Client
Gambar 3.6 Sequence Diagram Client
2. Sequence Diagram Server
Gambar 3.7 Sequence Diagram server
4.
Implementasi Dan Pembahasan
Bluescm adalah aplikasi kamera pengintai untuk yang berjalan pada handphone
java dengan kebutuhan memori yang cukup besar. Dengan memanfaatkan Bluetooth
sebagai media transmisi gambar, aplikasi ini mampu mengirimkan gambar ke aplikasi
server yang berjalan pada komputer. Persyaratan yang harus dipenuhi untuk
menjalankan aplikasi Bluescm yaitu Bluetooth dan kamera serta memori internal yang
cukup besar. Besar memori internal handphone yang digunakan pada penelitian ini
adalah 140MB.
Aplikasi Bluescm dibuat dalam dua bagian, yaitu client dan server. Pada bagian
client dirancang sebagai kamera pengintai. Perancangannya menggunakan
J2ME.
Sedangkan pada bagian server dirancang menggunakan J2SE (bersifat desktop
application) dan diimplementasikan sebagai monitor untuk melihat apa yang telah
ditangkap oleh kamera handphone. Agar aplikasi kamera pengintai pada Bluescm client
dapat dijalankan, aplikasi Bluescm server harus dijalankan terlebih dahulu. Karena
keduanya saling berhubungan sehingga tidak dapat dijalankan secara sepihak.
5.
Kesimpulan
Dari uraian pada bab-bab yang telah dibahas sebelumnya, penulis dapat
memperoleh kesimpulan sebagai berikut:
1. Aplikasi Bluescm berfungsi sebagai alat untuk melihat atau memantau keadaan
yang sedang terjadi disebuah ruangan.
2. Bluescm membuat perangkat Bluetooth pada handphone yang biasanya hanya
digunakan sebagai alat transfer data oleh kebanyakan orang menjadi lebih
bermanfaat.
DAFTAR PUSTAKA
Hariyanto, Bambang. 2007. Esensi-esensi Bahasa Pemrograman JAVA. Informatika:
Bandung
Nugroho, Adi, 2009. Rekayasa Perangkat Lunak Menggunakan UML dan JAVA. Andi:
Yogyakarta
Shalahuddin, M., A.S, Rosa,. 2010. Pemrograman J2ME, Belajar Cepat Pemrograman
Perangkat Telekomunikasi Mobile. Informatika: Bandung
Discovering Bluetooth device in Java ME,
http://wiki.forum.nokia.com/index.php/CS001211Discovering_Bluetooth_device_in_Java_ME diakses tanggal 21 Februari 2011
Java Overview,
http://www.oracle.com/technetwork/java/overview-142076.html diakses pada 28
Oktober 2010
MMAPI Overview,
http://developers.sun.com/mobility/midp/articles/mmapioverview diakses
tanggal 9 Januari 2011
Teknologi, arsitektur dan protokol Bluetooth,
http://www.andisun.com/jurnal/overview-teknologi-arsitektur-dan-protokolbluetooth diakses tanggal 26 Oktober 2010
Download