¿Cómo se modifica el brillo de un LED usando PWM en Arduino?
PWM son las siglas de Pulse Width Modulation, que en español sería Modulación por Ancho de Pulsos. Se utiliza para enviar una cantidad de energía a un dispositivo la cual puede er modificada. Es una señal de tipo análoga, por lo tanto se deben utilizar los pines PWM del Arduino y nunca los pines digitales. La señal de tipo PWM es cuadrada generalmente, y sus puntos máximos son 5V y 0V.El ancho de esta onda se puede modificar con respecto a su período, a esto se le llama ciclo de trabajo o duty cycle. Entonces, el ciclo de trabajo lo podríamos entender como el tiempo que dura activo un pulso en un determinado período de tiempo. Entre más tiempo dure activo el pulso, mayor será el ciclo de trabajo, por lo tanto la carga o dispositivo tendrá una mayor actividad, como por ejemplo un LED tendrá mayor iluminación o un motor DC girará más rápido. Su fórmula es:
Ciclo de trabajo = [(Tiempo Activo)/(Período)] *100
Dicho esto, el ciclo de trabajo se mide en porcentaje (%) y este se puede aumentar o disminuir dependiendo de cómo se quiere que se comporte la carga o dispositivo.
Ya que el microcontrolador de Arduino Mega es de 8 bits, este puede trabajar con unos valores de ciclo de trabajo que van desde 0 hasta 255, para un total de 256 valores. Esto se deduce porque (2^8) = 256
En cuanto al código, el comando a utilizar es: analogWrite(pinPWM, valorPWM). Por ejemplo, si se va a controlar a controlar el brillo de un LED y se desea aplicar un PWM con un ciclo de trabajo de 50%, se debe escribir así: analogWrite(pinPWM, 127)
Los materiales utilizados son:
- 1 LED de cualquier color
- 1 Resistencia de 220 ohm
- Cables
- Protoboard o breadboard
- Arduino
El código correspondiente a este ejemplo se puede descargar aquí: https://drive.google.com/open?id=0Bxr9tDhyoU1ZWDV3Q0N2dFZfTlE
El esquema que corresponde a este caso es el siguiente:
El segundo ejemplo consiste en utilizar un potenciómetro para modificar el brillo del LED. Recordemos que un potenciómetro es una resistencia variable y eso es de gran utilidad
El código correspondiente a este ejemplo se puede descargar aquí: https://drive.google.com/open?id=0Bxr9tDhyoU1ZNDViaFBjX2xOSjQ
El esquema que corresponde a este caso es el siguiente:
El tercer y último ejemplo consiste en utilizar un par de pulsadores para modificar el brillo del LED. Un pulsador aumenta gradualmente el brillo y otro lo disminuye también de forma gradual
El código correspondiente a este ejemplo se puede descargar aquí: https://drive.google.com/open?id=0Bxr9tDhyoU1ZcUhNT2V5LVFsWTg
El esquema que corresponde a este caso es el siguiente:
Comentarios
Publicar un comentario