Joonis 1. Pulsilaiusmodulatsiooni näide: järjestikuste impulssidega moduleeritud pinge vahelduvvoolumootori klemmide vahel (sinine), mille tulemusel tekib mootoris siinusesarnane vahelduv magnetvoog (punane)
**Pulsilaiusmodulatsioon** (**PWM**) ehk **impulsilaiusmodulatsioon** ehk **laiusimpulssmodulatsioon** on modulatsiooni liik, milles väljundpinge reguleerimiseks muudetakse impulsside laiust. Lühend **PWM** tuleb ingliskeelsest terminist ***P**ulse **W**idth **M**odulation*.

Kuigi pulsilaiusmodulatsiooni saab kasutada informatsiooni edastamiseks, on selle peamine kasutusala elektriseadmete võimsuse reguleerimine, eriti suure inertsiga koormiste, näiteks elektrimootorite puhul.

Koormisele rakendatava pinge (ja voolu) keskväärtust juhitakse toitepinge ning koormuse vahelise lüliti kõrge sagedusega sisse- ja väljalülitamise teel. Mida kauem on lüliti sisse lülitatud (ehk koormis on ühendatud toitepingega) võrreldes väljalülitatud ajaga, seda suurem on koormisele rakendatav pinge.

Pulsilaiusmodulatsiooni sisse- ja väljalülitussagedus peab olema nii suur, et see ei mõjutaks rakendatavat koormist soovimatul kujul. Selline sagedus on seadmetel väga erinev. Näiteks peab elektripliidi puhul lülitamine käima vaid paar korda minutis, lambi valgusregulaatoris 120 korda sekundis ning helivõimendites ja mikroskeemides peab lülitussagedus olema kümnetes kuni sadades kilohertsides.

Peamine pulsilaiusmodulatsiooni eelis on see, et lülitusseadmetes on võimsuse kadu väga väike. Kui lüliti on avatud, ei jookse läbi lüliti peaaegu mingit voolu, ja kui lüliti on suletud ning voolu läbib koormist, siis pole lülitil praktiliselt mingit pingelangu.

Tööpõhimõte
-----------

**PWM**-i saab kasutada RGB ledide heleduse muutmiseks või servomootorite pöörlemiskiiruse ja pöörlemissuuna reguleerimiseks. Kõik need kasutusalad on võimalikud, kuna pulsilaiusmodulatsiooniga saab määrata aja, kaua signaal on kõrges olekus. Kui tavaliselt saab signaal olla, kas ainult kõrge (ühendatud toitega) või ainult madal (ühendatud maaga), siis PWM võimaldab määrata kindlas ajaintervallis signaali kõrge ning madala oleku osakaalu.

Joonis 2. Täitetegur {\displaystyle D} on defineeritud pulsi laiuse ({\displaystyle PW}) ja signaali perioodi ({\displaystyle T}) suhtena
Seda, kui pikalt on signaal ühes perioodis kõrges olekus, kirjeldab **täitetegur**, mis on pulsi laiuse ning signaali perioodi suhe. Protsentides väljendatav täitetegur näitab, kui suure osa ajast on ühes perioodis digitaalne signaal kõrges olekus. Pulsilaiusmodulatsiooni puhul tähendab madal täitetegur madalat pinget.

**Täitetegurit** saab defineerida järgmiselt:

{\displaystyle D={\frac {PW}{T}}\times 100\%,}

kus {\displaystyle D} on täitetegur, {\displaystyle PW} on pulsi laius ja {\displaystyle T} on signaali periood .

Kui digitaalne signaal on pool ajast kõrge ja pool ajast madal, võib öelda, et selle signaali täitetegur on 50%. Selline signaal väljendab ideaalset kastsignaali. Kui täitetegur on suurem kui 50%, on signaal rohkem aega kõrges kui madalas olekus. Kui täitetegur on väiksem kui 50%, on signaal rohkem aega madalas kui kõrges olekus. 100% täitetegur tähendab, et koormisele rakendatav pinge on võrdne toitepingega. 0% täitetegur tähendab, et signaal on ühendatud maaga.

Pulsilaiusmodulatsioon kasutab kastsignaali kujulist lainekuju, mille keskmist väärtust saab arvutada järgmiselt:

Joonis 3. Pulseeriv signaal
{\displaystyle {\bar {y}}={\frac {1}{T}}\int \_{0}^{T}f(t)\,dt,}

