Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol High-Level
Sistem Kendali Robot
TKC306 - Robotika
Eko Didik Widianto
Sistem Komputer - Universitas Diponegoro
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol High-Level
Review Kuliah
� Prinsip dasar dan mekanisme kontrol robot
� Implementasi kendali ke dalam rangkaian berbasis mikroprosesor
� Low-level dan High-level Control pada robot
� Teknik kontrol On/Off
� Kontrol posisi, kecepatan dan akselerasi
� Teknik Proporsional (P), Integral (I), Derivatif (D) dan
Kombinasi Ketiganya
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol High-Level
Kompetensi Dasar
1. [C2] Mahasiswa dapat menjelaskan prinsip dasar mekanisme kendali dalam robotika
2. [C3] Mahasiswa dapat menggunakan teknik kontrol On/Off secara input dan output untuk kendali robot
3. [C3] Mahasiswa dapat menggunakan teknik kendali proporsional (P), kendali Integral (I), kendali Derivatif (D) dan kendali PID untuk kendali robot
Acknowledgement:
1. Christopher Batten, Maslab IAP Robotics Course, 2005
� slide, gambar
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol High-Level
Bahasan
Sistem Kontrol Robot Sistem Kontrol Robot
Kontrol High-Level & Low-Level
Sistem Kontrol High-Level Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM
Contoh Kontrol FSM
FSM Multi-Thread
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol Robot Kontrol High-Level &
Low-Level
Sistem Kontrol High-Level
Bahasan
Sistem Kontrol Robot Sistem Kontrol Robot
Kontrol High-Level & Low-Level
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM
Contoh Kontrol FSM FSM Multi-Thread
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol Robot Kontrol High-Level &
Low-Level
Sistem Kontrol High-Level
Sistem Kontrol Robot
� Membuat sistem kontrol untuk robot beroda merupakan suatu tantangan
� Robot beroda melibatkan komponen yang saling berinteraksi
� Sistem kontrol harus mengintegrasikan komponen tersebut sehingga robot dapat mencapai tujuan yang diinginkan
� Line tracing, wall following, object avoidance, object searching
� Speed, load
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol Robot Kontrol High-Level &
Low-Level
Sistem Kontrol High-Level
Perilaku Robot
� Dasar dari sistem kontrol adalah perilaku
� Perilaku harus didefinisikan dengan baik
� Tiap perilaku harus dapat diuji secara independen
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol Robot Kontrol High-Level &
Low-Level
Sistem Kontrol High-Level
Sasaran Kontrol
� Sasaran utama adalah untuk menyusun
perilaku-perilaku sehingga tujuan yang diinginkan
dapat tercapai
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol Robot Kontrol High-Level &
Low-Level
Sistem Kontrol High-Level
Sensor Robot
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol Robot Kontrol High-Level &
Low-Level
Sistem Kontrol High-Level
Bahasan
Sistem Kontrol Robot Sistem Kontrol Robot
Kontrol High-Level & Low-Level
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM
Contoh Kontrol FSM
FSM Multi-Thread
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol Robot Kontrol High-Level &
Low-Level
Sistem Kontrol High-Level
Sistem Kontrol Robot
� Sistem kontrol high-level
� Memprogram perilaku untuk mencapai tujuan yang diinginkan
� Contoh: Pendekatan Finite State Machine
� Sistem kontrol low-level
� Memprogram hardware untuk mendapatkan perilaku yang diinginkan
� Contoh:
Kontroler PID untuk kecepatan robot Kontroler PID untuk sistem steering robot
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM Contoh Kontrol FSM FSM Multi-Thread
Bahasan
Sistem Kontrol Robot Sistem Kontrol Robot
Kontrol High-Level & Low-Level
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM
Contoh Kontrol FSM
FSM Multi-Thread
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM Contoh Kontrol FSM FSM Multi-Thread
Pemodelan Perilaku
� Perilaku sebagai state (keadaan)
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM Contoh Kontrol FSM FSM Multi-Thread
Perilaku sebagai Satu Keadaan
� Tiap state adalah sebuah perilaku
� Perilaku dihubungkan satu dengan yang lain
membentuk sistem kontrol loop terbuka
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM Contoh Kontrol FSM FSM Multi-Thread
Maju 2 Langkah
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM Contoh Kontrol FSM FSM Multi-Thread
Putar ke Kanan 90 o
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM Contoh Kontrol FSM FSM Multi-Thread
Maju 2 Langkah
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM Contoh Kontrol FSM FSM Multi-Thread
Bahasan
Sistem Kontrol Robot Sistem Kontrol Robot
Kontrol High-Level & Low-Level
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM
Contoh Kontrol FSM
FSM Multi-Thread
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM Contoh Kontrol FSM FSM Multi-Thread
Problem Loop Terbuka
� Kalau kondisi area atau daerah robot tidak diketahui? misalnya, ada halangan
� Tujuan tidak akan tercapai, butuh sensor yang membentuk sistem kontrol loop tertutup
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM Contoh Kontrol FSM FSM Multi-Thread
Kontrol Loop Tertutup
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM Contoh Kontrol FSM FSM Multi-Thread
Deteksi Obstacle
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM Contoh Kontrol FSM FSM Multi-Thread
Menemui Obstacle
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM Contoh Kontrol FSM FSM Multi-Thread
Loop Sampai Tidak Ada Halangan
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM Contoh Kontrol FSM FSM Multi-Thread
Lanjutkan Jalan
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM Contoh Kontrol FSM FSM Multi-Thread
Bahasan
Sistem Kontrol Robot Sistem Kontrol Robot
Kontrol High-Level & Low-Level
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM
Contoh Kontrol FSM FSM Multi-Thread
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM Contoh Kontrol FSM FSM Multi-Thread
Implementasi FSM ke Program
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM Contoh Kontrol FSM FSM Multi-Thread
Implementasi FSM ke Program (Java)
� Implementasi perilaku sebagai fungsi dg parameternya
� Switch pertama menangani transisi state (next_state)
� Switch kedua menangai perilaku untuk tiap state
(output, current_state)
� Variabel state
menggunakan enum
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM Contoh Kontrol FSM FSM Multi-Thread
Pernyataan While
� Kode?
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM Contoh Kontrol FSM FSM Multi-Thread
Bahasan
Sistem Kontrol Robot Sistem Kontrol Robot
Kontrol High-Level & Low-Level
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM
Contoh Kontrol FSM FSM Multi-Thread
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM Contoh Kontrol FSM FSM Multi-Thread
FSM untuk Menemukan Bola Merah
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM Contoh Kontrol FSM FSM Multi-Thread
FSM untuk Menemukan Bola Merah
� Kalau bola tertutup obstacle?
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM Contoh Kontrol FSM FSM Multi-Thread
Robot Tidak Menemukan Bola?
� Robot mempunyai masalah untuk mencari bola merah
� Robot mencari-cari bola seluas area pencarian
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM Contoh Kontrol FSM FSM Multi-Thread
Debug untuk Verifikasi Perilaku dan Transisi State
� Debug sistem kontrol FSM
� Memverifikasi perilaku dan transisi state secara independen
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM Contoh Kontrol FSM FSM Multi-Thread
Perbaikan FSM untuk Implementasi yang Lebih Baik
� Mengganti wander yang random dengan state gerak
yang terbias menuju region yang belum tereksplore
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM Contoh Kontrol FSM FSM Multi-Thread
Perbaikan Kode FSM
� Mengintegrasikan kode kamera ke perilaku wander sehingga robot selalu mencari bola merah
� Pemrosesan image membutuhkan waktu
(time-consuming), sehingga mungkin tidak dapat
mengecek obstacle yang dekat
� Tidak mengecek kamera saat berputar
� Perilaku Wander menjadi monolitik
� Terdiri beberapa aspek yang terintegrasi
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM Contoh Kontrol FSM FSM Multi-Thread
Bahasan
Sistem Kontrol Robot Sistem Kontrol Robot
Kontrol High-Level & Low-Level
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM
Contoh Kontrol FSM
FSM Multi-Thread
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM Contoh Kontrol FSM FSM Multi-Thread
Sistem Kontrol FSM Multi-thread
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM Contoh Kontrol FSM FSM Multi-Thread
Lebih Banyak Data Sensor
Sistem Kendali Robot
@2012,Eko Didik Widianto Sistem Kontrol Robot
Sistem Kontrol High-Level
Finite State Machine (FSM) Sistem Kontrol Loop Tertutup Implementasi FSM Contoh Kontrol FSM FSM Multi-Thread