PIC16F84 Solar Charger

25,977

Circuit Image

The previous version of this device used pulse width modulation (PWM) to control the power from the five solar panels to charge the battery bank. Under full sun conditions, the MOSFETs got a bit warm and the whole unit radiated a lot of RFI. This design uses a set of relays - one for each panel. If the controller decides the battery voltage is too low, it engages another relay; if it's too high, it drops one out. This tends to 'float' the voltage at about 14 volts as long as sufficient sunlight is available. More: The controller also implements a network style interface (open collector TTL, 9600 baud). This makes it possible to 'tweak' the charge settings using a terminal program and an RS-232 to TTL interface (coming to this website soon). If you choose to duplicate this device, you may leave out the network stuff and 'hardwire' the charge settings in software.

The circuit described operates as a solar charge controller, designed to optimize battery charging from five solar panels while mitigating issues related to heat generation and radio frequency interference (RFI). The previous iteration utilized pulse width modulation (PWM) for power regulation, which led to excessive heating of the MOSFETs and unwanted RFI emissions. The current design employs a relay-based system, where each solar panel is connected to a dedicated relay. This relay configuration allows for more efficient management of the solar input based on the battery's voltage level.

The controller continuously monitors the battery voltage. If the voltage falls below a predetermined threshold, the controller activates an additional relay to increase the solar input, facilitating faster charging. Conversely, if the battery voltage exceeds a specified limit, the controller deactivates the relay associated with one of the solar panels, effectively reducing the charging current and maintaining the battery voltage at approximately 14 volts. This floating voltage level ensures that the battery remains in a healthy state of charge without overcharging, provided that adequate sunlight is present.

In addition to its primary function as a charge controller, the circuit also incorporates a network-style interface that operates at 9600 baud using open collector TTL logic. This interface enables users to adjust charge settings remotely via a terminal program, utilizing an RS-232 to TTL converter. This feature provides flexibility for users who wish to customize the performance of the charge controller based on their specific requirements. For those intending to replicate the device, the network functionality can be omitted, and the charge settings can be hardwired into the software, simplifying the design for applications where remote adjustment is unnecessary.

Overall, the combination of relay control and a network interface enhances the functionality and adaptability of the solar charge controller, making it suitable for diverse applications in renewable energy systems.The previous version of this device used pulse width modulation (pwm) to control the power from the five solar panels to charge the battery bank. Under full sun conditions the MOSFETS got a bit warm and the whole unit radiated a lot of RFI. This design uses a set of relays - one for each panel. If the controller decides the battery voltage is too low, it engages another relay; if its too high, it drops one out.

This tends to 'float' the voltage at about 14 volts as long as sufficient sunlight is available. The controller also implements a network style interface (open collector TTL, 9600 baud). This makes it possible to 'tweak' the charge settings using a terminal program and an RS-232 to TTL interface (coming to this web site soon). If you choose to duplicate this device, you may leave out the network stuff and 'hardwire' the charge settings in software.

🔗 External reference