Inversors, convertidors, circuits SMPS i controladors de velocitat… Una cosa que és habitual en tots aquests circuits és que consta de molts commutadors electrònics al seu interior. Aquests commutadors no són res més que dispositius electrònics de potència com MOSFET, IGBT, TRIAC, etc. Per controlar aquests commutadors electrònics de potència, normalment fem servir alguna cosa anomenada senyals PWM (modulació d'amplada d'impuls). A part d'això, els senyals PWM també s'utilitzen per conduir motors servo i també per a altres tasques senzilles com controlar la brillantor d'un LED.
Al nostre article anterior vam conèixer l’ADC, mentre que l’ADC s’utilitza per llegir els senyals analògics d’un dispositiu digital com el microcontrolador. Un PWM es pot considerar com un contrari, PWM s'utilitza per produir senyals analògics des d'un dispositiu digital com el microcontrolador. En aquest article coneixerem què són els senyals PWM, PWM i alguns paràmetres associats, de manera que estarem segurs d’utilitzar-los en els nostres dissenys.
Què és PWM (Pulse Width Modulation)?
PWM significa Pulse Width Modulation; entrarem en el motiu d'aquest nom més endavant. Però, ara per ara, enteneu PWM com un tipus de senyal que es pot produir a partir d’un CI digital, com ara un microcontrolador o un temporitzador 555. El senyal així produït tindrà un tren d’impulsos i aquests polsos tindran la forma d’una ona quadrada. És a dir, en qualsevol moment donat l’ona serà alta o baixa. Per facilitar la comprensió, considerem un senyal PWM de 5V, en aquest cas el senyal PWM serà de 5V (alt) o a nivell de terra 0V (baix). La durada en què els senyals es mantenen alts s’anomena “ hora puntual ” i la durada en què el senyal es manté baix s’anomena “ temps apagat ”.
Per a un senyal PWM, hem de fixar-nos en dos paràmetres importants associats: un és el cicle de treball PWM i l’altre és la freqüència PWM.
Cicle de treball del PWM
Com es va dir anteriorment, un senyal PWM es manté activat durant un temps determinat i després es manté apagat la resta del període. El que fa que aquest senyal PWM sigui especial i més útil és que podem configurar el temps que s’ha de mantenir controlant el cicle de treball del senyal PWM.
El percentatge de temps en què el senyal PWM roman ALT (puntual) s’anomena cicle de treball. Si el senyal sempre està activat, està en un 100% de cicle de treball i si sempre està apagat, és un 0% de cicle de treball. Les fórmules per calcular el cicle de treball es mostren a continuació.
Cicle de treball = Temps d’activació / (Temps d’encès + Temps d’APAGAT)
La imatge següent representa un senyal PWM amb un cicle de treball del 50%. Com podeu veure, tenint en compte tot un període de temps (temps d’activació + temps d’aturada), el senyal PWM es manté activat només durant el 50% del període de temps.

Freqüència = 1 / Període de temps Període de temps = Temps d’activació + temps d’aturada
Normalment, els senyals PWM generats pel microcontrolador rondaran els 500 Hz, les freqüències tan altes s’utilitzaran en dispositius de commutació d’alta velocitat, com ara inversors o convertidors. Però no totes les aplicacions requereixen alta freqüència. Per exemple, per controlar un servomotor, hem de produir senyals PWM amb una freqüència de 50Hz, de manera que la freqüència d’un senyal PWM també es pot controlar mitjançant un programa per a tots els microcontroladors.
Algunes preguntes freqüents sobre PWM
Quina diferència hi ha entre el cicle de treball i la freqüència d’un senyal PWM?
Sovint es confon el cicle de treball i la freqüència dels senyals PWM. Com sabem, un senyal PWM és una ona quadrada amb un temps d’interrupció i d’aturada particular. La suma d’això en temps i temps d’ aturada s’anomena un període de temps únic. La inversa d’un període de temps s’anomena freqüència. Tot i que la quantitat de temps que el senyal PWM ha de romandre encès en un període de temps es determina pel cicle de treball del PWM.
Per dir-ho simple, la rapidesa amb el senyal PWM que s'encengui i s'apagui es decideix per la freqüència del senyal PWM i en que la velocitat de la durada del senyal PWM ha de romandre encès es decideix pel cicle de treball del senyal PWM.
Com convertir els senyals PWM en tensió analògica?
Per a aplicacions senzilles com controlar la velocitat d’un motor de corrent continu o ajustar la brillantor d’un LED, hem de convertir els senyals PWM en tensió analògica. Això es pot fer fàcilment mitjançant un filtre RC i s’utilitza habitualment quan es requereix una funció DAC. El circuit per al mateix es mostra a continuació

Al gràfic que es mostra més amunt, el de color groc és el senyal PWM i el de color blau és el voltatge analògic de sortida. El valor de la resistència R1 i del condensador C1 es pot calcular en funció de la freqüència del senyal PWM, però normalment s’utilitza una resistència de 5,7K o 10K i un condensador de 0,1u o 1u.
Com es calcula la tensió de sortida del senyal PWM?
El voltatge de sortida d’un senyal PWM després de convertir-lo a analògic serà el percentatge de cicle de treball. Per exemple, si el voltatge de funcionament és de 5V, el senyal PWM també tindrà 5V quan sigui alt. En aquest cas, per a un cicle de treball del 100%, la tensió de sortida serà de 5V per a un cicle de treball del 50%, serà de 2,5V.
Voltatge de sortida = Cicle de treball (%) * 5
Exemples:
Anteriorment hem utilitzat PWM amb diversos microcontroladors en molts dels nostres projectes:
- Modulació d'amplada de pols amb ATmega32
- PWM amb Arduino Uno
- Generació de PWM mitjançant microcontrolador PIC
- Tutorial de Raspberry Pi PWM
- Control de servomotor amb Raspberry Pi
- Modulació d'amplada de pols (PWM) mitjançant MSP430G2
- Modulació d'amplada de pols (PWM) a STM32F103C8
- Control de servomotor amb Raspberry Pi
- Control del motor de corrent continu amb Raspberry Pi
- Dimmer LED d'1 watt
- Dimmer LED basat en Arduino mitjançant PWM
Consulteu aquí més tots els projectes relacionats amb PWM.
