Anda di halaman 1dari 3

Percobaan IV

MOTOR (DC DAN SERVO)


Diah Aryani (13116076)
Asisten : Fauzan Ghozi Al-Ayubi (13115021)
Tanggal Percobaan : 06/04/2019
EL3202 Praktikum Sistem Mikroposesor
Laboratorium Teknik Elektro
Institut Teknologi Sumatera

pada bit WGM01 dan WGM02. Sumber clock untuk


Abstrak—Pada percobaan ini, dilakukan percobaan terhadap Timer/Counter ditentukan oleh bit CS02 dan CS00 pada I/O
motor (DC dan servo). Selain itu, dilakukan pula percobaan register TCCR0 bit ke 2 sampai 0.
dengan menggunakan inputan berupa switch untuk membuat
motor berputar. Pada percobaan selanjutnya kecepatan motor
diatur menggunakan switch. Beberapa PORT dari board
digunakan seperti PORT D dan C. PORT D digunakan sebagai
output lalu PORT C sebagai input. Kecepatan motor
dipengaruhi oleh besar nilai PWM.

Kata Kunci—Motor, AVR, ATMega8535.

I. PENDAHULUAN
Praktikum ini dilakukan untuk mengetahui bagaimana
membuat motor berputar menggunakan ATMega8538. Selain
itu, akan dilihat pula faktor yang mempengaruhi kecepatan
dari motor tersebut.
Tujuan yang ingin dicapai pada percobaan ini yaitu :
 Mampu membuat program yang menggunakan 16-bit
Timer/Counter1 pada mikrokontroller ATmega8535
sebagai PWM (Pulse Width Modulation) untuk
mengontrol kecepatan putar suatu motor DC.
 Mampu membuat program yang menggunakan pin
I/O AVR untuk menggerakan motor servo serta
menggunakan 8-bit Timer/Counter2 sebagai waktu
tunda.

II. LANDASAN TEORETIS


Mikrokontroller AVR ATmega8535 mempunyai dua 8-bit
Timer/Counter (Timer/Counter0 dan Timer/Counter2) dan
satu 16-bit Timer/Counter (Timer/Counter1). Timer/Counter
mengalami overflow pada saat hitungan Timer/Counter
(TCNT0/TCNT1/TCNT2) mencapai maksimum (FFH untuk
8-bit atau 0xFFFF untuk 16-bit Timer/Counter) dan kembali
ke hitungan 0x00 atau 0x0000. Pada mode operasi normal
Timer/Counter Overflow Flag (TOV0/TOV1/TOV2) akan
otomatis berlogika ‘1’pada saat Timer/Counter Register
menjadi nol. Bit Timer/Counter Overflow Flag dapat
dibersihkan (menjadi berlogika ‘0’) dengan memberikan nilai
logika ‘1’pada flag tersebut. Mode operasi Timer/Counter0
antara lain mode normal, mode CTC, mode Fast PWM, dan
mode Phase Correct PWM. Pemilihan mode operasi diatur
Resolusi PWM untuk Mode Phase Correct PWM dapat 8, 9, Penggunaan 8-bit Timer/Counter2 Untuk Mengendalikan
atau 10 bit, atau ditentukan nilai ICR1 atau OCR1A. Resolusi Motor Servo 1800
minimum yang diperbolehkan sebesar 2-bit (ICR1 atau
OCR1A = 0x0003) dan resolusi maksimum sebesar 16-bit Terdapat dua macam motor servo yaitu standard servo dan
(ICR1 atau OCR1A = 0xFFFF). Resolusi PWM dapat continuous servo. Standard Servo hanya dapat berputar pada
dighitung dengan menggunakan persamaan : posisi 00 sampai 1800 sedangkan continuous servo dapat
berputar terus menerus (3600).
RPCPWM = log (𝑇𝑂𝑃+1)
log(2)

Frekuensi output PWM ketika menggunakan Phase Correct


PWM dapat dihitung dengan menggunakan persamaan:

FOC1xPCPWM = 𝑓𝑐𝑙𝑘 𝐼/𝑂


2.𝑁.𝑇𝑂𝑃
Penggunaan 16-bit Timer/Counter1 Untuk Mengendalikan
Kecepatan Motor DC

