Icono del sitio MECABOT

Cambia la intensidad de un LED mediante señales PWM

3.1  Objetivo General:

Encender un LED y cambiarle su intensidad usando PWM, señales de modulación de ancho de pulsos (pulse-width modulation).

En la sección de Tutoriales->Arduino podrán encontrar todas las prácticas relacionadas con la tarjeta Arduino.

MAS en LEDs  Si quieres hacer más prácticas sobre LEDS y arduino en el blog te sugerimos:


 3.2 Materiales y Métodos:

  1. Un LED.
  2. Una tarjeta Arduino Uno-R3 o Arduino Mega 2560.
  3. Un cable USB impresora.
  4. Un computador.
  5. Cables para el montaje del circuito.
  6. Tarjeta Protoboard.
  7. Una Resistencia Eléctrica de 220 ohm.

Primero que todo, es necesario conocer que son las señales de modulación de ancho de pulsos (Pulse Width Modulation PWM).

3.2.1 Señales PWM

A menudo se necesita algo más que una señal de 0 o 1. Por ejemplo:  variar la velocidad de giro de un motor,  variar la intensidad de emisión un LED, o transmitir los grados de giro de un servo, entre otros ejemplos. Para todo esto nos servirá las PWM, que emula una señal analógica a partir de una señal digital.

Las siglas PWM vienen de Pulse Width Modulation, o Modulación de Ancho de Pulso. Lo que hace este tipo de señal es emitir, en lugar de una señal continua de salida,  es generar una serie de pulsos que se pueden variar en su duración pero a frecuencia constante. Así, la tensión promedio resultante es directamente proporcional a la duración de los pulsos dentro del rango del periodo indicado. Esto es, cuanto más juntos estén esos pulsos de +5v, mayor será la tensión promedio de nuestra salida, y cuanto más distantes sean estos, menor será la tensión. Lo anterior se puede observar en la Figura 1.

Figura 1 Cambio de tensión dependiendo de la duración de funcionamiento del LED. (Imagen de www.tr3sdland.com)

3.3 Montaje de la práctica:

Antes de comenzar, primero se esquematiza en el programa TinkerCad. El cátodo del LED va al pin 9. El anodo va a tierra. El circuito incluye una resistencia electrica para evitar quemar el LED, ver Figura 2.

Figura 2. Montaje del circuito para Encender un LED y cambiarle su intensidad usando PWM.

Note que el Protoboard  ayuda a insertar el LED e instalar el circuito a través de cables, al igual que la resistencia eléctrica. El pin 9 se conecta directamente al Protoboard, como se muestra una de las funciones que tiene tablero, es que sus orificios al estar conectados por un circuito interno. 

3.3.1 Pines digitales y de PWM

¿Por qué se ha elegido como entrada el pin 9 y no el pin 13?.

Se eligió el pin 9 ya que en la tarjeta Arduino al lado del pin hay un símbolo (~). Estos puertos  permiten enviar señal modulada, es decir, los pines que no tienen ese emblema solo mandan señales de 0 y 1. Ya que la en práctica se pretende que cambie la intensidad del LED y es necesario utilizar un pin que permita PWM.

Luego, que se tiene armado el circuito en el programa TinkerCad, se puede iniciar con el desarrollo del programa en el IDE de Arduino.

3.4 IDE del Código de Arduino:

-Primero que todo, se debe seleccionar la tarjeta Arduino:  Arduino Uno-R3, Arduino Mega 2560, Nano.

-Seguidamente, se selecciona bajo que puerto USB se va a conectar el Arduino con el computador.

-Antes de comenzar el código, se colocar el título del programa, esto se hace a través del símbolo // a los fines de  introducir comentarios dentro del programa.

3.4.1 Procedimiento de cómo llevar a cabo el codificado del programa:

2.4.2 Algoritmo de la práctica 3

El siguiente código muestra como queda plasmado en el IDE de Arduino:


// Práctica encender un LED y cambiar su intensidad
const int LED=9;
int i;
void setup(){
pinMode(LED,OUTPUT);
}
void loop() {
for  (i=1;i<255; i++){
analogWrite(LED,i);
delay(5);
}
for  (i=255;i>0; i--){
analogWrite(LED,i);
delay(5);
}
}

Algoritmo  1 Código para encender y variar la intensidad de un LED utilizando PWM.  

Implementación del algoritmo 1 en el simulador TinkerCad:

https://www.tinkercad.com/things/iPUe3CpAAPs

3.5 Conclusiones:

Los comandos que se utilizan para realizar la práctica permitió emular una señal analógica a partir de una digital. El rango de salida de una señal analógica en arduino varia de 0 a 255. Un voltage específico se obtiene introduciendo un valor entre 0 = 0v y 255 = 5v. Por ejemplo, un valor 2,5v  se logra al  asignar 127.  Se debe transformar mediante una simple operación matemática la señal tomada para adaptarla a la señal de salida PWM.

Si nuestro contenido te fue de utilidad, por favor considera dar tu apoyo a lo que hacemos:

Salir de la versión móvil