e-book [ kendalimotorservo ]
TRANSCRIPT
-
7/24/2019 E-book [ KendaliMotorServo ]
1/6
Kendali Motor Servo (Hobby Servo) menggunakan AVR
Motor servo disebut sistem umpan-balik tertutup. Ini berarti motorsudah mempunyai rangkaian kendali, yang meraba bila mekanisma
motor dalam lokasi yang diinginkan dan bila tidak dalam lokasi yangdiinginkan kesalahan akan dikoreksi secara terus menerus sampaimotor mencapai titik yang benar.
Motor servo banyak digunakan dalam robotika, pesawat remotecontrolled, mobil-mobilan RC. Sehingga bentuk dan ukurannya
berbeda-beda, tetpi cara kerjanya hampir sama. Biasanya motor servodikendalikan oleh komputer, mikrokontroller atau bahkan rangkaiantimer yang sederhana. Tentunya Anda dapat mencari servo R/C (Radio
Controlled) yang lebih maju. Namun, sama saja hanya servomengambil signal dari penerima.
Bagaimana cara kerja motor servo
Biasanya motor servo diletakkan dalam kotak plastik, tetapi
didalamnya semua sigtem sudah ada: motornya sendiri, roda gigi dan
penggerak motor dan unit kendali.
Roda gigi mengurangi kecepatan motor tetapi menaikkan torsi. Sepertidijelaskan diawal bahwa servo bekerja dengan upan bali tertutup. Ini
sesungguhnya adalah potensio meter yang dihubungakn ke sumbu
mekanik dan meraba sudut putaran. Potensiometer secara langsungmenunjukkan sudut putar. Sinyal potentiometer yang menjalankanmotor sampai potensiomter sampai motor samapi pada sudut yang
diinginkan, lalu logik akan mematikan motor. Servo biasanya dicatudengan tegangan DC dari 4,8 sampai 7,2 V.Biasanya servo dirancang dengan putara yang terbatas seperti 90o
atau 180o dan sebagainya. Tentunya motor dapat dimodifikasi untuk
-
7/24/2019 E-book [ KendaliMotorServo ]
2/6
putaran kontinyu. Putaran yang tepat dan gaya yang kuat karenasistem roda gigi membuat sistem servo ideal untuk robotika.
Sinyal kendali ServoSumbu motor servo diatur posisinya dengan sinyal PWM (pulse
width modulated). Sehingga semua motor servo mempunyai tiga kabel
(Power, Ground dan Kendali). Pulsa-pulsa dikirim melalui kabelkendali. Biasanya motor servo untuk hobi mempunyai sudut rotasi 90o
diberi sinyal bervariasi antara 1 dan 2ms. Bila pulsa lebih lebar maka
putaran akan terus berjalan sampai mencapai batas rotasi
mekaniknya.
Frekuensi dari PWM biasanya dalam daerah 30 sampai 60Hz (15 30ms) ini disebut refresh rate.Bila refresh rate terlalu kecil maka
ketelitian servo akan berkurang karena akan kehilangan posisinyasecara periodik, bila referesh rate terlalu besar, maka servo akan akanbergetar. Penting untuk memilih rate yang optimal sehingga motorservo bisa terkunci diposisinya.
Rangkaian daya dari motor tergantung pada perbedaan antara posisisekarang dan posisi motor yang diharapkan. Bila perbedaannya kecil
maka energi yang diberikan ke motor kecil, sehingga motor tidakoverhoot motor dalam hal ini dijalankan dengan lambat. Tetapi bila
perbedaaanya besar, maka motor di putar pada kecepatan penuh yang
-
7/24/2019 E-book [ KendaliMotorServo ]
3/6
membuat posisi baru dapat dicapai dengan secepat mungkin. Bilamotor mendekati posisi baru, motor akan melambat agar dapat
berhenti pada posisi yang tepat. Proses yang runit ini akan berakhirdalam setengah detik bila berputar sebesar 60o.
Kendali Servo menggunakan Atmega8
Mari kita lihat contoh kendali motor servo menggunakan Atmega8 danTimer1 fast PWM. Rangkaianya hanya bagian utama.
Bit7 - 6 (COM1A1:0) = Compare Output untuk channel A
Bit5 - 4 (COM1B1:0) = Compare Output untuk channel B
-
7/24/2019 E-book [ KendaliMotorServo ]
4/6
Bit3 (FOC1A) = Force Output Compare A
Bit2 (FOC1B) = Force Output Compare B
Bit1-0 (WGM11:0) = Waveform Generation Mode
-
7/24/2019 E-book [ KendaliMotorServo ]
5/6
Bit 7 ICNC1: Input Capture Noise Canceler
Bit 6 ICES1: Input Capture Edge Select
Bit 5 Reserved Bit
Bit 4:3 WGM13:2: Waveform Generation Mode
Bit 2:0 CS12:0: Clock Select
Pada program ini disetting:
TCCR1A = 0b10000010
COM1A1:0 = 10 -> Clear OC1A on COMPARE MATC, Set OC1A at TOPCOM1B1:0 = 00 -> Normal port operation, OC1B not connected
FOC1A = 0FOC1B = 0WGM11 = 1WGM10 = 0
TCCR1B = 0b00x11000ICNC1 = 0ICES1 = 0Reserved bit = xWGM13 = 1WGM12 = 1CS12 = 0
-
7/24/2019 E-book [ KendaliMotorServo ]
6/6
CS11 = 1CS10 = 0
Jadi:WGM13:0 = 1110 -> Mode 14 = Fast PWM, TOP = OCR1, Update OCR1A on TOP,TOV1 Set on TOP
CS2:0 = 010 -> Prescaler = 8 -> Clk / 8
Frekuensi dari Fast PWM adalah:
Bila fclk
= 1000000 Hz, N = 1, ICR1 = 20000, maka f = 50 Hz