Sistem Monitoring Kamera Pengawas Menggunakan Web Camera Melalui Jaringan Komputer

download Sistem Monitoring Kamera Pengawas Menggunakan Web Camera Melalui Jaringan Komputer

of 124

Transcript of Sistem Monitoring Kamera Pengawas Menggunakan Web Camera Melalui Jaringan Komputer

LAPORAN PROYEK AKHIR

SISTEM MONITORING KAMERA PENGAWAS MENGGUNAKAN WEB CAMERA MELALUI JARINGAN KOMPUTER

Disusun Oleh : Qoit Zudhi Ahyari NIM: 05/188841/NT/11022

PROGRAM DIPLOMA TEKNIK ELEKTRO FAKULTAS TEKNIK UNIVERSITAS GADJAH MADA YOGYAKARTA 2010

LAPORAN PROYEK AKHIR

SISTEM MONITORING KAMERA PENGAWAS MENGGUNAKAN WEB CAMERA MELALUI JARINGAN KOMPUTER

Diajukan untuk Memenuhi Salah Satu Syarat dalam Menyelesaikan Studi di Program Diploma Teknik Elektro Fakultas Teknik Universitas Gadjah Mada Yogyakarta

Disusun Oleh : Qoit Zudhi Ahyari NIM: 05/188841/NT/11022

PROGRAM DIPLOMA TEKNIK ELEKTRO FAKULTAS TEKNIK UNIVERSITAS GADJAH MADA YOGYAKARTA 2010

ii

LEMBAR PENGESAHANJudul : Sistem Monitoring Kamera Pengawas Menggunakan Web Camera Melalui Jaringan Komputer Nama : Qoit Zudhi Ahyari Konsentrasi : Teknik Telekomunikasi Pembimbing : Alif Subardono, S.T., M.Eng. Sudah disetujui oleh Progam Diploma Teknik Elektro, Fakultas Teknik, Universitas Gadjah Mada, sebagai bagian dari syarat kelulusan untuk memperoleh gelar Ahli Madya (A.Md.)

Ketua Program Diploma

: Ir. Lukman Subekti, M.T. NIP. 196210301993031002

Pembimbing PA TIM PENGUJI Ketua

: Alif Subardono, S.T., M.Eng. NIP. 197402102002121001

: ...................................................... 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)

Mudahkanlah jangan dipersulit, gembirakanlah jangan dibuat lari -Hadits-

"Either lead or follow but please don't block the road for those who would move forward" -Phill Karn, KA9Q-

If Microsoft makes software for Linux, it means we won -doh lupa dari siapa-

iv

HALAMAN PERSEMBAHAN

Kupersembahkan kepada Allah SWT, Ibu, Almarhum Bapak Kedua Kakakku Komunitas Opensource

v

ABSTRAKSI

Sistem Monitoring Kamera Pengawas Menggunakan Web Camera Melalui Jaringan Komputer

Sistem monitoring kamera pengawas menggunakan web camera melalui jaringan komputer ini ide dasarnya adalah dari maraknya penggunaan CCTV dan IP Camera seiring dengan meningkatnya kasus terorisme dan kemanan di tanah air. Dikarenakan untuk mendapatkan CCTV dan IP Camera relatif tidak mudah dibandingkan web kamera baik dari ketersediaan di pasar maupun dari segi harga. Sistem monitoring kamera pengawas menggunakan web camera ini mengadaptasi dari IP Camera atau CCTV yang biasa digunakan sebagai alat pengawasan. Sistem ini dirancang agar dapat bekerja pada berbagai browser sehingga sistem ini menjadi sistem yang tidak memiliki ketergantungan terhadap sistem operasi tertentu. Sistem monitoring kamera pengawas ini dibangun seluruhnya menggunakan perangkat lunak bebas (Free Software) sehingga dapat digunakan dan dikembangkan secara bebas bahkan diperbolahkan untuk mendistribusikan ulang. 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. Selain itu penggunaan fitur AJAX dalam antarmuka dapat mempercepat respon alat terhadap instruksi kendali yang diberikan. Sistem monitoring ini kamera pengawas ini juga dapat merekam video hasil dari streaming tanpa batasan waktu dengan memanfaatkan kapasitas penyimpanan hardisk pada server. 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

Alhamdulillahirobbil 'alamiin. Atas rahmat, hidayah dan ni'mat dari Allah SWT, penulis dapat menyelesaikan pengerjaan proyek akhir beserta penyusunan laporan. Laporan proyek akhir ini disusun sebagai salah satu syarat yang harus dipenuhi untuk menempuh ujian kelulusan program diploma Teknik Elektro Universitas Gadjah Mada. Dalam laporan proyek akhir ini, penulis mengambil pembahasan mengenai SISTEM MONITORING KAMERA PENGAWAS MENGGUNAKAN WEB CAMERA MELALUI JARINGAN KOMPUTER. Keberhasilan penulis untuk menyelesaikan proyek akhir ini tidak dapat terlepas dari dukungan dari berbagai pihak. Untuk itu pada kesempatan ini penulis mengucapkan terima kasih: 1. Allah SWT, sumber kekuatan. 2. Ibu tercinta yang selalu memberikan cinta, kasih, dan do'a di setiap sholat malamnya. Almarhum bapak yang menjadi inspirasi dan motivasi dalam menapaki langkah kehidupan. 3. Bapak Ir. Lukman Subekti, M.T., selaku Ketua Program Diploma Teknik Elektro Universitas Gadjah Mada Yogyakarta. 4. Bapak Alif Subardono S.T., M.Eng. selaku dosen pembimbing yang telah membimbing dan mengarahkan penulis dalam menyusun tugas akhir ini.

vii

5. Bapak ibu dosen Diploma Teknik Elektro FT UGM, yang telah memberikan bimbingan dan pengarahan selama kuliah. 6. Laboran serta seluruh staf dan karyawan Program Diploma Teknik Elektro Universitas Gadjah Mada. 7. Teman-teman Diploma Teknik Elektro UGM 2005 yang telah memberikan dukungan dan kebersamaan selama kuliah dan praktikum dulu. 8. Mas Beny dan Mas Toni, kalian adalah kakak terhebat. Thank's buat pinjaman laptopnya juga bantuan desain kerangka alatnya. 9. Saudara seperjuangan di Keluarga Muslim Alumni -Mushthofa-, Zenni, Tomo, Radit, dkk yang senantiasa mendorong untuk segera menyelesaikan study ini. Tomo dan Radit harus cepet nyusul! 10. Riza, Sarah, Sasa, Danti, Muna, dan rekan-rekan di Sketsa Yogyakarta, terima kasih atas pengertiannya. 11. Adik-adik binaan di SMAN 7 Yogyakarta. 12. Istri tercinta -Slackware Linux-, yang setia membersamai siangmalam. 13. Spesial untuk sahabat-sahabat yang sudah membantu pelaksanaan sidang pendadaran, Sarah dan Zaza membantu sie konsumsi, Tomo dan Riza membantu sie perkap, dan teman-teman yang telah memberi dukungan dan do'a. 14. Semua pihak yang telah membantu secara langsung maupun tidak langsung dalam penyelesaian penyusunan laporan proyek akhir ini.

