PWM

PWM: Viene de las siglas en inglés de Modulación por Ancho de Pulso. Se utiliza para controlar la potencia que se entrega a la carga (por ejemplo para controlar la intensidad lumínica de un led).

Debido a que la tensión de alimentación no se puede variar se alimentan los dispositivos con un PWM que consiste en pulsos de diferente ancho (modulación) que al tener mayor ancho generan una tensión media mayor. Y al ser más estrechos se tiene una tensión media inferior. De esta forma, alimentando la carga con una tensión media variable se consigue variar su comportamiento de forma proporcional.

En función del tiempo que está a nivel alto se puede controlar el valor medioLos casos extremos serían no tener un pulso, es decir que la media sea 0V y que no exista ningún “hueco” siendo ese valor máximo V+.

En la imagen se muestran tres ejemplos de cómo varía la tensión media en función del “ancho” del pulso, siendo V+ la tensión de alimentación del circuito (por ejemplo en los Arduinos ese valor sería 5V).

Conviene destacar que son datos digitales, pero desde el punto de vista de la carga (como un led) es una variable analógica pues “trabajan” con el valor medio del resultado del PWM, es decir, un valor medio analógico.

Para conseguir una salida de PWM se actúa sobre Ton, es decir el tiempo que estará la tensión funcionando.

El periodo de tiempo que hay entre pulsos denominado ‘T’ se suele indicar con la frecuencia (que no es más que 1 dividido de T ó 1/T). Y el otro valor importante para un PWM es el número de bits al que es capaz de trabajar y lo que implica son la cantidad de divisiones que puede hacer durante el periodo T. Lo habitual son 8bit (256 posibles valores), como en el Arduino UNO, pero no es difícil encontrarse con resoluciones de 12bit (4096 valores para dividir el periodo T).

En Arduino los pines PWM vienen marcados con la virgulilla (el símbolo que acompaña a la letra eñe: ~) y su resolución es de 8bit (valores entre 0 y 255). Eso no es impedimento para lograr efectos analógicos realistas como veremos a continuación.

Manejo del PWM: desvanecimiento de un led

El siguiente programa está basado en un ejemplo de Arduino, y se puede encontrar en el menú: Archivo>Ejemplos> 03.Analog > Fading.

 

Y lo que hace es desvanecer el valor del PWM obteniendo como resultado un desvanecimiento en la intensidad lumínica del led.

Add a Comment

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *