0% encontró este documento útil (0 votos)
30 vistas9 páginas

68423ad604ca4

El documento detalla la práctica de adquisición de datos utilizando periféricos ADC en sistemas embebidos con el microcontrolador ESP32. Se abordan conceptos de conversión analógica-digital, resolución del ADC y se presentan ejemplos prácticos de implementación con un potenciómetro y un sistema de alarmas visuales. Además, se discuten consideraciones técnicas y se plantean preguntas para el análisis del aprendizaje obtenido.

Cargado por

Luis Lliguipuma
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
30 vistas9 páginas

68423ad604ca4

El documento detalla la práctica de adquisición de datos utilizando periféricos ADC en sistemas embebidos con el microcontrolador ESP32. Se abordan conceptos de conversión analógica-digital, resolución del ADC y se presentan ejemplos prácticos de implementación con un potenciómetro y un sistema de alarmas visuales. Además, se discuten consideraciones técnicas y se plantean preguntas para el análisis del aprendizaje obtenido.

Cargado por

Luis Lliguipuma
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

Pra´ctica 2: Perif´ericos ADC para Adquisici´on de Datos

Sistemas Embebidos – Ingenier´ıa en Mecatro´nica

Universidad ECOTEC – Facultad de Ciencias de la Ingenier´ıa

2025

1. Objetivo General
Aplicar los principios de conversio´n analo´gica-digital en sistemas embebidos
utilizando los perif´ericos ADC del microcontrolador ESP32, orientado a la lectura de
sen˜ales continuas para la adquisicio´n de datos, monitoreo y posterior control de
procesos mecatro´nicos.

2. Objetivos Espec´ıficos
Comprender el principio f´ısico-matem´atico detra´s del funcionamiento de un
convertidor analo´gico-digital (ADC).

Analizar las limitaciones y par´ametros t´ecnicos de los perif´ericos ADC internos de


los microcontroladores ESP32 y Arduino Mega.

Implementar una rutina de adquisicio´n anal´ogica para lectura en tiempo real de


varia- bles de entrada mediante potencio´metros o sensores de voltaje variable.

Estimar la resolucio´n efectiva, voltaje de entrada y niveles cuantificables en funci´on


del modelo del ADC y su configuracio´n.

3. Introduccio´n
En la ingenier´ıa mecatro´nica, los sistemas embebidos juegan un papel esencial como in-
terfaz entre sensores, actuadores y controladores l´ogicos. Sin embargo, la mayor´ıa de las
magnitudes f´ısicas —como presi´on, velocidad angular, temperatura, posici´on lineal, caudal
— no se expresan naturalmente como datos digitales. Para hacerlas procesables por un micro-
controlador, deben primero ser medidas y posteriormente convertidas de sen˜ales continuas
(analo´gicas) a sen˜ales discretas (digitales).

1
Esta conversi´on se realiza mediante el m´odulo **ADC** (Analog to Digital Converter),
el cual permite muestrear y cuantificar el voltaje de una sen˜ al dentro de un determinado
rango. Su comprensi´on y correcta implementacio´n resulta vital en el disen˜o de
sistemas de adquisicio´n de datos (DAQ), control industrial, rob´otica y monitoreo remoto.

4. Fundamentos del Perif´erico ADC

4.1 Definicio´n y Principio de Operacio´n


Un convertidor analo´gico-digital es un componente electro´nico que recibe una
entrada de voltaje continuo (Vin) y genera como salida un nu´mero binario proporcional a
dicha magnitud, dentro del rango definido por el voltaje de referencia (Vref ) y la resoluci´on
del sistema (n bits).
Este proceso incluye tres etapas:

1. Muestreo: Captura del valor de la sen˜ al en un instante.

2. Retenci´on: Congelamiento del valor para permitir la conversio´n.

3. Cuantificacio´n: Asignaci´on de un valor discreto equivalente en base binaria.

4.2 Resolucio´n del ADC


La resoluci´on indica el nu´mero total de niveles distinguibles por el conversor. Matema
´ti- camente:

N = 2n niveles

Donde:

n = nu´mero de bits

N = cantidad de niveles que puede detectar el ADC

Para un ADC de 12 bits (como el del ESP32):

N = 212 = 4096

Esto significa que el voltaje de entrada se dividir´a en 4096 niveles de cuantificacio´n. Cada
nivel representa un incremento m´ınimo de voltaje, denominado **resolucio´n en voltios**:

Resolucio´n V Vref
=
2n − 1
2
Ejemplo con Vref = 3,3V :
3,3
Resolucio´nV = ≈ 0,000805 V (805 µV )
4095

