  The Internet of Things (IoT) has important applications in our daily lives
including health and fitness tracking, environmental monitoring and
transportation. However, sensor nodes in IoT suffer from the limited lifetime
of batteries resulting from their finite energy availability. A promising
solution is to harvest energy from environmental sources, such as solar,
kinetic, thermal and radio frequency, for perpetual and continuous operation of
IoT sensor nodes. In addition to energy generation, recently energy harvesters
have been used for context detection, eliminating the need for additional
activity sensors (e.g. accelerometers), saving space, cost, and energy
consumption. Using energy harvesters for simultaneous sensing and energy
harvesting enables energy positive sensing -- an important and emerging class
of sensors, which harvest higher energy than required for signal acquisition
and the additional energy can be used to power other components of the system.
Although simultaneous sensing and energy harvesting is an important step
forward towards autonomous self-powered sensor nodes, the energy and
information availability can be still intermittent, unpredictable and
temporally misaligned with various computational tasks on the sensor node. This
paper provides a comprehensive survey on task scheduling algorithms for the
emerging class of energy harvesting-based sensors (i.e., energy positive
sensors) to achieve the sustainable operation of IoT. We discuss inherent
differences between conventional sensing and energy positive sensing and
provide an extensive critical analysis for devising new task scheduling
algorithms incorporating this new class of sensors. Finally, we outline future
research directions towards the implementation of autonomous and self-powered
IoT.
