Power management

Managing power is a very broad topic, and spans software and hardware. It is important to understand the role of power management in a successful IoT deployment, and how to manage power efficiently for remote devices and long-lived devices. The architect must build a power budget for the edge device, which includes:

  • Active sensor power
  • Frequency of data collection
  • Wireless radio communication strength and power
  • Frequency of communication
  • Microprocessor or microcontroller power as a function of core frequency
  • Passive component power
  • Energy loss from leakage or power supply inefficiency
  • Power reserve for actuators and motors

The budget simply reflects the sum of these power contributors subtracted from the source of power (battery). Batteries also do not have a linear power behavior over time. As the battery loses energy capacity while discharging, the amount of voltage will drop curvilinearly. This poses problems for wireless communication systems. If the battery drops below a minimum voltage, a radio or microprocessor will not reach the threshold voltage and brown out.  

For example, the TI SensorTag C2650 has the following power characteristics:

  • Standby mode: 0.24 mA
  • Running with all sensors disabled: 0.33 mA
  • LEDs
  • All sensors on at 100 ms/sample data rate and broadcasting BLE: 5.5 mA:
    • Temperature sensor: 0.84 mA
    • Light sensor: 0.56 mA
    • Accelerometer and gyros: 4.68 mA
    • Barometric sensor: 0.5 mA

The TI SensorTag uses a standard CR2032 coin cell battery rated at 240 mAh. Therefore, the maximum life is expected to be about 44 hours. However, the rate of decline changes, and is not linear for battery-based devices, as we will see when we cover Peukert's capacity.

Many power management practices are employed, such as clock gating components not being used in silicon, reducing the clock rates of processors or microcontrollers, adjusting the sensing frequency and broadcast frequency, back-off strategies to reduce communication strength, and various levels of sleep modes. These techniques are widely used in the computing business as a general practice.  

The techniques described here reflect reactionary power management techniques. They try to minimize energy usage based on dynamic voltage, frequency scaling, and other schemes. New techniques to consider on the horizon include approximate computing and probabilistic design. Both of these schemes rely on the fact that absolute precision is not necessary at all times in a sensor environment running at the edge, especially in use cases involving signal processing and wireless communication. Approximate computing can be done in hardware or software, and simply reduces the level of precision in integers when used with functional units such as addresses and multipliers (for example, the value 17,962 is fairly close to 17,970). Probabilistic design realizes many IoT deployments can tolerate certain degrees of faultiness to relax design constraints. Both techniques can reduce the number of gates and power to an almost exponential drop over regular hardware designs.