4.3 Conversio´n del Valor Digital a Voltaje


El voltaje de entrada se calcula a partir del valor digital le´ıdo (ADCval) mediante la
expresio´n:

Vin = ADCval
· ref
V
2n − 1

Ejemplo: Si ADCval = 2700 con resoluci´on de 12 bits:


2700
Vin = · 3,3 ≈ 2,17V
4095

4.4 Comparacio´n entre ADC del ESP32 y Arduino Mega

Par´ametro ESP32 Arduino Mega 2560


Resolucio´n Nominal 12 bits 10 bits
Resolucio´n en Voltios ∼0.805 mV ∼4.88 mV
Voltaje de Entrada 0 – 3.3V 0 – 5.0V
Precisio´n Real Media-alta (requiere calibraci´on) Alta (menor resoluci´on)
Canales ADC 18 (ADC1 + ADC2) 16
Uso de WiFi afecta S´ı (en ADC2) No aplica
Cuadro 1: Comparaci´on t´ecnica entre ADC del ESP32 y Arduino Mega

4.5 Consideraciones Pr´acticas


El m´odulo ADC2 del ESP32 comparte recursos con el WiFi. Se recomienda usar ADC1
para tareas cr´ıticas.

Las lecturas pueden variar por ruido interno o por interferencias. Se puede usar filtrado
software (promedios mo´viles o exponenciales).

Si se requiere mayor precisi´on, se pueden emplear ADCs externos por I2C/SPI como
el ADS1115.

El voltaje de referencia interno del ESP32 no siempre es exacto. Para aplicaciones de


alta precisi´on, se debe usar una fuente de Vref externa estabilizada.

3
5. Pr´actica: Adquisicio´n de Datos desde un Potencio
´me- tro con ESP32

5.1 Descripci´on de la Actividad


En esta secci´on se implementara´ un sistema de adquisici´on de datos utilizando uno
de los pines ADC1 del microcontrolador ESP32. Se conectara´ un potenci´ometro al pin
analo´gico
GPIO34, se realizara la lectura del valor digital correspondiente, se calculara el voltaje de
´ ´
entrada, y se visualizara´ dicha informaci´on en el Monitor Serial del IDE de Arduino.

5.2 Diagrama de Conexio´n


VCC del potencio´metro → 3.3V del
ESP32 GND del potencio´metro → GND
del ESP32
Pin central del potencio´metro → GPIO34 (canal ADC1 CH6)

5.3 C´odigo Fuente para Lectura del ADC

Listing 1: Lectura de ADC y conversi´on a voltaje en ESP32


