Salve a tutti! Ho quasi completato il mio progetto!
*Accendere le luci di casa
*Aprire il portone
*Aprire il garage
Tutto con il mio android + asterisk, grazie a voi!!!!!!!!!
L'unica cosa che mi è venuta in mente è:
Come faccio a sapere se il garage è aperto o chiuso?
Esempio...vado fuori città e dimentico il garage aperto. Posso vedere dalla pagina web di arduino se il garage è aperto?
Mi sono documentato un po e se non erro, mi servono le AnalogInput no??
Correggetemi se sbaglio!
Ho anche un sensore magnetico, ma non so dove collegarlo...(su arduino). Su input? vedo A0 A1 A2 A3 etc..
Questo è il mio codice per adesso:
#include <string.h>
#include <SPI.h>
#include <Ethernet.h>
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
byte ip[] = { 192, 168, 1, 30 };
byte gateway[] = { 192, 168, 1, 1 };
byte subnet[] = { 255, 255, 255, 0 };
Server server(80);
String readString;
boolean PORTONE = false;
boolean LED2ON = false;
boolean LED3ON = false;
void setup(){
Ethernet.begin(mac, ip, gateway, subnet);
pinMode(2, OUTPUT);
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
Serial.begin(9600);
digitalWrite(2, HIGH);
digitalWrite(8, HIGH);
digitalWrite(7, HIGH);
}
void loop(){
Client 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) {
Serial.print(readString);
//PORTONE CASA//
if(readString.indexOf("L=1") > 0) {
digitalWrite(2, LOW);
delay(500);
digitalWrite(2, HIGH);
PORTONE = true;
}
/* if(readString.indexOf("L=01") > 0) {
//led has to be turned OFF
digitalWrite(2, LOW); // set the LED OFF
LED1ON = false;
}*/
/* if(readString.indexOf("L=2") > 0) {//lets check if LED should be lighted
//led has to be turned ON
digitalWrite(7, HIGH); // set the LED on
LED2ON = true;
}else{
//led has to be turned OFF
digitalWrite(7, LOW); // set the LED OFF
LED2ON = false;
}
if(readString.indexOf("L=3") > 0) {//lets check if LED should be lighted
//led has to be turned ON
digitalWrite(8, HIGH); // set the LED on
LED3ON = true;
}else{
//led has to be turned OFF
digitalWrite(8, LOW); // set the LED OFF
LED3ON = false;
}*/
// INIZIO DICHIARAZIONE PAGINA HTML
client.println("HTTP/1.1 200 OK");
client.println("Content-Type: text/html");
client.println();
client.print("<html><head><title>ARDUINO Controllo via WEB</title><meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1' ></head><body>");
//PORTONE CASA
client.println("<hr />");
client.println("<h1>Portone Casa</h1>");
client.println("
");
//STAMPA STATO OPERAZIONE
client.print("<span>ESEGUITO: </span>");
if (PORTONE) {
client.println("<span style='color:green'>SI</span>");
}
else
{
client.println("<span style='color:grey'>NO</span>");
}
client.print("<h2><a href='/?L=1'>APRI</a>");
client.println("<hr />");
//Secondo led
client.println("<h1>LED2</h1>");
client.println("
");
//printing LED status
client.print("<span>STATO LED: </span>");
if (LED2ON) {
client.println("<span style='color:green'>ON</span>");
}
else
{
client.println("<span style='color:grey'>OFF</span>");
}
client.print("<h2><a href='/?L=2'>ON</a> | <a href='/?L=02'>OFF</a></h2>");
client.println("<hr />");
//terzo led
client.println("<h1>LED3</h1>");
client.println("
");
//printing LED status
client.print("<span>STATO LED: </span>");
if (LED3ON) {
client.println("<span style='color:green'>ON</span>");
}
else
{
client.println("<span style='color:grey'>OFF</span>");
}
client.print("<h2><a href='/?L=3'>ON</a> | <a href='/?L=03'>OFF</a></h2>");
client.println("</body></html>");
//clearing string for next read
readString="";
//stopping client
client.stop();
}
} }
}
}
Ci sto ancora lavorando... SPero che qualcuno mi possa aiutare...Grazie a tutti