Untuk menggerakkan suatu motor DC menggunakan


mikrokontroller diperlukan suatu rangkaian driver motor.
Rangkaian driver motor dapat berupa rangkaian transistor,
relay, rangkaian MOSFET, IC, dan sebagainya. Dalam Gambar 2 menunjukkan bentuk pulas yang diberikan ke motor
aplikasi ini digunakan IC L293D yang memiliki kemampuan servo untuk mengubah posisi putaran motor servo. Lebar pulsa
mengalirkan arus sebesar 600mA. Tegangan kerja IC L293D yang diberikan harus akurat jika tidak maka putaran motor
dari 6 volt sampai dengan 36 volt dan arus impuls tak berulang servo akan tidak tepat pada posisinya. Catatan : Lebar pulsa
maksimum sebesar 1,2 ampere. Gambar di bawah ini yang diberikan ke motor standard servo tidak boleh kurang
menunjukkan konfigurasi pin IC L293D. dari 920 us untuk full counterclockwise dan tidak boleh lebih
dari 2120 us untuk full clockwise sebab dapat menyebabkan
kerusakan pada motor servo. Kerusakan terjadi karena motor
berputar melebihi dari batas putaran (00 – 1800 ) yang mana
pada batas tersebut motor tidak bias berputar sehingga dapat
menyebabkan motor servo terbakar.

III. METODOLOGI

A. Alat dan Bahan


Berikut merupakan alat dan bahan yang digunakan dalam
percobaan:
1. Komputer
2. Software AVR
Pada gambar di atas, pin VCC (kaki 8) merupakan sumber 3. Khazama
tegangan untuk rangkaian digital (INPUT) dan pin VSS (kaki 4. Motor DC
16) merupakan sumber tegangan untuk rangkaian motor
(OUTPUT). Pin ENABLE 1,2 (kaki 1) digunakan untuk
mengaktifkan channel 1 (INPUT 1) dan channel 2 (INPUT 2)
sedangkan pin ENABLE 3,4 (kaki 9) digunakan untuk
mengaktifkan channel 3 (INPUT 3) dan channel 4 (INPUT 4).
B. Langkah Kerja
Memulai praktikum Motor berputar setelah switch ditekan, namun putarannya
sangat pelan. Hal tersebut dapat terjadi karena kurang baiknya
lagi kondisi motor. Apabila switch tidak ditekan maka motor
tidak akan berputar. Hal tersebut juga dipengaruhi oleh
kodingan yang dijalankan, sehingga switch dapat menjadi
inputan untuk motor.
Rangkailah motor pada
board. Berikut adalah kpdingan dari percobaan tersebut :

#include <mega8535.h>
#include <delay.h>

void main(void)
{
unsigned int temp;
Jalankan program sesuai PORTC=0x00;
modul. DDRC=0x00;
PORTD=0x00;
DDRD=0x30; // PD4 (OC1B) dan PD5 (OC1A)
sebagai output

TCCR1A=0x82; // PWM, Phase correct


TCCR1B=0x12; // Clock
TCNT1=0x0000;
Amati dan catat hasil.
ICR1H=0xFF; // Resolusi phase correct PWM 16 bit
ICR1L=0xFF;
OCR1A=0x0000;
temp=0x0FF0; // Nilai awal PWM
while (1){
if(PINC.0==0){
delay_ms(10);
temp-=0xFF;
IV. HASIL DAN ANALISIS if(temp==0xFF01)
Dari percobaan didapatkan hasil sebagai berikut : temp=0x0000;
}
A. Rangkaian yang digunakan pada praktikum if(PINC.1==0){
delay_ms(10);
Pada percobaan ini digunakan rangkaian tersebut. temp+=0xFF;
Rangkaian if(temp==0x00FE)
temp=0xFFFF;
}
OCR1A=temp;
};
}

V. SIMPULAN
 PORT D digunakan sebagai output pada IC LS293D.
 PORT C digunakan sebagai input, dihubungkan pada
SWITCH 0 dan 1.

REFERENSI
[1] Modul praktikum system mikroprosessor

Anda mungkin juga menyukai