Gruppo Meteo/RFC-rmap obsolete
RFC rmap
Definizioni
Campionamento e Osservazioni
- Campionamento è il processo per ottenere una discretizzata sequenza di misure di una quantità.
- Campione è una singola misura, tipicamente una di una serie di letture “spot” di un sistema di sensoristica.
- Una osservazione (misurazione) è il risultato del processo di campionamento. Nel contesto di analisi di serie, un'osservazione è derivato da un numero di campioni.
- Variabili atmosferiche come la velocità del vento, temperatura, pressione e umidità sono funzioni di quattro dimensioni - due orizzontali, una verticale e una temporale. Esse variano irregolarmente in tutte e quattro, e lo scopo dello studio del campionamento è quello di definire le procedure di misura pratiche per ottenere osservazioni rappresentative con incertezze accettabili nelle stime delle medie e variabilità.
Data Level
- Dati Level I , sono le letture dirette degli strumenti espresse in appropriate unità fisiche e georeferenziate
- Dati Level II, dati riconosciuti come variabili meteorologiche; possono essere ottenuti direttamente da strumenti o derivati dai dati Level I
- Dati Level III sono quelli contenuti in dataset internamente consistenti, generalmente su grigliato.
I dati scambiati a livello internazionale sono livello II o livello III
Protocolli per R-map
- MQTT (Message Queue Telemetry Transport) è un protocollo publish/subscribe particolarmente leggero, adatto per la comunicazione M2M tra dispositivi con poca memoria o potenza di calcolo e server o message broker.
- AMQP (Advanced Message Queuing Protocol) è protocollo per comunicazioni attraverso code di messaggi. Sono garantite l'interoperabilità, la sicurezza, l'affidabilità, la persistenza. Nella sua implementazione Rabbitmq exporta un broker MQTT e fornisce delle api web
Metadati
Ogni dato è un valore associato a 6 metadati univoci.
- Time (date time della osservazione o di termine del periodo di osservazione)
- Longitudine, latitudine ed un identificativo (utilizzabile nel caso di stazioni mobili)
- Tipo di report o network: definisce stazioni con caratteristiche omogenee (classe degli strumenti)
- Time range: indica osservazione o tempo della previsione ed eventuale elaborazione “statistica”
- Livello: le coordinate verticali (eventualmente strato)
- Variabile: parametro fisico
Ogni dato può essere dotato inoltre di attributi variabili nel tempo (controolo di qualità) E' inoltre possibile associare dei dati statici (anagrafica, ossia invariabili nel tempo, timerange e livello) con metadati longitudine, latitudine, identicativo, report
Tabella time range
Definition of the main concepts related to the description of time range and statistical processing for observed and forecast data:
Validity time is defined as the time at which the data are measured or at which forecast is valid; for statistically processed data, the validity time is the end of the time interval.
Reference time is defined as the nominal time of an observation for observed values, or as the time at which a model forecast starts for forecast values.
The date and time in rmap are always the validity date and time of a value, regardless of the value being an observation or a forecast.
- P1 is defined as the difference in seconds between validity time and reference time. For forecasts it is the positive forecast time. For observed values, the reference time is usually the same as the validity time, therefore P1 is zero. However P1 < 0 is a valid case for reports containing data in the past with respect to the nominal report time.
- P2 is defined as the duration of the period over which statistical processing is performed, and is always nonnegative. Note that, for instantaneous values, P2 is always zero.
The following table lists the possible values for pindicator and the interpretation of the corresponding values of P1 and P2 specifying a time range:
0 | Average |
1 | Accumulation |
2 | Maximum |
3 | Minimum |
4 | Difference (value at the end of the time range minus value at the beginning) |
5 | Root Mean Square |
6 | Standard Deviation |
7 | Covariance (temporal variance) |
8 | Difference (value at the beginning of the time range minus value at the end) |
9 | Ratio |
51 | Climatological Mean Value |
10-191 | Reserved |
192-254 | Reserved for Local Use |
200 | Vectorial mean |
201 | Mode |
202 | Standard deviation vectorial mean |
203 | Vectorial maximum |
204 | Vectorial minimum |
205 | Product with a valid time ranging inside the given period |
254 | Istantaneous value |
Tabella Livello
Tabella variabile ( B table)
Metadati su MQTT
Ogni topic corrisponde ai metadati univoci, mentre il payload è composto dal valore e dall'instante temporale. Json è il formato per il payload.
Forma simbilica del topic: /IDENT/COORDS/NETWORK/TRANGE/LEVEL/VAR
- IDENT: identificativo (per stazioni mobili), “-” per stazioni fisse o etichetta non utilizzata
- COORDS: nella forma lon,lat. Le coordinate sono espresse nell forma int(valore*10^5) con eventuale segno negativo
- NETWORK: etichetta massimo 16 caratteri
- TRANGE: nella forma indicator,p1,p2; Indicator e p2 interi senza segno, p1 intero con eventuale segno negativo. “-” per valori non significativi
- LEVEL: nella forma type1,l1,type2,l2; Type1, type2 interi con eventuale segno negativo, l1e l2 interi con eventuale segno negativo. “-” per valori non significativi
- VAR: nella forma BXXYYY (come da codice BUFR WMO)
Il payload è in formato JSON: { “v”: VALUE, “t”: TIME, “a”: { “BXXYYY”: VALUE, … } }
- VALUE: valore in formato CREX
- TIME: formato YYYY-mm-ddTHH:MM:SS.MSC (secondi e millisecondi opzionali)
Gli attributi (“a”) solitamente per controllo di qualità sono opzionali