ESP8266

Polveri sottili e PM10 con il Novafitness sds018 – parte 2

di Marco Lombardi

sono appena state pubblicate dall’ARPA Lazio le medie giornaliere riferite al 28 gennaio 2018. Il valore rilevato presso la centralina Guido è pari a 33 ug/m3. Il nostro prototipo basato sul sensore Novafitness sds018 si è dimostrato all’altezza della sfida e infatti la nostra media rilevata nell’arco di circa sette ore è la stessa: 33 ug/m3. Il file CSV contenente le nostre rilevazioni è liberamente scaricabile e consultabile A seguire troviamo la schermata del sito ufficiale ARPALAZIO. continua a leggere

Polveri sottili e PM10 con il Novafitness sds018 – parte 1

di Marco Lombardi

Giovedì 25 gennaio ci è stato consegnato il sensore di polveri sottili Novafitness sds018, questo è in grado di rilevare mediante raggio laser il numero di particelle di polveri sottili presenti nell’aria, restituendo il valore pm2.5 e pm10. Quest’ultimo è quello che ci interessa rilevare per il progetto A.S.Co. – Air Self Control.

Il codice utilizzato per le prime prove ci è stato indicato dal venditore stesso ed è scaricabile da GitHub. Il codice è stato poi adattato e integrato nel core di AULAPULITA v0.2a dando così vita al firmware A.S.Co. pm10 v0.3, eseguito su board Wemos D1 ESP8266. continua a leggere

Il riferimento temporale nei progetti di acquisizione dati

di Marco Lombardi

Abbiamo visto, sin dal primo articolo dedicato ad AULAPULITA, l’utilizzo di un orologio hardware fornito di batteria tampone da 3v. Molti di voi, durante questi mesi, mi hanno chiesto qual’è il modo più corretto per gestire in modo automatico il cambio di orario con il passaggio dall’ora legale a quella solare e viceversa senza dover riprogrammare l’orologio hardware collegandolo ad un PC attraverso Arduino.

Occorre fare una premessa: qualsiasi orologio hardware che acquistiamo da utilizzare con Arduino e simili è sprovvisto di orario, questo infatti va impostato e salvato come quando acquistiamo un orologio nuovo. Nei miei progetti ho sempre utilizzato il DS1307 della Maxim, ad oggi il più economico e facilmente reperibile sul mercato. continua a leggere

Progetto “aulapulita” su Wemos D1 ESP8266 – parte 3

di Marco Lombardi

Nel precedente articolo abbiamo visto come è diventato lo schema e la relativa lista dei componenti utilizzati dalla versione 0.2a di AULAPULITA. Adesso vediamo alcune caratteristiche e funzionalità del software.

Da oggi è infatti disponibile il codice sorgente di AULAPULITA 0.2a e due versioni di firmware compilate con limite CO2 impostato a 1000ppm o 1500ppm. Come per la prima versione di aulapulita una volta superata la soglia limite il buzzer emetterà un segnale acustico. La soglia limite può essere impostata caricando via OTA la versione di firmware corrispondente e in futuro direttamente dalla pagina web di configurazione. continua a leggere

Progetto “aulapulita” su Wemos D1 ESP8266 – parte 2

aulapulita-ESP8266_bb

di Marco Lombardi

Dall’ultimo articolo dedicato al progetto AULAPULITA sono passati circa due mesi, in questo intervallo di tempo ho concluso il porting del codice versione 0.1a pubblicato su GitHub ad agosto 2016. Rispetto allo schema presentato a luglio 2017 c’è stata qualche modifica orientata soprattutto a semplificare il codice e minimizzare i componenti.

Sopra lo schema elaborato in Fritzing senza il bit expander che proponevo, senza i led per segnalare eventuali guasti ai sensori e con il K30 collegato in modalità UART anzichè in modalità I2C. continua a leggere

Progetto “aulapulita” su Wemos D1 ESP8266 – parte 1

di Marco Lombardi

Dopo una lunga pausa dovuta a esami e lavoro torno a parlare del progetto AULAPULITA.

Negli ultimi articoli, dedicati alla Wemos D1, proponevo il porting di tutto il codice AULAPULITA “standalone” e “connected” su questa scheda e sono giunto al punto in cui posso presentare qualche considerazione.

