Recent advances of triboelectric, piezoelectric and pyroelectric nanogenerators