Open Source Data Loggers

Open Technology for Biodiversity

Sensors

Sensor Descriptor

The Node Description File requires that for each sensor a URL is specified that resolves to a page defining the capabilities of that sensor (e.g. a DHT-22 temperature and humidity sensor, TMP35 digital thermometer). The capabilities of the device reading the sensor (e.g. the analogIn() function of the Arduino UNO) are not considered here, but are considered in the process array.

name Human readable name of the sensor
datasheet URL to the datasheet from the manufacturer
accuracy  
detectionLimit  
drift  
frequency  
latency  
precision  
resolution  
responseTime  
selectivity  
sensitivity  
measurementUnit  

Sensor Reading

The Sensor Reading is requested by a control node on the network, the response is a JSON formatted string delivered over HTTP that gives information required to identify the sensor and processes it undertakes as well as the interim measurement for each stage of the process array defined in the Node Descriptor File. The first process in the list will be the process that first reads the sensor (e.g. the ADC reading for a sensor that uses voltage changes, or for purely digital sensors the initial reading before any processing). The array is keyed using the same index numbers as defined in the Node Descriptor File. The results returned for each process maybe a single value or a JSON-serialised array of URL=>value pairs (e.g. for returning DarwinCore Occurrence records of a machine-observed specimen). The final value in the process array will be the final reading. This value is kept in the process array rather being listed as a separate ‘final’ entry to allow for nodes that perform additional processing on the returned array to easily append their processes to this array.

Scratchpads developed and conceived by (alphabetical): Ed Baker, Katherine Bouton Alice Heaton Dimitris Koureas, Laurence Livermore, Dave Roberts, Simon Rycroft, Ben Scott, Vince Smith