Archive for October, 2009

Membangun Sistem CCTV dari USB WebCam Sederhana dgn Menggunakan Motion

October 15, 2009

Requirement:
- PC min Pentium 3 RAM 512MB, HD min 4Gb
- USB WebCam

Recommended OS:
- Linux Ubuntu

Tahapan:
- Install OS Linux Ubuntu pada PC/Laptop dengan paket yg minimalis
- Tambahkan instalasi: motion, xawtv
- Update OS dan aplikasi2 yang ada, supaya versi yg digunakan adalah terbaru
- Pasang USB Webcam ke PC
- Pastikan webcam terdetek di Linux dengan cara:
—–> lsusb -> seharusnya muncul nama webcam nya di sana
kemudian
—–> ls -altr /dev/video* -> seharusnya kl cuman 1 webcam akan ada /dev/video0
kl sampe gak nongol, artinya webcam kamu belum disupport ama si Linux.
- Lakukan Mapping Webcam supaya memiliki penamaan yang statik.
Mengapa ? Kl kamu punya 2 atau lebih webcam dan kamu sering cabut/pasang atau restart komputer, maka urutan /dev/videoX akan berubah2 …
Cara supaya statik …
Buat sebuah file di /etc/udev/rules … contoh namanya: 80-webcam.rules
isinya:
SUBSYSTEM==”video4linux”, KERNEL==”video*”, SYSFS{idVendor}==”046d”, SYSFS{idProduct}==”08d9″, MODE=”666″, SYMLINK=”LogiteK”
SUBSYSTEM==”video4linux”, KERNEL==”video*”, SYSFS{idVendor}==”0ac8″, SYSFS{idProduct}==”c40a”, MODE=”666″, SYMLINK=”A4Tek”
—-> idVendor dan idProduct bisa diambil dari “lsusb”
# lsusb
Bus 001 Device 003: ID 046d:08d9 Logitech, Inc. QuickCam IM/Connect
Bus 005 Device 003: ID 0ac8:c40a Z-Star Microelectronics Corp.
Sehingga untuk mengakses kamera Logitech … cukup dengan menuliskan /dev/LogiteK.
—–> untuk 2 kamera yg sama tipenya, maka perlu menambahkan kolom, seperti ini:
ATTRS{serial}==”685BEE40″ … utk membedakan yg 1 dengan lainnya.
- Untuk melakukan testing Kamera … silahkan gunakan command v4lctl
—-> v4lctl -c /dev/LogiteK snap jpeg 640×480 test.jpg
Lalu silahkan lihat hasil snapshot nya … atau gunakan aplikasi seperti Cheese / xawtv
- Berikutnya konfigurasi utama Motion: /etc/motion/motion.conf
Cukup diisi seperti ini:
daemon on

process_id_file /var/run/motion.pid
setup_mode off

quiet on

thread /etc/motion/LogiteK.conf

Baris thread menunjukkan config file utk per kamera
- Berikutnya adalah konfigurasi per kamera: /etc/motion/LogiteK.conf

videodevice /dev/LogiteK
input 8
v4l2_palette 3
text_left LogiteK
height=480
width=640
webcam_motion on
webcam_localhost off
text_right %Y-%m-%d\n%T-%q
locate on
auto_brightness off
threshold 6000
target_dir /tmp/motion
webcam_port 8081

Nah dari sini dah cukup … silahkan dijalankan aplikasi motion nya …
Dan silahkan akses si webcam dari Browser ke http://[[IP]]:8081/
Contoh: http://127.0.0.1:8081/

Untuk menambahkan kamera, tinggal tambahkan baris di /etc/motion/motion.conf dan buat lah 1 file utk kamera baru yg menyerupai contoh di atas, jangan lupa diganti “webcam_port” nya supaya tidak saling timpa.

Panduan lengkap file konfigurasi Motion bisa dibaca di sini.

Aplikasi ini cukup kompatibel dengan Web Browser di Komputer apa saja … tetapi tidak kompatibel dengan Browser di BlackBerry ;) )

Mau yg kompatibel? Pake donk MasSaint Cam :p
Semoga bermanfaat!

Perbandingan Solusi CCTV Konvensional vs MasSaint Cam

October 15, 2009

