Sunteți pe pagina 1din 4

PRÁCTICA N°6

1. TEMA
PROGRAMACIÓN DE ENTRADAS ANALÓGICAS

2. OBJETIVOS
2.1. Leer el valor de una entrada analógica y acondicionarla correctamente para su
lectura.

3. EQUIPOS Y MATERIALES
• Fuente de alimentación.
• Un protoboard.
• Cables de protoboard.
• Potenciómetro.
• Sensor de temperatura LM35.
• Display LCD 16x2.

4. INFORMACIÓN
Función analogRead(pin):

Lee el valor desde el pin analógico especificado con una resolución de 10 bits. Esta función solo
funciona en los pines analógicos (0-5). El valor resultante es un entero de 0 a 1023. Los pines
analógicos, a diferencia de los digitales no necesitan declararse previamente como INPUT o
OUTPUT.

Función analogWrite(pin, value):

Escribe un valor pseudo-analógico usando modulación por ancho de pulso (PWM) en un pin de
salida marcado como PWM. Ej analogWrite(pin, v); // escribe 'v' en el 'pin' analógico. Puede
especificarse un valor de 0 - 255. Un valor 0 genera 0 V en el pin especificado y 255 genera 5 V.
Para valores de 0 a 255, el pin alterna rápidamente entre 0 V y 5 V, cuanto mayor sea el valor,
más a menudo el pin se encuentra en HIGH (5 V). Por ejemplo, un valor de 64 será 0 V tres
cuartas partes del tiempo y 5 V una cuarta parte. Un valor de 128 será 0 V la mitad del tiempo
y 5 V la otra mitad. Un valor de 192 será 0 V una cuarta parte del tiempo y 5 V tres cuartas
partes.

POTENCIÓMETRO

Un potenciómetro es una Resistencia Variable. Así de sencillo. El problema, o la diferencia, es


la técnica para que esa resistencia pueda variar y como lo hace.

Los potenciómetros limitan el paso de la corriente eléctrica (Intensidad) provocando una


caída de tensión en ellos al igual que en una resistencia, pero en este caso el valor de la
corriente y la tensión en el potenciómetro las podemos variar solo con cambiar el valor de su
resistencia. En una resistencia fija estos valores serían siempre los mismos.
Figura 1.- Potenciómetro.

SENSOR DE TEMERATURA LM35

El LM35 es un sensor de temperatura integrado de precisión, cuya tensión de salida es


linealmente proporcional a temperatura en ºC (grados centígrados). El LM35 no requiere
ninguna calibración externa o ajuste para proporcionar una precisión típica de ± 1.4 ºC a
temperatura ambiente y ± 3.4 ºC a lo largo de su rango de temperatura (de -55 a 150 ºC). El
dispositivo se ajusta y calibra durante el proceso de producción. La baja impedancia de salida,
la salida lineal y la precisa calibración inherente, permiten la creación de circuitos de lectura o
control especialmente sencillos. El LM35 puede funcionar con alimentación simple o
alimentación doble (+ y -) Requiere sólo 60 µA para alimentarse, y bajo factor de auto-
calentamiento, menos de 0,1 ºC en aire estático. El LM35 está preparado para trabajar en una
gama de temperaturas que abarca desde los- 55 ºC a 150 ºC.

Figura 2.- LM35.

5. PROCEDIMIENTO

5.1.- Realizar la simulación que se muestra en la figura 3.

Figura 3.- Circuito para lectura de Potenciometro.


Implementar el siguiente código en la placa Arduino NANO:
#include <LiquidCrystal.h>

//Crear el objeto LCD con los números correspondientes (rs, en, d4, d5, d6, d7)

LiquidCrystal lcd(8, 9, 4, 5, 6, 7);

int pote() {

int dato;

dato=analogRead(A0);

return dato;

void setup() {

//Definir las dimensiones del LCD (16x2)

lcd.begin(16,2);

void loop() {

lcd.clear();

int Valor=pote();

lcd.setCursor(2,0);

lcd.print(Valor);

//Lo realizamos cada segundo

delay(200);

5.2.- Realizar la simulación que se muestra en la figura 4.

Figura 5.- Circuito para lectura de sensor LM35.


Implementar el siguiente código en la placa Arduino NANO:
#include <LiquidCrystal.h>

//Crear el objeto LCD con los números correspondientes (rs, en, d4, d5, d6, d7)

LiquidCrystal lcd(8, 9, 4, 5, 6, 7);

void setup() {

//Definir las dimensiones del LCD (16x2) y los caracteres que deben salir en las lineas

lcd.begin(16,2);

lcd.print("Temperatura");

lcd.setCursor(0,1);

lcd.print("C=");

void loop() {

float centigrados = leerGradosC();

//Sacamos por pantalla los grados

lcd.setCursor(2,1);

lcd.print(centigrados);

//Lo realizamos cada segundo

delay(200);

float leerGradosC() {

int dato;

float c;

//Leemos los datos analogicos del sensor de temperatura

dato = analogRead(A0);

//Convertimos el dato de entrada en grados C segun la formula

c = (500.0 * dato / 1024);

return c;

6. PARTE PRÁCTICA
6.1.- Armar en el protoboard los circuitos simulados anteriormente de la figura 4 y figura 5.

7. REFERENCIAS
[1] https://www.areatecnologia.com/electronica/potenciometro.html
[2] http://dfists.ua.es/~jpomares/arduino/page_10.htm
[3] https://hetpro-store.com/TUTORIALES/lm35/

S-ar putea să vă placă și