Vol.2 No.2 2017 15 @2017 kitektro
Jalan Tengku Syech Abdur Rauf No. 7, Darussalam, Banda Aceh, Indonesia 1andrie.nov11@gmail.com
3liliroslidar@gmail.com 2aurahmn@gmail.com
Abstrak
—
Robot self balancing merupakan robot yang memiliki dua buah roda yang dapat berdiri dengan stabil. Kestabilan pada robot dikendalikan dengan metode kendali PID, yang merupakan sistem pengendali yang berfungsi untuk mencari nilai kestabilan sehingga respon sistem yang diperoleh dapat mencapai setpoint. Maka dari itu diperlukan sistem penyeimbang yang dapat membaca sudut kemiringan pada robot. Pembacaan sudut tersebut akan menjadi acuan putaran pada roda. Sensor yang digunakan adalah gyroscope &accelerometer. Gyroscope berfungsi untuk membaca pergerakan
sudut, sedangkan accelerometer berfungsi untuk membaca percepatan objek. Kedua sensor tersebut disatukan dalam modul MPU-6050. Roda robot menggunakan motor DC dan encoder dengan motor driver berupa Monster Moto Shield.
Setpoint yang ditentukan sebesar 0o terhadap gaya normal robot.
Motor akan berputar saat pembacaan sudut tidak sama dengan
setpoint. Motor akan melakukan putaran CW dan CCW untuk
mencapai kestabilan. Besarnya kecepatan motor yang diberikan berdasarkan besarnya nilai error yang terjadi antara setpoint dan input. Nilai error tersebut dapat diperkecil dengan pengendali PID. Berdasarkan pengujian yang telah dilakukan, respon sistem yang diperoleh underdamped response. Sistem masih dianggap stabil karena nilai overshoot yang terjadi masih kecil. Hasil pengujian yang dapat disimpulkan yaitu robot dapat bertahan pada range sudut antara -3,90 sampai 3,90. Nilai 𝑲𝒑 =
𝟏𝟓 , 𝑲𝒊 = 𝟗𝟎 , dan 𝑲𝒅 = 𝟎, 𝟖 merupakan nilai konstanta PID
yang digunakan pada robot.
Kata Kunci— Robot self balancing, Gyroscope, Accelerometer, Motor Driver, PID.
I. PENDAHULUAN
Robot merupakan sebuah elektromekanik yang dapat
dikendalikan secara remote ataupun menggunakan
kecerdasan buatan sehingga sistem dapat bergerak.
Penggunaan robot ini sangat berpengaruh dalam
peningkatkan kualitas dan kuantitas produksi. Teknologi robotika juga telah menjangkau hingga sisi pendidikan. Salah satunya dengan menambah tingkat kecerdasan pada robot. Peningkatan kecerdasan meliputi penambahan sensor, metode
kontrol serta algoritma pemograman pada robot. Salah satunya adalah robot self balancing..
Robot self balancing (penyeimbang diri) merupakan robot mobile dengan dua buah roda yang ditempatkan pada sisi kiri dan kanannya. Robot tidak akan seimbang apabila tidak adanya controller. Robot balancing ini merupakan pengembangan dari model pendulum terbalik (inverted pendulum) yang diletakkan diatas kereta beroda. Konsep robot ini telah digunakan sebagai alat transportasi yang bernama segway [1].
Robot penyeimbang ini bekerja dengan cara membaca sudut kemiringan. Robot ini menggunakan sensor gyroscope dan sensor accelerometer sebagai input, mikrokontroler ATmega328P sebagai pengontrol, motor DC sebagai penggerak dan penambahan kendali PID sebagai metode kontrolnya.
Robot self balancing telah banyak diciptakan, namun tanpa menggunakan metode kontrol PID. Namun ada beberapa yang telah menggunakan metode kontrol yang lain, seperti complementary filter, low pass filter, dan kalman filter. Pada penelitian ini, robot akan ditambahkan metode kontrol menggunakan PID. Sistem kerja robot ini dapat diaplikasikan menjadi alat transportasi seperti scooter, segway, dan lain-lain.
II. DASAR TEORI
A. Fungsi Transfer
Fungsi alih (transfer function) adalah perbandingan antara keluaran suatu sistem pengendalian terhadap masukannya. Fungsi transfer memiliki besaran yang diperlukan untuk menghubungkan input dan output. Tetapi tidak memberikan informasi tentang struktur fisik dari suatu sistem. Fungsi transfer dapat sama (identik) dari bentuk fisik yang berbeda. Fungsi transfer memberikan deskripsi menyeluruh mengenai karakteristik dinamik suatu sistem [2]. Fungsi transfer dapat ditulis dalam bentuk:
𝑇𝐹(𝑠) =𝐶(𝑠)
𝑅(𝑠) (1)
dimana:
C(s) adalah keluaran sistem pengendalian. R(s) merupakan masukannya.
Vol.2 No.2 2017 16 @2017 kitektro
Untuk mencari fungsi alih suatu sistem pengendalian ada beberapa hal perlu dipahami yaitu masalah diagram blok (block diagram) dan operasi operasinya serta diagram aliran sinyal (signal flow diagram).
B. Pengendali PID
Sistem kendali PID merupakan sistem kendali umpan balik yang menghitung nilai kesalahan secara kontinyu sebagai beda antara setpoint yang diinginkan dan variabel proses terukur. Kontroler mencoba untuk meminimalkan nilai kesalahan setiap waktu dengan penyetelan variabel kontrol. Nilai error didapat dari hasil pengurangan antara nilai dari sensor dengan nilai setpoint. Ketiga parameter PID memiliki fungsinya masing-masing, yaitu sebagai berikut:
P bertanggung jawab untuk nilai kesalahan saat ini. I bertanggung jawab untuk nilai kesalahan
sebelumnya.
D bertanggung jawab untuk kemungkinan nilai kesalahan mendatang, berdasarkan rata-rata tiap waktu.
Kontroler PID hanya mengandalkan variabel proses terukur, maka dari itu ketiga parameter dapat disesuaikan (tuning) untuk menghasilkan hasil respon sistem yang dibutuhkan. Hasil tuning berpengaruh terhadap overshoot, rise time, setlling time, dan steady state error [3].
Berdasarkan Gambar 1, ketiga parameter dapat
dijumlahkan sehingga persamaan kendali PID didapat sebagai berikut [3]. 𝑢(𝑡) = 𝐾𝑝 𝑒(𝑡) + 𝐾𝑖 ∫ 𝑒(𝑡) 𝑑𝑡 𝑡 0 + 𝐾𝑑 𝑑𝑒(𝑡) 𝑑𝑡 (2) C. Transformasi Laplace
Transformasi Laplace adalah suatu teknik untuk menyederhanakan permasalahan dalam suatu sistem yang mengandung masukan dan keluaran, dengan melakukan transformasi dari suatu domain pengamatan ke domain pengamatan yang lain.
Transformasi Laplace digunakan untuk penyelesain sistem waktu kontinyu. Transformasi Laplace dari tanggapan impuls sistem 𝑓(𝑡) akan menghasilkan 𝐹(𝑡) yang dikenal sebagai transfer function atau fungsi alih sistem. Fungsi 𝐹(𝑡), dapat didefinisikan sebagai berikut [4].
𝐹(𝑠) = ℒ {𝑓(𝑡)} = ∫ 𝑒∞ −𝑠𝑡
0− 𝑓(𝑡) 𝑑𝑡 (3)
D. Respon Sistem
Respon sistem adalah perubahan perilaku output terhadap perubahan sinyal input. Respon sistem ditampilkan dalam bentuk kurva yang akan menjadi dasar untuk menganalisa karakteristik sistem selain menggunakan persamaan/model matematika.
Respon sistem yang biasa digunakan adalah transient response, dimana karakterisktik respon dapat dianalisis dari bentuk kurvanya. Pada transient response terdapat tiga jenis sinyal respon berdasarkan bentuk kurva yang terdapat pada Gambar 2.
1) Underdamped Response: Memiliki karakteristik sinyal output yang melesat naik untuk mencapai input, lalu kemudian turun dari nilai yang kemudian berhenti pada kisaran nilai input.
2) Critically-damped response: Memiliki karakteristik sinyal output tidak melewati nilai input tapi butuh waktu lama untuk mencapai sinyal input.
3) Overdamped response: Memiliki karakteristik sinyal respon yang dapat mencapai nilai input dengan cepat dan tidak melewati batas input, tanpa overshoot dan settling time yang cepat.
Gambar 1 Diagram alir PID
Vol.2 No.2 2017 17 @2017 kitektro
E. Sistem Mekanika Robot
1) Gaya Vertikal pada Robot (Gaya Normal): Gaya vertikal merupakan gaya bekerja ke bawah yang menuju pusat bumi atau disebut gaya normal. Gaya ini dipengaruhi oleh percepatan gravitasi, dimana percepatan gravitasi bumi
bernilai 9,807m/s2 atau dibulatkan menjadi 9,8m/s2
Perhitungan gaya normal dapat menggunakan Persamaan (4) sebagai berikut [6].
𝐹𝑣= 𝑚. 𝑔
(4)
2) Gaya Horizontal pada Robot (Gaya Dorong): Gaya horizontal merupakan gaya yang bekerja ke samping atau disebut gaya dorong. Gaya ini yang dipengaruhi oleh percepatan dari objek. Perhitungan gaya dorong dapat menggunakan Persamaan (5) sebagai berikut [6].
𝐹ℎ= 𝑚. 𝑎 (5)
3) Gaya Hambat (Gerak Rotasi): Gaya hambat atau hambatan fluida adalah gaya yang menghambat pergerakan sebuah benda padat melalui sebuah fluida (cairan dan gas). Gaya hambat ini merupakan gaya gesek yang terjadi terhadap fluida, sehingga menghambat pergerakan. Berbeda jenis fluida, berbeda pula koefisien hambatnya. Koefisien hambat pada udara bernilai 0,018 N s/m2. Perhitungan gaya hambat dapat dilihat pada Persamaan (6) sebagai berikut [6].
𝐹𝑑= −𝑏. 𝜔 (6)
4) Momen Gaya (Torsi): Momen gaya atau torsi adalah sebuah gaya yang bekerja saat benda melakukan gerak rotasi. Semakin besar torsi, maka gaya yang diperlukan semakin kecil, begitu juga sebaliknya. Pada gerak translasi, faktor penyebab terjadinya gerak adalah Gaya (F), sedangkan pada gerak rotasi, selain Gaya (F), terdapat faktor lain yang menyebabkan benda itu bergerak, yaitu Lengan Gaya atau Inersia (I). Pengertian inersia adalah kecenderungan benda fisik untuk menolak perubahan terhadap geraknya. Perhitungan torsi dapat dilihat pada Persamaan (7) sebagai berikut [6].
𝜏 = 𝐼. 𝛼 (7)
5) Momen Inersia: Momen inersia adalah ukuran kelembaman suatu benda untuk berotasi terhadap porosnya.
Besaran ini adalah analog rotasi daripada massa. Rumus untuk mencari momen inersia dari batang silinder, poros melalui ujung, dapat dilihat pada persamaan berikut [6].
𝐼 =1
3𝑚𝑙
2 (8)
III. METODE PENELITIAN
A. Prosedur Penelitian
Pada awal penelitian, dilakukan perancangan desain pada sistem robot self balancing, mulai dari gambaran prinsip kerja robot, sistem wiring, sampai bentuk akhir dari robot. Proses perancangan desain, ini digambar menggunakan software Corel Draw. Setelah mendapatkan rencana rancangan, maka akan dilanjutkan dengan tahap pembuatan sistem. Sistem ini menggunakan mikrokontroler ATmega328P, yang terdapat pada board Arduino uno, sebagai pengolah data dan penyimpan program, Sensor accelerometer dan gyroscope MPU-6050 sebagai manipulated variable (MV), dan motor DC sebagai process variable (PV). Mikrokontroler ATmega328P menerima input dari sensor MPU-6050 yang berfungsi sebagai pembaca kemiringan. Sensor ini diletakkan tepat di titik berat dari robot. Tujuannya agar didapat pembacaan yang sesuai dengan keadaan aslinya. Hasil
pembacaan dari MPU-6050 kemudian dikirim ke
mikrokontroler ATmega328P. Output dari mikrokontroler berupa sinyal digital yang nantinya menjadi input ke Monster Moto Shield yang merupakan driver motor. Driver motor ini berfungsi sebangai pengendali putaran motor DC yang ditambahkan encoder motor agar dapat mengetahui putaran motor clockwise atau counterclockwise. Diagram proses dari robot self balancing dapat dilihat pada Gambar 3.
B. Perancangan Sistem
Rangkaian wiring pada rangkaian robot dapat dilihat pada Gambar 4, sedangkan untuk konfigurasi pin Arduino dapat
Vol.2 No.2 2017 18 @2017 kitektro
dilihat pada Tabel 1. Selanjutnya pin output Monster Moto Shield dihubungkan ke motor.
Gambar 4 Rangkaian wiring sistem TABLEI
KONFIGURASI PIN ARDUINO
No. Pin Arduino Keterangan
1. Pin A5 SCL MPU-6050 2. Pin A4 SDA MPU-6050
3. Pin 2 INT MPU-6050 dan OUT B Encoder Motor Kanan
4. Pin 10 OUT A Encoder Motor Kanan 5. Pin 3 OUT B Encoder Motor Kiri 6. Pin 4 OUT A Encoder Motor Kiri 7. 3,3 V VCC MPU-6050
8. 5V VCC Encoder Motor 9. Ground Semua pin ground
Ilustrasi sistem kerja robot diperlihatkan pada Gambar 5. zJika pembacaan sudut kecil dari 0o, maka diberikan putaran counterclockwise pada motor DC. Sedangkan untuk pembacaan sudut besar dari 0o, maka diberikan putaran clockwise pada motor.
Gambar 5 Arah putaran moto
Hasil dari putaran motor akan menjadi feedback ke modul MPU-6050. Jika pembacaan sudut belum mencapai setpoint
0o, maka motor akan berputar maju mundur untuk mencapai
setpoint.
Kesimpulannya adalah robot akan berdiri tegak lurus jika tanpa adanya gangguan. Namun jika diberi gangguan, robot akan berusaha menyeimbangkan diri dengan cara bergerak maju mundur secara berulang-ulang. Hal tersebut akan mengakibatkan robot kehilangan keseimbangan dan terjatuh. Nilai overshoot yang tidak bisa diredam yang menjadi kendalanya. Maka dari itu, ditambahkan metode kendali PID. Kendali PID akan mengurangi nilai overshoot dan rise time sehingga pergerakan robot lebih halus dan respon yang cepat. C. Diagram Blok Sistem
Diagram blok sistem ditunjukkan pada Gambar 6, dimana sudut sebagai input dan gaya dorong 𝑢(𝑡) sebagai output. Gambar tersebut menggunakan sistem kendali loop tertutup yang hanya mengandalkan feedback sebagai pengendali sedangkan pada Gambar 7, menunjukkan sistem yang menggunakan sistem kendali PID. Penambahan kendali PID pada sistem dapat berfungsi untuk meningkatkan stabilitas sistem dengan cara mengurangi nilai error sekecil mungkin.
Gambar 6 Diagram blok sistem
Vol.2 No.2 2017 19 @2017 kitektro
(a)
(b)
Gambar 8 Desain robot (a) Tampak depan, (b) Tampak samping
Robot menggunakan Arduino uno dan Monster Moto Shield yang diletakkan di posisi atas. Hal itu dilakukan karena kedua komponen itu lebih ringan, sehingga nantinya motor tidak bekerja terlalu berat untuk mempertahankan posisinya. Sumber daya yang digunakan berupa baterai 12 volt yang terdiri 8 buah dari baterai AA 1,5 volt yang dirangkai secara seri dan disusun secara paralel. Baterai merupakan komponen paling berat. Maka dari itu baterai diletakkan bagian bawah robot. Hal ini dilakukan agar titik berat robot berada lebih dekat dengan pusat gravitasi, sehingga dapat membantu robot lebih seimbang. Sensor MPU-6050 sendiri diletakkan di atas robot, agar pembacaan sensor lebih akurat. Hal ini dilakukan karena bagian atas lebih sering terjadinya pergerakan sehingga sensor lebih aktif dalam membaca pergerakan sudut. Hasil akhir dari perancangan robot dapat dilihat pada Gambar 9, sedangkan untuk keterangan komponen pada robot dapat dilihat pada Gambar 10.
(a)
(b)
Gambar 9 Hasil rancangan robot (a) Tampak depan, (b) Tampak samping
bawahnya terdapat encoder motor yang disambung dengan badan robot dengan spacer 2 cm. Total massa robot seberat 0,8 kg.
Gambar 10 Keterangan komponen pada robot
B. Menghitung Fungsi Transfer
Pada Gambar 11 merupakan bentuk dari robot self balancing secara matematis. Gaya diberikan kepada robot sehingga robot menjadi miring. Motor kemudian akan memberikan gaya yang sesuai sehingga robot tetap dalam keadaan tegak. Tanpa adanya gaya yang sesuai, robot akan jatuh.
Gambar 11 Robot self balancing secara matematis
Berdasarkan Gambar 11, bisa didapat persamaan perubahan posisi sebagai berikut:
Vol.2 No.2 2017 20 @2017 kitektro
𝑦𝐺 = 𝑙 cos 𝜃 (10)
Berikut akan diturunkan model matematis dari sistem robot self balancing. Setelah didapat model matematis, kemudian ditransformasikan dalam bentuk Laplace untuk memperoleh fungsi transfer dari sistem.
1) Gerak Rotasi Robot: Dengan menggunakan Hukum I Newton, maka didapat persamaan berikut.
𝜏 − 𝐹𝑑= 𝐹𝑣. 𝑙 sin 𝜃 − 𝐹ℎ. 𝑙 cos 𝜃 𝐼. 𝛼 + 𝑏. 𝜔 = 𝐹𝑣. 𝑙 sin 𝜃 − 𝐹ℎ. 𝑙 cos 𝜃 𝐼.𝑑 2𝜃 𝑑𝑡2+ 𝑏. 𝑑𝜃 𝑑𝑡= 𝐹𝑣. 𝑙 sin 𝜃 − 𝐹ℎ. 𝑙 cos 𝜃 𝐼. 𝜃̈ + 𝑏. 𝜃̇ = 𝐹𝑣. 𝑙 sin 𝜃 − 𝐹ℎ. 𝑙 cos 𝜃 (11)
Model sistem yang diberikan pada Persamaan (11) adalah sistem non-linier. Sistem non-linier merupakan sistem yang tidak tetap sehingga sulit untuk dikendalikan. Diperlukan linearisasi untuk mendapatkan sistem linier dari Persamaan (11). Linearisasi dilakukan dengan mengasumsikan sudut = 0o
(representasi sudut terkecil) [12]. Linearisasi ini
menggunakan deret Maclaurin dengan fungsi persamaan sebagai berikut: 𝑓(𝜃) = 𝑓(0) +𝑓′(0) 1! (𝜃 − 0) + 𝑓′′(0) 2! (𝜃 − 0) 2+ ⋯ + 𝑓(𝑛)(0) 𝑛! (𝜃 − 0) 𝑛 (12)
Melalui Persamaan (4.4), deret fungsi sin(𝑥) bisa
diperoleh dengan cara sebagai berikut. 𝑓(𝑥) = sin(𝑥) maka 𝑓(0) = 0 𝑓′(0) = 1 𝑓′′(0) = 0 𝑓′′′(0) = −1
Berdasarkan Persamaan (12), didapat fungsi sebagai berikut. 𝑓(𝜃) = 0 + 1 1!(𝜃 − 0) + 0 2!(𝜃 − 0) 2+(−1) 3! (𝜃 − 0) 3 + ⋯ 𝑓(𝜃) = 𝜃 −𝜃 3 3!+ ⋯ sin 𝜃 ≈ 𝜃
Sedangkan untuk deret fungsi cos(𝑥), bisa didapat dengan cara sebagai berikut.
𝑓(𝑥) = cos(𝑥) maka 𝑓(0) = 1 𝑓′(0) = 0 𝑓′′(0) = −1 𝑓′′′(0) = 0
Berdasarkan Persamaan (12), didapat fungsi sebagai berikut. 𝑓(𝜃) = 1 + 0 1!(𝜃 − 0) + (−1) 2! (𝜃 − 0) 2+ 0 3!(𝜃 − 0) 3 + ⋯ 𝑓(𝜃) = 1 −𝜃 2 2!+ ⋯ cos 𝜃 ≈ 1
Berdasarkan linearisasi dengan deret Maclaurin diatas,
maka dapat diasumsikan bahwa nilai sin 𝜃 dan cos 𝜃
merupakan nilai suku pertamanya. sin 𝜃 ≈ 𝜃
cos 𝜃 ≈ 1 (13)
Persamaan (13) dapat diasumsikan pada Persamaan (11). 𝐼. 𝜃̈ + 𝑏. 𝜃̇ = 𝐹𝑣. 𝑙 𝜃 − 𝐹ℎ. 𝑙 (14)
2) Gaya yang Bekerja pada Sumbu X: Gaya yang ada pada sumbu X merupakan gaya horizontal (gaya dorong). Berdasarkan Hukum II Newton, gaya tersebut dibuat ke dalam persamaan berikut. 𝐹ℎ = 𝑚. 𝑎 𝐹ℎ= 𝑚. 𝑑2𝑥 𝐺 𝑑𝑡2 𝐹ℎ = 𝑚. 𝑑2 (𝑥 + 𝑙 sin 𝜃) 𝑑𝑡2 𝐹ℎ= 𝑚. 𝑑2 (𝑥 + 𝑙 𝜃) 𝑑𝑡2 𝐹ℎ= 𝑚. 𝑑2𝑥 + 𝑑2𝑙 𝜃 𝑑𝑡2 𝐹ℎ = 𝑚. (𝑥̈ + 𝑙 𝜃̈) (15)
3) Gaya yang Bekerja pada Sumbu Y:Gaya yang ada pada sumbu Y merupakan gaya vertikal (gaya normal). Gaya tersebut dibuat ke dalam persamaan berikut.
𝐹𝑣= 𝑚. 𝑎 + 𝑚. 𝑔 𝐹𝑣= 𝑚. 𝑑2𝑦𝐺 𝑑𝑡2 + 𝑚. 𝑔 𝐹𝑣= 𝑚. 𝑑2(𝑙 cos 𝜃) 𝑑𝑡2 + 𝑚. 𝑔 𝐹𝑣= 0 + 𝑚. 𝑔
Vol.2 No.2 2017 21 @2017 kitektro
mentransformasikan ke dalam bentuk Laplace, substitusikan terlebih dahulu Persamaan (15) ke Persamaan (17) sebagai berikut.
𝑚. (𝑥̈ + 𝑙 𝜃̈) = 𝑢
𝑚. 𝑥̈ + 𝑚. 𝑙 𝜃̈ = 𝑢 (18)
Lalu Persamaan (15) dan Persamaan (16) disubstitusikan ke Persamaan (14) sebagai berikut.
𝐼. 𝜃̈ + 𝑏. 𝜃̇ = 𝑚. 𝑔. 𝑙 𝜃 − 𝑚. (𝑥̈ + 𝑙 𝜃̈). 𝑙 𝐼. 𝜃̈ + 𝑏. 𝜃̇ = 𝑚. 𝑔. 𝑙 𝜃 − 𝑚. 𝑙. 𝑥̈ − 𝑚. 𝑙2𝜃̈
(𝐼 + 𝑚. 𝑙2)𝜃̈ = 𝑚. 𝑔. 𝑙 𝜃 − 𝑚. 𝑙. 𝑥̈ − 𝑏. 𝜃̇ (19)
Persamaan gerak untuk robot self balancing telah didapat pada Persamaan (18) dan Persamaan (19). Persamaan tersebut lalu diubah menggunakan transformasi Laplace. Kedua persamaan tersebut ditransformasikan terhadap 𝑥, 𝜃, dan 𝑢 sebagai berikut. 𝑚. 𝑠2𝑋(𝑠) + 𝑚. 𝑙. 𝑠2𝜃(𝑠) = 𝑈(𝑠) (20) (𝐼 + 𝑚. 𝑙2)𝑠2𝜃(𝑠) = 𝑚. 𝑔. 𝑙 𝜃(𝑠) − 𝑚. 𝑙. 𝑠2𝑋(𝑠) − 𝑏. 𝑠𝜃(𝑠) (𝐼 + 𝑚. 𝑙2)𝑠2𝜃(𝑠) = 𝑚. 𝑔. 𝑙 𝜃(𝑠) − 𝑚. 𝑙. 𝑠2𝑋(𝑠) − 𝑏. 𝑠𝜃(𝑠) (𝐼 + 𝑚. 𝑙2)𝑠2𝜃(𝑠) − 𝑚. 𝑔. 𝑙 𝜃(𝑠) + 𝑏. 𝑠𝜃(𝑠) + 𝑚. 𝑙. 𝑠2𝑋(𝑠) = 0 (21)
Persamaan (20) dan Persamaan (21) direpresentasikan ke dalam bentuk matriks dengan 𝑈(𝑠) sebagai input, sedangkan 𝑋(𝑠) dan 𝜃(𝑠) sebagai output.
[𝑚. 𝑠 2 𝑚. 𝑙. 𝑠2 𝑚. 𝑙. 𝑠2 (𝐼 + 𝑚𝑙2)𝑠2− 𝑚. 𝑔. 𝑙 + 𝑏. 𝑠] [ 𝑋(𝑠) 𝜃(𝑠)] = [ 𝑈(𝑠) 0 ] [𝑋(𝑠) 𝜃(𝑠)] = [ 𝑚. 𝑠2 𝑚. 𝑙. 𝑠2 𝑚. 𝑙. 𝑠2 (𝐼 + 𝑚𝑙2)𝑠2− 𝑚. 𝑔. 𝑙 + 𝑏. 𝑠] −1 [𝑈(𝑠) 0 ] Misalkan: 𝑎 = 𝑚. 𝑠2((𝐼 + 𝑚. 𝑙2)𝑠2− 𝑚. 𝑔. 𝑙 + 𝑏. 𝑠) − 𝑚2. 𝑙2. 𝑠4 𝑎 = 𝑚. 𝑠2(𝐼. 𝑠2+ 𝑚. 𝑙. 𝑠2− 𝑚. 𝑔. 𝑙 + 𝑏. 𝑠) − 𝑚2. 𝑙2. 𝑠4 𝑎 = 𝑚. 𝐼. 𝑠4+ 𝑚2. 𝑙2. 𝑠4− 𝑚2. 𝑔. 𝑙. 𝑠2+ 𝑚. 𝑏. 𝑠3 − 𝑚2. 𝑙2. 𝑠4 𝑎 = 𝑚. 𝐼. 𝑠4+ 𝑚. 𝑏. 𝑠3− 𝑚2. 𝑔. 𝑙. 𝑠2 (22) sebagai berikut: 𝑋(𝑠) 𝑈(𝑠)= (𝑙 + 𝑚𝑙2)𝑠2− 𝑚. 𝑔. 𝑙 + 𝑏. 𝑠 𝑎 𝑋(𝑠) 𝑈(𝑠)
=
(𝐼+𝑚𝑙2)𝑠2−𝑚.𝑔.𝑙+𝑏.𝑠 𝑚.𝐼.𝑠4+𝑚.𝑏.𝑠3−𝑚2.𝑔.𝑙.𝑠2 (23) 𝜃(𝑠) 𝑈(𝑠)= −𝑚. 𝑙. 𝑠2 𝑎 𝜃(𝑠) 𝑈(𝑠)=
−𝑚.𝑙.𝑠2 𝑚.𝐼.𝑠4+𝑚.𝑏.𝑠3−𝑚2.𝑔.𝑙.𝑠2(24) C. Menghitung Fungsi Transfer
Respon sistem yang akan dihitung adalah fungsi transfer dengan output rotasi. Hal itu karena robot hanya berkerja secara statis (tidak berpindah), hanya bergerak maju dan mundur untuk mencapai kestabilan, sehingga konstanta PID yang digunakan merupakan output rotasi. Berdasarkan fungsi transfer pada Persamaan (24) yang merupakan fungsi rotasi, maka dapat diperoleh nilai konstanta PID melalui perhitungan fungsi transfer sebagai berikut.
Diketahui 𝑚 = 0,8 𝑘𝑔 dan 𝑙 = 0,26 𝑚 𝐼 =1 3𝑚𝑙 2 =1 30,8 . 0,26 2 =0,054 3 = 0,018 𝑘𝑔𝑚2 maka, 𝜃(𝑠) 𝑈(𝑠)= −𝑚. 𝑙. 𝑠2 𝑚. 𝐼. 𝑠4+ 𝑚. 𝑏. 𝑠3− 𝑚2. 𝑔. 𝑙. 𝑠2 𝜃(𝑠) 𝑈(𝑠)= −0,8 . 0,26 𝑠2 0,8 . 0,018𝑠4+ 0,018 − 0,82 . 9,8 . 0,26𝑠2 𝜃(𝑠) 𝑈(𝑠)
=
−0,208 𝑠2 0,0144𝑠4+0,0144𝑠4−1,63𝑠2 (25)Kedua numerator dan denumerator diinput ke dalam Matlab untuk dilakukan tuning. Hal ini bertujuan untuk mendapatkan konstanta PID dengan respon yang stabil.
Vol.2 No.2 2017 22 @2017 kitektro
Respon sistem yang dihasilkan dapat dilihat pada Gambar 12, dimana sinyal respon berkarakteristik underdamped response, walaupun hanya mengalami sedikit overshoot sebesar 20,4%. Parameter PID pada Tabel 2 menunjukkan nilai konstanta integral menjadi nilai terbesar dari ketiga konstanta, karena konstanta integral berfungsi untuk meredam overshoot. Kontanta proportional berfungsi untuk menaikkan nilai rise time dan overshoot, dan konstanta derivatif berfungsi untuk menjaga sistem agar tetap berada di setpoint. Sistem dianggap stabil karena tidak terlalu banyak osilasi dan output mencapai nilai setpoint.
Gambar 12 Sinyal respon untuk output rotasi TABLEIII
KONSTANTA PID UNTUK OUTPUT ROTASI
No. Konstanta Nilai
1. Kp 135,8 2. Ki 812,7 3. Kd 5,7
TABLEIIIII
PERFORMA SISTEM UNTUK OUTPUT ROTASI
No. Parameter Nilai
1. Rise Time 0,0169 detik 2. Settling Time 0,19 detik 3. Overshoot 20,4% 4. Peak 1,2
Berdasarkan Tabel 3, nilai overshoot dapat diperkecil lagi dengan men-tuning ulang sehingga nilai konstanta yang didapat juga berubah. Walaupun overshoot yang didapat sebesar 20,4%, tetapi sistem masih dianggap stabil karena nilai tersebut tidak membesar dan sistem mencapai setpoint dalam waktu 0,19 detik.
D. Menguji Kinerja Robot
1) Batasan Sudut: Pengujian ini dilakukan dengan menjalankan robot sambil memberikan gangguan untuk memperoleh batasan sudut yang bisa dicapai. Kurva pergerakan robot dapat dilihat pada Gambar 13. Berdasarkan hasil pengujian, sudut yang dapat ditahan oleh robot antara range -3,90 sampai 3,90, selebihnya robot akan kehilangan keseimbangan. Nilai tersebut dapat ditoleransi hingga 0,50, dengan syarat kecepatan rotasi robot tidak membesar.
Nilai range tersebut dapat diperbesar dengan memperbesar diameter roda, dengan begitu keliling roda menjadi lebih besar sehingga jarak yang dicapai robot bisa lebih besar hanya
dalam sekali putaran. Dibandingkan dengan roda berdiameter kecil, robot yang dapat mencapai jarak terjauh dengan satu putaran roda adalah robot dengan roda berdiameter besar.
Gambar 13 Kurva pergerakan robot tiap millisecond
2) Pengujian Nilai PID: Pengujian ini dilakukan dengan memberikan nilai 𝐾𝑝, 𝐾𝑖, dan 𝐾𝑑 yang berbeda-beda untuk melihat respon pergerakan robot yang terjadi. Pada
pengujian pertama, digunakan nilai 𝐾𝑝 = 15, 𝐾𝑖 = 90, dan 𝐾𝑑 = 0,8 dengan mengupload program yang telah berisi konstanta tersebut.
Gambar 14 Kurva pergerakan robot pada pengujian pertama
Berdasarkan Gambar 14, pergerakan robot berada pada maximum range antara -30 sampai 10. Terlihat pada kurva, bahwa robot lebih sering bergerak pada bagian negatif, hal ini terjadi karena sisi depan robot lebih berat daripada sisi belakangnya. Ini yang menyebabkan robot miring kebelakang agar sisi depan dan belakang dapat seimbang. Pada kondisi ini, robot mengalami osilasi dan frekuensi yang kecil. Pergerakan robot juga terlihat konstan pada tiap waktu. Melakukan maju dan mundur untuk mencapai setpoint. Pada saat kurva naik ke positif, berarti robot sedang melakukan pergerakan maju, sedangkan pada saat kurva turun ke nagatif, robot melakukan pergerakan mundur.
Pada pengujian kedua, digunakan nilai 𝐾𝑝 = 12, 𝐾𝑖 = 100, dan 𝐾𝑑 = 1. Maka didapat bentuk kurva pergerakan robot seperti ditunjukkan pada Gambar 20.
Gambar 15 Kurva pergerakan robot pada pengujian kedua
Berdasarkan Gambar 15, pergerakan robot berada pada maximum range antara -4,30 sampai 3,40. Pada pengujian ini, robot sedikit melakukan pergerakan tapi memiliki osilasi yang
Vol.2 No.2 2017 23 @2017 kitektro Gambar 16 Kurva pergerakan robot pada pengujian ketiga
Berdasarkan Gambar 16, pergerakan robot berada pada maximum range antara -3,90 sampai 2,60. Pada kondisi ini, frekuensi pergerakan robot lebih besar sehingga menjadikan robot lebih banyak melakukan pergerakan. Walupun keadaan robot dapat berdiri, tetapi osilasi yang terjadi terlalu besar. Hal ini akan menyebabkan robot tidak dapat berdiri lebih lama.
V. KESIMPULAN
Penelitian ini menggunakan sensor gyroscope dan accelerometer. Sumbu yang digunakan hanya sumbu Y, karena robot hanya berotasi pada sumbu tersebut. Peletakan sensor mempengaruhi pembacaannya. Pada penelitian ini, sensor diletakkan di bagian atas robot. Hal ini karena pada bagian atas merupakan tempat yang lebih akurat dalam pembacaan dan mudah dilakukan kalibrasi tanpa harus melepaskan sensor dari robot.
Nilai tegangan yang masuk ke motor harus stabil dan tidak terlalu tinggi. Jika tegangan terlalu tinggi, maka putaran motor menjadi cepat, sehingga robot akan mengalami osilasi. Nilai tegangan yang digunakan adalah 7,5 volt. Diameter roda mempengaruhi batas range sudut. Semakin besar diameter roda, maka semakin besar pula range sudutnya. Semakin kecil diameter roda, maka semakin kecil pula range sudutnya.
Berdasarkan pengujian yang telah dilakukan, robot hanya dapat bertahan pada range sudut antara -3,90 sampai 3,90 dengan toleransi 0,50, dengan syarat kecepatan rotasi robot tidak bertambah. Osilasi yang paling kecil dengan pergerakan yang konstan terjadi pada nilai 𝐾𝑝 = 15, 𝐾𝑖 = 90, dan 𝐾𝑑 = 0,8.
REFERENSI
[1] A. Laksana, I. Setiawan and S. , Balancing Robot Beroda Dua Menggunakan Metode Kendali Proporsional Integral, Semarang: Universitas Diponegoro, 2011.
[2] N. Ginanto, "Wordpress," 26 10 2011. [Online]. Available: https://novikaginanto.wordpress.com/2011/10/26/mencari-transfer-function-fungsi-alih-berdasarkan-data-output-dari-sebuah-sistem/. [Accessed 25 April 2017].
[3] A. Dharmawan and S. Pramudita, Penerapan Sistem Kendali PID untuk Kestabilan Twin-Tiltrotor dengan Metode DCM, Yogyakarta: Universitas Gajah Mada, 2015.
[4] "Wikipedia," 25 Maret 2017. [Online]. Available: https://id.wikipedia.org/wiki/Transformasi_Laplace. [Accessed 3 April 2017].
[10] "Zona Elektro," 21 Oktober 2014. [Online]. Available: http://zonaelektro.net/motor-dc/. [Accessed 4 April 2017].
[11] "Electronics Hub," 18 Februari 2016. [Online]. Available: http://www.electronicshub.org/arduino-rotary-encoder/. [Accessed 4 April 2017].
[12] A. H. Bin Abd Malik, Sistem Pengawal Inverted Pendulum: Perbandingan Diantara Pengawal PID Dan Pengawal State Feedback, Malaka: Universiti Teknikal Malaysia Melaka, 2008.