9 - 11 febbraio 2011, Trento XII Meeting degli utenti italiani GRASS e FOSS4G Geoservizi web OGC per il monitoraggio ambientale L'esempio dei dati ARPA della città di Milano per l'analisi della qualità dell'aria Maria Antonia Brovelli, Andrea Marelli, Marco Negretti Politecnico di Milano http://geomatica.como.polimi.it Introduzione 2 Obiettivi: ✔ analizzare le nuove possibilità offerte dalle tecnologie internet nella gestione di dati geografici e di sensori georeferenziati ✔ implementare su un caso di studio reale l'utilizzo di geoservizi definiti seguendo gli standard OGC ✔ Caso di studio: ➢ dati raccolti dall'Agenzia Regionale per la Protezione dell'Ambiente della Lombardia (ARPA), nell'ambito del monitoraggio della qualità dell'aria 3 Servizi Geografici Open Geospatial Consortium Organizzazione internazionale non-profit di oltre 400 membri, che si occupa di favorire lo sviluppo e l'implementazione di standard per la gestione di dati e servizi geo-spaziali: ✔ Web Map Service (WMS) ✔ Web Feature Service (WFS) ✔ Web Coverage Service (WCS) ✔ Sensor Web Enablement (SWE) ✔ Web Processing Service (WPS) ✔ ... http://www.opengeospatial.org/ Sensor Web Enablement 4 Fornisce tutti gli strumenti necessari per sfruttare le capacità e le potenzialità di una rete di sensori (Sensor Web): ✔ Observation & Measurements Schema (O&M) ✔ Sensor Model Language (SensorML) ✔ Sensor Observation Service (SOS) Sensor Observation Service (SOS) 5 Standard per la pubblicazione e l'accesso a informazioni e misurazioni effettuate da sensori ✔ Il Core Profile implementa: ➢ GetCapabilities, fornisce la descrizione delle specifiche del servizio ➢ DescribeSensor, fornisce informazioni dettagliate per ogni sensore ➢ GetObservation, permette di interrogare i sensori ed ottenere i dati delle misurazioni ✔ Il Transactional Profile implementa: ➢ registerSensor, permette di registrare un nuovo sensore all'interno di un servizio SOS ➢ insertObservation, permette di inserire una nuova osservazione http://www.opengeospatial.org/standards/sos Web Processing Service (WPS) 6 Standard per condividere l'accesso a funzioni, calcoli e modelli computazionali che operano su dati georeferenziati ✔ Il servizio prevede le richieste di: ➢ GetCapabilities, fornisce la descrizione dei processi offerti dal servizio WPS ➢ DescribeProcess, fornisce informazioni relativamente ad ogni processo (input, output, formati supportati, ...) ➢ Execute, invoca l'esecuzione di uno specifico processo http://www.opengeospatial.org/standards/wps Tecnologie utilizzate ✔ Servizi Geografici ➢ istSOS • http://istgeo.ist.supsi.ch/site/projects/istsos ➢ pyWPS • http://pywps.wald.intevation.org/ ➢ PostgreSQL + PostGIS • http://www.postgresql.org/ ➢ GRASS GIS • http://grass.osgeo.org/ ✔ Interfaccia web ➢ OpenLayers • http://openlayers.org/ ➢ MapServer • http://www.mapserver.org/ 7 8 Implementazione SOS ✔ Il servizio istSOS richiede un database con una struttura ben definita in grado di archiviare tutte le informazioni necessarie al suo corretto funzionamento ➢ la fase di popolamento del database con dati già disponibili è abbastanza critica Implementazione SOS 9 ✔ Per effettuare questa operazione in modo efficiente sono stati sviluppati due strumenti in grado di gestire il processo di upload dei dati ✔ Questi strumenti permettono di: ➢ leggere i file forniti dell'ARPA che sono in formato CSV ➢ estrarre i dati relativi alle osservazioni dei sensori ➢ inserirli in documenti XML necessari per l'esecuzione di richieste di registerSensor e insertObservation tramite le quali viene effettuato il popolamento del database Consultazione dei dati dei sensori 10 La pagina web realizzata permette di interrogare i dati dei sensori mediante una richiesta di GetObservation Consultazione dei dati dei sensori 11 ✔ L'intefaccia web di navigazione/consultazione accede ai dati del server SOS generando una getObservation in base ai parametri indicati dall'utente (proprietà da osservare e giorno del rilievo) ✔ I dati restituiti dal server SOS: ➢ sono visualizzati direttamente sulla carta con un simbolo, di colore differente in base al valore misurato ➢ altre informazioni di dettaglio sul sensore e il valore osservato sono forniti mediante un popup consultazione dei dati dei sensori 1 12 selezione del tipo di osservazione (inquinante) consultazione dei dati dei sensori 2 selezione dell'anno 13 consultazione dei dati dei sensori 3 selezione del giorno 14 consultazione dei dati dei sensori 15 visualizzazione dei risultati consultazione dei dati dei sensori 16 visualizzazione dei risultati WPS 17 Per il servizio WPS sono stati implementati due processi ✔ interpolation ➢ interpola i dati delle osservazioni relativamente ad un determinato istante ✔ monthlyAverages ➢ fornisce le medie mensili delle osservazioni WPS - Interpolation 18 ✔ Permette di ottenere una carta di interpolazione delle misure effettuate dalle centraline Input: proprietà osservata, giorno Output: immagine PNG ✔ Il processo di calcolo è realizzato utilizzando il modulo v.surf.idw di GRASS che effettua l'interpolazione con il metodo dell'inverso della distanza 19 WPS - Interpolation 1 selezione del servizio WPS da utilizzare 20 WPS - Interpolation 2 selezione dei parametri di input (inquinante e giorno) WPS - Interpolation 21 visualizzazione della carta raster dell'interpolazione WPS - monthlyAverages 22 ✔ Permette di visualizzare le medie mensili per ciascuna proprietà osservata Input: proprietà osservata, anno Output: dati puntuali ✔ Il processo si basa su una tabella intermedia del database in cui sono state precedentemente immagazzinate le medie mensili di ciascuna osservazione e che permette di ottenere il risultato in tempi ragionevoli e senza la necessità di doverli calcolare in tempo reale al momento della richiesta 23 WPS - monthlyAverages 1 selezione del servizio WPS da utilizzare 24 WPS - monthlyAverages 2 selezione dell'osservazione 25 WPS - monthlyAverages 3 selezione del mese di interesse WPS - monthlyAverages 26 i risultati sono organizzati in una pila di 12 layer differenti l'utente è in grado di muoversi da un layer all'altro istantaneamente, riuscendo così ad analizzare l'evoluzione delle medie mensili nell'arco di un anno in maniera molto efficace, senza dover effettuare ogni volta una richiesta al server WPS - monthlyAverages 27 WPS - monthlyAverages 28 Conclusioni 29 ✔ Criticità ➢ struttura del database imposta da istSOS ✔ Pregi ➢ servizi geografici funzionali e dalle notevoli potenzialità ➢ software istSOS e pyWPS efficienti e performanti ✔ Prospettive ➢ Dati eterogenei (sensori mobili, …) ➢ GIS internet partecipati: sistemi collaborativi per le decisioni http://demo-arpa.como.polimi.it/ 30 Domande? http://creativecommons.org/licenses/by-nc-nd/3.0/