viii

Apabila dalam penyusunan proyek akhir ini banyak terjadi kesalahan dan kekurangan, penulis mohon maaf yang sebesar-besarnya. Selanjutnya, dengan senang hati penulis akan menerima saran dan kritik untuk perbaikan kerja penulis pada masa yang akan datang. Akhirnya, semoga alat ini bermanfaat. Wallahu a'lam bish showab.

Yogyakarta, Maret 2010

Penulis

ix

DAFTAR ISI

HALAMAN JUDUL ............................................................................................. i HALAMAN PENGESAHAN ............................................................................. iii MOTTO ............................................................................................................... iv HALAMAN PERSEMBAHAN ........................................................................... v ABSTRAKSI ........................................................................................................ vi PRAKATA .......................................................................................................... vii DAFTAR ISI ......................................................................................................... x DAFTAR GAMBAR ......................................................................................... xiii DAFTAR TABEL ............................................................................................ xviii BAB I PENDAHULUAN ..................................................................................... 1 1.1 1.2 1.3 1.4 1.5 1.6 Latar Belakang ..................................................................................... 1 Maksud dan Tujuan .............................................................................. 2 Permasalahan ........................................................................................ 2 Batasan Masalah ................................................................................... 2 Metode Pengumpulan Data .................................................................. 3 Sistematika Penulisan Laporan ............................................................ 3

BAB II LANDASAN TEORI .............................................................................. 5 2.1 2.2 2.3 2.4 Sistem Video Monitoring ..................................................................... 5 Perkembangan Video Streaming .......................................................... 5 Sistem Kendali ................................................................................... 11 Sistem Penggerak ............................................................................... 11

x

2.4.1. Motor Stepper ......................................................................... 12 2.4.2. Motor Stepper Unipolar .......................................................... 13 2.4.3. Motor Stepper Bipolar ............................................................ 13 2.5 Streaming Server................................................................................. 15 2.5.1. Linux ...................................................................................... 15 2.5.2. Slackware Linux ..................................................................... 23 2.5.3. Software Streaming Server ..................................................... 23 2.5.4. Web Server ............................................................................. 24 2.6 2.7 Kamera Web ....................................................................................... 25 User Interface ..................................................................................... 26

BAB III PEMBUATAN ALAT .......................................................................... 28 3.1 3.2 Sistem Penggerak dan Kendali ........................................................... 28 Sistem Video Streaming ..................................................................... 40 3.2.1. 3.3 Motion ................................................................................... 41

Sistem Antarmuka Pengguna ............................................................. 53

BAB IV PENGUJIAN ALAT ............................................................................ 65 4.1 4.2 4.3 Kebutuhan Alat ................................................................................... 65 Metode Pengujian ............................................................................... 65 Pengujian Fungsional ......................................................................... 66 4.3.1. Pengujian back-end ................................................................. 66 4.3.2. Pengujian front-end ................................................................. 71 4.3.3. Penanganan Kesalahan ............................................................ 84 4.4 Pengujian Kinerja ............................................................................... 95

xi

4.4.1. Kompatibilitas ......................................................................... 95 4.4.2. Penggunaan Prosesor .............................................................. 98 4.4.3. Penggunaan RAM ................................................................. 100 4.4.4. Penggunaan Media Penyimpanan (Hard Disk) ..................... 101 4.4.5. Penggunaan Bandwidth ........................................................ 101 4.4.6. Delay Streaming ................................................................... 102 4.4.7. Putaran Kamera ..................................................................... 103 BAB V KESIMPULAN DAN SARAN ........................................................... 104 5.1 5.2 Kesimpulan ...................................................................................... 104 Saran ................................................................................................. 105

DAFTAR PUSTAKA......................................................................................... 106 LAMPIRAN ...................................................................................................... 107

xii

DAFTAR GAMBAR

Gambar 2.1 Gambar 2.2 Gambar 2.3 Gambar 2.4 Gambar 2.5 Gambar 2.6 Gambar 2.7 Gambar 3.1 Gambar 3.2 Gambar 3.3 Gambar 3.4 Gambar 3.5 Gambar 3.6 Gambar 3.7 Gambar 3.8 Gambar 3.9

RTSP dan RTP ............................................................................... 8 Unicast ........................................................................................... 9 Multicast ...................................................................................... 10 Peer-to-Peer .................................................................................. 11 H-Bridge ...................................................................................... 14 H-Bridge MOSFET Transistor ..................................................... 15 Kamera Web Creative VF0470 .................................................... 25 Susunan kumparan motor stepper unipolar ................................. 29 Posisi netral .................................................................................. 30 Langkah pertama .......................................................................... 30 Langkah kedua ............................................................................. 31 Langkah ketiga ............................................................................. 31 Konfigurasi pin IC ULN2003A ................................................... 32 Rangkaian Kendali Motor ............................................................ 33 Jalur data port paralel ................................................................... 34 Posisi netral .................................................................................. 35

Gambar 3.10 Langkah pertama .......................................................................... 36 Gambar 3.11 Langkah kedua ............................................................................. 36 Gambar 3.12 Langkah ketiga ............................................................................. 37 Gambar 3.13 Flowchart program utama ............................................................ 38 Gambar 3.14 Flowchart program fungsi delay .................................................. 38

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.17 Tampak Samping ......................................................................... 40 Gambar 3.18 Tampak Depan ............................................................................. 40 Gambar 3.19 Kerangka Lengkap ....................................................................... 40 Gambar 3.20 sNews CMS.................................................................................. 54 Gambar 3.21 Variabel Konfigurasi Server dan Database sNews ...................... 55 Gambar 3.22 Variabel Sistem sNews ................................................................. 56 Gambar 3.23 Perubahan fungsi pages() ............................................................. 57 Gambar 3.24 Pemanggilan fungsi webcam jika terdapat session ...................... 58 Gambar 3.25 Pembatasan fungsi kendali ketika tidak terdapat session ............ 58 Gambar 3.26 Fungsi webcam() untuk menampilkan video dalam antarmuka . . 59 Gambar 3.27 Penggunaan AJAX ....................................................................... 60 Gambar 3.28 Fungsi left() untuk menggerakkan kamera ke kiri ....................... 60 Gambar 3.29 Fungsi right() untuk menggerakkan kamera ke kanan ................. 61 Gambar 3.30 Fungi start() untuk mengaktifkan video streaming ..................... 61 Gambar 3.31 Fungsi kill() untuk menonaktifkan video streaming .................... 62 Gambar 3.32 Fungi restart() untuk merestart video streaming ......................... 62 Gambar 3.33 Tata letak halaman antarmuka ..................................................... 63 Gambar 3.34 Antarmuka Webcam Monitoring System ..................................... 64 Gambar 3.35 Halaman Administrasi .................................................................. 64 Gambar 4.1 Kode Program cw.c ...................................................................... 67

