5
\$\begingroup\$

I bought a solar controller for my 192V solar system that did not work as advertised (instead of MPPT, works with ON-OFF cycles - Chinese ripoff - but that is offtopic).I want to redesign the control and power stage to make it a real PWM controller. I came up with the following schematic:

enter image description here

The PV array has a maximum voltage of 340V and maximum point at 270V. The actual controller connects the PV directly to the battery until the voltage reaches 232V. Then it cuts the connection until the voltage drops to 216V when it connects the PV back. Cycle repeats. That is not fully charging the battery. By using a variable duty cycle (generated with an Arduino), I want to reproduce the 3 stage battery charging method.

Now be gentle with me, this is my first project and all the help is apreciated. Let's jump over the "WARNING: High Voltage message". Is taken into account :)

The snubber from the IGBT is made after the ones my controller has. The only difference is the controller has no gate resistors/diodes, no resistors between gate and source and has a big 1uF/450V capacitor between the PV+ and B+.

Regarding IR2110, I know using it as High Side driver requires a bootstrap circuit. Since in the first stage, the IGBTs will be continuously closed (100% Duty Cycle), I want to use an isolated dual power supply (B1 - powered from the 192V battery) to power the Arduino (5V) and IR2110 (5V/12V).


The frequency I tested the circuit with is around 100Khz. It works good until I apply a big load (I applied 24V on the PV side and 2 halogen car light bulbs in series on the output, with a variable duty so the output is around 13V), moment when, randomly, the Arduino controller either resets or locks. I am stumped ! I have no idea why this happens. If the load is smaller (like trying to charge a 12V battery), the circuit works without any issues.


Seems the resets/locks of the uC happened because of high ground bounce. I was getting between PV- and B- a potential of over 1000V (going over the scale on my digital voltmeter). I added C2 and things calmed down.


I have a strange reading on my oscilloscope, between point A and B, that I have no idea what it means. Is this reading OK ? Happens when Duty Cycle is under 20-30%. Frequency 100Khz.

enter image description here enter image description here

Thank you !

\$\endgroup\$
6
  • 2
    \$\begingroup\$ Start with a simulation to make sure you have all the bases covered. Keep doing that until you are happy. If necessary model every part (such as the IR2112) with strong attention to detail. Try as many scenarios as possible. Go to bed. Wake up with new scenarios to try. Do this for several days then build a prototype. \$\endgroup\$
    – Andy aka
    Jul 21 '16 at 17:46
  • 2
    \$\begingroup\$ You need an inductor in your circuit. It sounds like your goal is to maintain the solar panel voltage at a specific level (the maximum power point). So the basic idea is to build a buck converter, then increase duty cycle when PV+ is > Vmpp. And vice-verse. \$\endgroup\$
    – mkeith
    Jul 23 '16 at 16:28
  • \$\begingroup\$ I am not planning to make a MPPT controller. I only want PWM. The PV Vmp is 240V so there is no actual gain in using a buck converter. The goal is to maintain a constant battery voltage in the absorb and float stages. \$\endgroup\$
    – Mihai
    Jul 24 '16 at 6:43
  • 2
    \$\begingroup\$ It adds complexity, but an inductor and flywheel diode take the PWM and change it into genuine linearly variable battery feed. If the input IS 300V 30A max as the diagram says then dumping a large cap into the battery via IGBTs is going to be interesting. What IS actual PV Vmp, Imp, Voc? \$\endgroup\$
    – Russell McMahon
    Sep 19 '16 at 7:49
  • \$\begingroup\$ Mihai - did you build this or try it? The 1 uF from PV+ to B+ does not seem like a good idea. What they had in mind is not obvious. This would charge when IGBTs were off and discharge INTO them at turn on. If PV went to 300V Voc and battery is at say 200V then 1uF energy = only 0.005J so at 60 HZ = 0.3W so not much heating effect. But, purpose is obscure unless they expect an inductive load. Adding an inductor in B+ on battery side of IGBTs and a diode to ground makes this a "proper" buck converter and allows PV panels a much smoother treatment. \$\endgroup\$
    – Russell McMahon
    Sep 19 '16 at 11:24