1 const int potPin = 34; // Pin ADC 1 _CH 6
2 int adcVal = 0;
3
float voltage = 0.0;
4
void setup () {
5
Serial. begin (115200
6 ); delay (1000);
7 Serial. println (" Inicio de a d q u i s i c i n de datos
8 ...");
9
}
10
void loop () {
11
adcVal
voltage= =analogRead
( adcVal * ( 3.3)
potPin
/ );4095.0;
12
Serial. print(" Valor ADC ");
13 : Serial. print( adcVal );
14 Serial. print("\ t ( V):
15 Serial. println ( voltage , ");
Voltaje
16
3);
17
} delay (500);
18

19

4
5.4 An´alisis del Resultado
A medida que el potenci´ometro var´ıa su resistencia interna, el voltaje en el pin analo
´gi- co tambi´en cambia. El ESP32 traduce estos valores a una magnitud digital, la cual
puede usarse para estimar el comportamiento de sensores resistivos, interfaces humanas, o
entradas ana´logas de control.

6. Proyecto Aplicado: Alarmas Visuales con LEDs y Men-


sajes Seriales

6.1 Descripci´on del Proyecto


Este proyecto simula un sistema de monitoreo de una variable an´aloga (ej.
temperatura simulada) a trav´es de un potenci´ometro. Dependiendo del voltaje de
entrada, se encender´an LEDs representando distintos niveles de alerta, y se mostrar´a el
estado actual mediante mensajes en el terminal serial.

6.2 Rango de Alarma y Sen˜alizaci´on


Nivel bajo (0.0V a 1.1V): LED verde encendido – Estado normal

Nivel medio (1.1V a 2.2V): LED amarillo encendido – Precaucio´n

Nivel alto (mayor a 2.2V): LED rojo encendido – Alarma cr´ıtica

6.3 Conexi´on de LEDs


LED verde → GPIO18
LED amarillo → GPIO19
LED rojo → GPIO21

6.4 C´odigo Fuente del Sistema de Alarmas

Listing 2: Sistema de alarmas visuales con potenci´ometro


1 const int potPin = 34;
2 const int led Verde = 18;
3
const int led Amarillo = 19;
const int led Rojo = 21;
4

5
void setup () {
6

5
7 Serial. begin (115200 );
8 pin Mode ( ledVerde , OUTPUT );
9
pin Mode ( led Amarillo , OUTPUT
); pin Mode ( ledRojo , OUTPUT );
10
}
11

12 void loop () {
13 int adcVal = analogRead ( potPin );
14 float voltage = ( adcVal * 3.3) / 4095.0;
15

16

17 if ( voltage < 1.1) {


18 digitalWrite ( ledVerde , HIGH );
19 digitalWrite ( led Amarillo , LOW );
20 digitalWrite ( ledRojo , LOW );
21 Serial. println (" Estado : NORMAL");
22 } else if ( voltage < 2.2) {
23 digitalWrite ( ledVerde , LOW );
24 digitalWrite ( led Amarillo , HIGH );
25 digitalWrite ( ledRojo , LOW );
26 Serial. println (" Estado : P R E C A U C I N ");
27 } else {
28 digitalWrite ( ledVerde , LOW );
29 digitalWrite ( led Amarillo , LOW );
30 digitalWrite ( ledRojo , HIGH );
31 Serial. println (" Estado : ALARMA C R T I C A
");
32 }delay (500);
33 }
34

35

6.5 Observaciones
Este tipo de implementacio´n puede adaptarse f´acilmente a sensores reales,
estableciendo umbrales definidos por ingenier´ıa de procesos o normas de seguridad industrial.
Los mensajes enviados por el puerto serial pueden ser utilizados como entrada a un sistema
SCADA o registrado en un sistema de adquisici´on de datos (DAQ).

7. Preguntas T´ecnicas para An´alisis


Responda las siguientes preguntas con base en los resultados obtenidos, los conceptos
desarrollados en clase y su razonamiento t´ecnico:

6
1. ¿Co´mo se define la resolucio´n de un ADC y co´mo influye en la precisi´on de la
medici´on analo´gica?

7
2. ¿Qu´e implicaciones t´ecnicas y funcionales tiene el uso del m´odulo ADC2 en el
ESP32 cuando est´a activo el WiFi?

3. Si el sistema trabaja con un sensor que entrega una sen˜ al entre 0 y 2V, ¿qu´e
ventajas tendr´ıa ajustar el voltaje de referencia del ADC a 2V en lugar de 3.3V?

4. ¿Cu´al es la diferencia pra´ctica entre la resolucio´n nominal del ADC y la


resolucio´n efectiva?

5. ¿Qu´e t´ecnicas de software se pueden implementar para mejorar la estabilidad de


las lecturas anal´ogicas en sistemas embebidos?

6. ¿Qu´e pasar´ıa si se conectara un sensor de 5V directamente a un pin anal´ogico del


ESP32 sin divisores de voltaje?

7. En un sistema de monitoreo de variables cr´ıticas, ¿por q u´e podr´ıa ser


recomendable utilizar un ADC externo en lugar del integrado en el ESP32?

8. Explique co´mo se podr´ıan adaptar los umbrales de alarma en funcio´n de diferentes


tipos de sensores (temperatura, humedad, presio´n).

8. Conclusiones del Estudiante


A continuacio´n, redacte un texto reflexivo donde resuma lo aprendido en esta pra´cti-
ca. Considere su experiencia en la programaci´on, simulacio´n, conexio´n f´ısica y ana
´lisis de resultados.

Conclusi´on personal:

¿ Q u´e dificultades t´ecnicas tuvo durante la pr´actica?

8
¿ Q u´e aspectos considera m ´a s importantes para su futura aplicacio´n profesional?

9. Bibliograf´ıa
Espressif Systems. (2023). ESP32 Technical Reference Manual. Disponible en: https:
//www.espressif.com/en/support/documents/technical-documents

Axelson, J. (2015). Embedded Systems Programming in C and Arduino. Maker Media.

Gonza´lez, J., Galva´n, M. (2019). Instrumentaci´on Electr´onica Aplicada. Pearson


Edu- cacio´n.

Datasheet Arduino Mega 2560. Arduino.cc. Disponible en: https://www.arduino.cc/


en/Main/ArduinoBoardMega2560

Texas Instruments. (2020). Understanding SAR ADCs: Resolution and Noise. Applica-
tion Note.

También podría gustarte