Pretvorniki, pretvorniki, SMPS vezja in regulatorji hitrosti…. V vseh teh vezjih je nekaj skupnega, da je v njem veliko elektronskih stikal. Ta stikala niso nič drugega kot napajalne elektronske naprave, kot so MOSFET, IGBT, TRIAC itd. Za nadzor takšnih močnostnih elektronskih stikal običajno uporabljamo nekaj, kar imenujemo PWM signali (Pulse Width Modulation). Poleg tega se PWM signali uporabljajo tudi za pogon servo motorjev in tudi za druga preprosta opravila, kot je nadzor svetlosti LED.
V prejšnjem članku smo izvedeli več o ADC, medtem ko ADC digitalne naprave, kot je mikrokrmilnik, uporabljajo za branje analognih signalov. PWM lahko štejemo za njegovo ravno nasprotje, PWM se uporablja za izdelavo analognih signalov iz digitalne naprave, kot je mikrokrmilnik. V tem članku bomo izvedeli, kaj so PWM, PWM signali in nekateri z njimi povezani parametri, tako da bomo lahko prepričani, da jih uporabljamo v svojih načrtih.
Kaj je PWM (modulacija širine impulza)?
PWM pomeni modulacija širine impulza; vzrok za takšno ime bomo dobili pozneje. Zaenkrat pa PWM razumemo kot vrsto signala, ki ga lahko proizvedemo iz digitalne IC, kot je mikrokrmilnik ali 555 časovnik. Tako proizvedeni signal bo imel niz impulzov in ti impulzi bodo v obliki kvadratnega vala. To pomeni, da bo val v vsakem trenutku visok ali pa bo nizek. Za lažje razumevanje si oglejmo 5V PWM signal, v tem primeru bo PWM signal 5V (visok) ali na nivoju tal 0V (nizek). Trajanje, pri katerem signali ostanejo visoki, se imenuje " on time ", čas, ko signal ostane nizek, pa " off time ".
Za signal PWM moramo preučiti dva pomembna parametra, povezana z njim, eden je delovni cikel PWM, drugi pa frekvenca PWM.
Delovni cikel PWM
Kot smo že povedali, signal PWM ostane vklopljen določen čas, nato pa ostane izklopljen do konca obdobja. Zaradi česar je ta signal PWM poseben in uporabnejši, lahko z nadzorom delovnega cikla signala PWM nastavimo, kako dolgo naj ostane vklopljen.
Odstotek časa, v katerem signal PWM ostane VISOK (pravočasno), se imenuje delovni cikel. Če je signal vedno vklopljen, je v 100% obratovalnem ciklu in če je vedno izklopljen, je 0% obratovalni cikel. Formule za izračun delovnega cikla so prikazane spodaj.
Delovni cikel = čas vklopa / (čas vklopa + čas izklopa)
Naslednja slika predstavlja signal PWM s 50% delovnim ciklom. Kot lahko vidite, ob upoštevanju celotnega časovnega obdobja (čas + čas izklopa) ostane signal PWM vklopljen le 50% tega obdobja.
Frekvenca = 1 / časovno obdobje Časovno obdobje = čas vklopa + čas izklopa
Običajno bodo PWM-signali, ki jih generira mikrokrmilnik, približno 500 Hz, tako visoke frekvence pa bodo uporabljene v hitrih stikalnih napravah, kot so pretvorniki ali pretvorniki. Toda vse aplikacije ne zahtevajo visoke frekvence. Na primer za krmiljenje servo motorja moramo proizvajati PWM signale s frekvenco 50 Hz, zato je frekvenco PWM signala tudi mogoče nadzorovati s programom za vse mikrokrmilnike.
Nekaj pogostih vprašanj o PWM
Kakšna je razlika med delovnim ciklom in frekvenco signala PWM?
Delovni cikel in frekvenca signala PWM se pogosto zamenjata. Kot vemo, je signal PWM kvadratni val z določenim časom in časom izklopa. Vsota tega časa in odsotnosti se imenuje eno časovno obdobje. Inverza enemu časovnemu obdobju se imenuje frekvenca. Medtem ko čas, ko mora signal PWM ostati vklopljen v enem časovnem obdobju, določa delovni cikel PWM.
Poenostavljeno, kako hitro naj se vklopi in izklopi signal PWM, določa frekvenca signala PWM in pri tej hitrosti, koliko časa naj ostane signal PWM vklopljen, določa delovni cikel signala PWM.
Kako pretvoriti PWM signale v analogno napetost?
Za preproste aplikacije, kot je nadzor hitrosti enosmernega motorja ali prilagajanje svetlosti LED, moramo pretvoriti signale PWM v analogno napetost. To je mogoče enostavno narediti z uporabo RC filtra in se pogosto uporablja tam, kjer je potrebna funkcija DAC. Vezje za isto je prikazano spodaj
Na zgornjem grafu je rumeno obarvan signal PWM, modro barvni pa izhodna analogna napetost. Vrednost upora R1 in kondenzatorja C1 je mogoče izračunati na podlagi frekvence signala PWM, vendar se običajno uporablja upor 5,7K ali 10K in kondenzator 0,1u ali 1u.
Kako izračunati izhodno napetost signala PWM?
Izhodna napetost signala PWM po pretvorbi v analogni bo odstotek delovnega cikla. Na primer, če je delovna napetost 5V, bo signal PWM imel tudi 5V, ko bo visok. V takem primeru bo za 100-odstotni delovni cikel izhodna napetost 5 V, za 50-odstotni delovni cikel pa 2,5 V.
Izhodna napetost = obratovalni cikel (%) * 5
Primeri:
V številnih projektih smo že uporabljali PWM z različnimi mikrokrmilniki:
- Modulacija širine impulza z ATmega32
- PWM z Arduino Uno
- Ustvarjanje PWM z uporabo mikrokrmilnika PIC
- Vadnica za PWM Raspberry Pi
- Krmiljenje servo motorja z Raspberry Pi
- Modulacija širine impulza (PWM) z uporabo MSP430G2
- Modulacija širine impulza (PWM) v STM32F103C8
- Krmiljenje servo motorja z Raspberry Pi
- Krmiljenje enosmernega motorja z Raspberry Pi
- 1-vatni LED zatemnilnik
- LED zatemnilnik na osnovi Arduina z uporabo PWM
Nadalje preverite vse projekte, povezane s PWM.