Here is a production ready solar powered street light. It has been tested over the past 4 years in order to achieve the optimal lead acid battery life cycle. It has served as a test bench for AVR acorn kernel micro operating system - highly optimized kernel for AVR devices written in assembler only. It is open source an actively developed by the community.
Step 1: Circuit
The project is tailored to utilize photo-voltaic panels of up to 25V/5A , which is 120W maximum output power. In respect to the solar power availability, lead acid battery 12V/50Ah was chosen. The circuit design is based on AVR Mega88 running megaAcorn kernel.
The kernel monitors the PV voltage, sun light availability, lead-acid battery charge/discharge life cycle and load(street light) balance. The load(street light) is turned on at dusk and stays on until one of the 2 happens: the battery discharge crosses the voltage threshold barrier or the sun light is detected.
Charge cycle is PWM controlled - battery is considered fully charged at 13.5V and disconnected from charge cycle. Sleep CPU mode is utilized to reduce control board power consumption.
Step 2: PCB Board
Circuit, pcb board and gerber design were created by myNetPCB - small and light weight open-source software.