xiv

Gambar 4.2 Gambar 4.3 Gambar 4.4

Kode Program ccw.c .................................................................... 68 Program cw gagal mengirimkan data ke port paralel .................. 68 Program cw mengirimkan data ke port paralel, tidak terdapat error ....................................................................................................... 69

Gambar 4.5 Gambar 4.6

Program ccw gagal mengirimkan data ke port paralel ................ 69 Program ccw mengirimkan data ke port paralel, tidak terdapat error ............................................................................................ 69

Gambar 4.7 Gambar 4.8 Gambar 4.9

Program Motion dijalankan ......................................................... 70 Port 18081 dan 8080 terbuka ....................................................... 70 Pengujian streaming pada 127.0.0.1:18081 ................................. 71

Gambar 4.10 Front-end ..................................................................................... 72 Gambar 4.11 Form login .................................................................................... 72 Gambar 4.12 Kode form login ........................................................................... 73 Gambar 4.13 Kode fungsi mathCaptcha ............................................................ 74 Gambar 4.14 Kode pengecekan username dan password .................................. 74 Gambar 4.15 Halaman administrasi .................................................................. 74 Gambar 4.16 Kode fungsi start() ........................................................................75 Gambar 4.17 Webcam secang diaktifkan .......................................................... 76 Gambar 4.18 Webcam telah aktif dan sedang melakukan streaming ................ 76 Gambar 4.19 Kode fungsi left() ......................................................................... 77 Gambar 4.20 Kode fungsi right() ....................................................................... 77 Gambar 4.21 Kode fungsi restart() .................................................................... 78 Gambar 4.22 Konfigurasi file manager ............................................................. 79

xv

Gambar 4.23 Kode fungsi filelist() .................................................................... 79 Gambar 4.24 Tampilan file manager ................................................................. 80 Gambar 4.25 Kode fungsi files() ....................................................................... 81 Gambar 4.26 Kode fungsi kill() ......................................................................... 82 Gambar 4.27 Proses menonaktifkan webcam .................................................... 82 Gambar 4.28 Pemanggilan fungsi PHP session_destroy() ................................. 83 Gambar 4.29 Proses logout ................................................................................ 84 Gambar 4.30 Pesan kesalahan login .................................................................. 85 Gambar 4.31 Webcam tidak ditemukan ............................................................. 86 Gambar 4.32 Mengaktifkan webcam tanpa login .............................................. 87 Gambar 4.33 Menggerakkan webcam saat webcam tidak aktif ........................ 88 Gambar 4.34 Menggerakkan webcam tanpa login ............................................ 89 Gambar 4.35 Merestart webcam saat webcam tidak aktif ................................. 90 Gambar 4.36 Akses file manager tanpa login .................................................... 91 Gambar 4.37 Menonaktifkan webcam saat webcam tidak aktif ........................ 92 Gambar 4.38 Logout saat tidak ada session ...................................................... 93 Gambar 4.39 Error 404 dari sisem monitoring ................................................. 94 Gambar 4.40 Error dari web server .................................................................. 94 Gambar 4.41 Tampilan pada browser Firefox 3.6 ............................................ 96 Gambar 4.42 Tampilan pada browser Opera 10 ............................................... 96 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 Gambar 4.46 Aplikasi top pada server .............................................................. 99

xvii

DAFTAR TABEL

Tabel 2.1 Spesifikasi Teknis Webcam Creative VF0470 ................................... 26 Tabel 3.1 Posisi bit data ..................................................................................... 34 Tabel 3.2 Konversi bit data ................................................................................ 35 Tabel 3.3 Bit data posisi netral ........................................................................... 35 Tabel 3.4 Bit data langkah pertama .................................................................... 36 Tabel 3.5 Bit data langkah kedua ....................................................................... 36 Tabel 3.6 Bit data langkah ketiga ....................................................................... 37 Tabel 4.1 Penggunaan bandwidth jaringan ...................................................... 101 Tabel 4.2 Pengukuran waktu proses ................................................................. 102

xviii

BAB I PENDAHULUAN

1.1 Latar Belakang Perkembangan dunia teknologi informasi dewasa ini sangatlah pesat. Salah satu teknologi yang banyak diadaptasi beberapa tahun terakhir adalah video streaming. Video streaming adalah sebuah layanan untuk menampilkan video secara realtime melalui jaringan komputer, sehingga pengguna dapat melihat 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 melalui internet atau pada kamera keamanan CCTV (Closed-circuit Television). Mengingat kebutuhan sistem monitoring meningkat tajam, terlebih dengan adanya aksi teror beberapa tahun terakhir ini, kebutuhan akan teknologi video streaming di kota-kota besar meningkat cukup tajam. Namun biaya yang harus dikeluarkan untuk membangun sistem monitoring menggunakan kamera CCTV sangatlah mahal. Belum lagi server streaming jika dibangun menggunakan software proprietary akan memakan biaya yang sangat tinggi. Untuk itu penulis mencoba membuat sebuah sistem monitoring menggunakan web-camera sebagai alternatif yang lebih murah. Sistem monitoring ini nantinya akan melakukan video streaming ke jaringan komputer sederhana sehingga akses informasi dapat dilakukan dengan mudah melalui video player atau melalui web browser.

1

2

1.2 Maksud dan Tujuan Adapun maksud dan tujuan pembuatan sistem monitoring menggunakan web camera melalui jaringan komputer ini adalah sebagai berikut : 1. Merancang suatu sistem monitoring alternatif dari CCTV yang lebih murah dan terjangkau. 2. Dapat mengetahui prinsip dan cara kerja dari alat yang dibuat sehingga dapat digunakan dalam aplikasinya. 3. Memahami piranti-piranti yang digunakan dalam peralatan ini.

1.3 Permasalahan Teknologi video streaming bukanlah teknologi yang mudah untuk diaplikasikan, belum lagi pembangunan teknologi ini dengan kamera CCTV dan sistem streaming berbasis software proprietary memerlukan dana yang tidak sedikit. Masalah keterbatasan hardware yang tersedia dan harga bandwidth di Indonesia yang relatif masih mahal juga menjadi kendala.

