Salve,sono nuovo nel forum e avrei bisogno di un po di aiuto.
Sto progettando una casa domotica da portare all'esame di maturità.
La casa viene gestita attraverso una pagina php da dove si possono spegnere/accendere le luci e sempre sulla pagina web vengono visualizzate le temperature (salvate su un database) rilevate dai vari sensori.
Il mio problema è:come faccio a scrivere sul database le temperature rilevate dai sensori?
di seguito il codice.
//includo le librerie
#include <SPI.h>
#include <Ethernet.h>
//stabilisco l'indirizzo mac
byte mac[] = {
0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
//stabilisco l'indirizzo ip
byte ip[] = {
192, 168, 1, 6 };
//stabilisco la maschera di sottorete
byte subnet[] = {
255, 255, 255, 0 };
//stabilisco la porta
EthernetServer server(80);
String readString;
//dichiaro i vari pin
byte out_1 = 2;//luci letto1
byte out_2 = 3;//luci letto2
byte out_3 = 4;//luci bagno
byte out_4 = 5;//luci cucina
byte out_5 = 6;//luci sala da pranzo
byte out_6 = 7;//luci garage
byte out_7 = 8;//led allarme
void setup()
{
Ethernet.begin(mac, ip);
//imposto i vari pin in uscita
pinMode(out_1, OUTPUT);
pinMode(out_2, OUTPUT);
pinMode(out_3, OUTPUT);
pinMode(out_4, OUTPUT);
pinMode(out_5, OUTPUT);
pinMode(out_6, OUTPUT);
pinMode(out_7, OUTPUT);
}
void loop(){
EthernetClient client = server.available();
if (client) {
boolean currentLineIsBlank = true;
while (client.connected()) {
if (client.available()) {
char c = client.read();
readString.concat(c);
if (c == '\n' && currentLineIsBlank)
{
if(readString.indexOf("allarme_on") > 0) //se legge la stringa allarme_on si attiva l'allarme
{
while(readString.indexOf("allarme_off") < 0)//finchè non legge allarme_off
{
// if( sensore rileva apertura porta) //controlla se rileva movimenti dietro la porta
// digitalWrite(out_7, HIGH); //se li rileva accende il led esterno
}
}
if(readString.indexOf("luci1on=ON") > 0)//se legge la stringa luci1on accende il pin 2 (luci letto1)
digitalWrite(out_1, HIGH);
if(readString.indexOf("luci1off=OFF") > 0)//se legge la stringa luci1off spegne il pin 2 (luci letto1)
digitalWrite(out_1, LOW);
if(readString.indexOf("luci2on=ON") > 0)//se legge la stringa luci2on accende il pin 3 (luci letto2)
digitalWrite(out_2, HIGH);
if(readString.indexOf("luci2off=OFF") > 0)//se legge la stringa luci2off spegne il pin 3 (luci letto2)
digitalWrite(out_2, LOW);
if(readString.indexOf("lucibagnoon=ON") > 0)//se legge la stringa lucibagnoon accende il pin 4 (luci bagno)
digitalWrite(out_3, HIGH);
if(readString.indexOf("lucibagnooff=OFF") > 0) //se legge la stringa lucibagnooff spegne il pin 4 (luci bagno)
digitalWrite(out_3, LOW);
if(readString.indexOf("lucicucinaon=ON") > 0) //se legge la stringa lucicucinaon accende il pin 5 (luci cucina)
digitalWrite(out_4, HIGH);
if(readString.indexOf("lucicucinaoff=OFF") > 0)//se legge la stringa lucicucinaoff spegne il pin 5 (luci cucina)
digitalWrite(out_4, LOW);
if(readString.indexOf("lucisdpon=ON") > 0) //se legge la stringa lucisdpon accende il pin 6 (luci sala da pranzo)
digitalWrite(out_5, HIGH);
if(readString.indexOf("lucisdpoff=OFF") > 0) //se legge la stringa lucisdpoff spegne il pin 6 (luci sala da pranzo)
digitalWrite(out_5, LOW);
if(readString.indexOf("lucigarageon=ON") > 0)//se legge la stringa lucigarageon accende il pin 7 (luci garage)
digitalWrite(out_6, HIGH);
if(readString.indexOf("lucigarageoff=OFF") > 0)//se legge la stringa lucigarageoff spegne il pin 7 (luci garage)
digitalWrite(out_6, LOW);
}
}
}
}
}
/* // PAGINA HTML
client.println("HTTP/1.1 200 OK");
client.println("Content-Type: text/html");
client.println();
client.print("<html><head><title>ARDUINO Controllo WEB</title></head><body>");
client.print("
");
client.print("header('location:log_in.html')");//torno alla pagina home
client.println("</body></html>");
readString="";// pulisco la stringa per la successiva lettura
delay(5);
client.flush();
client.stop(); //fermo il client
}*/