KENDALI PID PADA ROBOT MANUAL MENGGUNAKAN KOMUNIKASI NIRKABEL Danang Firmansyah1) 2 Achmad Sugiharto ) Helmy Widiyantara3) 4 Ihyaudin ) 1) Program Studi S1 Sistem Komputer, STIKOM Surabaya, email:
[email protected] 2) Program Studi S1 Sistem Komputer, STIKOM Surabaya, email:
[email protected] 3) Dosen Program Studi S1 Sistem Komputer, STIKOM Surabaya, email:
[email protected] 4) Dosen Program Studi S1 Sistem Komputer, STIKOM Surabaya, email:
[email protected] Abstract, At this time, the main problems encountered in robot control robot motion is a matter that is less refined in its movement relates to how the robot moves according to what has been ordered by the user, either in the form of a command position, velocity and acceleration. In addition, to control the robot manually, most still use a cord and less efficient in its use. So that the user (user) must use a long cable so that it can interfere with the motion of the robot. This thesis aims to simplify the user to control a robot using wireless communication with the manual joystick as a controller of the robot is implemented with wireless technology for transmitting data to the robot manually using the communication module Xbee-Pro, a minimum system of ATMega 32, a series of manual robot consisting of the motor driver module DC and the drive wheel. Joystick in this case has been integrated with the minimum system & Xbee-Pro transmitter (Tx), while the robot is connected with the minimum system manual & Xbee-Pro receiver (Rx), so the joystick can control the movement of the robot wirelessly. To deal with manual control of robot movement, the final task is to use PID control algorithm in the control system. The search process is the result of the constant analysis of the characteristics of the motor is implemented using a microcontroller ATMega 32 of the data obtained from the rotary encoder. Research has been done, the robot can manually take orders from the user with the form of a command position, velocity and acceleration accurately and run smoother by using a constant value of KP = 1, KI = 0.00004 & KD = 0.00002 which is the result of analysis of the characteristics of the motor charts with the value of KP, KD, and KI has the author tried. Robot can manually generate a minimum of actual speed and the maximum 125Rpm 98Rpm averaging time of 1s stable. In this experiment the best result is the value of the actual speed of 125 rpm with a time of 0.8 seconds is stable. Development of wireless communication technology to replace communication with the media cable robot applied in this manual runs well on 1-10 meter range in a confined space conditions and the range of 1100 meters in open space. In this situation, as long as the position Xbee Xbee Pro Pro Tx and Rx in a horizontal state (point to point) with a bit of an obstacle then the distance will be more distant. But if there is obstruction of the building it is likely that the data transmission can also be losses even data can not be accepted by the receiver. Keyword : Robot Manual,Joystick,Xbee-Pro,PID,Microcontroller ATMega 32
Permasalahan utama yang dihadapi dalam pengendalian robot adalah masalah gerakan robot yang masih kurang halus dalam pergerakannya berhubungan dengan bagaimana robot bergerak sesuai dengan apa yang telah diperintahkan oleh pengguna, baik berupa perintah posisi, kecepatan dan percepatan. Dalam hal ini seringkali masih sering menghadapi aksi kontrol yang kurang sesuai terhadap adanya gangguan yang tidak diketahui serta ketidaktepatan dalam pemodelan sistem. Untuk itu diperlukan
metode kendali yang tepat untuk memenuhi kondisi guna mendapatkan performansi yang baik dengan menambahkan PID (Proportional-Integral-Derivative) sebagai metode kendali didalam base motor pada robot tersebut. Selain itu untuk mengontrol sebuah robot manual, kebanyakan masih menggunakan kabel dan kurang efisien dalam penggunaannya. Sehingga pengguna (user) tersebut harus menggunakan kabel yang panjang sehingga dapat mengganggu 1
gerak dari robot. Selain mengganggu gerak robot, dalam penggunaan kabel seringkali tanpa sengaja membuat kabel tersebut tertarik sehingga mengakibatkan sambungan kabel dengan salah satu komponen terputus dan tanpa diketahui sebabnya kabel dalam terputus sendiri sehingga mengganggu pengiriman data antara joystick ke mikrokontroler. Untuk itu perlu menerapkan komunikasi nirkabel pada robot manual ini agar kendala-kendala dalam mengontrol sebuah robot manual ini tidak lagi terulang serta sebagai pengembangan komunikasi nirkabel dalam dunia robotika. Dengan menggunakan komunikasi nirkabel ini diharapkan dapat mempermudah pengguna dalam mengontrol robot manual ini dan dapat dikontrol lebih jauh lagi daripada menggunakan kontrol media kabel serta tetap menjamin pengiriman data dari joystick menuju robot. Penulis menggunakan modul XbeePro berguna untuk menjalin komunikasi antara kontrol penulis dengan robot yang akan dikomunikasikan dengan wireless. Xbee-Pro merupakan RF yang bekerja pada frekuensi 24GHz, Daya jangkau komunikasi sekitar 1-1.5km. RF ini sering digunakan untuk komunikasi wireless robotika atau keperluan navigasi. perbedaan dari keduanya adalah dalam proses kecepatan pengiriman data dari 1 RF ke RF yang lain, untuk RF Xbee-Pro menggunakan komunikasi serial dengan fullduplex. Komunikasi serial dengan fullduplex adalah komunikasi kirim-terima data dalam 2 jalur komunikasi, sehingga untuk jalur terima dan kirim memiliki jalur masing-masing. Kecepatan pengiriman Xbee-Pro lebih cepat karena Xbee-Pro menggunakan fullduplex. METODE Dalam sistem ini microcontroller berfungsi sebagai otak dalam mengolah semua instruksi baik input maupun output seperti halnya pemroses data inputan dari potensio dan push button kemudian mengirimkan data serial ke Xbee-Pro TX dan memproses data yang diterima dari Xbee-Pro RX kemudian menjalankan
perintah untuk menjalankan motor yang sebelumnya telah di lakukan perhitungan dengan kontroler PID. Keseluruhan sistem pada penelitian ini sesuai dengan blok diagram pada Gambar 1.
Gambar 1 Blok diagram keseluruhan sistem
Kontroler PID (Proportional-IntegralDerivative) Guna memperhalus, meningkatkan performansi kontroler dan mendapatkan respon sistem yang baik pada motor. Pada tugas akhir ini penulis menggunakan Kontroler PID (Proportional- IntegralDerivative) dengan cara mengimplementasikan pengontrol PID (Proportional-Integral-Derivative) menggunakan rumusan : Rn = Rn–1 + KP · (en – en–1) + KI · (en + en–1)/2 + KD (en - 2·en–1 + en–2) Sedangkan pada mikrokontroler ATMega 32 untuk pemroses algoritma PID. Algoritma PID yang digunakan adalah sebagai berikut :
2
r_mot = r_old + Kp*(e_func-e_old) + Ki*(e_func+e_old)/2 + Kd*(e_func - 2* e_old + e_old2);
Dimana : r_mot: Hasil penghitungan PID r_old :Hasil penghitungan PID sebelumnya Kp : konstanta P e_func: hasil pengurangan set point – kecepatan aktual e_old : error sekarang e_old2: error sebelumnya Ki : konstanta I Kd : konstanta D Diagram blok sistem kontrol PID yang akan diimplementasikan pada tugas akhir ini dapat dilihat pada Gambar 2
Dalam Tugas Akhir ini penulis menggunakan perangkat keras minimum sistem Transmitter dan Receiver untuk menjalin komunikasi antar Xbee Pro. Minimum sistem Transmitter Minimum sistem di sisi transmitter dirancang untuk mendukung transfer data dari inputan joystick yang terdiri dari potensio dan push button pada untuk diteruskan ke Xbee-Pro Tx. Fungsi minimum sistem trasnmitter adalah sebagai pembaca data inputan push button & potensio. Minimum sistem ini berfungsi untuk mengirimkan data dari inputan joystick untuk dikirimkan ke Xbee-Pro transmitter agar, dapat diteruskan ke XbeePro receiver. Berikut ini adalah blok diagram alur pengiriman data ditunjukkan pada gambar 3 dibawah ini.
Gambar 2. Diagram blok implementasi PID
Secara umum fungsi dari masingmasing kontroler dalam kontroler PID adalah sebagai berikut : • Proporsional - Berfungsi untuk mempercepat terjadinya respons terhadap sinyal error. - Bekerja efektif pada daerah sebelum sistem mencapai daerah setpoint/kondisi start. • Integral - Berfungsi memlihara sinyal kontrol konstan. - Bekerja efektif pada daerah di mana sistem mencapai set point. • Derivatif - Berfungsi mendapatkan sinyal kontrol dari perubahan errornya. - Bekerja efektif pada daerah transient. Perancangan Perangkat Keras
Gambar 3. Blok diagram minimum sistem transmitter
Penggunaan Pin pada minimum sistem transmitter adalah sebagai berikut : a. PortA.0 – PortA.1 digunakan untuk input dari potensio. b. PortB.0 – PortB.5 digunakan untuk input dari push button. c. PortD.1 digunakan sebagai output untuk mengirimkan data dari potensio dan push button untuk diteruskan Xbee-Pro Transmitter. Hubungan antara modul pin pada Xbee-Pro & Mikrokontroler ATMega 32 ditunjukkan pada tabel 1. Tabel 1. Hubungan antara modul pin pada Xbee-Pro & ATMega32
3
ATMega32 Pin Nama 10 15 14 11
VCC Tx(PD1) Rx (PD0) GND
Xbee-Pro Pin Nama 1 2 3 10
VCC Dout (Rx) Din (Tx) GND
3.1.4. Minimum sistem Receiver Minimum sistem receiver berfungsi untuk mengeksekusi perintah yang dikirimkan ke Xbee-pro receiver yang telah menerima data kiriman dari minimum sistem transmitter kemudian menjalankan perintah untuk menjalankan motor. Untuk perancangan perangkat keras pada minimum sistem transmittrer & receiver penulis menggunakan blok diagram ditunjukkan pada gambar 4 dibawah ini.
data tersebut, pada Tugas Akhir ini penulis membagi rangkaian minimum sistem menjadi 2(dua) bagian yaitu minimum sistem transmitter dan minimum sistem receiver. Berikut ini gambar minimum sistem ATMega32 dan rangkaian Xbee-Pro transmitter dan receiver dapat dilihat seperti Gambar 5 dibawah ini.
Gambar 5. Minimum sistem ATMega 32 & Rangkaian Xbee-Pro Tx & Rx
Gambar 4. Blok diagram Minimum sistem reciever
Pada minimum sistem receiver ini akan menjalankan eksekusi perintah dengan menjalankan motor dengan mengirimkan perintah pada masing-masing pin pada minimum sistem receiver yang difungsikan sebagai output. Mikrokontroler ATMega 32 Mikrokontroller ini berfungsi untuk memproses data inputan dari potensio dan push button pada joystick untuk diteruskan ke Xbee-Pro Tx dan dikirimkan ke XbeePro Rx untuk memerintahkan Minimum sistem receiver mengeksekusi data dengan mengeluarkan output berupa perintah menjalankan motor. Dari proses pengiriman
Xbee-Pro TX & RX XBee merupakan suatu modul yang didesain untuk memenuhi standar zigbee/ IEEE 802.15.4 yang biasa digunakan untuk aplikasi jaringan sensor yang berbiaya dan berdaya rendah. Modul ini membutuhkan daya minimal dan menyediakan transfer data yang handal antara dua device. Modul ini mempunyai dimensi fisik kecil sehingga praktis dalam penempatan. Modul ini beroperasi pada rentang frekuensi 2.4 GHz. Driver Modul Xbee-Pro Untuk mengakses modul Xbee-Pro, diperlukan sebuah driver untuk modul Xbee-Pro yang mana modul Xbee-Pro ini hanya memiliki tegangan catu daya rendah yaitu antara 2,8 Volt sampai 3.4 Volt, sehingga diperlukan regulator tegangan sebesar 3.3 Volt, namun untuk data interface dapat dihubungkan secara langsung ke mikrokontroller. Konfigurasi Pin Xbee-Pro Berikut adalah gambar konfigurasi pin Xbee-Pro
& dan 4
penjelasannya, ditunjukkan pada gambar 6 dibawah ini, sedangkan untuk penjelasan fungsi-fungsi setiap pin pada Xbee-Pro dapat dilihat pada tabel 2 & untuk spesifikasi Xbee-Pro dapat dilihat pada tabel 3.
Gambar 6. Modul Xbee-Pro & Dimensi Xbee-Pro Tabel 2. Konfigurasi pin Xbee-Pro
Perancangan Perangkat Lunak Perancangan perangkat lunak bertujuan untuk mengirimkan data dari inputan user untuk dieksekusi mikrokontroler untuk menjalankan motor, juga digunakan untuk mendeteksi error yang diperoleh dari kontroler PID. Perangkat lunak terbagi dalam beberapa device sistem antara lain : konfigurasi XbeePro Tx & Rx, program pengiriman data antar mikrokontroler dari sisi transmitter & receiver, program LCD display, dan program kontroler PID. Diagram alir program ditunjukkan pada gambar 7 dan gambar 8 dibawah ini.
Tabel 3. Spesifikasi Xbee-Pro
Joystick Joystick mengontrol,
ini digunakan mengendalikan
menjalankan robot. Dalam joystick ini terdapat enam buah push button dan dua buah potensio yang terdiri dari 2 buah push button yang berfungsi untuk menggerakan tangan robot naik dan turun, dua buah push button yang berfungsi untuk menggerakkan tangan robot maju dan mundur, 2 buah push button yang berfungsi untuk menggerakkan tangan robot untuk menjepit dan melepaskan benda, serta 2 buah potensio yang berfungsi untuk mengontrol motor base kanan dan motor base kiri yang berguna untuk menjalankan robot.
untuk dan 5
Gambar 7. Diagram alir program penerimaan data dari minimum sistem Tx
Gambar 8. Diagram alir program pengiriman data ke minimum sistem receiver
Konfigurasi Parameter Xbee Pro Tx & Rx Seting konfigurasi parameter XbeePro di terminal XCTU agar Xbee-Pro di sisi Tx & Rx dapat berkomunikasi dengan baik. Terdapat beberapa perintah untuk mensetting Xbee-Pro. Berikut perintah yang diperlukan untuk mensetting parameter Xbee-Pro dengan menggunakan software XCTU adalah sebagai berikut. 1 “+++” merupakan perintah untuk memastikan Xbee-Pro siap disetting atau tidak dan juga untuk mengawali setting parameter pada Xbee-Pro. 2 “AT” (AT Command) Merupakan perintah awalan penulisan perintah pada Xbee-Pro. 3 “DL” (Destination Address Low)
Merupakan perintah untuk mensetting alamat yang akan dituju oleh Xbee-Pro. 4 “MY” ( Source Address) Merupakan perintah untuk mensetting alamat dari Xbee-Pro (alamat diri sendiri), nilai dari “DL” dan “MY” tidak boleh sama. 5 “CH” (Chanel) Merupakan perintah set/read dari Xbee-Pro dimana nilai awal settingnya adalah C dan nilainya harus sama untuk Rx dan Tx. 6 “ID” (Networking {Addressing}) Merupakan perintah pengalamatan PAN (Personal Area Network) dimana nilainya harus sama untuk satu jaringan. 7 “WR”(Write) Merupakan perintah penulisan pada Xbee-Pro, apakah Xbee-Pro siap untuk mengirimkan data. 8 “CN” (Exit Command Mode) merupakan perintah keluar dari ATCommand Agar 2 buah XBee-Pro dapat saling berkomunikasi, maka XBee tersebut harus : • Mempunyai channel ID (CH) yang sama. • Mempunyai network ID PAN ID) yang sama. • Source ID XBee-Pro receiver harus sesuai dengan destination ID dari XBee-Pro transmitter Setting konfigurasi parameter yang harus dilakukan untuk menghubungkan Xbee-Pro berkomunikasi point to point yaitu dengan mengetikkan perintah pada Terminal XCTU ditunjukkan pada gambar 9 dibawah ini.
Gambar 9 Parameter yang disetting pada Xbee-Pro Tx & Rx
6
Pada pengoperasian Xbee-Pro yang digunakan pada tugas akhir ini, menggunakan Mode transparent (AT) yang bertujuan untuk mengkonfigurasi point-topoint sederhana., yaitu Xbee-Pro bertindak sebagai modem serial antara mikrokontroler dengan joystick. PENGUJIAN SISTEM Pengujian sistem yang dilakukan penulis merupakan pengujian terhadap perangkat keras dan perangkat lunak dari sistem secara keseluruhan dan komputer yang telah selesai dibuat. Pengujian Minimum System Untuk mengetahui apakah minimum system dapat melakukan proses signature dan download program ke microcontroller.
Dari hasil percobaan di atas, minimum system dapat terkoneksi dengan baik dengan komputer melalui kabel downloader.
Pengujian Pengiriman Data Xbee-Pro antar Minimum sistem Tx dan Rx Unuk mengetahui apakah data yang diinputkan dari keypad yang terhubung dengan minimum sistem ATMega 32 Tx agar dapat diterima dan dikeluarkan di LCD yang terhubung dengan minimum sistem ATMega 32 Rx. Berikut rangkaian minimum sistem & Xbee-Pro transmitter ditunjukkan pada gambar 12 dibawah ini.
Hasil Pengujian Tampilan dari program chip signature pada CodeVisionAVR yang akan digunakan untuk menuliskan program dan melakukan percobaan terhadap minimum system. Hasil program chip signature dapat di lihat pada Gambar 10.
Gambar 12. Rangkaian minimum sistem ATMega 32, Xbee-Pro transmitter & keypad
Hasil pengujian Dari program diatas, kedua XbeePro dapat berkomunikasi dengan baik dan dapat mengirimkan data secara serial berupa karakter yang merupakan output dari penekanan tombol di keypad. Hasil pengiriman data yang ditampilkan di LCD dapat dilihat pada gambar 13 dibawah ini.
Gambar 10. Tampilan Chip Signatture
Pada Gambar 11 menunjukan bahwa minimum system telah berhasil mendownload program ke microcontroller sehingga program telah berhasil dijalankan.
Gambar 11. Tampilan Download Program
Gambar 13. Hasil pengiriman data yg diterima mikrokontroller Rx yang ditampilkan LCD
7
Pengujian jarak maksimal kemampuan pengiriman data Xbee Pro Untuk mengetahui kemampuan jangkauan area Xbee Pro dalam melakukan pengiriman dan penerimaan data pada robot manual.
Hasil pengujian Dari prosedur pengujian komunikasi data pada Xbee-Pro yang telah dilakukan di luar ruangan dan di dalam ruangan didapatkan hasil pengamatan sebagai berikut ini Tabel 4. Hasil pengamatan komunikasi data pada Xbee Pro dalam kondisi di luar ruangan (Outdoor Area) No. Jarak (meter) Keterangan 1. 10 Ok Ok 2. 20 Ok 3. 30 Ok 4. 40 Ok 5. 50 Ok 6. 60 Ok 7. 70 Ok 8. 80 9. 90 Ok 10. 100 Ok 11. 101 Gagal Gagal 12. 102 Gagal 13. 103 Gagal 14. 104 Gagal 15. 105
Tabel 5. Hasil pengamatan komunikasi data pada Xbee Pro dalam kondisi di luar ruangan (Indoor Area)
No.
Jarak (meter)
Keterangan
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
1 2 3 4 5 6 7 8 9 10 11 12
Ok Ok Ok Ok Ok Ok Ok Ok Ok Ok Delay 5-10 detik Delay 5-10 detik
13. 14. 15.
13 14 15
Delay 5-10 detik Delay 5-10 detik Delay 5-10 detik
Pengujian Kontroler PID Unuk mengetahui kinerja kontroler PID yang terdapat pada sistem
Hasil Pengujian Pengujian Kontroler PID dengan nilai KP : 1, KI : 0.00004 & KD : 0.00002 Tabel 6. Hasil pengujian kontroler PID Pengujian Set point Kecepatan Waktu Ke(Rpm) Actual Stabil (s) (Rpm) 1. 105 98 1.2 2. 110 98 1.6 3. 115 98 1 4. 120 98 0.7 5. 125 100 0.8 6. 130 100 0.8 7. 135 102 0.8 8. 140 102 1 9. 145 102 0.8 10. 150 100 1.2 11. 155 102 1.4 12. 160 104 1.2 13. 165 108 1 14. 170 108 1.2 15. 175 112 1 16. 180 114 1 17. 185 119 1 18. 190 120 0.9 19. 195 122 1 20. 200 125 0.8
Hasil grafik pengujian kontroler PID
Gambar 14. Hasil pengujian kontroler PID dengan nilai set point : 105
8
DAFTAR RUJUKAN INNOVATIVE ELECTRONICS. 2009. AVR USB ISP. (Online). (http://www.innovativeelectronics.c om/innovative_electronics/downloa d_files/manual/Manual%20DTHiQ%20AVR%20USB%20ISP.pdf) . Diakses pada tanggal 5 Desember 2011 Gambar 15. Hasil pengujian kontroler PID dengan nilai set point : 200
Simpulan Dari penelitian ini dan dengan melihat masalah yang telah dirumuskan serta hasil pengujian dan analisa, maka dapat diambil simpulan : 1. Dari penelitian yang telah dilakukan, robot manual dapat menerima perintah dari pengguna dengan baik berupa perintah posisi, kecepatan dan percepatan secara akurat dan berjalan lebih halus dengan menggunakan nilai konstanta KP = 1, KI = 0.00004 & KD = 0.00002 yang merupakan hasil analisa grafik karakteristik motor dengan nilai KP, KD, & KI yang telah penulis coba. Robot manual dapat menghasilkan kecepatan aktual minimal 98Rpm & maksimal 125Rpm rata-rata mencapai waktu stabil 1s. Pada percobaan ini hasil terbaik adalah dengan nilai kecepatan aktual 125 Rpm dengan waktu stabil 0,8 detik. 2. Pengembangan teknologi komunikasi nirkabel untuk menggantikan komunikasi dengan media kabel yang diterapkan di robot manual ini berjalan dengan baik pada range 1-10 meter pada kondisi ruang tertutup dan pada range 1 - 100 meter pada ruang terbuka. Pada keadaan ini, selama posisi Xbee Pro Tx dan Xbee Pro Rx dalam keadaan horizontal (point to point) dengan sedikit halangan maka jarak yang ditempuh akan semakin jauh. Akan tetapi jika ada halangan gedung maka kemungkinan besar pengiriman data akan losses bahkan bisa juga data tidak bisa diterima oleh receiver.
Lohala. 2011. Simplex, Half Duplex, and Full Duplex. (Online). (http://www.mystudyroom.com.np/c lassnotes.php?nan=89&fire=4&ca ke=26&sun=6&rnd=2387829974d 3e5ee26be055.39465877). Diakses pada tanggal 2 Desember 2011.
Braunl, Thomas. 2006. Embedded Robotics Second Edition. Perth, WA: Australia. Kilian.
2008. Modern Control Technology:Components and Systems 2nd Edition. Perth, WA: Australia.
Andrianto, Heri. 2008. Pemrograman Mikrokontroler AVR ATmega16 menggunakan Bahasa C CodeVision AVR. Bandung : Informatika.
ATMEL Corporation. 2005. ATMEGA16. (Online). (http://www.alldatasheet.com/datashe et-pdf/pdf/78532/ATMEL/ATMEGA 16.html) ,diakses 26 Maret 2011) Evolution Education.2010. Xbee-Pro Basic, (Online) (http://www.rev-ed.co.uk /docs/xbe001.pdf) , diakses 29 Maret 2011)
9