Pasang Radar Baru di Kapal Kecil: Wiring, Kalibrasi Heading & Radar Overlay di OpenCPN

Punya radar baru tapi belum berani pasang sendiri? Artikel ini memandumu dari nol: memilih posisi scanner di kapal kecil, wiring kabel power dan data NMEA 0183 yang benar, mengkalibrasi heading alignment supaya arah di layar radar cocok dengan arah kapal sebenarnya, sampai mengaktifkan radar overlay di OpenCPN agar echo radar menempel persis di atas peta laut. Di akhir ada script Python siap copy-paste untuk memastikan data heading dari kompasmu sudah terbaca benar sebelum overlay dinyalakan. Kalau kamu sudah baca panduan membaca layar radar, artikel ini adalah lanjutannya yang paling ditunggu: tahap instalasi.

1. Memilih Posisi Scanner Radar di Kapal Kecil

Scanner (unit antena putar) adalah bagian paling menentukan. Aturannya sederhana: semakin tinggi dan semakin bebas halangan, semakin bagus. Untuk kapal kecil, pasang di tiang atau bracket di atas wheelhouse, minimal 2,5 meter dari permukaan air dan di atas kepala semua orang yang berdiri di dek — radiasi radar jarak dekat berbahaya untuk mata.

Tiga hal yang wajib dicek saat memilih posisi:

1. Bebas halangan 360 derajat. Tali, tiang layar, lampu sorot, atau antena VHF yang menghalangi akan menciptakan blind sector (sektor buta) — echo dari arah itu tidak muncul atau muncul palsu. Putar scanner dengan tangan (saat radar mati) dan pastikan tidak menyentuh apa pun dalam satu putaran penuh.

2. Jauh dari kompas magnetik. Magnet di motor scanner bisa mengacaukan kompas. Jaga jarak minimal 1 meter dari kompas magnetik utama. Ini penting karena radar yang akan kita overlay butuh data heading yang akurat.

3. Permukaan datar dan kencang. Scanner harus benar-benar horizontal. Kalau miring 2–3 derajat saja, echo target di satu sisi akan lemah. Pakai waterpass saat mengencangkan baut bracket. Di kapal fiberglass, tambahkan plat penguat di bawah dek agar bracket tidak retak kena getaran.

2. Wiring: Kabel Power, Data NMEA 0183, dan Grounding

Unit display biasanya terpisah dari scanner dan dihubungkan dengan kabel multi-core bawaan pabrik — colokkan sesuai warna/penomoran di manual, jangan dipotong kalau tidak perlu. Yang perlu kamu wiring sendiri biasanya tiga hal: power, data NMEA 0183, dan grounding.

Power. Radar kapal kecil umumnya 12 V DC. Sambungkan langsung ke busbar/baterai lewat sekring/fuse sesuai manual (biasanya 5–10 A), BUKAN ke saklar lampu atau sirkuit lain. Kabel power radar harus cukup tebal: untuk jarak sampai 5 meter pakai minimal 2,5 mm persegi. Kabel terlalu tipis bikin tegangan drop saat scanner berputar dan radar restart sendiri — gejala klasik instalasi asal-asalan.

Data NMEA 0183 (untuk heading & overlay). Supaya radar overlay bisa jalan di OpenCPN dan supaya layar radar menampilkan heading, scanner/display radar harus menerima kalimat heading (HDT/HDG) dari kompas elektronik atau fluxgate. NMEA 0183 memakai 4 kabel data:

TX+ (kirim +)  --->  RX+ (terima +)
TX- (kirim -)  --->  RX- (terima -)

Contoh: kompas elektronik punya output NMEA 0183 (TX+, TX-) → sambungkan ke input NMEA 0183 display radar (RX+, RX-). Kalau kompasmu hanya punya 1 kabel TX (single-ended, umum di kompas murah), sambungkan TX kompas ke RX+ radar, dan sambungkan ground kompas ke RX- radar. Kecepatan baud standar NMEA 0183 adalah 4800 bps — pastikan port di kedua perangkat diset 4800.

Grounding. Sambungkan kabel ground (biasanya hijau/kuning atau hitam tebal) dari bodi display dan scanner ke ground kapal. Grounding yang buruk bikin layar radar berbintik-bintik (noise) dan data NMEA putus-putus.

Checklist wiring sebelum dinyalakan pertama kali:

[ ] Sekring power terpasang, rating sesuai manual
[ ] Tegangan di terminal display terbaca 12-14 V (pakai multimeter)
[ ] Kabel NMEA: TX kompas -> RX radar, baud 4800 di kedua sisi
[ ] Ground bodi tersambung ke ground kapal
[ ] Scanner bisa diputar 360 derajat tanpa menyentuh apa pun

3. Kalibrasi Heading Alignment (Langkah Paling Penting)

