⭐⭐⭐ Sfida ⏱️ 30 minuti

Ventilatore intelligente

Costruisci un termostato. Se fa più caldo di 25 gradi, il relè fa clic e si accende. Così il tuo Arduino può accendere, per esempio, una piccola ventola con una batteria. Sullo schermo vedi la temperatura e se la ventola è accesa.

Prima fai un veloce accesso. Poi il tuo progetto è subito pronto.

🧰 Che cosa ti serve?

🗺️ Schema di collegamento

Segui i fili dall'Arduino a ogni componente. Puoi scegliere tu i colori dei fili.

Da A
Arduino UNO · D2 Sensore di temperatura DHT11 · DAT
Arduino UNO · 5V Sensore di temperatura DHT11 · VCC
Arduino UNO · GND Sensore di temperatura DHT11 · GND
Arduino UNO · D7 Relè 5V · S
Arduino UNO · 5V Relè 5V · +
Arduino UNO · GND Relè 5V · -
Arduino UNO · A4 Piccolo schermo OLED 0,91" · SDA
Arduino UNO · A5 Piccolo schermo OLED 0,91" · SCL
Arduino UNO · 5V Piccolo schermo OLED 0,91" · VCC
Arduino UNO · GND Piccolo schermo OLED 0,91" · GND

🛠️ Così lo costruisci

  1. Collega il DHT11: DAT verso pin 2, VCC verso 5V e GND verso GND.
  2. Collega il relè: S verso pin 7, + verso 5V e − verso GND.
  3. Collega lo schermo OLED: SDA verso A4, SCL verso A5, VCC verso 5V e GND verso GND.
  4. Vuoi davvero accendere qualcosa? Usa solo una batteria o bassa tensione su COM e NO, mai la presa di corrente.

💻 Il codice

// Ventilatore intelligente (termostato)
// Fa troppo caldo? Allora il relè si attiva, per esempio per una ventola.
// Sullo schermo vedi la temperatura e se la ventola è accesa.

#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#include <DHT.h>

const int DHT_PIN = 2;        // DAT del DHT11 sul pin 2
const int RELE_PIN = 7;       // S del relè sul pin 7
const float ACCESO_SOPRA = 25.0; // Sopra questa temperatura la ventola si accende
const float SPENTO_SOTTO = 24.0; // Sotto questa temperatura si spegne di nuovo

DHT dht(DHT_PIN, DHT11);
Adafruit_SSD1306 schermo(128, 32, &Wire, -1);  // OLED: SDA = A4, SCL = A5

bool ventilatoreAcceso = false;

void setup() {
  Serial.begin(9600);
  pinMode(RELE_PIN, OUTPUT);
  digitalWrite(RELE_PIN, LOW);   // Inizia con il relè spento
  dht.begin();
  schermo.begin(SSD1306_SWITCHCAPVCC, 0x3C);
  schermo.setTextColor(SSD1306_WHITE);
}

void loop() {
  float temperatura = dht.readTemperature();

  if (!isnan(temperatura)) {
    // Due limiti, così il relè non fa clic di continuo
    if (temperatura > ACCESO_SOPRA) ventilatoreAcceso = true;
    if (temperatura < SPENTO_SOTTO) ventilatoreAcceso = false;
    digitalWrite(RELE_PIN, ventilatoreAcceso ? HIGH : LOW);
  }

  schermo.clearDisplay();
  schermo.setTextSize(2);
  schermo.setCursor(0, 0);
  if (isnan(temperatura)) {
    schermo.print(F("DHT11 ?"));
  } else {
    schermo.print(temperatura, 1);
    schermo.print((char)247);
    schermo.print(F("C"));
  }
  schermo.setTextSize(1);
  schermo.setCursor(0, 22);
  schermo.print(ventilatoreAcceso ? F("Ventola: accesa") : F("Ventola: spenta"));
  schermo.display();

  Serial.print(F("Temperatura: "));
  Serial.print(temperatura);
  Serial.println(ventilatoreAcceso ? F(" C  -> accesa") : F(" C  -> spenta"));

  delay(2000);
}

🧠 Che cosa fa il codice?

  • Il DHT11 misura la temperatura. Sopra i 25 gradi accendiamo il relè.
  • Solo sotto i 24 gradi il relè si spegne di nuovo. Con questi due limiti non continua ad accendersi e spegnersi.
  • Lo schermo OLED mostra la temperatura e "Ventola: accesa" o "spenta".

🎯 Prova anche…

  • Aggiungi due pulsanti per alzare e abbassare la temperatura limite
  • Fai accendere un LED finché la ventola è accesa
  • Fai partire la ventola anche quando l'umidità dell'aria supera il 70%

🚀 Costruisci questo progetto con Codey: apri codey.online/it/starter-kits/uno/projects/thermostat e clicca su FAI QUESTO. Così il codice e lo schema di collegamento sono subito pronti.

Prima fai un veloce accesso. Poi il tuo progetto è subito pronto.
⬇️ Scarica questa pagina come PDF 📚 Scarica il tutorial completo (PDF)

Codey Online è un prodotto di OTRONIC

Crea il tuo progetto Arduino o ESP32 con l'AI

Descrivi cosa vuoi realizzare. Codey Online scrive il codice, disegna lo schema di collegamento, lo compila e programma la tua scheda direttamente dal browser.

Inizia gratis