1.4 Batasan Masalah Permasalahan yang harus diselesaikan pada tugas akhir ini dibatasi pada hal-hal berikut : 1. Kamera CCTV yang biasa digunakan akan digantikan oleh web-camera yang berfungsi menangkap objek bergerak.

3

2. Server yang terhubung ke jaringan komputer dihubungkan dengan menggunakan kabel dan dibangun dengan software opensource.

1.5 Metode Pengumpulan Data Pembuatan piranti dan laporan tugas akhir ini menggunakan metode sebagai berikut. 1. Metode Pustaka, yaitu dengan cara mempelajari buku-buku literatur yang berhubungan dengan masalah yang dihadapi dalam pembuatan alat, baik karakteristik software pendukung, teknik konfigurasi, dan penggunaan software dan protokol komunikasi yang digunakan dengan maksud untuk memperoleh data yang tepat. 2. Metode Perancangan, yaitu dengan cara mencoba-coba membuat desain rangkaian yang dibuat. 3. Metode Pengujian, yaitu dilakukan untuk sistem menguji sistem yang dirancang sudah sesuai bekerja dengan baik sesuai yang diharapkan atau belum

1.6 Sistematika Penulisan Laporan Adapun sistematika penulisan laporan ini adalah sebagai berikut. BAB I PENDAHULUAN Membahas tentang judul tugas akhir, latar belakang, maksud dan tujuan, batasan masalah, metode pengumpulan data, dan sistematika penulisan.

4

BAB II LANDASAN TEORI Membahas tentang dasar dasar teori yang digunakan dalam perancangan alat yang akan dibuat. BAB III PEMBUATAN ALAT Membahas tentang pembuatan alat, sistem penyusun dan konfigurasi software sehingga dapat menghasilkan sistem monitoring yang dapat digunakan sebagai alternatif CCTV. BAB IV ANALISIS DAN PEMBAHASAN Membahas tentang hasil pengujian dari alat yang telah dibuat, apakah sesuai dengan yang diharapkan atau tidak. BAB V PENUTUP Membahas tentang kesimpulan dan saran, sehingga tugas akhir ini dapat dikembangkan lebih lanjut.

BAB II LANDASAN TEORI

2.1 Sistem Video Monitoring Sistem video mointoring yang dibangun ini adalah sebagai prototipe dari kamera pengawas yang biasa dsebut sebagai IP (Internet Protocol) Camera. Sistem video monitoring ini dibangun menggunakan webcam sebagai pengganti kamera CCTV. Sedangkan sistem IP yang biasanya pada IP Camera tertanam dalam kamera digantikan menggunakan video streaming server yang dibangun menggunakan sistem operasi Linux. Secara keseluruhan sistem terdiri atas tiga bagian utama, yaitu sistem kendali, streaming server, dan user interface. Sistem kendali tersusun atas sistem mekanik penggerak, dan sistem software kendali. Sistem mekanik penggerak menggunakan komponen utama motor stepper yang dikendalikan oleh software melalui user interface berbasis web. Keseluruhan sistem ini dibangun dengan software opensource, dan berlisensi GNU General Public License, sehingga dapat digunakan dan dikembangkan secara bebas.

2.2 Perkembangan Video Streaming Dalam sejarah perkembangan teknologi multimedia, khususnya

menampilkannya dalam komputer barulah dapat dilakukan pada pertengahan abad

5

6

ke 20. Pada akhir tahun 1980an sampai 1990an perkembangan teknologi komputer dapat menampilkan suara dan video melalui komputer, akan tetapi dilakukan melalui media non-streaming seperti CD-ROM. Media streaming baru berkembang pada akhir 1990an hingga awal tahun 2000. Mengingat sebelum itu perkembangan teknologi komputer dan jaringan internet masih terbatas. Barulah kemudian bandwidth jaringan internet meningkat sehingga akses ke jaringan internet semakin mudah. Ditambah perkembangan protokol standar internet seperti TCP/IP, HTTP serta HTML menambah popularitas internet. Pada umumnya konten multimedia relatif besar, sehingga untuk dapat manampilkan dalam media streaming dengan sistem on-demand streaming akan membutuhkan media penyimpanan dengan kapasitas yang sangat besar. Tentu hal ini membutuhkan biaya yang tinggi sehingga sulit diaplikasikan oleh perusahaan kecil menengah. Besar kapasitas media penyimpanan yang dibutuhkan akan dipengaruhi oleh beberapa hal, antara lain lama durasi dan bit rate.

storage size=

lengthbit rate 81024 .......................(Rumus 2.1)

Storage size = besar kapasitas media penyimpanan (Megabytes) Length Bit rate = panjang durasi rekaman (detik) = jumlah data/gambar yang direkam tiap detik (Kbps)

7

Misal satu jam video direkam dengan bit rate 300 kbit/s dengan ukuran resolusi standar 320x240 pixels. Maka :

3.600 s300kbit /s =131,8359375 Megabytes 81.024

Dari perhitungan tersebut dapat diketahui besar kapasitas media penyimpanan yang diperlukan dan besar bandwidth yang dibutuhkan untuk melakukan streaming. Besar bandwidth yang dibutuhkan akan sangat bergantung pada protokol streaming yang digunakan. Misal dengan protokol unicast, jika terdapat 1000 permintaan streaming, maka besar bandwidth yang dibutuhkan tiap detiknya : 300kbit /s1.000=300.000 kbit / s Atau setara dengan 300 Mbit/s, atau dalam satu jam akan membutuhkan bandwidth kurang lebih 100 Gigabit. Untuk ukuran internet di Indonesia dengan harga bandwidth yang relatif mahal penghematan bandwidth harus dilakukan semaksimal mungkin. Sehingga pemilihan protokol streaming harus dilakukan dengan cermat. Beberapa jenis protokol jaringan yang dapat digunakan untuk streaming antara lain : Datagram protocols, dikenal sebagai User Datagram Protocol (UDP),

8

mengirimkan dalam bentuk rangkaian paket-paket kecil, sehingga lebih efisien dan simpel. Akan tetapi pada protokol ini tidak ada mekanisme yang menjamin seluruh data terkirim ke penerima. Ini diserahkan sepenuhnya kepada aplikasi untuk mendeteksi kegagalan pengiriman dengan teknik error correction

Real-time Streaming Protocol (RTSP), Real-time Transport Protocol (RTP) dan Real-time Transport Control Protocol (RTCP) secara khusus didesain untuk keperluan streaming melalui jaringan.

Gambar 2.1 RTSP dan RTP

Transmission Control Protocol (TCP), pada protokol ini terdapat 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 menggunakan buffer. Data akan disimpan ke dalam buffer sebelum

9

menampilkannya. Akan tetapi protokol ini sulit untuk diimplementasikan karena adanya sistem timout dan retry.

