Differenze tra le versioni di "Gruppo Meteo/StimaOverview"

Da raspibo.
Jump to navigation Jump to search
Riga 12: Riga 12:
 
=== Trasporti ===
 
=== Trasporti ===
 
Il concetto di trasporto in Stima è simile ma non rigidamente aderente ai concetti del modello ISO-OSI. Nel caso dei trasporti passivi il suo compito è fornire un canale logico-affidabile di comunicazione end-to-end per fornire servizi al soprastante livello che in Stima è JsonRPC.
 
Il concetto di trasporto in Stima è simile ma non rigidamente aderente ai concetti del modello ISO-OSI. Nel caso dei trasporti passivi il suo compito è fornire un canale logico-affidabile di comunicazione end-to-end per fornire servizi al soprastante livello che in Stima è JsonRPC.
Nel caso dei trasporti attivi è il protocollo (Session Layer) per la pubblicazione dei dati su un server (broker).
+
Nel caso dei trasporti attivi corrisponde al protocollo (Session Layer) per la pubblicazione dei dati su un server (broker).
  
 
=== Passivi o attivi ===
 
=== Passivi o attivi ===

Versione delle 16:29, 15 giu 2015

Stima Overview

Stazione modulare per la misura di parametri ambientali.

Premesse

  • Adeisce alla Rete di Monitoraggio Ambientale Partecipativo (R-MAP)
  • Open hardware e open software
  • al momento vengono gestiti parametri meteorologici

Concetti base

La modularità della stazione è stata ottenuta astraendo alcuni concetti e funzioni e implementandoli nei differenti moduli hardware e software.

Trasporti

Il concetto di trasporto in Stima è simile ma non rigidamente aderente ai concetti del modello ISO-OSI. Nel caso dei trasporti passivi il suo compito è fornire un canale logico-affidabile di comunicazione end-to-end per fornire servizi al soprastante livello che in Stima è JsonRPC. Nel caso dei trasporti attivi corrisponde al protocollo (Session Layer) per la pubblicazione dei dati su un server (broker).

Passivi o attivi

In pratica i trasporti "passivi" permettono di eseguire procedure remote codificate in formato json specifiche dell'implementazione Stima; quelli attivi permettono la pubblicazione su server (broker) dei messaggi aderenti allo standard R-MAP.

Passivi

Seriale

Collegamento punto a punto tramite porta seriale.

  • Principalmente per configurazione e debug
  • Piccole distanze via cavo

caratterizzato da:

  • Baud rate
  • Device
TCP/IP

Trasporto che utilizza il tcp/ip; i supporti fisici supportati sono:

  • ethernet: collegamenti tramite cavo ethernet a breve e media distanza
  • GSM/GPRS: installazioni con problemi per le cablature di alimentazione e collegamento di rete

caratterizzato da:

  • Name (Nome risolto dal DNS)
  • Ntpserver
Bluetooth

caratterizzato da:

  • Bluetooth Name
NRF24
  • OSI Network Layer using nRF24L01(+) radios 2.4GHz ISM 50/150m in aria libera
  • Host Addressing. Each node has a logical address on the local network.
  • Message Forwarding. Messages can be sent from one node to any other, and this layer will get them there no matter how many hops it takes.
  • Ad-hoc Joining. A node can join a network without any changes to any existing nodes.

RF24Network Addressing and Topology

Each node must be assigned an 15-bit address by the administrator. This address exactly describes the position of the node within the tree. The address is an octal number. Each digit in the address represents a position in the tree further from the base.

  • Node 00 is the base node.
  • Nodes 01-05 are nodes whose parent is the base.
  • Node 021 is the second child of node 01.
  • Node 0321 is the third child of node 021, an so on.
  • The largest node address is 05555, so 3,125 nodes are allowed on a single channel.

Alla libreria distributia è stata aggiunta la crittografia e frammentazione e ricomposizione del payload

caratterizzato da:

  • Node (Node ID for RF24 Network)
  • Channel (Numero canale per RF24)
  • Key (AES key)
  • Iv

Attivi

MQTT

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.

caratterizzato da:

  • Mqttsampletime (intervallo in secondi per la pubblicazione)
  • Mqttserver (MQTT server)
  • Mqttuser (MQTT user)
  • Mqttpassword (MQTT password)
AMQP

AMQP (Advanced Message Queuing Protocol) è protocollo per comunicazioni attraverso code di messaggi. Sono garantite l'interoperabilità, la sicurezza, l'affidabilità, la persistenza.

caratterizzato da:

  • Amqpserver (Server AMQP)
  • Exchange (Nome dell'exchange remoto AMQP)
  • Queue (Nome della coda locale AMQP )
  • Amqpuser (User AMQP)
  • Amqppassword

JsonRPC

La chiamata di procedure remote in formato json è l'unico metodo per poter eseguire funzioni su un modulo dalla configurazione al campionamento dei sensori.

La documentazione delle procedure remote è disponibile qui Gruppo_Meteo/RemoteProcedure

JsonRPC over different transports

E' possibile fare richiesta di una procedura remota che a sua volta richiede una procedura remota; in questo modo è possibile utilizzare due trasporti differenti e usare un modulo come gateway. Ad esempio il modulo base non dispone al momento del trasporto radio RF24 ma puo' richiedere a un modulo master tramite trasporto seriale o TCP/IP di eseguire una procedura remota su un modulo satellite raggiungibile tramite trasporto RF24. Queste funzionalità sono ampiamente da testare.

Parametri di configurazione