Está en la página 1de 9

Laboratorio 4

Salidas analógicas
1. Objetivos

1.1. Objetivo general

 Estudiar el funcionamiento de las salidas analógicas de la placa Arduino y el principio de


funcionamiento de la modulación por ancho de pulso (PWM: Pulse Width Modulation).

1.2. Objetivos específicos

 Identificar los pines destinados a las salidas analógicas de la placa Arduino Mega 2560.
 Aprender a manejar los leds RGB y experimentar varias opciones para combinar sus colores.
 Manejar los instrumentos de medición digitales en el simulador Proteus versión 7 para
observar la variación del ancho de pulso generada en el código.

2. Marco teórico

2.1.¿Qué es PWM, cómo funciona y para qué sirve?

El PWM es un tipo de señal de tensión que se usa en electrónica con muchos objetivos distintos y
para muchas tareas distintas; PWM son siglas en inglés que significan Pulse Width Modulation y que
se pueden traducir a español como Modulación de ancho de pulso.
La modulación de ancho de pulso está formada por una señal de onda cuadrada que no siempre tiene
la misma relación entre el tiempo que está en alto y el tiempo que está en bajo.

El tiempo que la señal se encuentra en el nivel alto (5 voltios) se denomina como tiempo on (Ton)
mientras que el tiempo que está en nivel bajo se denomina tiempo off (Toff). La suma del tiempo on
y el tiempo off es el periodo de la señal (T).
Y como en toda señal periódica, el inverso de del periodo (1 / T) es la frecuencia de la señal.

 Ciclo de trabajo o Duty Cycle

La variación de ancho de pulso consiste en variar los tiempos de encendido y apagado, es decir Ton
y Toff. Al cambiar el valor de un PWM, en realidad se están modificando estos tiempos.
Una de las características más importantes de una señal PWM es su ciclo de trabajo o Duty Cycle, en
inglés, ya que este es el que varía en un PWM. El ciclo de trabajo es la relación entre el tiempo de
encendido y el periodo o tiempo total del PWM.
1
𝑇𝑜𝑛
𝐷𝐶 =
𝑇

Cuanto mayor sea el duty cycle, mayor tiempo estará la señal de tensión en alto, sin variar el periodo.
Por consecuencia, como el periodo no varía y tampoco varía la suma de Ton y Toff, si el tiempo de
encendido aumenta, el tiempo de apagado disminuye.

 Usos de la señal PWM

Al variar el duty cycle de una señal PWM, lo que se hace es variar su tensión media y esta es la clave
por la cual se usa tanto esta señal. Cuando 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 o zumbadores, entre otros.
Si se tiene 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 somete.
Si se envía una señal de 100% de ciclo de trabajo, el LED se encenderá con toda 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.
Cuando varía el ciclo de trabajo, varía la velocidad ya que varía 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.

2.2.Señal analógica en Arduino

La modulación por ancho o de pulso es un tipo de señal de voltaje utilizada para enviar información
o para modificar la cantidad de energía que se envía a una carga. Este tipo de señal es muy utilizada
en circuitos digitales que necesitan emular una señal analógica.
La señal PWM puede ser de tipo cuadrada o sinusoidal en las cuales se cambia el ancho relativo
respecto al período de la misma, el resultado de este cambio es llamado ciclo de trabajo y sus unidades
están representadas en términos de porcentaje.
Para emular una señal analógica se cambia el ciclo de trabajo de tal manera que el valor promedio de
la señal sea el voltaje aproximado que se desea obtener, pudiendo entonces enviar voltajes entre 0
voltios y el máximo que soporte el dispositivo PWM utilizado.
En Arduino este tipo de señales sólo puede ser realizado con los pines que tienen el símbolo ~ en sus
números. En Arduino UNO son los pines 3, 5, 6, 9, 10 y 11. En Arduino Mega los pines destinados a
realizar este tipo de señal son los pines que van del 2 al 13.

2
3. Material y equipos

 Placa Arduino MEGA 2560  Cable USB para la placa Arduino


 Conectores  Led RGB común positivo
 Proto Board  Led rojo alto brillo
 Computadora portátil con IDE Arduino
instalado

4. Circuitos y esquemas

Se implementaron los siguientes circuitos en el laboratorio después de haber sido simulados en


Proteus versión 7.

4.1. Esquema para la conexión del led RGB

Arduino
MEGA
2560

3
4.2. Regulación del brillo de un led con PWM

Ciclo de trabajo al 90% (aproximadamente)

Ciclo de trabajo al 10% (aproximadamente)

En la simulación realizada en Proteus versión 7, no se puede apreciar la variación de la intensidad del


brillo del led, sin embargo, utilizando el osciloscopio digital se puede observar la variación del ciclo
de trabajo de la señal.

4.3. Control del led RGB

4
Como Proteus versión 7 no cuenta con el led RGB en su librería se hizo la simulación con tres leds
de color rojo, verde y azul, en ese orden, y se probaron dos códigos diferentes para controlar los
colores.

5. Marco práctico