Unicast Protocol, protokol mengirimkan secara terpisah salinan dari server untuk tiap penerima. Unicast biasa digunakan pada sebagian besar koneksi internet, tetapi protokol ini kurang baik ketika banyak pengguna yang mengakses dalam waktu yang bersamaan.

Gambar 2.2 Unicast

Multicast Protocols, dengan protokol ini data dikirimkan secara broadcast ke seluruh client dalam jaringan. Protokol multicast dikembangkan untuk mengurangi replikasi data yang berakibat naiknya beban server/jaringan. Ini terjadi ketika banyak pengguna mengakses data secara sendiri-sendiri. Protokol ini mengirimkan sebuah stream dari sumbernya ke sekelompok penerima. Pada pengerjaannya transmisi multicast boleh jadi mudah atau boleh jadi sulit untuk dikerjakan bergantung dari tipe dan infrastruktur jaringan. Salah satu kekurangan dari transmisi multicast adalah hilangnya fungsi video on-demand. Streaming dilakukan yang terus menerus dari

10

siaran radio atau televisi mengakibatkan penerima tidak dapat mengontrol playback. Akan tetapi masalah ini dapat dikurangi dengan adanya caching servers, digital set-top boxes, dan buffered media players.

Gambar 2.3 Multicast

Internet Protocols Multicast, protokol ini dapat melakukan pengiriman sebuah stream ke sekelompok penerima dalam sebuah jaringan komputer. Salah satu tantangan dalam penggunaan IP multicast adalah router dan firewall yang berada diantara LAN harus mengijinkan perjalanan paket yang ditujukan ke grup multicast. Jika organisasi (seperti sekolah, pemerintah dan jaringan intranet perusahaan) yang memberikan layanan streaming memiliki kontrol jaringan antara server dan client, protokol routing seperti IGMP dan PIM dapat digunakan.

Peer-to-peer (P2P), protokol ini menyusun stream yang telah terekam sebelumnya untuk dikirimkan antar komputer. Sistem ini dapat mencegah terjadinya koneksi bottleneck pada server dan jaringan.

11

Gambar 2.4 Peer-to-peer

2.3 Sistem Kendali Sistem kendali dari sistem video monitoring ini berupa program aplikasi yang ditulis dengan bahasa pemrograman C dan dikompilasi menggunakan GNU C Compiler (GCC). Program aplikasi ini berfungsi untuk mengirimkan data ke port paralel yang diuhubungkan ke rangkaian penguat arus, sehingga dapat mengatur putaran motor stepper. Putaran dapat ditentukan arahnya dengan mengatur aliran pergeseran data yang dkirimkan ke port paralel. Motor stepper memerlukan data yang dikirimkan ke pin-pinnya secara berurutan agar dapat berputar. Sehingga pengaturan kecepatan dan arah putaran ditentukan melalui data yang dibangkitkan oleh program kendali.

2.4 Sistem Penggerak Yang dimaksud sistem penggerak adalah terkait dengan hardware dan mekanik penggerak webcam. Komponen utama dari penggerak adalah motor stepper dan rangkaian penguat arus dari port paralel komputer. Arus keluaran dari

12

port paralel komputer terlalu lemah sehingga tidak dapat menggerakkan motor stepper secara langsung. Sehingga diperlukan adanya penguat arus untuk menyuplai rangkaian motor stepper.

2.4.1.

Motor Stepper Motor stepper adalah jenis motor digital yang dikendalikan oleh

pulsa-pulsa digital. Prinsp kerja dari motor stepper hampir sama dengan motor listrik pada umumnya. Motor stepper tersusun atas magnet dan elektromagnet. Jika kutub magnet dan kutub elektromagnet yang dibangkitkan sama, maka kedua magnet akan tolak menolak. Sedangkan jika keduanya berbeda, maka akan saling tarik menarik. Perbedaan motor stepper dengan motor listrik pada umumnya adalah pada pembangkitan elektromagnet. Elektromagnet dalam

motorstepper dibangkitkan menggunakan pulsa digital. Setiap pulsa akan diterjemahkan menjadi step-step putaran motor. Untuk dapat beputar, maka pulsa yang dikirimkan harus berupa pulsa-pulsa yang kontinyu dan berurutan pada tiap pin motor stepper. Pulsa yang tidak berurutan mengakibatkan putaran motor yang tidak beraturan. Motor stepper yang terdapat dipasaran pada umumnya terdiri atas motor stepper jenis unipolar dan bipolar. Pada pengerjaan sistem monitoring ini motor stepper yang digunakan adalah jenis motor stepper jenis unipolar karena pertimbangan kemudahannya.

13

2.4.2.

Motor Stepper Unipolar Motor stepper jenis unipolar adalah jenis motor stepper yang

paling mudah dan paling banyak diaplikasikan dalam suatu rangkaian elektronik. Motor stepper unipolar adalah motor stepper yang dapat berputar dua arah tanpa harus membalik arus yang dialirkan ke dalam motor. Hal ini dimungkinkan karena motor stepper unipolar bekerja dengan pulsa digital. Perputaran dapat dilakukan dengan mengubah pulsa yang dimasukkan ke dalam pin-pin motor stepper. Susunan pin motor stepper unipolar terdiri atas pin common connector dan pin connector coil end yang terhubung ke port data. Untuk pin common connector dihubungkan ke sumber tegangan (12 Volt) dan pin connector coil end dihubungkan ke port data (0 atau 12 Volt). Motor stepper unipolar yang banyak terdapat di pasaran pada 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.

2.4.3.

Motor Stepper Bipolar Motor stepper bipolar berbeda dari motor stepper unipolar. Motor

stepper bipolar dapat berputar dua arah namun dengan cara yang berbeda dari motor stepper unipolar. Untuk membalik kutub elektromagnet dalam

14

motor stepper bipolar harus dilakukan dengan membalik arus masukan dari motor stepper. Motor stepper jenis ini memiliki 4 kaki yang semuanya merupakan pin yang terhubung ke sumber tegangan, motor ini tidak memiliki pin common connector, sehingga aplikasi dari rangkaian penyuplai arus akan lebih rumit.

Gambar 2.5 H-Bridge

Untuk membalikkan arus listrik yang mengalr dalam motor diperlukan rangkaian H-Bridge yang akan membalikkan arus secara teratur. Biasanya rangkaian H-Bridge berupa komponen solid transistor MOSFET (MetalOxideSemiconductor Field-Effect Transistor). Dengan komponen ini, proses pensaklaran akan dilakukan secara otomatis.

15

Gambar 2.6 H-Bridge MOSFET Transistor

