Transcript PWM

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
PLANT
Sinyal digital 1 bit
Sinyal analog
Contoh rangkaian
Rangkaian sederhana
pengendali kecepatan motor
dc 1 arah dengan PWM
Sinyal PWM dari mikro
Motor dc
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=75%
Menghasilkan kecepatan
1500 rpm
7.5 ms
2.5 ms
PWM dengan duty
cycle=50%
1000 rpm
5 ms
5 ms
PWM dengan duty
cycle=25%
500 rpm
2.5 ms
7.5 ms
Pembangkitan sinyal PWM
Sinyal referensi,
untuk
menentukan duty
cycle PWM
+
Komparator
---
Sinyal
segitiga, dari
generator
PWM out
Pembangkitan sinyal PWM
Compare match
naik
Compare match
turun
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 bit
1. 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:
01100100
Hasil simulasi dengan proteus