Está en la página 1de 6

FACULTAD DE INGENIERÍA

FORMATO
PRÁCTICAS DE LABORATORIO

UNIVERSIDAD AUTÓNOMA DE CAMPECHE

NOMBRE DEL PROFESOR: Domingo Alberto Dzul González.


NOMBRE DE LA PRÁCTICA: Programación de Pines Analógicos.
PRÁCTICA NÚM. 3

LABORATORIO: Centro de Computo


MATERIA: Sistemas Embebidos
UNIDAD: UNO
TIEMPO: 2HRS

1 Introducción
El software embebido es la combinación de software y hardware en un solo paquete
que hacen los fabricantes. Es el software de cómputos creado específicamente para
máquinas que generalmente no consideramos computadoras, pero que usan software
para funcionar.

2 Objetivo
Comprender las características y funciones básicas de programar en Arduino IDE para la
implementación de microcontroladores en Sistemas Embebidos.

3 Fundamentos
Las entradas analógicas del modelo Uno son las correspondientes a los pines de A0 a
A5. Se caracterizan por leer valores de tensión de 0 a 5 Voltios con una resolución de
1024 (10 bits). Si dividimos 5 entre 1024 tenemos que ser capaz de detectar variaciones
en el nivel de la señal de entrada de casi 5 mV.

4 Marco Teórico
El ESP32 es un microcontrolador de bajo costo y alto rendimiento que ofrece
capacidades avanzadas para el desarrollo de proyectos IoT y embebidos. Una de las
características distintivas del ESP32 son sus pines analógicos, que permiten la lectura
de valores analógicos con una precisión adecuada.

Estructura y Disposición de los Pines Analógicos


El ESP32 cuenta con varios pines que pueden ser utilizados como pines analógicos.
Estos pines están distribuidos en diferentes grupos, como los pines ADC1 (Analog-to-
Digital Converter 1) y los pines ADC2, cada uno con sus propias características y
limitaciones.

• Pines ADC1: Estos pines son fundamentalmente utilizados para la conversión de


señales analógicas a digitales. En el ESP32, los pines ADC1 se pueden utilizar
para leer valores analógicos en un rango de 0 a 3.3V.
• Pines ADC2: Estos pines comparten funcionalidad con otros periféricos del
ESP32, como DAC (Digital-to-Analog Converter) y Touch. Es importante tener en
FACULTAD DE INGENIERÍA
FORMATO
PRÁCTICAS DE LABORATORIO

cuenta que al utilizar los pines ADC2, se pueden presentar limitaciones en la


utilización de otros periféricos del chip.

Resolución y Precisión

La resolución de los pines ADC en el ESP32 determina la precisión con la que se


pueden leer los valores analógicos. En el caso del ESP32, la resolución típica de los
pines analógicos es de 12 bits, lo que significa que se pueden representar hasta 4096
niveles de voltaje diferentes en el rango de 0 a 3.3V.

Muestreo y Conversión

Para leer una señal analógica en un pin ADC del ESP32, es necesario realizar un
proceso de muestreo y conversión. Durante el proceso de muestreo, se captura la señal
analógica en un instante específico, y durante la conversión, se transforma esa señal en
un valor digital que puede ser utilizado por el microcontrolador.

Calibración y Linealidad

Es importante recalibrar periódicamente los pines analógicos del ESP32 para garantizar
una lectura precisa y lineal de las señales analógicas. La calibración puede implicar
ajustes en los parámetros internos del conversor ADC para corregir desviaciones y
mejorar la precisión de las lecturas.
.

5 Procedimiento
A) Herramientas y materiales del alumno
1. 1 × placa de pruebas
2. 1 × Arduino Uno R3
3. 2 × 5K resistencia variable (potenciómetro)
4. 5 x LED (con sus resistencias)
FACULTAD DE INGENIERÍA
FORMATO
PRÁCTICAS DE LABORATORIO

UNIVERSIDAD AUTÓNOMA DE CAMPECHE

