PowerGraph: A Mobile Energy Measurement
Framework for Mobile Devices
This page provides an overview of the actual hardware design of PowerGraph. PowerGraph itself consists of three boards, explained and depicted below. The overall costs for all the parts (including the Pi) sum up to around 70€.
Power board
This board accepts power through a USB cable and redistributes the power throughout the system. It connects directly to the Raspberry Pi's power input and the converter board. It also contains an a cinch plug that provides power to the smartphone or other devices.
The voltage available at the cinch plug can be adjusted onboard. The output voltage range is approximately 0.6V-4.8V. For example, this allows to simulate different battery charge levels for the smartphone or provide compatibility for a wide range of devices. The power consumption of the device, connected at the cinch plug, is measured and the result if forwarded to the converter board.
The implementation of the board relies on a precise measurement of the falloff voltage at the shunt resistor, which is close to the 5V supply voltage. Since operational amplifiers generally have a problem operating close to their supply voltage, the power board itself generates a 9V supply onboard with the help of a charge pump. The charge pump works by alternating charging C4 and discharging it into C6 with a high frequency. This voltage is used to power the operational amplifiers. Additionally, the zero-dropout voltage regulator that ensures a stable output voltage at the cinch connector requires a higher supply voltage to operate as well.
The power board is the only part that makes the complete system a power meter. The rest of the system is just a generic oscilloscope. By replacing the power board, the system can be converted into a different measuring device. In that case, only the power board would need to be replaced with a different board such that it forwards the value of interest towards the converter board.
ADC board
This board has two connections. It accepts an analog signal from the power board, samples it and outputs a digital bit-stream towards the hub board. We use an LTC2314-14, but any device with an SPI interface is compatible. The circuit diagram consists of two main stages, an operational amplifier that ensures a high input impedance and the ADC itself.
Some ADCs, like the LTC2314-14, have an input capacitor to sample and hold the input. To compensate for the noise produced by instantaneous charging of the input capacitor, a low pass is required in front of the ADC.
Hub board
This board interfaces with the Raspberry Pi and serves as a generic user interface housing all the LEDs and buttons. It also provides further connectors for the other modules, including the ADC converter board, the power board, and an external connector for the digital channel input.
A digital channel is an additional 1 bit of information (on/off) that is stored alongside the measured data. It is intended to simplify the task of synchronizing the measurement to external events. The hub board is responsible for inserting the digital channel into the bit-stream that comes from the converter board. The output of the converter board switches into high impedance in-between samples and, therefore, can be manipulated through the bias resistor R1. The digital channel can be measured using different sensor boards which are plugged directly into the hub. The hub also houses a comparator, to reduce the component count of such sensor boards.
License
The hardware design is licensed under Creative Commons - ShareAlike 3.0 License. More information about the license can be here.
A full text version of the license is available here.