La lista dei componenti va leggermente cambiata, vediamo come:

  • Wemos D1 o scheda basata su ESP8266 anzichè Arduino UNO;
  • modulo microSD, per salvare i dati acquisiti su file in formato CSV; (vedi nota a fondo pagina)
  • modulo LCD 16×2 I2C, per visualizzare in tempo reale i dati acquisiti e gli eventuali guasti;
  • sensore CO2 K30 Senseair;
  • sensore SHT30 I2C anzichè DHT22, per il monitoraggio di temperatura e umidità relativa;
  • buzzer o cicalino, per l’allarme acustico di superamento soglia, collegato al pin digitale D10 (gpio15) o al pin digitale D8 (gpio0); (vedi nota a fondo pagina)
  • alimentatore 9-12v;
  • cavetti e breadboard per i collegamenti.

diventano opzionali:

  • modulo RTC PCF8563 I2C, per avere un riferimento temporale sui dati acquisiti (in alternativa possiamo usare il servizio NTP via internet);
  • 2x led, per segnalare eventuali guasti ai sensori;
  • 1x dip switch 2 canali, per impostare la soglia di allarme CO2.

N.B.: per l’utilizzo dei 2 led insieme ad un 1 dip switch due canali abbiamo bisogno di un 8bit expander collegato via I2C (tipo PCF8574) poichè i due pin digitali rimanenti, D2 (gpio16) e D9 (gpio2), sul ESP8266 basterebbero solo per 2 led o in alternativa per 1 dip switch due canali e quindi non sufficiente per tutte le periferiche (ne servirebbero almeno quattro). Utilizzando invece un bit expander rimarrebbero vuoti i due pin digitali, utililizzabili ad esempio per interfacciare altre perifierche come un sensore ottico Sharp GP2Y1010AU0F in grado di rilevare alcune polveri sottili. continua a leggere

Wemos D1 ESP8266 – programmazione OTA ovvero senza fili

FF79SR8IYYTNHRZ

di Marco Lombardi

Nel precedente articolo abbiamo visto come utilizzare l’IDE per programmare la scheda Wemos D1 e come varia il pinout rispetto alla scheda UNO di Arduino.

E adesso parliamo di OTA: vi starete chiedendo cosa vuol dire, iniziamo dicendo che è l’acronimo di Over-The-Air, in altre parole è il metodo che permette di aggiornare un dispositivo ricevendo wireless il software o lo sketch se parliamo di Arduino.

Quante volte abbiamo sentito la necessità di aggiornare uno sketch ma la nostra board Arduino è fisicamente irraggiungibile? Penso ad un progetto come aulapulita, sigillato nel suo contenitore in un’aula di scuola ma connesso in rete, o per esempio una centralina di rilevamento connessa in rete posta e all’esterno magari su di un palo. continua a leggere

Wemos D1 ESP8266 – primi passi per una facile migrazione

screen_impostazioni

di Marco Lombardi

Nel precedente articolo abbiamo visto una scheda con lo stesso layout della UNO: la Wemos D1 “R1”.

Per utilizzarla con l’IDE di Arduino non dobbiamo fare altro che aggiungere il supporto alla board attraverso il menu “File->Impostazioni” inserendo nel campo “URL aggiuntive per Gestore schede:” il seguente indirizzo:

http://arduino.esp8266.com/stable/package_esp8266com_index.json

Una volta cliccato su “Ok” sarranno scaricate tutte le librerie necessarie e al successivo riavvio della IDE sotto il menu “Strumenti” alla voce “Scheda:” avrete la possibilità di selezionare la board Wemos D1 “R1” con chip ESP8266. continua a leggere

Wemos D1 ESP8266 vs Arduino UNO

u4354_2

di Marco Lombardi

Era da tempo che volevo provare un modulo WiFi basato sul chip ESP8266 e la scelta è ricaduta su una shield economica (con scarsa documentazione disponibile) che ospita a bordo il modello ESP-12F.

Per fortuna in rete è disponibile un’ampia documentazione e librerie in costante aggiornamento ma far funzionare la shield è stata un’impresa…causa un errore di progettazione della stessa sono stato costretto ad una modifica hardware. Rimane comunque una buona scelta visto il costo e la presenza di un regolatore di tensione che evita di usare un’alimentazione separata (il chip ESP8266 lavora a 3.3V contro i canonici 5V della quasi totalità dell’elettronica che spesso utilizziamo con Arduino e simili). L’unico vero difetto è la velocità di comunicazione con la board di Arduino che avviene in modalità seriale virtuale, troppo limitata per gestire grandi quantità di dati e connessioni multiple. continua a leggere