Para que sirve el PWM
Hasta ahora sabemos que el PWM es una señal que varia el ancho de su pulso en función del parámetro que denominamos ciclo de trabajo. De lo que no hemos hablado todavía es sobre para que sirve la modulación de ancho de pulso en la práctica.
Lo cierto es que al variar el duty cycle de una señal PWM, lo que estamos haciendo es variar su tensión media y esta es la clave por la cual usamos tanto el PWM. Cunado una señal media de tensión atraviesa ciertos componentes electrónicos, puede hacer que su comportamiento cambie. Por ejemplo, los LED, los motores de corriente continua o ventiladores, incluso altavoces y zumbadores.
Si tenemos un LED conectado a un microcontrolador, podemos variar el brillo con el que se enciende el LED variando la señal PWM a la que se sometemos.
Si le enviamos una señal de 100% de ciclo de trabajo, el LED se encenderá con todo su potencia óptica y por tanto con todo su brillo. Si lo conectamos a una señal del 50% de duty cycle, el LED se encenderá con la mitad de su brillo.
Otra opción puede ser controlar la velocidad de un motor de corriente continua, por ejemplo los que usan algunos ventiladores de PC, aunque se puede usar con cualquier motor de corriente continua tal y como vimos en un tutorial anterior sobre controlar un motor de corriente continua con PWM.
Cuando varía el ciclo de trabajo, varía la velocidad ya que varia la tensión media en el bobinado del motor. Con un ciclo de trabajo de 100%, el motor girará a la máxima velocidad. Al reducir el ciclo de trabajo, se reducirá la velocidad.
Como crear o generar una señal PWM
Como siempre, existen muchas alternativas a la hora de generar una señal PWM. Una de las más clásicas es usar un microcontrolador.
SI decides usar un microcontrolador, existen dos posibilidades, que no exista ninguna librería disponible que lo haga, o que si si exista. Si no existe, el PWM lo puedes crear usando un temporizador del microcontrolador.
Otra alternativa puedes ser usar el clásico Arduino para generar la señal de modulación de ancho de pulso. En Arduino la señal de PWM la generamos mediante el uso del método analogWrite(); En el siguiente ejemplo leemos la señal de una entrada analógica la convertimos en una señal de 0 a 255 y la enviamos a la salida PWM.
8 iMagazine / April, 2013