PROGETTI ARDUINO

  • HOME
  • 200 Progetti
  • PROGETTI E TUTORIAL
  • PROGETTI E TUTORIAL 2
  • ELETTRONICA
  • RECENSIONI
  • MANUALE
  • CONTATTI
  • HOME
  • 200 Progetti
  • PROGETTI E TUTORIAL
  • PROGETTI E TUTORIAL 2
  • ELETTRONICA
  • RECENSIONI
  • MANUALE
  • CONTATTI

Progetto 89
​Sistema domotico base

🧠 Introduzione

Dopo aver imparato a monitorare l’ambiente tramite sensori e visualizzare i dati su una pagina web, in questo progetto iniziamo a costruire un vero sistema domotico.

L’obiettivo è controllare dispositivi reali, come luci o piccoli carichi elettrici, utilizzando Arduino collegato alla rete WiFi tramite il modulo ESP8266.

A differenza dei progetti precedenti, qui non ci limitiamo alla visualizzazione dei dati, ma introduciamo il controllo attivo: sarà possibile accendere e spegnere un dispositivo direttamente dal browser, simulando il comportamento di una smart home.
​
Questo progetto rappresenta la base per sistemi più avanzati come:
  • controllo luci domestiche
  • gestione prese intelligenti
  • automazioni smart
  • sistemi di sicurezza

🧰 Materiale necessario
​
  • Arduino UNO
  • Modulo ESP8266
  • Modulo relè (1 canale)
  • Breadboard
  • Cavi jumper
🛒 Componenti e risorse consigliate

👉 Kit Arduino consigliato: https://amzn.to/41fmFNK
💡 Con un solo kit puoi realizzare la maggior parte dei progetti presenti nel sito.

📚 I miei libri consigliati
​

👉 Arduino per tutti – Volume 1: https://amzn.to/4rGNxB9
👉 Arduino per tutti – Volume 2: https://amzn.to/4bkfaey
👉 Arduino per tutti – Volume 3: https://amzn.to/4bogjAg

🔌 Schema di collegamento

Modulo relè
  • VCC → 5V Arduino
  • GND → GND Arduino
  • IN → Pin 7 Arduino

Modulo ESP8266
  • VCC → 3.3V Arduino
  • GND → GND Arduino
  • TX → Pin 10 Arduino
  • RX → Pin 11 Arduino (consigliato partitore di tensione)
  • CH_PD → 3.3V

⚠️ Tutti i GND devono essere collegati tra loro.
Foto

📚 Librerie necessarie
​

Questo progetto utilizza solo librerie già presenti nell’IDE Arduino.

💻 Codice Arduino
​

Prima di iniziare, inserisci il nome della tua rete WiFi e la password.
​// ============================================
// Progetto 89 - Sistema domotico base
// Controllo relè via browser
// ============================================

#include <SoftwareSerial.h>

SoftwareSerial esp(10, 11);

String ssid = "NOME_WIFI";
String password = "PASSWORD_WIFI";

int rele = 7;

void setup() {
  pinMode(rele, OUTPUT);
  digitalWrite(rele, LOW);

  Serial.begin(9600);
  esp.begin(115200);

  sendCommand("AT", 2000);
  sendCommand("AT+CWMODE=1", 2000);

  String cmd = "AT+CWJAP=\"" + ssid + "\",\"" + password + "\"";
  sendCommand(cmd, 6000);

  sendCommand("AT+CIPMUX=1", 2000);
  sendCommand("AT+CIPSERVER=1,80", 2000);
}

void loop() {

  if (esp.available()) {

    String request = esp.readString();

    if (request.indexOf("RELE=ON") != -1) {
      digitalWrite(rele, HIGH);
    }

    if (request.indexOf("RELE=OFF") != -1) {
      digitalWrite(rele, LOW);
    }

    String webpage =
      "HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n\r\n"
      "<html><head>"
      "<meta name='viewport' content='width=device-width, initial-scale=1'>"
      "<style>"
      "body{font-family:Arial;text-align:center;background:#111;color:#fff;}"
      "a{display:block;margin:20px;padding:15px;background:#00ffcc;color:#000;border-radius:10px;text-decoration:none;}"
      "</style>"
      "</head><body>"

      "<h1>Domotica Arduino</h1>"

      "<a href='/?RELE=ON'>ACCENDI</a>"
      "<a href='/?RELE=OFF'>SPEGNI</a>"

      "</body></html>";

    String sendCmd = "AT+CIPSEND=0," + String(webpage.length());
    sendCommand(sendCmd, 2000);

    esp.print(webpage);

    sendCommand("AT+CIPCLOSE=0", 2000);
  }
}

void sendCommand(String cmd, int timeout) {
  esp.println(cmd);
  long int time = millis();

  while ((time + timeout) > millis()) {
    while (esp.available()) {
      Serial.write(esp.read());
    }
  }
}

🌐 Come accedere alla pagina web

Dopo aver caricato il codice su Arduino, il modulo ESP8266 si collegherà alla rete WiFi indicata.

Apri il Monitor Seriale per individuare l’indirizzo IP assegnato dal router. Una volta trovato, inseriscilo nel browser di uno smartphone o computer collegato alla stessa rete.
​
La pagina web mostrerà due pulsanti che permettono di accendere e spegnere il relè in tempo reale.

⚙️ Come funziona

Arduino riceve le richieste dal browser tramite il modulo ESP8266.

Quando l’utente preme uno dei pulsanti nella pagina web, viene inviato un comando specifico (RELE=ON oppure RELE=OFF). Arduino interpreta questo comando e attiva o disattiva il relè collegato.
​
Il relè funziona come un interruttore elettronico, permettendo di controllare dispositivi esterni come lampade o piccoli elettrodomestici.

🔁 Varianti possibili
​
  • Controllo di più relè (multi-stanza)
  • Interfaccia grafica migliorata
  • Controllo da remoto via internet
  • Integrazione con sensori

Foto

© ProgettiArduino.com 2026 - Fancello Salvatore
​ Layout, immagini e testi sono di esclusiva proprietà di www.progettiarduino.com 
Privacy Policy