Skip to content

About

Versione di PneumosOS con i dati di Milano (Arpa Lombardia) e revisione della grammatica più aderente a EAQI

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

PneumOS Milano

PneumOS Milano e una versione aggiornata del sistema PneumOS, sviluppata a partire dalla precedente opera/software disponibile qui:

https://github.com/stefanocolarelli/PNEUMOS_SW

Questa versione raccoglie il codice Python per l'acquisizione dei dati di qualita dell'aria su Milano, la patch Pure Data aggiornata e i file 3D per le parti fisiche dell'installazione.

Cosa cambia rispetto alla versione precedente

  • corretti e aggiornati alcuni aspetti della patch Pure Data, in particolare in pureData/audio_patch.pd;
  • creati nuovi script Python per Milano, con soglie e logica piu aderenti al meccanismo eAQI;
  • mantenuta la comunicazione verso Pure Data via OSC;
  • mantenuta la comunicazione seriale verso le schede Arduino/STM32 usate dall'opera;
  • aggiunti file 3D per casse, corpo, supporti e parti di fissaggio;
  • aggiunta documentazione di cablaggio per attuatore e circle LED.

Struttura del repository

pureData/
  audio_patch.pd
  myosc.pd
  noise_reson.pd

python/
  getApiM.py
  diagnosticM.py

files3D/
  casse/
  corpo/

cablaggio_cavo_attuatore.jpeg
cablaggio_cavo_led.jpeg
casse.jpeg

Dati e qualita dell'aria

Il sistema usa dati reali di qualita dell'aria da ARPA Lombardia / Open Data Lombardia. La versione Milano considera:

  • PM2.5
  • PM10
  • NO2
  • SO2
  • CO
  • O3
  • Benzene

Nel codice Python questi parametri vengono normalizzati e confrontati con soglie ispirate al meccanismo eAQI. L'indice eAQI vero e proprio riguarda PM2.5, PM10, NO2, O3 e SO2; CO e Benzene non entrano nell'eAQI europeo, ma restano parte dello spazio sonoro dell'opera.

Pure Data

La patch principale e:

pureData/audio_patch.pd

La patch riceve messaggi OSC dal codice Python, in particolare:

  • valori di distanza/spazio vettoriale per la generazione sonora;
  • valore di respiro/stato dell'aria;
  • parametri che influenzano densita, grana e comportamento della sonorita.

Python

I due file Python principali sono:

python/getApiM.py
python/diagnosticM.py

getApiM.py e il file operativo principale. In linea con getApi.py presente nell'opera originaria Ravenna/Osaka, acquisisce open data di qualita dell'aria e li traduce in valori per Pure Data e per le schede collegate via seriale. In questa versione la sorgente dati e Milano, tramite ARPA Lombardia / Open Data Lombardia, anziche Ravenna.

diagnosticM.py e l'ambiente di test e diagnostica. Da bash chiede un input interattivo:

  • numeri da 0 a 5: simulano uno stato dell'aria, equivalente agli stati eAQI da 1 a 6;
  • lettera D: cattura i dati reali e si comporta come getApiM.py.

In questo modo e possibile provare Pure Data, seriale e comportamento fisico dell'opera anche senza aspettare che i dati reali cambino.

Dipendenze principali:

pip3 install -r requirements.txt

Avvio:

python3 python/getApiM.py

Avvio diagnostica:

python3 python/diagnosticM.py

Cablaggio

L'attuatore Ultramotion e il circle LED da 12 LED sono guidati da due schede Arduino Uno R3.

Gli sketch Arduino sono disponibili qui:

https://github.com/stefanocolarelli/pneumos-attuatore/tree/main/arduino

Attuatore Ultramotion

  • cavo PWM attuatore collegato a D9 di Arduino;
  • cavo ground attuatore collegato a GND di Arduino;
  • nell'opera: cavo PWM grigio, cavo ground giallo.

Cablaggio attuatore

Circle LED

  • data pin del circle LED collegato a D7 di Arduino;
  • alimentazione collegata a 5V di Arduino;
  • ground collegato a un GND di Arduino;
  • nell'opera: cavo data rosso-verde, cavo alimentazione rosso, cavo ground bianco.

Cablaggio circle LED

File 3D: casse

La cartella:

files3D/casse/

contiene le parti stampabili per integrare le casse Mars Gaming MS1:

https://www.amazon.it/Mars-MS1-Gaming-Altoparlanti-alimentazione/dp/B00KDA4HYW/

File inclusi:

  • stampa-principale-copricasse.stl
  • coperchietti-speaker.stl
  • copertura fori dei cavi delle casse.stl

Casse

File 3D: corpo

La cartella:

files3D/corpo/

contiene i file per il corpo fisico dell'opera:

  • appoggio principale della sacca;
  • ciambella di separazione tra sacca e cono;
  • blocco per l'attuatore;
  • tappi e parti di fissaggio;
  • prototipo del cono.

File inclusi:

  • emisfera principale.stl
  • ciambella.stl
  • blocco attuatore.stl
  • prototipo cono/cono.3mf

Licenze

Il codice software e distribuito con licenza EUPL-1.2.

Documentazione, immagini e file 3D sono distribuiti con licenza CC BY-SA 4.0, salvo diversa indicazione.

About

Versione di PneumosOS con i dati di Milano (Arpa Lombardia) e revisione della grammatica più aderente a EAQI

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages