On most household electricity meters there is a LED that pulses every time a certain amount of Watts have been used. On mine one pulse means 0.8Wh used. This was printed next to the pulsing LED.
Of course you could remove the LEDand direclty grab the pulse from there but as I have a great respect for that box I didn´t dare to dismantle it. Instead I decided on placing a light sensor on top of the LED and get the pulses this way.
Without properly studing light sensors I first ordered some "photo cells
" but quickly realized they cant pick up a quick pulse. Instead I got some Photo Reflective Sensors
that have a light and IR sensor. With this sensor there was no problem to catch the pulses. Of course I had to cover the area around no to let any additional light in.
How to count the pulses? First I wanted to do this just with the XBee but as I couldn´t figure out a way to easily do it I put a Arduino to provide some logic. The sensor is attached to an analog port and the Arduino does a count++ every time it senses a pulse. A counter on the Arduino counts to 60 seconds and then sends the count over XBee to a coordinator. The Arduino is actually a clone by Seeeduino
Arduino sketch and XBee config attached.