Aplikasi Sistem Kontrol Gerak Webcam Jarak Jauh Berbasis Protokol Internet Menggunakan Mikrokontroler AT32UC3A0256
Oleh: Jeimy Octodhola Purba NIM : 612004068
Skripsi Untuk Melengkapi Syarat-syarat Memperoleh Ijasah Sarjana Teknik Fakultas Teknik Elektronika dan Komputer Universitas Kristen Satya Wacana Salatiga
Februari 2012
Aplikasi Sistem Kontrol Gerak Webcam Jarak Jauh Berbasis Protokol Internet Menggunakan Mikrokontroler AT32UC3A0256
Oleh: Jeimy Octodhola Purba NIM : 612004068
Tugas Akhir ini Telah Diterima dan Disahkan Sebagai Salah Satu Persyaratan guna Mencapai SARJANA TEKNIK Dalam KONSENTRASI TEKNIK ELEKTRONIKA PROGRAM STUDI TEKNIK ELEKTRO FAKULTAS TEKNIK ELEKTRONIKA DAN KOMPUTER UNIVERSITAS KRISTEN SATYA WACANA SALATIGA
Disahkan oleh: Pembimbing I
Pembimbing II
Ir. Lukas B.S.S., M.Sc.
Deddy Susilo, S.T.
Tgl: ……………………
Tgl: …………………..
INTISARI
Dengan semakin berkembangnya teknologi di bidang mikrokontroller, pada tugas akhir ini, akan diperkenalkan sebuah mikrokontroler 32-bit AT32UC3A sebagai pengendali utama dari sistem kontrol jarak jauh berbasis IP (Internet Protocol). Sedangkan objek yang akan digunakan adalah sebuah kamera (webcam) yang nantinya dapat diatur oleh pengguna sesuai dengan sudut pandang yang diinginkan melalui web browser. Dikarenakan sistem dari alat ini berbasis IP, maka sistem ini dapat diterapkan di dalam suatu jaringan komputer baik itu lokal (LAN) maupun publik (Internet). Dengan mengakses alamat IP dari alat ini, pengguna akan langsung menuju halaman web yang berisi informasi berupa gambar serta tombol penggerak untuk menggerakan kamera. Pengujian dilakukan pada jaringan lokal (LAN) dan pada jaringan lokal yang terhubung dengan internet yang mempunyai IP-publik. Untuk pengujian pada jaringan lokal tidak ada kendala. Sedangkan pengujian pada jaringan Internet dipengaruhi oleh koneksi jaringan Internet-nya.
KATA PENGANTAR
Puji dan syukurr kepada Tuhan Yesus Kristus atas berkat dan rahmat-Nya sehingga skripsi ini dapat terselesaikan. Pengetahuan yang didapatkan dari perkuliahan sangat berguna dalam penyusunan skripsi ini. Walaupun skripsi ini telah selesai, perjuangan untuk meraih masa depan baru saja dimulai. Semoga dengan pengetahuan yang didapatkan selama masa perkuliahan hingga penyusunan skripsi ini dapat menjadi bekal untuk memasuki dunia kerja. Skripsi yang berjudul “Aplikasi Sistem Kontrol Gerak Webcam Jarak Jauh Berbasis Protokol Internet Menggunakan Mikrokontroler AT32UC3A0256” ini disusun guna memenuhi salah satu syarat kelulusan guna memperoleh gelar Sarjana Teknik Elektro di Fakultas Teknik Elektronika dan Komputer, Universitas Kristen Satya Wacana Salatiga. Dalam penyusunan skripsi ini, penulis banyak mengalami masalah dan hambatan. Namun bantuan dan bimbingan yang diperoleh, dapat membantu di dalam penyelesaian skripsi ini. Untuk itu, penulis mengucapkan terima kasih kepada: 1. Ayah (J.T. Parluhutan Purba), ibu (B. Emy Juni H.) dan kedua adik tercinta (Scenda B. Purba dan Dameria Purba) yang selalu mengingatkan penulis untuk segera menyelesaikan skripsi. 2. Bapak Ir. Lukas B.S.S., M.Sc. selaku pembimbing I yang telah membantu banyak dalam memberikan ide, pengetahuan serta saran terhadap masalah yang dijumpai dalam penyusunan skripsi ini.
ii
3. Bapak Deddy Susilo, S.T. selaku pembimbing II yang telah membantu juga didalam memberikan saran serta semangat untuk menyelesaikan skripsi ini. 4. Segenap dosen serta staf FTEK UKSW yang telah mengajarkan banyak hal baik didalam maupun diluar perkuliahan. 5. Teman-teman satu perjuangan di Lab XT (Surya, Obo, Trek, Noven, Pak Dhe, Mas Wid, Mas Anton, Mas Erik W. (smbr), Ardhi, Daniel K.’05, Daniel K.S.’04, Bayu Solo, Iwan, Ivan, Hansen, Luis, Adrian BH dkk) pengalaman yang didapatkan bersama kalian sungguh berharga. 6. Teman-teman angkatan 2004 (Suset, Atonk, Dendy, Anton, Bayu Semarang, Karel, Wawa, Nopex, Dwi, Happy, DK, Lero, Alphonso, Krisna, Agung, dkk) sungguh menyenangkan bisa bersama dan mengenal kalian selama ini. 7. Teman-teman kost ST3 (Rio, Bagas, Manol, Okky, Mas Heru, Kemat, Melvin dan anak-anak kost yang lainnya) yang membuat kost ST3 senyaman rumah sendiri. 8. Pihak-pihak lain yang belum disebutkan yang juga memberikan dukungan kepada penulis.
Salatiga, Februari 2012 Penulis
Jeimy Octodhola Purba
iii
DAFTAR ISI
INTISARI ………………………………………………………………………….
i
PRAKATA ………………………………………………………………………...
ii
DAFTAR ISI ………………………………………………………………………
iv
DAFTAR GAMBAR ………………………………………………………………
vii
DAFTAR TABEL …………………………………………………………………
ix
DAFTAR LISTING CODE ……………………………………………………….
x
DAFTAR SINGKATAN ………………………………………………………….
xi
BAB I. PENDAHULUAN ………………………………………………………...
1
1.1. Tujuan …………………………………………………………………...
1
1.2. Latar Belakang ………………………………………………………….
1
1.3. Gambaran Sistem ………………………………………………………..
4
1.4. Batasan Masalah ………………………………………………………...
6
1.5. Sistematika Penulisan …………………………………………………...
7
BAB II. DASAR TEORI …………………………………………………………..
8
2.1. Mikrokontroler AVR 32-bit ……………………………………………
8
2.1.1. Block Diagram ……………………………………………….....
11
2.1.2. Konfigurasi Catu Daya …………………………………………
11
2.1.3. Konfigurasi Pin …………………………………………………
12
2.1.4. Memori dan Sistem Bus ………………………………………...
14
2.1.5. Ethernet MAC ………………………………………………….
16
2.1.6. USB (Universal Serial Bus) ……………………………………
16
2.2. Motor Servo ……………………………………………………………
17
iv
2.3. Kamera Digital ………………………………………………………...
18
2.4. Protokol Internet ……………………………………………………….
20
2.4.1. Ethernet ………………………………………………………...
21
2.4.2. Protokol TCP/IP ………………………………………………..
23
2.4.3. Hyper Transfer Protocol (HTTP) ………………………………
24
2.4.4. Pengalamatan IP ………………………………………………..
29
2.4.5. IP Routing ………………………………………………………
31
2.5. FreeRTOS pada Mikrokontroler ……………………………………….
32
2.5.1. Multitasking …………………………………………………….
33
2.5.2. Scheduling ……………………………………………………...
33
2.5.3. Context Switching ………………………………………………
34
2.5.4. Real Time Applications …………………………………………
35
2.5.5. Real Time Scheduling …………………………………………..
35
BAB III. PERANCANGAN ………………………………………………………
38
3.1. Perancangan Modul Master ……………………………………………
38
3.2. Perancangan Modul Slave ……………………………………………..
43
3.3. Perancangan Modul Catu Daya ………………………………………..
44
3.4. Perancangan Modul Kamera …………………………………………..
46
3.5. Perancangan Perangkat Lunak …………………………………………
49
3.5.1. Antarmuka yang Berupa File HTML …………………………..
49
3.5.2. Penggunaan FreeRTOS ...............................................................
54
3.5.3. PWM Kontroler ………………………………………………..
55
3.5.4. Web Server Kontroler …………………………………………..
58
3.5.5. USB Kontroler pada Mode Device ……………………………..
59
v
BAB IV. ANALISA DAN HASIL PENGUJIAN …………………………………
60
4.1. Pengujian Gerak Motor Servo …………………………………………..
60
4.2. Pengujian Catu Daya ……………………………………………………
63
4.3. Pengujian Menampilkan Halaman Web kedalam Web Browser ………..
63
4.4. Pengujian Pengiriman Gambar dari Modul Master …………………….
64
4.5. Pengujian Pengambilan Gambar Melalui Modul Master ……………….
68
4.6. Pengujian Sistem Pada Jaringan Lokal …………………………………
68
4.7. Pengujian Sistem Pada Jaringan yang Terhubung Internet ……………..
68
BAB V. PENUTUP …………………….………………………………………….
70
5.1. Kesimpulan ……………………………………………………………...
70
5.2. Saran Pengembangan ……………………………………………………
71
DAFTAR PUSTAKA ……………………………………………………………..
72
vi
DAFTAR GAMBAR
Gambar 1.
Gambaran Keseluruhan Sistem ………………………………….
5
Gambar 2.1.
Block diagram AT32UC3A ……………………………………..
11
Gambar 2.2.
Susunan 144-pin jenis LQFP …………………………………….
12
Gambar 2.3.
HMatrix Master/Slave Connection ………………………………
15
Gambar 2.4.
Konfigurasi kabel pada Motor Servo ……………………………
17
Gambar 2.5.
a) Posisi Motor Servo saat diberi pulsa 1.5 ms b) Gambaran sinyal pulsa yang diberikan ……………………….
17
Gambar 2.6.
Contoh webcam X-tech ………………………………………….
18
Gambar 2.7.
Contoh IP-Kamera DCS-6620 …………………………………..
19
Gambar 2.8.
Contoh Kamera TTL PTC08 …………………………………….
19
Gambar 2.9.
Lapisan pada Protocol TCP/IP …………………………………..
23
Gambar 2.10. Pembagian Alamat IP ……………………………………………
30
Gambar 2.11. Algoritma routing ………………………………………………..
32
Gambar 2.12. Ilustrasi scheduling seiring berjalannya waktu …………………..
33
Gambar 2.13. Contoh suatu task yang dijalankan sebelum ditangguhkan ……...
34
Gambar 2.14. RTOS Scheduling ……………………………………………….
36
Gambar 3.1.
EVK 1100 sebagai Modul Master ……………………………….
39
Gambar 3.2.
Blok mikrokontroler, tpmbol reset dan 3 buah osilator ………….
39
Gambar 3.3.
Blok Decoupling Capacitance …………………………………..
40
Gambar 3.4.
Blok Regulator 5V ………………………………………………
40
Gambar 3.5.
Blok Regulator 3.3V …………………………………………….
40
Gambar 3.6.
Blok Konektor JTAG ……………………………………………
41
vii
Gambar 3.7.
Blok PHY Layer dan konektor RG-45 ………………………….
41
Gambar 3.8.
Blok Power USB ………………………………………………..
42
Gambar 3.9
Blok Konektor USB …………………………………………….
42
Gambar 3.10
Blok Dataflash …………………………………………………..
42
Gambar 3.11. Gambar Modul Slave ……………………………………………
43
Gambar 3.12. Konfigurasi kabel pada Motor Servo ……………………………
43
Gambar 3.13. Catu daya 5 VDC dan Catu daya 9 VDC ……………………….
44
Gambar 3.14. Rangkaian tambahan pengubah 3.2V menjadi 5V ………………
45
Gambar 3.15. Susunan pin pada Modul Kamera ……………………………….
46
Gambar 3.16. Pengkabelan antara pin pada Modul Kamera dengan DB9 ……..
47
Gambar 3.17. Alur Program Kontrol Panel …………………………………….
50
Gambar 4.1.
Posisi pergerakan motor pada posisi 1800 arah Horisontal dan
900 arah Vertikal …………………………………………………
60
Gambar 4.2.
Grafik lebar pulsa terhadap sudut ……………………………….
61
Gambar 4.3.
Sinyal PWM pada sudut 00 ………………………………………
62
Gambar 4.4.
Batas-batas posisi pergerakan motor …………………………….
62
Gambar 4.5.
Halaman file jim.html yang tertampil pada web browser ……….
63
Gambar 4.6.
Proteksi saat nilai horisontal tidak sesuai ……………………….
64
Gambar 4.7.
File asil jim_13.jpg dengan resolusi 640x480 ………………….
65
Gambar 4.8.
Hasil print screen tampilan web ………………………………..
66
viii
DAFTAR TABEL
Tabel 1.1.
Tabel Perbandingan Kemampuan webcam dan IP-Camera ………..
2
Tabel 1.2.
Tabel perbandingan sistem yang akan dibuat ……………………...
3
Tabel 2.1.
List AT32UC3A dari segi memori ………………………………...
10
Tabel 2.2.
Konfigurasi pin yang dipakai ………………………………………
12
Tabel 2.3.
Pengalamatan Memori ……………………………………………..
14
Tabel 2.4.
High Speed Bus Masters dan High Speed Bus Slaves ……………..
15
Tabel 2.5.
Tabel 7 lapisan OSI ………………………………………………..
21
Tabel 2.6
Tabel lapisan pada protocol TCP/IP ……………………………….
23
Tabel 2.7.
List port-port pada protocol TCP dan UDP ……………………….
25
Tabel 2.8.
Kode Status HTTP Response ……………………………………..
28
Tabel 2.9.
Status Code dan Reason Pharse-nya ………………………………
28
Tabel 3.1.
Hasil Pengujian sinyal PWM dari function generator pada Motor Servo ……………………………………………………………….
55
Tabel 3.2.
Register untuk sinyal PWM ………………………………………..
56
Tabel 4.1.
Hasil Pengujian Sinyal PWM ……………………………………...
61
Tabel 4.2.
Hasil Pengukuran Modul Catu Daya ………………………………
63
Tabel 4.3.
List file gambar dari webcam ……………………………………..
64
Tabel 4.4.
Pengujian streaming gambar berdasarkan fps …………………….
67
ix
DAFTAR LISTING CODE
Listing Code 3.1.
Tombol Kontrol Panel ………………………………………
50
Listing Code 3.2.
Fungsi check_mtr(direction) ………………………………..
52
Listing Code 3.3.
Fungsi set_actuator_value(message) ………………………..
53
Listing Code 3.4.
Kode untuk menampilkan gambar ………………………….
53
Listing Code 3.5.
Kode untuk menampilkan gambar secara terus-menerus …..
54
Listing Code 3.6.
PWM Kontroler pada mikrokontroler ………………………
58
x
DAFTAR SINGKATAN
ADC
Analog to Digital Converter
CMOS
Complementary Metal Oxide Semiconductor
CRLF
Carriage Return Line Feed
DMA
Direct Memory Access
DMIPS
Dhrystone Million Instructions Per Second
DSP
Digital Signal Processing
EVK
Evaluation Kit
HTML
Hyper-Text Markup Language
IEEE
Institute of Electrical & Electronics Engineers, Inc
IP
Internet Protocol
JPEG
Joint Photographic Expert Group
JTAG
Joint Test Action Group
LAN
Local Area Network
LCD
Liquid Crystal Display
LQFP
Low-profile Quad Flat Package
MAC
Media Access Control
MII
Media Independent Interface
MMC
Multi Media Card
MPU
Memory Protection Unit
OS
Operating System
OTG
On-The-Go
PC
Personal Computer
xi
PCM
Pulse Code Modulation
PWM
Pulse Width Modulation
RISC
Reduced Instruction Set Computer
RTOS
Real Time Operating Systems
SD card
Secure Digital card
SPI
Serial Peripheral Interface
SRAM
Static Random Access Memory
TCP
Transmission Control Protocol
TTL
Transistor-transistor Logic
USART
Universal Synchronous/Asynchronous Receiver/Transmitter
USB
Universal Serial Bus
Webcam
Web Camera
xii