Heading alignment adalah penyelarasan antara arah haluan kapal yang sebenarnya dengan garis haluan (heading line) di layar radar. Kalau meleset 5 derajat saja, semua bearing target di radar ikut meleset 5 derajat — dan radar overlay di peta akan bergeser dari posisi sebenarnya. Hampir semua radar baru butuh kalibrasi ini setelah dipasang.

Langkah-langkah kalibrasi (istilah menu bisa beda antar merek — Furuno, Garmin, Raymarine, Lowrance — tapi prinsipnya sama):

1. Cari target referensi yang jelas. Saat kapal diam atau melaju pelan di perairan tenang, cari objek tetap yang terlihat jelas di radar dan bisa kamu lihat dengan mata: ujung dermaga, menara suar, atau ujung tanjung. Jarak ideal 0,5–2 mil laut.

2. Catat bearing sebenarnya. Arahkan haluan kapal TEPAT ke target itu, lalu baca kompas: misalnya kompas menunjukkan 045 derajat. Itu bearing sebenarnya target.

3. Bandingkan dengan layar radar. Lihat di layar radar: pada bearing berapa echo target muncul? Kalau muncul di 052 derajat padahal seharusnya 045 derajat, berarti ada offset +7 derajat.

4. Masukkan koreksi di menu. Buka menu instalasi radar (biasanya Installation > Heading Alignment atau Radar Setup > Bearing Alignment), masukkan nilai koreksi -7 derajat (atau +7 derajat tergantung arah offset di merekmu — ikuti petunjuk di layar). Ulangi langkah 1–3 sampai echo target jatuh tepat di garis heading.

5. Verifikasi dengan target kedua. Jangan puas dengan satu target. Putar kapal 90 derajat, cari target lain, pastikan bearing-nya juga tepat. Kalau target kedua meleset lagi, kemungkinan kompasmu yang perlu dikalibrasi dulu (deviasi kompas), bukan radarnya.

Catatan penting: kalibrasi ulang setiap kali scanner dilepas-pasang, dan cek ulang tiap 6 bulan — baut bracket bisa bergeser kena getaran mesin.

4. Mengaktifkan Radar Overlay di OpenCPN

Radar overlay menempelkan echo radar di atas chart elektronik, jadi kamu melihat peta dan target radar dalam satu layar. Di OpenCPN ini dikerjakan plugin radar_pi (mendukung radar Navico/Lowrance/Simrad, Garmin, dan Raymarine lewat koneksi ethernet).

Langkah-langkahnya:

1. Sambungkan radar ke laptop/PC. Radar modern yang mendukung overlay punya port ethernet — colokkan kabel LAN dari display radar ke laptop, atau ke switch yang sama. Catat IP radar (lihat manual; biasanya di rentang 192.168.x.x).

2. Install plugin radar_pi di OpenCPN. Buka Options > Plugins > Update Plugin Catalog, cari "Radar", install radar_pi, lalu enable. Restart OpenCPN.

3. Konfigurasi plugin. Buka Options > Plugins > radar_pi > Preferences. Pilih tipe radar sesuai merekmu, masukkan IP radar, lalu klik Scan atau Auto-detect. Kalau radar terdeteksi, akan muncul status "connected".

4. Pastikan data heading masuk ke OpenCPN. Ini syarat mutlak overlay: tanpa heading, echo radar tidak tahu harus diputar ke arah mana. Di Options > Connections, pastikan koneksi NMEA 0183 dari kompas/GPS aktif (4800 bps). Buka NMEA Debug Window (ikon kunci inggris di toolbar) dan pastikan kalimat heading mengalir, contohnya:

$HEHDT,123.4,T*1F
$HCHDG,123.4,,,7.2,E*2A

Kalimat HDT = heading sebenarnya (true), HDG = heading magnetik + deviasi. Kalau tidak ada kalimat heading di debug window, overlay TIDAK akan jalan — kembali ke bagian wiring (langkah 2) dan periksa sambungan kompas.

5. Nyalakan overlay. Klik kanan di chart → Radar > Show radar overlay (atau tombol radar di toolbar). Echo radar akan muncul menempel di atas peta. Zoom ke 1–3 mil dan bandingkan: garis pantai di peta harus berhimpit dengan echo garis pantai di radar. Kalau bergeser memutar, heading alignment-mu (langkah 3) belum tepat. Kalau bergeser tapi tidak memutar, posisi GPS yang perlu dicek.

5. Script Python: Verifikasi Data Heading Sebelum Overlay

Daripada menebak-nebak kenapa overlay tidak muncul, jalankan script ini di laptop yang tersambung ke kompas/GPS via kabel USB-serial (atau via koneksi WiFi NMEA). Script membaca kalimat NMEA, memvalidasi checksum, dan melaporkan apakah data heading mengalir dengan benar. Copy-paste, simpan sebagai cek_heading.py, jalankan dengan python3 cek_heading.py.

