Upload
abednego-tarigan
View
22
Download
2
Embed Size (px)
DESCRIPTION
Pulse Width Modulation
Citation preview
PWM
Pulse width modulation
Aplikasi PWM
• Biasanya digunakan untuk pengendalian kecepatan motor DC
• Mengatur gelap-terang nyala LED
• Pembangkitan sinyal sinusoid
Konsep PWM
• Mengatur kecepatan, intensitas cahaya, membuat suatu sinyal analog menggunakan 1 bit sinyal digital
Diagram pengaturan dengan PWM
DRIVER
Sinyal digital 1 bit
PLANT
Sinyal analog
Contoh rangkaian
Motor dc
Sinyal PWM dari mikro
Rangkaian sederhana pengendali kecepatan motor
dc 1 arah dengan PWM
Sinyal PWM
• Berupa gelombang kotak : besar sinyal analog atau aksi pengaturan yang dihasilkan ditentukan oleh duty cycle sinyal PWM, sebagai contoh:
Contoh Sinyal PWM
PWM dengan duty cycle=50%
5 ms 5 ms
7.5 ms 2.5 ms
PWM dengan duty cycle=75% Menghasilkan kecepatan
1500 rpm
1000 rpm
PWM dengan duty cycle=25%
2.5 ms 7.5 ms
500 rpm
Pembangkitan sinyal PWM
+
---
Sinyal referensi, untuk
menentukan duty cycle PWM
Sinyal segitiga, dari
generator
PWM outKomparator
Pembangkitan sinyal PWM
Compare matchnaik
Compare matchturun
PWM 0 pada mikro AVR
• Sinyal segitiga diwakili oleh nilai pada register TCNT0, yang bisa increment /decrement (register counter)
• Sinyal referensi adalah nilai yang tersimpan pada OCR0
• Sinyal PWM dikeluarkan lewat pin OC0 (PB3)
Step by step setting PWM di AVR
• Menggunakan timer 0 PWM 8 bit1. TCNT0 diisi 0 (inisialisasi)2. OCR0 diisi dengan nilai referensi, karena
8 bit, maka nilai referensi yang bisa diisikan dari 0 s/d 255. OCR0 menentukan lebar pulsa yang akan dibuat. Misal untuk dc=50% OCR0=128
3. TCCR0 diisi dengan nilai sbb:
Setting TCCR0
• CS02 .. CS00 diisi dengan kode prescaler yang diinginkan
• COM01=1 dan COM00=0 pin OC0 clear ketika compare match naik dan set ketika compare match turun
• WGM00=1 dan WGM01=0 untuk mengeset timer 0 ke mode PWM
Contoh setting TCCR0
• Jadi kalau diinginkan PWM dengan frekuensi f_xtal/256, yang harus diisikan ke TCCR0 adalah:
0 1 1 0 0 1 0 0
Hasil simulasi dengan proteus