2.5 Streaming Server Streaming server yang digunakan untuk melakukan streaming ke jaringan komputer secara keseluruhan dibangun menggunakan software

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 personal, pendidikan maupun dalam lngkungan komersial. Server dibangun dengan sistem operasi Linux dengan varian distribusi Slackware. Sedangkan software streaming menggunakan Motion. Selain itu, juga dibutuhkan web server untuk keperluan user interface. Web server yang digunakan adalah Apache. Semua software tersebut berlisensi GNU GPL (GNU General Public License)

2.5.1.

Linux Linux adalah sebuah Operating System (OS) turunan dari UNIX,

yang merupakan implementasi independen dari standard IEEE (Institute of

16

Electrical and Electronics Engineers) untuk OS yang bernama POSIX (Portable Operating System Interface). OS adalah perangkat lunak (software) yang mengatur koordinasi kerja antar semua perlengkapan perangkat keras (hardware) dalam sebuah komputer. Linux memiliki kemampuan yang berbasis ke standard POSIX meliputi true-multitasking, virtual memory, shared libraries, demand-loading, proper memory management, dan multiuser. Linux seperti layaknya OS UNIX lainnya, mendukung banyak software mulai dari TEX, X Window, GNU C/C++ sampai ke TCP/IP.

Linux adalah sistem operasi yang disebarkan secara luas dengan bebas di bawah lisensi GNU General Public License (GPL), yang berarti juga source code Linux tersedia. Itulah yang membuat Linux sangat spesial. Linux masih dikembangkan oleh kelompok-kelompok tanpa dibayar, yang banyak dijumpai di Internet, tukar-menukar kode, melaporkan bug, dan membenahi segala masalah yang ada. Setiap orang yang tertarik bisa bergabung dalam proyek pengembangan Linux. Linux pertama kali dibuat oleh Linus Torvalds di Universitas Helsinki, Finlandia. Kemudian Linux dikembangkan lagi dengan bantuan dari banyak programmer dan hacker UNIX di seluruh dunia. Sekarang Linux bisa diperoleh dari distribusi-distribusi yang umum digunakan, misalnya RedHat, Mandriva, Debian, Slackware, Ubuntu, BlankOn, IGOS

17

Nusantara dan lain-lain. Kernel yang digunakan adalah sama-sama Linux kernel, sedangkan perbedaannya hanyalah paket-paket aplikasi yang disertakan, sistem penyusunan direktori, init style, dll. Penggunaan Linux sebagai sistem operasi server adalah