kus {\displaystyle f(t)} on signaal, {\displaystyle T} on signaali periood, {\displaystyle D} on täitetegur, {\displaystyle y\_{\text{min}}} on signaali madal väärtus ja {\displaystyle y\_{\text{max}}}on signaali kõrge väärtus .

PWM digitaalsetes vooluringides
-------------------------------

Paljud digitaalsed vooluringid (nagu mikrokontrollerid) suudavad genereerida PWM-signaali. Mikrokontrollerid kasutavad tavaliselt loendurit, mis suureneb perioodiliselt (loendur on vahetult ühendatud kellaga) ja läheb nulli iga PWM-i perioodi lõpus. Programmeerijal on võimalik määrata pulsilaiusmodulatsiooni täitetegur ning sagedus. Kui loenduri väärtus saab suuremaks kui kontrollväärtus, muudetakse PWM-i väljund vastupidiseks (kõrgest madalaks või madalast kõrgeks).

PWMi tüübid
-----------

Joonis 4. Kolm PWMi tüüpi (sinine): fikseeritud juhtiv serv, fikseeritud tagumine serv ja fikseeritud keskosa (mõlemaid servi moduleeritakse). Rohelised jooned on saehamba signaal (esimesel ja teisel juhul) ning kolmnurksignaal (kolmandal juhul)
Pulsilaiusmodulatsioonil on kolm tüüpi:

1. Pulsi keskosa on fikseeritud ning pulsi mõlemaid servi liigutatakse pulsi moduleerimiseks.
2. Pulsi juhtiv serv on fikseeritud ning moduleerimiseks liigutatakse tagumist serva.
3. Pulsi tagumine serv on fikseeritud ning moduleerimiseks liigutatakse juhtivat serva.

Joonisel 4 on näha kõik kolm tüüpi.

Eriliigid
---------

* Vektormodulatsioon – pulsilaiusmodulatsiooni tekitamine mitmefaasilistes süsteemides mitme väljundi ühise juhtimisega.
* Delta-modulatsioon (Δ-modulatsioon).
* Sigma-delta-modulatsioon (ΣΔ-modulatsioon, kasutatakse analoog-digitaalmuundurites).

Analoogsignaali teisendus
-------------------------

Kõige lihtsam viis analoogsignaalist PWM-signaali saamiseks on võrdlemismeetod. Selle meetodi jaoks on vaja saehammas- või kolmnurksignaali ning komparaatorit. Kui võrdlussignaal (punane siinus joonisel 5) on suurem kui saehammas- või kolmnurksignaal (sinine), siis on PWM-signaal kõrge. Vastasel juhul on signaal madal.

Taolise signaali moduleerimisega on PWM-i võimalik kasutada analoogsignaalina esineva heli salvestamiseks digitaalsel kujul.

Kasutus
-------

Pulsilaiusmodulatsioon leiab tänapäeval kasutust väga paljudes kohtades, alates elektritarvitite võimsuse reguleerimisest ja lõpetades info edastamisega .

Joonis 5. Lihtne meetod PWM-signaali genereerimiseks: võrdlussignaali (siin roheline siinus) võrreldakse saehamba signaaliga (sinine). Kui võrdlussignaal on suurem kui saehamba signaal, on PWM-i (roosa) olek kõrge (1). Vastupidisel juhul on olek madal (0)
### Võimsustarbe reguleerimine

Pulsilaiusmodulatsioon võimaldab reguleerida koormisele rakendatavat pinget ilma võimsust kaotamata. Sellise tehnoloogia negatiivseks küljeks on see, et koormisele rakendatav pinge ei ole konstantne, vaid katkendlik. Vaatamata sellele on kõrge sageduse ning passiivsete sagedusfiltritega võimalik signaali siluda ning saavutada pidev analoogsignaal.

Pulssi genereeriva vooluringi võimsus ei ole konstantne ning vajab enamikul juhtudel mingit ladustamisvõimalust. Selleks sobib näiteks pulssi genereerivasse vooluringi paigutatud kondensaator.

Kõrge sagedusega töötava pulsilaiusmodulatsioon on kergelt realiseeritav pooljuhtlülititega. Nagu eelnevalt mainitud, ei ole lüliti lahtises või kinnises olekus mingit energiakadu. Kuid sisse- ja väljalülitamise ajal on nii pinge kui ka vool nullist erineva väärtusega ning lülitis tekib energiakadu. Seetõttu peab lüliti sisse- ja väljalülitumise aeg olema võimalikult lühike. Taoliseks kiireks lülituseks sobivad hästi erinevad transistorid nagu metall-oksiid-pooljuht väljatransistorid (MOSFET) või bipolaartransistorid (IGBT).