1
\$\begingroup\$

MPT chargers hunt for max VI generated but the open loop method of setting PV voltage to ( I recall ) 80+/-5% , where it drops with solar E input and changes with ambient temp.

You indicated "The PV array has a maximum voltage of 370V and maximum point at 300V. The actual controller connects the PV directly to the battery until the voltage reaches 232V. Then it cuts the connection until the voltage drops to 216V when it connects the PV back"

Thus Voc=370Vdc est. Vpmt=80% of 370 = 296V is a convenient duty cycle to use for a Fixed PWM. A tracking design senses the dv/dt while sweeping PWM and has a control loop to track peak.

Then you need another buck charger regulator that has CC and CV controls with UVP protection in case Vpwm drops from excess demand-supply current. This regulates the CC target level with a 50mV current shunt R or high side current sense IC.

Often each PV panel has its own PWM incase of partial shadows, as the effective Series impedance of series PC cells will rise rapidly when a solar shadow occurs.

Let's see what your minimum PV impedance is.

What we know.

  • Vpmt= 200V

What we don't know

  • Pmax of PV array, RdsOn of MOSFETs, battery technology, capacity etc.etc.

  • Let's pick a number like 40kW then ESR of the "quasi-current source" PV panel is Pd=V^2/ESR

    • so ESR= 1 Ω and Imax = 40kW/200V=200A
  • how to choose RdsON of MOSFETs for CC mode ?

    • You don't want massive heatsinks or excessive Tj rise so a rule of thumb is <1% loss per device. or RdsOn of 10 mΩ

These are just guidelines.

Burp mode charging (on-off) Using a smoothing Choke in series, this is basicially another method of DC-DC conversion using hysteresis and a choke that is rated > Imax and impedance of choke determines the switching frequency you need such that it is much greater than the ESR of the PV This ends up being in the 10kHz to 1MHz range. If currents are too high then a boost regulator is used to raise PV DC-DC to a higher voltage like 800V, for the intermediate level then Buck to battery in order to minimize conduction losses in cables and MOSFETs but at the expense of higher performance HV Silicon Nitride FETS or IGBTs.

\$\endgroup\$
2
  • \$\begingroup\$ I think 200V is a high enough voltage for me. I decided to work at higher voltages (than standard 12-48V that usual solar charge controllers use) because are bigger losses to drop the 300V PV voltage to 48 then raise it back to 230V AC with the inverter. I also don't feel good in having battery cables as thick as a finger to cover the >100A current that is required for my 5000W inverter. Using 192V battery system, I have only 25A current at maximum inverter power. \$\endgroup\$
    – Mihai
    Sep 21 '16 at 20:28
  • \$\begingroup\$ 5kW no problem , wise choice. Make sure s.g. in each cell or battery ESR is monitored routinely and recorded monthly or annually. If more than 2% mismatch. leads to accelerated cell wear at full charge, then active balancers required. \$\endgroup\$ Sep 21 '16 at 20:49
0
\$\begingroup\$

The 1 uF from PV+ to B+ does not seem like a good idea.
What they had in mind is not obvious - unless they were anticipating an inductive load with no other spike protection.

This capacitor would charge when IGBTs were off and dissipate energy INTO them at turn on. If PV went to 300V Voc and battery is at say 200V then 1uF energy = only 0.005J so at 60 HZ = 0.3W so not much heating effect. But, purpose is obscure unless they expect an inductive load.

Adding an inductor in B+ on battery side of IGBTs and a diode to ground (thus dealing with the current so no inductive spike appears) makes this a "proper" buck converter and allows PV panels a much smoother treatment. Otherwise the 330uF 400V dumps into the batteries in pulses. Doing this allows either proper MPPT with due control or optimised panel use by adjusting PWM duty cycle.

Is the PWM 60 Hz as shown? - that's very low frequency for most applications.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.