SKENARIO HARDWARE CONTROL FORMASI SEGITIGA SAMASISI

Cara Kerja Hardware Control Formasi Autonomous Buoy

"Kontrol Formasi Segitiga sama sisi yang dibentuk oleh tiga buah Buoy ini adalah Pengendalian Formasi dengan membaca data GPS dan Arah kompas masing masing buoy. Dimana Formasi segitiga sama sisi dibentuk dengan referensi dari kordinat Buoy 1 untuk menemukan target posisi bagi Buoy 2 dan Buoy 3. Selanjutnya sistem Kontrol Formasi akan menuggu laporan kordinat GPS dari masing-masing Buoy 2 dan Buoy 3. Setelah data Kordinat GPS masuk, maka sistem Kontrol Formasi akan mengirimkan sinyal perintah gerakan dari posisi Buoy 2 menuju target Posisi Buoy 2 dan Posisi terkini Buoy 3 menuju target posisi Buoy 3. Dimana arah gerak ditentukan oleh selisih sudut antara Heading (sudut hadap masing-masing Buoy 2 dan 3) dengan arah yang harus dituju ke posisi target Buoy 2 dan 3. dari selisih itu akan dipilih sudut terkecil yang akan menentukan perintah steering. Perintah steering ini akan terbagi menjadi 4 yaitu : Turn Left, Turn Right, Straight dan Stop. Perintah Steering inilah yang dikirimkan ke masing-masing Buoy 2 dan 3 untuk membimbing menuju posisi kordinat targetnya."

berikut adalah tahapan yang telah dilakukan dalam pengembangan Hardware Formation Control Autonomous Buoys mulai dari tahap perencanaan sampai dengan pengambilan data pengujian

Perhitungan GPS
Perhitungan GPS
Perhitungan GPS Lihat Detail

1. Menghitung Jarak Antara Dua Koordinat GPS

Apa itu Latitude dan Longitude?

Latitude (Lintang): Koordinat yang menunjukkan posisi utara atau selatan terhadap garis khatulistiwa (0°). Nilai positif menunjukkan belahan bumi utara (N), sedangkan nilai negatif menunjukkan belahan bumi selatan (S). Contoh: -6.118 berarti berada di belahan bumi selatan.

Longitude (Bujur): Koordinat yang menunjukkan posisi timur atau barat terhadap garis meridian utama (0° di Greenwich, Inggris). Nilai positif menunjukkan arah timur (E), sedangkan nilai negatif menunjukkan arah barat (W). Contoh: 106.838 berarti berada di belahan timur.

Bagaimana Mengenali Latitude dan Longitude dalam Data GPS?

Data GPS biasanya berisi pasangan angka yang menunjukkan koordinat lokasi. Format umumnya:

Dalam sistem GPS, data ini sering dikirim dalam format NMEA dan bisa diolah untuk mendapatkan koordinat yang tepat.

Jarak antara dua titik di permukaan bumi dapat dihitung menggunakan rumus Haversine:

            d = 2 * R * asin(sqrt(sin²((lat2 - lat1) / 2) + cos(lat1) * cos(lat2) * sin²((lon2 - lon1) / 2)))
            

Penjelasan: Rumus ini digunakan untuk menghitung jarak antara dua titik pada permukaan bumi yang memiliki koordinat GPS yang berbeda. Fungsi ini berguna untuk menentukan seberapa jauh dua Buoy berada satu sama lain berdasarkan posisi GPS mereka.

Bahan Bacaan:

Formasi Segitiga Lihat Detail

2. Menentukan Koordinat Buoy2 dan Buoy3 untuk Segitiga Sama Sisi

Apa itu Formasi Segitiga Sama Sisi di Permukaan Bumi?

Formasi segitiga sama sisi adalah susunan tiga titik yang membentuk segitiga dengan panjang sisi yang sama. Pada permukaan bumi, karena bentuknya yang melengkung (sferis), koordinat tidak bisa dihitung hanya dengan geometri Euclidean biasa, tetapi harus menggunakan perhitungan geodesi seperti rumus Haversine atau metode koordinat kartesian.

Menentukan Koordinat (Latitude, Longitude)

