Ethical DIY

Progetti hardware & software etici


Menu orizzontale con sottomenu CSS






 




Pagina principale per Raspberry



Informazioni di base




La basetta sperimentale (BDS)


Applicazioni



Librerie e programmi
  • La gestione delle librerie

  • Programmi applicativi
    • Protocollo_I2C
    • I2C_BME280
    • I2C_BME680
    • I2C_ Display_LCD_1602
    • I2C_Display_SSD1306
    • I2C_SGP30-SGP40
    • SPI_RFID_RC522
    • One-wire_18B20
    • DHT11/DHT22
    • Motore_elettrico
    • Servomotore
    • Motore a passo
    • Encoder_Joystick
    • Pulsanti/piccoli_sensori
    • Led
    • Telecamera_OpenCV
    • Gestione_immagini
    • Ingressi_Analogici
    • Display: LCD1602
    • Display: SSD1306 Oled
    • Display: ST7735
    • Ingressi analogici
    • Programmi vari














 








 
















Raspberry PI 3/4/5
Programmi per SGP30 - SGP40




Il sensore SGP30 (che segue il protocollo I2C), serve per valutare la qualità dell'aria, di cui monitorizza ben quattro parametri:
- CO2 (concentrazione di anidride carbonica in ppm);
- TVOC (Componenti Organici Volatili Totali), relativo alla contaminazione chimica dell'aria;
- H2 (concentrazione di idrogeno nell'aria);
- Etanolo (concentrazione di etanolo o alcol etilico).
Con alcuni semplici programmi è possibile monitorare (ed eventiualmente purificare) la qualità del'aria.

 s2   s1







Come collegare il modulo alla BDS
t6
Il modulo SGP30  segue il protocollo I2C2 si colloca sul connettore I2C3.







La creazione dell'ambiente virtuale el'installazione delle librerie necessarie.

Ipotizziamo che sul desktop del proprio Raspberry si crei una cartella "Projects" e all'interno una sottocartella "ssd30" in cui creeremo l'ambiente virtuale (che chiameremo "sgp"), le librerie necessarie e i programmi.
Nota: naturalmente i nomi dati alle sottocartelle possono essere variati a piacere. Postulando che si siano create le cartelle indicate, si può iniziare con la programmazione.
Aprire un terminale (la quarta icona in alto a destra) term e digitare quanto segue:
cd Desktop/Projects/sgp30  per spostarsi nella cartella "sgp30;
python3 -m venv sgp             per creare l'ambiente virtuale "sgp";
source  sgp/bin/activate        per attivare l'ambiente virtuale: apparirà (sgp) all'inizio della nuova riga;

s1
Si attiva l'ambiente virtuale
s2
Installazione della libreria necessaria per il sensore sgp30:
s3
Effettuati questi passi, si possono lanciare i primi due programmi.

Mentre, per il terzo programma, è necessario installare anche la libreria "flask", con il comando:
"pip3 install flask":
s4

E infine, per il quarto programma, è necessario installare anche la libreria RPi.BME280, digitando il comando
"pip3 install RPi.BME280":
rpi

Nota: per disattivare un ambiente virtuale, è sufficiente  scivere il comando "deactivate".








Ulteriori programmi con il sensore SGP30

Si possono trovare ulteriori programmi con SGP30 in questa pagina

Si possono trovare programmi per SGP30 e Thingspeak a questa pagina





Il primo programma: visualizzazione dei dati sul terminale

Il primo programma, "sgp30_1.py", mostra semplicemente i dati registrati sul terminale del Raspberry, con un aggiornamento ogni due secondi. Naturalmente si può aumentare a piacere l'intervallo tra una lettura e la successiva.

Nota: il sensore, per dare informazioni corrette, deve raggiungere la giusta temperatura, ed è necessario da alcuni secondi ad alcuni minuti. Nel periodo di riscaldamento, "eCO2" segna "400 ppm" e "TVOC" ha valore "0 ppb".

s6
s7

Clicca qui per scaricare il file in formato ".zip"
Clicca qui per visualizzare il file.

Dopo aver scaricato il programma nella cartella selezionata (nel nostro caso, /Desktop/Projects/dht11), scompattare il programma sgp30_1.py e lanciarlo con il seguente comando: "python sgp30_1.py"

Controllare di aver attivato l'ambiente virtuale e scaricato le librerie necessarie.










Il secondo programma: visualizzazione dei dati sul terminale e salvataggio dei dati



s8


Il primo programma, "sgp30_data.py", è simile al precedente, ma oltre a mostrare i dati sul terminale, li salva anche su di un file, "sensor_readings_sgp30.txt

Clicca qui per scaricare il file in formato ".zip"
Clicca qui per visualizzare il file.

Dopo aver scaricato il programma nella cartella selezionata (nel nostro caso, /Desktop/Projects/dht11), scompattare il programma sgp30_data.py e lanciarlo con il seguente comando: "python sgp30_data.py"

Controllare di aver attivato l'ambiente virtuale e scaricato le librerie necessarie.









Il terzo programma: la visualizzazione dei dati sul proprio browser

Il terzo programma mostra i dati su l proprio browser. Naturalmente è necessario che il Raspberry e il proprio computer siano sulla stessa rete interna, sia wi-fi che con un cavo di rete.
Dopo aver lanciato il prgramma, appaiono sul terminale una serie di dati, necessari perm visualizzare i dati sul terminale. In questo caso: http://192.168.1.69:5000 da inserire nel browser.

s9


s10
Nota: i dati sul browser non si aggiornano automaticamente, perciò per ottenerlo, è necessario cliccare sul cerchiolino (quadratino rosso) 

Clicca qui per scaricare il file in formato ".zip"
Clicca qui per visualizzare il file.

Dopo aver scaricato il programma nella cartella selezionata (nel nostro caso, /Desktop/Projects/dht11), scompattare il programma sgp30_webs.py e lanciarlo con il seguente comando: "python sgp30_webs.py"

Controllare di aver attivato l'ambiente virtuale e scaricato le librerie necessarie.









Il quarto programma: SGP30 + BME280 sul browser

brw


Il quarto programma presentato in questa sessione è un perfezionamento di quello precedente: oltr a visualizzare sul browser le informazioni sulla qualità dell'aria, registrate dal sensore SGP30, verranno visualizzate anche le condizioni meteorologiche, infatti BME280 rileva:
-  la temperatura,
- l'umidità dell'aria,
- la pressione atmosferica.
Si ottiene così una monitorizzazione completa dei parametri relativi all'aria e alle condizioni del tempo.

Nota: i dati sul browser non si aggiornano automaticamente, perciò per ottenerlo, è necessario cliccare sul cerchiolino (quadratino rosso, vedi foto del programma precedente)

s1                 
SGP30               

  280
BME280


Clicca qui per scaricare il file in formato ".zip"
Clicca qui per visualizzare il file.

Dopo aver scaricato il programma nella cartella selezionata (nel nostro caso, /Desktop/Projects/dht11), scompattare il programma 30_280_webs.py e lanciarlo con il seguente comando: "python
30_280__webs.py"

Controllare di aver attivato l'ambiente virtuale e scaricato le librerie necessarie.


s9
Per visualizzare i dati sul proprio browser,
digitare l'indirizzo nel riquadro verde








Per contatti: etdiy@centroanahata.it