PENGATURAN KESEIMBANGAN ROBOT BERODA DENGAN FUZZY LOGIC Darmawan Dwi Putra Program Studi Sistem Komputer, Universitas Bina Nusantara,
[email protected]
Brian Staphen Program Studi Sistem Komputer, Universitas Bina Nusantara,
[email protected]
Satrio Dewanto Program Studi Sistem Komputer, Universitas Bina Nusantara,
[email protected]
ABSTRACT In this research, purpose to make arrangements wheeled balancing robot with fuzzy logic. Based on the theory of inverted pendulum. A control system as needed to control the system so the robot could have balanced and stable state. In this research, designed the system balance by applying fuzzy logic control on a two-wheeled robot. The problems that arise in balancing the robot is how to maintain the condition of the set point 0. In this thesis, the problem solved by applying the balancing robot control algorithms, one of which controls the use of fuzzy logic membership function 7. While the sensor is an accelerometer and a gyroscope used. Equilibrium position on the two-wheeled robot around -0.65 ° to 0.65 °. Keywords: Invrted Pendulum, Fuzzy Logic, Balancing.
ABSTRAK Pada penelitian ini dilakukan untuk melakukan pengaturan keseimbangan robot beroda dengan fuzzy logic. Didasarkan pada teori pendulum terbalik. Sebuah sistem kontrol yang sesuai yang dibutuhkan untuk mengontrol sistem sehingga seimbang dan stabil. Tujuan utama dari tugas akhir ini adalah dengan menggunakan strategi kontrol yang baik untuk menjaga robot dalam keadaan tegak lurus. Permasalahan yang timbul pada balancing robot adalah cara mempertahankan kondisi pada set point 0. Pada tugas akhir ini, permasalahan pada balancing
robot diselesaikan dengan menerapkan algoritma pengontrol yang salah satunya kontrol fuzzy logic dengan menggunakan 7 fungsi keanggotaan. Sedangkan sensor yang digunakan adalah accelerometer dan gyroscope. Posisi setimbang pada robot beroda dua sekitar -0,65° sampai 0,65°. Kata Kunci: Invrted Pendulum, Fuzzy Logic , Keseimbangan.
PENDAHULUAN Fuzzy Logic merupakan cara untuk memetakan suatu ruang input ke dalam suatu ruang output, variable input dapat diberikan nilai berupa parameter-parameter sesuai dengan keinginan kita. Dan untuk output juga dapat diberikan nilai parameter sesuai yang kita inginkan. Pada penelitian ini bertujuan untuk mensetimbangkan Robot Beroda (RB) dengan fuzzy logic. Fuzzy Logic ini telah menjadi penelitian yang sering dilakukan oleh banyak orang agar menjadi sebuah pendukung untuk mengontrol input-an dari suatu sensor yang menghasilkan nilai berupa derajat. Fuzzy Logic cukup mudah untuk pengimplentasiannya karena sesuai dengan apa yang kita inginkan berdasarkan keluaran dari sensor. Seiring dengan berkembangnya teknologi yang ada sekarang ini, khususnya di Indonesia yang ingin bertumbuh dengan mengembangkan teknologi yang ada sekarang ini untuk mengikuti perkembangan yang ada di dunia global. Dalam hal ini dengan semakin banyaknya produsen yang mengembangkan teknologi untuk membuat robot yang mendekati sempurna. Dalam pengaturan keseimbangan robot ini terdapat banyak metode yang bisa digunakan, salah satu yang paling sering digunakan adalah PID. “Inverted Pendulum Control: A Brief Overview” penelitian ini bertujuan untuk mempelajari tentang pengendalian inverted pendulum [1]. “Kesetimbangan Robot Beroda Dua Menggunakan Metode Fuzzy Logic” penelitian Balancing Robot dapat digunakan sebagai prototipe awal human transporter yang handal dan murah. [2]. “Perencanaan Balancing Robot Dengan Dua Roda” penelitian ini berdasar pada teori pendulum terbalik dengan menggunakan strategi control yang baik untuk menjaga robot dalam keadaan tegak lurus. [3]. “Control of Non-Linear Inverted Pendulum using Fuzzy Logic Controller” Fuzzy kontroler adalah kontroler cerdas berdasarkan model logika fuzzy yaitu tidak memerlukan pemodelan matematika yang akurat dari sistem atau perhitungan yang kompleks dan dapat menangani sistem linear yang kompleks dan nonlinear tanpa linierisasi. [4]. “Revisiting The Inverted Pendulum On A Moving Cart” kesederhanaan sistem keseluruhan linierisasi membuat beberapa asumsi. [5]. “Design of an Omni-directional Spherical Robot: Using Fuzzy Control” Keuntungan utama dari kontroler fuzzy yang diusulkan dapat menangani nonlinier yang tidak diketahui dan gangguan dari luar. [6]. “A Complementary Filter for Attitude Estimation of a Fixed-Wing UAV” complementary filter diusulkan untuk menggabungkan keluaran accelerometer yang rendah frekuensinya dengan gyroscope yang keluarannya frekuensi tinggi . [7] Dan pada umumnya penelitian-penelitian sebelumnya menggunakan fuzzy logic sebagai kontroler yang baik, ada pun yang menggunakan dua roda metodenya sudah umum, tetapi kami menggunakan sebuah metode Fuzzy Logic yang mana metode ini akan mengontrol keseimbangan dari robot beroda ini tentunya dengan dukungan sensor yang mempuni. Pada penelitian ini, kami melakukan pengaturan keseimbangan pada RB ini dengan cakupan dari posisi setimbangnya sampai dalam posisi miring 10 derajat. Informasi input yang diberikan berupa data sudut kemiringan menggunakan sensor. Metode yang digunakan untuk mengontrol yaitu Fuzzy Logic. Output yang dihasilkan berupa nilai PWM (Pulse-Width Modulation) untuk mengatur kecepatan motor untuk bergerak menuju posisi setimbang.
Gambar 1. Tampilan mekanik yang digunakan
Sensor
Mikro kontroler
Driver Motor
Motor DC
Posisi Setimbang
Gambar 2. Diagram Blok Secara Umum
Dalam diagram blok diatas nilai masuk ke sensor lalu diproses melalui mikrokontroler dari nilai mikrokontroler akan menghasilkan nilai PWM (Pulse-Width Modulation) dimana nilai ini akan diberikan ke motor DC sehingga robot akan mendapatkan posisi yang setimbang.
METODE PENELITIAN Dalam melakukan penelitian pengaturan keseimbangan robot beroda dalam logika fuzzy, yang dilakukan pertama adalah membaca jurnal yang berkaitan dengan penelitian dan mengumpulkan informasi yang sesuai dengan penelitian yang akan dilakukan. Kedua melakukan perancangan bentuk dan komponen mekanis yang akan digunakan, kemudian diintegrasikan menjadi satu kesatuan. Terakhir membuat perangkat lunak, melakukan pengujian dan tahap evaluasi, pengumpulan dan analisis data dari hasil pengujian yang dilakukan. Untuk pengambilan data ke komputer dilakukan langkah-langkah berikut. a. b. c. d. e.
Hubungkan kabel micro USB dari komputer ke modul kontroler Nyalakan Arduino IDE pada komputer Mengatur dan aktifkan board dan port serial pada Arduino IDE Klik upload pada Arduino IDE. Buka Serial monitor untuk melihat data yang dikeluarkan.
Setelah seluruh sistem selesai diimplementasikan ke dalam bentuk hardware, selanjutnya dilakukan pengambilan sampel data untuk melihat hasil kerja sistem. Fuzzy Logic Percobaan ini dilakukan untuk menentukan fungsi keanggotaan yang optimal sebagai sistem kendali dengan set point 0. Yang pertama dilakukan adalah menentukan fungsi keanggotaan 1 untuk menyatakan Negative Big, fungsi keanggotaan 2 menyatakan Negative Medium, fungsi keanggotaan 3 menyatakan Negative Small, fungsi keanggotaan 4 menyatakan Zero, fungsi keanggotaan 5 menyatakan Positive Small, fungsi keanggotaan 6 menyatakan Positive Medium, fungsi keanggotaan 7 menyatakan Positive Big. Nilai untuk parameter Zero yang optimal dengan set point 0. Percobaan ini dilakukan untuk mengetahui nilai keluaran dari fuzzy logic yang memiliki respon sistem yang baik untuk set point 0 (titik kesetimbangan). Pada percobaan ini menggunakan rules sebagai berikut:
Tabel 1 Rules Fuzzy Logic
Gyroscope
Accelerometer
ADC
ADC
Complementary Filter _ x
+
Set Point 0
Fuzzy Logic
PWM
Motor Driver
Motor Kiri
Motor Kanan
Posisi Robot
Gambar 2. Diagram Blok
Diagram blok diatas menjelaskan hubungan antara kedua sensor yang dipakai dalam melakukan penelitian dimana masing-masing sensor berperan sebagai input pada Arduino Romeo 2, lalu Arduino Romeo 2 memberi perintah ke driver motor sebagai pengendali motor DC, setelah motor DC diberikan nilai maka posisi robot akan bergerak mencapai set point 0 yang diberikan sampai posisi setimbang. Mulai
Inisialisasi
While (1)
Ambil nilai dari Gyroscope dan Accelerometer
Hitung nilai dari Gyro dan Accel dalam derajat
Kombinasikan sudut dari Gyro dan Accel dengan filter complementary
Sudut=0?
Ya
Tidak Hitung nilai error, kontrol fuzzy
Keluaran PWM
Respon motor Gambar 3. Diagram Alir
Mulai merupakan kondisi saat robot aktif, selanjutnya robot akan merima perintah inisialisasi dimana nilai tersebut akan masuk ke variabel, untuk melakukan proses while lalu akan diproses mencari nilai awal dari gyroscope dan accelerometer yang berupa kecepatan, percepatan setelah mendapatkan nilai dari kedua sensor tersebut lalu melakukan perhitungan dari kecepatan dan percepatan akan mendapatkan derajat yang akan digunakan untuk input dari fuzzy logic yang dipakai, dari derajat yang didapat akan dikombinasikan dengan filter complementary dimana derajat yang didapat lebih baik / noise yang lebih sedikit dibandingkan sebelum melakukan filtering. Ketika sudah mendapatkan derajat yang diinginkan dari fuzzy logic maka akan memproses ke sudut yang di anggap mencapai posisi setimbang atau posisi tengah robot yang bernilai 0, jika ya akan melakukan looping ke while apakah derajat nya apakah sudah sesuai dengan sudut yang diinginkan atau tidak, jika tidak maka akan melakukan perhitungan nilai error
dimana nilai tersebut akan di kontrol di fuzzy logic dan akan menghasilkan PWM yang dibutuhkan pada respon motor sampai posisi sudut yang diinginkan.
HASIL DAN BAHASAN Dari beberapa percobaan didapatkan hasil dari tipa percobaan yang berbada. Seperti yang dijelaskan sebelumnya, tujuan utama penerapan complementary filter adalah untuk mendapatkan hasil yang terbaik dari 2 input yang berbeda yaitu data dari accelerometer dan gyroscope untuk tujuan yang sama mendapatkan sudut dari objek. Complementary filter memberikan hasil yang terbaik dari keduanya. Pada jangka pendek, menggunakan data dari gyroscope, karena sangat baik dan tidak rentan terhadap gangguan dari luar. Pada jangka panjang, menggunakan data dari accelerometer, karena hasilnya tidak menyimpang. Bentuk sederhana dari filter ini adalah sebagai berikut.
Agar bekerja secara optimal, parameter-parameter dari complementary filter perlu di tuning. Percobaan ini dilakukan untuk mencari nilai dari parameter-parameter complementary filter yaitu proses noise. Nilai dari accelerometer dan gyroscope diatur tergantung dari sensor mana yang lebih kita percaya. Nilai yang lebih rendah bertanda bahwa sensor tersebut lebih dipercaya dari sensor yang lain. Masing-masing percobaan dilakukan 5 kali. Tabel 2 Data Pengujian Dengan Busur
Pada percobaan diatas, dibandingkan nilai sudut dari pembacaan accelerometer yang terbaca pada serial monitor dengan pembacaan menggunakan busur derajat. Dimana data ini akan digunakan untuk input dari fuzzy logic.
Gambar 4 Data Pengujian dengan Filter Complementary Dari grafik diatas derajat yang didapat accelerometer terlalu banyak noise sehingga kita menggunakan filter dari complementary untuk meredam noise tersebut agar mendapatkan derajat yang sebenarnnya. Dimana percobaan ini dilakukan untuk mencari nilai T atau tau yang cocok dengan melihat respon complementary filter terhadap noise accelerometer (ketika didiamkan diawal dan akhir), dan respon complementary filter terhadap kekuatan/gaya eksternal (ketika diguncangkan/digetarkan). Hasil percobaan yang ditampilkan adalah keluaran dari accelerometer dan complementary filter. Untuk mengetahui seberapa cepat respon motor sampai keadaan robot setimbang, dilakukan percobaan dengan video. Dengan adanya durasi pada video dapat dilihat waktu yang dibutuhkan robot untuk setimbang dari keadaan diam. Berikut adalah hasil percobaan yang dilakukan dengan menggunakan video. Tabel 3 Data Pengujian Dengan Video
Dari table diatas hasil percobaan ini mendapatkan rata-rata waktu untuk setimbang 2,19 detik dengan rata-rata frekuensi yang di dapat sebesar 80,33 Hz, video ini dibuat dengan cara memperlambat pergerakan video agar dapat melihat tiap perubahan yang terjadi dengan lebih detail dan robot akan tetap setimbang sampai dayanya habis.
SIMPULAN DAN SARAN Kesimpulan dari penelitian yang dilakukan: 1. 2. 3.
4.
Robot roda dua ini dapat melakukan pergerakan dengan arah yang sesuai (dengan tetapan standar set point 0). Robot roda dua ini dapat setimbang hingga daerah kestabilan (antara -0,65° sampai 0,65°). Dalam sistem ini, diperlukan nilai dari parameter-parameter complementary filter yang digunakan untuk mengurangi noise. Dalam sistem ini, penggabungan nilai sudut yang dicari dari accelerometer dan gyroscope dimana nilai tersebut sudah dihitung dan mengeluarkan hasil sudut yang akan pakai untuk input Fuzzy Logic, dimana Fuzzy Logic akan mengeluarkan nilai kecepatan yang diinginkan.
Adapun saran yang dapat diberikan untuk pengembangan dan penyempurnaan dari sistem: 1. 2. 3. 4.
Pengembangan robot beroda yang selanjutnya mungkin akan lebih stabil dan dapat dijalankan dengan remot kontrol atau semacamnya. Pembuatan rangka robot yang lebih baik. Pengembangan algoritma robot dengan menggunakan kalman filter atau median filter. Pengembangan pada sensor yang lebih baik akan menghasilkan nilai yang lebih akurat.
REFERENSI [1]
[2]
[3]
[4]
[5]
[6]
[7]
Vijayanand Kurdekar, Samarth Borkar, (2013), “Inverted Pendulum Control : A Brief Overview”, Microelectronics, Goa College of Engineering, Goa University, India, Vol. 3, Issue. 5, Sep-Oct, pp-2924-2927. Handry Khoswanto, Djoko Purwanto, (2010), “Kesetimbangan Robot Beroda Dua Menggunakan Metode Fuzzy Logic”, Jurusan Teknik Elektro, Fakultas Teknologi Industri, Universitas Kristen Petra, Institut Teknologi Sepuluh Nopember, Surabaya, Indonesia. Zoel Fachri, Akhmad Hendriawan, Ardik Wijayanto, (2010), “Perencanaan Balancing Robot Dengan Dua Roda”, Jurusan Teknik Elektronika, Politeknik Elektronika Negeri Surabaya, Surabaya. Arpit Jain, Deep Tayal, Neha Sehgal, (2013), “Control of Non-Linear Inverted Pendulum using Fuzzy Logic Controller”, Department of Electrical, Electronic & Instrumentation Engineering Dehradun: International Journal of Computer Application (0975-8887), Vol 69, No. 27 (May), India. Spyros Andreou, (2013), “Revisiting The Inverted Pendulum On A Moving Cart”, Department of Engineering Technology and Mathematics: International Journal of Science and Technology, Vol. 2, No. 7 (September). Ya-Fu Peng, Chih-Hui Chiu, Wen-Ru Tsai, and Ming-Hung Chou, (2009), “Design of an Omnidirectional Spherical Robot: Using Fuzzy Control”, Proceedings of the International MultiConference of Engineers and Computer Scientists 2009 Vol I IMECS 2009, March 18 - 20, 2009, Hong Kong. Mark Euston, Paul Coote, Robert Mahony, Jonghyuk Kim and Tarek Halem, (2008), “A Complementary Filter for Attitude Estimation of a Fixed-Wing UAV”, Vol. 1.04.
RIWAYAT PENULIS Darmawan Dwi Putra lahir di kota Jakarta pada 8 Juni 1991. Penulis menamatkan pendidikan S1 di BINUS University dalam bidang Sistem Komputer pada 2014. Brian Staphen lahir di kota Jakarta pada 13 September 1991. Penulis menamatkan pendidikan S1 di BINUS University dalam bidang Sistem Komputer pada 2014.