Jika Buoy1 berada di koordinat (-6.118, 106.838), maka kita ingin menentukan posisi Buoy2 dan Buoy3 sehingga jaraknya tetap 20 meter dan membentuk segitiga sama sisi. Langkah-langkahnya adalah:

  1. Gunakan rumus Haversine untuk menghitung perubahan koordinat berdasarkan jarak dan sudut tertentu.
  2. Buoy2 dan Buoy3 harus berada pada sudut 120° dan 240° terhadap Buoy1 dalam sistem koordinat lokal.
  3. Konversi koordinat dari sistem kartesian kembali ke format latitude dan longitude.

Menjaga Formasi dengan GPS

Setiap buoy dilengkapi dengan modul GPS untuk mengetahui posisi real-time. Agar formasi tetap stabil:

Referensi Bacaan:

Kontrol Motor Lihat Detail

3. Mengarahkan Buoy ke Formasi Segitiga Sama Sisi

Jika Buoy2 dan Buoy3 ingin menuju posisi formasi, maka kontrol motor harus disesuaikan:

Penjelasan: Sistem kontrol motor ini memungkinkan Buoy2 dan Buoy3 untuk bergerak sesuai dengan arah yang diinginkan. Dengan pengaturan motor yang tepat, Buoy dapat menuju formasi segitiga dengan tepat. Pengaturan motor ini memungkinkan gerakan ke kiri, kanan, lurus, atau berhenti.

Kontrol Formasi: Pada tahap ini, formation control dilakukan oleh server yang menjalankan sebuah script Python dengan algoritma tertentu (Fuzzy 2 untuk mengkalkulasi selisih). Script ini menerima data koordinat dari Buoy1, Buoy2, dan Buoy3, lalu mengkalkulasi posisi yang seharusnya untuk Buoy2 dan Buoy3 guna membentuk konfigurasi formasi segitiga sama sisi dengan panjang sisi 20 meter pada case ini. Program server kemudian mengirimkan data untuk menggerakkan Buoy2 dan Buoy3 sambil terus menerus membaca koordinat yang dikirim oleh Buoy2 dan Buoy3 untuk menentukan perintah harus membelok ke kanan atau kiri menuju arah koordinat target. Perintah ini dikirim dalam bentuk perintah menggerakkan motor propeller sebelah kanan dan kiri, menjalankan salah satunya atau menjalankan keduanya jika Buoy bersangkutan harus berjalan lurus menuju koordinat target, dan menghentikan keduanya setelah posisi target tercapai.

Bahan Bacaan:

Transmisi Data Lihat Detail

4. Sistem Transmisi Data dan Kontrol

Data dari setiap Buoy dikirim ke internet dan diterima oleh server yang menjalankan script Python dengan algoritma kontrol posisi.

Server kemudian mengirimkan perintah kepada Buoy2 dan Buoy3 agar bergerak menuju posisi yang didefinisikan oleh Buoy1.

Buoy1 sebagai referensi tetap diam hingga formasi terbentuk.

Proses pembentukan formasi dapat dipantau melalui web page pada portal: https://pandawatechno.com/ABuoy/

Penjelasan: Data dari Buoy1 dan buoys lainnya dikirim ke server untuk dihitung posisi mereka dan memberikan perintah yang tepat. Server menggunakan algoritma untuk menghitung posisi dan mengarahkan Buoy2 dan Buoy3 sesuai dengan formasi yang diinginkan. Proses ini memungkinkan Buoy untuk berkoordinasi secara otomatis dan membentuk formasi segitiga.

Bahan Bacaan:

Transmisi Data Formation Control Testing Formation Control Testing Lihat Detail

5. Realisasi Hardware Autonomous Buoy

Tahap 1: Perancangan Flow Chart Program

Flow chart program dibuat untuk menggambarkan cara kerja sistem secara keseluruhan. Berikut adalah langkah-langkah kerja sistem:

  1. Buoy harus ditempatkan di udara terbuka tanpa hambatan dengan antena GPS langsung menghadap ke langit.
  2. Setelah pertama kali dihidupkan, sistem akan mencari sambungan WiFi dan server.
  3. Setelah tersambung, sistem akan menunggu sinyal GPS hingga didapatkan sinyal yang valid dari setidaknya 3-4 satelit (waktu sekitar 5-7 menit tergantung kondisi lingkungan).
  4. Setelah sinyal GPS valid diterima, Buoy akan mengirim data ke server yang terdiri dari: Latitude, Longitude, dan Heading.
  5. Server harus dalam kondisi aktif dan akan memastikan ketiga Buoy telah mengirimkan data.
  6. Setelah data diterima, server akan mengirim perintah kepada Buoy2 dan Buoy3 untuk bergerak ke posisi target dengan Buoy1 tetap diam sebagai titik referensi.
  7. Perintah yang dikirim tergantung pada kalkulasi steering di server, dengan 4 kemungkinan perintah:
    • TURN LEFT: Motor kanan berputar, motor kiri diam.
    • TURN RIGHT: Motor kanan diam, motor kiri berputar.
    • STRAIGHT: Buoy bergerak lurus pada sudut tertentu jika heading telah sesuai dengan course (selisih di bawah 5 derajat).
    • STOP: Ketika Latitude dan Longitude mendekati target, server mengirim perintah untuk menghentikan kedua motor.

