Let’s get started: Arduino IDE e NodeMCU esp8266 Lua parte 3

26 giugno 2017 / iotfromzerotohero


Il nostro progetto aveva come scopo la pubblicazione su un sito dei valori della temperatura e dell’umidità nella stanza dove il sensore era piazzato mediante arduino e esp8266. Materiale: 3 male to female jumpers, 1 sensore di umidità e temperatura, una mezza breadboard e il fantastico esp8266.




Questo è il codice che abbiamo scritto per farlo funzionare.

#include
#include
#include
ESP8266WebServer server(80);
int pinDHT11 = D0;
SimpleDHT11 dht11;
char ssid[] = “Arduino”;
char pass[] = “12345678”;
int led = 16;
byte temperature = 0;
byte humidity = 0;
byte data[40] = {0};
void setup() {
pinMode(led, OUTPUT);
WiFi.begin(ssid, pass);
Serial.begin(115200);
while (WiFi.status() != WL_CONNECTED) {
Serial.print(“.”);
delay(500);
}
Serial.println();
Serial.print(“IP Address: “);
Serial.println(WiFi.localIP());

server.on(“/”, []() {
server.send(200, “text/plain”, “Hello world”);
});
server.on(“/temp”, []() {
server.send(200, “text/plain”, “Temperature: ” + String(temperature) + “*C\nHumidity: ” + String(humidity) + “%”);
});
server.on(“/toggle”, toggleLED);
server.begin();

}

void loop() {
server.handleClient();
Serial.println(“=================================”);

if (dht11.read(pinDHT11, &temperature, &humidity, data)) {
Serial.print(“Read DHT11 failed”);
return;
}
for (int i = 0; i < 40; i++) {
Serial.print((int)data[i]);
if (i > 0 && ((i + 1) % 4) == 0) {
Serial.print(‘ ‘);
}
}
Serial.println(“”);

Serial.print(“Sample OK: “);
Serial.print((int)temperature); Serial.print(” *C, “);
Serial.print((int)humidity); Serial.println(” %”);

// DHT11 campionatura dei valori è impostata a 1HZ.
delay(1000);

}

void toggleLED() {
digitalWrite(led, !digitalRead(led));
server.send(204, “”);
}

Sul monitor seriale comparirà un link alla pagina con la temperatura e l’umidità



Top