-
Changing the Architecture
06/16/2015 at 05:43 • 0 commentsI was looking over the schematics recently looking for ways to reduce cost, and it occurred to me that the current topology isn't ideal.
Currently, I'm implementing a buck regulator using the PIC16F1823. The MCU is driving the IR2302 bridge controller, which in turn runs a pair of NFETs (one for the high side, one for the low side). I did this initially since I had envisioned the MPPT controller operating at high voltage, but realistically except for a few exotic panels the highest voltage solar panel I can seem to find are 24V (I do own two 50V panels, but those are rarities to say the least).
These's also a catch with using the IR2302. The VCC voltage for the part is 5-15V, and in order to save on cost, I have a 5V LDO powering the entire board (MCU and IRF2302). While this works well it does prevent the controller from operating with the large number of solar panels who's maximum power point voltage is lower than 5V. I've thought of keeping the IR2302, use a 3.3V LDO (to lower the controller's minimum operating voltage) and add a voltage doubler charge pump to power the IR2302, but that setup add unnecessary cost since...
...I'm realistically dealing with solar panels that won't have a open circuit voltage higher than 15-16V-ish, I can completely dispense of the IR2302 and replace the NFET pair with a PFET-NFET pair. As long as I have the proper protection to keep the VGS voltage in spec, I should be in good shape. To cut cost, I could remove the protection and get a PFET with a sufficiently high max VGS voltage to cover the range of interest (max VGS of 20V would work well).
Removing the IR2302 also allows me to lower the minimum voltage down to something pretty great: hopefully down to 1.8V with a single LDO. And with the 100% duty cycle the PFET-NFET pair affords me, I could realistically run the MPPT controller to a voltage pretty close to the 1.8V mark. This gives me a range of 1.8V-20V-ish, which is considerably more suitable.
I did a preliminary search and the IRF7507 seems to be like the right PFET-NFET pair (and at $0.76, it's nothing to scoff at), although I'd be open to suggestions.
This brings me to the next crutch in this design. If I'm operating at 1.8V, I think I'll need to change microcontrollers. Yes, the PIC16LF1823 does work at 1.8V, but it can't be programmed with a VDD voltage lower than 2.7V, which complicates the circuit and adds cost. I've been eyeing the PIC16LF1705 (can trigger the ADC off a timer), but the same problem exists. I might end up choosing the ATSAMD10C13A, which has similar functionality (namely PWM circuitry with dead-time insertion and halt on comparator trip). It's a little more expensive, but it operates down to 1.62V and has a single cycle multiply instruction, helpful for running the PI control loop. I'm still on the fence regarding MCU selection. I'd really like to stick with something that's cost sensitive.
Lastly, to cut cost, the current MPPT controller has no current sense. The maximum power point is achieved by measuring the solar panel's open voltage and ramping up the PWM duty cycle until the panel's voltage reaches 80% of the no-load voltage. While this works well, the circuit has no over-current protection (OCP), which makes me nervous. The current implementation has a fuse in line with the inductor to address over current conditions, but it's not a proper long term solution. Realistically, the MPPT controller should protect itself.
And so I'm on the lookout for a high-side current sensor that doesn't break the bank. Ideally I would want a current sensor on the high-side and low-side of the buck regulator, but since I'm trying to save on cost, and current sensors are expensive, I'd rather go with a high-side and add the measured current data to the MPPT algorithm. This would allow me to find the true maximum power point, as opposed to the current solution (which is a mere approximation). I'm eyeing the TSM9634 at the moment, but am open to suggestions.
Anyways, this is what's going through my head. More to come.