Presentation given at Nanode Applications Weekend in London. Presentation introduces the OpenEnergyMonitor project and talks through our end-to-end open-source web-connected energy monitoring system
Blog post about the event:
http://openenergymonitor.blogspot.com/2011/08/nanode-applications-weekend.html
3. “A project to develop and build open-source energy
monitoring, control and analysis tools for energy efficiency
and distributed renewable microgeneration”
4.
5. http://openenergymonitor.org/emon/emontx
Applications
● Electricity consumption monitoring
● Renewable generation monitoring
● Heat-pump monitoring
●Water, gas and flow monitoring (from pulse
output meter)
● Temperature monitoring
● Multi node distributed monitoring network
6. DS18B20 one-wire
Optional AC voltage temperature bus Pulse counting
(for real power
measurement)
Status LED
(upside down!)
JeePorts for
compatibility with
JeeLab shields 3 x CT channels
3.5mm jack for
Atmega 328 @ 3.3V Seedstudio CT's
100A max
AA battery input
(3.3V max)
5V USB RFM12B
5V FTDI power Wireless
Arduino IDE
compatible
http://openenergymonitor.org/emon/emontx
7. RTC plug
16Ch PWM LED plug
Barometric pressure plug
Motor plug
Infra red plug
MOSFET plug
Light intensity plug 512Kb memory plug
OOK plug
Relay plug
9. RFM12B wireless FSK transceiver module
●Made by Hope RF, re-branded by rfsolutions and maplin in the UK
●Sometimes called 'Alpha RF'
●Low cost RF transceiver £4-7 (from Rapid, Farnell, RS or Maplin)
●Up to 300m transmission
●Up to 115Kbps
●Up to 28 nodes per network
●Up to 250 different network groups
●3 different frequencies
●Surface mount
●SPI interface
●2.2-3.8V supply voltage
OpenEnergyMonitor uses 434Mhz
●Low power – 0.3µA standby current JeeLabs uses 868Mhz
●Excellent interrupt driven Arduino library by JCW
http://jeelabs.net/projects/cafe/wiki/RF12
http://www.hoperf.com/pro/rf/cob/RFM12B.htm
12. RF
http://wiki.hackspace.org.uk/wiki/Project:Nanode/Applications#RFM12_Wireless_Module
●JeeLabs RFM12B wireless breakout board.
●No need to solder in the 3.3V voltage regulator
●3.3V power from the Nanode's 3.3V voltage regulator
433Mhz needs longer antenna (165mm) than JeeNode 868Mhz
There is an error on the Nanode 5 board that stops the
Ethernet and RFM12B being used at the same time.
Solution:
●Lift leg 4 of the ENC28J60 out of its socket
●Do not solder in/remove R13 (the 10K resistor, one resistor
down from the 1 ohm ferrite)
13.
14. emonGLCD
wireless open-source
graphical LCD unit
In development
A beautiful living room display!
..think smooth laser-cut and engraved plywood fascia....
●64x128 Graphical LCD
●PWM LED backlight
●Low power, 3.3V
●Based on JeeNode + JeeLabs
Graphics board
ATmega328 Temperature sensor tri-colour LED (ambient indicators)
Possible uses
●Energy monitoring
● Real time data
Mode
● Simple graphs
change
● Ambient indicator LED's
● Grid demand / renewable mix
● Temperatures
USB
power
●Twitter feeds, weather, email alert,
RSS etc.
●Patchube feeds
RFM12B
15. RF
Nanode to the web
https://github.com/openenergymonitor/NanodeRF
https://github.com/openenergymonitor/sketchbook
A whole load of examples for sending data to pachube and emoncms from the nanode.
16. An open-source web app for processing, logging
and visualising energy, temperature and other
environmental data.
●Open-source, downloadable and installable on
your own server.
●Specifically designed with processing and
visualising energy data in mind.
A project for me to learn web programming, php,
●
mysql, javascript and so on
openenergymonitor.org/emon/emoncms
21. Models are like libraries in that
you can call the model functions
from your code:
create_feed($userid,$name)
insert_feed_data($feedid,$time,$value)
update_feed_data($feedid,$time,$value)
get_feed_data($feedid,$start,$end,$resolution)
The controllers handle
different requests from
the user, getting data
from the model and
wrapping it up in a view
before sending finished
output to the user.
The controller, controls
data flow through the
application.
The views theme
the data/content
22. a 3rd party pachube app?
By swapping out the database
and changing the models slightly
it should be possible to use pachube
as the data store