RANCANG BANGUN MINI REMOTELY OPERATED VEHICLE (ROV) UNTUK EKSPLORASI BAWAH AIR
HOLLANDA ARIEF KUSUMA
SKRIPSI
DEPARTEMEN ILMU DAN TEKNOLOGI KELAUTAN FAKULTAS PERIKANAN DAN ILMU KELAUTAN INSTITUT PERTANIAN BOGOR 2012
ii
PERNYATAAN MENGENAI SKRIPSI DAN SUMBER INFORMASI Dengan ini saya menyatakan bahwa Skripsi yang berjudul:
RANCANG BANGUN MINI REMOTELY OPERATED VEHICLE (ROV) UNTUK EKSPLORASI BAWAH AIR Adalah benar merupakan hasil karya sendiri dan belum diajukan dalam bentuk apapun kepada perguruan tinggi manapun. Semua sumber data dan informasi yang berasal atau dikutip dari karya yang diterbitkan maupun tidak diterbitkan dari penulis lain telah disebutkan dalam teks dan dicantumkan dalam Daftar Pustaka di bagian akhir skripsi.
Bogor, Mei 2012
HOLLANDA ARIEF KUSUMA C54070006
iii
RINGKASAN HOLLANDA ARIEF KUSUMA. Rancang Bangun mini Remotely Operated Vehicle (ROV) untuk Eksplorasi Bawah Air. Dibimbing oleh INDRA JAYA
Penelitian dilaksanakan pada bulan Maret 2011 hingga bulan Maret 2012. Perancangan dan pembuatan instrumen dilakukan di Laboratorium Instrumentasi Kelautan, Departemen Ilmu dan Teknologi Kelautan, Institut Pertanian Bogor. Penelitian ini dilaksanakan dengan tujuan untuk membuat mini Remotely Operated Vehicle (ROV) dan menguji kinerjanya di dalam air. Penelitian ini dilaksanakan untuk mengatasi kekurangan yang ada pada ROV RJ45 yang dibuat oleh Rizki dan Prihandono (2008). Kekurangan yang terdapat pada RJ45 antara lain rangka yang terlalu berat, kekuatan motor yang tidak cukup untuk menggerakkan ROV, adanya panas berlebih pada kompartemen utama, dan kurangnya sensor pendukung di dalamnya. Alat yang dirancang merupakan robot bawah air yang dapat melakukan manuver di dalam air. mini ROV yang dikembangkan memiliki dimensi total panjang 80 cm, lebar 62,5 cm, dan tinggi 62,5 cm. mini ROV ini terdiri dari beberapa unit fungsional yang secara keseluruhan terpadu dalam satu mikrokontroler ATmega32A. Mini ROV ini memiliki “mata” yang menggunakan sensor kamera (dengan keluaran berupa video) yang berfungsi untuk melihat kondisi di dalam air. Pengukuran arah mini ROV menggunakan sensor kompas digital CMPS10 yang dapat menentukan arah hingga 360° dengan ketelitian 0,1°. Penentuan sudut pitch dan roll juga menggunakan sensor CMPS10. Sudut pitch dan roll yang diperoleh memiliki rentang (-90°) – (+90°) dengan ketelitian 1,4°. Pada mini ROV ini juga disematkan sensor accelerometer H48C untuk melihat gaya gravitasi yang bekerja pada sumbu X, sumbu Y, dan sumbu Z dengan ketelitian 0,1 g. Suhu di dalam pipa utama diukur dengan menggunakan sensor suhu DS1820. Perancangan mini ROV dipadukan dalam beberapa proses perancangan yaitu pembuatan desain, perancangan konstruksi mekanik, perancangan konstruksi elektronik, dan desain piranti lunak sehingga tahapan terakhir adalah integrasi dari keseluruhan proses perancangan tersebut. Hasil integrasi ini berupa bentuk fisik mini ROV, sistem elektronik, dan program antarmuka grafis. Mini ROV ini diberi nama “RJ45 V2” sebagai pengembangan ROV RJ45 yang telah dibuat.
iv
© Hak cipta milik Hollanda Arief Kusuma, tahun 2012 Hak cipta dilindungi Dilarang mengutip dan memperbanyak tanpa izin tertulis dari Institut Pertanian Bogor, sebagian atau seluruhnya dalam bentuk apa pun, baik cetak, fotokopi, microfilm, dan sebagainya
v
RANCANG BANGUN MINI ROV (REMOTELY OPERATED VEHICLE) UNTUK EKSPLORASI BAWAH AIR
HOLLANDA ARIEF KUSUMA
SKRIPSI Sebagai Salah Satu Syarat untuk Memperoleh Gelar Sarjana Ilmu Kelautan pada Fakultas Perikanan dan Ilmu Kelautan Institut Pertanian Bogor
DEPARTEMEN ILMU DAN TEKNOLOGI KELAUTAN FAKULTAS PERIKANAN DAN ILMU KELAUTAN INSTITUT PERTANIAN BOGOR 2012
vi
SKRIPSI
Judul Skripsi
: RANCANG BANGUN MINI ROV (REMOTELY OPERATED VEHICLE) UNTUK EKSPLORASI BAWAH AIR
Nama Mahasiswa
: Hollanda Arief Kusuma
Nomor Pokok
: C54070006
Departemen
: Ilmu dan Teknologi Kelautan
Menyetujui, Pembimbing Utama
Prof. Dr. Ir. Indra Jaya, M. Sc. NIP. 19610410 198601 1 002
Mengetahui, Ketua Departemen Ilmu dan Teknologi Kelautan
Prof. Dr. Ir. Setyo Budi Susilo, M. Sc. NIP. 19580909 198303 1 003
Tanggal Lulus : 23 Mei 2012
vii
KATA PENGANTAR Puji syukur ke Hadirat Allah SWT atas segala limpahan rahmat, hidayah dan inayah yang diberikan sehingga penulis dapat menyelesaikan skripsi dengan baik. Skripsi yang berjudul “Rancang Bangun Mini Remotely Operated Vehicle (ROV) untuk Eksplorasi Bawah Air” merupakan salah satu syarat untuk mendapatkan gelar Sarjana Ilmu Kelautan pada Departemen Ilmu dan Teknologi Kelautan, Fakultas Perikanan dan Ilmu Kelautan, Institut Pertanian Bogor. Penulisan skripsi ini dilatarbelakangi oleh belum maksimalnya penelitian mengenai ROV di Indonesia. Hal ini memotivasi penulis untuk menyempurnakan instrumen ROV yang pernah dibuat oleh mahasiswa ITK FPIK IPB. Dalam kesempatan ini penulis ingin menyampaikan rasa terima kasih kepada: 1. Kedua orang tua beserta keluarga besar yang selalu memberikan dukungan, doa, dan nasehat yang tiada hentinya kepada penulis 2. Prof. Dr. Indra Jaya selaku dosen pembimbing yang telah membantu dalam penyelesaian tugas akhir. 3. Dr. Ir. H. Budhi Hascaryo Iskandar, M.Si selaku dosen penguji tamu pada sidang ujian akhir. 4. Dr. Ir. Henry M Manik, M.T selaku komisi pendidikan yang telah mengoreksi skripsi saya. 5. Muhammad Iqbal, M.Si, Williandi Setiawan, M.Si, dan Sri Ratih Deswati M.Si atas bantuan, ilmu, nasehat dan semangat yang telah diberikan.
viii
6. Iman Abdurrahman, Anugerah Adityayuda, Irwan Rudy Pamungkas, Luthfy Nizarul Fikry, dan Retnowulandari Wahyuningtyas yang telah menemani penulis dalam menyelesaikan penelitian ini. 7. Sayid Geubri Al Farisi, Ega Putra, dan Nando Amarily Putra yang telah membantu penulis dalam pengujian alat di lapang. 8. Seluruh teman-teman ITK, MIT, dan FDC yang selalu memberikan dukungan. Penulis menyadari bahwa skripsi ini masih jauh dari sempurna. Oleh karena itu, saran dan kritik sangat diharapkan. Penulis berharap skripsi ini dapat berguna bagi diri sendiri dan maupun orang lain.
Bogor, Mei 2012
Penulis
ix
DAFTAR ISI Halaman DAFTAR TABEL ................................................................................
xii
DAFTAR GAMBAR ............................................................................
xiii
DAFTAR LAMPIRAN ........................................................................
xvii
1. PENDAHULUAN ........................................................................... 1.1. Latar Belakang ..................................................................... 1.2. Tujuan .................................................................................. 1.3. Batasan Masalah ...................................................................
1 1 2 2
2. TINJAUAN PUSTAKA ................................................................. 2.1. Definisi ROV ....................................................................... 2.2. Klasifikasi ROV ................................................................... 2.3. Sejarah ROV ........................................................................ 2.4. Konstruksi ROV ................................................................... 2.4.1. Rangka ................................................................... 2.4.2. Motor Pendorong/ Thruster ................................... 2.4.3. Daya apung ............................................................ 2.4.4. Kamera ................................................................... 2.4.5. Baling-baling .......................................................... 2.4.6. Catu daya ............................................................... 2.4.7. Tether/ kabel .......................................................... 2.4.8. Pencahayaan ........................................................... 2.4.9. Mikrokontroler ....................................................... 2.4.10. EMS 2A Dual H-Bridge ......................................... 2.4.11. EMS 5A H-Bridge ................................................. 2.4.12. Kompas digital CMPS10 ....................................... 2.4.13. Dasar elektronik kompas ........................................ 2.4.14. Sistem kompas elektronik ...................................... 2.4.15. Kalkulasi pitch dan roll .......................................... 2.4.16. Kalkulasi heading .................................................. 2.4.17. Kompensasi kemiringan ......................................... 2.4.18. Hitachi H48C 3-Axis Accelerometer ..................... 2.4.19. Sensor suhu D1820 ................................................ 2.5. Pemrograman .......................................................................
3 3 4 7 8 8 9 10 12 12 13 14 14 15 16 18 19 22 25 26 29 31 32 32 33
3. METODOLOGI PENELITIAN ................................................... 3.1. Waktu dan Lokasi Penelitian ................................................ 3.2. Alat dan Bahan ...................................................................... 3.3. Rancangan Alat ..................................................................... 3.4. Desain Kerja .......................................................................... 3.5. Pembuatan Desain ................................................................. 3.6. Rancang Bangun Perangkat Keras ........................................
35 35 35 36 37 38 38
x
3.6.1. Pembuatan kerangka .............................................. 3.6.2. Pembuatan kompartemen elektronik ...................... 3.6.3. Pembuatan kompartemen kamera .......................... Rancang Bangun Rangkaian Elektronik .............................. Rancang Bangun Perangkat Lunak ...................................... 3.8.1. Mikrokontroler ....................................................... 3.8.2. Program antarmuka pengguna grafis ..................... Pengujian Kinerja ROV ....................................................... 3.9.1. Pengujian daya apung ............................................ 3.9.2. Pengujian CMPS10 ................................................ 3.9.3. Pengujian H48C ..................................................... 3.9.4. Pengujian sistem kendali ........................................
39 39 40 40 46 46 47 48 48 49 50 50
4. HASIL DAN PEMBAHASAN ...................................................... 4.1. Desain RJ45 V2 .................................................................... 4.2. Perangkat Keras ................................................................... 4.2.1. Rangka ................................................................... 4.2.2. Tabung kompartemen elektronik ........................... 4.2.3. Kamera CCD .......................................................... 4.2.4. Thruster .................................................................. 4.2.5. Rangkaian kendali operator ................................... 4.2.6. Rangkaian pengendali on board ............................ 4.3. Program Mikrokontroler ...................................................... 4.3.1. Inisialisasi dan konfigurasi mikrokontroler ATmega32A ........................................................... 4.3.2. Transmisi data ........................................................ 4.3.3. Pengambilan nilai arah, pitch, dan roll dari CMPS10 ................................................................. 4.3.4. Pengambilan nilai accelerometer dari H48C ......... 4.3.5. Pengambilan data suhu dari sensor DS1820 .......... 4.3.6. Penyusunan format data dan pengiriman ke komputer ................................................................ 4.3.7. Pergerakan thruster ................................................ 4.4. Program Antarmuka Pengguna Grafis ................................. 4.4.1. Program penampil video ........................................ 4.4.2. Program komunikasi serial antara komputer dan mikrokontroler ........................................................ 4.4.3. Program joystick untuk menggerakkan motor ....... 4.4.4. Program penampil arah, pitch, dan roll ................. 4.4.5. Program penghitung waktu operasi ....................... 4.4.6. Program penunjukan sikap (attitude) Mini ROV ... 4.4.7. Program penampil suhu kompartemen RJ45 V2 ... 4.5. Pengujian Kinerja Mini ROV ............................................... 4.5.1. Pengujian daya apung ............................................ 4.5.2. Pengujian CMPS10 ................................................ 4.5.3. Pengujian H48C ..................................................... 4.5.4. Pengujian sistem kendali ........................................
52 52 54 54 55 56 57 57 58 59
3.7. 3.8.
3.9.
59 62 62 63 68 69 72 74 75 75 76 77 77 78 78 78 79 79 84 85
xi
5. KESIMPULAN DAN SARAN ...................................................... 5.1. Kesimpulan .......................................................................... 5.2. Saran .....................................................................................
88 88 88
DAFTAR PUSTAKA ...........................................................................
90
LAMPIRAN ..........................................................................................
93
xii
DAFTAR TABEL Halaman Tabel 1. Register CMPS10 .....................................................................
22
Tabel 2. Akurasi dari heading, pitch dan roll ........................................
26
Tabel 3. Definisi tanda pengukuran baku sensor LSM303DLH ............
27
Tabel 4. Tabel kebenaran pergerakan motor 1 .......................................
44
Tabel 5. Tabel kebenaran pergerakan motor 2 .......................................
44
Tabel 6. Tabel kebenaran pergerakan motor ..........................................
45
Tabel 7. Nilai accelerometer pada tiap posisi ........................................
50
Tabel 8. Pemilihan kanal pengambilan data accelerometer ...................
67
Tabel 9. Format pengiriman data ...........................................................
71
Tabel 10. Aktivasi motor berdasarkan karakter yang dikirim ................
74
Tabel 11. Penekanan tombol joystick dan perintah motor yang dilaksanakan ...........................................................................
76
Tabel 12. Nilai accelerometer pada tiap posisi ......................................
84
xiii
DAFTAR GAMBAR Halaman Gambar 1.
Komponen dasar sistem ROV ...............................................
4
Gambar 2.
Berbagai jenis ROV ..............................................................
5
Gambar 3.
Konfigurasi motor DC ..........................................................
9
Gambar 4.
Bilge pump ............................................................................
10
Gambar 5.
Penempatan motor dan stabilitasnya .....................................
10
Gambar 6.
Kesetimbangan hidrostatik ROV ..........................................
11
Gambar 7.
CG dan CB pada ROV ..........................................................
11
Gambar 8.
Kamera CCD .........................................................................
12
Gambar 9.
Ilustrasi gaya dan kecepatan vektor ......................................
13
Gambar 10. Konfigurasi pin pada mikrokontroler ATmega32A ..............
16
Gambar 11. EMS 2A Dual H-Bridge .......................................................
17
Gambar 12. L298N ...................................................................................
17
Gambar 13. EMS 5A H-Bridge ................................................................
18
Gambar 14. IC MC33887VW ...................................................................
19
Gambar 15. GI821 ....................................................................................
19
Gambar 16. Konfigurasi pin CMPS10 ......................................................
20
Gambar 17. Konfigurasi pin LSM303DLH ..............................................
20
Gambar 18. I2C communication protocol ................................................
21
Gambar 19. 6 Degree of freedom .............................................................
23
Gambar 20. Gerakan pitch ........................................................................
24
Gambar 21. Gerakan roll ..........................................................................
25
Gambar 22. Diagram blok sistem kompas elektronik ..............................
26
xiv
Gambar 23. Sistem koordinat kompas elektronik .....................................
27
Gambar 24. Prosedur rotasi ......................................................................
28
Gambar 25. Penentuan sudut heading ......................................................
29
Gambar 26. Kalkulasi heading .................................................................
30
Gambar 27. Gerakan pitch dan roll ..........................................................
31
Gambar 28. Konfigurasi pin modul H48C ...............................................
32
Gambar 29. Bentuk fisik dan konfigurasi kaki D1820 .............................
33
Gambar 30. Desain sistem kerja tiap komponen pada mini ROV ............
36
Gambar 31. Diagram alir perancangan mini ROV ...................................
37
Gambar 32. Tampilan Google Sketch Up 7 ..............................................
38
Gambar 33. Rangka RJ45 .........................................................................
39
Gambar 34. Koneksi konektor 8 pin .........................................................
40
Gambar 35. Modul kompas dan penghubungannya dengan pull up resistor ...................................................................................
42
Gambar 36. Penghubungan pin H48c dengan pin mikrokontroler ...........
42
Gambar 37. Penghubungan D1820 dengan pin mikrokontroler ...............
43
Gambar 38. Koneksi EMS 2A Dual H-Bridge .........................................
43
Gambar 39. Koneksi modul EMS 5A H-Bridge .......................................
45
Gambar 40. Tampilan Code Vision AVR C Compiler 2.05 .....................
46
Gambar 41. Kabel data K-125R USB AVR Programmer ........................
46
Gambar 42. Sketsa jendela GUI ...............................................................
47
Gambar 43. Peletakan busur derajat untuk pengukuran pitch ..................
49
Gambar 44. Peletakan busur derajat untuk pengukuran roll ....................
50
Gambar 45. Desain mekanik RJ45 V2 .....................................................
53
Gambar 46. Desain konektor RJ45 V2 .....................................................
53
xv
Gambar 47. Desain kompartemen elektronik RJ45 V2 ............................
53
Gambar 48. Rangka RJ45 V2 ...................................................................
54
Gambar 49. Pemasangan klem (tanda panah) pada rangka ......................
54
Gambar 50. Bentuk fisik lengkap RJ45 V2 ..............................................
55
Gambar 51. Konektor kabel (tanda panah) ...............................................
56
Gambar 52. Kamera depan dan kamera bawah ........................................
56
Gambar 53. Pemberian lem epoxy pada kompartemen kamera ...............
56
Gambar 54. Penempatan thruster .............................................................
57
Gambar 55. Penempatan komponen elektronik ........................................
58
Gambar 56. Sinyal CLK pada H48C ........................................................
65
Gambar 57. Sinyal untuk memulai start bit dan pemilihan mode input (Biru : start bit; Merah : pemilihan mode input) ..........
66
Gambar 58. Tampilan GUI RJ45 V2 ........................................................
74
Gambar 59. Direktori file video yang tersimpan ......................................
75
Gambar 60. Pengaturan komunikasi serial pada GUI ..............................
76
Gambar 61. Penampil arah, pitch, dan roll ...............................................
77
Gambar 62. Tampilan posisi ROV secara tiga dimensi ............................
77
Gambar 63. Penampil waktu operasi ........................................................
78
Gambar 64. Tampilan nilai accelerometer ................................................
78
Gambar 65. Penempatan busur derajat pada percobaan sudut pitch (a) dan roll (b) ............................................................................
80
Gambar 66. Pengukuran CMPS10 tanpa magnetic shielding ...................
80
Gambar 67. Pengukuran CMPS10 dengan magnetic shielding ................
80
Gambar 68. Bahan magnetic shielding yang diujicobakan ......................
81
Gambar 69. Pengukuran CMPS10 setelah dimasukkan ke dalam rangka .
81
xvi
Gambar 70. Ilustrasi gangguan besi pada medan magnet .........................
82
Gambar 71. Pengujian sudut pitch ............................................................
83
Gambar 72. Pengujian sudut roll ..............................................................
84
Gambar 73. Tampilan video kamera depan dan kamera bawah di dalam air ...........................................................................
85
Gambar 74. Aliran air saat motor diaktifkan keduanya ............................
87
Gambar 75. Aliran air saat hanya satu motor yang diaktifkan (Kiri : percobaan I, Kanan : percobaan II) ...........................
87
Gambar 76. Bentuk baling-baling yang digunakan dalam uji coba RJ45 V2 (Kiri : percobaan I, Kanan : percobaan II) .............
87
Gambar 77. Pergerakan mini ROV ...........................................................
87
xvii
DAFTAR LAMPIRAN Halaman Lampiran 1. Fungsi alat yang digunakan untuk pembuatan RJ45 V2 ...
94
Lampiran 2. Bahan-bahan yang digunakan dalam pembuatan RJ45 V2
95
Lampiran 3. Datasheet mikrokontroler ATmega32A ............................
97
Lampiran 4. Manual DT-AVR Low Cost Micro System .......................
98
Lampiran 5. Manual CMPS10 ...............................................................
99
Lampiran 6. Manual H48C ....................................................................
100
Lampiran 7. Datasheet Sensor Suhu Dallas D1820 ...............................
101
Lampiran 8. Manual EMS 2A Dual H-Bridge .......................................
102
Lampiran 9. Manual EMS 5A H-Bridge ................................................
104
Lampiran 10. Diagram alir pembuatan program mikrokontroler pada mini ROV .................................................................
106
Lampiran 11. Kode program mikrokontroler pada Code Vision AVR 2.05.0 ................................................................................
108
Lampiran 12. Listing program GUI pada Delphi 7 ................................
119
Lampiran 13. Data pengujian CMPS10 .................................................
128
1. PENDAHULUAN 1.1
LATAR BELAKANG Remotely Operated Vehicle (ROV) adalah robot bawah air yang
dioperasikan oleh seseorang di atas kapal melalui kabel yang membawa sinyal elektrik secara bolak balik antara operator dan wahana ini. Di dalam ROV biasanya terdapat Charge Coupled Device (CCD) dan lampu pencahayaan. Beberapa instrumen dapat ditambahkan untuk menambahkan kemampuan ROV seperti manipulator, water sampler, dan Conductivity, Temperature and Depth (CTD) (NOAA, 2010). ROV digunakan untuk membantu penyelam atau memperluas kemampuan manusia untuk menjangkau laut dalam dimana penyelam sulit bekerja secara aman dan efektif. Biasanya ROV digunakan untuk melakukan dua pekerjaan yaitu inspeksi, manipulasi, instalasi dan pemeliharaan peralatan bawah air (subsea equipment) dan survei dasar laut seperti survei karang (Lirman et al, 2006). Perkembangan ROV di dunia sudah pesat. Seiring berkembangnya ilmu pengetahuan dan teknologi ROV dikembangkan mulai dari ukuran yang besar hingga yang kecil bahkan ukurannya sudah dalam mikro. Namun sayangnya, perkembangan ini tidak diikuti secara baik di Indonesia. Di Indonesia hanya ada beberapa ROV yang dikembangkan. Salah satunya adalah RJ45 buatan Departemen Ilmu dan Teknologi Kelautan, Institut Pertanian Bogor. Kondisi ini yang membuat penulis ingin mengembangkan ROV yang dapat digunakan sebagai wahana eksplorasi bawah laut. RJ45 sebagai salah satu ROV yang telah dibuat masih memiliki beberapa kelemahan yang harus diperbaiki. Kekurangan RJ45 terdahulu adalah rangka
1
2
yang terlalu berat, kekuatan motor yang tidak cukup untuk menggerakkan ROV, adanya panas berlebih pada kompartemen utama, kurangnya sensor pendukung di dalamnya. Oleh karena itu, penulis merasa perlu menyempurnakan ROV yang pernah dibuat sebelumnya. Harapannya pengembangan ini dapat menuju tahap yang lebih baik sehingga Indonesia bisa memproduksi ROV sendiri.
1.2
TUJUAN Tujuan dari penelitian ini adalah membuat mini ROV dan menguji
kinerjanya di dalam air.
1.3
BATASAN PENELITIAN Penelitian ini dilaksanakan sebagai langkah awal untuk membuat mini
ROV yang dapat digunakan secara luas oleh masyarakat ilmiah. Oleh karena itu, perlu adanya batasan penelitian. Penelitian ini dibatasi dalam hal pembuatan mini ROV dan kinerja secara fisik dari mini ROV ini. Secara khusus batasan penelitiannya adalah: 1. Kabel ROV yang digunakan 10 meter 2. Uji coba hanya dilakukan di watertank dan kolam renang dengan maksimum kedalaman 3 meter. 3. Kinerja yang diukur adalah daya apung mini ROV, pergerakan mini ROV, tampilan video pada program antarmuka grafis, kinerja sensor accelerometer dan kompas digital, dan sistem kendali mini ROV.
2.
2.1
TINJAUAN PUSTAKA
DEFINISI ROV Secara umum, wahana bawah air dibedakan menjadi dua kategori yaitu
wahana berawak (Manned Underwater Vehicle) dan wahana tidak berawak (Unmanned Underwater Vehicle – UUV). Remotely Operated Vehicle (ROV) adalah robot bawah air yang dapat bermanuver secara tinggi, dioperasikan oleh seseorang di atas kapal. ROV dihubungkan dengan kabel yang membawa sinyal elektrik secara bolak balik antara operator dan wahana ini. Di dalam ROV biasanya terdapat Charge Coupled Device (CCD) dan lampu pencahayaan. Beberapa instrumen dapat ditambahkan untuk menambahkan kemampuan ROV seperti manipulator, water sampler, dan Conductivity, Temperature and Depth (CTD) (NOAA, 2010). ROV adalah wahana bawah air yang bertenaga listrik dan dikontrol melalui pusat, dapat bermanuver sesuai perintah manusia dengan pendorong (thruster) hidrolik atau elektrik (Hoong, 2010). Definisi lain disampaikan oleh Christ dan Wernli (2007) dimana ROV adalah kamera yang dipasang dalam wadah tahan air, dengan pendorong untuk bermanuver, yang melekat pada kabel ke permukaan dimana sinyal video yang dikirim. Sebuah ROV menerima energi dan informasi perubahan dengan panel kontrol yang terletak di permukaan melalui kabel pusat. Dari panel kontrol, operator dapat merencanakan pekerjaan atau menggunakan satu joystick untuk manuver wahana secara langsung (Gambar 1).
3
4
Gambar 1. Komponen dasar sistem ROV (Sumber: Christ dan Wernli, 2007)
2.2
KLASIFIKASI ROV Ada beberapa jenis ROV yang telah dikembangkan di dunia (Gambar 2).
Beberapa ahli telah mengklasifikasikan ROV menjadi beberapa kelompok. Christ dan Wernli (2007) mengklasifikasikan sistem ROV menjadi tiga kategori dasar yaitu: a.
Observation class (Kelas observasi). ROV kelas observasi didesain secara
khusus untuk penggunaan yang ringan dengan sistem propulsi untuk membawa paket kamera dan sensor ke tempat yang dapat diambil gambar atau data yang berguna. ROV kelas observasi yang terbaru memiliki kemampuan yang lebih dari hanya sekedar melihat. Penambahan peralatan dan instrumen di dalam ROV memungkinkan wahana ini untuk melakukan kegiatan sebagai wahana bawah air yang memiliki fungsi penuh. b.
Work class (Kelas pekerja). Sistem ROV ini secara umum memiliki
bingkai yang besar (ukuran dalam meter) dengan multifungsi manipulator, propulsi hidrolik, dan peralatan berat yang digunakan untuk proyek konstruksi bawah air. c.
Special use (Fungsi Khusus). Sistem ROV ini menggambarkan wahana
bawah air yang didesain untuk tujuan khusus. Contoh wahana ini adalah ROV
5 yang digunakan untuk membenamkan kabel di dasar laut. ROV didesain untuk mengeruk dasar laut agar dapat membenamkan kabel telekomunikasi.
Gambar 2. Berbagai jenis ROV (Sumber: Christ dan Wernli, 2007) Norsok Standard (2003) mengklasifikasikan ROV menjadi: a.
Kelas I – Murni Observasi
Wahana murni observasi secara fisik dibatasi oleh obervasi video. Secara umum wahana berukuran kecil yang hanya dilengkapi dengan kamera video, cahaya dan pendorong (thruster). Wahana tidak dapat melakukan pekerjaan yang lain tanpa adanya modifikasi yang cukup. b.
Kelas II – Observasi dengan opsi adanya muatan (payload)
Wahana mampu untuk membawa sensor tambahan seperti kamera berwarna, sistem pengukuran untuk perlindungan katodik, kamera video tambahan, dan sistem sonar. Wahana Kelas II mampu beroperasi tanpa kehilangan fungsi utamanya sambil membawa setidaknya dua sensor tambahan. c.
Kelas III – tipe pekerja (work class)
Wahana berukuran besar yang mampu untuk membawa sensor tambahan dan/atau manipulator. Wahana Kelas III biasanya memiliki kemampuan ganda yang memungkinkan sensor tambahan dan peralatan beroperasi bersamaan tanpa
6 menganggu kinerja sistem pusat. Wahana ini lebih besar dan lebih kuat dibandingkan Kelas I dan Kelas II. Kelas III A – Kekuatan Wahana Tipe Pekerja kurang dari 100 hp (horse power). Kelas III B – Kekuatan Wahana Tipe Pekerja antara 100 hp dan 150 hp. Kelas III C – Kekuatan Wahana Tipe Pekerja lebih dari 150 hp. d.
Kelas IV – Seabed-working Vehicle
Wahana bekerja di dasar laut dengan menggunakan roda atau sistem sabuk traksi yang digerakkan oleh pendorong baling-baling atau kekuatan jet air, atau kombinasi keduanya. Secara khusus, Wahana Kelas IV lebih besar dan berat dibandingkan Wahana Kelas III dan dikonfigurasikan untuk pekerjaan dengan tujuan khusus. pekerjaan tersebut biasanya mencakup penggalian pipa dan kabel, penggalian, pengerukan dan pekerjaan konstruksi bawah laut yang dioperasikan dari jarak jauh. e.
Kelas V – Prototipe atau wahana yang dalam pengembangan
Wahana di kelas ini termasuk yang sedang dikembangkan dan yang dianggap sebagai prototipe. Wahana dengan tujuan khusus yang tidak sesuai dengan salah satu dari kelas yang di atas juga dimasukkan ke dalam kelas V. Selain kedua pengklasifikasian di atas, ROV juga diklasifikasikan berdasarkan ukurannya yakni (EVS-380, 2007) a.
Work Class ROV. ROV berukuran sangat besar dan dioperasikan oleh
kru. Pra kru terdiri dari pilot, supervisor, dan dalam beberapa kasus co-pilot. Umumnya para anggota berpengalaman dengan pengetahuan luas dalam elektronik, mekanik, dan hidrolik. Work Class ROV digunakan untuk operasi laut dalam, penguburan kabel, perbaikan dan pemulihan objek yang besar. ROV ini
7 diangkat dari dan ke dalam air menggunakan derek. ROV merupakan alat penting di dunia yang membuat pekerjaan bawah air berkurang tantangannya. b.
Kelas Observasi atau General ROV. ROV ini memiliki ukuran yang lebih
kecil tapi dapat melakukan tugas-tugas di bawah air, khususnya di daerah yang tidak dapat dilalui oleh Work Class ROV. Tugas-tugas ini meliputi inspeksi pipa, operasi pencarian dan penyelamatan, inspeksi kapal, pencarian harta karun, inspeksi pelabuhan, dan lain-lain. Dalam banyak kasus, ROV ini dapat digunakan dan dikendalikan oleh hanya beberapa orang. Hal ini dapat membuat pekerjaan menjadi lebih mudah dan lebih murah. c.
Mini dan mikro ROV. ROV ini sangat kecil dalam ukuran dan berat. Saat
ini, Mini ROV biasanya memiliki berat sekitar 15 kg dan mikro ROV dapat mencapai berat kurang dari 3 kg. Pada dasarnya satu orang bisa membawa sistem ROV yang lengkap pada sebuah perahu kecil, menyebarkan dan mengoperasikannya tanpa masalah. Wahana ini sangat berguna dalam banyak aplikasi. ROV ini harganya lumayan terjangkau dan dapat menjadi alternatif yang bagus untuk penyelam.
2.3
SEJARAH ROV ROV pertama kali dibuat pada tahun 1953 oleh Dimitri Rebikoff dengan
nama POODLE. Angkatan laut AS mengambil langkah nyata pertama untuk membuat sistem operasi ROV. Angkatan Laut AS membuat ROV dengan nama Cable-Controlled Underwater Research Vehicle (CURV). Wahana ini dibuat untuk mengambil bom dan torpedo yang hilang di dasar laut. Kemudian Angkatan Laut AS membuat Pontoon Implacement Vehicle (PIV) dan SNOOPY. SNOOPY merupakan wahana pertama yang dapat dibawa kemana-mana. Pada
8 tahun 1974, lebih dari 20 ROV diciptakan. Pada tahun itu dapat dikatakan perkembangan ROV telah mencapai tahap pendewasaan. Setelah itu, perkembangan ROV semakin pesat. Perkembangan ini sangat dipengaruhi oleh kebutuhan industri lepas pantai. Kebutuhan akan keselamatan kerja menyebabkan perusahaan menggantikan fungsi penyelam dengan menggunakan ROV. Pada tahun 1990-an, diperkirakan ada lebih dari 100 perusahaan pembuat ROV, dan lebih dari 100 operator menggunakan 3000 macam ROV yang berbeda ukuran dan kemampuannya (Christ dan Wernli, 2007).
2.4 2.4.1
KONSTRUKSI ROV Rangka Rangka yang digunakan dalam ROV dapat berasal dari beberapa bahan
seperti besi, aluminium, PVC, dan Polimetil Metakrilik. Ukuran rangka ROV sangat bergantung dari beberapa kriteria berikut : (Christ dan Wernli, 2007) i.
Berat total ROV di udara,
ii.
Volume komponen di dalam ROV,
iii.
Volume sensor dan instrumen,
iv.
Volume daya apung,
v.
Kriteria beban bantalan poros dari rangka. Mini ROV yang akan dibuat menggunakan pipa PVC dan pipa besi. Pipa
PVC digunakan karena memiliki kelebihan yakni sulit rusak, tahan lama, tidak berkarat, membusuk, dapat digunakan setiap waktu, dan awet (Kietzman, 2011). Pipa besi digunakan karena dapat menambah daya berat ROV yang digunakan untuk mengimbangi daya apung yang dihasilkan oleh pipa PVC.
9
2.4.2
Motor pendorong/ thruster Jenis motor dapat dibedakan menjadi dua yakni motor AC dan motor DC.
Sejauh ini, ROV menggunakan motor DC karena kekuatan, ketersediaan, keragaman, kehandalan, dan kemudahan antarmuka (interface). Bagaimanapun juga motor DC memiliki kesulitan dalam desain dan karakteristik operasionalnya. Faktor-faktor ini membuatnya jauh dari sempurna untuk aplikasi ini meliputi: •
Kecepatan optimum motor jauh lebih tinggi dari kecepatan rotasi balingbaling in-water normal sehingga perlu diberikan gigi untuk memperoleh kecepatan efisien operasi.
•
Motor DC menyerap arus yang banyak.
•
Motor DC membutuhkan skema kontrol Pulse Width Modulation (PWM) motor yang rumit untuk mendapatkan operasi yang tepat. (Christ dan Wernli, 2007) Motor DC biasa digunakan karena memiliki kecepatan dan torsi yang
bagus serta mudah dikontrol arah putaran dan kecepatannya (Delta Electronic, 2007). Motor DC memiliki 2 pin input yaitu tegangan dan ground (Gambar 3). Pembalikan arah putaran motor DC dapat dilakukan dengan membalikkan masukan tegangan dan ground.
Gambar 3. Konfigurasi motor DC (Sumber: Delta Electronic, 2007) Bilge pump merupakan salah satu jenis pompa yang menggunakan motor DC untuk menggerakkan pompa ini. Bilge pump biasa digunakan di dalam kapal
10 atau perahu untuk menyedot air yang ada di lambung kapal. Bilge pump (Gambar 4) dioperasikan pada tegangan 12 VDC dengan arus yang sesuai dengan tipe dari bilge pump itu sendiri. Mini ROV yang akan dibuat menggunakan motor DC pada bilge pump ini sebagai penggerak ROV karena motor ini sudah kedap air.
Gambar 4. Bilge pump Penempatan motor dapat mempengaruhi stabilitas ROV. Pada ROV, stabilitas diperlukan agar ROV mudah dikendalikan. Penempatan motor yang baik dapat dilihat pada Gambar 5.
Kurang stabil
kamera
T h r u s t e r
Lebih stabil Paling stabil
Kurang stabil
Lebih stabil
Gambar 5. Penempatan motor dan stabilitasnya (Sumber: Christ dan Wernli, 2007)
2.4.3
Daya apung Daya apung suatu benda dirumuskan dalam hukum archimedes.
Berdasarkan hukum archimedes, setiap benda yang tercelup sebagian atau
11 seluruhnya dalam fluida akan terangkat ke atas oleh gaya yang sama dengan berat dari fluida yang dipindahkan (Gambar 6). Persamaannya ditulis sebagai berikut: . . ……… (1) Dimana :
ρ
= massa jenis zat cair (kg/m3)
V
= volume benda yang tercelup ke dalam air (m3)
G = percepatan gravitasi (m/detik2) Fa = gaya ke atas (N) Resultan semua gaya berat pada fluida yang dipindahkan berada di tengah badan dan dikenal dengan istilah “Center of Gravity” (CG). CG merupakan jumlah dari semua gaya berat yang bekerja pada badan akibat gravitasi bumi. Resultan gaya apung berlawanan dengan tarikan gravitasi. Resultan ini mengarah ke atas melalui CG dan dinamakan “Center of Buoyancy” (CB) (Gambar 7)
Fluida yang dipindahkan
tekanan
berat
(Christ dan Wernli, 2007).
Gambar 6. Kesetimbangan hidrostatik ROV (Sumber: Christ dan Wernli, 2007)
Gambar 7. CG dan CB pada ROV (Sumber: Christ dan Wernli, 2007)
12
2.4.4
Kamera Kamera merupakan bagian yang penting dalam sebuah ROV. Kamera
dapat dianggap sebagai “mata” ROV. Setiap ROV menggunakan kamera ataupun video kamera untuk navigasi maupun untuk memotret benda yang ada di dalam air. Saat ini, sebagian besar sistem ROV yang berukuran kecil menggunakan perangkat kamera charge-coupled device (CCD) yang harganya murah (Gambar 8). Sistem kamera ini terpasang pada papan sirkuit kecil dan menghasilkan sinyal video yang ditransmisikan melalui kabel ke piranti penangkap video (Christ dan Wernli, 2007).
Gambar 8. Kamera CCD (Sumber: Toko Komputer, 2009)
2.4.5
Baling-baling Baling-baling berfungsi sebagai penggerak ROV. Putaran baling-baling
akan membuat aliran fluida mendorong ROV. Arah putaran baling-baling juga akan mempengaruhi aliran fluida. Baling-baling didesain untuk bergerak dan mengarahkan fluida berlawanan dengan arah gerak (Christ dan Wernli, 2007). Baling-baling biasanya didesain dengan geometri kompleks yang berubah sepanjang radius bilahnya. Geometri kompleks ini dapat diurai dalam bagianbagian yang lebih kecil dimulai dari pangkal hingga ujung dari baling-balingnya. Setiap bagian dapat diubah untuk mengoptimalkan daya angkat yang dibutuhkan pada bagian yang ditambahkan. Diagram interaksi gaya dapat membantu
13 memahami dasar dari bagian baling-baling ini. Dasar gaya vektor dan sudutnya dapat dilihat pada Gambar 9 (Schultz, 2009).
Gambar 9. Ilustrasi gaya dan kecepatan vektor (Sumber: Schultz, 2009) Pada Gambar 9, Ω merupakan frekuensi rotasi dan r adalah jarak radial dari bagian tengah pusat baling-baling, Ωr merupakan vektor kecepatan sudut, Va merupakan vektor kecepatan depan (forward velocity vector), V merupakan vektor kecepatan baling-baling (jumlah vektor Ωr dan Va). dQ merupakan perubahan torsi dan dT merupakan perubahan daya dorong (Schultz, 2009).
2.4.6
Catu daya Sumber tenaga ROV dapat menggunakan tegangan AC maupun DC.
Tegangan AC memiliki kemampuan mentransmisikan energi lebih jauh dibandingkan DC. Tegangan DC memiliki kelebihan dalam biaya yang murah dan berat komponen kabel. Tegangan DC memiliki inductance noise yang kecil sehingga tidak perlu memberikan pelindung kabel lagi. Tidak seperti tegangan AC yang harus diberikan pelindung kabel agar rangkaian tetap aman (Christ dan Wernli, 2007). Penggunaan sumber tegangan disesuaikan dengan keinginan pembuat. Banyak faktor yang harus dipikirkan dalam memilih jenis dan besarnya tegangan yang akan digunakan. Beberapa operator lebih menyukai untuk menggunakan
14 inverter agar dapat menggunakan tegangan AC. Beberapa sistem ROV yang lebih kecil hanya menggunakan tegangan DC sebagai sumber tenaga mereka. Pada intinya, tujuan catu daya adalah mengirimkan tenaga untuk menggerakkan thruster saat beroperasi (Christ dan Wernli, 2007).
2.4.7
Tether/ kabel Tether adalah suatu kumpulan kabel yang dapat mengalirkan dan memuat
daya listrik, video, maupun sinyal data untuk komunikasi antara operator dan wahana bawah air. Biasanya kabel terbuat dari tembaga atau fiber optik (EVS380, 2007). Tether menjadi sangat penting dalam ROV dan menjadi kunci kesuksesan pengembangan ROV. Tether digunakan karena gelombang Frekuensi Radio (RF) tidak dapat digunakan dalam air. Gelombang RF hanya dapat melakukan penetrasi beberapa panjang gelombang saja di dalam air dikarenakan atenuasinya yang sangat tinggi. Selain itu, penggunaan tether menjadi pilihan saat ini karena penggunaan transmisi hidroakustik tidak memadai. Transmisi hidroakustik terbatas pada 100 kilobyte tiap detik. Hal ini sangat tidak cukup untuk membawa data video resolusi tinggi. Oleh karena itu, penggunaan tether menjadi mutlak pada ROV agar dapat bekerja secara penuh (Christ dan Wernli, 2007).
2.4.8
Pencahayaan Pencahayaan sangat diperlukan oleh ROV untuk membantu pengamatan di
dalam air. Seperti diketahui bahwa di dalam air cahaya semakin redup karena adanya penghamburan dan penyerapan. Kedua hal ini yang mempengaruhi kejernihan air. Selain itu, pencahayaan diperlukan untuk memperlihatkan warna
15 asli dari suatu objek. Di dalam air, warna merah terserap pada kedalaman beberapa cm saja. Lampu yang digunakan merupakan jenis LED (Light Emitting Diode). LED merupakan semikonduktor yang memancarkan spektrum cahaya inkoheren dekat ketika secara elektrik dipasang pada arah maju. Efek ini merupakan bentuk dari elektroluminesen. Warna yang dipancarkan tergantung dari komposisi kimia dari material semikonduktor yang digunakan. Warnanya dapat berupa ultraviolet dekat, cahaya tampak, atau infra merah. Teknologi LED sangat berguna untuk pencahayaan bawah air karena konsumsi tenaga rendah, pembangkitan panas rendah, dapat dikontrol hidup/mati secara cepat, warna tetap selama masa hidup LED, jangka pemakaian panjang, dan biaya pembuatan murah (Christ dan Wernli, 2007).
2.4.9
Mikrokontroler Mikrokontroler ATmega32A (Gambar 10) merupakan salah satu produk
Atmel dan termasuk generasi AVR (Alf and Vegard’s Risc processor). ATmega32A memiliki bagian sebagai berikut (Atmel, 2011) : 1)
Saluran I/O sebanyak 32 buah, yaitu Port A, Port B, Port C, dan Port D.
2)
ADC 10 bit sebanyak 8 saluran.
3)
CPU yang terdiri dari 32 buah register.
4)
Internal SRAM sebesar 2 Kilobyte.
5)
Memori Flash sebesar 32 kb dengan kemampuan Read While Write.
6)
Unit interupsi internal dan eksternal.
7)
Port antarmuka SPI.
8)
EEPROM sebesar 102 byte yang dapat diprogram saat operasi.
16 9)
Antarmuka komparator analog.
10)
Port USART (Universal Synchronous and Asynchronous serial Receiver and Transmitter) untuk komunikasi serial.
Gambar 10. Konfigurasi pin pada mikrokontroler ATmega32A (Sumber: Atmel, 2011)
2.4.10
EMS 2A Dual H-Bridge Embedded Module Series (EMS) 2A Dual H-Bridge (Gambar 11)
merupakan driver H-Bridge yang didesain untuk menghasilkan drive 2 arah dengan arus kontinu hingga 2 Ampere pada tegangan 4,8 Volt hingga 46 Volt. Tiap H-Bridge dilengkapi dengan sensor arus beban yang dapat digunakan sebagai umpan balik ke pengendali. Modul ini dapat menggerakkan beban-beban induktif seperti relay, solenoida, motor DC, motor stepper, dan berbagai macam beban lainnya. Spesifikasi modul ini adalah sebagai berikut (Innovative Electronics, 2009a) : •
Terdiri dari 2 driver H-Bridge yang dapat diparalel.
•
Input kompatibel dengan level tegangan TTL dan CMOS.
17 •
Jalur catu daya input (VCC) terpisah dari jalur catu daya untuk beban (V motor).
•
Output tri-state.
•
Dilengkapi dengan dioda eksternal untuk pengaman beban induktif.
•
Dilengkapi dengan sensor beban untuk tiap H-Bridge.
Gambar 11. EMS 2A Dual H-Bridge (Sumber: Innovative Electronics, 2011a)
Gambar 12. Bentuk fisik dan konfigurasi kaki L298N (Sumber: STMicroelectronics, 2000) EMS 2A Dual H-Bridge menggunakan IC (Intergrated Circuit) L298N sebagai driver motor. L298N akan secara otomatis mengubah arah gerak motor sesuai dengan perintah yang diterimanya. IC L298N memiliki 15 kaki yang memiliki fungsi seperti pada Gambar 12. Modul EMS 2A Dual H-Bridge juga dilengkapi dengan komponen ESC2B yang berfungsi sebagai dioda penyearah.
18
2.4.11
EMS 5A H-BRIDGE EMS 5A H-Bridge (Gambar 13) merupakan driver H-Bridge yang
didesain untuk menghasilkan drive 2 arah dengan arus kontinu hingga 5 Ampere pada tegangan 5 Volt hingga 40 Volt. Modul ini memiliki kemampuan yang mirip dengan EMS 2A Dual H-Bridge dan adanya tambahan kemampuan pada arus yang dapat dialirkan lebih besar. Perbedaan modul ini dengan EMS 2A Dual H-Bridge adalah pada kemampuan menggerakkan beban. EMS 5A H-Bridge hanya dapat menggerakkan 1 beban, sedangkan EMS 2A Dual H-Bridge dapat menggerakkan 2 beban sekaligus. Spesifikasi EMS 5A H-Bridge yang berbeda dengan EMS 2A Dual H-Bridge adalah (Innovative Electronics, 2009b) : •
Frekuensi PWM sampai dengan 10 kHz,
•
Active current limiting,
•
Proteksi hubungan singkat,
•
Proteksi overtemperature,
•
UnderVoltage shutdown.
Gambar 13. EMS 5A H-Bridge (Sumber: Innovative Electronic,2011b) Modul ini menggunakan IC MC33887VW (Gambar 14) sebagai HBridge (saklar otomatis). Kemampuan EMS 5A H-Bridge didasarkan pada kemampuan IC MC33887VW. GI821 (Gambar 15) digunakan sebagai fast
19 switching rectifier agar modul EMS5A H-Bridge dapat melakukan switching secara cepat.
Gambar 14.IC MC33887VW (Sumber: Freescale Semiconductor, 2005)
Gambar 15. Switching rectifier GI821 (Sumber: Vishay Intertechnology Inc, 2005)
2.4.12
Kompas Digital CMPS10 Kompas digital CMPS10 (Gambar 16) merupakan salah satu produk yang
dihasilkan Devantech Ltd. CMPS10 biasa digunakan dalam aplikasi robot untuk sistem navigasi. CMPS10 menggunakan 3-axis magnetometer dan 3-axis accelerometer untuk mengetahui derajat posisi dan derajat kemiringan. CMPS10 menghasilkan nilai digital yang merepresentasikan derajat arah mata angin dengan arah utara bernilai 0°. CMPS10 menghasilkan nilai 0-3599 untuk merepresentasikan derajat 0-359.9 atau 0-255 untuk 0-360 derajat. Selain mendapatkan nilai arah, CMPS10 juga dapat memberikan nilai derajat dari pitch dan roll. Kelebihan yang dimiliki oleh CMPS10 adalah adanya pilihan untuk mengetahui nilai accelerometer dan magnetometer. Nilai yang keluar merupakan nilai kasar (raw) dari sensor (Robot-electronics, 2011a).
20
UTARA
Gambar 16. Konfigurasi pin CMPS10 (Sumber: Robot-electronics, 2011a)
Gambar 17. Konfigurasi pin LSM303DLH (Sumber: STMicroelectronics, 2009) CMPS10 menggunakan IC LSM303DLH (Gambar 17). IC ini merupakan produk dari STMicroelectronics. IC ini adalah modul sensor 3-axis accelerometer dan 3-axis magnetometer. Sensor ini dapat mendeteksi percepatan ±2 g/ ± 4 g/ ± 8 g dan mendeteksi magnetic field dari ±1,3/ ±1,9/ ±2,5/ ±4,0/ ±4,7/ ±5,6/ ±8,1 gauss dimana pengaturannya ditentukan oleh pemakai. Komunikasi yang digunakan oleh sensor CMPS10 adalah komunikasi I2C (inter integrated circuit) pada mode standar (100 kHz) dan mode cepat (400 kHz) (STMicroelectronics, 2009). Data keluaran dari sensor menjadi input bagi CMPS10 untuk mendapatkan nilai derajat sebenarnya. Nilai derajat digunakan untuk mengetahui nilai arah (heading), pitch, dan roll.
21 Modul kompas digital hanya membutuhkan tegangan sebesar 5 Volt dengan arus 25 mA. Ada tiga cara untuk memperoleh informasi arah dari modul kompas digital yaitu pembacaan sinyal PWM (Pulse Width Modulation), pembacaan data interface I2C, dan penggunaan komunikasi serial (Robotelectronics, 2011b). Pembacaan data arah dengan I2C dilakukan dengan membaca bentuk data serial. Pada mode 8 bit, arah utara ditunjukkan dengan data 0 atau 255. Apabila modul kompas menggunakan mode 8 bit berarti kompas memiliki resolusi 1,40625 derajat/bit. Pada mode 16 bit, resolusi yang dimiliki oleh modul kompas semakin bagus yaitu 0,1 derajat (Robot-electronics, 2011b). Pembacaan data dilakukan dengan I2C communication protocol (Gambar 18).
Gambar 18. I2C communication protocol (Sumber:Robot-electronics, 2011c) I2C communication protocol dimulai dengan mengirimkan start bit, penulisan alamat modul digital compass dengan read/write low (0xC0), kemudian nomor register yang akan dibaca. Selanjutnya diikuti dengan start bit lagi dan penulisan alamat modul digital compass dengan read/write high (0xC1). Pengguna dapat memilih mode register yang digunakan yaitu mode pembacaan satu register atau dua register (8 bit atau 16 bit). Pada register 16 bit, yang pertama kali dibaca adalah high byte (Robot-electronics, 2011b). CMPS10 memiliki 23 register sesuai Tabel 1.
22
R CM MPS10 Tabel 1. Register
Sumber: Robot-electr R ronics (2011b) Reegister 0 adaalah Softwarre revision number. Register R 1 addalah data arrah yang diubah dalam nilai n 0-255. Register 2 dan 3 akan menyimpann data arah 16 bit dengann nilai 0-35999. Hal ini menunjukk kan arah 0-3359.9°. Regiister 4 adalaah nilai derajat dari pitchh. Register 5 digunakaan untuk meengetahui niilai derajat roll. r m n data kasarr Register 6 hingga 9 tiidak digunaakan. Regisster 10-21 menyediakan (raw) senssor acceleroometer dan magnetome m eter. Registeer 22 digunnakan sebagaai register peerintah dan biasanya diigunakan un ntuk mengkalibrasi kom mpas (Robo otelectronics, 2011b).
2.4.13
Dasar Eleektronik Kompas K Keekuatan meddan magnet bumi berkiisar antara 0,5 0 hingga 00,6 gauss daan
memiliki komponen k y yang sejajarr dengan peermukaan buumi yang seelalu mengaarah pada kutubb utara maggnet. Pada bagian b utaraa bumi, meddan magnet mengarah ke k bawah. Paada ekuatorr, medan maagnet mengaarah horizontal. Pada bbagian selattan bumi, meddan ini menngarah ke ataas. Sudut yang y terbenttuk antara uutara magnet
23 bumi dan utara geografis dinamakan dengan sudut inklinasi. Sudut lain antara utara magnet bumi dengan utara geografis didefinisikan sebagai sudut deklinasi dengan rentang ± 20° tergantung lokasi geografisnya. Tilt compensated electronic compass system memerlukan sebuah sensor magnet 3 axis dan sensor accelerometer 3 axis (STMicroelectronics, 2010). Accelerometer digunakan untuk mengukur sudut kemiringan dari pitch dan roll untuk tilt compensation. Sensor magnet digunakan untuk mengukur medan magnet bumi dan kemudian untuk menentukan sudut heading yang mengarah ke utara magnet. Jikalau heading yang mengarah pada utara geografis diperlukan, sudut deklinasi pada lokasi geografis tersebut perlu dikompensasi ke magnetic heading. Gambar 19 memperlihatkan 6 degree of freedom pada sebuah alat. Xb/ Yb/ Zb merupakan forward (maju)/ right (kanan)/ down (turun) berdasarkan kaidah tangan kanan. Tiga sudut sikap (attitude) direferensikan dari bidang datar lokal dimana tegak lurus dengan gravitasi bumi.
Surge/Heading Sway
Roll
Pitch
Heave Yaw
Gambar 19. 6 Degree of freedom (Sumber: Luque dan Donha, 2008)
24
Heading (Ψ) didefinisikan sebagai sudut yang terbentuk antara sumbu Xb dengan utara magnet pada bidang datar yang diukur searah jarum jam ketika melihat alat dari atas (STMicroelectronics, 2010). Pitch (ρ) didefinisikan dari sudut antara Xb axis dan bidang datar (STMicroelectronics, 2010). Jikalau kita mengasumsikan bahwa resolusi sudut pitch adalah 0,1°, maka sudutnya akan bergerak dari 0° – +179,9° ketika berputar pada sumbu Yb dengan axis Xb bergerak ke atas dari permukaan datar dan tetap berputar dari posisi 90° kembali ke permukaan datar. Sudut pitch akan bergerak dari 0° – -180° ketika Xb berputar ke bawah pada sumbu Yb dari permukaan datar dan tetap bergerak dari posisi vertikal (-90°) kembali lagi ke permukaan datar. Contohnya berada pada Gambar 20.
Gambar 20. Gerakan pitch (Sumber: STMicroelectronics, 2010) Roll (γ) merupakan sudut yang dibentuk dari sumbu Yb dengan bidang datar (STMicroelectronics, 2010). Ketika alat diputar pada sumbu Xb dengan Yb bergerak ke bawah, nilai roll akan berubah positif dan semakin bertambah nilainya. Contohnya ada pada Gambar 21.
25
Roll = -90°
Roll = -150°
Xb
Roll = +30°
Roll = -180°
Yb Roll = 0°
Roll = Roll = +150°
Roll = +30° Roll = +90°
Gambar 21. Gerakan roll (Sumber: STMicroelectronics, 2010)
2.4.14
Sistem Kompas Elektronik Gambar 22 memperlihatkan diagram blok tentang sistem kompas
elektronik. Mikrokontroler digunakan untuk mengumpulkan data kasar (raw) 3axis accelerometer untuk kalkulasi pitch dan roll dan mengumpulkan data kasar 3axis magnetic sensor untuk kalkulasi heading. Prosedur berikut digunakan untuk membangun sistem kompas elektronik agar bisa bekerja. •
Desain hardware untuk memastikan mikrokontroler mendapatkan data kasar yang bersih dari accelerometer dan sensor magnetik.
•
Kalibrasi accelerometer untuk mendapatkan parameter yang digunakan untuk merubah data kasar accelerometer menjadi nilai yang sudah dinormalisasi untuk kalkulasi pitch dan roll.
•
Kalibrasi sensor magnetik untuk mendapatkan parameter yang digunakan untuk merubah data kasar sensor magnetik menjadi nilai yang sudah dinormalisasi untuk kalkulasi heading.
•
Tes kemampuan sistem kompas elektronik.
26
Gambar 22. Diaggram blok siistem kompas elektroniik (STM Microelectro onics, 2010)) Akurasi daari heading, pitch, dan roll dapat dilihat d padaa tabel berikkut: Tabel 2. Akurasi A darii heading, pitch dan rolll
Sumber: STMicroelec S ctronics (20010)
Kalkulasii pitch dan roll
2.4.15
Xbb, Yb, Zb merupakan m suumbu badan n alat (devicce body axees) dengan menggunaakan kaidahh tangan kannan (Gamba ar 23). XA,,M, YA,M, ZAA,M adalah sumbu penngindera (seensing axes) dari accelerometer daan sensor m magnetik. Peerlu menjadi caatatan bahw wa tanda YM dan ZM daari pengukurran sensor pperlu dibalik k untuk mem mbuat sumbbu pengindeera memilik ki arah yang sama sesuaai dengan su umbu badan alatt. Ax, Ay, Az adaalah pengukkuran data kasar k acceleerometer. Mx, My, Mz adalah penngukuran daata kasar sensor magneetik. Tabel 3 memperliihatkan defiinisi tanda dari pengukurann baku senssor pada 6 posisi p tetap. Sebagai coontoh pada Gambar 23, 2 Xb dan Yb pada poosisi datar, Zb Z mengaraah ke bawahh. Oleh kareena itu, Ax=Ay=0 dan Az=+1g. = Mx dan d My bisa bernilai positif dan ataau negatif,
27 sedangkan Mz bernilai positif jika lokasinya berada pada belahan bumi bagian utara.
Gambar 23. Sistem koordinat kompas elektronik (Sumber: STMicroelectronics, 2010) Tabel 3. Definisi tanda pengukuran baku sensor LSM303DLH
Sumber: STMicroelectronics (2010) Beberapa prosedur rotasi dilakukan untuk merotasi alat tersebut dari posisi Xb, Yb, dan Zb menuju posisi X’b, Y’b, dan Z’b. Perbedaan prosedur rotasi akan menghasilkan matriks rotasi yang berbeda. Pertama, alat diputar pada sudut tertentu (Ψ) di sumbu Z searah jarum jam. Kemudian alat diputar pada sudut tertentu (ρ) di sumbu Y dengan Xb bergerak ke atas. Langkah terakhir, alat diputar pada sudut γ di sumbu X dengan Yb bergerak ke bawah. Sumbu 3D alat berubah dari Xb, Yb, dan Zb menjadi X’b, Y’b, dan Z’b (Gambar 24).
28
Gambar 24. Prosedur rotasi (Sumber: STMicroelectronics, 2010) Matriks tiap rotasi di atas dapat disusun sebagai berikut
Ψ
cos Ψ sin Ψ 0 cos 0 sin 1 0 0
sin Ψ 0 cos Ψ 0 0 1 0 1 0
sin 0 cos
0 cos sin
0 sin cos
....................... (2)
Hubungan antara X’b, Y’b, Z’b dan Xb,Yb, Zb ialah ′ ′ ′
cos cos Ψ cos sin Ψ cos Ψ sin sin sin sin Ψ cos Ψ sin cos
Ψ
.............................. (3)
cos sin Ψ sin cos cos Ψ sin sin sin Ψ cos sin sin cos Ψ sin cos sin Ψ cos cos
Pada bidang datar, Xb = Yb = 0, Zb = +1g. Pada X’b/ Y’b/ Z’b, pengukuran data kasar accelerometer LSM303DLH adalah Ax, Ay, Az dimana bernilai signed integer. Ax1, Ay1, Az1 diasumsikan sebagai nilai yang dinormalisasikan setelah memasukkan parameter kalibrasi accelerometer ke dalam Ax, Ay, dan Az. Jadi Ax1, Ay1, Az1 menjadi nilai floating kurang dari 1 pada pengertian g (gravitasi bumi), dan akar kuadrat dari jumlah kuadrat dari nilai Ax1, Ay1, Az1 harus sama dengan 1. Persamaan (3) menjadi:
29 Ax1 Ay1 Az1
cos ρ cos Ψ cos Ψ sin ρ sin γ cos γ sin Ψ cos Ψ sin ρ cos γ sin γ sin Ψ
cos ρ sin Ψ cos γ cos Ψ sin ρ sin γ sin Ψ sin γ cos Ψ sin ρ cos γ sin Ψ
sin ρ 0 cos ρ sin γ 0 (4) cos ρ cos γ 1
Oleh karena itu, pitch dan roll dapat dikalkulasi sebagai berikut: Pitch = ρ = arcsin(-Ax1) .................................... (5) Roll = γ = arcsin(Ay1/cos ρ) ................................ (6)
2.4.16
Kalkulasi heading Ketika alat diletakkan mendatar, sudut pitch dan roll akan bernilai 0°.
Sudut heading dapat ditentukan sesuai dengan Gambar 25.
Gambar 25. Penentuan sudut heading (Sumber:STMicroelectronics, 2010) Medan magnet lokal bumi (local earth magnetic field) H memiliki komponen tetap Hh pada bidang datar yang mengarah ke utara magnet bumi. Komponen ini dapat dihitung oleh sumbu pengindera sensor magnet Xm dan Ym yang dinamakan Xh dan Yh. Sudut heading dikalkulasi sebagai berikut: tan
………(7)
Pada Gambar 25, ketika sumbu Xb sejajar dengan Hh dimana Hh mengarah ke arah utara magnet, maka Xh=max dan Yh=0 sehingga heading = 0°. Alat diputar searah jarum jam pada bidang datar akan mengakibatkan sudut heading-nya bertambah. Ketika Xh=0 dan Yh = min maka heading = 90°.
30 Jikalau kita tetap memutarnya hingga Xh=min dan Yh=0 maka heading=180° dan seterusnya. Pada kalkulasi heading, pengukuran 3-axis sensor magnetik perlu dinormalisasi dengan menerapkan parameter kalibrasi sensor magnetik dan digambarkan pada bidang datar dengan kompensasi kemiringan (Gambar 26).
Gambar 26. Kalkulasi heading (Sumber: STMicroelectronics, 2010) Jika alat berputar dari Xb/ Yb/ Zb ke X”b/ Y”b/ Z”b oleh rotasi sudut roll diikuti oleh rotasi sudut pitch, maka " " "
cos sin sin cos sin
0 cos sin
sin sin cos cos cos
" " ………(8) "
Kita mengasumsikan Mx1, My1, Mz1 sebagai pengukuran sensor magnetik yang dinormalisasikan setelah menerapkan koreksi kalibrasi parameter ke dalam pengukuran kasar data sensor magnetik Mx, My, Mz pada posisi baru X”b, Y”b, Z”b. Mx, My, Mz bertipe signed integer, sedangkan Mx1, My1, Mz1 merupakan nilai floating dengan nilai kurang dari 1 pada pengertian kekuatan medan magnet. Akar kuadrat dari jumlah kuadrat masing-masing nilai harus sama dengan 1 ketika tidak ada gangguan eksternal medan magnet. Pengimbangan kemiringan pengukuran sensor magnetik Mx2, My2, Mz2 dapat diperoleh
31 cos
sin
sin γ sin ρ cos sin
.................................................... (9) cos γ sin
sin cos
................ (10)
cos cos
........... (11)
Oleh karena itu,
Ψ
2.4.17
tan
untuk Mx2 > 0 dan My2 >= 0
180°
tan
untuk Mx2 < 0
360°
tan
untuk Mx2 > 0 dan My2 <= 0
= 90°
untuk Mx2 = 0 dan My2 < 0
= 270°
untuk Mx2 = 0 dan My2 > 0
Kompensasi kemiringan Andaikata alatnya miring, maka sudut pitch dan roll tidak sama dengan 0°
seperti yang terlihat pada Gambar 27. Sudut pitch dan roll dapat diukur oleh 3axis accelerometer. Oleh karena itu, pengukuran sensor magnetik Xm, Ym, dan Zm perlu dilakukan untuk memperoleh Xh, Yh, dan Zh seperti pada persamaan berikut: Xh=Xmcos(Pitch) + Zm Sin(Pitch) ......................................................... (12) Yh=Xmsin(Roll)sin(Pitch) + Ymcos(Roll) - Zmsin(Roll)cos(Pitch) Kemudian mempergunakannya untuk persamaan di atas untuk kalkulasi heading.
Gambar 27. Gerakan pitch dan roll (Sumber: STMicroelectronics, 2010)
32
2.4.18
Hitachi H48C 3-Axis Accelerometer Hitachi H48C merupakan modul terintegrasi yang dapat mendeteksi gaya
gravitasi pada tiga sumbu (X, Y, dan Z) sebesar kurang lebih 3 g (gravitation force). Modul ini terdiri dari regulator pada papan integrasi yang meregulasikan tegangan sebesar 3,3 Volt ke H48C, analog signal conditioning, dan MCP3204 (4 kanal, 12 bit) yang merupakan ADC (analog-to-digital converter) untuk membaca tegangan keluaran dari H48C. Semua komponen terintegrasi pada satu papan modul dengan ukuran 17,8 mm x 20,3 mm (Parallax, 2007). Konfigurasi pin modul H48C dapat dilihat pada Gambar 28. Pembacaan g-force (gaya gravitasi) pada H48C dilakukan dengan membaca tegangan keluaran dari sumbu tersebut dan mengkalkulasinya dengan formula berikut: , ,
............................... (13)
Atau dapat disederhanakan menjadi 0,0022 ........................... (14)
Gambar 28. Konfigurasi pin modul H48C (Sumber: Parallax (2007))
2.4.19
Sensor suhu D1820 Sensor Suhu D1820 (Gambar 29) merupakan sensor suhu digital yang
diproduksi oleh Dallas Semiconductor. Sensor ini menggunakan komunikasi 1wire untuk berkomunikasi dengan mikrokontroler. D1820 membaca suhu dalam
33 9 bit nilai digital. Sensor ini dapat mengukur suhu dengan rentang -55 °C hingga +125 °C dengan resolusi 0,5°C. Sensor ini memerlukan pull up resistor sebesar 4,7 kΩ agar dapat mengirim data ke mikrokontroler.
Gambar 29. Bentuk fisik dan konfigurasi kaki D1820
2.5
PEMROGRAMAN Pemrograman untuk aplikasi Mini ROV ini terdiri dari dua buah program
yaitu GUI (Graphical User Interface) dan mikrokontroler. Pemrograman GUI mini ROV dilakukan dengan menggunakan Borland Delphi 7. Piranti lunak ini dikembangkan oleh perusahaan Borland Software Corporation. Bahasa pemrograman yang digunakan pada program ini adalah bahasa objek Pascal berbasis OOP (Object Oriented Programming). Program Delphi 7 memiliki kelebihan meliputi : mudah untuk membaca kode, kompilasinya cepat, dan penggunaan multiple unit files untuk pemrograman modular. Program ini bekerja dalam IDE (integrated development environment) sehingga pemrogram semakin mudah untuk membuat suatu program yang berbasis GUI (graphical interface unit) (Borland, 2003). Penulisan dan pemrograman mikrokontroler dilakukan secara In System Programming (ISP). Program yang digunakan untuk menulis perintah pada
34 mikrokontroler adalah CodeVision AVR C Compiler Versi 2.05. Bahasa yang digunakan adalah bahasa C. Pemrograman mikrokontroler dilakukan dengan menggunakan piranti lunak In-System Programmer Atmel AVRProg (AVR910) yang terintegrasi di dalam program CodeVision AVR.
3. METODOLOGI PENELITIAN 3.1
WAKTU DAN LOKASI PENELITIAN Penelitian dilaksanakan pada bulan Maret 2011 sampai dengan Maret
2012. Kegiatan penelitian terdiri dari dua bagian, yaitu pembuatan alat dan uji coba alat. Pembuatan alat dilakukan di Workshop Akustik dan Instrumentasi Kelautan, Fakultas Perikanan dan Ilmu Kelautan, Institut Pertanian Bogor. Sedangkan uji coba alat dilakukan di watertank Laboratorium Akustik dan Instrumentasi Kelautan, Fakultas Perikanan dan Ilmu Kelautan, Institut Pertanian Bogor dan kolam renang Tirta Ayu Babakan Lio, Darmaga, Bogor.
3.2
ALAT DAN BAHAN Alat dan bahan yang digunakan dalam pembuatan mini ROV mencakup
perangkat keras (hardware) dan perangkat lunak (software). Alat yang digunakan dalam penelitian ini adalah laptop, Codevision AVR 2.05.0, Google Sketch Up 7, Delphi 7, bor listrik, obeng, solder listrik, multimeter digital, gerinda listrik, DTI/O USB I/O MODULE, PC-Link USBer, USB TV STICK, USB2.0 TV BOX, power supply 1A, Downloader K125R, gergaji besi, gunting, penggaris, dan busur derajat. Fungsi masing-masing alat dapat dilihat pada Lampiran 1. Bahan yang digunakan adalah DT-AVR Low Cost Micro System, ATmega32A, CMPS-10, Hitachi H48C 3-Axis Accelerometer, resistor 4,7 KΩ, EMS 5A H-Bridge, EMS 2A DUAL H-Bridge, adaptor 1 ampere, adaptor 2 ampere, adaptor 5 ampere, jack power supply, 1/3” Sony CCD IR Color Digital Camera, kepala kabel co axial, motor dari bilge pump 500 GPH (12VDC 2 A), motor dari bilge pump 750 GPH (12VDC 5A), baling-baling berdiameter 7 cm, akrilik, baut, konektor, pipa
35
36 stainless steel, pipa PVC, cat besi, kuas, pengencer cat, klem gantung, klem, kabel LAN, kabel AC, tali tis, amplas, lem epoxy, selotip pipa, dan lem PVC. Informasi lengkap mengenai bahan-bahan yang digunakan dapat dilihat ada Lampiran 2.
3.3
RANCANGAN ALAT Mini ROV yang dikembangkan memiliki dimensi total panjang 80 cm,
lebar 62,5 cm, dan tinggi 45 cm. Mini ROV dirancang agar dapat menyelam hingga kedalaman 10 meter. Mini ROV ini terdiri dari beberapa unit fungsional yang secara keseluruhan terpadu dalam satu mikrokontroler yaitu mikrokontroler ATmega32A. Gambar 30 merupakan sistem kerja tiap komponen yang terdapat dalam mini ROV dan tegangan sumber yang mungkin untuk dibuat. Power Supply 12 V 1 A Kompas Magnetik CMPS10 Sensor 3D-AXIS H48C
USB TO SERIAL
Mikrokontroler PORT A PORT B PORT C PORT D
KOMPUTER TV TUNER TV TUNER
DS1820
Modul driver motor Motor DC
Power supply 12 V 2 A
Modul driver motor
Kamera CCD Kamera CCD
Motor DC Power supply 12 V 5 A
Power supply 12 V 1 A
Power supply 12 V 1 A
Gambar 30. Desain sistem kerja tiap komponen pada mini ROV Pada mini ROV ini terdapat “mata” yang menggunakan sensor kamera (dengan keluaran berupa video) yang berfungsi untuk melihatkan kondisi di dalam air. Pengukuran arah mini ROV menggunakan sensor kompas digital CMPS10 yang dapat menentukan arah hingga 360° dengan ketelitian 0,1°. Sudut pitch dan roll juga menggunakan sensor CMPS10. Sudut pitch dan roll yang diperoleh akan memiliki rentang nilai -90° – +90° dengan ketelitian 1,4°. Pada mini ROV
37 ini juga disematkan sensor accelerometer H48C untuk melihat gaya gravitasi yang bekerja pada 3 sumbu (sumbu X, sumbu Y, dan sumbu Z) dengan ketelitian 0,1 g. Sensor suhu digital DS1820 juga ditempatkan di dalam komparemen untuk meihat perubahan suhu di dalam kompartemen.
3.4
DESAIN KERJA Perancangan instrumen ini dipadukan dalam tiga proses perancangan yaitu
perancangan konstruksi mekanik, konstruksi elektronik, dan desain software sehingga tahapan terakhir adalah integrasi dari ketiga proses perancangan tersebut. Beberapa tahapan dalam proses perancangan instrumen ini dapat disusun dalam suatu diagram alir (Gambar 31). MULAI Persiapan Perumusan Perancangan penelitian
Tidak
Memenuhi persyaratan? Ya Perancangan mekanik, elektronik, dan software Pembuatan model mekanik
Pembuatan model elektronik Uji coba
Pembuatan model software Tidak berhasil
Berhasil SELESAI Gambar 31. Diagram alir perancangan mini ROV
38
3.5
PEMBUATAN DESAIN Desain dan rancangan ROV dibuat dengan menggunakan software desain
Google Sketch Up 7 (Gambar 32). Pembuatan desain ini dimaksudkan untuk memudahkan proses pembuatan konstruksi alat hingga tata letak komponen.
Gambar 32. Tampilan Google Sketch Up 7
3.6
RANCANG BANGUN PERANGKAT KERAS Perangkat keras yang dibuat meliputi semua bagian yang menutupi
komponen elektronika sehingga tidak terjadi kerusakan pada komponen tersebut. Pembuatan perangkat keras disesuaikan dengan rancangan yang telah dibuat. Tahapan kerja yang dilakukan adalah sebagai berikut: (1) Pembuatan kerangka, (2) Pembuatan kompartemen elektronik, (3) Pembuatan kompartemen kamera.
39
3.6.1
Pembuatan kerangka Bentuk kerangka mini ROV ini dirancang dari ROV RJ 45 (Gambar 33)
yang pernah dibuat. Bentuk dasarnya tetap menggunakan bentuk mekanik RJ 45. Beberapa modifikasi dilakukan untuk menyempurnakan bentuk robot ini. Penambahan ini dimaksudkan untuk mengatasi masalah yang terjadi pada penelitian sebelumnya sehingga tidak terulang kembali. Kerangka mini ROV terbuat dari pipa besi 1 inci yang dilas. Kerangka diberi lem epoxy pada bagian persinggunggannya agar kedap air. Kerangka dicat agar tidak berkarat. Bagian depan dari mini ROV dibuat lebih maju pada bagian bawah agar kamera terlindung dari benturan benda keras yang ada di depannya.
Gambar 33. Rangka RJ45 (Rizki, 2008)
3.6.2
Pembuatan kompartemen elektronik Kompartemen elektronik menggunakan pipa PVC 6 inci yang dapat
memuat adaptor 5 ampere, adaptor 2 ampere, adaptor 1 ampere, rangkaian mikrokontroler, sensor kompas digital,sensor suhu digital, sensor accelerometer, dan modul driver motor. Kompartemen dibuat kedap air sehingga tidak terjadi kebocoran yang dapat menyebabkan kerusakan komponen elektronik. Pengkedapan kompartemen menggunakan lem epoxy dan lem pvc. Pada bagian belakang kompartemen ditempatkan konektor. Konektor terdiri dari konektor 8 pin (yang berfungsi untuk pengiriman data dari
40 mikrokontroler dan pengiriman data video dari kamera 1 dan kamera 2), konektor kabel VAC (voltage alternating current) untuk menghubungkan sumber tegangan ke mini ROV, konektor kabel VDC (voltage direct current) dan konektor kabel co axial yang disambungkan ke kamera bawah, konektor motor maju-mundur dan konektor motor naik-turun. Konektor ini digunakan menghubungkan kabel yang ada dalam kompartemen dengan kabel yang dihubungkan dengan permukaan. Konektor ini juga diberikan lem agar tidak terjadi kebocoran. Koneksi pada konektor ditunjukkan pada Gambar 34. 1 2
7 8
3
6 5
4
Keterangan: 1. Kabel Tx 2. Kabel Rx 3. Kabel Ground 4. Kabel video 1 5. Kabel video 1 6. Kabel video 2 7. Kabel video 2
Gambar 34. Koneksi konektor 8 pin
3.6.3
Pembuatan kompartemen kamera Kompartemen kamera terpisah dengan kompartemen elektronik.
Kompartemen kamera merupakan produk pabrikan yang sudah terpasang dengan kamera. Hal yang perlu dilakukan adalah pengedapan kompartemen ini. Kabel sumber tegangan dan kabel co axial dihubungkan ke konektor yang ada pada bagian belakang kompartemen elektronik.
3.7
RANCANG BANGUN RANGKAIAN ELEKTRONIK Bagian kerja yang dilakukan dalam proses pembuatan rangkaian
elektronik ialah :
41 (1) Pembuatan skematik rangkaian, merupakan proses penyusunan rencana sambungan komponen dalam bentuk gambar; (2) Penyolderan, dilakukan pada komponen pada PCB ataupun pada penyambungan antar komponen serta antar kabel. Rangkaian elektronik yang dibuat sesuai dengan Gambar 30. Pembuatan robot bawah air ini menggunakan mikrokontroler ATmega32A. Datasheet mikrokontroler ini dapat dilihat pada Lampiran 3. Rangkaian sirkuit dasar mikrokontroler ATmega32A menggunakan modul buatan Innovative Electronics (Lampiran 4). Modul sudah memiliki jalur input/output 32 pin, jalur komunikasi serial RS232 dengan konektor RJ11, dan terdapat port untuk pemograman secara ISP. Modul ini memudahkan pengguna dalam menempatkan sambungan komponen ke mikrokontroler. Sensor CMPS10 yang digunakan merupakan modul (Gambar 35) yang diproduksi oleh Devantech Ltd. Modul ini memiliki 5 pin keluaran dimana pin 1 merupakan VCC dan pin 5 merupakan pin Ground. Pin yang dihubungkan ke mikrontroler ATmega32A adalah pin 2 (SCL) dan pin 3 (SDA). Pembacaan data CMPS10 dengan mikrokontroler ATmega32A menggunakan jenis komunikasi I2C. Komunikasi I2C menggunakan 2 pin pada salah satu PORT Mikrokontroler ATmega32A. Port yang digunakan adalah PortA pin 6 dan pin 7. Pin 6 berfungsi untuk jalur SDA dan pin 7 berfungsi untuk jalur SCL pada CMPS10. Pada penghubungan pin ini digunakan pull up resistor sebesar 4,7 KΩ yang berfungsi untuk membuat keadaan logika pada jalur DATA tetap pada kondisi HIGH ketika tidak ada sinyal dari ATmega32A. Informasi lebih lengkap dapat dilihat pada Lampiran 5.
42
Gambar 35. Modul kompas dan penghubungannya dengan pull up resistor Sensor 3D Accelerometer yang digunakan adalah modul yang dibuat oleh Parallax Inc. Pin yang terhubung pada mikrokontroler ATmega32A adalah pin 1 (CLK), pin 2 (DIO), dan pin 5 (CS). Pin 1 terhubung pada PORT B pin 0, pin 2 pada PORT B pin 1, pin 5 terhubung pada pin 2 (Gambar 36). Lampiran 6 memberikan informasi jelas mengenai modul sensor accelerometer.
PORTB.0 PORTB.1
PORTB.2
Gambar 36. Penghubungan pin H48c dengan pin mikrokontroler Sensor suhu yang digunakan adalah sensor suhu DS1820. Kaki DS1820 yang dihubungkan ke mikrokontroler adalah kaki Data (DQ). Pada jalur mikrokontroler-DS1820 diberikan pull up resistor sebesar 4,7 kΩ (Gambar 37). Informasi lebih lengkap terdapat pada Lampiran 7. Modul driver motor yang digunakan terdiri dari EMS 2A Dual H-Bridge dan EMS 5A H-Brigde. Kedua modul merupakan produk Innovative Electronics. Manual kedua produk dapat dilihat pada Lampiran 8 dan Lampiran 9. EMS 2A Dual H-Bridge digunakan sebagai saklar otomatis bagi 2 buah motor bilge pump 500 GPH (gallons per hour). Koneksi modul EMS 2A Dual HBridge dapat dilihat pada Gambar 38.
43
PO ORTB.1
Gambar 377. Penghubuungan D182 20 dengan pin mikrokonntroler
Gaambar 38. Koneksi K EMS 2A Dual H-Bridge Paada Interfacee Header 1 (J3), ( Pin yaang dihubunngkan pada m mikrokontroler adalah pinn 1 (M1IN1)) ke PORTC C.6, pin 2 (M M1IN2) ke PORTC.7, pin 4 (EN1) ke PORTC.3, pin 5 (VCC), dan pinn 6 (GND). Pada Interfface Headerr 2 (J1), pin yang dihubungkkan pada miikrokontroleer ialah pin 1 (M2IN1)) ke PORTC C.0, pin 2 (M2IN2) ke k PORTC.1, dan pin 4 (EN2) ke PORTC.2. Pada Poweer & Con (J2 2), terminal yang y dihubuungkan adalah pin MGN ND (terhubuung pada G Ground adap ptor 2A), pin V MOT (terhhubung padda VCC adaaptor 2A), pin M1 OUT T1 (terhubun ng pada kabeel motor 1), pin M1 OU UT2 (terhubu ung pada kaabel motor 1), pin M2
44 OUT1 (terhubung pada kabel motor 2), dan pin M2 OUT2 (terhubung pada kabel motor 2). Motor yang dihubungkan pada modul ini bergerak sesuai dengan Tabel 4 dan Tabel 5. Tabel 4. Tabel kebenaran pergerakan motor 1 INPUT OUTPUT M1EN M1IN1 M1IN2 M1OUT1 M1OUT2 H H L V MOT MGND H L H MGND V MOT H L L MGND MGND
FUNGSI MOTOR CW MOTOR CCW BERHENTI
Keterangan: H : Logika High (5 V) L : Logika Low (0 V) CW : clockwise CCW : counter clockwise
Tabel 5. Tabel kebenaran pergerakan motor 2 INPUT OUTPUT M2EN M2IN1 M2IN2 M2OUT1 M2OUT2 H H L V MOT MGND H L H MGND V MOT H L L MGND MGND
FUNGSI MOTOR CW MOTOR CCW BERHENTI
Keterangan: H : Logika High (5 V) L : Logika Low (0 V) CW : clockwise CCW : counter clockwise
EMS 5A H-Bridge merupakan modul driver motor yang digunakan untuk menggerakkan 1 buah motor bilge pump 700 GPH. Driver ini sudah berupa modul yang dibuat oleh Innovative Electronics. Koneksi modul EMS 5A HBridge dapat dilihat pada Gambar 39. EMS 5A H-Bridge dihubungkan pada mikrokontroler melalui Interface Header (J2). Pada EMS 5A H-Bridge pertama, pin yang terhubung ke mikrokontroler adalah pin 1 (M1IN1) ke PORTB.4, pin 2(M1IN2) PORTB.5, pin 7 dan 9 (VCC), serta pin 8 dan 10 (GND). EMS 5A H-Bridge yang kedua, pin
45 yang terhubung ke mikrokontroler adalah pin 1 (M1IN1) ke PORTB.6, pin 2(M1IN2) PORTB.7, pin 7 dan 9 (VCC), serta pin 8 dan 10 (GND). Pin 4 (MEN) dihubungkan dengan pin VCC pada EMS 2A Dual H-Bridge.
Gambar 39. Koneksi modul EMS 5A H-Bridge Pada Power & Con (J1), terminal yang dihubungkan adalah pin MGND (terhubung pada Ground adaptor 5A), pin V MOTOR (terhubung pada VCC adaptor 5A), pin MOUT1 (terhubung pada kabel motor1) dan pin MOUT2 (terhubung pada kabel motor1). Motor yang dihubungkan pada modul ini bergerak sesuai dengan Tabel 6. Tabel 6. Tabel Kebenaran Pergerakan Motor INPUT OUTPUT MEN MIN1 MIN2 MOUT1 MOUT2 H H L V MOT MGND H L H MGND V MOT H L L MGND MGND Keterangan: H : Logika High (5 V) L : Logika Low (0 V) CW : clockwise CCW : counter clockwise
FUNGSI MOTOR CW MOTOR CCW BERHENTI
46
3.8 3.8.1
RANCANG BANGUN PERANGKAT LUNAK Mikrokontroler Perangkat lunak berkaitan dengan kinerja dari perangkat keras. Perangkat
lunak pada sistem mikrokontroler disebut juga firmware. Bahasa pemograman yang digunakan ialah bahasa C. Compiler yang digunakan adalah Code Vision AVR C Compiler 2.05.0 (Gambar 40). Firmware yang telah dibuat diunduh menggunakan Atmel AVRProg (AVR910) dan kabel data K-125R USB AVR Programmer (Gambar 41). Pembuatan program mikrokontroler dilakukan dengan menulis kode program sesuai dengan diagram alir pada Lampiran 10. Setelah tidak ada kesalahan pada penyusunan program, kode akan dikompilasi (mengubah kode program dalam format *.hex) agar dapat diunduh pada mikrokontroler.
Gambar 40. Tampilan Code Vision AVR C Compiler 2.05
47
Gambar 41. Kabel data K-125R USB AVR Programmer
3.8.2
Program antarmuka pengguna grafis Pembuatan program antarmuka pengguna grafis atau GUI (Graphical User
Interface) dilakukan dengan menggunakan program Delphi 7. Program ini terdiri dari tujuh aplikasi utama dan dua aplikasi pendukung. Program antarmuka pengguna grafis ini ditampilkan dalam satu buah jendela sebagaimana yang direncanakan dalam sketsa jendela GUI pada Gambar 42. Program ini disimpan dan dijalankan dalam bentuk executable file (*.exe). Program-program utama yang berjalan pada jendela antarmuka grafis terdiri dari: a. Program penampil video kamera depan dan bawah, b. Program komunikasi serial antara komputer dan mikrokontroler, c. Program joystick untuk menggerakkan motor, d. Program arah kompas, e. Program penghitung waktu operasi ROV, f. Program penunjukan sikap (attitude) ROV.
48 Program-program pendukungnya ialah: i. Pengarah komunikasi USB port ke serial, ii. Program penampil waktu.
VIDEO DEPAN
VIDEO BAWAH
START Nama File
SIMPAN
Setting Terminal Transmisi Data ROV
START Nama File
SIMPAN
AX
NW N NE 00:00:00
AY
SIMPAN
AZ Suhu Kompartemen -45O
0O
45O
X
Y Z
Gambar 42. Sketsa Jendela GUI
3.9
PENGUJIAN KINERJA ROV Pengujian kinerja dilakukan setelah proses perakitan dan penyatuan
komponen telah selesai. Pengujian dilakukan untuk menilai sejauh mana tingkat keberhasilan pembuatan alat ini. Ada beberapa pengujian yang dilakukan antara lain: 1) Pengujian daya apung 2) Pengujian CMPS10 3) Pengujian H48C 4) Pengujian sistem kendali
49
3.9.1
Pengujian daya apung Pengujian dilakukan di water tank dengan memasukkan robot ke dalam
air. Sebelum dilakukan pengujian di air, pengukuran massa robot dalam keadaan kosong dan dalam keadaan sudah terpasang komponen perlu dilakukan. Hal ini untuk mengetahui massa dari mini ROV. Apabila saat pertama kali mini ROV diturunkan masih mengapung di permukaan air, maka penambahan pemberat (weight belt) dilakukan hingga mini ROV melayang di kolom air. Apabila saat pertama kali mini ROV diturunkan masih tenggelam, maka penambahan ruang apung dilakukan hingga mini ROV tersebut melayang di kolom air. 3.9.2
Pengujian CMPS10 Pengujian CMPS10 terdiri dari 3 bagian yaitu pengujian nilai arah
(heading), nilai pitch dan nilai roll. Pengujian arah heading dilakukan dengan memutar mini ROV searah jarum jam hingga berputar 360°. Nilai arah yang keluar dari CMPS10 dibandingkan dengan penunjukkan arah dari kompas magnet. Pembacaan nilai arah dari CMPS10 harus tidak melebihi 2° dari nilai arah kompas magnet. Pengujian pitch dilakukan dengan menggunakan bantuan busur derajat. Pengujian dilakukan dengan menempatkan mini ROV pada bidang datar dimana nilai pitch yang keluar 0°. Peletakan busur derajat dapat dilihat pada Gambar 43. mini ROV diputar ke atas dengan maksimum putaran 90° dan diputar ke bawah dengan maksimum putaran 90°. Nilai yang keluar dibandingkan dengan penunjukan sudut dari busur derajat. Perbedaan nilai tidak boleh lebih dari 2°.
50
Gambar 43. Peletakann busur deraajat untuk pengukuran p pitch Pengujian rolll dilakukan dengan meenggunakan bantuan buusur derajat.. Pengujiann dilakukan dengan mennempatkan mini ROV pada p bidangg datar dimaana nilai roll yang y keluar 0°. Peletakkan busur derajat dapatt dilihat padda Gambar 44. mini ROV V diputar ke kanan denggan maksim mum putarann 90° dan diiputar ke kirri dengan maaksimum puutaran 90°. Nilai yang keluar dibaandingkan ddengan penunjukaan sudut darri busur deraajat. Perbed daan nilai tiidak boleh llebih dari 2°°.
Gambar 44. 4 Peletakaan busur derrajat untuk Pengukuran P n roll
3.9.3
Pengujian n H48C Pengujian H48C dilakukaan dengan melihat m nilaai g-force yaang mengen nai
tiap sumbuunya. Penggujian dilakuukan dengaan memutar mini ROV pada posisii yang terterra pada Tabbel 7. Nilai yang keluaar harus menndekati nilaai yang terteera pada denggan Tabel 7..
51 Tabel 7. Nilai accelerometer pada tiap posisi
3.9.4
Pengujian sistem kendali Pengujian sistem kendali memiliki beberapa poin terkait dengan
keberhasilan pembuatan sistem kendali ini yaitu: 1) Sistem video kamera berjalan dengan baik, 2) Pergerakan joystick mampu menggerakkan motor dengan arah gerak yang tetap, motor bergerak sinkron, dan mampu merespon perubahan dengan baik, 3) GUI dan fungsinya bekerja baik tanpa adanya error selama pengoperasian.
4. HASIL DAN PEMBAHASAN Hasil penelitian ini adalah mini ROV yang diberi nama RJ45 V2 yang berfungsi melihat kondisi lingkungan bawah air secara visual. RJ45 V2 dapat diklasifikasikan ke dalam mini ROV (EVS-380, 2007), kelas observasi (Christ dan Wernli, 2007), kelas 1 – Murni Observasi dan kelas v Prototipe atau wahana yang dalam pengembangan (Norsok Standard, 2003). Pada laporan hasil penelitian ini disampaikan data pengukuran yang dilakukan pada proses pengujian alat. Pengujian alat yang dilakukan menunjukkan kemampuan alat dalam beroperasi di dalam air dalam bentuk pergerakannya dan sikap (attitude) dari RJ45 V2 berfungsi dengan baik. Proses pengiriman data dari unit mekanik ke unit display berjalan dengan cepat sehingga attitude mini ROV ini dapat langsung diamati pada laptop serta terekam dan disimpan datanya pada laptop. Pengiriman data ini berjalan secara real time.
4.1.
Desain RJ45 V2 Desain RJ45 V2 (Gambar 45) dibuat dengan memperhatikan bentuk dari
ROV RJ45 (Rizki, 2008; Prihandono, 2008). Desain alat ini dibedakan ke dalam beberapa bagian yaitu, bagian mekanik, dan kompartemen elektronik. Bagian belakang desain mekanik ini terdapat desain tersendiri yaitu desain koneksi kabel (Gambar 46). Konektor ditempatkan di bagian atas agar apabila terjadi kebocoran tidak mencapai bagian ini dan tidak mengganggu pergerakan motor. Apabila terjadi kebocoran maka air akan merembes ke bawah dan tidak mengenai konektor ini terlebih dahulu.
52
53
komparttemen utam ma
Rangka
Kaamera CCD M Motor pengggerak m RJ445 V2 Gambar 455. Desain mekanik Koneektor supplyy kameera
Konekktor supply R RJ 45 V2 Konnektor videoo kamera Konekttor 8 pin Konnektor motoor samping
Konektor motorr belaakang
Gambar 466. Desain ko onektor RJ445 V2
Koompartemenn elektronikk (Gambar 47) dirancaang memilikki lebar 15 cm c dan panjanng 55 cm. KomponenK -komponen elekronik ditempatkan d n pada akriliik dan mengggunakan baaut sebagai penahan p kom mponen. Modul mikrokontrroler
EMS 5A H-BR RIDGE
ADAPTOR R 5A
ADAPTOR R 2A ADAPT TOR 1A Sensor H48C H
D H-BRIDGE EMS 2A DUAL Sensor DS1820 D Sennsor CMP10
Gambaar 47. Desaiin komparteemen elektroonik RJ45 V V2
54
4.2.
Peerangkat Keras K
4.2.1.
R Rangka Raangka dibuaat dengan menggunakan m n pipa besi ukuran u 1 innci. Bentuk
rangka RJJ45 V2 (Gam mbar 48) mengikuti m beentuk rangkka dari RJ455. Bentuk kerangka disesuaikan d n dengan komponen yan ng akan diteempatkan. Bagian kan nan dan kiri keerangka diteempatkan motor m pengg gerak yang berfungsi b unntuk menaik kkan dan menurrunkan minni ROV. Baagian belakaang ditempaatkan dua buuah motor penggerakk untuk mennggerakkan mini ROV maju, munddur, belok kkanan dan belok b kiri.
Gambbar 48. Rang gka RJ45 V2 V
R V2 dib buat lebih maju m agar daapat melindu ungi Baagian depann kerangka RJ45 dome kam mera yang teerbuat dari akrilik a dari benturan. b T Tabung kom mpartemen elektronikk ditempatkaan pada baggian tengah. Tabung inni dihubungkkan ke rang gka dengan meenggunakann klem sebaanyak 3 buah h (Gambarr 49). Klem m berfungsi untuk mennahan berat tabung ini. Bentuk len ngkap dari RJ45 R V2 daapat dilihat pada p Gambar 50. 5
Gambar 49. Pemasaangan klem (tanda panaah) pada ranngka
55
Gambar 50. Bentuk fisik lengkap RJ45 V2
4.2.2.
Tabung kompartemen elektronik Tabung kompartemen elektronik terbuat dari PVC dengan diameter 6 inci,
panjang 60 cm dan tebal 3 mm. Pemilihan PVC dikarenakan dapat menahan tekanan, ringan, tidak mahal, dan tidak berat (Hoong, 2010). Pada RJ45, pembuatan kompartemen elektronik menggunakan aluminium dengan ketebalan 5 mm dan diameter 3 inci. Penggunaan aluminium ternyata memberikan efek pada RJ45 untuk cenderung tenggelam. Tabung PVC berfungsi sebagai tempat penyimpanan komponen elektronik dan sebagai tempat peletakan kamera pada bagian bawah dengan menggunakan klem gantung. Tabung ditutup dengan menggunakan dop pipa diameter 6 inci. Pada dop bagian depan ditempatkan kamera. Pada dop bagian belakang, konektor-konektor ditempatkan dan dipasang permanen sesuai dengan rancangan pada Gambar 51. Seluruh bagian luar tabung dibuat kedap air. Pengkedapan tabung ini menggunakan lem pipa PVC dan lem epoxy. Dari hasil percobaan, tabung ini tidak mengalami kebocoran. Hal ini terlihat dari tidak adanya gelembung udara yang keluar dari bagian yang dilem.
56
Konektor VAC
Konektor VDC kamera
Konektor video Konektor thruster belakang
Konektor thruster samping
Konektor transmisi data Gambar 51. Konektor kabel (tanda panah)
4.2.3.
Kamera CCD Kamera yang digunakan pada RJ45 V2 berjumlah dua. Kamera ini
ditempatkan pada bagian depan dan bawah RJ45 V2 (Gambar 52). Kamera ini sudah dilengkapi dengan dome. Kedua kamera dilem menggunakan lem epoxy agar kedap air (Gambar 53).
Gambar 52. Kamera depan dan kamera bawah
Gambar 53. Pemberian lem epoxy pada kompartemen kamera
Hasil pengujian video memperlihatkan adanya pengaruh warna infra merah apabila cahaya yang ada di lingkungan kurang. Pengaruh ini dikarenakan sistem detektor infra merah yang terdapat pada kamera CCD tetap diaktifkan. Pengaktifan sistem detektor infra merah memberikan keuntungan dan kerugian
57
bagi pengguna. Keuntungan yang didapat adalah operator tetap dapat mengoperasikan mini ROV ini walaupun cahaya yang masuk ke dalam kamera kurang. Kerugiannya ialah hasil video yang dihasilkan menjadi Black-White (BW).
4.2.4.
Thruster Thruster ditempatkan pada bagian samping dan belakang dari rangka.
Setiap thruster diberikan nomor. Penomoran ini digunakan untuk mempermudah dalam pemograman mikrokontroler pada bagian pengendalian gerak thruster. Penomoran thruster (Gambar 54) adalah thruster 1 untuk thruster belakang bagian kiri, thruster 2 untuk thruster belakang bagian kanan, thruster 3 untuk thruster samping bagian kiri, dan thruster 4 untuk thruster samping bagian kanan.
Thruster 4
Thruster 2
Thruster 3 Thruster 1 Gambar 54. Penempatan thruster
4.2.5.
Rangkaian kendali operator Rangkaian kendali operator terdiri dari rangkaian komunikasi digital,
joystick dan laptop. Rangkaian komunikasi digital menggunakan PC-Link USBer dan DT-I/O USB I/O MODULE sebagai pengubah logika serial USB ke logika serial RS-232 mikrokontroler. Komunikasi digital dibagi menjadi transmisi data dari laptop ke mikrokontroler dan transmisi data dari mikrokontroler ke laptop. Transmisi data
58
dari laptop berupa karakter yang akan mengaktifkan atau menonaktifkan transmisi data dari mikrokontroler dan karakter untuk mengaktifkan motor penggerak. Transmisi data dari mikrokontroler adalah data sensor CMPS10 dan H48C yang telah disusun formatnya. Penjelasan mengenai format dan penyusunan datanya akan dijelaskan pada sub bab berikutnya.
4.2.6.
Rangkaian pengendali on board Sistem kendali on board (Gambar 55) terdiri dari modul DT-AVR Low
Cost Micro System, modul sensor CMP10, modul sensor H48C, sensor suhu DS1820, pengendali motor yang terdiri dari EMS 2A Dual H-Bridge dan EMS 5A H-Bridge, dan catu daya yang terdiri dari adaptor 1A, adaptor 2A, dan adaptor 5A. Modul DT-AVR Low Cost Micro System berfungsi sebagai pengendali utama sistem elektronik. Modul sensor CMPS10 berfungsi untuk mengukur arah, pitch, dan roll. Modul sensor H48C berfungsi untuk mengukur akselerasi. Sensor suhu DS1820 berfungsi untuk mengukur suhu di dalam tabung kompartemen elektronik. EMS 2A Dual H-Bridge berfungsi sebagai saklar motor naik turun. EMS 5A H-Bridge berfungsi sebagai saklar motor maju, mundur, belok kanan dan kiri. Adaptor 12V 5A
Adaptor 12V 1A
EMS 2A DUAL H-BRIDGE CMPS 10
Adaptor 12V 2A
EMS 5A H-BRIDGE
MODUL MIKROKONTROLER
Gambar 55. Penempatan komponen elektronik
59
Masing-masing komponen dihubungkan dengan kabel. Kabel yang masuk ke dalam rangkaian ini adalah kabel VAC yang berfungsi sebagai catu daya. Kabel yang keluar dari rangkaian ini adalah kabel TX-RX (pengiriman dan penerimaan data), Ground, kabel video 1 dan kabel video 2 (Gambar 50).
4.3.
Program Mikrokontroler Program mikrokontroler ini dibuat sesuai dengan spesifikasi
mikrokontroler ATmega32A. Kode program yang disusun menggunakan Code Vision AVR 2.05 (Lampiran 11).
4.3.1.
Inisialisasi dan konfigurasi mikrokontroler ATmega32A Inisialisasi mikrokontroler merupakan hal pertama yang harus dilakukan
agar program dapat diunduh pada mikrokontroler dan dapat bekerja sesuai dengan jenis mikrokontrolernya. Inisialisasi terdiri dari pemberian header files dari fungsi library yang sesuai kebutuhan dengan diawali “#include”. “#include <mega32a.h>” berfungsi untuk mendefinisikan register input dan output (I/O) untuk mikrokontroler ATmega32A. “#include
” digunakan sebagai bentuk dasar untuk fungsi I2C bus master. Fungsi ini dimasukkan setelah mendeklarasikan alamat I/O dari Register Data Port dimana I2C Bus terkoneksi dan Data Bits yang digunakan untuk SDA dan SCL. “#include <math.h>” digunakan sebagai bentuk dasar untuk fungsi matematika. “#include <delay.h>” digunakan sebagai bentuk dasar dari penundaan waktu. “include <1wire.h>” digunakan sebagai bentuk dasar untuk fungsi 1-Wire. “include ” digunakan sebagai bentuk dasar untuk menggunakan fungsi pengambilan data suhu dari sensor DS1820.
60
Konfigurasi mikrokontroler dilakukan untuk mengaktifkan fitur-fitur yang akan dipakai seperti komunikasi antarmuka I2C, 1-Wire dan USART untuk proses pengiriman dan penerimaan data. Konfigurasi komunikasi I2C ditulis dalam kode program berikut: #asm .equ __i2c_port=0x1B ;PORTA .equ __sda_bit=6 .equ __scl_bit=7 #endasm
Konfigurasi komunikasi 1-Wire ditulis dalam kode program berikut: #asm .equ __w1_port=0x18;PORTB .equ __w1_bit=1 #endasm
“#asm” merupakan salah satu C prepocessor seperti “#include”. “#asm” ini diikutkan untuk mendefinisikan PORT dan bit yang digunakan untuk komunikasi I2C dan 1-Wire. Konfigurasi fungsi USART terdiri dari beberapa bagian seperti USART Receiver Buffer, USART Receiver Interrupt Service Routine, fungsi getchar (fungsi untuk mendapatkan satu karakter dari laptop), fungsi putchar (fungsi untuk memberikan satu karakter ke laptop), USART Transmitter Buffer, dan USART Transmitter Interrupt Service Routine. Pengaktifan fitur-fitur mikrokontroler seperti PORT I/O dan USART dilakukan di dalam bagian utama program yaitu “void main ()”. Pengaktifan PORT dilakukan dengan menentukan lokasi alamat memori I/O yaitu Data Direction Register (DDRx), Data Register (PORTx), dan Port Input Pins (PINx). DDxn bit pada DDRx Register menentukan fungsi pin tersebut. Logika 1 mengartikan bahwa pin pada PORT tersebut dikonfigurasikan sebagai output. Logika 0 berarti pin dikonfigurasikan sebagai input. Jika PORTxn ditulis dengan
61
logika 1 ketika pin dikonfigurasikan sebagai input, maka pull up resistor akan aktif. Pull up resistor akan tidak aktif jika PORTxn ditulis dengan logika 0. Jika PORTxn ditulis dengan logika 1 ketika pin dikonfigurasikan sebagai output, maka PORT tersebut akan mengeluarkan tegangan sebesar 5 Volt (tegangan kerja mikrokontroler). Penulisan logika 0 akan menyebabkan PORT menjadi Ground. Pada program mini ROV ini, tiap-tiap PORT dikonfigurasikan sebagai berikut: PORTA=0x00; DDRA=0x00; PORTB=0x00; DDRB=0xFF; PORTC=0x00; DDRC=0xFF; PORTD=0x00; DDRD=0x00;
DDRA dan DDRD dikonfigurasikan sebagai input karena pada penelitian ini tidak digunakan. DDR PORTB dan PORTC bernilai 0xFF mengartikan bahwa semua pin pada PORT ini bertindak sebagai output. Hal ini dikarenakan pada kedua PORT ini digunakan untuk konfigurasi switching thruster. Inisialisasi fitur USART ditulis pada kode berikut: UCSRA=0x00; UCSRB=0xD8; UCSRC=0x06; UBRRH=0x00; UBRRL=0x19;
Inisialisasi ini memiliki arti bahwa mikrokontroler ini berkomunikasi dengan laptop pada baudrate 9600 kbps (kilobyte per second) dengan parameter komunikasi: •
8 Data, 1 Stop, No Parity
•
Penerima USART: aktif
62
•
Pengirim USART : aktif
•
Mode USART: Asynchronous
4.3.2.
Transmisi Data Pentransmisian data pada mini ROV ini dapat diaktifkan dan
dinonaktifkan. Kode program diletakkan di dalam fungsi “while” sehingga selalu diulang. Pengaktifan transmisi dilakukan apabila karakter “a” dikirim ke mikrokontroler. Transmisi dinonaktifkan dengan mengirimkan karakter “s”. Karakter ini akan diterima oleh mikrokontroler dengan perintah “tele=getchar()”. Pada saat karakter “a” dikirim maka transmisi akan aktif dan akan melakukan pengiriman data accelerometer, arah, pitch, roll, dan suhu. Format pengiriman data akan dibahas pada sub sub bab berikutnya. Kodenya seperti berikut: while (1) { tele=getchar(); if(tele=='a') { #asm("cli"); transmisi=1; #asm("sei"); } if(tele=='s') { #asm ("cli"); transmisi=0; putchar(13); putchar(10); #asm("sei"); } }
4.3.3.
Pengambilan Nilai Arah, Pitch, dan Roll dari CMPS10 Kompas CMP10 dihubungkan dengan mikrokontroler ATmega32A
menggunakan komunikasi I2C. Pengambilan data CMPS10 untuk arah menggunakan kode program berikut:
63
unsigned char cmps10(char reg) {int nilai; i2c_start(); i2c_write(0xC0); i2c_write(reg); i2c_start(); i2c_write(0xC1); nilai=i2c_read(0); i2c_stop(); return nilai; }
Proses pengambilan data CMPS10 dimulai dengan kode “i2c_start()”. Kode ini memerintahkan mikrokontroler untuk memulai komunikasi I2C. “i2c_write(0xC0)” akan memerintahkan mikrokontroler untuk menulis kode heksadesimal C0 pada alamat modul kompas, kemudian menulis register yang diinginkan pada kode “i2c_write(reg)”. Register ini sesuai dengan Tabel 1. Selanjutnya diikuti dengan start bit lagi. Penulisan alamat modul kompas dilakukan dengan kode heksadesimal C1 yang berarti read/write high. Perintah berikutnya ialah “i2c_read(0)”. Mikrokontroler akan membaca data yang keluar dari modul kompas CMPS10 tanpa adanya ack (acknowledgement). “i2c_stop()” memerintahkan mikrokontroler untuk menghentikan komunikasi I2C. Data yang terbaca akan tersimpan pada variabel “nilai”.
4.3.4.
Pengambilan Nilai Accelerometer dari H48C H48C dihubungkan ke mikrokontroler pada PORT yang telah ditentukan.
Pendefinisian kaki-kaki H48C yang terhubung dengan mikrokontroler perlu dilakukan. Kode programnya sebagai berikut: #define #define #define #define
CLK PORTA.0 Di PINA.1 Do PORTA.1 CS PORTA.2
64
“#define” merupakan C preprocessor yang digunakan untuk mendefinisikan macro. “#define CLK PORTA.0” menandakan bahwa variabel CLK (clock H48C) dihubungkan ke PORT A.0. Clock ini berfungsi untuk menginisialisasi konversi dan clock out tiap bit konversi yang dilakukan. “#define Di PINA.1” menandakan bahwa variabel Di (Data In) dihubungkan ke PIN A.1. Data In digunakan untuk mengisi kanal konfigurasi data ke dalam alat. “#define Do PORTA.1” berarti Do (Data Out) dihubungkan ke PORT A.1. Data Out befungsi untuk mengatur perubahan hasil keluaran konversi AD (analog digital). “#define CS PORTA.2” berarti kaki CS H48C dihubungkan ke PORTA.2. CS berfungsi untuk menginisialisasi komunikasi dengan alat dimana ketika berlogika 0 akan menghentikan konversi dan berlogika 1 akan melakukan konversi. Selain mendefisinikan kaki-kaki H48C yang terhubung ke mikrokontroler juga perlu didefinisikan Data In dan Data Out dengan kode berikut: #define DATA_IN #define DATA_OUT
0b11111101 0b11111111
Kode di atas mengartikan bahwa “DATA_IN” bernilai 11111101 (biner) atau FD (heksadesimal) atau 253 (desimal). Bilangan ini digunakan untuk mengubah sinyal dari kondisi high/tinggi ke low/rendah. Pemberian nilai 0 dilakukan pada bit 1 dikarenakan Data In didefinisikan pada PINA.1. “DATA_OUT” bernilai FF yang berarti sinyal dibuat ke dalam kondisi high. Komunikasi antara mikrokontroler dengan H48C dilakukan dengan menggunakan beberapa kode program di bawah ini. Langkah pertama ialah membuat fungsi clock yang digunakan untuk mengubah sinyal dari high ke low dengan periode tidak lebih dari 0,1 mikrodetik. Hal ini dikarenakan komponen ADC MCP3204 yang berada di dalam H48C memiliki spesifikasi untuk
65
mengeluarkan 12 data bits dalam waktu maksimum 1,2 milidetik. Kegagalan untuk memenuhi kriteria ini menyebabkan galat linearitas pada konversi. Hal yang perlu menjadi catatan adalah pada seluruh siklus konversi data H48C, ADC MCP3204 tidak membutuhkan kecepatan yang konstan selama spesifikasi timing terpenuhi. Kodenya seperti berikut: void clock() { CLK=0; delay_us(5); CLK=1; delay_us(5); }
Kode di atas berfungsi untuk membuat sinyal clock dan mengakibatkan sinyal yang dimasukkan ke dalam H48C seperti Gambar 56.
Gambar 56. Sinyal CLK pada H48C
Langkah berikutnya ialah membaca data dari H48C. Kodenya seperti berikut: int read_HC(unsigned char axis) { int looping, hc; DDRA=DATA_OUT; CS=0; Do=1; clock(); Do=1; clock(); for(looping=3;looping>0;looping--) { Do=(axis>>(looping-1)) & 0x01; clock(); } DDRA=DATA_IN; Do=1; clock();
66
clock(); hc=0; for(looping=0;looping<12;looping++) { CLK=0; delay_us(1); hc<<=1; hc|=Di; CLK=1; delay_us(1); } CS=1; return hc; }
Pada kode di atas ada inisialisasi variabel “looping” dan “hc” dengan tipe integer. Variabel “looping” digunakan untuk melakukan perulangan. Variabel “hc” digunakan sebagai penyimpan sementara dari nilai accelerometer yang diterima mikrokontroler dari H48C. DDRA=DATA_OUT berarti DDRA difungsikan sebagai DATA_OUT. CS diberi logika 0 untuk menginisialisasi komunikasi antara mikrokontroler dengan H48C. Start bit dimulai saat CS berlogika 0 dan Do dibuat high. Kemudian diberi perintah clock untuk membuat satu sinyal high and low dengan periode 5 mikrodetik. Do dibuat high untuk memilih mode control bit selection pada single input. Kemudian diberi perintah clock lagi (Gambar 57).
Gambar 57. Sinyal untuk memulai start bit dan pemilihan mode input (Biru: start bit; Merah: pemilihan mode input)
67
Langkah berikutnya ialah pemilihan kanal konversi, kanal ini dipilih dengan menggunakan fungsi “for”. Fungsi ini melakukan pemilihan kanal dimana kanal yang digunakan adalah kanal 0 untuk variabel axisnya bernilai 0, kanal 1 untuk axis 1, kanal 2 untuk axis 2, kanal 3 untuk axis 3. Pemilihan kanal ini digunakan untuk mengeluarkan data voltase dari tiap axis dimana nilai variabel axis-nya 0 berarti nilai voltase pada axis x, 1 untuk axis y, 2 untuk axis z dan 3 untuk tegangan referensi. Pemilihan kanal ini sesuai dengan Tabel 8.
Tabel 8. Pemilihan kanal pengambilan data accelerometer Control Bit Selections Single/ Diff 1 1 1 1
D2 X X X X
D1 0 0 1 1
D0 0 1 0 1
Konfigurasi Input
Pemilihan Kanal
Single ended Single ended Single ended Single ended
CH0 CH1 CH2 CH3
Keterangan : X = tidak dihiraukan
Setelah pemilihan kanal, DDRA difungsikan sebagai DATA_IN yang akan menerima data dari H48C. Do=1 diberi logika 1 untuk membuat dalam keadaan high. Setelah itu dilakukan clocking sebanyak 2 kali untuk memberitahukan H48C akan waktu pengambilan sampel dan pemberian null bit dengan kode hc=0. Pengambilan data dari H48C dilakukan dengan fungsi “for (looping=0; looping<12; looping++)”. Perulangan dilakukan sebanyak 12 kali dikarenakan bit Data Out dari MCP3204 hasil konversi ada 12 bit dimulai dari bit 0 hingga bit 11. Fungsi ini dimulai dengan membuat CLK berlogika 0. Penundaan waktu CLK dilakukan agar tetap low sebanyak 1 mikrodetik. Kemudian nilai hc sebelumnya digeser ke kiri 1 kali. Nilai hc baru diisi dari nilai Di. CLK diberi logika 1 untuk mengakhiri pengambilan data bit ini dan ditunda 1
68
mikrodetik. Setelah semua data diambil, CS diberi logika 1 untuk mengakhiri konversi. Pengambilan data accelerometer dari H48C belum memberikan nilai accelerometer yang sesungguhnya. Data ini perlu dikonversi sehingga menjadi nilai g-force. Kode ini didapat dari persamaan 14. Pengkonversian dilakukan oleh fungsi berikut: float konversi(int vRef,int vAxis) { float f; if (vAxis>=vRef)f=(vAxis-vRef)*0.0022; if(vAxis
4.3.5.
Pengambilan data suhu dari sensor DS1820 Sensor suhu DS1820 berkomunikasi dengan mikrokontroler menggunakan
komunikasi 1-Wire. Komunikasi ini hanya membutuhkan satu kabel yang terhubung pada sensor dan mikrokontroler. Komunikasi ini berbeda dengan komunikasi I2C yang membutuhkan dua kabel untuk berkomunikasi. Hal yang pertama dilakukan dalam mendefinisikan maksimum device yang dapat diakses dengan kode “#define MAX_DS1820 8”. Kode ini mengartikan bahwa sensor DS1820 yang dapat diakses maksimum delapan. Inisialisasi variabel dilakukan pada kode berikut: unsigned char ds1820_devices; unsigned char ds1820_rom_codes[MAX_DS1820][9];
Variabel ds1820_devices digunakan untuk menyimpan nilai dari jumlah device yang terhubung ke mikrokontroler melalui komunikasi 1-Wire. Variabel ds1820_rom_codes digunakan untuk memberikan nilai device ROM codes storage area.
69
Di dalam fungsi “void main()” ditulis kode “w1_init()” untuk menginisialisasi device yang terhubung dengan mikrokontroler. Kode “ds1820_devices=w1_search (0xf0,ds1820_rom_codes)” digunakan mencari device yang terhubung ke mikrokontroler dengan menggunakan komunikasi 1Wire. Kode “temp=ds1820_temperature_10(&ds1820_rom_codes[0][0])” digunakan untuk mengambil nilai suhu yang diukur oleh sensor DS1820. Suhu yang terukur memiliki satuan derajat celcius (°C).
4.3.6.
Penyusunan format data dan pengiriman ke komputer Penyusunan format data dilakukan dengan kode program berikut. Data
akan dikirim apabila “transmisi=1”. Kode ini diletakkan dalam fungsi “while (1)” agar perulangan tetap dilakukan. Kodenya sebagai berikut: if(transmisi==1) { #asm("cli"); arah=cmps10(2)<<8; arah+=cmps10(3); p1=cmps10(4); roll=cmps10(5); pitch2=kemiringan(p1); vX=read_HC(0); vY=read_HC(1); vZ=read_HC(2); vRef=read_HC(3); ax=konversi(vRef,vX); ay=konversi(vRef,vY); az=konversi(vRef,vZ); temp=ds1820_temperature_10(&ds1820_rom_codes[0][0]); printf("%4.2f", ax); putchar(0x20); printf("%4.2f", ay); putchar(0x20); printf("%4.2f", az); putchar(0x20); printf("%u.%u ", arah/10, arah%10);
70
putchar(0x20); printf("%5.2f ", pitch2*1.41176470588235); putchar(0x20); printf("%5.2f ",roll*1.41176470588235); putchar(0x20); printf("%-i.%-u\n\r",temp/100,abs(temp%10)); putchar(13); putchar(10); delay_ms(1000); #asm("sei"); };
Pada kode program di atas, pengambilan data yang pertama ialah pengambilan data dari CMPS10. Variabel arah, p1, pitch2 dan roll didefinisikan dulu sebelumnya di bawah “void main()” dengan menuliskan kode int arah, p1, roll dan float pitch2. “arah=cmps10(2)” menjelaskan bahwa variabel arah bertipe integer dan digunakan untuk mengambil data CMPS10 pada register 2 yaitu register untuk mengambil data arah (heading). “arah+=cmps10(3)” mengartikan bahwa mode register yang digunakan adalah 16 bit dimana register 2 diambil dulu sebagai high byte kemudian register 3 diambil sebagai low byte. Variabel p1 akan menyimpan data pitch yang diambil dari register 4 CMPS10. Variabel roll akan menyimpan data roll dari register 5 CMPS10. “pitch2=kemiringan (p)” berarti nilai p yang didapat dari data pitch dimasukkan ke dalam fungsi kemiringan agar nilai yang keluar berupa nilai derajat dari 0° – +180° dan 0° – -180°. Fungsi ini diperlukan karena komponen abakus TABVCInd yang diletakkan pada program delphi memiliki rentang nilai pitch dari 0° – +180° dan 0° – -180°. Fungsi kemiringan diletakkan di luar program utama “void main()” dengan kode seperti berikut: float kemiringan(float pitch) { float p; if (pitch<=128)
71
{p=pitch; } if(pitch>128) {p=(pitch)-255; } return p; }
Pengambilan data berikutnya ialah data accelerometer. Data accelerometer ini diambil pada tiap sumbu. Variabel yang diperlukan adalah vX, vY, vZ, dan vRef dengan tipe integer dan ax, ay, az dengan tipe float. Variabel ini diinisialisasi di bawah void main() dengan kode int vX, vY, vZ, vRef dan float ax, ay, az. Kemudian data accelerometer dibaca dengan kode read_HC (axis) dimana axis bernilai sesuai dengan kanal yang akan digunakan. Setelah data diambil, konversi dilakukan agar memperoleh data accelerometer dalam satuan gforce. Data arah, pitch, roll, accelerometer, dan suhu kompartemen yang telah diperoleh kemudian disusun untuk dikirim ke mikrokontroler. Data yang keluar akan memiliki format berbentuk seperti Tabel 9. Kode pengiriman data dilakukan dengan menulis perintah “printf” untuk mengirim data dalam bentuk kalimat dan putchar dalam bentuk karakter. Sebagai contoh printf("%4.2f", ax) memiliki arti bahwa data yang keluar (%) adalah data tipe f (float) dengan banyaknya angka 4 dimana 2 angkanya adalah angka di belakang koma dan diperoleh dari variabel ax. Pada bagian pengiriman data pitch dan roll, ada perkalian data dengan konstanta sebesar 1,41176470588235. Konstanta ini diperlukan untuk membuat data pitch dan roll bernilai 0° – 360° dikarenakan keluaran nilai pitch dan roll memiliki rentang 0 – 255 untuk nilai 0° – 360°.
72
Tabel 9. Format pengiriman data B y t e
1 2 3 4
D a t a
A c c
5
20 H
X
6 7 8 9 A c c Y
4.3.7.
10
20 H
11 12 13 14 A c c
15
16 17 18 19
20 H
A r a h
Z
20
21 22 23 24 25
20 H
P i t c h
26
27 28 29 30 31
32
33 34 35
36
20 H
R o l l
20 H
S u h u
0D 0A H H
37
Pergerakan thruster Pergerakan thruster dilakukan dengan menuliskan kode program yang
disesuaikan dengan penempatan pin dari EMS 2A Dual H-Bridge dan EMS 5A HBridge yang telah dijelaskan pada bagian metodologi. Kode programnya sebagai berikut: if(tele=='0') //BERHENTI { #asm("cli"); PORTB=0X00; PORTC=0X00; #asm("sei"); } if(tele=='1') //MAJU { #asm("cli"); PORTC=0X00; PORTB.4=1; PORTB.5=0; PORTB.6=1; PORTB.7=0; #asm("sei"); } if(tele=='2') //MUNDUR { #asm("cli"); PORTC=0X00; PORTB.4=0; PORTB.5=1; PORTB.6=0; PORTB.7=1;
73
#asm("sei"); } if(tele=='3') { #asm("cli"); PORTC=0X00; PORTB=0X10; #asm("sei"); } if(tele=='4') { #asm("cli"); PORTC=0X00; PORTB=0X40; #asm("sei"); } if(tele=='5') { #asm("cli"); PORTB=0X00; PORTC=0X4d; #asm("sei"); } if(tele=='6') { #asm("cli"); PORTB=0X00; PORTC=0X8e; #asm("sei"); }
//KIRI
//KANAN
//NAIK
//TURUN
Fungsi “if” digunakan untuk mencocokkan karakter yang masuk ke dalam mikrokontroler dengan perintah yang ingin dijalankan. Tujuh fungsi ini sesuai dengan jumlah perintah untuk menggerakkan motor yaitu semua motor mati, maju, mundur, belok kanan, belok kiri, naik, dan turun. Perintah akan dijalankan apabila karakter yang diterima melalui kode “tele=getchar()” sesuai dengan salah satu dari fungsi “if” di atas. Apabila karakter yang diterima tidak sama maka tidak ada perintah yang dilakukan. Penjelasan kode di atas apabila disederhanakan maka akan didapat Tabel 10.
74
Tabel 10. Aktivasi motor berdasarkan karakter yang dikirim Karakter Aktivasi Tindakan 0 Motor 1,2,3,dan 4 berhenti Berhenti 1 Motor 1 dan 2 CCW Maju 2 Motor 1 dan 2 CW Mundur 3 Motor 2 CCW Belok kiri 4 Motor 1 CCW Belok kanan 5 Motor 3 dan 4 CCW Naik 6 Motor 3 dan 4 CW Turun Keterangan: CW : Clockwise (searah jarum jam) CCW : Counter-clockwise (berlawanan arah jarum jam)
4.4.
Program Antarmuka Pengguna Grafis Program antarmuka pengguna grafis (GUI) dibuat dengan menggunakan
program Delphi 7. Program GUI (Gambar 58) ini dibuat dengan menu tampilan video, kompas, pitch, roll, waktu operasi, nilai accelerometer, nilai suhu kompartemen, 3 dimensi mini ROV, pengaktifan dan penonaktifan transmisi data dari dan ke mikrokontroler, pengendalian motor dengan joystick, penyimpanan video ke laptop, dan penyimpanan data mentah hasil transmisi dari mini ROV.
Gambar 58. Tampilan GUI RJ45 V2
75
Program GUI berekstensi executable file (*.exe) sehingga memungkinkan pengguna untuk menjalankan program dalam lingkup yang luas dan dapat dipindahkan dengan leluasa karena tidak terkait dengan program tertentu dan tidak memerlukan instalasi terlebih dahulu. Listing program GUI dapat dilihat pada Lampiran 12.
4.4.1.
Program penampil video Program ini dibedakan menjadi dua bagian yaitu bagian video depan dan
video bawah sesuai dengan jumlah kamera CCD yang terdapat pada RJ45 V2. Program penampil video ini menggunakan komponen Video Lab Delphi yaitu TVLDSImageDisplay, TVLDSCapture, dan TVLAVILogger. TVLDSImageDisplay digunakan untuk menampilkan video dari komponen TVLDSCapture. TVLDSCapture digunakan untuk mengambil gambar dari kamera CCD yang dihubungkan melalui TV Tuner. TVAVILogger digunakan untuk merekam video yang terhubung ke komponen TVLDSCapture. Pada program ini, pengguna dapat melakukan perekaman video dengan menekan tombol start. Penyimpanan video dilakukan dengan menekan tombol simpan. Setelah tombol ini ditekan maka akan muncul direktori file yang tersimpan seperti Gambar 59.
Gambar 59. Direktori file video yang tersimpan
4.4.2.
Program komunikasi serial antara komputer dan mikrokontroler Program ini berisikan pilihan COM yang akan digunakan untuk
komunikasi antara Laptop dengan mikrokontroler. Komponen yang digunakan untuk memilih COM adalah TComPort. Komponen ini berfungsi untuk mengatur
76
komunikasi pada program GUI ini. Pemilihan COM pada program GUI ini dilakukan dengan menekan tombol setting. Kotak dialog akan muncul setelah tombol setting ditekan seperti yang terlihat pada Gambar 60.
Gambar 60. Pengaturan komunikasi serial pada GUI
Pemilihan COM ini disesuaikan dengan COM yang terdapat pada USB Serial Port. Pengaturan COM USB Serial Port dapat dilakukan pada Device Manager. Pengaturan COM USB Serial ini harus sesuai dengan kecepatan komunikasi serial pada mikrokontroler.
4.4.3.
Program joystick untuk menggerakkan motor Program ini dijalankan tanpa adanya indikator yang ditampilkan pada
GUI. Program ini berfungsi untuk mengenali masukan dari joystick dan mengirimkan perintah tersebut sesuai dengan pergerakan yang telah ditetapkan. Perintah yang dijalankan dapat dilihat pada Tabel 11. Tabel 11. Penekanan tombol joystick dan perintah motor yang dilaksanakan Tombol yang ditekan Perintah Maju Maju Mundur Mundur Kiri Belok kiri Kanan Belok kanan Berhenti Kotak ( ) Berhenti Bundar (Ο) Naik Segitiga (Δ) Tanda perkalian (X) Turun
77
4.4.4.
Program penampil arah, pitch, dan roll Program penampil arah, pitch dan roll ini menggunakan komponen
Abakus Delphi yaitu TAbVCInd (Gambar 61). Komponen ini akan menampilkan nilai arah dari utara, barat, timur dan selatan. Komponen ini juga menampilkan pitch dan roll dari mini ROV dalam bentuk grafis dan angka.
Gambar 61. Penampil arah, pitch, dan roll
Selain menggunakan program di atas, nilai arah, pitch dan roll ini juga ditampilkan secara tiga dimensi menggunakan komponen Graph3D. Komponen ini akan memperlihatkan posisi mini ROV secara tiga dimensi (Gambar 62).
Gambar 62. Tampilan posisi mini ROV secara tiga dimensi
4.4.5.
Program penghitung waktu operasi Program ini digunakan untuk melihat waktu yang telah digunakan untuk
mengoperasikan mini ROV. Waktu ini sangat diperlukan untuk melihat seberapa lama mini ROV dapat beroperasi di dalam air. Program ini berisikan waktu dalam format jam:menit:detik. Penghitungan aktif pada saat transmisi data sudah
78
diaktifkan. Program ini menggunakan komponen Abakus Delphi yaitu TAbOpHourCounter (Gambar 63).
Gambar 63. Penampil waktu operasi
4.4.6.
Program penunjukan sikap (attitude) mini ROV Program ini menampilkan nilai accelerometer dari tiap-tiap sumbu yaitu
sumbu x, sumbu y, dan sumbu z. Program ini menggunakan komponen SDL RasterLab (Gambar 64). Nilai yang keluar pada tampilan ini sesuai dengan nilai yang keluar dari mikrokontroler.
Gambar 64. Tampilan nilai accelerometer
4.4.7.
Program penampil suhu kompartemen RJ45 V2 Program ini menampilkan nilai suhu yang terdeteksi dari sensor suhu
Dallas. Nilai suhu ini sesuai dengan nilai suhu yang terukur di dalam kompartemen elektronik. Program ini menggunakan komponen SDL RasterLab dengan tampilan yang mirip dengan Gambar 64.
4.5.
Pengujian kinerja mini ROV Pengujian kinerja dilakukan untuk melihat seberapa baik mini ROV ini
dapat digunakan. Pengujian meliputi pengujian daya apung, pengujian kompas
79
digital CMPS10, pengujian accelerometer H48C, pengujian motor, pengujian kinerja video, dan pengujian kinerja GUI.
4.5.1.
Pengujian daya apung Massa RJ45 V2 saat belum dimasukkan komponen elektronik adalah 6,3
kg. Setelah ditambahkan dengan komponen, massa bertambah menjadi 10 kg. Mini ROV RJ45 V2 memiliki efisiensi berat sebesar 36% dibandingkan dengan RJ45. Pada saat mini ROV belum ditempatkan dengan komponen telah dilakukan pengujian daya apung. Hasilnya mini ROV mengapung. Pemberian pemberat dilakukan untuk melihat perubahan daya apungnya. Pemberat ini menggunakan weight belt. Pemberian weight belt ini mencapai 9 kg untuk mengkondisikan mini ROV tercelup ke dalam air. Pada saat semua komponen sudah dimasukkan, pemberat yang dibutuhkan agar mini ROV melayang berkisar antara 4 hingga 5 kg. Banyaknya pemberat ini memberikan efek penambahan berat pada mini ROV. Kelemahan adanya pemberat ini adalah motor kurang kuat untuk menggerakkan mini ROV dikarenakan adanya pertambahan beban yang harus digerakkan oleh motor.
4.5.2.
Pengujian kompas digital CMPS10 Pengujian dilakukan untuk melihat kinerja kompas digital CMPS10 dalam
penentuan arah, pitch dan roll. Penentuan arah menggunakan kompas sebagai acuannya. Penentuan pitch dan roll menggunakan busur derajat untuk melihat kemiringannya (Gambar 65). Dari hasil percobaan diperoleh nilai arah dengan galat yang bervariasi (Gambar 66). Galat diperkirakan berasal dari induksi medan magnet yang
80
berasal daari komponeen elektronikk seperti ad daptor. Galaat dapat dihhilangkan deengan menambahhkan magneetic shieldinng (Gambar 67). Maggnetic shieldding merupaakan benda yanng berfungsii untuk meliindungi kom mponen darri induksi m magnet.
Gambar 65. 6 Penempaatan busur derajat d padaa percobaann sudut pitchh (a) dan roll (b)
Gambar 66. 6 Pengukuuran CMPS1 10 tanpa maagnetic shieelding
Gambar 677. Pengukurran CMPS10 0 dengan magnetic m shieelding
81
Bahan Magnetic shielding yang diujicobakan pada CMPS10 ada 3 buah yaitu akrilik, kayu, dan seng (Gambar 68). Dari ketiga bahan, seng memberikan hasil yang bagus dalam menghilangkan galat. Namun pada saat kompartemen diletakkan pada rangka terjadi galat yang bervariasi (Gambar 69). Galat yang besar terjadi pada arah 90° dan 270°. Galat diduga karena adanya medan magnet yang berasal dari induksi motor DC.
Gambar 68. Bahan magnetic shielding yang diujicobakan (kiri : akrilik, tengah : kayu, kanan : seng)
Gambar 69. Pengukuran CMPS10 setelah dimasukkan ke dalam rangka
STMicroelectronics (2010) menyatakan bahwa galat yang terjadi pada pengukuran arah dapat disebabkan adanya medan magnet eksternal atau adanya error pada pengukuran pitch atau roll. Error pada pengukuran pitch atau roll
82
disebabkan oleh pengukuran accelerometer yang tidak dapat membedakan gravitasi bumi dari akselerasi linear atau akselerasi angular. Caruso (2011) juga menyatakan bahwa adanya pengaruh besi yang berada pada sekitar kompas digital menyebabkan kompas tidak dapat mengimbangi efek dari besi tersebut. Caruso juga menjelaskan bahwa keakuratan pengukuran arah ditentukan oleh resolusi ADC (Analog to Digital Converter), galat dari sensor magnetik, efek dari suhu, materi besi yang berada di sekitarnya, galat dari kemiringan kompas, dan variasi dari medan magnet bumi. Dari hasil pengujian, kemungkinan besar galat disebabkan oleh adanya pengaruh besi di sekitarnya. Sensor kompas menghasilkan nilai arah didasarkan pada pengukuran medan magnet bumi. Sensor magnetik harus dapat mengukur medan magnet tanpa adanya gangguan dari sumber magnet. Besarnya gangguan tergantung dari isi material platform dan konektor serta benda-benda besi bergrak di dekat kompas. Peletakan motor pada bagian samping mini ROV menyebabkan adanya gangguan pada pembacaan arah. Penggambaran gangguan ini dapat diilustrasikan dari Gambar 70.
Objek besi + medan magnet seragam = gangguan medan magnet
Gambar 70. Ilustrasi gangguan besi pada medan magnet
Gangguan magnet dapat diklasifikasikan menjadi hard iron effect dan soft iron effect. Gangguan magnet yang terjadi pada mini ROV diduga berasal dari
83
jenis hard iron effect. Hal ini dikarenakan adanya magnet permanen yang ada di dekat kompas yaitu motor DC dari bilge pump dan rangka yang terbuat dari besi. Pengujian sudut pitch (Gambar 71) memperoleh hasil yang berbeda. Galat yang besar terjadi setelah mini ROV dimiringkan 10°. Pengujian yang dilakukan pada sudut roll (Gambar 72) diperoleh hasil dimana sudut roll mulai memiliki galat yang besar setelah sudut 20 derajat dan pada sudut -15 derajat. Galat yang terjadi diduga karena letak dari CMPS10 yang tidak berada di pusat rotasi (rotation center) dari platform. Hal ini mengakibatkan adanya kecepatan angular yang tidak tetap dan menjadi sebab adanya akselerasi eksternal yang tidak diinginkan pada CMPS10. Akselerasi ini dapat berupa akselerasi linear dan angular. Masalah ini juga dijelaskan oleh Lai et.al (2010).
Gambar 71. Pengujian sudut pitch
84
Gambar 72. Pengujian sudut roll
4.5.3.
Pengujian H48C Pengujian dilakukan untuk melihat kinerja sensor accelerometer H48C.
Pengujian dilakukan dengan menempatkan kompartemen pada bidang datar. Hasil percobaan dapat dilihat pada Tabel 12. Hasil percobaan ini sesuai dengan Tabel 7. Tabel 12. Nilai accelerometer pada tiap posisi Posisi Tetap Z turun Z Naik Y turun Y naik X turun X naik
Nilai Accelerometer Acuan Ax Ay Az 0 0 +1 0 0 -1 0 1 0 0 -1 0 1 0 0 -1 0 0
Nilai Accelerometer Uji Ax Ay Az 0,029 0,054 0,953 -0,233 0,044 -0.976 0,039 1,008 0,043 -0,041 -0,973 -0,048 0,983 0 -0,187 -1 0,054 0,143
Pada tiap posisi tetap terdapat nilai maksimum sekitar 1 g yang mengenai sumbu sensing dari sensor accelerometer. Nilai yang keluar tidak sama persis nilai accelerometer acuan. Hal ini diduga karena masih adanya gaya gravitasi yang mempengaruhi sumbu sensing dari axis yang lain. Namun, nilai ini kecil dan dapat dianggap sebagai nilai 0. Nilai yang keluar maksimum adalah 1 g.
85
Nilai ini diartikan bahwa sumbu sensing menerima percepatan gravitasi sebesar 1 g atau sekitar 9,8 N/m2.
4.5.4.
Pengujian sistem kendali Pengujian sistem kendali dibagi menjadi tiga bagian yaitu pengujian
sistem video kamera, kesesuaian gerak motor dengan perintah dari joystick, dan kinerja GUI. Pengujian terhadap sistem video kamera memberikan hasil yang dapat dilihat pada Gambar 73. Video dapat ditampilkan pada program antarmuka grafis (GUI). Perubahan yang terjadi pada mini ROV juga terlihat pada tampilan di program ini.
Gambar 73. Tampilan video kamera depan dan kamera bawah di dalam air
Pada saat cahaya kurang atau tidak ada, kamera akan mengaktifkan sistem LED inframerah sehingga gambar yang keluar menjadi gambar hitam putih (Black and White). Gambar yang dihasilkan tidak terlalu bagus karena kurang jelas
86
namun cukup untuk memberikan petunjuk kepada pilot dalam menggerakkan RJ45 V2 ini. Pengujian kinerja motor dilakukan dengan melihat pergerakan motor apakah sesuai dengan perintah yang dikirim oleh laptop. Pengujian terhadap kinerja motor memberikan hasil yang sesuai dengan Tabel 10. Karakter yang dikirim kepada mikrokontroler telah memberikan putaran motor yang sesuai dengan Tabel 10. Hal ini berarti pengiriman karakter (transmisi data) ke mikrokontroler berhasil. Mikrokontroler juga mengirimkan perintah kepada driver motor untuk menggerakkan motor sesuai dengan karakter yang diterima oleh mikrokontroler. Namun terdapat kekurangan pada kinerja motor. Motor tidak cukup kuat untuk menggerakkan mini ROV secara cepat. Pada saat propeler mini ROV diperintahkan untuk berputar secara bersamaan, motor bergerak tidak mulus (Gambar 74). Propeler bergerak tersendat-sendat. Pada saat satu motor yang hanya digunakan, pergerakannya mulus. Propeler bergerak dengan baik (Gambar 75). Kinerja yang tidak mulus ini diduga karena daya yang diberikan kepada tiap motor tidak sama dan bentuk propeler tidak sesuai dengan penggunaannya di dalam air. Solusi yang digunakan untuk menghilangkan masalah ini adalah dengan menempatkan satu adaptor untuk satu motor dan mengubah bentuk balingbaling (Gambar 76). Perubahan ini memberikan hasil dimana motor kuat untuk menggerakkan mini ROV (Gambar 77). Dengan demikian, masalah motor yang terjadi pada RJ45 dapat diatasi pada penelitian ini. Pengujian terhadap GUI dilakukan dengan melihat apakah semua fitur dapat digunakan. Dari hasil percobaan, semua fitur dapat digunakan. Namun,
87
pada fitur perekaman video terjadi tunda waktu selama 3 detik antara gambar yang ditangkap oleh kamera video dengan gambar yang ditampilkan.
Gambar 74. Aliran air saat motor diaktifkan keduanya (Kiri : percobaan I, Kanan : percobaan II)
Gambar 75. Aliran air saat hanya satu motor yang diaktifkan (Kiri : percobaan I, Kanan : percobaan II)
Gambar 76. Bentuk baling-baling yang digunakan dalam uji coba RJ45 V2 (Kiri : percobaan I, Kanan : percobaan II)
Gambar 77. Pergerakan mini ROV
5. KESIMPULAN DAN SARAN 5.1. KESIMPULAN Mini ROV RJ 45 V2 telah dikembangkan dalam penelitian ini, namun perlu disempurnakan. Dari seluruh proses pembuatan alat sampai dilakukannya pengujian dapat disimpulkan bahwa sistem yang diterapkan pada Mini ROV RJ45 V2 bekerja dengan baik. Mini ROV RJ45 V2 yang telah dibuat ini telah memperbaiki beberapa kekurangan yang ada pada RJ45 seperti massa ROV menjadi lebih ringan 36%, adanya sensor tambahan yaitu sensor suhu, kompas digital, dan accelerometer, dan motor DC cukup kuat untuk menggerakkan mini ROV. Masalah pengurangan panas di dalam kompartemen belum dilakukan. Penulis hanya meletakkan sensor suhu di dalam kompartemen untuk mengetahui suhu di dalam kompartemen sehingga dapat dilakukan langkah antisipatif. Secara umum, mini ROV ini dapat bekerja di dalam air. Ada beberapa permasalahan yang perlu dipecahkan yaitu : galat yang terjadi pada CMPS10 dikarenakan adanya hard iron effect, kekuatan motor penggerak, bentuk balingbaling yang tepat untuk mini ROV ini, dan jeda waktu antara penyimpanan video dengan tampilan video.
5.2. SARAN Saran untuk penelitian berikutnya adalah: a. Perlu dilakukan kalibrasi pada CMPS10 untuk menghilangkan hard iron effect sehingga CMPS10 dapat memberikan nilai arah yang sesungguhnya. b. Penggunaan motor yang memiliki kekuatan yang lebih besar (sekitar 1500 – 2000 GPH).
88
c. Pembuatan baling-baling thruster yang sesuai untuk penggunaannya di dalam air. d. Perlu dicoba penggunaan sumber tegangan yang berbeda seperti penggunaan tegangan DC sebagai sumber listrik utama ROV.
89
DAFTAR PUSTAKA Atmel. 2011. 8-bit Microcontroller with 32K Bytes In-System Programmable Flash ATmega32A. http://www.atmel.com/dyn/…/doc8155.pdf [diunduh tanggal 10 Oktober 2011] Borland. 2002. Delphi Help. Borland Software Corporation. Cupertino Caruso, M. J. 2011. Applications of Magnetic Sensors for Low Cost Compass Systems. http://www51.honeywell.com/aero/…/Applications_of_Magnetic_Sensors_ for_Low_Cost_Compass_Systems.pdf [diunduh tanggal 21 Januari 2012] Christ, R. D. dan Robert L Wernli Sr. 2007. The ROV Manual : A User Guide for Observation-Class Remotely Operated Vehicle. Elsevier Ltd. Oxford Delta Electronic. 2007. Merancang Robot Penjejak Garis dengan Menggunakan Delta Robo Kits dan DST-R8C STAMP. http://www.robotindonesia.com/article/an0015.pdf [diunduh tanggal 12 Agustus 2011] EVS-380. 2007. Autonomous and Remotely Operated Vehicles. http://www.uncwil.edu/nurc/evs380/2007/AUV_ROV_Factsheet.pdf [diunduh tanggal 12 Agustus 2011] Freescale Semiconductor. 2005. MC33887 5.0 A H-Bridge with Load Current Feedback. http://www.freescale.com/files/…/MC33887.pdf [diunduh tanggal [diunduh tanggal 12 Agustus 2011] Hoong, C. Y. 2010. Development of A Computer Controlled Remotely Operated Underwater Vehicle. Universiti Teknologi Malaysia. Kuala Lumpur Innovative Electronics. 2009a. EMS 2A DUAL H-BRIDGE. http://www.innovativeelectronics.com/innovative_electronics/download_ files/manual/EMS_2A_DHBridge.pdf [diunduh tanggal 14 Agustus 2011] Innovative Electronics. 2009b. EMS 5A H-BRIDGE. http://www.innovativeelectronics.com/innovative_electronics/download_ files/manual/EMS_5A_HBridge.pdf [diunduh tanggal 14 Agustus 2011] Innovative Electronics. 2011a. EMS 2A DUAL H-BRIDGE. http://innovativeelectronics.com/innovative_electronics/images/EMS/small/ EMS_2ADHB.gif [diunduh tanggal 14 Agustus 2011] Innovative Electronics. 2011b. EMS 5A H-BRIDGE. http://innovativeelectronics.com/innovative_electronics/images/EMS/small/ EMS_5AHB_Top.gif [diunduh tanggal 14 Agustus 2011]
90
91
Kietzman, S. 2011. What is PVC Pipe?. Diunduh dari http://www.wisegeek.com/what-is-pvc-pipe.htm [diunduh tanggal 10 Agustus 2011] Lai, Y. C., S.S Jan dan F.B Hsiao. 2010. Development of a Low-Cost Attitude and Heading Reference System Using a Three-Axis Rotating Platform. Sensors 10 : 2472-2491. Lirman, D., N. R. Gracias, B. E. Gintert,·A. C. R. Gleason,·R. P. Reid, S. Negahdaripour, dan P. Kramer. 2006. Development and Application of a Video-Mosaic Survey Technology to Document The Status of Coral Reef Communities. http://137.52.224.90/ocean/cpce/lirman_2006.pdf [diunduh tanggal 12 Agustus 2011] Luque, J. C. C. dan D. C. Donha. 2008. Two DOF Robust Controller for a Six DOF Underwater Autonomous Vehicle. ABCM Symposium Series in Mechatronics - Vol. 3 - pp.217-224. http://www.abcm.org.br/ symposiumSeries/SSM_Vol3/Section_II_Robotics/SSM3_II_01.pdf [diunduh tanggal 25 Agustus 2011] NOAA. 2010. Remotely Operated Vehicles (ROV). http://oceanexplorer.noaa.gov/technology/subs/rov.html [diunduh tanggal 12 Agustus 2011] Norsok Standard. 2003. Remotely Operated Vehicle (ROV) Services. Diunduh dari http://www.standard.no/PageFiles/978/U-102r1.pdf [diunduh tanggal 10 Agustus 2011] Parralax. 2007. Hitachi H48C 3-Axis Accelerometer Module (#28026). http://www.parallax.com/dl/…/HitachiH48C3AxisAccelerometer.pdf [diunduh tanggal 23 Maret 2011] Prihandono, H. 2008. Rancang Bangun Prototipe Remotely Operated Vehicle Bawah Air : Aspek Sistem Kendali Elektronik. Skripsi [Tidak Dipublikasikan]. Departemen Ilmu dan Teknologi Kelautan. Fakultas Perikanan dan Ilmu Kelautan. Institut Pertanian Bogor. Bogor Rizki, I. 2008. Rancang Bangun Prototipe Remotely Operated Vehicle Bawah Air : Aspek Sistem Kendali Mekanik. Skripsi [Tidak Dipublikasikan]. Departemen Ilmu dan Teknologi Kelautan. Fakultas Perikanan dan Ilmu Kelautan. Institut Pertanian Bogor. Bogor Robot-electronics. 2011a. CMPS10-Tilt Compensated Compass Module. http://www.robot-electronics.co.uk/htm/cmps10doc.htm [diunduh tanggal 23 November 2011]
92
Robot-electronics. 2011b. CMPS10-Tilt Compensated Compass Module I2C Mode. http://www.robot-electronics.co.uk/htm/cmps10i2c.htm [diunduh tanggal 23 November 2011] Robot-electronics. 2011c. Using I2C Bus. http://www.robot-electronics.co.uk/ acatalog/I2C_Tutorial.html [diunduh tanggal 23 November 2011] Schultz, J. 2009. Autonomous Underwater Vehicle (AUV) Propulsion System Analysis and Optimization. http://scholar.lib.vt.edu/theses/…/Schultz_James_Thesis.pdf [diunduh tanggal 14 April 2011] STMicroelectronics. 2000. L298N. http://www.st.com/internet/com/…/CD00000240.pdf [diunduh tanggal 12 Agustus 2011] STMicroelectronics. 2009. LSM330DLH. http://www.st.com/internet/com/… /CD00260288.pdf [diunduh tanggal 1 Desember 2011] STMicroelectronics. 2010. AN3192 Application Note Using LSM303DLH for a tilt compensated electronic compass. http://www.st.com/internet/com/…/CD00269797.pdf [diunduh tanggal 1 Desember 2011] Toko komputer. 2009. Kamera CMOS >> Kamera CCTV Termurah. http://tokokomputer007.com/images/cctv-kamera/cctv-camera-domeinfrared.jpg [diunduh tanggal 12 Agustus 2011] Vishay Intertechnology Inc. 2005. GI820 thru GI828 Fast Switching Plastic Rectifier. http:// www.vishay.com/docs/88629/gi820.pdf [diunduh tanggal 1 Desember 2011]
LAMPIRAN
Lampiran 1.
Fungsi alat yang digunakan untuk pembuatan RJ45 V2
No Alat Seperangkat laptop dengan sistem 1 operasi Windows XP
Fungsi Merancang perangkat keras dan lunak serta pengolahan data Membuat firmware dan mengunduhnya ke mikrokontroler Membuat rancangan bentuk Membuat program interface Melubangi pipa, akrilik Memasang dan membuka baut Menyolde antar komponen Mengukur hambatan,voltase, dan hubungan antar komponen
2
CodeVision AVR 2.05.0
3 4 5 6 7
Google Sketch Up 7 Delphi 7 Bor listrik Obeng Solder listrik 45 watt
8
Multimeter digital
9
Gerinda listrik
Memotong pcb, pipa, akrilik dna besi
10
DT-I/O USB I/O MODULE
Mengkonversi antara UART RS-232 dan USB
11
PC-Link USBer
Mengkonversi antara USB dan UART TTL/UART RS-232
12
USB TV STICK
Menghubungkan komputer dengan kamera
13
USB2.0 TV BOX
Menghubungkan komputer dengan kamera
14
Power supply 1A
Memberikan tegangan pada DT-I/O USB I/O MODULE
15
Downloader K125R
Mengunduh program mikrokontroler
16
gergaji besi
Memotong pipa,akrilik, dan besi
17 18 19
Gunting Penggaris Busur derajat
Memotong kabel Mengukur panjang komponen Mengukur kemiringan ROV
94
Lampiran 2.
Bahan-bahan yang digunakan dalam pembuatan RJ45 V2
No Bahan Modul 1 mikrokontroler
Tipe/nilai DT-AVR LOW COST MICRO SYSTEM
Jumlah 1 buah
2
Mikrokontroler
ATmega32A
1 buah
3
Modul kompas
1 buah
4
Modul 3D-AXIS
5 6 7
Resistor Modul driver motor Modul driver motor
CMPS-10 Hitachi H48C 3-Axis Accelerometer 4,7 KΩ EMS 5A H-BRIDGE EMS 2A DUAL H-BRIDGE
3 buah 2 buah 2 buah
8
Adaptor
2 amp
2 buah
9
Adaptor
KSE HS-60-12/ 5 amp
2 buah
10
Adaptor
SUNPOWER MODEL FDPS /1 amp
3 buah
11
Jack power supply
12
Mini kamera
13
kepala kabel co axial
14
Bilge pump
500 gph
2 buah
15
Bilge pump
700 gph
2 buah
16 17 18 19 20 21 22 23 24 25 26 27 28
Propeler Akrilik Spacer Baut connector 2 pin connector 4 pin connector 8 pin Pipa Stainless steel cat besi kuas pengencer cat Pipa PVC Hang clam
1 buah
2 buah 1/3” SONY CCD IR COLOR DIGITAL CAMERA
2 buah 2 buah
4 buah 1 buah 12 buah 10 buah 3 buah 2 buah 1 buah 8 meter 4 buah 2 buah 1 botol 0,5 meter 2 buah
1x1m
1 inch Avian Afduner 6 inci 6 inci
95
Lampiran 2 (lanjutan) 29 30 31 32 33 34 35 36 37 38 39 40
clam dop pipa Pipa PVC clam kabel LAN kabel AC Tali tis Amplas Lem silicon Lem epoxy Selotip pipa lem pipa pvc
6 inci 6 inci 4 inci 3 inci
2 buah 2 buah ?? meter 2 buah 10 meter 10 meter 30 2 buah 5 5 1 buah 2 buah
Dextone Dextone Soligen Isarplas
96
Lampiran 3.
Datasheet mikrokontroler ATmega32A
97
Lampiran 4.
Manual DT-AVR Low Cost Micro System
98
Lampiran 5.
Manual CMPS10
CMPS10 - Tilt Compensated Compass Module
Introduction The CMPS10 module is a tilt compensated compass. Employing a 3-axis magnetometer and a 3-axis accelerometer and a powerful 16-bit processor, the CMPS10 has been designed to remove the errors caused by tilting of the PCB. The CMPS10 produces a result of 0-3599 representing 0-359.9 or 0 to 255. The output of the three sensors measuring x, y and z components of the magnetic field, together with the pitch and roll are used to calculate the bearing, each of these components are also made available in there raw form. The CMPS10 module requires a power supply at 3.3 - 5v and draws a nominal 25mA of current. There are three ways of getting the bearing from the module. A serial interface, an I2C interface or a PWM output. Mode selection For data on each mode please click the mode heading. Note the CMPS10 looks at the mode selection pins at power-up only. I2C mode Serial mode PWM mode
To enter the I2C mode of operation, leave the mode pin unconnected
To enter the Serial mode of operation, connect mode pin to ground
To enter PWM mode of operation, connect the Select PWM pin to ground
Data update frequency Updates of the tilt compensated heading occur at 75hz with the data is filtered by means of a 45 sample buffer, this means a complete refresh of the buffer is achieved every 640ms. Raw data from the magnetometer and accelerometer is available every 13.3ms. PCB Drilling Plan The following diagram shows the CMPS10 PCB mounting hole positions.
99
Lampiran 6.
Manual H48C
100
Lampiran 7.
Datashheet Sensor Suhu Dallaas D1820
101
Lampiran 8.
Manual EMS 2A Dual H-Bridge
102
Lampiran 8 (lanjutan)
103
Lampiran 9.
Manual EMS 5A H-Bridge
104
Lampiran 9 (lanjutan)
105
Lampiran 10. Diagram alir pembuatan program mikrokontroler pada mini ROV Mulai A B
B
Deklarasi konstanta
Deklarasi variabel
Inisialisasi pin H48C
Inisialisasi pin CMPS10
A
Deklarasi Fungsi
Inisialisasi mikrokontroler
C
C
I
Program utama
Input karakter dari kompute
D Ya
D
Input=’0’
Tidak
C
C
Motor Mati
Ya
Input=’1’
ROV Maju
Tidak E Ya
E
Input=’2’
Tidak
C
C
ROV Mundur
Input=’3’
Ya
ROV Belok Kiri
Tidak F Ya
F
Input=’4’
ROV belok kanan
Tidak
Input=’5’ Tidak G
106
C
Ya
C
ROV naik
Lampiran 10 (lanjutan) G
Ya
Input=’6’
Input=’a’
Tidak
H
C
ROV turun
Ya
Transmisi jalan
Tidak Input=‘s’
Transmisi mati
H
Ambil data H48C
Ambil data CMPS10 Heading, pitch, roll
Konversi data H48C
Pengaturan data keluaran: (axis x) (axis y) (axis z) (heading) (pitch) (roll)
Keluaran data melalui serial
I
107
C
Lampiran 11. Kode program mikrokontroler pada Code Vision AVR 2.05.0 #include <mega32a.h> #include <math.h> #include <delay.h> #include <stdlib.h> #include <stdio.h> // 1 Wire Bus functions #include <1wire.h> // 1 Wire Bus interface functions #asm .equ __w1_port=0x18;PORTB .equ __w1_bit=1 #endasm #include // DS1820 Temperature Sensor functions #define MAX_DS1820 8 unsigned char ds1820_devices; unsigned char ds1820_rom_codes[MAX_DS1820][9]; int temp; // I2C Bus functions #asm .equ __i2c_port=0x1B ;PORTA .equ __sda_bit=6 .equ __scl_bit=7 #endasm #include #define CLK PORTA.0 #define Di PINA.1 #define Do PORTA.1 #define CS PORTA.2 // definisi data in dan data out pada H48C #define DATA_IN 0b11111101 #define DATA_OUT 0b11111111 void clock() { CLK=0; delay_us(5); CLK=1; delay_us(5); }
108
Lampiran 11 (lanjutan) int read_HC(unsigned char axis) { int looping,hc; //start DDRA=DATA_OUT; CS=0; Do=1; //start bit clock(); Do=1; //SGL/DIFF bit clock(); //pilih channel for(looping=3;looping>0;looping--) { Do=(axis>>(looping-1)) & 0x01; clock(); } DDRA=DATA_IN; Do=1;//Pull High pin Di/o clock();// t sample bit clock();//null bit hc=0; for(looping=0;looping<12;looping++) { CLK=0; delay_us(1); hc<<=1; hc|=Di; CLK=1; delay_us(1); } CS=1; //end return hc; } float konversi(int vRef,int vAxis) { float f; if (vAxis>=vRef)f=(vAxis-vRef)*0.0022; if(vAxis
109
Lampiran 11 (lanjutan) float kemiringan(int pitch) { int p; if (pitch<=128) {p=pitch; } if(pitch>128) {p=(pitch-255); } return p; } # define kbhit()(rx_counter!=0) #ifndef RXB8 #define RXB8 #endif #ifndef TXB8 #define TXB8 0 #endif #ifndef UPE #define UPE 2 #endif #ifndef DOR #define DOR 3 #endif #ifndef FE #define FE 4 #endif #ifndef UDRE #define UDRE 5 #endif #ifndef RXC #define RXC 7 #endif #define FRAMING_ERROR (1<
110
Lampiran 11 (lanjutan) #define DATA_REGISTER_EMPTY (1<
111
Lampiran 11 (lanjutan) char getchar(void) { char data; while (rx_counter==0); data=rx_buffer[rx_rd_index++]; #if RX_BUFFER_SIZE != 256 if (rx_rd_index == RX_BUFFER_SIZE) rx_rd_index=0; #endif #asm("cli") --rx_counter; #asm("sei") return data; } #pragma used#endif // USART Transmitter buffer #define TX_BUFFER_SIZE 8 char tx_buffer[TX_BUFFER_SIZE]; #if TX_BUFFER_SIZE <= 256 unsigned char tx_wr_index,tx_rd_index,tx_counter; #else unsigned int tx_wr_index,tx_rd_index,tx_counter; #endif // USART Transmitter interrupt service routine interrupt [USART_TXC] void usart_tx_isr(void) { if (tx_counter) { --tx_counter; UDR=tx_buffer[tx_rd_index++]; #if TX_BUFFER_SIZE != 256 if (tx_rd_index == TX_BUFFER_SIZE) tx_rd_index=0; #endif } } #ifndef _DEBUG_TERMINAL_IO_ // Write a character to the USART Transmitter buffer #define _ALTERNATE_PUTCHAR_ #pragma used+
112
Lampiran 11 (lanjutan) void putchar(char c) { while (tx_counter == TX_BUFFER_SIZE); #asm("cli") if (tx_counter || ((UCSRA & DATA_REGISTER_EMPTY)==0)) { tx_buffer[tx_wr_index++]=c; #if TX_BUFFER_SIZE != 256 if (tx_wr_index == TX_BUFFER_SIZE) tx_wr_index=0; #endif ++tx_counter; } else UDR=c; #asm("sei") } #pragma used#endif // Standard Input/Output functions unsigned char cmps10(char reg) { int nilai; i2c_start(); i2c_write(0xC0); i2c_write(reg); i2c_start(); i2c_write(0xc1); nilai=i2c_read(0); i2c_stop(); return nilai; } // Declare your global variables here unsigned char transmisi,tele; void main(void) { // Declare your local variables here int vRef,vX,vY,vZ,arah,pitch2,p1,roll; float ax,ay,az; CLK=1; PORTA=0x00; DDRA=0x00;
113
Lampiran 11 (lanjutan) PORTB=0x00; DDRB=0xF0; PORTC=0x00; DDRC=0xff; PORTD=0x00; DDRD=0x00; TCCR0=0x00; TCNT0=0x00; OCR0=0x00; TCCR1A=0x00; TCCR1B=0x00; TCNT1H=0x00; TCNT1L=0x00; ICR1H=0x00; ICR1L=0x00; OCR1AH=0x00; OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00; ASSR=0x00; TCCR2=0x00; TCNT2=0x00; OCR2=0x00; MCUCR=0x00; MCUCSR=0x00; TIMSK=0x00; // USART initialization // Communication Parameters: 8 Data, 1 Stop, No Parity // USART Receiver: On // USART Transmitter: On // USART Mode: Asynchronous // USART Baud Rate: 9600 UCSRA=0x00; UCSRB=0xD8; UCSRC=0x06; UBRRH=0x00; UBRRL=0x19;
114
Lampiran 11 (lanjutan) // I2C Bus initialization i2c_init(); //1-wire initialization w1_init(); ds1820_devices=w1_search(0xf0,ds1820_rom_codes); // Global enable interrupts #asm("sei") transmisi=0; while (1) { if (kbhit()) { #asm("cli"); tele=getchar(); #asm("sei"); delay_ms(10); if(tele=='0') //BERHENTI { #asm("cli"); PORTB=0X00; PORTC=0X00; #asm("sei"); } if(tele=='1') //maju { #asm("cli"); PORTC=0X00; PORTB.4=1; PORTB.5=0; PORTB.6=1; PORTB.7=0; #asm("sei"); } if(tele=='2') //MUNDUR { #asm("cli"); PORTC=0X00; PORTB.4=0; PORTB.5=1; PORTB.6=0; PORTB.7=1; #asm("sei"); }
115
Lampiran 11 (lanjutan) if(tele=='3') //KIRI { #asm("cli"); PORTC=0X00; PORTB=0X10; #asm("sei"); } if(tele=='4') //kanan { #asm("cli"); PORTC=0X00; PORTB=0X40; #asm("sei"); } if(tele=='5') //NAIK { #asm("cli"); PORTB=0X00; PORTC=0X4d; #asm("sei"); } if(tele=='6') //TURUN { #asm("cli"); PORTB=0X00; PORTC=0X8e; #asm("sei"); } if (tele=='7') //putar kanan { #asm("cli"); PORTB=0X00; PORTC=0X0D; #asm("sei"); } if (tele=='8') //putar kiri { #asm("cli"); PORTB=0X00; PORTC=0X4c; #asm("sei"); }
116
Lampiran 11 (lanjutan) if(tele=='a') { #asm("cli"); transmisi=1; #asm("sei"); } if(tele=='s') { #asm ("cli"); transmisi=0; putchar(13); putchar(10); #asm("sei"); } } if(transmisi==1) { #asm("cli"); arah=cmps10(2)<<8; arah+=cmps10(3); p1=cmps10(4); roll=cmps10(5); pitch2=kemiringan(p1); vX=read_HC(0); vY=read_HC(1); vZ=read_HC(2); vRef=read_HC(3); ax=konversi(vRef,vX); ay=konversi(vRef,vY); az=konversi(vRef,vZ); temp=ds1820_temperature_10(&ds1820_rom_codes[0][0]); printf("%4.2f", ax); putchar(0x20); printf("%4.2f", ay); putchar(0x20); printf("%4.2f", az); putchar(0x20); printf("%u.%u ", arah/10, arah%10); putchar(0x20); printf("%5.2f ", pitch2*1.41176470588235); putchar(0x20);
117
Lampiran 11 (lanjutan) printf("%5.2f ",roll*1.41176470588235); putchar(0x20); printf("%-i.%-u\n\r",temp/100,abs(temp%10)); putchar(13); putchar(10); delay_ms(1000); #asm("sei"); }; } }
118
Lampiran 12. Listing program GUI pada Delphi 7 unit TES; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls, ComCtrls, mmSystem, SDL_onoffbut, LPComponent, SLComponentCollection, VLCommonDisplay, VLImageDisplay, VLCapture, ILGlassPanel, LPDrawLayers, LPTransparentControl, ULBasicControl, ILSegmentIndicator, ILSegmentClock, SLScope, ILAnalogInstrument, ILAngularGauge, ILLinearGauge, VLCommonLogger, VLAVILogger, ILLed, ILMultiLed, VLAVIPlayer, VLDSVideoOut, VLDSImageDisplay, VLDSVideoLogger, VLDSCapture, TeEngine, Series, TeeProcs, Chart, VLDSVideoPlayer, _GClass, AbCompas, TeeGauges, SDL_Rot3D, AbBevel, AbFlexMeter, CPort,DSCaptureDevice, AbVCInd, SDL_sevenseg, SDL_RasterLab, AbOpHour, XPMan, AbSwitch, AbDBCtrls; const ver='2, By Hollanda Arief Kusuma'; type TMMJoyStick Msg Buttons XPos YPos Result end; type TForm1 abphrcntr1 abvcnd1 btn2 btn3 btn5 btn6 bvl1 bvl2 cmprt1 dlgSave1 dlgSave2 dlgSave3 edt1 edt2 edt3
= packed record : Cardinal; // The message ID : Longint; // The wParam : word; // The lParam : word; : Longint;
= class(TForm) : TAbOpHourCounter; : TAbVCInd; : TButton; : TButton; : TButton; : TButton; : TBevel; : TBevel; : TComPort; : TSaveDialog; : TSaveDialog; : TSaveDialog; : TEdit; : TEdit; : TEdit;
119
Lampiran 12 (lanjutan) edt4 edt5 edt6 edt7 edt8 edt9 edt10 edt11 edt12 edt13 edt14 edt15 edt16 edt17 grp1 grp2 ilsgmntclck1 img1 img2 lbl1 lbl2 lbl3 lbl4 lbl5 lbl6 lbl8 lbl9 lblXCoord lblYCoord mmo1 mmo2 onfbt1 onfbt2 onfbt4 pnl1 pnl2 pnl3 rstrlb1 rstrlb2 rstrlb3 rt3d1 trckbr1 trckbr2 vldscptr1 vldscptr2 vlvlgr1
: TEdit; : TEdit; : TEdit; : TEdit; : TEdit; : TEdit; : TEdit; : TEdit; : TEdit; : TEdit; : TEdit; : TEdit; : TEdit; : TEdit; : TGroupBox; : TGroupBox; : TILSegmentClock; : TVLDSImageDisplay; : TVLDSImageDisplay; : TLabel; : TLabel; : TLabel; : TLabel; : TLabel; : TLabel; : TLabel; : TLabel; : TLabel; : TLabel; : TMemo; : TMemo; : TOnOffBut; : TOnOffBut; : TOnOffBut; : TPanel; : TPanel; : TPanel; : TRasterLab; : TRasterLab; : TRasterLab; : TRot3D; : TTrackBar; : TTrackBar; : TVLDSCapture; : TVLDSCapture; : TVLAVILogger;
120
Lampiran 12 (lanjutan) vlvlgr2 xpmnfst1 rstrlb4 lbl7 edt18 edt19 pnl4 btn1 btn4 abdbrckrswtch1 abdbrckrswtch2
: TVLAVILogger; : TXPManifest; : TRasterLab; : TLabel; : TEdit; : TEdit; : TPanel; : TButton; : TButton; : TAbDBRockerSwitch; : TAbDBRockerSwitch;
procedure FormCreate(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure btn2Click(Sender: TObject); procedure btn3Click(Sender: TObject); procedure btn5Click(Sender: TObject); procedure btn6Click(Sender: TObject); procedure onfbt1Click(Sender: TObject); procedure onfbt2Click(Sender: TObject); procedure onfbt4Click(Sender: TObject); procedure mmo1Change(Sender: TObject); procedure mmo2Change(Sender: TObject); procedure cmprt1RxChar(Sender: TObject; Count: Integer); procedure MMJOY1BUTTONDOWN (var LocMessage: TMMJoyStick); message MM_JOY1BUTTONDOWN; procedure MMJOY1MOVE (var LocMessage: TMMJoyStick); message MM_JOY1MOVE; procedure btn1Click(Sender: TObject); procedure btn4Click(Sender: TObject); procedure abdbrckrswtch1Click(Sender: TObject); procedure abdbrckrswtch2Click(Sender: TObject); private { Private declarations } public { Public declarations } myjoy: tjoyinfo; end; var Form1: TForm1; str:string;
121
Lampiran 12 (lanjutan) implementation procedure Split //deklarasi prosedur split yg akan digunakan (const Delimiter: Char; Input: string; const Strings: TStrings) ; begin Assert(Assigned(Strings)) ; Strings.Clear; Strings.Delimiter := Delimiter; Strings.DelimitedText := Input; end; {$R *.dfm} {$R+} procedure TForm1.FormCreate(Sender: TObject); var myJoyCaps: TJoyCaps; const PollingFreq=50; (*PollingFreq of 100 (rec'd by original poster) sets Joystick interface to transmit messages every 100ms.*) begin application.title:='RJ45';(*Label on taskbar button*) caption:='RJ45 ver' +ver; joyGetDevCaps(joystickid1,@myJoyCaps, sizeof(myJoyCaps)); // for test joySetCapture(self.Handle, joystickid1, PollingFreq, true); (*See const decl for function of Polling Freq*) end;(*Form Create*) procedure TForm1.MMJOY1BUTTONDOWN (var LocMessage: TMMJoyStick); begin if ((LocMessage.Buttons and joy_button1)=joy_button1) then begin cmprt1.WriteStr('5'); end; if ((LocMessage.Buttons and joy_button2)=joy_button2) then begin cmprt1.WriteStr('0'); end; if ((LocMessage.Buttons and joy_button3)=joy_button3) then begin cmprt1.WriteStr('6'); end; if ((LocMessage.Buttons and joy_button4)=joy_button4) then begin cmprt1.WriteStr('0'); end;
122
Lampiran 12 (lanjutan) if ((LocMessage.Buttons and joy_button5)=joy_button5) then begin cmprt1.WriteStr('0'); end; if ((LocMessage.Buttons and joy_button6)=joy_button6) then begin cmprt1.WriteStr('0'); end; if ((LocMessage.Buttons and joy_button7)=joy_button7) then begin cmprt1.WriteStr('0'); end; if ((LocMessage.Buttons and joy_button8)=joy_button8) then begin cmprt1.WriteStr('0'); end; end; procedure TForm1.MMJOY1MOVE (var LocMessage: TMMJoyStick); var x,y:Integer; begin trckbr1.position := LocMessage.ypos; trckbr2.position := LocMessage.xpos; lblXCoord.caption:= IntToStr(LocMessage.ypos); // so you can see lblYCoord.caption:= IntToStr(LocMessage.xpos); // what is happening x:=strtoint( lblXCoord.caption); y:=strtoint(lblYCoord.Caption); if x=0 then begin cmprt1.WriteStr('1'); end; if x=65535 then begin cmprt1.WriteStr('2'); end; if y=0 then begin cmprt1.WriteStr('3'); end; if y=65535 then begin cmprt1.WriteStr('4'); end; end;
123
Lampiran 12 (lanjutan) procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); begin joyReleaseCapture(joystickid1); end; procedure TForm1.onfbt2Click(Sender: TObject); begin if cmprt1.Connected then begin cmprt1.WriteStr('s'); cmprt1.Close; onfbt2.RightText:='off'; abphrcntr1.count:=False; end else begin cmprt1.Open; onfbt2.RightText:='on'; cmprt1.WriteStr('a'); abphrcntr1.Count:=True; end; end; procedure TForm1.btn3Click(Sender: TObject); begin if (dlgSave1.FileName <> '') or dlgSave1.Execute then mmo1.Lines.SaveToFile(dlgSave1.FileName) end; procedure TForm1.mmo1Change(Sender: TObject); var A: TStringList; str1,str2,str3,str4,str5,str6,str7: string; brs:Integer; begin str1:=' '; str2:=' '; str3:=' '; str4:=' '; str5:=' '; str6:=' '; str7:=' '; brs:=mmo1.Lines.Count-1; A := TStringList.Create; try Split(' ', mmo1.Lines.Strings[brs], A) ;
124
Lampiran 12 (lanjutan) if A.count-1>5 then begin str1:= (A[0]); str2:= (A[1]); str3:= (A[2]); str4:= (A[3]); str5:= (A[4]); str6:=(A[5]); str7:=(A[6]); edt1.Text:=str1; edt2.Text:=str2; edt3.Text:=str3; edt4.Text:=str4; edt5.Text:=str5; edt6.Text:=str6; edt18.text:=str7; end; finally A.Free; end; mmo2.text:=str; end;
//fix
procedure TForm1.onfbt4Click(Sender: TObject); begin if onfbt4.OnOff then begin vlvlgr1.Enabled:=True; onfbt4.RightText:='Stop'; end else begin vlvlgr1.Enabled:=False; onfbt4.RightText:='Rekam'; end end; procedure TForm1.mmo2Change(Sender: TObject); begin edt7.text:=edt1.Text; edt8.text:=edt2.Text; edt9.text:=edt3.Text; edt10.text:=edt4.Text; edt11.text:=edt5.Text; edt12.Text:=edt6.Text; edt19.Text:=edt18.Text;
125
Lampiran 12 (lanjutan) rstrlb1.Text:=edt7.Text; rstrlb2.Text:=edt8.Text; rstrlb3.Text:=edt9.Text; rstrlb4.Text:=edt19.Text; abvcnd1.Course:=StrToFloat(edt10.Text); abvcnd1.Pitch:=StrToFloat(edt11.Text); abvcnd1.Roll:=StrToFloat(edt12.text); rt3d1.ViewAngleX:=-(StrToFloat(edt12.Text)); rt3d1.ViewAngleY:=-(StrToFloat(edt10.text)); rt3d1.ViewAngleZ:=-(StrToFloat(edt11.Text)); end ; procedure TForm1.btn1Click(Sender: TObject); begin vldscptr1.VideoCaptureDevice.ShowDeviceSelctDialog(); vldscptr1.VideoSources.ShowDialog(); end; procedure TForm1.btn5Click(Sender: TObject); begin if dlgSave2.Execute then begin vlvlgr1.FileName:=dlgSave2.FileName; edt16.Text:=dlgSave2.FileName; end; end; procedure TForm1.btn6Click(Sender: TObject); begin if dlgSave3.Execute then begin vlvlgr2.FileName:=dlgSave3.FileName; edt17.Text:=dlgSave3.FileName; end; end; procedure TForm1.onfbt1Click(Sender: TObject); begin if onfbt1.OnOff then begin vlvlgr2.Enabled:=True; onfbt1.RightText:='Stop'; end else begin vlvlgr2.Enabled:=False;
126
Lampiran 12 (lanjutan) onfbt1.RightText:='Start'; end end; procedure TForm1.btn4Click(Sender: TObject); begin vldscptr2.VideoCaptureDevice.ShowDeviceSelctDialog(); vldscptr2.VideoSources.ShowDialog(); end; procedure TForm1.abdbrckrswtch1Click(Sender: TObject); begin if abdbrckrswtch1.Checked then begin vldscptr1.Enabled:=True; end else begin vldscptr1.Enabled:=False; end end; procedure TForm1.abdbrckrswtch2Click(Sender: TObject); begin if abdbrckrswtch2.Checked then begin vldscptr2.Enabled:=True; end else begin vldscptr2.Enabled:=False; end end; procedure TForm1.cmprt1RxChar(Sender: TObject; Count: Integer); begin cmprt1.ReadStr(str,count); mmo1.text:=mmo1.Text+str; mmo1.Perform(WM_VSCROLL,SB_BOTTOM,SB_THUMBTRACK); end; procedure TForm1.btn2Click(Sender: TObject); begin cmprt1.ShowSetupDialog(); end; end.
127
Lampiran 13. Data pengujian CMPS10 Data CMPS10 tanpa magnetic shielding Arah CMPS10 GALAT 0 19,4 19,4±0,2 90 90,1 0,1±0,06 180 174,1 5,9±0,12 270 250,6 19,4±0,12 Data CMP10 dengan magnetic shielding Arah CMPS10 GALAT 0 0,05 0,05±0,25 90 90,78 0,78±0,19 180 180,25 0,25±0,17 270 270,29 0,29±0,17 Data CMPS10 setelah dimasukkan ke rangka Arah CMPS10 GALAT 0 0,13 0,13±0,43 90 97,48 7,48±0,17 180 183,04 3,04±0,46 270 298,81 28,81±0,19
Pitch 20 15 10 5 0 -5 -10 -15 -20
Data sudut pitch CMPS10 CMPS10 GALAT 25,61 5,61±0,51 19,76 4,76±0 11,47 1,47±0,49 5,65 0,65±0 0 0±0 -16,66 11,66±0,74 -24 14±0 -31,15 16,15±1,96 -24,18 4,18±0,48
Roll 20 15 10 7 0 -5 -10 -15 -20
Data sudut roll CMPS10 CMPS10 25,26 15,53 10,28 7,06 0 -5,48 -11,63 -22,59 -21,18
128
GALAT 5,26±1,14 0,53±0 0,28±0,65 0,06±0 0 0,48±0,47 1,63±0,62 7,59±0 1,18±0
DAFTAR RIWAYAT HIDUP Penulis dilahirkan di Ambon, Maluku, 1 April 1989 dari Ayah Prof. Dr. Dwi Eny Djoko Setyono dan Ibu Kusmariatin. Penulis merupakan anak kedua dari tiga bersaudara. Penulis menyelesaikan pendidikan SMA pada tahun 2007 di SMA Negeri 1 Pacitan Jawa Timur. Pada tahun 2007 pula penulis diterima sebagai mahasiswa Institut Pertanian Bogor melalui jalur USMI (Undangan Seleksi Mahasiswa IPB) di Departemen Ilmu dan Teknologi Kelautan, Fakultas Perikanan dan Ilmu Kelautan. Selama menjadi mahasiswa penulis pernah menjadi Asisten Mata Kuliah Iktiologi Tahun Ajaran 2009/2010, Oseanografi Umum Tahun Ajaran 2009/2010 dan 2010/2011, Metode Observasi Bawah Air Tahun Ajaran 2009/2010, Asisten Mata Kuliah Dasar-Dasar Instrumentasi Kelautan Tahun Ajaran 2009/2010, 2010/2011, dan 2011/2012, Instrumentasi Kelautan Tahun Ajaran 2010/2011 dan 2011/2012, dan Dasar-Dasar Penginderaan Jauh Kelautan Tahun Ajaran 2010/2011. Penulis juga aktif sebagai Pengurus Organisasi Mahasiswa Daerah (OMDA) Keluarga Mahasiswa Pacitan (GAMAPA) Periode 2007-2008, Ketua OMDA GAMAPA Periode 2008-2009, Pengurus Himpunan Mahasiswa Ilmu dan Teknologi Kelautan (HIMITEKA) Periode 2008-2009 dan 2009-2010, Pengurus Marine Instrument and Telemetry (MIT) CLUB Periode 2009-2010, Presiden MIT CLUB Periode 2010-2011, Dewan Penasehat HIMITEKA Periode 20102011, Tim Biru Muda dalam kompetisi 7th Hongkong Underwater Robotic Challenge 2012, Tim Pendukung Komurindo IPB 2011 dan 2012. Penulis juga berpartisipasi dalam kegiatan IPB Goes to School tahun 2008 dan Kepanitiaan Masa Perkenalan Fakultas sebagai Pendamping Kelompok (PAK) tahun 2011. Penulis menyelesaikan studi di Fakultas Perikanan dan Ilmu Kelautan IPB dengan melakukan penelitian di Bagian Instrumentasi Kelautan Departemen ITK yang berjudul :” Rancang Bangun Mini ROV (Remotely Operated Vehicle) untuk Eksplorasi Bawah Air”. 129