import socket

# Ganti dengan IP & port gateway NMEA WiFi-mu
# (atau pakai koneksi serial: pip install pyserial, lalu buka serial.Serial)
HOST, PORT = "192.168.4.1", 10110

def checksum_ok(kalimat):
    """Cek checksum NMEA 0183. Return True kalau valid."""
    if "*" not in kalimat:
        return False
    data, cek = kalimat.split("*")
    hitung = 0
    for ch in data.lstrip("$!"):
        hitung ^= ord(ch)
    try:
        return hitung == int(cek[:2], 16)
    except ValueError:
        return False

def ambil_heading(kalimat):
    """Ambil nilai heading dari HDT/HDG/HDM. Return None kalau bukan kalimat heading."""
    bagian = kalimat.split(",")
    tipe = bagian[0][3:]  # contoh: $HEHDT -> HDT
    if tipe in ("HDT", "HDG", "HDM") and len(bagian) > 1 and bagian[1]:
        try:
            return tipe, float(bagian[1])
        except ValueError:
            return None
    return None

total, valid, rusak, heading_ditemukan = 0, 0, 0, 0
print("Mendengarkan data NMEA di %s:%d ... (Ctrl+C untuk berhenti)" % (HOST, PORT))
try:
    s = socket.create_connection((HOST, PORT), timeout=10)
    buf = ""
    while True:
        buf += s.recv(1024).decode("ascii", errors="ignore")
        while "\n" in buf:
            baris, buf = buf.split("\n", 1)
            baris = baris.strip()
            if not (baris.startswith("$") or baris.startswith("!")):
                continue
            total += 1
            if checksum_ok(baris):
                valid += 1
                hasil = ambil_heading(baris)
                if hasil:
                    heading_ditemukan += 1
                    print("Heading OK: %s = %.1f derajat  <- %s"
                          % (hasil[0], hasil[1], baris))
            else:
                rusak += 1
                print("Checksum RUSAK, dibuang: %s" % baris)
            if total % 50 == 0:
                print("... %d kalimat dibaca (%d valid, %d rusak, %d heading)"
                      % (total, valid, rusak, heading_ditemukan))
except KeyboardInterrupt:
    print("\nSelesai. Total: %d kalimat, %d valid, %d rusak, %d kalimat heading."
          % (total, valid, rusak, heading_ditemukan))
    if heading_ditemukan == 0:
        print("KESIMPULAN: tidak ada data heading! Periksa wiring kompas -> NMEA.")
    elif rusak > total * 0.05:
        print("KESIMPULAN: >5% kalimat rusak. Periksa konektor & grounding kabel NMEA.")
    else:
        print("KESIMPULAN: data heading SEHAT. Radar overlay siap dinyalakan.")
except Exception as e:
    print("Gagal konek: %s. Cek IP/port gateway NMEA WiFi." % e)

Kalau script melaporkan "data heading SEHAT" tapi overlay tetap tidak muncul, masalahnya hampir pasti di sisi plugin radar_pi (IP radar salah atau tipe radar belum didukung) — bukan di kabelmu.

6. Troubleshooting Cepat Setelah Instalasi

Radar tidak menyala sama sekali. Cek sekring dulu, lalu ukur tegangan di terminal display dengan multimeter. Di bawah 11 V saat scanner berputar = kabel power terlalu tipis atau sambungan kendor.

Layar penuh bintik padahal gain sudah kecil. Biasanya grounding buruk atau kabel data lewat terlalu dekat dengan kabel busi/alternator. Pisahkan jalur kabel data minimal 30 cm dari kabel mesin.

Echo target muncul tapi bearing-nya salah semua. Heading alignment belum dikalibrasi — ulangi langkah 3. Kalau sudah dikalibrasi tapi tetap salah, curigai kompas: lakukan kalibrasi deviasi kompas dulu.

Overlay di OpenCPN bergeser memutar. Sama seperti di atas: heading alignment. Kalau bergeser lurus (tidak memutar): cek posisi GPS dan datum peta.

Radar terdeteksi plugin tapi gambar tidak muncul. Pastikan radar dalam mode transmit (bukan standby) dan range di plugin sama dengan range di display radar.

7. Checklist Keamanan Sebelum Berlayar

Radar adalah alat bantu, bukan pengganti kewaspadaan. Sebelum berlayar dengan instalasi baru: pastikan scanner tidak terhalang tali saat berputar, semua baut bracket kencang, kabel tidak terjepit palka, dan kamu sudah mencoba overlay di pelabuhan dengan membandingkan echo dermaga melawan peta. Ingat aturan COLREG: radar tidak membebaskanmu dari kewajiban jaga visual. Selamat berlayar dengan lebih aman!

Komentar