Impulsi laiuse modulatsioon: töötsükkel, taimerid ja rakendused

oct 21 2025
Allikas: DiGi-Electronics
Sirvi: 1138

Impulsi laiuse modulatsioon (PWM) on meetod, mida mikrokontrollerid kasutavad toite juhtimiseks, lülitades signaale suurel kiirusel sisse ja välja. Seda kasutatakse LED-ides, mootorites, servodes, heli- ja elektrisüsteemides. See artikkel selgitab üksikasjalikult PWM-i põhitõdesid, töötsüklit, taimeri tööd, režiime, sagedust, eraldusvõimet ja täiustatud tehnikaid.

Figure 1: Pulse-width Modulation

Impulsi laiuse modulatsiooni (PWM) ülevaade 

PWM-taimerid on mikrokontrollerite sees sisseehitatud riistvaramoodulid, mis genereerivad reguleeritavate töötsüklitega digitaalseid impulsssignaale. Selle asemel, et loota tihvtide lülitamiseks tarkvarale, mis kulutab töötlemisvõimsust ja riskib ajastusvärinaga, laadib mikrokontroller selle töö riistvarataimerile. See võimaldab tal säilitada täpsust, vabastades samal ajal protsessori muude ülesannete täitmiseks. Tulemuseks on tõhus multitegumtöö, väiksem latentsusaeg ja parem jõudlus tegelikes rakendustes, nagu mootori juhtimine, LED-i hämardamine, helimodulatsioon ja signaali genereerimine. PWM-i tõhusus ja täpsus muudavad selle kaasaegsete manussüsteemide selgrooks, ületades lõhe digitaalse juhtimise ja analoogkäitumise vahel. 

Impulsi laiuse modulatsiooni töötsükkel

Figure 2: Pulse-width Modulation Duty Cycle

Lainekuju näitab korduvat signaali, mis lülitub 0V ja 5V vahel. Periood on märgitud kui 10 ms, mis tähistab ühe täistsükli aega. Selle aja jooksul püsib signaal kõrge (5 V) 3 ms, mida nimetatakse impulsi laiuseks. Seejärel arvutatakse töötsükkel kõrge aja ja kogu perioodi suhtena, andes antud juhul 30%. See tähendab, et signaal annab energiat ainult 30% ajast tsükli kohta. Sagedus tuletatakse ka perioodist, mis arvutatakse järgmiselt: 1 ÷ 10 ms = 100 Hz.

Töötsükli arvutamine mikrokontrolleri taimerites

Töötsükkel näitab meile, kui suur osa signaali sisselülitamise koguajast võrreldes lainekuju täistsükliga. Mikrokontrolleris on see oluline, kuna see otsustab, kui palju energiat seadmele iga tsükli jooksul edastatakse.

Selle arvutamiseks kasutage lihtsat valemit: Töötsükkel (%) = (impulsi laius ÷ periood) × 100. Kui signaal on aktiivne HIGH, on töötsükkel murdosa ajast, mil signaal jääb HIGH. Kui signaal on aktiivne LOW, on töötsükkel murdosa ajast, mil see jääb MADALAKS.

Impulsi laiuse modulatsiooni taimer 

Figure 3: Pulse-width Modulation Timer

See pilt näitab, kuidas PWM-taimer töötab, ühendades pingeväljundi loenduriga. Loendur loeb korduvalt vahemikus 0 kuni 9, seejärel lähtestab, luues signaali perioodi. Kui loendur jõuab määratud vasteväärtuseni (siin 2), läheb väljund kõrgeks ja püsib kõrgel, kuni loendur üle voolab, määrates impulsi laiuse. Ületäitumispunkt lähtestab tsükli, alustades uut perioodi.

Taimer määrab töötsükli, kontrollides, millal väljund sisse lülitub (sobitab) ja millal see lähtestub (ületäitumine). Vasteväärtuse reguleerimine muudab kõrge signaali laiust, kontrollides otseselt, kui palju võimsust PWM koormusele annab.

Servajoondatud ja keskele joondatud PWM-režiimid

Servade joondatud režiim

Figure 4: Edge-Aligned Mode

