Observa esta instrucción:
Serial.begin(115200);
¿Qué función cumple?
Inicializa la comunicación serial a una velocidad de 115200 baudios, permitiendo enviar información del ESP32 hacia el monitor serial.
¿Qué dos variables principales puede medir un DHT22?
Temperatura y humedad relativa.
¿Qué sensor de esta lista utiliza ultrasonido?
A) BMP180
B) HC-SR04
C) DS18B20
D) LDR
HC-SR04
¿Qué componente permite obtener manualmente una tensión variable?
Potenciómetro.
¿Cuál es el animal terrestre más rápido del mundo?
El guepardo.
En el código del HC-SR04 aparece:
#define TRIG_PIN 5 #define ECHO_PIN 18
¿Qué representa cada pin?
¿Cuál de estos sensores está diseñado principalmente para medir temperatura mediante comunicación 1-Wire?
A) LDR
B) DHT22
C) DS18B20
D) BMP180
C) DS18B20
¿Qué mide principalmente el BMP180?
Presión atmosférica.
También puede utilizarse para estimar altitud mediante cálculos basados en la presión.
¿Qué significa LDR?
ight Dependent Resistor, o resistencia dependiente de la luz.
¿Cuántos huesos tiene aproximadamente el cuerpo humano adulto?
206 huesos.
En el código aparece:
long duration = pulseIn(ECHO_PIN, HIGH);
¿Qué está midiendo duration?
El tiempo durante el cual el pin ECHO permanece en HIGH, expresado normalmente en microsegundos.
Ese tiempo se utiliza posteriormente para calcular la distancia.
En el programa del DHT22 aparece:
#define DHTPIN 4 #define DHTTYPE DHT22
¿Qué significa DHTPIN 4?
Que la señal de datos del DHT22 está conectada al GPIO 4 del ESP32.
El HC-SR04 mide el tiempo de viaje de una onda ultrasónica.
Si el tiempo de ida y vuelta aumenta, ¿qué significa normalmente?
Que el objeto está más lejos del sensor.
Si conectamos un potenciómetro como divisor de tensión al ADC del ESP32, ¿qué sucede al girar el potenciómetro?
La tensión aplicada a la entrada analógica cambia.
Por ejemplo:
3.3 V │ ┌─────┐ │ POT │◄──── Cursor └─────┘ │ GND
El cursor puede entregar una tensión variable aproximadamente entre 0 y 3.3 V, dependiendo de la conexión y las condiciones del circuito.
¿Cuál es el río más largo de México?
El río Bravo.
Observa:
digitalWrite(TRIG_PIN, LOW); delayMicroseconds(2); digitalWrite(TRIG_PIN, HIGH); delayMicroseconds(10); digitalWrite(TRIG_PIN, LOW);
¿Por qué se genera este pulso?
Para activar el HC-SR04.
El ESP32 genera un pulso de aproximadamente 10 μs en TRIG, provocando que el sensor emita la señal ultrasónica.
El código contiene:
float h = dht.readHumidity(); float t = dht.readTemperature(); float f = dht.readTemperature(true);
¿Qué información obtiene cada variable?
VariableInformaciónhHumedad relativatTemperatura en °CfTemperatura en °F
Un HC-SR04 produce un tiempo de:
t=1000 μst=1000\;\mu s
Utilizando:
v=0.0343 cm/μsv=0.0343\;cm/\mu s
¿Cuál es la distancia?
d=21000(0.0343) d=17.15cm
Un LDR se encuentra conectado en un divisor de tensión.
Durante el día aumenta la iluminación.
¿Qué sucede con la resistencia del LDR?
En un LDR típico, al aumentar la iluminación, disminuye su resistencia.
⚠️ La dirección en que cambiará la tensión de salida dependerá de cómo esté construido el divisor.
Quién pintó la obra La Mona Lisa?
Leonardo da Vinci.
En el código aparece:
float distance = (duration * 0.0343) / 2;
¿Por qué se divide entre 2?
Porque el sonido realiza un recorrido de ida y vuelta:
ESP32 ───────► OBJETO ida ESP32 ◄─────── OBJETO vuelta
El tiempo medido corresponde al recorrido total.
Por eso:
d=v⋅t2d=\frac{v\cdot t}{2}
El código contiene:
if (isnan(h) || isnan(t) || isnan(f)) { Serial.println("Error al leer el sensor DHT22"); return; }¿Qué significa isnan()?
Significa "is Not a Number".
Se utiliza para comprobar si la lectura obtenida no es un número válido.
Si alguna lectura es inválida, el programa muestra:
Error al leer el sensor DHT22
¿Por qué debemos tener especial cuidado al conectar el ECHO del HC-SR04 a un ESP32?
Porque el ESP32 utiliza lógica de 3.3 V, mientras que ciertos HC-SR04 trabajan con alimentación de 5 V y pueden entregar un nivel de ECHO superior al que debe recibir directamente un GPIO del ESP32.
Debe verificarse el módulo específico y, cuando sea necesario, utilizar un divisor resistivo o adaptador de nivel lógico.
eto de programación
Tenemos:
int valor = analogRead(34);
if (valor > 2000) { digitalWrite(2, HIGH); }
else { digitalWrite(2, LOW); }Si el ADC entrega:
valor=2500valor=2500
¿El GPIO 2 estará en HIGH o LOW?
HIGH, porque:
2500>20002500>2000
Por lo tanto:
digitalWrite(2, HIGH);
¿Cuál es el único continente que se encuentra en los cuatro hemisferios: norte, sur, oriental y occidental?
África.