Embedded system market growth is fast in the last couple of decades, especially with the current demand for embedded processing to support IoT services. However, to power billions of IoT devices and embedded systems is a challenge. Energy harvesting has emerged as a promising power supply alternative for embedded systems, enabling systems to convert renewable energy sources in the surrounding environment (solar, wind, thermal, kinetic energy, etc.) to electrical energy. Nevertheless, these renewable energy sources often exhibit temporal and spatial variations, which cause uncertainties and fluctuations in the energy supply of the systems. Furthermore, the complex non-ideal characteristics of harvesting circuit components such as converters and energy storage make it even more challenging for energy management. In this thesis, I propose a harvesting-aware and quality-aware energy management middleware framework for solar-powered embedded systems, modeling them as complete Cyber Physical Systems, optimizing performance (Quality of Service), and tackling their mentioned challenges.
The energy management middleware framework exploits energy harvesting history, patterns, and prediction algorithms to extrapolate solar harvesting in the next harvesting period. The prediction is used by an offline algorithm to assign QoS for each time slot in the next harvesting period. The objective is to maximize total QoS while meeting energy harvesting constraints. An online adaptation phase is employed to adjust QoS assignment if actual harvesting profile deviates from offline prediction. This thesis explores the notion of application QoS and QoS adaptation in two middlewares for two types of systems: communication-intensive and computation-intensive. In communication-intensive systems, such as wireless sensor networks, where majority of tasks (and energy consumption) are sending and receiving messages, we exploit the tolerance to data inaccuracy in data transmission. In computation-intensive systems such as real-time systems, application QoS can be expressed as quantity and distribution of real-time task completion. In particular, we target firm real-time systems with adaptive QoS. Furthermore, energy harvesting embedded systems require energy storage to smooth out fluctuations and store energy for long term operation. Two types of commonly used energy storage elements are batteries and supercapacitors. Frequent charging and discharging accelerate the aging of batteries while supercapacitors suffer from high leakage. Therefore in this middleware, in orchestration with QoS adaptation, we propose algorithms to keep battery aging under threshold and reduce leakage from supercapacitors.
Lastly, as an alternative to prediction and deterministic approach above, we explore stochastic modeling using Finite State Markov Chain and propose a novel unified stochastic model and optimization for solar-powered embedded systems. We observe that stochastic model improves the system’s ability to capture and adapt to variations in energy harvesting supply and application demand.