Étape 4: Code et explication de l’application web et nuage
Le code que les interfaces du capteur d’Intel Edison et le nuage (qui est pour l’instant émuler par un autre PC) est :
#include
#include
Char [] ssid = "LUISS_ENLABS" ; votre réseau SSID (nom)
passe de char [] = "luissenlabs" ; votre mot de passe réseau
température du flotteur ;
humidité du flotteur ;
flotteur de gaz ;
int feu ;
int B = 3975 ;
int temp ; String strURL = "" ;
État int = WL_IDLE_STATUS ;
IPAddress server(172,16,37,156) ;
Initialiser le client WiFiClient bibliothèque de client ;
void setup() {Serial.begin(9600) ; Serial.println ("tentative de connexion au réseau WPA...") ; Serial.Print ("SSID:") ; Serial.println(SSID) ;
statut = WiFi.begin (ssid, pass) ; Si (status! = WL_CONNECTED) {Serial.println ("ne pouvait pas obtenir une connexion wifi"); / / ne font rien d’autre : while (true);}}
void loop() {}
Serial.println ("Entro nel looop") ;
UpdateTemp() ;
Serial.println ("Esco da UpdateTemp") ;
while(client.available()) {char c = client.read() ; Serial.Print(c) ; }
Si (! client.connected()) {Serial.println() ; Serial.println("Disconnesso.") ;
client.Stop() ; } //esegui la richiesta ogni 10 secondi
Delay(1000) ; }
void UpdateTemp() {}
Serial.println("connessione...") ;
alors que {(client.connect (serveur, 80))
Serial.println ("Connesso e sono while in") ;
température = getTempValue() ;
Serial.Print ("\nTemp:--->") ;
Serial.println(temperature) ;
humidité = getHumidityValue() ;
Serial.Print ("Hum:--->") ;
Serial.println(Humidity) ;
gaz = getGasValue() ;
Serial.Print ("gaz:--->") ;
Serial.println(Gas) ;
feu = getFireValue() ;
Serial.Print ("Fire:--->") ;
Serial.println(Fire) ;
Serial.Print ("String:--->") ; Creo l'url utilizzando una stringa
strURL = getURLString() ;
Serial.println(strURL) ; invio la richiesta al serveur
client.println(strURL) ;
client.println ("Host : 172.16.37.156") ;
S erial.println ("Host : localhost");
client.println ("Connection : close") ;
client.println() ;
client.Stop() ;
Serial.println("Stop") ;
Delay(2500) ; }
Si (client.connect (serveur, 80)) {Serial.println ("Errore Connessione");}}
flotteur getTempValue() {}
f loat temp = analogRead(A0) ;
flotteur de résistance = (1023-temp) * 10000/temp ; obtenir la résistance de la sonde ;
flotteur de température = 1 / (Journal (résistance/10000) /B+1/298.15)-273.15;//convert à la température via la feuille de données ; Retour à la température ; }
flotteur getHumidityValue() {float humidité = analogRead(A1) ; return humidité;}
flotteur getGasValue() {gaz = analogRead(A3) ; gaz = gaz/1024 * 5.0 ; gaz retour;}
int getFireValue() {feu = digitalRead(4) ; return! feu;}
String getURLString() {}
strURL = "GET mypet/index.php?temperatura=" ;
strURL += (int) température ;
strURL += "& gaz =" ;
strURL += (int) gaz ; strURL += "& umidita =" ;
strURL += (int) humidité ; strURL += "& fuoco =" ;
strURL += (int) feu ; retour strURL ; }
Copiez le code suivant lire la valeur de tous les capteurs sur le plateau, puis ils ont envoyer dans le cloud (nuage = 172.16.37.156).
En outre, les données de capteurs dans le nuage sont lisibles dans une application web et nous envoyer la valeur des capteurs en Intel tableau de bord Analytique.