Servajoondatud PWM-is loendab loendur ainult nullist kuni seatud maksimumini ja ümberlülitamine toimub tsükli alguses või lõpus. See muudab selle rakendamise lihtsaks ja väga tõhusaks, kuna enamik mikrokontrollereid ja taimereid toetab seda loomulikult. Kuna kõik lülituservad on joondatud perioodi ühele küljele, võib see põhjustada ebaühtlast voolu pulsatsiooni ja suuremaid elektromagnetilisi häireid (EMI).

Keskele joondatud (faasiõige) režiim

Figure 5: Center-Aligned (Phase-Correct) Mode

Keskele joondatud PWM-is loendab loendur iga tsükli jooksul üles ja seejärel tagasi. See tagab, et lülitusservad jaotuvad lainekuju keskpunkti ümber, luues tasakaalustatuma väljundi. Sümmeetria vähendab harmoonilisi, pöördemomendi pulsatsiooni mootorites ja EMI-d elektrisüsteemides. Kuigi see on veidi keerulisem ja sageduse kasutamise osas vähem tõhus, tagab see palju puhtama väljundkvaliteedi.

Õige PWM-sageduse valimine

• LED-hämardamine nõuab nähtava virvenduse kõrvaldamiseks sagedusi üle 200 Hz, samas kui ekraani taustvalgustus ja kvaliteetsed valgustussüsteemid kasutavad sageli 20–40 kHz, et jääda inimese tajust kaugemale ja minimeerida müra.

• Elektrimootorid töötavad kõige paremini PWM-sagedustega vahemikus 2–20 kHz, tasakaalustades lülituskadusid pöördemomendi sujuvusega; Madalamad väärtused tagavad suurema töötsükli eraldusvõime, samas kui kõrgemad väärtused vähendavad kuuldavat müra ja pulsatsiooni.

• Tavalised hobiservod tuginevad fikseeritud juhtsignaalidele umbes 50 Hz (20 ms periood), kus impulsi laius, mitte sagedus, määrab nurga asendi.

• Heli genereerimine ja digitaal-analoog teisendamine nõuab PWM-i, mis on kuuldavast spektrist tunduvalt kõrgem, üle 22 kHz, et vältida häireid ja võimaldada signaalide puhast filtreerimist.

• Jõuelektroonikas on sageduse valik sageli kompromiss efektiivsuse, lülituskadude, elektromagnetiliste häirete ja konkreetse koormuse dünaamilise reaktsiooni vahel.

PWM-i eraldusvõime ja sammu suurus

Resolutsioon (sammud)

Diskreetsete töötsükli tasemete arvu määrab taimeri perioodide arv (N). Näiteks kui loendur töötab vahemikus 0 kuni 1023, annab see 1024 erinevat töötsükli sammu. Suurem arv tähendab väljundi täpsemat kontrolli.

Biti sügavus

Eraldusvõimet väljendatakse sageli bittides, mis arvutatakse log₂(N). 1024-astmeline loendur vastab 10-bitisele eraldusvõimele, samas kui 65536-astmeline loendur vastab 16-bitisele eraldusvõimele. See määrab, kui täpselt saab töötsüklit reguleerida.

Ajasamm

Süsteemi kell määrab väikseima sammu, mis võrdub 1 ÷ fClockiga. Kiiremad taktsagedused võimaldavad lühemaid perioode ja kõrgemaid PWM-sagedusi, säilitades samal ajal peene eraldusvõime.

Kompromissid

Eraldusvõime suurendamine nõuab rohkem taimerite arvu, mis omakorda alandab antud kella maksimaalset PWM-sagedust. Seevastu kõrgemad sagedused vähendavad saadaolevat eraldusvõimet. 

PWM-i eelskaleerija ja perioodi seadistamise näide

SammArvutamineTulemusSelgituse üksikasjad
MCU kell-24 MHzTaimerit juhtiv baassagedus.
Rakendage eelskaleerijat ÷824 MHz ÷ 83 MHzTaimeri kell on vähendatud juhitavale loendusvahemikule.
Taimeri periood3 MHz × 0,020 s60 000 loendustAutomaatse uuesti laadimise/perioodi registri seadmine väärtusele 60 000 annab 20 ms kaadri.
Eraldusvõime linnukese kohta1 ÷ 3 MHz0,333 μsIga taimeri samm võrdub \ ~ 0.33 mikrosekundiga.
Servo impulsi juhtimine1–2 ms impulsi laius = 3000–6000 puukiTagab sujuva nurga juhtimise 20 ms raamis.-

Täiustatud PWM-kanali tehnikad