Tertarik utk memiliki sistem CCTV?
Tidak perlu investasi untuk membeli perangkat2 CCTV jika Anda sudah memiliki:
- PC nganggur (min Pentium3 dan RAM 512MB)
- USB WebCAM
* atau Anda sudah memilik kamera CCTV dan juga TV Tuner … bisa digunakan juga

Atau kalau Anda tidak memiliki PC dan Kamera, maka seharusnya solusi ini bisa menekan harga dibanding sistem CCTV murmer yang ada.

Perbandingan Harga:

Solusi CCTV konvensional:
- Kamera CCTV sekitar 150-200rb yang murah meriah, kl yg kualitasnya lumayan ok dan plus InfraRed (NightVision) sekitar mulai 400rb
- Kabel Video per meter sekitar 6rb
- Kabel Listrik per meter sekitar 5rb (karena per kamera menggunakan adaptor)
- DVR, alat perekam utk 4 kamera… biasanya yg sudah ada fitur internetnya sekitar 2 jt (tanpa HD)
- HD 250GB sekitar 500rb

Solusi WebCam ala Dicky (MasSaint Cam):
- USB Webcam, merk yang murmer hasil OK adalah A4Tech PK-750MJ sekitar 165-200rb tergantung toko, sayang nya di Indonesia tidak bergaransi.
Untuk merk jaminan mutu dengan kualitas sedikit lebih baik, maka saya anjurkan utk menggunakan Logitech QuickCam E3500 sekitar 290-320rb.
Apa yang menjadi kriteria pemilihan USB WebCam:
> paling penting bisa terdeteksi dan digunakan oleh Linux ;) )
> paling penting berikutnya adalah cari yang memiliki fitur Auto Exposure / Auto Image Correction / RightLight istilahnya Logitech / Low/Dim Light Enhancement.
Anjuran ini untuk menjaga kualitas gambar saja, supaya OK.
- 1 PC nganggur minimal Pentium 3 dengan RAM 512MB.
Saat ini sistem WebCam ala Dicky atau MasSaint Cam ini sudah dicoba di Axioo Pico DJM 616 (Intel Atom + 1GB RAM + 160GB HD) dan Asus EEEpc 4G (Intel Celeron + 512MB RAM + 4GB HD)
Panduan membeli baru:
> Gunakan Netbook paling murah yang sudah ada webcam nya, karena biasanya webcam dari netbook kualitasnya di atas USB WebCam <400-500rb.
> MiniPC dengan prosesor Intel Atom
Alasan:
> Netbook -> low energi consumption, include webcam, portable, kecil, ada batere, builtin wifi
> MiniPC -> low energi consumption (belum ada monitor, wifi dan batere), relatif kecil
- Kabel USB extension 5 meter sekitar 25rb

Contoh Design Sistem:
KASUS: Camera sistem dengan 2 Kamera dengan jarak <10 meter dari pusat sistem

CCTV Konvensional:
Cost:
- 1 DVR sekitar 2jt + HD 250Gb => 2.5jt
- 2 Kamera CCTV murmer => 2x 200rb => 400rb
- Kabel Video + Listrik => 2x 10m x (10rb) => 200rb (asumsi jarak terjauh listrik sepanjang kabel video)
Jika dikerjakan oleh teknisi dari penjual biasanya dikenakan biaya 200rb per titik, atau bisa dikerjakan sendiri … tp hrs membuat jalur listrik sendiri, biasanya harus manjat ke loteng :p
- Untuk jaringan biasanya harus tarik kabel jaringan lagi … asumsi kabel 20m x 5rb => 100rb
Total CCTV: 3,2 jt

MasSaint Cam:
Cost:
- Netbook kisaran 3,5-4jt … Paling murah ambil Netbook Quantel 3jt -> udah ada 1 webcam
- Tambah 1 Webcam A4Tech … 200rb
- Kabel USB 2x 5m => 2x 25rb = 50rb
Total MasSaint Cam: 3,25 jt

Harga bisa terbilang hampir sama … malah solusi webcam ini kl dihitung dari nol, lebih mahal daripada CCTV konvensional.

