An efficient maximum power point tracking controller for a standalone photovoltaic system