Differenze tra le versioni di "Gruppo Meteo/Software/Devel/StimaVersione2"

Da raspibo.
Jump to navigation Jump to search
Riga 1: Riga 1:
 +
= Guide per developers =
 +
== Software per Stima ==
 +
=== Libreria di "driver" per sensori ===
 +
Esistono attualmente due versioni, una in C++ e una in python
  
 +
==== C++ ====
  
= Biblioteca de "drivers" para sensores =
+
https://github.com/r-map/rmap/tree/master/arduino/sketchbook/libraries/SensorDriverb
Actualmente hay dos versiones, una en C ++ y otra en python.
 
== C++ ==
 
  
https://github.com/r-map/rmap/tree/master/arduino/sketchbook/libraries/SensorDriver
+
Porta le gestione della sensoristica ad un livello di astrazione più
Lleva la gestión de sensores a un nivel más abstracto.
+
alto. Praticamente si tratterebbe di estendere una classe
alta. En la práctica sería cuestión de ampliar una clase.
+
con quattro metodi per effettuare la lettura di uno specifico sensore:
Con cuatro métodos para leer un sensor específico:
 
  
 
     virtual int setup(const char* driver, const int address, const int node=0, const char* type=NULL, char* mainbuf=0, size_t lenbuf=0, RF24Network* network=NULL);
 
     virtual int setup(const char* driver, const int address, const int node=0, const char* type=NULL, char* mainbuf=0, size_t lenbuf=0, RF24Network* network=NULL);
realice los ajustes necesarios para que el sensor funcione;
+
effettua eventuali settaggi necessari al funzionamento del sensore;
 
esempio per temperatura: numero di bit di risoluzione, operazione di
 
esempio per temperatura: numero di bit di risoluzione, operazione di
 
misura one-shot; i paramteri const int node=0, const char* type=NULL, char* mainbuf=0, size_t lenbuf=0, RF24Network* network=NULL servono per la gestione di un sensore remoto eseguendo una jsonrpc su trasporto NRF24Network
 
misura one-shot; i paramteri const int node=0, const char* type=NULL, char* mainbuf=0, size_t lenbuf=0, RF24Network* network=NULL servono per la gestione di un sensore remoto eseguendo una jsonrpc su trasporto NRF24Network
  
 
     virtual int prepare(unsigned long* waittime) = 0;
 
     virtual int prepare(unsigned long* waittime) = 0;
le da al sensor el comando para realizar una sola medición
+
impartisce al sensore il comando per effettuare una singola misurazione
Se requiere el tiempo de espera en milisegundos.
+
torna il tempo in millisecondi di attesa necessario
  
 
     virtual int get(int values[],size_t lenvalues) = 0;
 
     virtual int get(int values[],size_t lenvalues) = 0;
volver a los valores de medida
+
torna i valori della misurazione
  
 
     virtual aJsonObject* getJson() = 0;
 
     virtual aJsonObject* getJson() = 0;
Riga 27: Riga 29:
  
  
Esta pequeña biblioteca fue creada para sensores I2C, pero no necesariamente
+
Questa piccola libreria è nata per sensori I2C, ma non per forza
Limitado a aquellos y, de hecho, ya proporciona un json-rpc con transporte de radio.
+
limitata a quelli e infatti prevede già una json-rpc con trasporto via radio.
 +
 
 +
il file SensorDriver_config.h definisce quali driver includere nella libreria e altri parametri di configurazione a compile time
 +
 
 +
==== python ====
 +
 
 +
https://github.com/r-map/rmap/blob/master/python/rmap/sensordriver.py

Versione delle 16:04, 12 set 2019

Guide per developers

Software per Stima

Libreria di "driver" per sensori

Esistono attualmente due versioni, una in C++ e una in python

C++

https://github.com/r-map/rmap/tree/master/arduino/sketchbook/libraries/SensorDriverb

Porta le gestione della sensoristica ad un livello di astrazione più alto. Praticamente si tratterebbe di estendere una classe con quattro metodi per effettuare la lettura di uno specifico sensore:

   virtual int setup(const char* driver, const int address, const int node=0, const char* type=NULL, char* mainbuf=0, size_t lenbuf=0, RF24Network* network=NULL);

effettua eventuali settaggi necessari al funzionamento del sensore; esempio per temperatura: numero di bit di risoluzione, operazione di misura one-shot; i paramteri const int node=0, const char* type=NULL, char* mainbuf=0, size_t lenbuf=0, RF24Network* network=NULL servono per la gestione di un sensore remoto eseguendo una jsonrpc su trasporto NRF24Network

   virtual int prepare(unsigned long* waittime) = 0;

impartisce al sensore il comando per effettuare una singola misurazione torna il tempo in millisecondi di attesa necessario

   virtual int get(int values[],size_t lenvalues) = 0;

torna i valori della misurazione

   virtual aJsonObject* getJson() = 0;

torna i valori in formato json, formato preferito ed utilizzato in r-map Vedi RFC-rmap


Questa piccola libreria è nata per sensori I2C, ma non per forza limitata a quelli e infatti prevede già una json-rpc con trasporto via radio.

il file SensorDriver_config.h definisce quali driver includere nella libreria e altri parametri di configurazione a compile time

python

https://github.com/r-map/rmap/blob/master/python/rmap/sensordriver.py