diakarenakan pertimbangan sebagai berikut. 1. Lisensi Linux sering disebut GNU/Linux merupakan salah satu sistem operasi yang memiliki lisensi GNU GPL (General Public License). Lisensi ini memungkingkan penggunaan secara bebas oleh publik. Software yang tersedia juga banyak memiliki lisensi yang sama atau lisensi yang mirip dengan GNU GPL. Software ini sering disebut sebagai Free Software. Definisi dari free software menurut Free Software Foundation (http://www.fsf.org) adalah, sebuah bentuk kebebasan, mengacu ke pengguna untuk memakai,

menggandakan, mendistribusikan, mempelajari, mengubah maupun meningkatkan software tersebut. Secara spesifik ada empat arti kebebasan: a. Bebas menjalankan program. b. Bebas mempelajari program dan mengadaptasi sesuai kebutuhan. c. Bebas mendistribusikan ulang.

18

d. Bebas meningkatkan kemampuan program dan mempublikasikannya.

2.

Sejarah Linux memiliki warisan sejarah seperti yang dimiliki oleh UNIX. Semua kemampuan UNIX telah diadaptasi oleh Linux. Disamping itu kode sumber dari Linux telah diteliti dan disempurnakan oleh ribuan programmer di seluruh dunia. Hal yang tidak dimiliki Microsoft Windows dikarenakan lisensi Windows tidak mengijinkan kode sumber dilihat oleh publik.

3.

Pengguna Pengguna Linux memiliki komunitas yang cukup besar di dunia. Komunitas ini memiliki tradisi yang baik untuk membantu para pemula dalam menyelesaikan masalah dalam mempelajari dan mendalami Linux.

4.

Kompatibilitas Sistem operasi Linux adalah sistem operasi yang dapat dengan mudah berkomunikasi dengan sistem operasi lain. Komunikasi ini dapat berupa kecocokan filesystem yang

19

memungkinkan Linux membaca dan menulis pada media penyimpanan dengan filesystem lain, misalkan FAT, NTFS, reiserfs, jfs dan banyak lagi jenis filesystem lain. Selain dari kecocokan filesystem, Linux juga memiliki kecocokan dalam hal jaringan. Misalkan dukungan file sharing Samba yang memungkinkan Linux dapat melakukan sharing file dengan pengguna Windows dalam jaringan komputer.

5.

Kemudahan akses perangkat Perangkat dalam Linux dikenali sebagai file yang biasa terletak pada direkotri /dev, sehingga akses ke dalam perangkat dapat dilakukan dengan mudah.

6.

Pemanfaatan memori Linux memiliki manajemen memori yang bagus. Dalam Linux mengenal adanya swap partition. Swap adalah suatu virtual memory yang akan berfungsi layaknya RAM ketika suatu program aplikasi membutuhkan memori melebihi kapasitas fisik RAM yang tersedia.

7.

Skalabilias

20

Linux dapat digunakan dalam berbagai mesin, baik dari mesin sekecil PDA, atau mesin-mesin besar seperti server dengan banyak processor.

8.

Stabilitas Sudah bukan rahasia lagi kalau sistem operasi Linux memiliki stabilitas yang sangat tinggi. Dalam Linux sangat jarang sekali ditemui adanya virus atau worm. Linux dapat hidup tanpa install ulang atau reboot dalam jangka waktu yang sangat lama, bahkan hingga hardware tidak memadai (rusak). Sehingga Linux banyak dipakai sebagai server di internet. Ketika ditemukan cacat atau bug dalam Linux, proses bugfix dapat dengan cepat dilakukan. Hal ini dikarenakan Linux dikelola oleh banyak orang di seluruh dunia.

9.

Layanan jaringan Distribusi Linux pada umumnya sudah memiliki programprogram networking beserta dokumentasinya. Hal ini tentu lebih baik jika dibandingkan dengan Windows NT, di mana banyak fasilitas seperti telnet, NFS, dan server X Window, tidak disertakan dalam distribusi standard dan biasanya harus

21

dibeli terpisah dari perusahaan lain, dan tentu saja membutuhkan biaya lebih.

10. Keamanan Linux memiliki hampir semua kemampuan UNIX,

diantaranya adalah fitur multi-user. Sistem dapat digunakan oleh banyak pengguna secara bergantian atau bersamaan menggunakan akses jarak jauh baik mode teks atau mode grafis. File masing-masing user disimpan dalam ruang kerja (home directory) sendiri-sendiri, dan dilindungi dari

pengubahan, penghapusan tanpa ijin dengan cara menerapkan kepemilikan dan perijinan file. Masing-masing program berjalan dengan ruang memorinya sendiri yang diproteksi oleh sstem operasi sehingga tidak bisa mencampuri atau mengintip proses lain.

11. Program aplikasi Linux memiliki program aplikasi yang jumlahnya cukup banyak, baik sebagai program aplikasi pengganti fungsi versi Windows atau program asli Linux dengan fungsi yang memang dikhususkan untuk Linux. Kebanyakan program Linux merupakan program gratis namun juga terdapat

22

program belisensi komersial.

12. Scripting Jika dalam Windows kita mengenal Batch Scripting, dalam dunia Linux juga terdapat mekanisme pengerjaan serangkaian tugas serupa yang disebut sebagai Shell Scripting. Kelebihan dari Shell Scripting, dapat dijalankan secara manual atau terjadwal, bahkan bisa memiliki tampilan grafis (GUI). Disamping itu dukungan terhadap scripting sepenuhnya dimiliki Linux karena sistem konfigurasi dalam Linux tersimpan dalam format plain text sehingga dapat diakses dengan mudah menggunakan perintah shell.

13. Peralatan problem solving Linux menyediakan alat-alat untuk menampilkan penggunaan memory dan CPU untuk masing-masing program, untuk menentukan program mana (kalau ada) yang menggunakan suatu file pada suatu saat, untuk melacak program pada saat berjalan, dan meneruskan pesan-pesan kesalahan (error) dari keseluruhan komputer di network ke satu komputer untuk memudahkan pengawasan (monitoring). Hal ini dapat mempercepat dan mempermudah pemecahan masalah.

23

2.5.2.

Slackware Linux Dalam dunia Linux, kita mengenal istilah distribusi atau distro.

Yaitu Linux yang sudah dipaketkan bersama kumpulan software aplikasi sehingga Linux siap digunakan baik sebagai server ataupun sebagai komputer desktop. Slackware merupakan satu diantara beberapa distribusi Linux 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 pada distribusi Ubuntu, Fedora dan distribusi Linux yang lain. Dari sekian banyak jenis distribusi Linux, pemilihan Slackware sebagai server streaming dikarenakan Slackware adalah distribusi Linux yang mirip UNIX. Konfigurasi dalam Slackware dilakukan secara langsung pada file-file konfigurasi. Disamping itu Slackware merupakan distribusi Linux yang dikenal cukup stabil karena hanya memaketkan software yang sudah teruji. Dukungan library dalam Slackware juga cukup lengkap sehingga memudahkan ketika kita melakukan kompilasi suatu program aplikasi dari kode sumber.

2.5.3.

Software Streaming Server

24

Streaming software adalah program aplikasi yang berfungsi menangkap obyek bergerak dari kamera dan memrosesnya hingga dapat ditampilkan ke pengguna, misal melalui web browser atau software media player. Dari hasil pencarian dan beberapa kali uji coba aplikasi video streaming yang ada, software video streaming Motion-lah yang paling sesuai dan mudah dikonfigurasi. Motion merupakan progam aplikasi video streaming yang dapat menampilkannya ke dalam web browser dan media player. Motion juga dapat menyimpan hasil tangkapan kamera ke dalam file baik dalam format gambar, atau pun video.

2.5.4.

Web Server Selain software streaming server, sistem monitoring ini juga

membutuhkan web server untuk user interface sehingga pengguna dapat mengendalikan pergerakan dari kamera. Web server juga memungkinkan untuk menjalankan program aplikasi dalam sistem operasi Slackware. Misalkan untuk mengaktifkan atau mematikan software video streaming. Apache adalah web server yang sudah sangat banyak digunakan di lingkungan internet. Ketangguhannya tidak diragukan lagi dan sangat memiliki banyak fitur.

25

2.6 Kamera Web Kamera web yang akan digunakan berfungsi sebagai pengganti kamera CCTV. Kamera web memiliki harga yang relatif lebih murah dibandingkan kamera CCTV atau IP Camera. Kamera web ini digunakan untuk mengambil gambar dari obyek bergerak. Hingga saat ini kendala yang dihadapi dalam penggunaan Linux adalah dukungan hardware-hardware terbaru. Hal ini dikarenakan banyak produsen yang tidak menyediakan driver Linux dari hardware yang mereka produksi. Sehingga pemilihan kamera web harus dilakukan dengan hati-hati. Pemilihan web kamera Creative VF0470 karena aspek dukungan dari sistem operasi Linux. Web kamera Creative VF0470 sudah dikenali dengan baik oleh kernel Linux terbaru.

Gambar 2.7 Kamera Web Creative VF0470

26

Tabel 2.1 Spesifikasi Teknis Webcam Creative VF0470 Fitur Sensor Resolusi Gambar Maksimum Resolusi Video Maksimum Fokus Interface Keterangan VGA Sensor 1.3 Megapixel 1280 x 960 (software*) 800 x 600@15fps (software*) Manual, dapat disesuaikan melalui ring fokus USB 1.1 (USB 2.0 Compatible)

*Software disertakan dalam versi Windows

Isi paket pembelian Creative Live! Cam Notebook with USB cable Multi-language Quick Start Guide CD software* containing: Creative Live! Cam Center Lite Creative Live! Cam Manager Creative Live! Cam Console Creative Photo Manager 2 muveeNow SightSpeed Multi-language User's Guide*Software disertakan dalam versi Windows

2.7 User Interface User Interface adalah antarmuka pengguna dengan sistem monitoring melalui tampilan dalam web browser. Dalam user interface ini pengguna dapat mengatur kerja dari sistem monitoring. Pengguna dapat mengarahkan kamera ke arah yang dikehendaki. User interface dibangun dalam bahasa pemrograman web HTML dan

27

PHP. Penggunaan interface web dikarenakan interface ini dapat diakses 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 sistem operasi (platform independent).

BAB III PEMBUATAN ALAT

Sistem monitoring kamera pengawas menggunakan web camera melalui jaringan komputer yang dibangun ini terdiri dari tiga bagian, sistem penggerak, sistem video streaming, dan user interface. Sistem penggerak dan kendali didalamnya meliputi sistem mekanik dan software kendali. Sistem penggerak dan kendali ini berfungsi untuk memutar kamera web kearah yang diinginkan, sehingga cakupan tangkapan kamera lebih luas. Sistem video streaming merupakan software yang berfungsi mengambil gambar bergerak dengan kamera web, kemudian memprosesnya sehingga dapat ditampilkan melalui live streaming. Software yang digunakan adalah Motion. User interface merupakan sistem yang berhubungan langsung dengan pengguna. User interface ini menghubungkan antara sistem penggerak, kendali dan sistem video streaming. User interface dibangun menggunakan bahasa pemrograman web PHP dan HTML.

3.1 Sistem Penggerak dan Kendali Penggerak utama kamera web menggunakan motor stepper jenis unipolar. Motor stepper ini terdiri dari empat buah coil (kumparan), masing masing kumparan berfungsi sebagai elektromagnet yang akan membangkitkan gaya 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.

Gambar 3.1 Susunan kumparan motor stepper unipolar

Salah satu ujung dari masing-masing coil dihubungkan menjadi satu yang disebut sebagai kaki common connector, sedangkan ujung-ujung yang lain yang tidak terhubung disebut sebagai kaki coil connector. Untuk pemasangan dengan sumber arus, kaki common connector terhubung dengan sumber arus +12V. Sedangkan kaki coil connector lainnya menyesuaikan keperluan. Misalkan coil elektromagnet 3 ingin dihidupkan, maka kaki coil connector 3 harus dihubungkan dengan 0V, sedangkan kaki lain dihubungkan dengan sumber +12V. Jika ingin menghidupkan coil elektromagnet 2, maka coil connector 2 dihubungkan 0V dan kaki lainnya dihubungkan +12V. Untuk gerakan berputar, maka coil harus bekerja secara berurutan. Untuk berputar ke kanan, maka urutan pengaliran arus listrk dari coil 4 3 2 1 4

30

dan seterusnya. Sedangkan untuk berputar ke kiri maka urutan aliran arus listrik dari coil 4 1 2 3 4.

Coil 4 Coil 3 Coil 2 Coil 1 ON OFF OFF OFF

Gambar 3.2 Posisi netral

Coil 4 Coil 3 Coil 2 Coil 1 OFF ON OFF OFF

Gambar 3.3 Langkah pertama

31

Coil 4 Coil 3 Coil 2 Coil 1 OFF OFF ON OFF

Gambar 3.4 Langkah kedua

Coil 4 Coil 3 Coil 2 Coil 1 OFF OFF OFF ON

Gambar 3.5 Langkah ketiga

Dalam penerapannya, coil connector 1 sampai 4 terhubung ke jalur data yang bersumber dari port paralel komputer (PC). Sehingga untuk menggerakkan motor secara berputar, data yang dikirimkan ke port paralel diatur agar berubah

32

sesuai dangan dengan arah putaran yang diinginkan. Akan tetapi motor stepper tidak bisa secara langsung dihubungkan dengan arus dari port paralel. Hal ini dikarenakan arus keluaran port paralel tidak mampu memenuhi kebutuhan arus motor stepper. Untuk mengatasi ini diperlukan rangkaian penyesuai. Rangkaian penyesuai tegangan ini berfungsi mengubah data digital dari port paralel yang memiliki tegangan keluaran +5V, agar dapat dihasilkan keluaran +12V.

Gambar 3.6 Konfigurasi pin IC ULN2003A

Rangkaian penyesuai ini menggunakan IC ULN2003A yang didalamnya tersusun 7 buah rangkaian Darlington. Jika port paralel mengeluarkan data 1, (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 IC yang akan dihubungkan ke kaki coil connector motor stepper.

33

Gambar 3.7 Rangkaian Kendali Motor

Agar rangkaian ini bekerja, diperlukan data yang dikeluarkan ke port paralalel. Untuk melakukannya, dibutuhkan program aplikasi yang berfungsi mengirimkan data ke port paralel. Program tersebut berfungsi mengirimkan data 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 pada file /proc/ioports dengan menjaankan perintah cat /proc/ioports | grep parport0 pada terminal atau console. Sehingga akan diperoleh keterangan alamat port paralel dalam format hexadecimal.

34

Gambar 3.8 Jalur data port paralel

Untuk menentukan data yang harus dikirimkan ke alamat port paralel tersebut, dapat dilakukan dengan pendekatan sebagai berikut. 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 urutan dan posisi bit data sebagai berikut.

Tabel 3.1 Posisi bit data Coil Bit ke Coil 4 Coil 3 Coil 2 Coil 1 3 2 1 0

Jalur Data Data4 Data3 Data2 Data2

Dalam penulisan program komputer, data 4 bit biner tersebut diubah kedalam bentuk hexadecimal. Dikarenakan data yang dibutuhkan motor stepper 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

Tabel 3.2 Konversi bit data Jalur Data Data4 Data3 Data2 Data2 Bit ke 3 0 Data 0 0 1 2 0 0 1 0 1 0 1 0 0 0 1 0 0 0 Data (hex) 0x01 0x02 0x04 0x08

Urutan pengiriman data tersebut disesuaikan dengan arah putar motor yang dikehendaki. Misalkan untuk arah putaran searah putaran jarum jam (clockwise) dapat digambarkan sebagai berikut ini.

Tabel 3.3 Bit data posisi netral Coil Data Coil 4 Coil 3 Coil 2 Coil 1 1 0 0 0 Data (hex) 0x08

Port Data Data4 Data3 Data2 Data2

Gambar 3.9 Posisi netral

36

Tabel 3.4 Bit data langkah pertama Coil Data Coil 4 Coil 3 Coil 2 Coil 1 0 1 0 0 Data (hex) 0x04

Port Data Data4 Data3 Data2 Data2

Gambar 3.10 Langkah pertama

Tabel 3.5 Bit data langkah kedua Coil Data Coil 4 Coil 3 Coil 2 Coil 1 0 0 1 0 Data (hex) 0x02

Port Data Data4 Data3 Data2 Data2

Gambar 3.11 Langkah kedua

37

Tabel 3.6 Bit data langkah ketiga Coil Data Coil 4 Coil 3 Coil 2 Coil 1 0 0 0 1 Data (hex) 0x01

Port Data Data4 Data3 Data2 Data2

Gambar 3.12 Langkah ketiga

38

Untuk

arah

putaran

berlawanan

arah

putaran

jarum

jam

(counterclockwise), urutan pengirman data dibalik, sehingga urutannya sebagai berikut, 0x01, 0x02, 0x04, 0x08. Kecepatan putaran dapat diatur menggunakan delay yang didefinisikan ke dalam fungsi delay, sehingga dapat dipanggil ulang oleh program utama. Fungsi delay berisi looping yang berfungsi menunda pengeksekusian program utama.Mulai

Port paralel = 0x378 Var i=integer

Port paralel dapat diakses?

Mulai

Var i=integer i=1 Gagal koneksi 0x378

Kirimkan Kirimkan Kirimkan Kirimkan

data data data data

0x01 0x02 0x04 0x08

ke ke ke ke

port paralel; delay port paralel; delay port paralel; delay port paralel; delay

i=1

i=i+1 i=i+1

i