Senin, 22 Februari 2010

Servo Part II : Timing (Waktu) dan Sudut Servo

.
Baca dulu :
Servo Part I : Kontrol Motor Servo

2. Menentukan Perbandingan Waktu dgn Sudut
Beberapa servo yang presisi (yang mahal), menggunakan komponen-komponen dan sensor potensiometer yang linier dan akurat selain itu disertai datasheet lengkap yang sangat membantu untuk memprogram motor servo tersebut.
Tetapi beberapa servo tidak disertai datasheet dan programmer tidak mengetahui diagram timing untuk penggunaan servo tersebut, sehingga menggunakan cara masing-masing untuk memprogram servo tersebut.

Spesifikasi motor servo yang akan saya bahas adalah motor servo 180°, akan tetapi kenyataannya motor servo memiliki sudut putar lebih dari 180° (Servo yang saya pakai) dan ini merupakan keuntungan.

Langkah-langkah menentukan sudut Motor Servo:
  • Siapkan penggaris busur (pengaris sudut).
  • Ambil nilai waktu awal terkecil dan jadikan sebagai sudut 0°, Saya ambil 500 μS.
  • Nilai 500 μS didapat dengan cara dicoba langsung untuk menggerakkan servo. Berikan nilai 500 μS dan lihat posisi servo, lalu program untuk 480 μS atau 450 μS, jika servo bergerak pada nilai tersebut berarti nilai 500 μS bisa dijadikan patokan 0° tetapi jika tidak bergerak (servo mentok sejak awal) tambah nilainya menjadi 550 μS atau 600 μS. Saya anggap pada nilai 500 μS menjadi patokan 0°.
  • Program motor servo dengan waktu yang variasi sehingga ditemukan sudut 180° dari sudut awal 0° (500 μS). Coba nilai 2000 μS, 2500 μS, dst. Pada servo yang saya gunakan, sudut 180° pada waktu 1980 μS.
  • Sehingga di dapat 500 μS = 0° dan 1980 μS = 180° maka (1980 - 500) / 180 = 8,2222 μS. Artinya bertambah sudut = bertambah waktu 8,2222 μS.
  • Misal : sudut tujuan = 35° berarti waktu yang dibutuhkan Servo ON = 500 μS + (35 x 8.2222 μS) = 787.777 μS lalu Servo OFF.
  • Coba coding untuk variasi sudut-sudut tertentu dan catat linearitasnya. Jika telah sesuai dan linear maka waktu untuk menentukan sudut servo telah ditemukan, sebaliknya jika tidak linear (toleransi error terlalu besar) maka silahkan coba-coba lagi.
Gambar disamping adalah hasil dari percobaan tersebut.
Dan hasil dari menentukan perbandingan waktu dengan sudut motor Servo.

Setelah dicoba timing diganti-ganti, saya simpulkan beberapa hal (silahkan coba dulu dan simpulkan sendiri ^_^ ).
  1. Umumnya timing motor servo adalah 20 mS (sebaiknya lihat datasheet motor servo tersebut) ini adalah waktu periode total saat servo ON dan servo OFF.
  2. Jika motor servo tidak diberikan sinyal kontrol secara terus-menerus maka motor servo akan kehilangan torsinya.
  3. Jika periode motor servo 20 mS maka sebelum mencapai waktu 20 mS, sebaiknya jangan memberikan sinyal kontrol ke motor servo dan menunggu agar motor servo "siap" menerima sinyal selanjutnya.
  4. Dan jika periode motor servo 20 mS maka untuk menjaga torsi motor servo dan meminimalkan waktu eksekusi program sebaiknya total delay saat servo On, servo Off, lalu servo ON adalah 20 mS. Misal spesifikasi periode motor servo 20 mS kemudian total delay periode motor servo 25 mS maka 5 mS tersebut motor servo tidak memiliki torsi.
  5. Dari point 4 dan 5 jika ragu-ragu sedangkan sistem tidak membutuhkan kecepatan eksekusi yang tinggi maka lebih baik menambah sedikit periode sinyal kontrol dibandingkan menguranginya.
....To Be Continue Part III....

Topik yang Populer