Translate Blog

EnglishFrenchGermanSpainItalianDutchRussianPortugueseJapaneseKoreanArabicChinese Simplified

May 3, 2011

Menghitung Timer Interrupt Pada Pengontrolan Motor Servo

Mungkin masih ada yang bingung dengan posting saya yang sebelumnya dan sebelumya lagi.Hehehehe... cek aja deh.... disini akan dibahas cara menghitung interrupt timer yang dimanfaatkan sebagai pembangkit pulsa pada pengontrollan Motor Servo. perhatikan angka pada program interrupt dibawah ini terlebih dahulu.

pada bagian angka 867 didapat dai perhitungan rumus berikut ini:

Rumus
A = (1/Crystall) * 255
B = (1/Frequency Motor DC)
Hasilnya = B/A
Jika di hitung menjadi seperti berikut ini alurnya. disini frekuensi motor DC biasanya 50 Hz dengan tegangan yang cukup sehingga memenuhi kebutuhan arus dari motor itusendiri. berikut ini adalah perhitungannya.
A = (1/11059200)* 255
    = (9,04224537037037e-8)*255
    = 2,305772569444444e-5


B = (1/50)
    = 0,02

Hasilnya = B/A
              = 0,02 / 2,305772569444444e-5
              = 867,3882352941176
sedangkan pada bagian angka dibawahnya adalah sebagai pembatas saja. dikarenakan motor servo hanya membutuhkan pulsa selebar 1ms sampai 2ms maka dibatasi mulai range 22 - 109 (sesuai percobaan).
untuk mendapatkan angka ini cukup dengan memberikan nilai yaitu dengan langkah sebagai berikut
Langkah Pengujian
  1. ganti angka 22 dengan 0 dan 109 dengan 867(maksimum)
  2. lakukan pengontrolan 1 servo saya yang ingin diketahui batasannya
  3. berikan angka pada servo tersebut dan amati pergerakannya.
  4. jika sudah mencapai 180 derajat atau 0 derajat(putaran habis).
  5. lakukan pengurangan atau penambahan untuk mengetahui pergerakan servo apakah jika dikurangi malah berbalik atau sebaliknya.
  6. jika sudah maka lakukan pengurangan atau penambahan sedikit demi sedikit untuk mendapatkan nilai pasti dari posisi itu (180 atau 0 derajat) samapai menurut kita posisi itu adalah sudah cocok. 
  7. catar angkanya dan buat pembatasnya.
Pembatas ini di buat agar saat servo dijalankan tidak terjadi delay dari interrup itu sendiri. jika banyak sekali angka yang tersisa seperti halnya yang digunakan hanya range 22 - 109 maka sisanya akan menjadi delay. sehingga respon robot berkurang alias kurang cepat.
Makasih.









Daftar Pustaka:  www.digitdude.com.

4 comments:

  1. kalau nilai 22-109 itu dapat dari mana bang??

    ReplyDelete
  2. kalau yang 22-109 itu dapat dari mana mas???

    ReplyDelete
  3. kalau yang 22-109 itu dapat dari mana mas??

    ReplyDelete
  4. kalau yang 22-109 itu dapet dari mana mas??

    ReplyDelete