# Adjusting output voltage feedback with a Howland Current Pump

I'm designing a variable bench power supply using the LT3790 IC. My requirements were adjustable from 1 V to 24 V in 10 mV steps, and a current limit adjustable from .05 to 5 A in steps of 5 mA. I wanted a way to vary the output voltage programmatically, so I intended to use digital potentiometers. Their price and resolution/tolerance limitations made me look for other solutions. I came across using a voltage controlled current source into the feedback pin of the IC. I'd never done something like this before, so I wanted to get it working in simulation before laying out a board and getting it manufactured.

The control loop internal to the IC uses 1.2 V typical as its reference. At that voltage or higher on the feedback pin and there's no switching activity. I believe the duty cycle changes as it gets closer to ground. Anyway, I needed a way to accurately manipulate what output voltage of the supply would result in 1.2 V on the feedback pin. I ultimately came up with the circuit above, but I'm not entirely sure how it works.

It's a voltage controlled current source using the output voltage of the supply, and a 12-bit DAC output as inputs. I originally had the $$\V_\text{DAC}\$$ hooked up to the negative input of the Howland pump, and that 190k/10k divider from the supply hooked up to the positive input. Then I had the "load" resistor for the pump providing the actual voltage for the feedback pin of the IC referenced to ground. This gave me a negative voltage on the FB pin for some reason. I decided to try referencing the resistor to the DAC output instead of ground, and grounding the negative input of the Howland pump. The circuit now largely works as intended in simulation, but I'm not entirely sure why. It is using the ideal op amp models provided by LTspice, and I don't think the voltage source in LTspice would accurately represent a DAC output.

Is this something that would actually work if built? Is there a simpler way to achieve what I'm trying to do here?

• Take a look at my answer here. It's not a current-source-based manipulation but is a working solution. Aug 3 at 6:42
• I don't understand why you added the ltspice tag but gave us a doodle as a schematic (instead of a screenshot of LTSpice), while talking about designing? Aug 3 at 8:24
• @aconcernedcitizen, the ltspice tag is there because the doodle is what I have working in ltspice, as noted by my post. I wasn't sure if it's working because of how ltspice simulates or because it actually is a valid configuration. I posted this on my phone from my bed at night because I couldn't stop thinking about the problem, hence the doodle. Aug 3 at 11:46