Greetings,
We're building an energy meter that logs, processes and displays energy readings. It's still very early and basic but interesting for a beginner like me.
Currently the voltage channel is isolated using a transformer, this is not ideal and we will switch to an opto-isolater in the future thanks to the
advice we got.
The current channel is going to come from
cheap Chinese current sensors. We have not received them yet, so can't show the waveforms.
Once the prototype is complete I can look into ordering more serious PCBs. Instead of an android app we have decided to use a normal browser. The results of running it for a couple of hours are below. The current channel here is also the voltage, so what is measured is the voltage squared. We use a
MCP3909 for this. It multiplies the voltage and current AC waveform and outputs active power as pulses (0-6kHz or slower is desired). There is also a serial data channel available but we didn't use this yet. A measurement is taken every 3 seconds and stored in an sqlite3 database in the Raspberry Pi. This data is then offered as a webapp in the form of the graph by browsing to the IP of the device. The graph updates every 3 seconds by requesting the latest value.
You could argue that a beagleboard would be better suited for this and you may be right. The Raspberry Pi can handle the 6k interrupts per second by using just 25% CPU and this is fine for testing until the design has advanced further.
If anybody is interested in early test code or schematics I will gladly share them. I'm interested in advice or warnings about pitfalls for these kinds of projects.