Tetapi coba dilihat faktor2 lainnya:
1. Kamera CCTV sangat tergantung terhadap listrik, dan masing2 kamera harus memiliki power source tersendiri.
USB Webcam menggunakan power dari si PC/Laptop.
Selain lebih irit listrik, ada jaminan lebih terjaga ketersediaan power nya.
2. Fitur Internet dari DVR memiliki beberapa kekurangan (terutama yang seharga 2-3jt):
- hanya bisa diakses dari Internet Explorer dengan menginstall ActiveX khusus terlebih dahulu
-> sehingga tidak dapat diakses dari MacOS, Linux atau bahkan Handphone
-> pengalaman saya, fitur jaringan dari DVR ini kurang stabil … setelah bbrp lama UP, dia akan mati … hanya web interfacenya saja yg mati … fitur recording CCTV tetap berjalan dengan baik.
3. DVR juga tergantung listrik, tidak memiliki batere Backup. Namun masalah ini bisa kita atasi dengan menambahkan UPS.
4. Jika sudah tidak digunakan, Netbook dan webcam masih bisa digunakan utk keperluan lain ;)

Adapun kekurangan dari sistem WebCam ini:
1. Sangat tergantung dengan pencahayaan ruangan, kecuali kita menggunakan Webcam dengan fasilitas IR atau lampu LED
-> Bisa juga digantikan dgn Kamera CCTV + TV Tuner => 400rb + 200rb => 600rb per titik
2. Panjang/Jarak USB WebCam dengan PC/Netbook tidak bisa terlalu jauh … hasil pengujian saya sampai saat ini baru mencapai 10 meter. Belum sempat mencoba lebih dari 10m. Berbeda dengan CCTV yg cenderung bisa sangat jauh dgn tetap terjaga kualitasnya.
3. Kl mau coba build sendiri … repotnya harus install ini itu dan konfig ini itu ;) )
*tutorial akan dibuat di tulisan yg lain*

Kelebihan dari MasSaint Cam dari sisi Software:
1. Bisa diakses dari BlackBerry atau Handphone dengan WebBrowser apa saja
Software asli/dasar nya adalah Motion, tetapi tidak dapat diakses dari BlackBerry.
2. Refresh data per 10 detik, bisa diatur … pertimbangan 10 detik adalah supaya tidak terlalu cepat dan sering loading image.
3. Ada fitur Follow … apabila Anda punya lebih dari 1 kamera, maka fitur Follow ini akan otomatis menampilkan kamera yang menangkap pergerakan terakhir.
4. Konsep Archiving / Arsip dalam bentuk FLV/MP4 dibagi per jam dengan mode FastForward, sehingga berukuran kecil dan dapat dipantau dengan mudah dan cepat.
5. Email Alert … setiap terjadi pergerakan akan mengirimkan notifikasi ke alamat email Anda beserta Image hasil capture pergerakan tersebut.
6. Aplikasi telah dituning sehingga tidak terlalu menghabiskan space HD dan bandwidth yang besar.
7. Netbook dapat dipergunakan sebagai fungsi server lainnya seperti: Proxy, Firewall, dan lain2.

Kl Anda tertarik dengan solusi MasSaint Cam, bisa hubungi saya di dicky@wahyupurnomo.com … ;) )
Harga spesial selama masa promosi … :D

Auto Power-Up di Linux (Studi Kasus Axioo Pico DJM616 + Ubuntu Jolicloud)

October 14, 2009

Fungsi ini mungkin tidak diperlukan bagi kebanyakan orang … tapi bagi saya ini sangat penting.

Dikarenakan fungsi Pico-ku skrg lebih menjadi server dibandingkan netbook, maka diperlukan kondisi yg harus selalu menyala … biarpun disengaja ada yg mematikan, harus nyala lagi …

Nah berhub ini pengetahuan yg baru utk sy sendiri … gak salahnya dishare jg … sapa tau ada yg butuh.
Yg paling penting adalah terinstallnya tools utk ACPI.

Untuk mengecek status, silahkan cek file:
cat /proc/driver/rtc
rtc_time : 13:22:40
rtc_date : 2009-10-14
alrm_time : 13:15:45
alrm_date : ****-10-14
alarm_IRQ : no
alrm_pending : no
24hr : yes
periodic_IRQ : no
update_IRQ : no
HPET_emulated : yes
DST_enable : no
periodic_freq : 1024
batt_status : okay

Perhatikan baris alrm_time dan alrm_date … apabila alrm_date menunjukkan seperti *****-10-14, artinya alarm diset pada masa lampau sehingga diabaikan oleh sistem.