### Servomootorid

Mida suurem on pulsilaiusmodulatsiooni täitetegur, seda suurem on mootorile rakendatav pinge. Mida suurem on pinge, seda tugevam on mootori sees olev magnetvoog ning seda kiiremini pöörleb mootor.

### Pingeregulaator

Pulsilaiusmodulatsiooni kasutatakse ka pingeregulaatorites. Soovitud väljastatav pinge saadakse õige täiteteguri valimisega. Müra vähendatakse tavaliselt induktiivpooli ning kondensaatori lisamisega.

### Heli

Kui juhtida PWM-signaal kõlarisse, on võimalik teha heli sünteesi muusikas. Muutes signaali perioodi, saab programmeerija muuta noodi kõrgust, ning muutes täitetegurit, saab programmeerija muuta heli tugevust. Väljundsignaal paneb kõlari membraani võnkuma ja kostab heli.

Impulsilaiusmodulatsiooni kasutades saab teostada heli võimsusvõimendeid – PWM-võimendeid.

Üks pulsilaiusmodulatsiooni eeliseid on see, et liikudes ühest ahelast teise, püsib signaal terve aja digitaalsena. Vahepeal ei ole vaja digitaalsignaali muuta analoogsignaaliks. Hoides signaali digitaalsena, esineb info edastamisel vähem müra. Müra saab digitaalset signaali mõjutada ainult juhul, kui on nii tugev, et suudab loogilise ühe muuta loogiliseks nulliks (või vastupidi). Just müra vähesus on üks peamiseid põhjuseid, miks vahel pulsilaiusmodulatsioon kommunikatsiooniks valitakse. Lõpuks saab infot vastuvõtvas pooles muuta RC- või LC-filter kõrgesagedusliku kastsignaali analoogsignaaliks.

Helisalvestuses kasutatavates analoogmagnetofonides on vahelduvvooluga eelmagneetimise korral sisuliselt tegemist impulsslaiusmodulatsiooniga.

Viited
------

1. 1 2 3 4 5 6 7 8  "PWM modulation". *PCB Heaven* (inglise keeles). 10.03.2009. Vaadatud 31.10.2016.`{{netiviide}}`: CS1 hooldus: tundmatu keel (link)
2. 1 2 3  "Introduction to Pulse Width Modulation (PWM)". *BARR Group* (inglise keeles). 01.09.2001. Vaadatud 31.10.2016.`{{netiviide}}`: CS1 hooldus: tundmatu keel (link)
3. 1 2  "Introduction to Pulse Width Modulation". *Embedded* (inglise keeles). 31.08.2001. Vaadatud 01.11.2016.`{{netiviide}}`: CS1 hooldus: tundmatu keel (link)
4. 1 2  Cox, James F.; Chartrand, Leo. "Nonsinusoidal oscillators". *Fundamentals of Linear Electronics: Integrated and Discrete (2 ed.)*. Cengage Learning. Lk-d 511–584. ISBN 0-766-83018-7.
5. ↑  "Pulse-width Modulation". *Sparkfun* (inglise keeles). Vaadatud 31.10.2016.`{{netiviide}}`: CS1 hooldus: tundmatu keel (link)
6. ↑  "Average and effective values". *meettechniek.info* (inglise keeles). Vaadatud 12.11.2016.`{{netiviide}}`: CS1 hooldus: tundmatu keel (link)
7. ↑  "Types of PWM". *Instructables* (inglise keeles). Vaadatud 31.10.2016.`{{netiviide}}`: CS1 hooldus: tundmatu keel (link)
8. ↑  "Pulse Width Modulation". *Electronics Tutorials* (inglise keeles). Vaadatud 31.10.2016.`{{netiviide}}`: CS1 hooldus: tundmatu keel (link)
9. ↑  "Voltage- and Current-Mode Control for PWM Signal Generation in DC-to-DC Switching Regulators". *Digikey* (inglise keeles). 01.10.2014. Vaadatud 01.11.2016.`{{netiviide}}`: CS1 hooldus: tundmatu keel (link)
10. ↑  "mbed Starter Kit Experiment Guide". *Sparkfun* (inglise keeles). Vaadatud 01.11.2016.`{{netiviide}}`: CS1 hooldus: tundmatu keel (link)