- Ce este PWM (Pulse Width Modulation)?
- Ciclul de funcționare al PWM
- Unele întrebări care apar frecvent despre PWM
Invertoare, convertoare, circuite SMPS și regulatoare de viteză…. Un lucru obișnuit în toate aceste circuite este că este format din mai multe comutatoare electronice în interiorul său. Aceste comutatoare nu sunt altceva decât dispozitive electronice de putere precum MOSFET, IGBT, TRIAC etc. Pentru a controla astfel de comutatoare electronice de putere folosim în mod obișnuit ceva numit semnale PWM (Pulse Width Modulation). În afară de aceasta, semnalele PWM sunt, de asemenea, utilizate pentru acționarea motoarelor servo și, de asemenea, pentru alte sarcini simple, cum ar fi controlul luminozității unui LED.
În articolul nostru anterior am aflat despre ADC, în timp ce ADC este folosit pentru a citi semnale analogice de către un dispozitiv digital, cum ar fi microcontrolerul. Un PWM poate fi considerat drept exact opusul acestuia, PWM este utilizat pentru a produce semnale analogice de la un dispozitiv digital, cum ar fi microcontrolerul. În acest articol vom afla despre ce este PWM, semnalele PWM și câțiva parametri asociați cu acesta, astfel încât să fim încrezători în utilizarea lor în proiectele noastre.
Ce este PWM (Pulse Width Modulation)?
PWM înseamnă Pulse Width Modulation; vom intra mai târziu în motivul unui astfel de nume. Dar, deocamdată înțelegeți PWM ca un tip de semnal care poate fi produs dintr-un IC digital, cum ar fi microcontrolerul sau temporizatorul 555. Semnalul astfel produs va avea un tren de impulsuri și aceste impulsuri vor fi sub forma unei unde pătrate. Adică, în orice moment dat, valul va fi fie ridicat, fie va fi scăzut. Pentru ușurința de înțelegere, să luăm în considerare un semnal PWM de 5V, în acest caz semnalul PWM va fi fie 5V (ridicat), fie la nivelul solului 0V (scăzut). Durata la care semnalele rămân ridicate se numește „ la timp ” și durata la care semnalul rămâne scăzut este numită „ timp oprit ”.
Pentru un semnal PWM trebuie să ne uităm la doi parametri importanți asociați acestuia, unul este ciclul de funcționare PWM, iar celălalt este frecvența PWM.
Ciclul de funcționare al PWM
După cum am spus mai devreme, un semnal PWM rămâne aprins pentru o anumită perioadă de timp și apoi rămâne oprit pentru restul perioadei. Ceea ce face acest semnal PWM special și mai util este că putem seta cât timp ar trebui să rămână aprins controlând ciclul de funcționare al semnalului PWM.
Procentul de timp în care semnalul PWM rămâne HIGH (la timp) este numit ciclu de funcționare. Dacă semnalul este întotdeauna PORNIT, este în ciclu de funcționare 100% și dacă este întotdeauna oprit, este ciclu de funcționare de 0%. Formulele pentru calcularea ciclului de funcționare sunt prezentate mai jos.
Ciclul de funcționare = Timp de pornire / (Timp de pornire + Timp de oprire)
Imaginea următoare reprezintă un semnal PWM cu un ciclu de funcționare de 50%. După cum puteți vedea, având în vedere o perioadă întreagă de timp (timp de oprire + timp oprit), semnalul PWM rămâne aprins doar 50% din perioada de timp.
Frecvența = 1 / Perioada de timp Perioada de timp = Timp de pornire + Timp de oprire
În mod normal, semnalele PWM generate de microcontroler vor fi în jur de 500 Hz, astfel de frecvențe înalte vor fi utilizate în dispozitivele de comutare de mare viteză, cum ar fi invertoarele sau convertoarele. Dar nu toate aplicațiile necesită frecvență înaltă. De exemplu, pentru a controla un servomotor, trebuie să producem semnale PWM cu o frecvență de 50Hz, astfel încât frecvența unui semnal PWM este, de asemenea, controlabilă prin program pentru toate microcontrolerele.
Unele întrebări care apar frecvent despre PWM
Care este diferența dintre ciclul de funcționare și frecvența unui semnal PWM?
Ciclul de funcționare și frecvența semnalelor PWM sunt adesea confundate. După cum știm, un semnal PWM este o undă pătrată cu un anumit timp de oprire și oprire. Suma acestei perioade de timp și oprire se numește ca o perioadă de timp. Inversul unei perioade de timp se numește frecvență. În timp ce cantitatea de timp în care semnalul PWM ar trebui să rămână aprins într-o perioadă de timp este stabilită de ciclul de funcționare al PWM.
Pentru o simplitate simplă, cât de repede ar trebui să pornească și să se oprească semnalul PWM este determinat de frecvența semnalului PWM și în acea viteză cât timp ar trebui să rămână aprins semnalul PWM este decis de ciclul de funcționare al semnalului PWM.
Cum se convertesc semnale PWM în tensiune analogică?
Pentru aplicații simple, cum ar fi controlul vitezei unui motor DC sau reglarea luminozității unui LED, trebuie să convertim semnalele PWM în tensiune analogică. Acest lucru se poate face cu ușurință utilizând un filtru RC și este utilizat în mod obișnuit acolo unde este necesară o caracteristică DAC. Circuitul pentru același lucru este prezentat mai jos
În graficul de mai sus, cel de culoare galben este semnalul PWM, iar cel de culoare albastră este tensiunea analogică de ieșire. Valoarea rezistorului R1 și a condensatorului C1 poate fi calculată pe baza frecvenței semnalului PWM, dar în mod normal se folosește un rezistor de 5,7K sau 10K și un condensator de 0,1u sau 1u.
Cum se calculează tensiunea de ieșire a semnalului PWM?
Tensiunea de ieșire a unui semnal PWM după convertirea acestuia în analog va fi procentul ciclului de funcționare. De exemplu, dacă tensiunea de funcționare este de 5V, atunci semnalul PWM va avea și 5V când este ridicat. În acest caz, pentru un ciclu de funcționare de 100%, tensiunea de ieșire va fi de 5V pentru un ciclu de funcționare de 50%, va fi de 2,5V.
Tensiunea de ieșire = Ciclul de funcționare (%) * 5
Exemple:
Am folosit anterior PWM cu diverse microcontrolere în multe dintre proiectele noastre:
- Modularea lățimii impulsurilor cu ATmega32
- PWM cu Arduino Uno
- Generarea PWM utilizând microcontrolerul PIC
- Tutorial Raspberry Pi PWM
- Servomotor Control cu Raspberry Pi
- Modulația lățimii impulsurilor (PWM) utilizând MSP430G2
- Modulația lățimii impulsurilor (PWM) în STM32F103C8
- Servomotor Control cu Raspberry Pi
- Control motor DC cu Raspberry Pi
- 1 Watt LED Dimmer
- Dimmer cu LED bazat pe Arduino folosind PWM
Verificați în continuare toate proiectele legate de PWM aici.