Surnud aja sisestamine

Surnud aeg on väike kontrollitud viivitus, mis sisestatakse komplementaarsete transistoride lülitamise vahele poolsilla- või täissillaahelas. Ilma selleta võivad nii kõrge kui ka madala külje seadmed hetkeks korraga juhtida, põhjustades lühise, mida nimetatakse läbilaskmiseks. Lisades mõnikümmend või sada nanosekundit surnud aega, tagab riistvara ohutud üleminekud, kaitstes MOSFET-e või IGBT-sid kahjustuste eest.

Täiendavad väljundid

Täiendavad väljundid genereerivad kaks signaali, mis on üksteise loogilised vastandid. See on eriti kasulik tõuke-tõmbeahelates, mootoridraiverites ja inverteri etappides, kus üks transistor peab välja lülituma täpselt siis, kui teine sisse lülitub. Täiendavate PWM-paaride kasutamine lihtsustab draiveri vooluringi ja tagab sümmeetria, parandades tõhusust ja vähendades moonutusi.

Sünkroonsed värskendused

Mitme PWM-kanaliga süsteemides võimaldavad sünkroonsed värskendused kõiki väljundeid samaaegselt värskendada. Ilma selle funktsioonita võivad tekkida väikesed ajastuse mittevastavused (viltu), mis põhjustab ebaühtlast tööd. Kolmefaasilistes mootoriajamites või mitmefaasilistes muundurites tagab sünkroniseeritud PWM tasakaalu, sujuva jõudluse ja väiksemad elektromagnetilised häired.

Ristkäivitamine

Ristkäivitamine võimaldab taimeritel üksteisega suhelda, nii et üks PWM-sündmus saab käivitada, lähtestada või reguleerida teist taimerit. See funktsioon on täiustatud juhtimissüsteemides võimas, võimaldades mitme signaali täpset koordineerimist. Rakenduste hulka kuuluvad kaskaadmootori ajamid, põimitud võimsusmuundurid ja sünkroniseeritud andurite proovivõtt, kus kanalitevahelised ajastussuhted on kriitilise tähtsusega.

Servo liikumine PWM-signaalidega

Impulsi laiusServo liikumine
\~1,0 msPöörab täielikult vasakule või pöörleb täiskiirusel päripäeva
\~1,5 msJääb keskele või peatub
\~2,0 msPöörab täielikult paremale või pöörleb täiskiirusel vastupäeva

Järeldus

PWM on peamine tööriist, mis võimaldab digitaalsüsteemidel analoogseadmeid täpselt ja tõhusalt juhtida. Õppides töötsükleid, taimeri seadistust, sageduse valikuid, eraldusvõime kompromisse ja täiustatud meetodeid, nagu surnud aeg või gammakorrektsioon, saate kujundada usaldusväärseid süsteeme. PWM toetab jätkuvalt kaasaegset elektroonikat valgustus-, liikumis-, heli- ja toiterakendustes.

Korduma kippuvad küsimused [KKK]

Kas PWM parandab energiatõhusust?

Jah. PWM lülitab seadmed täielikult sisse või välja, minimeerides soojuskadu võrreldes analoogpinge juhtimisega.

Kas PWM tekitab elektromagnetilisi häireid (EMI)?

Jah. Kiire ümberlülitamine tekitab harmoonilisi, mis põhjustavad EMI-d. Keskele joondatud PWM vähendab seda ja filtrid aitavad müra summutada.

Miks kasutada PWM-iga madalpääsfiltrit?

Madalpääsfilter silub ruutlaine keskmiseks alalispingeks, mis on kasulik heli, analoogväljundite ja andurite simulatsiooni jaoks.

Kas PWM saab kütteelemente juhtida?

Jah. Kütteseadmed reageerivad aeglaselt, nii et isegi madalad PWM-sagedused (10–100 Hz) tagavad stabiilse temperatuuri reguleerimise.

Milleks faasinihkega PWM-i kasutatakse?

See nihutab ajastust kanalite vahel, et vähendada voolu hüppeid ja tasakaalustada koormusi, mis on levinud mitmefaasilistes muundurites ja mootoriajamites.

Kuidas mikrokontrollerid takistavad PWM-i värinat?

Nad kasutavad topeltpuhverdatud registreid ja sünkroonitud värskendusi, nii et töötsükli muudatused rakenduvad iga tsükli alguses puhtalt.