BAB 3 PERANCANGAN SISTEM

advertisement
BAB 3
PERANCANGAN SISTEM
3.1 Analisa Permasalahan
Pendapatan tangkapan ikan tiap nelayan dipengaruhi oleh ketersediaan ikan itu
sendiri. Dimana ketersediaan ikan di laut dipengaruhi oleh suhu, salinitas, arus
permukaan, kedalaman perairan, kondisi laut dan cuaca. Pada beberapa daerah, nelayan
seringkali tidak memanfaatkan hasil potensi laut semaksimal mungkin (Laporan Lipi,
2003). Beberapa daerah yang lain saat ini jumlah tangkapan nelayan terus-menerus
berkurang, seperti yang terjadi di Kepulauan Seribu (Kompas M edia, 2008).
Tabel 3.1. Perkembangan Nilai Ikan Hasil Tangkapan di Perairan Umum Daerah
Sumatera Selatan Tahun 2003-2007
Selain masalah ketersediaan ikan, nelayan seringkali terhadang masalah penentuan
jalur mana yang harus ditempuh, yang menyebabkan kebutuhan bahan bakar sangat
penting. Kenaikan harga bahan bakar (Kompas M edia, 2008) memberikan dampak bagi
para nelayan. Kenaikan ini menyebabkan nelayan harus mengeluarkan dana yang lebih
besar untuk bahan bakar. Padahal dana yang harus dikeluarkan untuk melaut sudah
82
83
cukup besar. (Firdaus, 2008). Seringkali setelah nelayan pulang melaut pun harus
menghadapi kenyataan pulang dengan tangan hampa.
Sejak tahun 2004, Lembaga Penerbangan dan Antariksa Nasional (LAPAN)
dengan menggunakan fish finder dan teknologi navigasi GPS, nelayan bisa memetakan
Zona Potensi Penangkapan Ikan (ZPPI). Dengan pemetaan ini, nelayan bisa mengetahui
daerah mana yang berpotensi untuk menangkap ikan.
Selain itu, sekitar tahun 2009, dibuatlah Peta Prakiraan Daerah Penangkapan Ikan
(PPDPI) oleh M ahasiswa Universitas Diponogoro, Paret Agung Sanjaka. Seperti halnya
ZPPI, alat ini menggunakan fish finder dan teknologi navigasi GPS. PPDPI ini dibuat
dengan harapan dapat mengubah paradigma “berburu” untuk menangkap ikan menjadi
“mengambil” dengan bantuan teknologi satelit.
ZPPI dan PPDPI dapat membantu nelayan untuk mencari lokasi titik ikan, tetapi
nelayan masih menggunakan cara lama untuk menentukan arah tujuan ke titik lokasi
ikan. Dalam arti, hanya mengandalkan arah mata angin yang ditunjukan kompas saja,
sehingga tetap ada kemungkinan membutuhkan waktu melaut yang lama.
Untuk membantu mengatasi masalah yang ada, maka dibutuhkan alat yang dapat
mengirimkan
informasi
titik
ikan
langsung ke
Pusat
Informasi,
sekaligus
menampilkannya ke nelayan. Dengan menggunakan teknologi GPS dan sistem
komunikasi radio frekuensi (RF) serta pengoperasian fish finder, maka terciptalah
Sistem Terpusat Penentuan Lokasi Keberadaan Ikan dan Penuntun Kapal Nelayan pada
tahun 2007 oleh Antoni Susanto dkk. Dengan sistem ini, nelayan dapat langsung menuju
titik ikan terdekat dengan mengikuti arah yang ditunjukkan sistem. Alat atau sistem ini,
terbukti dapat mengirimkan informasi lokasi keberadaan ikan secara lengkap,
menentukan titik ikan terdekat, dan menuntun kapal nelayan menuju titik ikan tersebut.
84
Sistem ini hanya dapat berkomunikasi pada 0 km hingga 1.2 km saja, karena masih
menggunakan RF.
Dengan kata lain, pada saat ini dibutuhkan alat yang bisa memberitahukan dimana
lokasi ikan yang selalu update, sekaligus bisa memberikan arahan (menuntun) nelayan
ke lokasi ikan tersebut. Dimana alat ini harus bisa berkomunikasi pada jarak yang bebas
(tidak ditentukan), sehingga dapat mencari ikan di tengah laut sekalipun.
Secara garis besar sistem yang dibuat untuk membantu masalah di atas:
•
M embangun sebuah perangkat bergerak yang bisa berfungsi ganda. Fungsi yang
pertama untuk mengirimkan lokasi keberadaan ikan ke pusat (Terminal) bila
ditekan tombol tertentu pada mode mobile guidance. Selain itu, akan dilakukan
proses penuntunan nelayan ke lokasi ikan dengan memberikan informasi arah yang
dituju. Fungsi yang kedua untuk mencari dimana lokasi ikan berada, yang
kemudian dijadikan titik ikan untuk dikirimkan ke terminal. Terminal akan terus
melakukan monitoring terhadap mode mobile scanner ini, agar selalu bisa mengupdate data titik-titik ikan. Kedua fungsi ini bisa dipilih sesuai dengan kebutuhan.
Ketika perangkat ini dinyalakan, maka akan masuk mode navigasi kompas. Selama
penggunaan mode navigasi kompas bisa dipanggil kembali dengan menekan
tombol fungsinya.
•
M embangun perangkat lunak yang digunakan pada pusat Terminal. Di sini
Terminal akan menerima dan mengolah data titik ikan yang diterima dari mobile
scanner, yang kemudian dikirimkan ke mobile guidance
yang memintanya.
Sekaligus menampilkan atau memvisualisasikan lokasi kapal dan lokasi ikan
secara real time.
85
Untuk membangun alat ini maka peneliti memilih sejumlah komponen yang
diharapkan mampu berintegrasi dan melakukan semua fungsi yang diinginkan.
Komponen-komponen tersebut adalah sebagai berikut
a. NB2-DSK01
Peneliti memilih NB2-DSK01 karena merupakan sebuah modul yang
mempermudah perancangan FPGA. Penulis juga menggunakan FPGA dengan
harapan di kemudian hari, sistem dapat dimodifikasi menjadi lebih baik dengan
lebih mudah.
b. GM 862-GPS
Alat yang dirancang memerlukan komunikasi GSM dan memerlukan
kemampuan untuk menangkap sinyal GPS. GM 862-GPS merupakan satu
modul yang meninteregasikan komunikasi GSM dan kemampuan GPS dalam
satu modul.
c. HM C6343
Kompas diperlukan dalam melakukan navigasi dan perhitungan arah yang
harus dituju oleh nelayan. Penulis memilih HM C6343 karena memiliki
kemampuan Tilt Compensation untuk mengolah kemiringan kompas agar tetap
menunjukan arah yang benar sehingga baik untuk digunakan di laut
d. u-OLED128
Penulis memilih u-OLED128 sebagai display komponen karena daya yang
diperlukan u-OLED lebih kecil dari LCD biasa dan kemampuan u-OLED128
untuk menampilkan bentuk grafis.
86
3.2. Perancangan Perangkat Keras
Gambar 3.1. Diagram blok sistem
Diagram blok sistem di atas, terbagi atas dua buah bagian yang dihubungkan
dengan modul GPS/ GSM . Bagian pertama dihubungkan dengan PC atau telepon selular,
dimana sistem ini digunakan sebagai terminal penghubung dan pengawas antara mobile
guidance atau mobile scanner. Bagian kedua merupakan blok sistem dari mobile
guidance atau mobile scanner. Sistem ini terdiri dari Altium NanoBoard NB2-DSK01,
modul GPS/ GSM (GM 862-GPS), kompas digital (HM C6343), modul LCD (µOled128) dan tombol joystick (atas, bawah, kiri, kanan, dan tekan).
Altium NanoBoard ini berfungsi sebagai sistem kontrol utama yang akan mengatur
dan mengolah data yang didapat dari modul GPS/ GSM dan kompas digital. Pada
dasarnya modul ini merupakan development board yang menggunakan FPGA Spartan 3
sebagai chip prosesor utamanya. Dimana FPGA Spartan 3 ini menggunakan tipe
87
prosesor TSK3000A. Sistem kontrol ini akan menerima input dari modul GPS/ GSM ,
kompas digital dan beberapa tombol (tombol joystick) untuk memilih mode (mobile
scanner atau mobile guidance), kemudian akan menampilkan tampilan sesuai dengan
mode yang dipilih dan data yang diterima dari modul GPS/ G SM dan kompas digital.
Tampilan tersebut akan ditampilkan pada modul LCD berupa jarak dan arah.
M odul GPS/ GSM menggunakan modul GM 862-GPS yang diproduksi oleh Telit.
M odul ini mengintegrasikan GPS, GSM dan GPRS (tidak dipakai pada penelitian ini).
Pada terminal, sistem akan bisa mengetahui keberadaan mobile guidance atau mobile
scanner, sekaligus lokasi wilayah tangkap ikan yang didapatkan mobile scanner, dengan
menggunakan fasilitas GPS/ G SM . Pada mobile scanner atau mobile guidance, sistem
akan memberitahukan lokasinya, sekaligus menerima data lokasi ikan dengan fasilitas
GSM . M odul GM862-GPS dan PC/ telepon selular akan berkomunikasi dengan
komunikasi serial melalui kabel usb, sedangkan modul GM 862-GPS dan NanoBoard
NB2-DSK01 akan berkomunikasi dengan komunikasi serial UART.
Kompas yang digunakan merupakan modul kompas digital HM C6343 (akurasi 20
dan resolusi 0,10) yang melakukan interface dengan I2C. Dengan modul ini, akan
didapatkan data arah mata angin selayaknya kompas analog biasa. Data yang dikirimkan
berupa byte yang akan menunjukkan pada posisi mana sistem berada (Timur, Selatan,
Barat, Utara ataupun diantara ke empat arah mata angin tersebut).
M odul LCD menggunakan µ-Oled128 buatan 4D System. M odul LCD ini
berfungsi untuk menampilkan berbagai informasi, antara lain: posisi di bumi
berdasarkan arah mata angin (kompas), posisi target yang ingin dituju (baik lokasi
wilayah tangkap ikan dan kembali ke tempat awal) dan informasi-informasi yang
88
dibutuhkan selama berlayar. Informasi-informasi ini ada yang ditampilkan secara
langsung dan ada pula yang bisa dipilih dengan menekan tombol tertentu.
Tombol pada sistem ini berupa joystick dengan pilihan ke atas, bawah, kiri, kanan
dan ditekan. Pada kelima pilihan tombol ini, bisa dipilih mode yang ingin digunakan dan
informasi yang ingin ditampilkan. Pemilihan menu bisa dilakukan dengan cara memilih
atau menggerakkan joystick ke atas, bawah, kiri, kanan maupun ditekan. Dimana arah ke
atas untuk memilih pilihan ke satu, ke kiri untuk pilihan ke dua, ke bawah untuk pilihan
ke tiga, dan ke kanan untuk pilihan ke empat. Selain itu, untuk beberapa menu, terdapat
pilihan ke lima yang bisa dipilih dengan menekan joystick.
3.2.1. Altium NanoBoard NB2-DSK01
FPGA yang dipakai pada Altium NanoBoard NB2-DSK01 menggunakan
tipe prosesor TSK3000A. Tipe prosesor TSK3000A bisa menghubungkan
beberapa peripheral sekaligus dengan cara yang lebih mudah. Dalam hal ini,
digunakan tiga buah peripheral. Penghubungan ketiga peripheral tersebut
menggunakan wishbone interconnect. Setiap peripheral pun menggunakan
wishbone tertentu yang sesuai dengan cara mengkomunikannya agar dapat
dihubungkan dengan wishbone interconnect.
Seperti pada modul µ-Oled128 dan modul GM 862-GPS menggunakan
wishbone UART karena untuk mengakses GM 862-GPS tersebut menggunakan
komunikasi serial. Wishbone UART tersebut akan dihubungkan ke peripheral
RS232.
Pada HM C6343 menggunakan wishbone I2C karena untuk mengakses
HM C6343 tersebut menggunakan komunikasi I2C. Wishbone I2C tersebut akan
89
dihubungkan ke peripheral I2C dimana akan terdapat pin SDA dan SCL telah
dihubungkan pada user header A pada NanoBoard NB2-DSK01 sehingga dapat
langsung dihubungkan pada HM C6343.
Gambar 3.2. Sistem OpenBus yang digunakan pada TSK3000A
Wishbone interconnect dengan menggunakan prosesor TSK3000A ini
dibuat dengan sistem OpenBus. Dengan menggunakan Altium Designer Summer 9,
sistem OpenBus ini bisa dibuat. Pertama-tama di tentukan terlebih dahulu tipe
prosesor apa yang digunakan, kemudian menentukan memori dan peripheral apa
saja yang akan dipakai. Dalam hal ini, penulis menggunakan prosesor TSK3000A,
sedangkan untuk peripheral akan dipakai WB_PRTIO_1 (port input output),
WB_UART8_V2_1 (port komunikasi serial UART yang pertama), WB_I2CM _1
(port komunikasi I2C), dan WB_UART8_V2_2 (port komunikasi serial UART
yang kedua). Peripheral-peripheral ini akan disambungkan sesuai kebutuhan,
90
sehingga menghasilkan desain seperti pada Gambar 3.2. Dari rangkaian OpenBus
tersebut, kemudian dibuat menjadi sebuah sheet symbol yang sederhana untuk
dihubungkan dengan komponen-komponen yang bersangkutan. Bentuknya berupa
kotak yang terdapat pin-pin sesuai dengan peripheral yang digunakan. Sheet
symbol dari sistem OpenBus ditunjukkan pada gambar kotak berwana hijau yang
di tunjukkan panah pada Gambar 3.3.
91
Gambar 3.3. Skematik rangkaian TSK3000A
92
Pada rangkaian yang ditunjukkan Gambar 3.3, menunjukkan prosesor
TSK3000A dengan instrumen dan peripheral-peripheral yang digunakan. Dimana
TSK3000A menggunakan instrumen clock (CLK_I) dan reset (RST_I), sedangkan
peripheral yang digunakan sesuai dengan yang dirancang pada sistem OpenBus,
kecuali WB_M EM _CTRL_SRAM .
Pin WB_M EM _CTRL_SRAM ini dihubungkan langsung ke memori yang
terdapat pada NanoBoard. Pin ini dipakai untuk menyimpan data-data yang
diterima oleh NanoBoard NB2-DSK01 tersebut. Dimana ukuran memori yang
dipakai bisa di atur sesuai keinginan, yaitu antara 8KB sampai 1M B. Dalam
prosesor TSK3000A ini, data disimpan dalam satu word. Satu word ini terdiri dari
32 bit. Besar memori yang di pilih 16KB, sehingga jumlah word yang bisa
disimpan adalah 4K (32bit=4byte, 4K x 4byte=16KB). Pengaturan besar memori
ini, dilakukan ketika melakukan konfigurasi prosesor TSK3000A, di bagian
internal processor memory. Pada alat ini digunakan 32KB [8K x 32 bit words].
Komunikasi UART pada NanoBoard ini ada dua buah, untuk itu digunakan
WB_UART8_V2_1
dan
WB_UART8_V2_2.
Dimana WB_UART_8_V2_2
dihubungkan ke RS232 yang terdapat pada NanoBoard, yang kemudian
dihubungkan ke GM 862-GPS. WB_UART8_V2_1 dihubungkan ke pin user
header A dan kemudian dihubungkan dengan µ-Oled128. Dimana user header pin
3, 5, 7 dan 9 digunakan sebagai pin RX, TX, CTS dan RTS. Untuk komunikasi
UART ini (baik untuk berkomunikasi dengan GM 862-GPS maupun µ-Oled128),
format yang digunakan adalah 8n1. Yang berarti 8 data, tidak terdapat parity, dan
bit terakhir menandakan stop bit.
93
Selain WB_UART8_V2_1, WB_I2CM juga dihubungkan ke pin user
header A. Pin ini digunakan sebagai komunikasi serial yang akan melakukan
komunikasi dengan HM C6343. Untuk itu WB_I2CM ini dihubungkan dengan
rangkaian I2C yang menghubungkan pin data (SDA) dan clock (SCL). Dimana
user header A pin 17 (HA17) sebagai pin SDA dan user header A pin 19 (HA19)
sebagai pin SCL.
Untuk mengetahui ada tidaknya eror, maka digunakan LED sebagai
indikatornya. Dimana LED ini terhubung ke pin WB_PRTIO. LED yang ada pada
NanoBoard ada 8 buah, yang menyatakan 8 bit atau 0xFF. Ketika inisialisasi
UART1 (yang terhubung ke µ-Oled128) mengalami kegagalan, maka LED akan
menyala 0x01, sedangkan jika berhasil akan menyala 0x0F. Ketika inisialisasi
UART2 (yang terhubung ke GM 862-GPS) mengalami kegagalan, maka LED akan
menyala 0x02, sedangkan jika berhasil akan menyala 0xF0. Ketika inisialisasi I2C
(yang terhubung ke HM C6343) mengalami kegagalan, maka LED akan menyala
0x03, sedangkan jika berhasil akan menyala 0xFF. Pada I2C, jika terdapat
kegagalan saat read maka LED akan menyala 0x04, sedangkan jika berhasil akan
menyala 0x06. Pada saat melakukan write, jika terjadi kegagalan maka akan
menyala 0x05, jika berhasil 0x07 yang akan ditampilkan. Pada saat menjalankan
aplikasi, jika tidak terdapat SM S balesan dari terminal, maka LED akan menyala
0x5F.
94
3.2.2. Konektor Penghubung
Gambar 3.4. User Header A pada NanoBoard NB2-DSK01
Konektor penghubung ini digunakan untuk menghubungkan NanoBoard
NB2-DSK01 dengan HM C6343 dan µ-Oled128. Konektor penghubung ini
mengunakan pin user header A yang terdapat pada NanoBoard NB2-DSK01.
Dimana pin 1 sebagai VCC (5 volt) dan pin 20 sebagai Ground. Pin yang lain
digunakan berdasarkan skematik yang dibuat. Dalam hal ini, pin-pin yang
digunakan sesuai tabel dibawah ini.
Tabel 3.2. Pin yang digunakan sebagai konektor penghubung
Pin
Fungsi
Keterangan
1
VCC
5 volt
3
RX
5
TX
Penghubung ke
7
CTS
µ-Oled128
9
RTS
10-16
NC
Tidak digunakan
17
SDA
Penghubung ke
19
SCL
HM C6343
20
Ground
-
95
Gambar 3.5. Rangkaian User Header A
User header A bisa dipilih menggunakan tegangan 5 volt atau 3,3 volt
sebagai VCC. Untuk alat ini digunakan tegangan 5 volt sebagai VCC
3.2.3. Kompas Digital (HM C6343)
Kompas digital HM C6343 yang di pakai ini, menggunakan tegangan 3,3
volt. Yang berarti memiliki tegangan yang berbeda dari tegangan NanoBoard
ataupun GM 862-GPS. Untuk itu, input yang diberikan ke HM C6343 ini diberikan
voltage regulator terlebih dahulu. Voltage regulator yang digunakan adalah jenis
CX1117-3.3 yang akan membatasi tegangan menjadi 3,3 volt, yang sesuai dengan
kebutuhan HM C6343.
96
Gambar 3.6. Pin Out HM C6343
3.2.4. µ-Oled128
µ-Oled128 dalam perancangannya menggunakan carrier board
yang
langsung menghubungkan µ-Oled128 dengan joystick. Dalam board ini, pin IO1
µ-Oled128 sudah dihubungkan dengan joystick.
Board ini mengeluarkan lima
buah pin dari pin-pin yang ada pada µ-Oled128. Dimana kelima pin inilah yang
akan dihubungkan ke NanoBoard untuk berkomunikasi. Pin-pin ini terdiri dari pin
reset, GND, TX, RX dan VCC 5 volt.
Gambar 3.7. Pin UART pada carrier board µ-Oled128
Selain itu, board
ini terdapat rangkaian speaker atau penguat suara.
Rangakaian ini langsung dihubungkan ke pin IO2 pada µ-Oled128. Output suara
dari µ-Oled128 sebenarnya bisa dihubungkan ke pin IO1 maupun pin IO2, namun
karena joystick hanya bisa dihubungkan ke pin IO1, maka rangkaian penguat suara
ini dihubungkan ke pin IO2.
97
Gambar 3.8. Rangkaian penguat suara
3.2.5. Tombol Joystick
Tombol joystick yang dipakai pada alat ini, langsung disambungkan ke µOled128. Tombol joystick yang memiliki enam kaki, lima kakinya dirangkai
dengan resistor yang memiliki nilai berbeda-beda. Kaki ke enam dihubungkan
langsung ke pin input output (IO1) pada µ-Oled128.
Rangkaian ini berfungsi
sebagai rangkaian pembagi tegangan yang akan menjadi input IO1. Input yang di
dapat oleh µ-Oled128 akan di terjemahkan sehingga µ-Oled128 dapat menentukan
tombol apa yang ditekan oleh user.
Tabel 3.3. Resistor yang digunakan untuk joystick
Tombol
Resistor
1 / SW1
22K
2/ SW2
10K
3/ SW3
4K7
98
4/ SW4
2K2
5/ SW5
1K2
Gambar 3.9. Rangkaian tombol joystick
Pada pin satu dihubungkan dengan resistor 22K. Berdasarkan rumus pembagi
tegangan, maka
22K
= 0,82 . Nilai 0,82 inilah yang kemudian dikalikan
22K + 4 K 7
dengan VCC 3,3 volt dan menghasilkan 2,71 volt, jika nilai 2,71 volt ini terbaca
oleh pin IO1 µ-Oled128, secara otomatis µ-Oled128 akan mengetahui pin satu
yang digerakkan, atau dengan kata lain pengguna sedang menggeser joystick ke
atas. Output pin enam dan aksi apa yang dilakukan, ditunjukkan pada Tabel 3.4.
99
Tabel 3.4. Output pin enam dan aksi yang dilakukan
Pin
Perhitungan
Output pin 6
Aksi
1
22K
= 0,82
22K + 4 K 7
2,71 V
atas
2
10 K
= 0,68
10K + 4K 7
2,24 V
kiri
3
4K 7
= 0,50
4K 7 + 4 K 7
1,65 V
bawah
4
2K 2
= 0,32
2K 2 + 4 K 7
1,05 V
kanan
5
1K 2
= 0,20
1K 2 + 4 K 7
0,66 V
tekan
3,3 V
diam
Setelah pin IO1 membaca pin yang digerakkan, pin IO1 akan mengirimkan
sinyal ke µ-Oled128. M isal, ketika joystick digerakkan ke bawah, maka pin IO1
akan menerima 1,65 volt. Karena itu pin IO1 akan mengirimkan 3 ke µ-Oled128,
sebagai pernyataan pin 3 yang dipakai. Begitu juga dengan pergerakkan yang
lainnya. Dengan begitu µ-Oled128 bisa menjalankan program sesuai dengan input
yang diterima pin IO1. Dalam alat ini, pergerakan joystick akan menyatakan menu
ataupun mode yang dipilih baik oleh nelayan maupun seeker. Pilihan yang
ditunjukkan pergerakan joystick ini ditunjukkan pada Tabel 3.5.
100
Tabel 3.5. Pilihan yang ditunjukkan pergerakan joystick
Pergerakan joystick M enu yang dipilih
Ï
Í
Ð
Î
Tekan
3.3.
1
2
3
4
5
Perancangan Piranti Lunak
Piranti lunak yang dirancang untuk alat ini terbagi menjadi 3 bagian. Piranti yang
pertama dibuat dan diprogram ke dalam µ-Oled128, piranti lunak kedua dibuat dan
diprogram ke dalam NanoBoard NB2-DSK01 dan piranti lunak ketiga dibuat dan
diprogramkan ke GM 862-GPS. Dimana ketiga piranti ini akan saling menunjang satu
sama lain untuk menjalankan alat ini secara keseluruhan.
Piranti lunak pada µ-Oled128 berperan sebagai user interface yang berfungsi
menampilkan menu dan sebagai penerima input dari user. Input dari user ini berasal dari
tombol joystick yang digerakkan oleh user. Piranti lunak pada µ-Oled128 ini dibuat
dengan menggunakan software 4DGL_Workshop3 yang memakai bahasa pemrograman
hasil modifikasi 4D System.
Pada NanoBoard NB2-DSK01, piranti lunak semua yang dibuat berperan sebagai
penghubung komunikasi antara µ-Oled128, GM 862-GPS dan HM C6343. Dalam
101
membuat piranti lunak ini digunakan bahasa pemrograman C dengan bantuan software
pendukung Altium Designer Summer 9.
Untuk GM 862-GPS, piranti yang dibuat akan berperan sebagai komunikasi dengan
menggunakan GSM dan pengambilan koordinat GPS. Piranti lunak ini dibuat dengan
menggunakan software pendukung dari Telit Python 1.5.2+ yaitu PhytonWin. Dimana
software ini menggunakan bahasa pemrograman khusus, yang dikenal dengan nama
Phyton.
3.3.1. Diagram Alir µ-Oled128-G1(GFX)
Program µ-Oled128 akan berjalan sesuai dengan input yang diberikan.
Dimana input yang didapat µ-Oled128 berasal dari tombol joystick dan NanoBoard
NB2-DSK01. Selain menerima input, modul ini akan memberikan output sesuai
dengan program yang dibuat. Output yang dikeluarkan ini, berupa tampilan yang
ditunjukkan dan sinyal tertentu yang dikirimkan ke NanoBoard.
102
Start
Inisialisasi
Ambil data
kompas
Tidak
Tampilkan
kompas
Pilih tombol
apa saja?
Ya
Yes
Tampilkan
menu
Tidak
Tombol (menu)
1menit ?
Gambar 3.10. Diagram alir program pada µ-Oled128
103
Gambar 3.11. Diagram alir sub-rutin tombol(menu)
Setelah proses inisialisasi, µ-Oled128 akan menampilkan kompas. Dimana
kompas ini akan menunjukkan posisi saat itu (derajat pada arah mata angin).
Ketika tombol joystick digerakkan, maka akan ditampilkan menu untuk memilih
mode yang akan dipakai (mode mobile guidance untuk nelayan atau mode mobile
scanner untuk pencari ikan/ seeker). Dimana pada saat ini sub-rutin tombol (menu)
dijalankan. Pemilihan menu dilakukan dengan menggerakkan tombol joystick.
Dari menu awal ini, jika sampai batas waktu satu menit tidak terdapat respon
(pilihan mode), maka tampilan akan kembali ke kompas.
104
Gambar 3.12. Tampilan pemilihan mode
Pada sub-rutin tombol (menu), program akan berjalan berdasarkan menu
yang dipilih. Pemilihan dilakukan oleh user, jika dipilih mode mobile guidance
maka akan dipanggil sub-rutin mobile guidance, sedangkan jika dipilih mode
mobile scanner maka akan dipanggil sub-rutin mobile scanner. Ketika dipilih
mode kompas, maka akan ditampilkan kompas seperti pada saat alat ini dinyalakan
pertama kali. M ode kompas ini akan memanggil sub-rutin kompas. Dimana subrutin ini akan langsung mengambil data kompas dari HM C6343.
M ode mobile guidance:
Gambar 3.13. Tampilan menu pada mode mobile guidance
105
Pada saat nelayan memilih mode modile guidance, secara otomatis sistem
menjalankan sub-rutin yang akan menampilkan menu pilihan terlebih dahulu.
Nelayan bisa memilih untuk mencari ikan, panduan pulang, menampilkan kompas
atau kembali ke menu pemilihan mode. Jika diperlukan, nelayan bisa memilih
menu bantuan. Dimana menu bantuan ini, diperuntukkan bagi nelayan yang
membutuhkan bantuan dalam menjala ikan.
106
Gambar 3.14. Diagram alir untuk mode mobile guidance
107
Pada saat nelayan memilih menu mencari ikan, maka secara otomatis nelayan
akan diberikan arahan atau panduan menuju lokasi wilayah tangkap ikan. Disini
nelayan akan diarahkan menuju lokasi wilayah tangkap ikan yang terdekat.
Penentuan titik lokasi wilayah tangkap ikan dikirimkan dari Terminal. Demikian
juga ketika nelayan memilih menu pulang, maka secara otomatis nelayan akan
diberikan arahan atau panduan menuju tempat ke kantor lokasi Terminal berada,
dengan kata lain pulang.
Pada saat nelayan memilih menu bantuan, maka terminal akan mengirimkan
lokasi keberadaan nelayan pada saat itu ke nelayan lain yang bisa membantu pada
saat itu. Pengiriman lokasi ini akan memberikan laporan berhasil atau tidaknya
data lokasi dikirimkan.
Untuk menu kompas, tampilan akan menunjukkan kompas seperti pada saat
alat ini dijalankan pertama kali. Bedanya, jika pada saat menampilkan kompas ada
pergerakan tombol joystick, maka tampilan akan kembali menampilkan menu
mobile guidance bukan menu awal. Tampilan kembali ke menu pemilihan mode,
jika dipilih kembali ke menu awal.
M ode mobile scanner:
Gambar 3.15. Tampilan menu pada mode mobile scanner
108
Selain nelayan yang melaut, ada pula yang bertugas sebagai pencari ikan
(seeker). Seeker akan memilih mode mobile scanner ketika mencari ikan. M ode ini
akan menampilkan menu mengirim lokasi ikan, panduan pulang, tampilkan
kompas dan kembali ke menu awal.
109
Gambar 3.16. Diagram alir untuk mode mobile scanner
110
Pada saat seeker memilih menu kirim lokasi ikan, maka secara otomatis data
lokasi seeker pada saat itu akan dikirimkan ke terminal. Data ini menunjukkan
lokasi wilayah tangkap ikan yang telah ditemukan seeker. Proses pengiriman data
ini akan memberikan laporan berahasil atau tidaknya data dikirim, kemudian
laporan ini akan ditampilkan ke seeker. Pada saat data gagal dikirim, maka seeker
bisa melakukan pengiriman ulang. Sama seperti nelayan, ketika seeker memilih
menu pulang, maka seeker akan diberikan arahan atau panduan menuju pulang.
Begitu juga dengan menu kompas, ketika seeker memilih menu ini, maka kompas
akan ditampilkan. Saat kompas ditampilkan, jika tombol joystick digerakkan, maka
akan kembali ke menu mobile scanner bukan menu pemilihan mode. Tampilan
akan kembali ke menu pemilihan mode, ketika dipilih ke menu awal atau dengan
kata lain terjadi return.
3.3.2. Diagram Alir NanoBoard NB2-DSK01
NanoBoard NB2-DSK01 ini memiliki program tersendiri yang dijalankan
oleh TSK3000A. Pertama-tama, TSK3000A akan melakukan tahap inisialisasi
terlebih dahulu. Dimana proses yang terjadi pada tahap inisialisasi ini termasuk
proses pengaturan baud rate untuk komunikasi UART. TSK3000A akan
menggunakan baud rate 115200 bps untuk berkomunikasi dengan GM 862-GPS
dan baud rate 57.600 bps untuk berkomunikasi dengan µ-Oled128.
Program ini awalnya berjalan sesuai dengan input yang diberikan µOled128, kemudian akan dijalankan sesuai dengan input yang diberikan µOled128 dan GM 862-GPS. Dimana dari input yang didapat ini, akan memberikan
111
output tertentu. Berdasarkan input maupun output tersebut, program akan berjalan
sesuai dengan diagram alir yang ditunjukkan Gambar 3.17.
Input yang diberikan µ-Oled128 terjadi ketika nelayan ataupun seeker
melakukan pemilihan menu. Berdasarkan menu ini µ-Oled128 akan mengirimkan
perintah ke TSK3000A untuk menjalankan atau memanggil sub-rutin yang akan
mengoperasikan menu tersebut. Adapun pilihan menu yang dapat dipilih sesuai
dengan tampilan pada layar µ-Oled128. Perintah untuk memanggil sub-rutin
terdapat kesamaan antara mode mobile guidance maupun mode mobile scanner,
sehingga perintah-perintah tersebut dikelompokkan menjadi:
•
Target (IKN/PLG)
Pada mode mobile guidance terdapat menu mencari ikan, dimana nelayan
menginginkan arahan menuju lokasi tangkap ikan yang terdekat. Bisa
dikatakan ikan sebagai target dari menu ini. Baik pada mode mobile
guidance maupun mobile scanner terdapat menu panduan pulang, dimana
nelayan dan seeker ingin kembali ke terminal dan butuh arahan untuk
pulang. Dalam hal ini terminallah yang menjadi target. Untuk itu, kedua
menu ini dikelompokkan menjadi satu sebagai target. Dimana untuk
mengaksesnya dikirimkan perintah IKN untuk nelayan yang ingin mencari
ikan, sedangkan perintah PLG untuk nelayan dan seeker yang ingin pulang.
•
Pilihan (LOK/BTN)
Pada mode mobile scanner terdapat pilihan menu mengirim lokasi ikan,
dimana titik kapal pada saat itu menyatakan lokasi tangkap ikan yang ingin
dicatat oleh terminal. Pada mode mobile guidance terdapat menu bantuan,
dimana titik kapal pada saat itu ingin dicatat oleh terminal, kemudian
112
dikirimkan ke nelayan lain yang bisa membantu. Kedua menu ini memiliki
inti yang sama, untuk itu dikelompokkan menjadi satu sebagai pilihan.
Dimana untuk mengaksesnya dikirimkan perintah LOK untuk seeker yang
ingin mengirim lokasi, sedangkan perintah BTN untuk nelayan yang sedang
membutuhkan bantuan.
•
Kompas (CPS)
Baik pada mode mobile guidance maupun mode mobile scanner terdapat
menu tampilkan kompas. Dimana menu ini akan menampilkan kompas yang
menunjukkan arah mata angin pada posisi tersebut. M enu ini bisa di akses
dengan mengirimkan perintah CPS.
113
Gambar 3.17. Diagram alir program pada NanoBoard NB2-DSK01
114
Pada saat µ-Oled128 memberikan input IKN atau PLG, maka akan
dipanggil sub-rutin target. Ketika sub-rutin ini dijalankan, pertama-tama
TSK3000A akan mengirimkan tipe ke GM 862-GPS.
Tipe yang dimaksud adalah tipe IKN atau tipe PLG. Tipe IKN menunjukkan
bahwa menu menuju titik ikan sedang dipilih dan ingin dijalankan, sedangkan tipe
PLG menunjukan bahwa menu pulang sedang dipilih dan ingin dijalankan. Baik
tipe IKN maupun PLG, akan meminta data target yang akan dituju ke GM 862-GPS
(IKN Æ meminta data lokasi ikan, PLG Æ meminta data tempat terminal atau
pulang). Dari data yang didapat akan dikalkulasikan jarak dan arah dari posisi
sekarang sampai target. Jika sudah sampai ke tujuan, maka akan dikirimkan
laporan “sampai”, sedangkan jika ditengah jalan berubah pikiran, maka nelayan
dan seeker bisa membatalkan perintah dan kembali ke menu sebelumnya.
115
Gambar 3.18. Diagram alir sub-rutin target
116
Pada sub-rutin target, terdapat proses kalkulasi jarak dan arah. Proses
kalkulasi ini menggunakan rumus dasar Haversine. Untuk menghitung jarak
persamaan aslinya sebagai berikut :
R = earth’s radius (mean radius = 6,371km)
dlat = lat2- lat1
dlong = long2- long1
a = sin 2 (
dlat
dlong 2
) + cos(lat1). cos(lat2). sin 2 (
)
2
2
c = 2 * arctan 2( a , 1 - a )
d = R.c
Untuk menghitung sudut (arah) perhitungannya adalah sebagai berikut:
θ = a tan 2{[sin(dlong ).cos(lat 2).sin(lat 2) - sin (lat2). cos(lat 2).cos(dlong )]}
Berdasarkan rumusan di atas, di buat rumus perhitungan dengan
menggunakan bahasa pemrograman C. Rumus ini akan di akses oleh TSK3000A
untuk melakukan kalkulasi jarak dan arah. Untuk menghitung jarak yang harus
ditempuh oleh kapal, maka digunakan rumus:
slat = sqrt((lat2 - lat1) * (lat2 - lat1)) * 3.14159 / 180;
slong = sqrt((long2 - long1) * (long2 - long1)) * 3.14159 / 180;
a = sin(slat/2) * sin(slat/2) +
cos(lat1 * 3.14159 /
cos(lat2 * 3.14159 / 180) * sin(slong/2) * sin(slong/2);
jarak = floor(2*R* atan2(sqrt(a), sqrt(1-a)));
180) *
117
Untuk menghitung sudut (arah) digunakan rumus:
sudut = atan2(sin(long2 * 3.14159 /
180)*cos(lat2
*
3.14159
/
180)
180 - long1 *
,
cos(lat1
*
3.14159 /
3.14159
/
180)*sin(lat2 * 3.14159 / 180)-sin(lat1 * 3.14159 / 180)*cos(lat2
* 3.14159 / 180)*cos(long2 * 3.14159 / 180 - long1 * 3.14159 /
180));
sudut = sudut / 3.14159 *180;
Dimana lat2 dan long2 adalah koordinat yang harus di capai dalam format
derajat, dan lat1 dan long1 adalah koordinat kapal sekarang dalam format derajat.
Kedua data ini harus diubah kedalam bentuk radian yaitu dengan mengalikan
pi/180derajat. Sesudah dihitung, hasil yang diperoleh di ubah kembali dari bentuk
radian ke bentuk derajat
R adalah jari-jari bumi yang besarnya tergantung besaran yang mau
digunakan, jika data yang diinginkan dalam bentuk km, maka R=6371 jika jarak
yang dinginkan dalam bentuk m maka R=6371000. Sesudah dihitung, hasil sudut
yang diperoleh di ubah kembali dari bentuk radian ke bentuk derajat. Data yang
telah didapat tersebut diolah oleh Nanoboard NB2-DSK01 dan kemudian
ditampilkan ke µ-Oled128.
118
Pilihan
(tipe)
Kirim tipe ke
GM862-GPS
Terima data dari
GM862-GPS
Terima data
berhasil?
Ya
Kirim “berhasil”
ke uOLED
Tidak
Kirim “gagal” ke
uOLED
Return
Gambar 3.19. Diagram alir sub-rutin pilihan
Pada saat µ-Oled128 memberikan input LOK atau BTN, maka akan
dipanggil sub-rutin pilihan. Seperti halnya sub-rutin target, pada sub-rutin pilihan
pertama-tama TSK3000A akan mengirimkan tipe ke GM 862-GPS. Dimana tipe
yang dimaksud pada sub-rutin ini adalah tipe LOK atau tipe BTN. Tipe LOK
diperuntukan bagi seeker yang ingin mengirimkan data lokasi tangkap ikan yang
ditemukan, sedangkan tipe BTN diperuntukan bagi nelayan yang ingin meminta
bantuan dalam proses menangkap ikan. Kedua tipe ini akan meminta data
keberadaan pada saat itu ke GM 862-GPS, kemudian data tersebut akan dikirimkan
ke terminal. Jika data berhasil ataupun gagal, maka akan dikirimkan laporan ke µOled128 yang akan menampilkan “berhasil” atau “gagal”.
119
Pada saat nelayan ataupun seeker memilih menampilkan kompas, maka µOled128 akan mengirimkan CPS ke NanoBoard, sehingga NanoBoard akan
mengambil data kompas, dengan memanggil sub-rutin kompas. NanoBoard secara
otomatis akan mengupadate posisi GPS, jika tidak terdapat input apapun dari µOled128. Update posisi GPS ini dijalankan dengan memanggil sub-rutin GPS.
Data GPS bisa diambil dengan mengirimkan GPS terlebih dahulu ke
GM 862-GPS. Setelah itu GM862-GPS akan memberikan informasi data GPS ke
NanoBoard. Pada saat data berhasil dikirim, data tersebut akan disimpan di
prosesor utama yang akan digunakan kembali ketika dibutuhkan.
Gambar 3.20. Diagram alir sub-rutin GPS
120
3.3.3. Diagram Alir GPS/ GSM (GM 862-GPS)
Pada modul Telit
GM 862-GPS juga terdapat program tersendiri.
Pemrograman yang dilakukan ini, sudah termasuk inisialisasi awal untuk modul
GPS sendiri. Dalam arti, inisialisasi agar memungkinkan dilakukan komunikasi
GPS maupun GSM .
GM 862-GPS akan bekerja berdasarkan input yang diberikan oleh TSK
3000A yang terdapat pada NanoBoard NB2-DSK01. Berdasarkan input yang
diberikan, GM 862-GPS akan memberikan output yang dikirimkan ke TSK3000A.
Pada kondisi (perintah) tertentu, output yang ada akan dikirimkan ke terminal.
Data output ini akan dikirimkan melalui SM S dengan menggunakan fungsi GSM
pada GM 862-GPS.
121
Gambar 3.21. Diagram alir program pada modul GM 862-GPS
122
Pada saat GM 862-GPS menerima input GPS dari TSK3000A, maka
GM 862-GPS akan mengambil data GPS pada saat itu. Data GPS yang didapat
akan dikirimkan ke TSK3000A, kemudian diolah terlebih dahulu sebelum
ditampilkan ke µ-Oled128 atau digunakan untuk perhitungan. Selain itu, data GPS
ini dikirimkan juga ke terminal melalui SM S untuk memberitahu terminal di mana
posisi kapal saat itu.
Pada saat TSK3000A memberikan input IKN atau PLG, maka akan
dipanggil sub-rutin panduan menuju target. Dimana sub-rutin ini dijalankan
berdasarkan tipe yang dikirimkan. Tipe IKN untuk nelayan yang ingin menuju
lokasi ikan, sedangkan tipe PLG untuk nelayan yang ingin pulang. Pada awalnya
GM 862-GPS akan mengirimkan permintaan berdasarkan tipe yang dipanggil ke
terminal, kemudian terminal akan mengirimkan data target yang akan dituju oleh
nelayan ataupun seeker. Jika sampai batas waktu 3 menit tidak ada data target yang
dikirim oleh terminal, maka GM 862-GPS akan mengirimkan “gagal” ke
TSK3000A, sedangkan jika data target berhasil dikirimkan, TSK3000A akan
menerima data target tersebut. Data target inilah yang akan diolah TSK3000A
berdasarkan sub-rutin target yang ada pada NanoBoard NB2-DSK01.
123
Panduan menuju target
(tipe)
Kirim permintaan
(tipe) ke terminal
Tidak
Data target
diterima?
Tidak
Waktu
menunggu habis
(3menit)
Ya
Ya
Kirim data target
ke TSK3000A
Kirim “gagal” ke
TSK3000A
Return
Gamabr 3.22. Diagram alir sub-rutin panduan menuju target
Ketika TSK3000A mengirimkan input LOK dan BTN, maka sub-rutin kirim
posisi akan dijalankan. Sub rutin ini akan berjalan sesuai dengan tipe yang
dikirimkan. Dimana tipe LOK untuk seeker yang ingin mengirimkan data lokasi
ikan yang didapat, sedangkan BTN untuk nelayan yang ingin meminta bantuan
dalam menjala ikan.
Pada awalnya, sub-rutin ini akan mengambil koordinat data GPS kapal
nelayan atau seeker pada saat itu. Data yang di dapat dikirimkan ke terminal, dan
124
diberi batas waktu tiga menit untuk Terminal mengirimkan konfirmasi. GM 862GPS akan mengirimkan “gagal” ke TSK3000A jika batas waktu sudah terlewati,
sedangkan jika berhasil TSK3000A akan menerima “berhasil”.
Kirim posisi
(tipe)
Ambil koordinat
dari GPS
Rangkai koordinat ke dalam data
packet yang akan dikirim
Kirim
data
Tidak
Acknowledgement
dari terminal
Tidak
Waktu tunggu
habis?
(3menit)
Ya
Ya
Kirim data
“berhasil” ke
Kirim data “gagal”
ke TSK3000A
TSK3000A
Return
Gambar 3.23. Diagram alir sub-rutin kirim posisi
125
3.3.4. Diagram Alir Kompas Digital (HM C6343)
Untuk membaca data kompas, pada modul kompas digital HM C6343 ini,
diperlukan urutan perintah tertentu untuk mendapatkannya. Jika ada permintaan
data dari prosesor utama, maka prosesor utama harus mengirimkan urutan perintah
seperti pada diagram alir dibawah ini.
Gambar 3.24. Diagram Alir program pada modul HM C6343
126
Untuk mendapatkan data terbaru, maka program atau perintah ini harus
dikirimkan secara berkala (kurang lebih setiap 200ms). Dimana perintah ini
dimulai dengan mengirimkan data 0x32 yang merupakan alamat untuk menulis
perintah ke HM C6343. Selanjutnya dikirimkan data 0x50 yang merupakan
perintah untuk meminta heading (arah), pitch (kemiringan naik atau turun) dan roll
(kemiringan kiri atau kanan). Setelah menunggu kurang lebih 1ms, terlebih dahulu
dikirimkan data 0x33 yang merupakan alamat untuk membaca data dari
HM C6343. Selanjutnya data bisa dibaca dan dikirimkan ke prosesor utama.
Data yang diterima prosesor utama berupa 16 bit, yang terdiri dari 8 bit
pertama M SB dan 8 bit kedua LSB. Dimana bit-bit inilah yang akan menunjukkan
arah mata anginnya. Untuk HM C6343 arah mata angin dibaca dari 0 sampai
dengan 3600, yang menyatakan 00 sampai dengan 3600. M isalnya, data yang
diterima prosesor utama 111000000110, data ini menyatakan 00001110 untuk
M SB dan
00000110 untuk LSB, jika binary ini di desimalkan, maka akan
menghasilkan angka 3590 yang berarti 3590.
3.4.
Cara Kerja Sistem Keseluruhan
Secara keseluruhan alat ini berjalan dengan perangkat utama dan perangkat
tambahan. Perangkat utama terdiri dari perangkat yang memiliki dua mode (mobile
guidance dan mobile scanner) dan terminal utama. Perangkat utama ini akan dibantu
dengan perangkat tambahan, seperti: kapal untuk mencari ikan yang dilengkapi dengan
fish finder (kapal seeker).
127
Gambar 3.25. Kapal seeker berangkat mencari ikan
Kapal seeker betugas untuk mencari ikan dengan bantuan fish finder. Dengan fish
finder, operator akan mendapat informasi pencitraan laut sehingga dapat langsung
mengetahui ada tidaknya ikan di lokasi tersebut. Ketika menemukan suatu lokasi ikan,
maka operator pada kapal seeker akan mengirimkan sinyal yang menyatakan titik ikan.
Sinyal ini akan diterima oleh terminal dan langsung diolah, serta ditampilkan pada layar.
Kapal seeker akan menggunakan perangkat dengan mode mobile scanner.
128
Gambar 3.26. Kapal seeker mendapat ikan dan memberi tanda
Gambar 3.27. Lokasi ikan diolah terminal
129
Ketika ada nelayan yang ingin melaut (mencari ikan), maka akan menggunakan
mode mobile guidance. Nelayan tinggal menekan tombol untuk meminta arahan titik
lokasi ikan terdekat kepada terminal, kemudian terminal akan memberitahukan lokasi
ikan yang akan dituju sekaligus arah (petunjuk) menuju lokasi ikan tersebut.
Gambar 3.28. Nelayan diberi arahan ke titik ikan
Pengiriman data titik ikan dari mobile scanner ke terminal dibantu dengan
teknologi GSM , begitu juga dengan mobile guidance ke terminal. Informasi lokasi, baik
titik ikan maupun kapal nelayan, yang didapat oleh terminal dibantu dengan teknologi
GPS. Untuk membantu mengetahui arah ketika melaut dibantu dengan mode navigasi
kompas, dengan teknologi kompas digital.
130
3.5.
Rancang Bangun
Gambar 3.29. Rancangan sistem
Gambar di atas merupakan rancangan sistem yang masih menggunakan
NanoBoard NB2-DSK01. Dimana rancangan yang dibuat terdiri dari dua bagian. Bagian
pertama modul NanoBoard NB2-DSK01 dan GM862-GPS, sedangkan bagian kedua
modul sementara yang berisi µ-Oled128 dan kompas digital dalam satu kotak. Dalam
modul ini dilengkapi dengan joystick yang akan digunakan sebagai tombol untuk
menjalankan sistem sesuai keinginan.
3.5.1.
Sketsa Kotak
Pada rancangan sistem dijalaskan bahwa akan dibuat dua buah kotak.
Dimana kotak pertama berisi NanoBoard Nb2-DSK01 dan GM 862-GPS. Kotak
ini berukuran 45 cm x 30 cm x 15 cm, yang ditunjukkan pada Gambar 3.30. Kotak
kedua berisi HM C6343, µ-Oled128 dan joystick. Kotak kedua ini berukuran 8 cm
x 6,5 cm x 3 cm, yang ditunjukkan pada Gambar 3.31.
131
Gambar 3.30. Sketsa kotak pertama
Gambar 3.31. Sketsa kotak kedua
132
3.5.2.
Foto Alat
Gambar 3.32. Tampilan alat secara keseluruhan
Gambar 3.33. Tampilan alat tampak samping
133
Gambar 3.34. Tampilan alat tampak atas
Gambar 3.35. Tampilan user interface
Download