Cara untuk melakukan setting jadwal auto power-up:
echo 0 > /sys/class/rtc/rtc0/wakealarm
echo `date '+%s' -d '+ 7 hours 3 minutes'` > /sys/class/rtc/rtc0/wakealarm

Baris pertama utk membersihkan setting yang pernah ada sebelumnya … teknisnya di-reset dulu :p
Baris kedua adalah penentuan kapan si komputer dijadwalkan untuk menyala …

Di contoh ini saya menambahkan “+7 jam dan 3 menit” … dikarenakan setting timezone saya UTC +7, sehingga kl saya cuman tulis “+3 minutes” … schedule yg disimpan masih dalam waktu lampau … dan baru tepat jika saya tambahkan “+7 hours 3 minutes” …

Nah untuk masalah “3 minutes” … Anda harus mengetahui waktu yg dibutuhkan bagi si laptop/PC untuk melakukan shutdown … dalam kasus Jolicloud di Pico, butuh waktu sekitar 1.5-2 menit utk total shutdown.

Sehingga saya berikan jeda 3 menit supaya schedule tidak terlalu cepat … nantinya malah diabaikan jg.
Idealnya sih kisaran 5-10 menit.

Untuk memastikan schedule telah terpasang baik:
cat /proc/driver/rtc
rtc_time : 13:44:15
rtc_date : 2009-10-14
alrm_time : 13:47:13
alrm_date : 2009-10-14
alarm_IRQ : yes
alrm_pending : no
24hr : yes
periodic_IRQ : no
update_IRQ : no
HPET_emulated : yes
DST_enable : no
periodic_freq : 1024
batt_status : okay

Supaya terjaga “tetap” menyala … maka 2 baris script di atas bisa ditambahkan ke cronjob …
Semoga bermanfaat ;)

Mengakali Caching Image (atau data lain) utk Proxy, Terutama dari Henpon BlackBerry

October 6, 2009

Pernahkah kamu mengalami loading website/foto dr sebuah website yang seharusnya sudah berubah tapi masih tetap sama? Terutama website yg menggunakan metode automatic refresh per sekian detik.

Hal ini biasa terjadi disebabkan koneksi yang mengakses melalui PROXY server, yang menggunakan data yg sudah tersedia di server tanpa harus melakukan koneksi / request ulang ke sebuah website secara terus menerus. Jadinya yg tampak cuman hasil request pertama saja … ato yg sudah tersedia di server utk nama file yg sama dari sebuah situs.

Nah dari sudut pandang web programmer, hal ini agak sedikit ngeselin …
Berikut adalah contoh kasus dan cara mengakali nya …

Kasus:
Saya memiliki Aplikasi Monitoring CCTV di Rumah yang saya modifikasi hingga dapat diakses dari Handphone atau semua jenis Graphical Browser dengan metode “automatic refresh image” -> Sehingga dari BlackBerry cukup menembak ke sebuah URL yang berisi satu atau beberapa image dari kamera CCTV … yang direfresh per 10 atau 20 detik.
Metode ini tidak memerlukan Javascript ataupun Plugins apa pun, makanya sangat kompatibel dengan Web Browser apa saja termasuk di Henpon2 yang sederhana. (utk WAP pun tinggal modifikasi sedikit).

Masalahnya:
Saya dan istri saya ingin mengakses Aplikasi ini dari Blackberry karena dari BB kita tidak peduli dengan berapa kali dia refresh dan jumlah data yang dikirim (alias bayar GPRS).
Tetapi masalahnya … semua koneksi browser Blackberry harus melewati proxy nya milik RIM, yang kl Anda perhatikan … proxy RIM melakukan caching cukup efektif ;) )
Kita diharuskan mengklik menu “Refresh” untuk mendapatkan Image terbaru … biarpun kadang gak ke-refresh jg.

Contoh HTML yang diakses oleh BlackBerry (sebelum diakali):

WebCam for Mobile

Perhatikan baris:

Bagian ini lah yang tidak ter-refresh

Sekarang buatlah file PHP (image.php) seperti ini:

Lalu modifikasi file HTML sebelumnya menjadi:

WebCam for Mobile

Tadaaaa …. Sekarang BlackBerry pun bisa menampilkan image dalam kondisi terupdate ;)
Semoga bermanfaat …

Follow

Get every new post delivered to your Inbox.

Join 32 other followers