QField, QField Cloud e mobile GIS

Tutorial_20220131

Introduzione

Visti i recenti e interessanti sviluppi, negli ultimi tempi ci siamo interessati particolarmente a QField (e alle app mobile in generale, come Input) che abbiamo sempre utilizzato come azienda (Gter) e su cui abbiamo spesso fatto consulenza. Uno dei punti che mi ha sempre lasciato perplesse della complessa applicazione QField è la sincronizzazione dei dati con i dispositivi mobili, dal momento che esistono delle app molto simili che hanno ovviato a questo problema con meccanismi di sincronizzazione in cloud (vedi Input). Da un po' di tempo il team di OpengisCH (gli sviluppatori e manutentori di QField) ci hanno fatto venire fame con la versione cloud della celebre applicazione e ho pensato che fosse arrivato il momento di parlarne: QField Cloud è una piattaforma che con il solo utilizzo del sw QGIS e dell'iscrizione, gratuita, al seguente indirizzo https://qfield.cloud/ permette di condividere progetti con più persone, agevolando il lavoro in team, accedendo a una cornologia delle modifica ed evitando di utilizzare i cavi USB o altri mezzi per sincronizzare i progetti che prepariamo sull'ambiente desktop con QGIS e che vogliamo avere a portata di smartphone durante un rilievo.

Prerequisiti - testare i nostri progetti in maniera speditiva

Durante questo breve blogpost utilizzerò e richiamerò diversi strumenti il cui funzionamento do per scontato (QGIS, QField), ma per testare i progetti che si vogliono utilizzare durante un rilievo con smartphone o tablet, utilizzo spesso la versione di QField per Windows (esiste anche per Mac, non l'ho mai testata), andandomi ad installare una versione di QField direttamente sul mio pc. Nel momento in cui scrivo queste righe, c'è un piccolo bachetto per cui sono andato a recupararmi l'ultima versione funzionante dal repository, ho scaricato l'eseguibile (.exe) e l'installazione è banalmente andata a buon fine. Per chi fosse curioso di provare QFiled in un ambiente desktop o per chi avesse la necessità di testare i propri progetti, la versione per Windows è life-saver: potete scaricare l'eseguibile della versione che preferite da qui: https://github.com/opengisch/QField/releases/.

image

Preparazione Progetto

La documentazione è esaustiva e completa, anche se talvolta frammentaria, quindi non esamineremo ogni funzionalità al microscopio ma cercheremo di riprodurre un possibile workflow. Immaginiamo di avere un progetto editato con QGIS, per il quale vogliamo fare un rilievo: il progetto è composto da una mappa di base (facoltativa) e da un layer di punti con una tabella attributi molto semplice, che immagazzina Nome, Data ed eventuale Foto. Dal momento che si vuole una foto come allegato, l'accortezza presa è stata creare un modulo di inserimento dati in cui il campo "Foto" fosse definito come allegato: il form in QGIS è quello in figura.

image

A questo punto vogliamo predisporre il progetto per essere utilizzato in un rilievo in campo da una o più persone.

QField Cloud Plugin QGIS

Dopo aver fatto l'accesso alla piattaforma web indicata sopra saremmo in possesso delle credenziali di accesso al nostro spazio in Cloud (i dati dovrebbero essere in un datacenter in Svizzera), a questo punto dal menu del plugin (QFieldSync) si dovrebbe poter accedere, attraverso la voce "Panoramica del progetto QFieldCloud" a una finestra in cui eseguire l'accesso.

image

In cui saranno visibili i progetti presenti sul nostro spazio cloud e quelli condivisi con noi, ci sono inoltre una serie di opzioni per condividere, sincronizzare, aprire e via discorrendo i vari progetti (qualora si fosse interessati a diverse opzioni consiglio di seguire la documentazione ufficiale).

image

In questo caso noi vogliamo creare un nuovo progetto, quello che abbiamo creato localmente su QGIS, per poterlo condividere con gli operatori e le persone che eseguiranno il rilievo. Cliccando sul pulsante indicato in figura veniamo guidati alla creazione di un progetto e possiamo scegliere le opzioni che fanno al caso nostro: convertiamo il progetto attualmente aperto in un progetto cloud, scegliamo il nome, una breve descrizione e il percorso in cui verrà salvato il progetto che sarà aggiornato con il cloud. Dopo Aver cliccato crea il nostro progetto verrà elencato tra quelli disponibili sul cloud a meno che lo status non sia Rosso (la simbologia dei vari stati: rosso, marrone e verde; è spiegata nella documentazione)

QField Cloud applicativo web

Accedendo alla piattaforma web con username e password possiamo vedere i nostri progetti e quelli condivisi con noi. Cliccando su un progetto vi sono una serie di opzioni che ci aiutano nel condividere, correggere, sincronizzare e lavorare in team. Nella GIF che segue possiamo vedere due progetti in cui si può accedere alle modifiche fatte: per ogni modifica si può andare a controllare chi è l'autore, se il progetto è condiviso con più persone, ed eventuali valori inseriti in tabella attributi e localizzazione della feature, nonchè ovviamente un timestamp di quando la modifica è stata sincronizzata con il progetto in cloud:

qfcloud

Nel menu files troviamo i files che coinvolgono il progetto: tipicamente un progetto .qgs, uno o più file di dati ed eventuali allegati e foto come ad esempio, nell'immagine di sotto, DCIM/qfield-db_20220429102608622.jpg:

image

Possiamo aggiungere o togliere dei collaboratori con diversi ruoli:

image

La granularità raggiungibile dai permessi che si possono concedere ai diversi collaboratori è dettagliata e copre un'infinità di casi https://docs.qfield.org/reference/qfieldcloud/permissions/.

QField Cloud app per smartphone

Il passaggio dalla piattaforma web non è sempre necessario, e una volta che attraverso il plugin si è caricato il progetto in cloud è possibile scaricare e sincronizzare il progetto su cui si vuole lavorare direttamente sullo smartphone. Una volta che il progetto è in locale sul filesystem del telefono possiamo utilizzare QField nella maniera usuale e classica, inserendo o modificando le feature di interesse. Quando abbiamo finito il rilievo in campo possiamo sincronizzare le modifiche con il progetto in cloud (per poi eventualmente trasferirle sul progetto Desktop), quando sincronizzare le modifiche lo si decide in base alla disponibilità di connessione ai dati internet. E' inoltre possibile decidere se sincronizzare l'intero progetto, e riscaricare il progetto sincronizzato oppure, per risparmiare dati, è possibile inviare (pushare) le sole modifiche effettuate. Queste operazioni sono sintetizzate nella gif seguente.

qfcloud2

Conclusioni

Il Workflow molto schematico e semplice che è stato presentato ha un fine puramente divulgativo ed è stato utilizzato al solo scopo di esempio, in un ambiente di produzione ovviamente le dinamiche sono leggermente diverse anche se lo schema è analogo. Attualmente QFieldCloud è in versione di sviluppo e manacano molte funzionalità (interazione con un database) ma lo strumento è molto potente e utile. Penso sia per altro la soluzione migliore se al rilievo devono collaborare più persone.

 Date: May 13, 2022
 Tags:  QField QGIS QFeldCloud

Previous
⏪ Utililzzare un ricevitore u-blox con RTKLIB in tempo reale

Next
Pianificazione di strumenti per sperimentazione di procedure per analisi territoriali con GRASS GIS ⏩