Molecular nanogenerators