Sistem Kontrol Terdistribusi Cooperative Automated Guided Vehicle Menggunakan Odroid dan Link Download File Referensi

https://eu2.contabostorage.com/00f3241116844f24b628f46d81abb929:st1/folder15/15337/template_doc_proposal_tugas_akhir_v2020_2.docx

2026-06-02 08:12:04 - Admin

<style> body {font-family: Arial, Helvetica, sans-serif; line-height: 1.6; margin:0; padding:0; background:#f9f9f9; color:#333;} header {background:#4A90E2; color:#fff; padding:20px 10px; text-align:center;} nav {background:#fff; padding:10px; box-shadow:0 2px 4px rgba(0,0,0,0.1);} nav a {margin:0 15px; color:#4A90E2; text-decoration:none; font-weight:bold;} main {max-width:960px; margin:auto; padding:20px;} h2 {color:#4A90E2; margin-top:30px;} img {max-width:100%; height:auto; display:block; margin:auto;} ul {margin-left:20px;} table {width:100%; border-collapse:collapse; margin:20px 0;} th, td {border:1px solid #ddd; padding:8px; text-align:center;} th {background:#f2f2f2;} .highlight {background:#e8f4ff; padding:5px 10px; border-left:4px solid #4A90E2;} .code {font-family: Consolas, monospace; background:#f4f4f4; padding:5px 10px; display:block; overflow-x:auto;} </style><header> <h1>Sistem Kontrol Terdistribusi Cooperative Automated Guided Vehicle (AGV) Menggunakan Odroid</h1></header><nav> <a href="#pendahuluan">Pendahuluan</a> <a href="#komponen">Komponen Utama</a> <a href="#arsitektur">Arsitektur Terdistribusi</a> <a href="#implementasi">Implementasi dengan Odroid</a> <a href="#keuntungan">Keuntungan</a> <a href="#tantangan">Tantangan & Solusi</a> <a href="#kesimpulan">Kesimpulan</a></nav><main> <section id="pendahuluan"> <h2>Pendahuluan</h2> <p>Automated Guided Vehicle (AGV) atau kendaraan pandu otomatis merupakan solusi penting dalam otomasi gudang, pabrik, serta fasilitas logistik. Pada sistem tradisional, setiap AGV biasanya dikendalikan secara independen oleh sebuah kontroler pusat. Pendekatan ini memiliki keterbatasan dalam hal skalabilitas, responsifitas, dan toleransi kegagalan.</p> <p>Untuk mengatasi permasalahan tersebut, muncul konsep <strong>Sistem Kontrol Terdistribusi Cooperative AGV</strong>. Dalam sistem ini, setiap AGV tidak hanya menerima perintah dari pusat, melainkan berkomunikasi langsung dengan AGV lain untuk berbagi informasi posisi, rute, dan status tugas. Hasilnya adalah koordinasi yang lebih cerdas, efisiensi jalur yang optimal, serta kemampuan menyesuaikan diri secara realtime terhadap gangguan.</p> <p>Platform perangkat keras <em>Odroid</em> komputer singleboard berbasis ARM dengan kemampuan pemrosesan tinggi, antarmuka I/O lengkap, serta dukungan Linux menjadi pilihan tepat untuk mengimplementasikan kontrol terdistribusi pada AGV.</p> </section> <section id="komponen"> <h2>Komponen Utama Sistem</h2> <ul> <li><strong>Odroid XU4 / N2+</strong> otak komputasi pada tiap AGV.</li> <li><strong>Sensor Navigasi</strong> LIDAR, kamera depth, IMU, dan encoder roda.</li> <li><strong>Modul Komunikasi</strong> WiFi 802.11ac, Ethernet, atau modul radio 5GHz untuk jaringan mesh.</li> <li><strong>Motor Driver</strong> kontrol kecepatan dan arah motor DC/servo.</li> <li><strong>Power Management</strong> baterai lithiumion, BMS, dan UPS kecil.</li> <li><strong>Software Stack</strong> ROS 2 (Robot Operating System), MQTT broker, dan algoritma koordinasi (misal: consensus, marketbased).</li> </ul> <img src="https://example.com/odroid-agv.jpg" alt="Diagram AGV dengan Odroid"> </section> <section id="arsitektur"> <h2>Arsitektur Terdistribusi</h2> <p>Arsitektur sistem dibagi menjadi tiga lapisan:</p> <ol> <li><strong>Lapisan Perangkat (Device Layer)</strong>: Mengumpulkan data sensor, menjalankan kontrol motor, serta mengirimkan status lokal.</li> <li><strong>Lapisan Komunikasi (Communication Layer)</strong>: Menggunakan protokol MQTT atau DDS (Data Distribution Service) untuk pertukaran pesan antarAGV dan ke/ dari server koordinasi.</li> <li><strong>Lapisan Koordinasi (Coordination Layer)</strong>: Menjalankan algoritma penjadwalan tugas, penghindaran tabrakan, dan perhitungan rute optimal secara kolaboratif.</li> </ol> <div class="highlight"> <p>Setiap unit Odroid menjalankan node ROS2 yang bersifat <em>peertopeer</em>. Tidak ada titik tunggal yang menjadi bottleneck; bila satu AGV mengalami kegagalan, jaringan tetap berfungsi karena keputusan dapat diredistribusi ke node lain.</p> </div> </section> <section id="implementasi"> <h2>Implementasi dengan Odroid</h2> <h3>1. Persiapan Sistem Operasi</h3> <pre class="code"># Unduh image Ubuntu 22.04 LTS untuk Odroidwget https://odroid.com/dl/ubuntu-22.04.img.xzxz -d ubuntu-22.04.img.xzsudo dd if=ubuntu-22.04.img of=/dev/sdX bs=4M conv=fsync</pre> <h3>2. Instalasi ROS2 (Foxy)</h3> <pre class="code">sudo apt update && sudo apt install -y curl gnupg2 lsb-releasesudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -sudo sh -c 'echo "deb http://packages.ros.org/ros2/ubuntu $(lsb_release -cs) main" > /etc/apt/sources.list.d/ros2-latest.list'sudo apt updatesudo apt install -y ros-foxy-desktopsource /opt/ros/foxy/setup.bash</pre> <h3>3. Membuat Node Koordinasi</h3> <p>Contoh node Python yang menerbitkan posisi AGV dan mendengarkan posisi sesama AGV melalui MQTT.</p> <pre class="code">import rclpyfrom rclpy.node import Nodeimport paho.mqtt.client as mqttimport jsonclass CoopNode(Node): def __init__(self): super().__init__('cooperative_agv') self.declare_parameter('agv_id', 'AGV_01') self.id = self.get_parameter('agv_id').get_parameter_value().string_value self.mqtt_client = mqtt.Client(self.id) self.mqtt_client.on_message = self.on_message self.mqtt_client.connect('mqtt-broker.local', 1883, 60) self.mqtt_client.subscribe('agv/+/state') self.mqtt_client.loop_start() self.timer = self.create_timer(0.5, self.publish_state) def publish_state(self): state = { 'id': self.id, 'x': 12.3, # dibaca sensor 'y': 4.7, 'theta': 0.78, 'task': 'transport' } self.mqtt_client.publish(f'agv/{self.id}/state', json.dumps(state)) def on_message(self, client, userdata, msg): data = json.loads(msg.payload.decode()) # proses data teman AGV untuk menghindari tabrakan self.get_logger().info(f'Received {data["id"]} position') # ... logika perencanaan kolaboratif ...def main(args=None): rclpy.init(args=args) node = CoopNode() rclpy.spin(node) node.destroy_node() rclpy.shutdown()if __name__ == '__main__': main()</pre> <h3>4. Pengujian di Lingkungan Simulasi</h3> <p>Gunakan <em>Gazebo</em> atau <em>Webots</em> untuk mensimulasikan 510 AGV berkomunikasi. Verifikasi bahwa jalur masingmasing menyesuaikan secara dinamis ketika satu AGV menunda atau mengalami gangguan.</p> </section> <section id="keuntungan"> <h2>Keuntungan Sistem Terdistribusi</h2> <ul> <li><strong>Skalabilitas Tinggi</strong> Menambah AGV hanya memerlukan penambahan node Odroid tanpa mengubah infrastruktur pusat.</li> <li><strong>Reliabilitas</strong> Tidak ada single point of failure; kegagalan satu unit tidak menghentikan operasi.</li> <li><strong>Optimasi Jalur RealTime</strong> Informasi posisi secara bersamaan memungkinkan algoritma <em>collisionavoidance</em> yang lebih akurat.</li> <li><strong>Biaya Efektif</strong> Odroid memiliki rasio kinerjabiaya yang lebih baik dibandingkan PC industri klasik.</li> <li><strong>Fleksibilitas Pengembangan</strong> Dukungan ROS 2 memudahkan integrasi sensor, AI, dan algoritma kontrol lanjutan.</li> </ul> </section> <section id="tantangan"> <h2>Tantangan &amp; Solusi</h2> <table> <tr><th>Tantangan</th><th>Solusi yang Direkomendasikan</th></tr> <tr><td>Latensi komunikasi jaringan mesh</td><td>Gunakan protokol QoS tinggi (DDS) dan prioritas pesan kritis; desain topologi jaringan redundan.</td></tr> <tr><td>Konsumsi daya Odroid pada pemrosesan AI</td><td>Optimalkan model AI dengan TensorRT atau ONNX; manfaatkan mode lowpower pada CPU-GPU.</td></tr> <tr><td>Sinkronisasi waktu antarAGV</td><td>Implementasikan NTP/PTP (Precision Time Protocol) lewat jaringan Ethernet.</td></tr> <tr><td>Manajemen versi perangkat lunak pada banyak node</td><td>Gunakan Docker atau balenaEngine untuk containerisasi; CI/CD pipeline otomatis.</td></tr> </table> </section> <section id="kesimpulan"> <h2>Kesimpulan</h2> <p>Sistem kontrol terdistribusi cooperative AGV yang berbasis Odroid memberikan fondasi kuat untuk otomasi logistik masa depan. Dengan kemampuan pemrosesan lokal yang memadai, dukungan ekosistem ROS2, dan fleksibilitas jaringan mesh, solusi ini mengatasi kelemahan arsitektur terpusat tradisional. Implementasi yang tepatmeliputi pemilihan sensor, protokol komunikasi, serta algoritma koordinasiakan menghasilkan operasi yang lebih cepat, handal, dan mudah diperluas.</p> <p>Pengembangan selanjutnya dapat menambahkan lapisan pembelajaran mesin untuk prediksi beban kerja, integrasi dengan sistem manajemen gudang (WMS), serta peningkatan keamanan siber melalui enkripsi endtoend pada kanal MQTT/DDS.</p> </section></main>

Lebih banyak