Datalogger con Wemos/Arduino

L’idea originale è quella di realizzare un datalogger, capace di monitorare alcuni sensori e storicizzare su scheda SD i valori acquisiti.

Se il sistema non è connesso alla Rete internet necessariamente dovevo installare un modulo RTC per avere ora/data campionamento misura; l’idea non mi piaceva, perché a batteria scarica si perdevano le informazioni temporali.

Quindi la scelta è caduta sull’uso di un modulo WIFI (connesso alla rete), in modo da utilizzare l’ora reperita in rete; una volta risolto il problema della gestione dell’ora/data, dovevo gestire il cambio legato all’ora legale, cosa abbastanza semplice dopo avere selezionato le giuste librerie.

Perché a questo punto non interfacciarlo con un bot Telegram, a cui chiedere le informazioni? Altrimenti il dato viene letto via seriale se collegato al PC, alternativa interrompere l’acquisizione e leggere la SD.

Il datalogger è stato interfacciato ad un bot Telegram e tanto per complicarsi la vita volevo avere gli ultimi 10 dati acquisiti! ringrazio l’ex presidente Carrai per avermi suggerito l’uso di un circular buffer (che io ne ignoravo profondamente l’esistenza!).

L’ultimo problema (risolto Martedì scorso con l’aiuto del Gulli) era il volerlo resettare da remoto.

Hardware usato:

– Wemos D1

– SD Shield

– DHT11 sensore temperatura/umidità

Librerie utilizzate:

  • ESP8266WiFi.h
  • WiFiClientSecure.h
  • UniversalTelegramBot.h
  • ArduinoJson.h
  • DHTesp.h
  • CircularBuffer.h
  • SPI.h
  • SD.h
  • Timezone.h
  • WiFiUdp.h
  • NTPClient.h

Suggerimenti-miglioramenti:

  • mettere su grafico i dati acquisiti
  • pagina web dei dati acquisiti
  • LCD locale