A project log for Power Monitor

Non-intrusive feedback loop for electrical systems.

jlbrian7jlbrian7 03/08/2015 at 16:210 Comments

I am a little less than half complete with porting emoncms ( )to python. This was an exercise in just seeing how the cms worked, changing somethings that I didn't like (I particularly dislike php) and extending the capabilities. I also wanted to be able to rapidly test and add data processing filters. I think that I am a day or two from logging data with the cms, and a week from applying filters (in an ideal world). The primary usage is that it will capture any data sent to it so long as a unique identifier is provided (this can be anything so long as it is unique to the user write key), once the system has begun capturing data a node id is mapped to the data stream, and then data processing can be done on a node. While the data processing that comes with emoncms is mostly power related, I wanted something more universal some ideas are: kalman filter, greatest integer, and gradient descent, and some prediction processing. The processing functions are to be modular so that they can be programmed and dropped into the system and run.

I am pulling various rss feeds into the system, because it saves me from clicking all around the internets, and also hopefully at some point I will find the time to play with NLTK.

This is a port of bleextop ( ) to python for administration (The port was successful and complete, but extending it has met with disastrous results. There is a learning curve with extjs.)

And while there isn't much to see, this is the look of the py-emoncms.

(at the bottom of every page it does say "Powered by | v<"?php echo $emoncms_version; ?">" and is built from v8.3.5 (Beta))

In the end each bit of functionality in the main program should be modular as well, so that features can be add or removed as desired for space considerations and usage needs.

Eventually I would like to add financial capabilities with the yahoo finance api ( ) and Icarra ( ).

The FreePBX was redirecting to my server, but I will eventually port it as well.

As is usual for me, I have set my goals far beyond what my capabilities and time allow for, but it should keep me busy for a while.