CN3791 Solar Panel Li-ion Battery Charger for IoT

 Here I am writing note on how to use the CN3791 IC for solar powered Li-ion Battery Charger that can be useful for IoT project like IoT Methane Emission Monitoring, Recording Project. Specifically, I will be writing about how to build the buck converter with this IC like the CN3791 module that can be purchased.

The CN3791 is a specialized PWM step-down (buck) switching battery charger controller IC manufactured by Consonance Electronics. It is primarily designed to charge a single-cell (1S) Lithium-Ion or Lithium-Polymer battery (4.2V) using a solar panel.

Its standout feature is built-in Maximum Power Point Tracking (MPPT) capability using a constant-voltage method. By adjusting its internal circuits via an external resistor divider, it clamps the solar panel's operating voltage to its maximum power point ($V_{mp}$), ensuring that you harvest the maximum possible wattage from the panel even as sunlight conditions fluctuate.

  • Input Voltage Range: 4.5V to 28V
  • Charging Current: Up to 4A (set via an external current-sense resistor)
  • Charging Stages: Trickle charge (for deeply discharged batteries), Constant Current (CC), and Constant Voltage (CV).

The following shows the CN3791 IC, the CN3791 pinout and CN3791 typical application circuit diagram.

CN3791 IC, the CN3791 pinout

CN3791 typical application circuit diagram

One can also buy CN3791 module as shown in the picture below.

CN3791 module

CN3791 Solar Powered Li-ion Battery Charging Circuit

Below is the redesigned buck converter circuit using CN3791 pwm buck converter IC with all components names and values.

Download Schematic PDF

CN3791 Solar Panel Li-ion Battery Charger circuit diagram

Below is the circuit description:

1. Resistors 

  • $R_{CS}$ (Current Sense Resistor): Value varies depending on your target current. It sets the full-scale constant current charge current ($I_{CH}$) via the formula: $I_{CH} = \frac{120\text{mV}}{R_{CS}}$. (For example, the CN3791 module board in the image above uses a R050 ($0.05\Omega$) resistor, which configures the charging current to $2.4\text{A}$). 
  • $R_1$ (LED Current Limiter): Value varies depending on your input supply voltage ($V_{CC}$) and the chosen LEDs ($D_3, D_4$) to safely limit their forward current. I used $220\Omega$ resistor.
  • $R_2$ (Loop Compensation Resistor): $120\Omega$. It connects in series with $C_4$ from the COM pin to ground to stabilize the current and voltage loops. 
  • $R_3$ & $R_4$ (MPPT Voltage Divider): Values vary depending on your solar panel. These resistors form a divider that tracks the maximum power point voltage ($V_{MPPT}$) of your panel by keeping the MPPT pin at $1.205\text{V}$. They are calculated using: $V_{MPPT} = 1.205 \times \left(1 + \frac{R_3}{R_4}\right)$.
Example calculation values of $R_3$ and $R_4$

To calculate the exact values of $R_3$ and $R_4$ for a 12V 10W solar panel example, we must use its Maximum Power Voltage ($V_{mp}$) rating, not its nominal "12V" label. Standard nominal 12V monocrystalline/polycrystalline solar panels typically feature 36 physical cells, which gives them a $V_{mp}$ of approximately $18\text{V}$. You should check the sticker label on the back of your physical panel to find the exact $V_{mp}$ number, but $18\text{V}$ is the industry standard baseline.The CN3791 regulates the MPPT pin precisely to $1.205\text{V}$. The formula from the datasheet is:$$V_{mp} = 1.205 \times \left(1 + \frac{R_3}{R_4}\right)$$Assuming your panel has a standard $V_{mp} = 18\text{V}$ and choosing a common base resistor value for $R_4 = 10\text{k}\Omega$:$$18 = 1.205 \times \left(1 + \frac{R_3}{10\text{k}}\right)$$$$\frac{18}{1.205} - 1 = \frac{R_3}{10\text{k}}$$$$13.937 = \frac{R_3}{10\text{k}} \implies R_3 \approx 139.37\text{k}\Omega$$Recommended Standard Resistor Values:$R_4 = 10\text{k}\Omega$ (1% tolerance)$R_3 = 140\text{k}\Omega$ (1% tolerance)(This sets the target tracking voltage to roughly $18.07\text{V}$, which perfectly matches your panel).

2. Capacitors

  • $C_1$ (Input Filter Capacitor Bank): To adequately absorb input switching ripple current, it is recommended to parallel up to three capacitors: An Electrolytic capacitor for low-frequency filtering. A Ceramic capacitor rated from $1\mu\text{F}$ to $10\mu\text{F}$. A High-frequency capacitor rated from $47\text{nF}$ to $1\mu\text{F}$. 
  • $C_2$ (Gate Driver Regulator Bypass): $100\text{nF}$. Connected between the VG and VCC pins to bypass the internal gate driver voltage regulator. 
  • $C_3$ (Output Filter Capacitor Bank): Determines output ripple and load transient stability. It is best to parallel: A $10\mu\text{F}$ Electrolytic capacitor for low-frequency filtering. A Ceramic capacitor rated from $1\mu\text{F}$ to $10\mu\text{F}$. 
  • $C_4$ (Loop Compensation Capacitor): $220\text{nF}$. Connected in series with $R_2$ to the COM pin. 

3. Inductor

  • $L$ (Buck Converter Inductor): Value varies based on your maximum input voltage and charging current. To keep ripple current within a reasonable range, the minimum inductance must satisfy the equation: $L > 5 \times (V_{CC} - V_{BAT})\,\mu\text{H}$. (A typical starting baseline value often used on commercial modules is $10\mu\text{H}$, labeled 100 as seen on your physical board image). 

4. Diodes & Active Switching Components

  • $M_1$ (Main Pass Power Switch): A Logic-Level P-Channel Power MOSFET. Examples listed in the datasheet include CN2305, 4459, 4435, 9435, or 3407A. 
Alternative P-Channel MOSFETs
  • IRF4905: A highly common, very robust TO-220 P-channel MOSFET natively available in Proteus. It has an ultra-low $R_{DS(on)}$ and will simulate perfectly without getting stuck.
  • IRF9540: Another standard, generic TO-220 P-channel MOSFET found in the basic Proteus library. It easily supports the voltage and current requirements for a 10W panel panel setup.
  • $D_1$ (Blocking Diode): A Schottky Diode like 1N5819 (1A, 40V Schottky) or 1N5822 (3A, 40V Schottky). It prevents battery current from leaking back to the input when there is no sun. This diode is optional and can be omitted if a tiny $30\mu\text{A}$ reverse sleep current is acceptable in your design. 
  • $D_2$ (Catch / Free-Wheeling Diode): A Schottky Diode like 1N5819 (1A, 40V Schottky) or 1N5822 (3A, 40V Schottky). Its current rating must match or exceed your programmed charge current limit, and its voltage rating must exceed the maximum expected solar input voltage. 
  • $D_3$ & $D_4$ (Status Indicator LEDs): Standard low-power indicator LEDs. $D_3$ indicates charging status (typically Red), and $D_4$ indicates charge termination status (typically Green).
So, these are the components needed to build a CN3791 buck converter based Solar Panel Li-ion Battery Charger for IoT applications. Using this you can then power up IoT microcontroller like the LilyGo T-SIM7600G-H(ESP32+SIM7600G+GPS all-in-one).

Related

Post a Comment

Previous Post Next Post