Salve,
Ho in mente di attuare un progetto composta da più arduino+ethernet_shield connessi insieme.
In pratica in diverse stanze della casa vorrei piazzare degli arduino+ethernet_shield "slave" che:
- leggono alcuni sensori: temperatura, umidità, luminosità, pressione;
- comandano alcune uscite digitali (tipo LED on/off);
- visualizzano dati tramite display locale.
Periodicamente (ogni 10 sec) l'arduino "Master", connesso alla stessa rete:
- chiede ai vari slave i valori letti;
- crea uno più datalog (uno per ogni stanza) e li salva su una SD;
- visualizza i valori su una pagina web (per visualizzarli con smarphone, PC etc);
- tramite la stessa pagina vorrei poter comandare le uscite sui dispositivi "slave", o comunque inviare loro delle istruzioni.
Sono capace di scrivere un codice in grado di leggere sensori, creare datalog e attivare/disattivare uscite.
Perciò la mia domanda è:
Quale è il metodo più semplice per fare comunicare, via web, i vari moduli "slave" con il modulo master?
Cercando la risposta in rete, si trovano diverse soluzioni (invio UDP, invio TCL, creare pagina HTML e leggere i dati da essa).
Per ognuna di queste soluzioni mi dovrò studiare bene i vari esempi e un minimo di teoria, ma chiedo aiuto a voi per sapere quale "strada" mi consigliate (quale è la più semplice o la più adatta) per fare comunicare i vari moduli slave con il master.
Piccoli appunti:
Utilizzo ethernet shield poiché ho già la predisposizione in casa con le prese LAN su 2 stanze, ovvero quelle che voglio monitorare.
Non voglio usare moduli di comunicazione radio tipo 433MHz, NRFL04 o bluetooth;
Non voglio usare comunicazione seriale "fisica" tra i vari moduli (tipo SPI o I2C), poichè saranno messi in stanze diverse e non posso tirare cavi tra di loro.
Inoltre, in un prossimo futuro vorrei poter sostituire le ethernet shield con dei moduli wifi ESP01, basati su ESP12 (credo li conosciate meglio di me). Così avrei la possibilità di connettere moduli anche dove non ho prese LAN disponibili. In quel caso però penso programmerò direttamente l'ESP12 al posto di arduino ma la sostanza (e il codice di scambio informazioni) non dovrebbe cambiare.
Grazie in anticipo,
Daniele