Mini-Monitor: Raspberry Pi Data Collection System¶
Copyright (c) 2014, Alaska Housing Finance Corporation. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the “License”); you may not use this software except in compliance with the License, as described in the license.rst file.
The Mini-Monitor software is data acquisition software that runs on a Raspberry Pi computer. It is designed to post the collected data to the BMON web-based sensor reading database and analysis software, but the software can be modified to post to other Internet databases. The Mini-Monitor software has the ability to collect data from a number of different sources, including:
- Maxim DS18B20 1-Wire Temperature Sensors
- Sensors utilizing the Maxim DS2406 1-Wire chip to sense the On/Off state of a device. Analysis North sells an easily-installed motor/pump/zone valve/gas valve sensor utilizing this chip that can interface to the Mini-Monitor through the 1-Wire network.
- Utility meters (gas, electric, water) that transmit their meter readings using the Itron ERT radio format.
- Burnham Alpine Boilers utilizing the Sage controller. The Mini-Monitor interfaces to the boiler via the boiler’s RS-485 Modbus interface and extracts numerous sensor and state values from the boiler.
- The AERCO BMS II Boiler controller, which controls a set of AERCO boilers. The Raspberry Pi interfaces via a serial RS-232 MODBUS interface.
- Thermistors connected to a Labjack U3 data acquisition board.
- Acurite 592TXR Temperature/Humidity Wireless sensors.
- Peacefair PZEM-016 Electric Power Sensor.
- Gauge air pressure measured by an Energy Conservatory DG-700 Pressure Gauge.
- Sensaphone’s Infrastructure Monitoring System (IMS-4000). Data can be obtained from up to 32 remote nodes, each with the capacity to reco`rd 8 different sensors. The Raspberry Pi obtains data using the Simple Network Management Protocol (SNMP).
The software design is flexible and allows for the easy addition of other data sources. To add a new data source, an appropriate “Reader” class written in Python must be created, and can then be combined with other Reader classes to create a customized data acquisition system.
Here is a picture of a Mini-Monitor installed in a boiler room connecting to a Burnham Alpine Boiler and a string of 1-Wire temperature and motor sensors:
This site holds the documentation for the software. The documentation is divided into three main sections, described below and available on the sidebar menu on the lefthand side of this screen.
This section contains documentation for users who wish to install, configure and use the Mini-Monitor software on a Raspberry Pi computer.
This section gives details about the hardware components and assembly required to create a Mini-Monitor system.
This section provides documentation for developers who want to modify the code of the Mini-Monitor system. The source code of the project is internally documented with comments, but the documentation in this section explains the overall structure of the application. The repository holding the source code is located here.