Dengan sistem ini, formasi segitiga sama sisi dapat tercapai secara otomatis.

Tahap 2: Perancangan Elektronik dan Pemrograman

Pada tahap awal, perangkat keras utama disusun dan dirakit dengan komponen sebagai berikut:

  • ESP8266: Sebagai unit pemrosesan utama yang mengontrol komunikasi dan pergerakan buoy.
  • GPS Neo6M: Untuk menentukan posisi koordinat buoy secara real-time.
  • Motor DC dengan propeler (2 unit): Sebagai sistem penggerak utama buoy untuk bergerak dalam air.
  • QMC5883: Sebagai digital kompas yang digunakan untuk membaca heading atau sudut hadap buoy. Data ini penting untuk dikirimkan ke server bersama dengan data GPS latitude dan longitude. Heading sebenarnya dapat diperoleh dari GPS, tetapi membutuhkan waktu tunggu yang lama dan tidak responsif dalam pembaruan datanya. Modul QMC5883 jauh lebih cepat dan lebih efisien dalam memberikan informasi arah buoy secara real-time.

Setelah perakitan selesai, perangkat lunak dikembangkan menggunakan bahasa pemrograman Arduino (C++) untuk mengontrol komunikasi antara buoy dan server. Data posisi dikirim melalui koneksi WiFi ke server, di mana algoritma kontrol posisi akan menentukan pergerakan yang diperlukan untuk membentuk formasi yang diinginkan.

Tahap 3: Desain dan Bentuk Fisik Buoy

Pada tahap ini, pemilihan bentuk buoy menjadi faktor penting untuk memastikan stabilitas dan kemampuan manuver yang optimal.

  • Bentuk Setengah Bola: Dipilih karena memberikan stabilitas yang lebih baik dan lebih mudah bermanuver dibandingkan bentuk donat.
  • Keunggulan bentuk setengah bola:
    • Mengurangi hambatan air saat bergerak.
    • Lebih responsif terhadap perubahan arah, sehingga lebih mudah dikontrol.
    • Distribusi berat yang lebih stabil dibandingkan bentuk lainnya.

Dalam perancangan ini, fokus utama lebih diarahkan pada pengembangan kontrol elektronik dan perangkat lunak pengendali, sementara desain fisik buoy lebih ditentukan oleh ketersediaan perangkat yang ada di pasaran. Saat ini, tersedia cetakan setengah bola dengan diameter 24 cm, yang dianggap memadai untuk menempatkan perangkat elektronik kontrol dan memiliki variasi warna yang banyak yang bisa digunakan untuk mengidentifikasi Buoy dari jarak jauh

Setelah desain buoy dikembangkan, pengujian dilakukan untuk memastikan bahwa buoy dapat bergerak secara mandiri dan mengikuti algoritma formasi yang telah ditentukan.

Pengujian Manual per-unit Buoy dapat dilakukan melalui web: Test Page

Pengujian Formation Control dapat dipantau melalui web: Formation Control Monitor

Lihat Detail

6. Pengujian Formation Control Buoy

Pengujian Manual/ Individual:

Pengujian pertama formasi segitiga sama sisi dilakukan di lokasi perairan darat yaitu perairan buatan di area perumahan Bekasi.

Pengujian ini berlangsung selama hingga paling lama 1.5 jam karena menunggu sinyal GPS yang valid dan berhasil mendapatkan data, karena sistem ini baru akan berjalan apabila ketiga buoy telah sama-sama menerima data yang valid. Namun pengujian di perairan buatan terkendala hal-hal sebagai berikut: