Difference between revisions of "Software: Overview"
(→Scale) |
(→Logging the Data) |
||
Line 32: | Line 32: | ||
=== Logging the Data === | === Logging the Data === | ||
− | After hive.sh reads the sensors, the data is appended to a flat text log file [[hive.log]] and written in xml format to the temporary file [[hive.xml]]. [[cURL]] is used to send the xml file to a hosted web server where a perl script extracts the xml encoded data and inserts a row into the database | + | After hive.sh reads the sensors, the data is appended to a flat text log file [[hive.log]], stored in a local SQL database by sql.sh, and written in xml format to the temporary file [[hive.xml]] by xml.sh. [[cURL]] is used to send the xml file to a hosted web server where a perl script extracts the xml encoded data and inserts a row into the database. |
== Bioserver == | == Bioserver == |
Revision as of 00:00, 8 November 2014
For detailed installation instructions, see How to load hivetool on the Pi. This project uses Free and Open Source Software (FOSS). The operating system is Linux although everything should run under Microsoft Windows. The code is available at GitHub.
Hivetool can be used as a:
- Data logger that provides data acquisition and storage.
- Bioserver that displays, streams, analyzes and visualizes the data in addition to data acquisition and storage.
Both of these options can be run with or without access to the internet. The bioserver requires additional software and configuration of a webserver (usually apache), the perl module GD::Graph, and perhaps a media server such as Icecast http://www.icecast.org/ or FFserver http://www.ffmpeg.org/ffserver.html to stream audio and video.
Contents
Data Logger
Linux Distributions
Linux distros that have been tested are:
- Debian Wheezy (Pi)
- Lubuntu (lightweight Ubuntu)
- Slackware 13.0
Reading the Sensors
Every 5 minutes cron kicks off the bash script hive.sh that reads the sensors. On ver 0.5 and later, the text file hive.conf is parsed to determine which sensors to read and their calibration parameters.
Scale
For tips on scale that use serial communication see Scale Communication
Temperature Sensors
tempered reads the RDing TEMPerHUM USB thermometer/hygrometer. Source code is at github.com/edorfaus/TEMPered Detailed instructions for installing TEMPered on the Pi.
Logging the Data
After hive.sh reads the sensors, the data is appended to a flat text log file hive.log, stored in a local SQL database by sql.sh, and written in xml format to the temporary file hive.xml by xml.sh. cURL is used to send the xml file to a hosted web server where a perl script extracts the xml encoded data and inserts a row into the database.
Bioserver
Just as a mail server servers up email and a web server dishes out web pages, a biological data server, or bioserver, serves biological data that it has monitored, analyzed and visualized.
The Perl module GD::Graph is used to plot the data. The graphs and data are displayed with a web server, usually Apache. More detailed installation instructions are on the Forums.
Graphing the Data
GD::Graph
The Perl module GD::Graph is used to plot the data.