A survey of multi-source energy harvesting systems