Distributed Secondary Control of a Microgrid With A Generalized PI Finite-Time Controller