Práctica 3. Encender un LED y cambiarle su intensidad usando PWM

 3.2 Materiales y Métodos:

  1. Un LED.
  2. Una tarjeta Arduino Uno-R3 o Arduino Mega 2560, dependiendo de cuál te toque dentro del desarrollo de la práctica.
  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.

Antes de comenzar con el desarrollo del programa, debemos saber cuál es el significado de modulación de ancho de pulsos (Pulse Width Modulation PWM).

A menudo necesitaremos algo más que una señal de 0 o 1 en nuestras proyectos, por ejemplo: para variar la velocidad de giro de un motor, para variar la intensidad con la que luce un LED, o para transmitir los grados de giro de un servo, entre otros ejemplos.

Para todo esto nos servirá el 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, emite una serie de pulsos que podremos variar su duración pero con una frecuencia constante, de manera que la tensión promedio resultante es directamente proporcional a la duración de los pulsos dentro del rango de nuestro periodo, es decir, 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á dicha tensión, podemos observarlo en la Figura 3.1:

Figura 1 - P3

Figura 3.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 la realización del montaje del circuito electrónico, primero lo elaboraremos en el programa Fritzing, se debe tener en cuenta el conocimiento de cuál es el cátodo y ánodo del LED. Se coloca el ánodo en el pin 9 y el cátodo a tierra (ground), como se muestra en la Figura 3.2:

Figura 2 - P3

Figura 3.2. Montaje del circuito en el programa Fritzing.

Podemos observar en la Figura 2 que se está utilizando el Arduino Uno-R3, al igual si utilizamos la tarjeta Arduino Mega 2560 es el mismo procedimiento. El Protoboard nos 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 cable están todos conectados entre sí. La señal proveniente del pin 9 va conectada con el positivo del LED, la parte negativa o cátodo estará conectada a una resistencia que a su vez se conectará de nuevo a la tarjeta Arduino hacia tierra (GND).

Un dato importante es ¿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 (  ̴), los puertos o pines así indicados nos permiten enviar señal modulada, es decir, los pines que no tienen ese emblema solo mandan señales de 0 y 1; como la práctica nos mandan a desarrollar un programa que cambie la intensidad del LED y es necesario emular una señal analógica a partir de una señal digital (PWM), utilizamos el pin 9.

Luego que tengamos armado el circuito en el programa Fritzing, podemos empezar con el desarrollo del programa en el IDE de Arduino.

3.4 IDE del Código de Arduino:

- Debemos seleccionar la tarjeta Arduino que estamos utilizando sea Arduino Uno-R3 o Arduino Mega 2560.

- Se selecciona el Puerto Serial. Bajo que puerto USB se va a conectar el Arduino con el computador.

- Se realiza el código:

NOTA: Para quel IDE de Arduino pueda entender los comandos es necesario que al final de cada instrucción se coloque punto y coma (;).

En la siguiente imagen se mostrara como quedo plasmado en el IDE de Arduino, los procedimientos anteriormente señalados:

// 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  3.1 Código para encender y variar la intensidad de un LED utilizando PWM.  

https://123d.circuits.io/circuits/2173143-practica-3-laboratorio-mecabot

 

3.5 Conclusiones:

Los comandos que se utilizan para realizar la práctica nos permitió emular una señal analógica a partir de una digital en nuestros circuitos. El rango de salida de una señal analógica  varia de 0 a 255, siendo 0 = 0v y 255 = 5v, por lo que para obtener un voltage dentro del rango se puede realizar  introduciendo un valor determinado para la tensión de salida que nosotros queramos conseguir, si quisiéramos conseguir 2,5v el valor a asignar sería 127. Así que lo único que debemos hacer es transformar mediante una simple operación matemática la señal tomada para adaptarla a nuestra salida PWM.