B) Desarrollo de la práctica
1. Abrir el IDE de Arduino Oficial ir a la parte de ejemplos-analog,
comprobar los sketch de ejemplos de entrada analógica para
lectura y la escritura analógica analogRead(A0); y analogWrite().

2. Se debe imprimir las variables en el monitor serial

3. Realizar el armado del Circuito correspondiente para leer


analógicamente la entrada de un potenciómetro y escribir
analógicamente ajustando el brillo de un LED.

4. Utilizar 5 LED’s, manipular su brillo con un potenciómetro,


utilizar un segundo potenciómetro para controlar la cantidad de
led’s encendidos.

5. Por consiguiente, se presentan imágenes de como quedo la montada


del circuito y una foto de su funcionamiento.
FACULTAD DE INGENIERÍA
FORMATO
PRÁCTICAS DE LABORATORIO

6 Código
const int potPinSpeed = 34; // Pin del potenciómetro para velocidad
const int potPinIntensity = 35; // Pin del potenciómetro para intensidad
const int ledPins[] = {2, 4, 5, 18, 19}; // Pines de los LEDs
const int numLeds = 5; // Número de LEDs

void setup() {
for (int i = 0; i < numLeds; i++) {
FACULTAD DE INGENIERÍA
FORMATO
PRÁCTICAS DE LABORATORIO

pinMode(ledPins[i], OUTPUT);
}
}

void loop() {
// Leer el valor del potenciómetro para velocidad (0-4095)
int potValueSpeed = analogRead(potPinSpeed);
// Convertir el valor del potenciómetro para velocidad a un rango adecuado
(10-1000 ms)
int speed = map(potValueSpeed, 0, 4095, 1000, 10);

// Leer el valor del potenciómetro para intensidad (0-4095)


int potValueIntensity = analogRead(potPinIntensity);
// Convertir el valor del potenciómetro para intensidad a un rango
adecuado (0-255)
int intensity = map(potValueIntensity, 0, 4095, 0, 255);

// Encender todos los LEDs con la intensidad determinada por el


potenciómetro para intensidad
for (int i = 0; i < numLeds; i++) {
analogWrite(ledPins[i], intensity); // Establecer la intensidad del LED
}

// Esperar la duración del ciclo de encendido/apagado


delay(speed);

// Apagar todos los LEDs


for (int i = 0; i < numLeds; i++) {
analogWrite(ledPins[i], 0); // Apagar el LED
}

// Esperar la duración del ciclo de encendido/apagado


delay(speed);
}
FACULTAD DE INGENIERÍA
FORMATO
PRÁCTICAS DE LABORATORIO

UNIVERSIDAD AUTÓNOMA DE CAMPECHE

6 Ejercicios
• ¿Cuál es la resolución de lectura analógica del Arduino?
El ESP32 tiene un ADC (convertidor analógico-digital) de 12 bits, lo que significa que
puede representar valores analógicos en un rango de 0 a 4095 (2^12 - 1),
proporcionando una resolución de lectura de aproximadamente 0.81 mV (milivoltios) por
paso en una referencia de voltaje de 3.3V.

• ¿Cuál es la resolución de Escritura analógica del Arduino?


El ESP32 puede generar señales PWM (modulación por ancho de pulso) con una
resolución de 8 bits en la mayoría de los pines, lo que significa que puede generar 256
niveles de salida analógica. Sin embargo, algunos pines del ESP32 pueden admitir PWM
con resolución de hasta 16 bits, lo que proporciona una mayor precisión en la generación
de señales analógicas.

7 Referencias
1. https://arduino.cl/introduccion-a-los-tipos-de-dato-con-arduino/
2.- Salas, Sergio,”Todo sobre sistemas embebidos”,UPC, Perú, 2015.
3.- Benchimol, D. (2011). Proyectos con microcontroladores aprenda a desarrollar sus propias
aplicaciones. USERSHOP.
4.- Solé, A. C. (2012). Neumática e hidráulica. Marcombo.

8 Firma Firma y Fecha de recibido

Nombre y firma del docente.

También podría gustarte