// MISSION CRITICAL: MARS_DOME_RECONSTRUCTION_V5
// Recovered Fragment: Thermal Control System
// Actuator: Servo (Pin 18) | Sensor: DHT22 (Pin 15)
#include <DHT.h>
#include <ESP32Servo.h>
#define DHTPIN 15
#define DHTTYPE DHT22
DHT dht(DHTPIN, DHTTYPE);
Servo domeValve;
void setup() {
Serial.begin(115200);
dht.begin();
domeValve.attach(18);
}
void loop() {
float tempMarte = dht.readTemperature();
if (!isnan(tempMarte)) {
// --- EL MISTERIO MATEMÁTICO A RESOLVER ---
// En Marte, si la temperatura sube de 10°C, el domo reacciona.
float delta = tempMarte - 10.0;
if (delta < 0) delta = 0;
// MODELO: y = 2 * (x^2)
// Los estudiantes deben notar que si delta es 2, el ángulo es 8.
// Pero si delta es 4, el ángulo salta a 32. ¡Es una CURVA!
int angle = 2 * (delta * delta);
if (angle > 180) angle = 180;
domeValve.write(angle);
// Telemetría para el monitor serial
Serial.print("Temp Marte: "); Serial.print(tempMarte);
Serial.print("C | Apertura Domo: "); Serial.println(angle);
}
delay(1000);
}Loading
esp32-devkit-c-v4
esp32-devkit-c-v4