Disusun Oleh :
Disusun Oleh :
ii
LEMBAR PENGESAHAN
Judul : Sistem Monitoring Kamera Pengawas Menggunakan Web Camera
Melalui Jaringan Komputer
Nama : Qoit Zudhi Ahyari
Konsentrasi : Teknik Telekomunikasi
Pembimbing : Alif Subardono, S.T., M.Eng.
TIM PENGUJI
Ketua : ......................................................
Ir. Sri Lestari, M.T.
Sekretaris : ......................................................
Nur Sulistyawati, S.T., M.T.
Penguji I : ......................................................
Ir. Rizal
Penguji II : ......................................................
Unan Yusmaniar Oktiawati, S.T., M.Sc
iii
MOTTO
“Maha Suci Allah Yang di tangan-Nyalah segala kerajaan, dan Dia Maha Kuasa
atas segala sesuatu, Yang menjadikan mati dan hidup, supaya Dia menguji kamu,
siapa di antara kamu yang lebih baik amalnya. Dan Dia Maha Perkasa lagi
Maha Pengampun”
(Al Mulk 1-2)
"Either lead or follow but please don't block the road for those who would move
forward"
-Phill Karn, KA9Q-
iv
HALAMAN PERSEMBAHAN
Kupersembahkan kepada
Allah SWT,
Ibu, Almarhum Bapak
Kedua Kakakku
Komunitas Opensource
v
ABSTRAKSI
Sistem operasi server yang digunakan adalah Linux, dengan web server
Apache, database MySQL dan streaming server Motion. Seluruhnya dapat
diperoleh secara bebas melalui internet melalui website-website pengembangnya.
Dari pengujian alat, diketahui bahwa sistem monitoring ini dapat diakses
dengan baik melalui web browser populer seperti Mozilla Firefox, Opera dan
Microsoft Internet Explorer menggunakan Microsoft Windows maupun Linux.
Selain itu penggunaan sumberdaya komputer server cukup efisien. Sehingga
server yang digunakan dapat menggunakan komputer sekelas Pentium 4 dengan
RAM 512MB yang harganya kian terjangkau.
vi
PRAKATA
laporan.
Laporan proyek akhir ini disusun sebagai salah satu syarat yang harus
Universitas Gadjah Mada. Dalam laporan proyek akhir ini, penulis mengambil
terlepas dari dukungan dari berbagai pihak. Untuk itu pada kesempatan ini penulis
2. Ibu tercinta yang selalu memberikan cinta, kasih, dan do'a di setiap
akhir ini.
vii
5. Bapak ibu dosen Diploma Teknik Elektro FT UGM, yang telah
praktikum dulu.
8. Mas Beny dan Mas Toni, kalian adalah kakak terhebat. Thank's buat
malam.
dan Riza membantu sie perkap, dan teman-teman yang telah memberi
14. Semua pihak yang telah membantu secara langsung maupun tidak
viii
Apabila dalam penyusunan proyek akhir ini banyak terjadi kesalahan dan
senang hati penulis akan menerima saran dan kritik untuk perbaikan kerja penulis
Penulis
ix
DAFTAR ISI
MOTTO ............................................................................................................... iv
ABSTRAKSI ........................................................................................................ vi
x
2.4.1. Motor Stepper ......................................................................... 12
xi
4.4.1. Kompatibilitas ......................................................................... 95
xii
DAFTAR GAMBAR
xiii
Gambar 3.15 Program putaran motor searah jarum jam (clockwise) ................ 39
Gambar 3.16 Program putaran motor berlawanan arah jarum jam (counter
clockwise) ..................................................................................... 39
Gambar 3.25 Pembatasan fungsi kendali ketika tidak terdapat session ............ 58
xiv
Gambar 4.2 Kode Program ccw.c .................................................................... 68
Gambar 4.4 Program cw mengirimkan data ke port paralel, tidak terdapat error
....................................................................................................... 69
Gambar 4.5 Program ccw gagal mengirimkan data ke port paralel ................ 69
Gambar 4.6 Program ccw mengirimkan data ke port paralel, tidak terdapat
error ............................................................................................ 69
Gambar 4.18 Webcam telah aktif dan sedang melakukan streaming ................ 76
xv
Gambar 4.23 Kode fungsi filelist() .................................................................... 79
Gambar 4.43 Tampilan pada browser Internet Explorer 8 tanpa Java Applet . . 97
Gambar 4.44 Tampilan pada browser Internet Explorer 8 dengan Java Applet
..................................................................................................... 98
xvi
Gambar 4.45 Aplikasi Process Explorer pada client ........................................ 99
xvii
DAFTAR TABEL
xviii
BAB I
PENDAHULUAN
Salah satu teknologi yang banyak diadaptasi beberapa tahun terakhir adalah video
kejadian yang sedang terjadi menggunakan video player atau web browser.
Saat ini aplikasi video streaming sering kita temui berupa layanan
pemantau kemacetan jalan raya di kota-kota besar, siaran televisi atau radio
adanya aksi teror beberapa tahun terakhir ini, kebutuhan akan teknologi video
streaming di kota-kota besar meningkat cukup tajam. Namun biaya yang harus
sederhana sehingga akses informasi dapat dilakukan dengan mudah melalui video
1
2
2. Dapat mengetahui prinsip dan cara kerja dari alat yang dibuat sehingga
1.3 Permasalahan
diaplikasikan, belum lagi pembangunan teknologi ini dengan kamera CCTV dan
Permasalahan yang harus diselesaikan pada tugas akhir ini dibatasi pada
hal-hal berikut :
sebagai berikut.
dirancang sudah sesuai bekerja dengan baik sesuai yang diharapkan atau
belum
BAB I PENDAHULUAN
Membahas tentang judul tugas akhir, latar belakang, maksud dan tujuan,
Membahas tentang hasil pengujian dari alat yang telah dibuat, apakah
BAB V PENUTUP
Membahas tentang kesimpulan dan saran, sehingga tugas akhir ini dapat
LANDASAN TEORI
Sistem video mointoring yang dibangun ini adalah sebagai prototipe dari
Secara keseluruhan sistem terdiri atas tiga bagian utama, yaitu sistem
kendali, streaming server, dan user interface. Sistem kendali tersusun atas sistem
5
6
komputer dapat menampilkan suara dan video melalui komputer, akan tetapi
Media streaming baru berkembang pada akhir 1990an hingga awal tahun
popularitas internet.
membutuhkan media penyimpanan dengan kapasitas yang sangat besar. Tentu hal
ini membutuhkan biaya yang tinggi sehingga sulit diaplikasikan oleh perusahaan
kecil menengah.
oleh beberapa hal, antara lain lama durasi dan bit rate.
length×bit rate
storage size=
8×1024 .......................(Rumus 2.1)
Misal satu jam video direkam dengan bit rate 300 kbit/s dengan ukuran
melakukan streaming.
streaming yang digunakan. Misal dengan protokol unicast, jika terdapat 1000
Atau setara dengan 300 Mbit/s, atau dalam satu jam akan membutuhkan
bandwidth kurang lebih 100 Gigabit. Untuk ukuran internet di Indonesia dengan
dengan cermat.
antara lain :
efisien dan simpel. Akan tetapi pada protokol ini tidak ada mekanisme
mekanisme yang menjamin tiap bit data akan diterima dengan baik, jika
terdapat paket data yang rusak atau tidak diterima, maka client akan
meminta ulang paket tersebut. Client dapat meminimalkan efek ini dengan
server untuk tiap penerima. Unicast biasa digunakan pada sebagian besar
koneksi internet, tetapi protokol ini kurang baik ketika banyak pengguna
boleh jadi sulit untuk dikerjakan bergantung dari tipe dan infrastruktur
playback. Akan tetapi masalah ini dapat dikurangi dengan adanya caching
Sistem kendali dari sistem video monitoring ini berupa program aplikasi
berurutan agar dapat berputar. Sehingga pengaturan kecepatan dan arah putaran
stepper dan rangkaian penguat arus dari port paralel komputer. Arus keluaran dari
12
port paralel komputer terlalu lemah sehingga tidak dapat menggerakkan motor
pulsa-pulsa digital. Prinsp kerja dari motor stepper hampir sama dengan
motor listrik pada umumnya. Motor stepper tersusun atas magnet dan
dibangkitkan sama, maka kedua magnet akan tolak menolak. Sedangkan jika
berurutan pada tiap pin motor stepper. Pulsa yang tidak berurutan
motor stepper jenis unipolar dan bipolar. Pada pengerjaan sistem monitoring
ini motor stepper yang digunakan adalah jenis motor stepper jenis unipolar
berputar dua arah tanpa harus membalik arus yang dialirkan ke dalam motor.
Hal ini dimungkinkan karena motor stepper unipolar bekerja dengan pulsa
connector dan pin connector coil end yang terhubung ke port data. Untuk
pin common connector dihubungkan ke sumber tegangan (12 Volt) dan pin
umumnya memiliki 5 pin. 1 pin adalah pin common dan 4 lainnya adalah
pin coil end yang berfungsi sebagai masukan data berupa tegangan 0 Volt
atau 12 Volt.
stepper bipolar dapat berputar dua arah namun dengan cara yang berbeda
motor stepper bipolar harus dilakukan dengan membalik arus masukan dari
motor stepper.
pin yang terhubung ke sumber tegangan, motor ini tidak memiliki pin
lebih rumit.
opensource. Baik dari sistem operasi server dan software streaming merupakan
software yang program dan kode sumber programnya tersedia secara bebas dan
dapat diperoleh dari internet dan digunakan secara bebas, baik untuk penggunaan
dibutuhkan web server untuk keperluan user interface. Web server yang
digunakan adalah Apache. Semua software tersebut berlisensi GNU GPL (GNU
2.5.1. Linux
sampai ke TCP/IP.
bebas di bawah lisensi GNU General Public License (GPL), yang berarti
juga source code Linux tersedia. Itulah yang membuat Linux sangat spesial.
membenahi segala masalah yang ada. Setiap orang yang tertarik bisa
1. Lisensi
sesuai kebutuhan.
mempublikasikannya.
2. Sejarah
publik.
3. Pengguna
4. Kompatibilitas
komputer.
6. Pemanfaatan memori
7. Skalabilias
20
8. Stabilitas
dunia.
9. Layanan jaringan
10. Keamanan
12. Scripting
suatu file pada suatu saat, untuk melacak program pada saat
komputer desktop.
tertua. Pertama kali dikembangkan pada tahun 1992 oleh Parick Volkerding
dengan menggunakan basis distribusi Linux SLS. Slackware hingga saat ini
masih aktif dikembangkan dengan filosofi akan dirilis pada saat benar-benar
siap, sehingga dalam Slackware tidak terdapat jadwal rilis reguler seperti
Linux yang dikenal cukup stabil karena hanya memaketkan software yang
player.
Dari hasil pencarian dan beberapa kali uji coba aplikasi video
streaming yang ada, software video streaming Motion-lah yang paling sesuai
player. Motion juga dapat menyimpan hasil tangkapan kamera ke dalam file
CCTV. Kamera web memiliki harga yang relatif lebih murah dibandingkan
kamera CCTV atau IP Camera. Kamera web ini digunakan untuk mengambil
produsen yang tidak menyediakan driver Linux dari hardware yang mereka
sistem operasi Linux. Web kamera Creative VF0470 sudah dikenali dengan baik
Fitur Keterangan
Sensor VGA Sensor
Resolusi Gambar
1.3 Megapixel 1280 x 960 (software*)
Maksimum
Resolusi Video
800 x 600@15fps (software*)
Maksimum
Manual, dapat disesuaikan melalui ring
Fokus
fokus
Interface USB 1.1 (USB 2.0 Compatible)
*Software disertakan dalam versi Windows
melalui tampilan dalam web browser. Dalam user interface ini pengguna dapat
menggunakan web browser manapun, aplikasi web browser ini telah tersedia
beragam jenis dan versi dalam hampir semua sistem operasi standar sehingga
sistem monitoring dengan kamera web ini dapat diakses melalui berbagai jenis
PEMBUATAN ALAT
jaringan komputer yang dibangun ini terdiri dari tiga bagian, sistem penggerak,
software kendali. Sistem penggerak dan kendali ini berfungsi untuk memutar
kamera web kearah yang diinginkan, sehingga cakupan tangkapan kamera lebih
luas.
Motor stepper ini terdiri dari empat buah coil (kumparan), masing masing
magnet jika coil dialiri arus listrik. Coil tersebut dapat bergantian ataupun secara
28
29
bersamaan.
Konfigurasi dari kaki motor stepper jenis unipolar adalah sebagai berikut.
Salah satu ujung dari masing-masing coil dihubungkan menjadi satu yang
disebut sebagai kaki common connector, sedangkan ujung-ujung yang lain yang
terhubung dengan sumber arus +12V. Sedangkan kaki coil connector lainnya
kaki coil connector 3 harus dihubungkan dengan 0V, sedangkan kaki lain
Untuk gerakan berputar, maka coil harus bekerja secara berurutan. Untuk
dan seterusnya. Sedangkan untuk berputar ke kiri maka urutan aliran arus listrik
dari coil 4 – 1 – 2 – 3 – 4.
yang bersumber dari port paralel komputer (PC). Sehingga untuk menggerakkan
motor secara berputar, data yang dikirimkan ke port paralel diatur agar berubah
32
Akan tetapi motor stepper tidak bisa secara langsung dihubungkan dengan
arus dari port paralel. Hal ini dikarenakan arus keluaran port paralel tidak mampu
digital dari port paralel yang memiliki tegangan keluaran +5V, agar dapat
(tegangan +5V). Data akan dinegasikan menjadi 0 (tegangan 0V), sehingga arus
dari VCC (+12V) akan mengalir ke pin keluaran IC ULN2003A pada pin data
yang bersesuaian. Sehingga diperoleh tegangan keluaran +12V pada pin keluaran
secara berurutan sehingga motor berputar searah jarum jam atau berlawanan arah
jarum jam. Alamat data port paralel pada komputer PC pada umumnya adalah
0x378. Untuk mengetahui alamat port paralel (parport0) tersebut dapat dilihat
parport0” pada terminal atau console. Sehingga akan diperoleh keterangan alamat
Untuk coil yang akan diset ON data yang dikirim berupa data 1, sedangkan
coil yang diset OFF dikrimkan data 0. Data-data tersebut berupa data biner dengan
adalah data 4 bit dengan hanya satu bit saja yang bernilai 1 sedangkan bit lainnya
bernilai 0, sehingga diperoleh data yang sesuai adalah 0x01, 0x02, 0x04, 0x08.
35
Urutan pengiriman data tersebut disesuaikan dengan arah putar motor yang
dikehendaki. Misalkan untuk arah putaran searah putaran jarum jam (clockwise)
dalam fungsi delay, sehingga dapat dipanggil ulang oleh program utama. Fungsi
Mulai
Var i=integer
i=1 Gagal koneksi 0x378
i=1
Kirimkan data 0x01 ke port paralel; delay
Kirimkan data 0x02 ke port paralel; delay
Kirimkan data 0x04 ke port paralel; delay
Kirimkan data 0x08 ke port paralel; delay
i=i+1
i=i+1
i<=10000000 ?
i<=2 ?
Selesai Selesai
Gambar 3.13 Flowchart program utama Gambar 3.14 Flowchart fungsi delay
39
Berikut ini kode program penggerak motor stepper dalam bahasa pemro
Gambar 3.16 Kode program putaran motor berlawanan arah jarum jam
(counterlockwise)
komponen tersebut baik motor, rangkaian pengendali motor, dan dudukan kamera
Kerangka alat dibuat dari bahan alumunium dengan maksud supaya alat
tersebut ringan, tahan karat, dan dapat menghantarkan panas yang dihasilkan oleh
Pembahasan pembuatan sistem video streaming kali ini tidak akan menjelaskan
3.2.1. Motion
melakukan monitroring satu atau lebih kamera. Software ini juga dapat
http://sourceforge.net/projects/motion.
akhyariz@indrianix:~/temp/motion-3.2.11$ ./configure
...
*******************************
Configure status
motion 3.2.11
*******************************
OS : Linux
pthread Support: Yes
jpeg Support: Yes
V4L included: Yes
V4L2 supported: Yes
FFmpeg Support: Yes
MYSQL Support: Yes
PostgreSQL Support: No
masing.
# /usr/local/etc/motion.conf
#
# This config file was generated by motion 3.2.11
############################################################
# Daemon
############################################################
#File to store the process ID, also called pid file. (default: not defined)
process_id_file /var/run/motion/motion.pid
############################################################
# Basic Setup Mode
############################################################
###########################################################
# Capture device options
############################################################
# instead.
#
# Values :
# V4L2_PIX_FMT_SN9C10X : 0 'S910'
# V4L2_PIX_FMT_SBGGR8 : 1 'BA81'
# V4L2_PIX_FMT_MJPEG : 2 'MJPEG'
# V4L2_PIX_FMT_JPEG : 3 'JPEG'
# V4L2_PIX_FMT_RGB24 : 4 'RGB3'
# V4L2_PIX_FMT_UYVY : 5 'UYVY'
# V4L2_PIX_FMT_YUYV : 6 'YUYV'
# V4L2_PIX_FMT_YUV422P : 7 '422P'
# V4L2_PIX_FMT_YUV420 : 8 'YU12'
v4l2_palette 8
# The video norm to use (only for video capture and TV tuner cards)
# Values: 0 (PAL), 1 (NTSC), 2 (SECAM), 3 (PAL NC no colour). Default: 0 (PAL)
norm 0
# The frequency to set the tuner to (kHz) (only for TV tuner cards) (default: 0)
frequency 0
# Rotate image this number of degrees. The rotation affects all saved images as
# well as mpeg movies. Valid values: 0 (default = no rotation), 90, 180 and 270.
rotate 0
# Minimum time in seconds between capturing picture frames from the camera.
# Default: 0 = disabled - the capture rate is given by the camera framerate.
# This option is used when you want to capture images at a rate lower than 2 per second.
minimum_frame_time 0
# URL to use if you are using a network camera, size will be autodetected (incl http:// ftp:// or
file:///)
# Must be a URL that returns single jpeg pictures or a raw mjpeg stream. Default: Not defined
; netcam_url value
# Username and password for network camera (only if required). Default: not defined
# Syntax is user:password
; netcam_userpass value
# The setting for keep-alive of network socket, should improve performance on compatible net
cameras.
# 1.0: The historical implementation using HTTP/1.0, closing the socket after each http request.
# keep_alive: Use HTTP/1.0 requests with keep alive header to reuse the same connection.
# 1.1: Use HTTP/1.1 requests that support keep alive as default.
# Default: 1.0
; netcam_http 1.0
# Set less strict jpeg checks for network cameras with a poor/buggy firmware.
# Default: off
netcam_tolerant_check off
############################################################
# Motion Detection Settings:
############################################################
# Despeckle motion image using (e)rode or (d)ilate or (l)abel (Default: not defined)
# Recommended value is EedDl. Any combination (and number of) of E, e, d, and D is valid.
# (l)abeling must only be used once and the 'l' must be the last letter.
# Comment out to disable
despeckle EedDl
# Detect motion in predefined areas (1 - 9). Areas are numbered like that: 1 2 3
# A script (on_area_detected) is started immediately when motion is 456
# detected in one of the given areas, but only once during an event. 789
# One or more areas can be specified with this option. (Default: not defined)
; area_detect value
# Ignore sudden massive light intensity changes given as a percentage of the picture
# area that changed intensity. Valid range: 0 - 100 , default: 0 = disabled
lightswitch 0
# Picture frames must contain motion at least the specified number of frames
# in a row before they are detected as true motion. At the default of 1, all
# motion is detected. Valid range: 1 to thousands, recommended 1-5
minimum_motion_frames 1
# Gap is the seconds of no motion detection that triggers the end of an event
# An event is defined as a series of motion images taken within a short timeframe.
# Recommended value is 60 seconds (Default). The value 0 is allowed and disables
# events causing all Motion to be written to one single mpeg file and no pre_capture.
gap 0
############################################################
# Image File Output
############################################################
# Output pictures with only the pixels moving object (ghost images) (default: off)
output_motion off
# The quality (in percent) to be used by the jpeg compression (default: 75)
quality 100
############################################################
# FFMPEG related options
# Film (mpeg) file output, and deinterlacing of the video input
# The options movie_filename and timelapse_filename are also used
# by the ffmpeg feature
############################################################
############################################################
# Snapshots (Traditional Periodic Webcam File Output)
############################################################
############################################################
# Text Display
# %Y = year, %m = month, %d = date,
# %H = hour, %M = minute, %S = second, %T = HH:MM:SS,
# %v = event, %q = frame number, %t = thread (camera) number,
# %D = changed pixels, %N = noise level, \n = new line,
# %i and %J = width and height of motion area,
# %K and %L = X and Y coordinates of motion center
# %C = value defined by text_event - do not use with text_event!
# You can put quotation marks around the text to allow
# leading spaces
############################################################
# Draw a user defined text on the images using same options as C function strftime(3)
# Default: Not defined = no text
# Text is placed in lower left corner
; text_left value
# This option defines the value of the special event conversion specifier %C
# You can use any conversion specifier in this option except %C. Date and time
# values are from the timestamp of the first image in the current event.
# Default: %Y%m%d%H%M%S
# The idea is that %C can be used filenames and text_left/right for creating
# a unique identifier for each event.
text_event %Y%m%d%H%M%S
############################################################
# Target Directories and filenames For Images And Films
# For the options snapshot_, jpeg_, mpeg_ and timelapse_filename
# you can use conversion specifiers
# %Y = year, %m = month, %d = date,
# %H = hour, %M = minute, %S = second,
# %v = event, %q = frame number, %t = thread (camera) number,
# %D = changed pixels, %N = noise level,
# %i and %J = width and height of motion area,
# %K and %L = X and Y coordinates of motion center
# %C = value defined by text_event
# Quotation marks round string are allowed.
############################################################
# File path for motion triggered images (jpeg or ppm) relative to target_dir
# Default: %v-%Y%m%d%H%M%S-%q
# Default value is equivalent to legacy oldlayout option
# For Motion 3.0 compatible mode choose: %Y/%m/%d/%H/%M/%S-%q
# File extension .jpg or .ppm is automatically added so do not include this
# Set to 'preview' together with best-preview feature enables special naming
# convention for preview shots. See motion guide for details
jpeg_filename %v-%Y%m%d%H%M%S-%q
# File path for motion triggered ffmpeg films (mpeg) relative to target_dir
# Default: %v-%Y%m%d%H%M%S
51
############################################################
# Live Webcam Server
############################################################
# The mini-http server listens to this port for requests (default: 0 = disabled)
webcam_port 18081
############################################################
# HTTP Based Control
############################################################
# Output for http server, select off to choose raw text plain (default: on)
control_html_output on
############################################################
# External Commands, Warnings and Logging:
# You can use conversion specifiers for the on_xxxx commands
# %Y = year, %m = month, %d = date,
# %H = hour, %M = minute, %S = second,
# %v = event, %q = frame number, %t = thread (camera) number,
# %D = changed pixels, %N = noise level,
# %i and %J = width and height of motion area,
52
##############################################################
# Thread config files - One for each camera.
# Except if only one camera - You only need this config file.
# If you have more than one camera you MUST define one thread
# config file for each camera in addition to this config file.
##############################################################
; thread /usr/local/etc/thread1.conf
Based Control.
############################################################
# HTTP Based Control
############################################################
# Output for http server, select off to choose raw text plain (default: on)
control_html_output on
adalah username:password.
agar dapat diakses dengan menggunakan web browser dari berbagai sistem
sistem monitoring dapat ditambahkan dengan mudah pada file snews.php yang
tersebut.
server dan path direktori sNews akan dipisah dan variabel baru
halaman administrasi.
56
pada proses upload atau pada fungsi files(). Ekstensi file yang
fungsi ini berfungsi untuk menu navigasi halaman. Pada baris 412-
atau dengan kata lain tidak terdapat session, dan ketika user telah
adalah kondisi saat terdapat request fungsi left, right, start, kill dan
a) Fungsi webcam()
melakukan pengecekan terhadap port yang digunakan Motion db('port'), jika port
Selain untuk menampilkan gambar hasil dari tangkapan webcam, fungsi ini
juga digunakan untuk menampilkan menu kendali webcam dan Motion. Menu
menu pengaturan putaran webcam. Menu ini hanya dapat digunakan oleh user
b) Fungsi left()
program ccw yang bertugas mengirimkan data ke port paralel sehingga rangkaian
c) Fungsi right()
Fungsi ini merupakan kebalikan dari fungsi left(), fungsi ini akan
kanan.
d) Fungsi start()
(/dev/video0), jika ada maka fungsi akan menjalankan program motion untuk
menghidupkan server Motion. Namun jika tidak terdapat webcam, maka akan
e) Fungsi kill()
Fungsi ini berfungsi untuk mematikan server Motion. Ketika fungsi ini
dipanggil, maka sistem operasi akan menjalankan perintah “sudo killall motion”
f) Fungsi restart()
akan mengecek apakah server Motion sedang berajalan, jika server motion
kembali server Motion. Namun jika ternyata server tidak berjalan, maka akan
Seluruh fungsi tersebut kemudian dipanggil dalam file index.php, file inilah yang
63
akan mengatur tampilan dari antarmuka sistem monitoring. Berikut ini adalah tata
index.php.
Logo/Title
breadcrumbs(); searchform();
Menu webcam();
pages();
extra();
center();
Footer
Gambar 3.33 Tata letak halaman antarmuka
64
PENGUJIAN ALAT
web.
Tujuan pengujian ini adalah untuk membuktikan apakah alat yang telah dibuat
lebih lanjut.
parameter yang ingin diketahui dari alat tersebut. Data yang diperoleh dari metode
65
66
Dalam penelitian ini dipilih dua macam metode pengujian, yaitu pengujian
Pengujian fungsional alat dibagi menjadi dua bagian, bagian back-end dan
bagian front-end. Bagian back-end meliputi fungsi sistem penggerak dan sistem
a. Sistem penggerak
Gambar 4.4 Program cw mengirimkan data ke port paralel, tidak terdapat error
Gambar 4.6 Progam ccw mengirimkan data ke port paralel, tidak terdapat error
b. Sistem streaming
membukanya.
a. Login
acak 1-9 yang akan berubah setiap halaman login di-reload. Jika
b. Mengaktifkan webcam
c. Menggerakkan webcam
/usr/local/sbin/cw.
d. Merestart webcam
webcam sedang tidak aktif. Namun jika webcam aktif, maka akan
Salah satu fitur yang dimiliki dari alat ini adalah kemampuan
pengaturan file snews.php dapat diatur tipe dan nama file yang
79
manager.
Untuk tipe file .avi hasil dari rekaman kamera diatur agar dapat
Fitur lain yang cukup penting adalah fitur penghapusan file video
g. Menonaktifkan webcam
Fitur standar yang wajib dimiliki dari alat ini yaitu berupa fitur
82
fungsi perekaman video juga akan berhenti. Tanpa fitur ini, maka
menu “Kill” pada bagian menu kendali. Ketika menu ini diakses,
h. Logout.
keluar.
suatu hal sangat penting. Hal ini dikarenakan penanganan kesalahan yang
tidak baik dapat menyebabkan suatu alat atau aplikasi berhenti bekerja,
a. Login
b. Mengaktifkan webcam
akan bisa diaktifkan jika sudah terpasang dan dikenali oleh sistem.
86
Ketika tidak terdapat session atau tidak terdapat admin yang login
URL yang diketikkan dalam address bar web browser. Untuk itu
c. Menggerakkan webcam
oleh pengguna yang tidak login, namun URL masih dapat diakses
d. Merestart webcam
dengan notifikasi.
90
Fitur file manager hanya dapat diakses melalui menu pada halaman
f. Menonaktifkan webcam
keadaan non aktif. Akan tetapi URL masih dapat diakses melalui
address bar web browser. Namun akses kepada URL tersebut akan
g. Logout.
akan logout. Namun jika URL tersebut diakses ketika tidak terdapat
pada address bar, yang bisa menghasilkan jawaban error 404 dari
web server. Error 404 adalah pesan kesalahan bahwa URL yang
diminta tersebut tidak dimiliki oleh web server. Dalam sistem ini
server.
94
Pengujian kinerja diukur ketika alat bekerja dan diakses oleh satu client.
Pengukuran dilakukan baik pada server maupun client dari segi penggunaan
proses.
dibatasi hanya pada aplikasi web server Apache, streaming server Motion serta
sever MySQL. Sedangkan pada komputer client, pengukuran dibatasi pada web
browser yang digunakan untuk mengakses. Browser yang digunakan adalah versi
4.4.1. Kompatibilitas
web browser dengan mesin Gecko yang digunakan pada varian Mozilla
sehingga hanya terlihat antarmuka tanpa gambar hasil streaming. Hal ini
Gambar 4.43 Tampilan pada browser Internet Explorer 8 tanpa Java Applet
Gambar 4.44 Tampilan pada browser Internet Explorer 8 dengan Java Applet
(http://www.sysinternals.com)
99
Dari hasil pengukuran kerja CPU pada server web Apache, server
100
berikut.
sebagai berikut.
sebaga berikut.
penyimpanan dapat diketahui dengan melihat ukurran dari file video yang
perekaman video dalam durasi selama 100 detik. Kemudian, hasil dari
Dari hasil perekaman selama 100 detik, diketahui besar dari ukuran
file video yang dihasilkan adalah sebesar 5.103.210 Bytes atau 5,1 MB.
Time 10s 20s 30s 40s 50s 60s 70s 80s 90s 100s
BW
976,49 970,03 971,57 976,54 965,53 971,6 964,96 987,43 982,06 985,49
(kbps)
102
5.1 Kesimpulan
dan Opera.
96MB.
104
105
5.2 Saran
monitoring.
1. Joe Follansbee, 2004, Get Streaming! Quick Steps to Delivering Audio and
Video Online, Focal Press, United States of America
3. Ali Zaki dam SmitDev Community, 2008, AJAX untuk Pemula, Elexmedia
Komputindo, Jakarta
8. Wikipedia, http://en.wikipedia.org/wiki/Streaming_Media/
106