Energy Monitor¶
Il progetto riguarda un sistema di monitoraggio dei consumi elettrici e altre grandezze fisiche di interesse. I dati sono acquisiti dai sensori e inviati via radio alla stazione base che li archivia localmente e li invia a Xively (ex Cosm ex Pachube - https://xively.com/) un servizio cloud per IoT (Internet of Things).
This project is about an energy consumption (and other data too) monitoring system. The data are collected from sensors, sent via radio to a base station which archive them locally and send them to Xively (ex Cosm ex Pachube - https://xively.com/) a cloud service for the internet of things (IOT).
Diagramma del sistema - System Diagram¶
Componenti principali Hardware- Raspberry PI (http://www.raspberrypi.org/)
- 4 JeeNode (http://jeelabs.com/products/jeenode)
- 3 sensori di temperatura (DS18B20 interfaccia 1-wire)
- 2 Sensori di corrente CT per la misura della corrente alternata
- 1 LDR per la misura dell'intensità luminosa
- Linux, Apache, PHP, Emoncms (http://openenergymonitor.org/emon/)
- Script in PHP per la comunicazione tra emoncms e Jeenode
- Script in PHP per la comunicazione tra emoncms e Xively
Componenti - Components¶
La stazione base è costituita da un Raspberry Pi (un piccolo PC embedded con Linux) e un JeeNode (equivalente ad un Arduino in formato ridotto con un transceiver radio sulla scheda). Sul Raspberry Pi è installato emoncms un CMS sviluppato dal progetto open source “Open Energy Monitor” (http://openenergymonitor.org/emon/). Emoncms è basato su Apache, MySQL e PHP e permette di archiviare i dati acquisiti dai nodi con i sensori e di sincronizzare gli stessi dati con Xively. Per queste due funzioni sono stati sviluppati dei moduli aggiuntivi in PHP (in verde nella figura in basso).
The base station is made up by a Raspberry Pi (a little embedded PC with Linux OS) and a JeeNode (an Arduino compatible board with an on-board radio TX-RX). On the Raspberry Pi is installed emoncms a CMS developed by the open source project "Open Energy Monitor" (http://openenergymonitor.org/emon/). Emoncms is based upon Apache, MySQL and PHP and implements the communication with the radio node, the data archiving (in a SQL DB) and the synchronization of this data with Xively.
{{html(
<table><tr><td><a href=https://dev.hacklabterni.org/attachments/download/340/emon2.png><img src=https://dev.hacklabterni.org/attachments/download/340/emon2.png></a></td>
<td><a href=https://dev.hacklabterni.org/attachments/download/601/emon-base.jpg><img src=https://dev.hacklabterni.org/attachments/download/601/emon-base.jpg width=400></a>
)}}
Ogni singolo nodo misura la temperatura, il consumo elettrico e l'intensità luminosa e invia questi dati alla stazione base via radio. Allo stesso tempo può ricevere comandi dalla stazione base per accendere o spegnere apparati elettrici (esemplificati da LED nel presente prototipo).
Each single node can get Temperature, Energy consumption and Light intensity data and send it to the base station. At the same time it can receive commands from the base station to turn on or off an electrical appliance (for the sake of simplicity here we have a single LED).
{{html(
<table><tr><td><a href=https://dev.hacklabterni.org/attachments/download/341/emon3.png><img src=https://dev.hacklabterni.org/attachments/download/341/emon3.png></a></td>
<td><a href=https://dev.hacklabterni.org/attachments/download/602/emon-jeenode.jpg><img src=https://dev.hacklabterni.org/attachments/download/602/emon-jeenode.jpg width=400></a>