Ethical DIY

Progetti hardware & software etici


Menu orizzontale con sottomenu CSS








 



Progetti hardware

Basetta sperimentale per ESP01

Dati costruttivi della basetta sperimentale

Download dei file necessari per la realizzazione della basetta sperimentale

Configurazione di ESP01


Informazioni di base:

- Come installare la IDE di Arduino
- Configurazione e piedinatura 
- Caricamento dei programmi
- Come caricare le librerie necessarie




Programmi vari

Creare un Web server

Temperatura e umidità con
DHT11/DHT/21/DHT22


Controllo di 1/2 relè via WiFi

DHT11/DHT21/DHT22 + 1 relè

Una stazione meteorologica con BMP280

Ricevere la data e l'ora esatta

Una stazione meteorologica con OpenWeatherMap

Monitorare la qualità dell'aria con BMP680



Programmi con Telegram

Verifica l'apertura di uno/due vani

Controllo di due relè



Programmi con ThingSpeak




 
Programmi con in Db Firebase




Programmi con Mosquitto (MQTT)









ESP01: una stazione meteorologica con BMP280


Il "piccolo" sensore BMP280 (della stessa categoria ce ne sono altri, BMP388, BMP390, BMP680 che sono simili ma forniscono maggiori informazioni), è un sensore che si connette al protocollo I2C, quindi anche con il piccolo ESP01 può essere abbinato ad altri moduli che usino lo stesso protocollo e abbiano un indirizzo interno diverso, non ultimo un display OLED, per leggere direttamente le informazioni fornite.
In particolare, BMP280 registra la temperatura, la pressione atmosferica e fa un calcolo (approssimativo) dell'altezza sul livello del mare.
Troverai qui tre programmi sulla stessa base, spero siano interssanti!


bmp280
BMP280




Il primo progetto


pcbbmp


Ecco l'immagine di come inserire il modulo sulla  basetta sperimentale.

La posizione del sensore BMP280 è stata evidenziata inserendo il sensore in un rettangolo rosso.





In questa foto invece appare la reale disposizione del componente sulla basetta sperimentale.

Mettere molta cura nell'inserimento corretto sullo zoccolo I2C2.

bmppcb



I dettagli dello sketch.
Il primo progetto che presentiamo, avvia un web server e mostra su di un qualsiasi browser di un PC, smartphone o tablet, la temperatura, la pressione e l'altezza approssimativa (slm) della propria località.

Come prima cosa, è necessario verificare se si sono installate tutte le librerie necessarie. Verificando o lanciando la compilazione del programma, verranno visualizzate quelle eventualmente mancanti. In questo caso, provare prima di tutto a scaricarle attraverso la Ide di Arduino. Nel caso non si trovassero tutte, scaricarle dalla finestra che appare sulla destra.
Nel caso di dubbio, controllare la pagina relativa alla gestione delle librerie

Adafruit_BusIO.h
Adafruit_sensor.h
Adafruit_BMP280.h



L'altitudine è un parametro calcolato in base alla pressione atmosferica attuale presente a livello del mare, che varia costantemente. Spesso è necessario variare questo paramentro, affinchè l'altitudine mostrata sia compatibile con quella del luogo in cui si è.
altitude



Di seguito, inserire la SSID (il nome esatto) della propria rete WiFi e la password di rete.
passw



Non essendoci nulla di particolare, si può caricare il programma. Disinserire e dopo qualche secondo  reinserire il programmatore sulla porta USB del computer. Aprire il monitor seriale e prendersi nota dell'indirizzo IP assunto dal ESP01 sulla rete.
bmpip



Inserire ESP01programmato sulla basetta e inserire il modulo BMP280 sul connettore I2C2 facendo attenzione alla polarità. Alimentare la basetta e dopo qualche secondo, dopo che il modulo si sarà collegato alla rete WiFi, aprire il browser inserendo il codice IP di cui si è preso nota.

E finalmente si aprirà la finestra con le informazioni, che verranno aggiornate con una certa frequenza.

Nel caso il sistema venga alimentato a batteria, inserire un ritardo nell'aggiornamento, in modo da consumare meno corrente.

Clicca qui per visualizzare il programma

Clicca qui per scaricarlo in formato ".zip"


ws



Il secondo progetto




Questo secondo progetto è praticamente identico al precedente. L'unica piccola - ma simpatica - variazione è l'inserimento di tre iconcine relative alla temperatura, la pressione e l'altitudine calcolata.

Tutte le informazioni date per il primo programma sono valide anche per questo, quindi la loro duplicazione sarebbero del tutto inutili.

Ecco quindi l'immagine del secondo programma:



Clicca qui per visualizzare il programma

Clicca qui per scaricarlo in formato ".zip"

bmp_ic






Il terzo progetto




Questo terzo programma è ancora un'evoluzione dei precedenti: infatti ho inserito nel progetto una routine per gestire un display OLED SSD1306 128x64 dot, che mostra i dati di temperatura, pressione e altezza approssimativa direttamente sullo schermo.
In questo modo è possibile fruire delle informazioni anche in locale e in modo immediato, senza dover aprire un browser.

disp
Il display OLED

Ed ecco l'immagine di come i due componenti devono essere inseriti sulla basetta sperimentale.

Il sensore BMP280, come anche per gli altri progetti, si colloca sullo zoccolo I2C2, mentre il display OLED viene inserito si I2C3


d3

dati
Per poter gestire il display OLED, sono necessarie due ulteriori librerie:
Adafruit_GFX.h
Adafruit_SSD1306.h


Naturalmente i dati possono sempre essere visualizzati anche sul proprio browser.

Clicca qui per visualizzare il programma

Clicca qui per scaricarlo in formato ".zip"


Ho trovato il video di questo progetto al seguente link(esterno a etichaldiy):
https://www.youtube.com/watch?v=w7q7StBe2YE




Per contatti: info@ethicaldiy.org