Distributed Maximum Power Point Tracking of Photovoltaic Arrays