Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*DICHIARAZIONE GENERALI*/
- #include "Wire.h"
- #define uS_TO_S_FACTOR 1000000
- #define TIME_TO_SLEEP 60
- RTC_DATA_ATTR int bootCount = 0;
- /**/
- /*DICHIARAZIONE SENSORI*/
- #include "Seeed_BME280.h"
- BME280 bme280;
- #include "Adafruit_VEML6070.h"
- Adafruit_VEML6070 uv = Adafruit_VEML6070();
- #include "Adafruit_CCS811.h"
- Adafruit_CCS811 ccs;
- #define sound 35
- float lati = 41.9702;
- float longi = 12.532;
- /**/
- /*DICHIARAZIONE CONNESSIONI*/
- #include "WiFi.h"
- const char* ssid = "MASTER24";
- const char* password = "Gas2018.LeonD";
- const char* host = "192.168.1.77";
- /**/
- void setup() {
- Serial.begin(115200);
- /*CONNESSIONE AL WIFI*/
- Serial.print("Connessione in corso al wifi: ");
- Serial.println(ssid);
- WiFi.begin(ssid, password);
- while (WiFi.status() != WL_CONNECTED) {
- delay(500);
- Serial.print(".");
- }
- Serial.println("");
- Serial.println("Connessione riuscita");
- /**/
- /*INIZIALIZZAZIONE SENSORI*/
- uv.begin(VEML6070_1_T);
- pinMode(32, OUTPUT);
- digitalWrite(32, LOW);
- if (!ccs.begin()) {
- Serial.println("Errore inizializzazione CCS811 controlla cablaggio o esegui debug");
- while (1);
- }
- while (!ccs.available());
- pinMode(35, INPUT);
- if (!bme280.init()) {
- Serial.println("Errore inizializzazione BME280 controlla cablaggio o esegui debug");
- }
- /**/
- /*INIZIALIZZAZIONE DEEP-SLEEP E OROLOGIO*/
- ++bootCount;
- esp_sleep_enable_timer_wakeup(TIME_TO_SLEEP * uS_TO_S_FACTOR);
- /**/
- }
- void loop() {
- float temperatura = bme280.getTemperature();
- float pressione = bme280.getPressure();
- float altitudine = bme280.calcAltitude(pressione);
- float umidita = bme280.getHumidity();
- float valuv = uv.readUV();
- float co2;
- float tvoc;
- if (ccs.available()) {
- if (!ccs.readData()) {
- co2 = ccs.geteCO2();
- tvoc = ccs.getTVOC();
- }
- }
- float suono = analogRead(sound);
- Serial.print("Temperatura in °C: ");
- Serial.println(temperatura);
- Serial.print("Pressione in Pascal: ");
- Serial.println(pressione);
- Serial.print("Umidità in %: ");
- Serial.println(umidita);
- Serial.print("Altitudine stimata in m: ");
- Serial.println(altitudine);
- Serial.print("Radiazione ultravioletta: ");
- Serial.println(valuv);
- Serial.print("CO2 presente nell'aria in ppm: ");
- Serial.println(co2);
- Serial.print("Polveri sottili nel'aria in ppm: ");
- Serial.println(tvoc);
- Serial.print("Inquinamento acustico in dB: ");
- Serial.println(suono);
- Serial.print("Latitudine dispositivo: ");
- Serial.println(lati);
- Serial.print("Longitudine dispositivo: ");
- Serial.println(longi);
- Serial.println("");
- Serial.println("");
- /**/
- /*INVIO DATI AL DATABASE*/
- Serial.print("Connessione al database: ");
- Serial.println(host);
- WiFiClient client;
- const int httpPort = 80;
- if (!client.connect(host, httpPort)) {
- Serial.println("Connessione fallita");
- return;
- }
- String url = "/website2/insert_final.php?";
- url += "mac="; url += WiFi.macAddress();
- url += "&temperatura="; url += temperatura;
- url += "&pressione="; url += pressione;
- url += "&altitudine="; url += altitudine;
- url += "&umidita="; url += umidita;
- url += "&uvval="; url += valuv;
- url += "&co2="; url += co2;
- url += "&tvoc="; url += tvoc;
- url += "&suono="; url += suono;
- url += "&lat="; url += lati;
- url += "&log="; url += longi;
- Serial.print("Invio richiesta: ");
- Serial.println(url);
- client.print(String("GET ") + url + " HTTP/1.1\r\n" + "Host: " + host + "\r\n" + "Connection: close\r\n\r\n");
- unsigned long timeout = millis();
- while (client.available() == 0) {
- if (millis() - timeout > 5000) {
- Serial.println(">>> Client Timeout !");
- client.stop();
- return;
- }
- }
- while (client.available()) {
- String line = client.readStringUntil('\r');
- Serial.print(line);
- }
- Serial.println(" e connessione chiusa");
- /**/
- esp_deep_sleep_start();
- }
Add Comment
Please, Sign In to add comment