Tutorial 3: Voltajes analógicos y PWM, Potenciómetro + LED.

foto

Objetivo General.

En este proyecto vamos a controlar el brillo de un led utilizando un potenciómetro. Tomaremos los valores analógicos del voltaje que nos da el potenciómetro y con ellos haremos variar la intensidad de la luz del led. Al aumentar el voltaje en el potenciómetro, aumentaremos el brillo del led y viceversa. Esto nos servirá para conocer cómo usar voltajes analógicos en Arduino y que son los pines PMW.

Materiales

1 Arduino

1 Cable AB

1 Protoboard (Breadboard)

1 led

1 resistencia 220 ohm

1 potenciómetro

Cables de conexión

¿Qué es PMW?

PWM significa modulación por ancho de pulso y es una técnica para transferir información o energía a un dispositivo con una señal cuadrada. La señal está compuesta por un valor alto y un valor bajo, en nuestro caso 5 y 0 voltios respectivamente.

La relación entre el tiempo que la señal está en alto en comparación con la que está en bajo se conoce como ciclo de trabajo y normalmente se expresa en un tanto por ciento (%). Una señal como la siguiente esta 1ms arriba y 1 ms a cero, por lo que su ciclo de trabajo es de un 50 %.

pwm

Además en la señal PWM también puede ser importante la frecuencia en este casi vemos que el periodo es de 2 ms por lo que la frecuencia es de 500 Hz.

Ahora el siguiente paso es generar esta señal con Arduino, hay que tener en cuenta que no todos los pines de Arduino pueden generar PWM solo los que lo indique la placa. Para usar el PWM simplemente usaremos la función analogWrite(pin,valor) donde el valor es un numero entre 0 y 255. Esto es debido a que el generador PWM de Arduino es de 8 bits por lo que tiene 256 valores distintos de codificación de señal. Esto limita nuestra precisión para codificar la señal.

3-1

Arduino usa el nombre analogWrite porque se puede considerar el PWM como una salida analógica, dependiendo  a que dispositivos estemos controlando. Por ejemplo se puede controlar un LED con PWM haciendo variar su brillo y así no tener que depender únicamente de encenderlo totalmente o apagarlo. Con el motor pasa algo parecido y podemos controlar su velocidad. Esto se debe a que una señal con el 50% de ciclo de trabajo entrega la misma energía que una señal de 2.5V constante por ese motivo se puede usar como una pseudo salida analógica.
Aunque en estos casos esto sea así no olvidemos que en realidad se trata de una señal de cuadrada entre 5v y 0.

El circuito de este proyecto es la combinación de dos de los circuitos que ya hemos estado utilizando.

Para la entrada, usaremos el circuito para censar los valores analógicos que nos da un potenciómetro. Y para la salida, que también será analógica, el circuito para iluminar un led, por lo que ahora tenemos que poner el led en un pin con salida PWM, el 9 por ejemplo.

Conexión de la práctica.lec3

El circuito de este proyecto es la combinación de dos de los circuitos que ya hemos estado utilizando.

Para la entrada, usaremos el circuito para censar los valores analógicos que nos da un potenciómetro. Y para la salida, que también será analógica, el circuito para iluminar un led, por lo que ahora tenemos que poner el led en un pin con salida PWM, el 11 por ejemplo.

Es importante fijarnos bien en las conexiones, porque muchos de los componentes tienen polaridad, en el caso del potenciómetro.

3-2

Código.

A pesar de no ser necesario indicar con pinMode(Led, OUTPUT); lo hemos incluido para mayor claridad. Como ya comentamos en el tutorial anterior, la función analogRead (Datos)  va a proporcionarnos un valor situado entre 0 y 1023. La línea necesaria para iluminar el led la encontramos destacada, analogWrite(Led, valorDatos/ 4); . Su trabajo es “escribir” en la salida indicada como primer argumento (Led) el valor que pasemos como segundo argumento (Datos / 4). El valor que “escribimos” será el leído dividido por cuatro porque en las salidas digitales PWM el rango de valores de salida va desde 0 hasta 255. En nuestro caso, 0 se correspondería con un ancho de pulso del 0% del periodo (0v), y 255 se correspondería con un ancho de pulso del 100% del periodo (5v).

Descarga la version en PDF: Tutorial 3 Voltajes Analogicos y PMW PDF

Descarga el código de arduino: tutorial-3

Deja un comentario