- Primero se procedió a simular el circuito de funcionamiento de las salidas analógicas en el


programa Proteus versión 7 entorno ISIS.

- Posterior a la simulación se procedió a codificar el programa en el entorno de desarrollo integrado


de Arduino; para depurar errores, en caso de que existan, y se compiló el programa.

- Después, se armó el circuito mostrado en las simulaciones. En el caso del control de brillo del led
no hubo mayor novedad, simplemente se conectó el ánodo del led al pin salida analógica de la
placa Arduino y el cátodo se conectó a una resistencia de protección y posteriormente a tierra. La
novedad fue el uso del led RGB, antes de iniciar con el uso de este componente había que
identificar la disposición de los pines; el pin más largo era positivo y es el pin común, el resto era
Red (rojo), Green (verde) y Blue (azul). Estos leds vienen con el encapsulado opaco o transparente,
la diferencia está en la visualización de la combinación de colores, el led opaco mezcla de manera
más clara los tres colores. Nótese que el pin centra puede ser positivo o negativo dependiendo del
tipo de led que se tenga.

5
- Una vez armado el circuito, se cargó el programa a la placa de desarrollo Arduino Mega 2560 y
se procedió a verificar el funcionamiento que se observó en la simulación y se pudo verificar que
se cumple la secuencia del código cargado.

- El proceso de simulación, armado del circuito, cargar el programa en la placa Arduino y


verificación del funcionamiento se repitió para ambas secuencias.

6. Anexos, tablas y código de programación

6.1. Regular el brillo de un led rojo con PWM

Para el uso de los pines PWM no es necesario declararlos como pines de salida, Arduino
sobreentiende que esos pines son de salida analógica y no requieren ser declarados en el Set Up. Con
dos bucles FOR se controló el brillo del led, con el primer bucle se incrementó el brillo desde 0 a 255
y con el segundo bucle se hizo el proceso inverso.

6
El comando analogWrite() asigna el valor de un pin de salida PWM. Los valores posibles por defecto
están en el rango 0-255. Usar analogWrite() en un pin sin capacidad PWM hace que el pin sea
colocado en HIGH sin ningún otro efecto.
La línea encerrada en recuadro rojo de la figura es la dirección en la que el programa guarda el archivo
hexadecimal del programa, esta dirección es la que se copia en el simulador para que el
funcionamiento del programa pueda ser visto en Proteus.

6.2. Control del led RGB

Para el control de los colores del led RGB se utilizador don formas, la primera fue con tres bucles
FOR mutuamente independientes. El resultado de la utilización de este código es el control
independiente de cada color, el bucle correspondiente al control del led rojo solamente varia el brillo
del led rojo y así sucesivamente con el led verde y azul. Solamente se ve un color a la vez.

También se probó con tres bucles FOR anidados, primero el bucle para el led rojo, luego para el verde
y finalmente para el azul.
La formación de los colores se hace mediante código, como se observa en la fidura de la paleta de
colores, hay una casilla roja en el costado inferior derecho en la cual se pueden observar los valores
que deben toman las variables RGB para formar determinados colores, estos valores vienen asignados
de acuerdo al color que se quiere formar.
En el código pueden escribirse los valores mostrados o su complemento para llegar a 255, todo
depende del tipo de led que se utiliza; en nuestro caso se utilizó un led con el común positivo, por lo
que en el código tenía que asignarse el complemento para formar el color requerido, es decir, en vez
de colocar 𝑅 = 128, 𝐺 = 0 𝑦 𝐵 = 64, debía colocarse 𝑅 = 255 − 128, 𝐺 = 255 − 0 𝑦 𝐵 = 255 −
64 para obtener el color requerido.

7
El código cargado al microcontrolador para controlar los tres colores simultáneamente es el siguiente:

8
En la simulación se pudo observar las tres salidas analógicas en el osciloscopio digital, se observó la
variación en el ancho de pulso de cada una de las señales, sin embargo, no se pudo apreciar el
resultado porque no se combinan los colores en el simulador.

7. Conclusiones

Se estudió el funcionamiento de las salidas analógicas de la placa Arduino y también se estudió el


principio de funcionamiento de la modulación por ancho de pulso PWM, el estudio de ésta última fue
aplicado en el control del brillo de un led simple de un solo color y en el control de tres colores, o
sea, del led RGB, se observó que variando el ancho de pulso de la señal se modifica el voltaje de
salida y en función a ello se varia el brillo de un led.
Se identificaron los pines de salida analógica, que en el caso de la placa Arduino Mega 2560 van
desde el pin 2 al pin 13.
Se aprendió a manejar los leds RGB y se experimentaron dos formas diferentes de controlar el brillo
de cada color.
Se manejaron los instrumentos de medida digitales en el simulador, donde se pudo observar la
variación del ancho de pulso de la señal y su efecto en el led.

8. Bibliografía

https://www.prometec.net/rgb-led/#
https://www.rinconingenieril.es/que-es-pwm-y-para-que-sirve/

También podría gustarte