Author Topic: Adjusting 30Vin LDO output via I2C or shift register  (Read 1715 times)

0 Members and 1 Guest are viewing this topic.

Offline ricko_ukTopic starter

  • Super Contributor
  • ***
  • Posts: 1158
  • Country: gb
Adjusting 30Vin LDO output via I2C or shift register
« on: May 23, 2020, 09:55:38 pm »
Hi,
I have a variable LDO whose i/p voltage can vary from 3V to 30V and the output needs to be set to a user-defined value via a micro. It needs to be very low noise to PWM or similar switching techniques would not be an option (the micro is placed remotely and only works during setup).

In order to control the voltage feedback pin (ADJ pin) I was going to use a simple digital pot but all the digital pots I have found either don't go so high (30V) in voltage or those that do don't operate below 10V (ish).

Another options I thought about is to have a serial to parallel output (or a I2C port expander) with resistors arranged in a ladder or similar configuration. But that would then require additional transistors to avoid the voltage on the pins going above the 5V of the IC limits. 

Any suggestion for a simple circuit that preferably uses I2C and allows setting the output to anywhere from 3 to 30V with around 30 or more steps?

Thank you :)
« Last Edit: May 24, 2020, 12:02:43 am by ricko_uk »
 

Offline profdc9

  • Frequent Contributor
  • **
  • Posts: 334
  • Country: us
Re: Adjusting 30Vin LDO output via I2C or shift register
« Reply #1 on: May 23, 2020, 10:27:51 pm »
You could use PWM (RC filtered) analog output to the terminal of an noninverting rop-amp with a pass transistor (TIP41C for example) to increase the amount of current that can be sourced.   The feedback network on the op-amp can set the relative voltage scale output as compared to the micro output voltage.  A compensation capacitor should probably be placed in the feedback, something like 100 pF is probably sufficient.

That would be a relatively simple solution.   Something simple like a LM358 has a supply rail up to 32 V, so just about where you could get 30 V out of the op-amp below the top rail.



 

Offline ricko_ukTopic starter

  • Super Contributor
  • ***
  • Posts: 1158
  • Country: gb
Re: Adjusting 30Vin LDO output via I2C or shift register
« Reply #2 on: May 23, 2020, 10:33:09 pm »
Thank you profdc9,
that's a nice solution but because of the low noise requirements cannot have any switching circuits. For the same reason the micro is placed remotely and only operates during the setup (I just updated the OP).

Any other suggestions? Perhaps using a high-voltage op-amp in some way?

Thank you :)
 

Offline profdc9

  • Frequent Contributor
  • **
  • Posts: 334
  • Country: us
Re: Adjusting 30Vin LDO output via I2C or shift register
« Reply #3 on: May 24, 2020, 02:13:12 am »
Yeah, I modified a popular CC/CV power supply design so that it is programmable and the output can be controlled with a microcontroller.  I attached the schematic, and the project is at

http://www.github.com/profdc9/LinearPS

The TL35072P is able to go up to 44 volts.  If you draw a high current with a low voltage output, you will need to heatsink well or use multiple pass transistors to tolerate all that heat.  Check out the project to see how I did that.

You could use a real DAC if you want a constant voltage level.
« Last Edit: May 24, 2020, 02:44:00 am by profdc9 »
 

Offline David Hess

  • Super Contributor
  • ***
  • Posts: 17428
  • Country: us
  • DavidH
Re: Adjusting 30Vin LDO output via I2C or shift register
« Reply #4 on: May 24, 2020, 06:26:05 am »
In order to control the voltage feedback pin (ADJ pin) I was going to use a simple digital pot but all the digital pots I have found either don't go so high (30V) in voltage or those that do don't operate below 10V (ish).

Instead of being part of the output divider, typically the DAC in whatever form controls a current which is injected at the adjustment pin.
 

Offline ricko_ukTopic starter

  • Super Contributor
  • ***
  • Posts: 1158
  • Country: gb
Re: Adjusting 30Vin LDO output via I2C or shift register
« Reply #5 on: May 24, 2020, 01:50:04 pm »
I thought of the solution in the attached schematic. Would it work reliably?
(The zener is just as precaution to protect the digital pot pin because it can only accept a max of 5V in.)

Thank you David, can you please explain further your solution about controlling the current injected in the ADJ pin? How do I create a control loop that relates the regulator's output voltage to the current injected in the ADJ pin?

I am using the MIC29302 ( http://ww1.microchip.com/downloads/en/DeviceDoc/MIC29302A.pdf ) and the ADJ pin looks like is just an input into an amp/comp. How does the solution you suggested work?

Thank you
« Last Edit: May 24, 2020, 02:00:38 pm by ricko_uk »
 

Offline MasterT

  • Frequent Contributor
  • **
  • !
  • Posts: 851
  • Country: ca
Re: Adjusting 30Vin LDO output via I2C or shift register
« Reply #6 on: May 24, 2020, 02:26:07 pm »
MCP41HV51.
 

Online SiliconWizard

  • Super Contributor
  • ***
  • Posts: 15800
  • Country: fr
Re: Adjusting 30Vin LDO output via I2C or shift register
« Reply #7 on: May 24, 2020, 03:09:05 pm »
A typical approach is to control the feedback network adding a series resistor to the ADJ pin (while keeping a resistive divider to Vout), and driving this resistor with a voltage DAC.
(Vref is the internal reference of the regulator, iADJ is the typical current drawn from the ADJ pin, which can often be neglected.)
This approach is usable with linear and (usually) switching regulators as well.

Select resistors values appropriately. The control voltage can be restricted to a low voltage.
One additional benefit is that if Vctrl is or can be high impedance at any point (for instance, upon power-on), the output voltage will still be controlled via the resistive divider, and can be set to a predefined value.

« Last Edit: May 24, 2020, 03:15:42 pm by SiliconWizard »
 

Offline ricko_ukTopic starter

  • Super Contributor
  • ***
  • Posts: 1158
  • Country: gb
Re: Adjusting 30Vin LDO output via I2C or shift register
« Reply #8 on: May 24, 2020, 04:02:47 pm »
SiliconWizard, once again, thank you!! It doesn't get any simpler than that!! :)

Thank you all for all useful feedback and suggestions. :) :)
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf