Power supply with arbitrary voltage waveform and variable series resistance - Page 1
Forum section: electronics / projects

author: nihial
author_rank: Regular Contributor
timestamp: March 12, 2020, 09:49:23 pm
content: Hi,I'm trying to build a power supply that has the following characteristics :Arbitrary voltage waveformVariable series resistorHighest output voltage 30VMaximum current 20AFor the arbitrary voltage waveform generation, I was thinking about a arbitrary waveform generator driving a power op amp.The variable serie resistor however is giving me problems.The idea is to use a fet as a variable resistor but I have issues with the feedback network.R_mos is found to be : R_mos = (Vcc-V_Ru)/I = (Vcc-V_Ru)/(V_Ru-V_Rl)*RThus since R is a constant R_mos is a ratio of two voltages, and I don't know how I can translate that into a voltage to compare with a reference voltage that would be an image of the wanted resistance value.Bandwith doesn't need to be very high I think a few kHzcan do the trick.Any ideas are welcome I don't see an analog solution with my current knowledge

author: james_s
author_rank: Super Contributor
timestamp: March 13, 2020, 01:23:54 am
content: Think of what a series resistor is actually doing, it's limiting the current through the load by dropping the excess voltage. You might look at the schematic for the vector monitors used in some of the old arcade games like Asteroids or Tempest, since beam deflection is proportional to current through the yoke, they use a deflection amplifier that takes its negative feedback from a current sense resistor between the bottom end of the yoke winding and ground. If you put something in the feedback path to vary the gain on this signal it should be possible to control the current limit.Maybe you can provide a few more details on what exactly you're trying to achieve?

author: duak
author_rank: Super Contributor
timestamp: March 13, 2020, 03:51:22 am
content: I've attached a schematic of a generalized circuit that should do what you want. Please excuse the utter crudity. It doesn't show parts needed for stability or for protection.Ignoring U2 for now, opamp U1 and FET M1 form a classical voltage regulator where the output voltage is defined by the setting of R1 - Vset. My idea is that adding a resistor in series with its output is the same as reducing its output voltage as a function of the output current. This is done by U2, an instrumentation amplifier (INA) that senses the output current and produces a voltage to the Error Amplifier of -Iout x R1 x AV + Vset. The output resistance of the power supply will be R1 x AV and is independant of Vset. Please note that this is a feedback loop that's enmeshed within another one and it may be difficult to stabilize with high values of AV.

author: ivaylo
author_rank: Frequent Contributor
timestamp: March 13, 2020, 04:31:47 am
content: The 20A/30V requirement makes it a 600W device. The Kepco BOP series PSUs meet all other requirements but this (including modulating the output). Highest power class is 400W and those weigh 100lbs+...

author: TheUnnamedNewbie
author_rank: Super Contributor
timestamp: March 13, 2020, 07:46:52 am
content: Does it have to be a linear supply? What bandwidth do you need?It could be possible to do this with a switching supply to make it not need 50 kg of heatsinks.

author: nihial
author_rank: Regular Contributor
timestamp: March 14, 2020, 09:35:50 pm
content: I wasn't aware of the existence of those PSUs this could maybe help thank you for the informationQuote from: ivaylo on March 13, 2020, 04:31:47 am

author: nihial
author_rank: Regular Contributor
timestamp: March 14, 2020, 09:37:35 pm
content: It doesn't necessarly needs to be linear.Bandwidth wise I think 1-10MHz will be more than enoughQuote from: TheUnnamedNewbie on March 13, 2020, 07:46:52 am

author: nihial
author_rank: Regular Contributor
timestamp: March 14, 2020, 10:06:47 pm
content: I'll try to understand your circuit, I think I see the idea I just need to think about it.Quote from: duak on March 13, 2020, 03:51:22 am

author: nihial
author_rank: Regular Contributor
timestamp: March 14, 2020, 10:15:21 pm
content: Thanks to you guys I see a few options I could look into to solve my problem :The Kepco BOP series PSUsA circuit like the one given by duak modified to get a variable gainAn analog divider (https://www.analog.com/en/products/analog-functions/analog-multipliers-dividers.html) to use with my derived formula

author: David Hess
author_rank: Super Contributor
timestamp: March 15, 2020, 12:29:30 am
content: Quote from: nihial on March 12, 2020, 09:49:23 pmThat means a class-ab output stage like an audio amplifier would use.QuoteVariable output resistance is sometimes used to match an output impedance while maintaining higher voltage compliance as if the output resistance was lower. The way this is done is to include a fixed low value series resistor and then add controlled positive feedback around it to emulate a higher output resistance. Howland current pumps do this to maximize output resistance and the same configuration can be used to create a finite adjustable output resistance.

author: duak
author_rank: Super Contributor
timestamp: March 15, 2020, 04:45:57 am
content: Nihial,You have changed your required bandwidth from a few kHz to 1 - 10 MHz, is this correct?When you said power supply, I understood that to be 0 to 30 V. Is this correct or do you mean +/- 30 V? My scheme can handle bipolar voltages with the appropriate driver stage.The Instrumentation Amplifier can be replaced by an AD734 multiplier to give a variable output impedance providing its input and output voltages are scaled to operate it within its linear region. I used an INA to show the idea of variable output resistance as simply as possible. I should have been more clear in that the gain of the INA sets the output impedance. Please note that the AD734 will require voltage dividers to reduce the voltage applied to its inputs to avoid damage.A Howland Current Pump is a more elegant circuit but harder to understand. Hopefully David could help out here; my math has disappeared.Somewhere I have a data sheet and application note from a company called Comlinear that made a part called the CLC560 based on current feedback that could have its output impedance set by one or two resistors. It was such an intriguing concept that I breadboarded one to see if it would work as an output stage for a Direct Digital Synthesizer I was building for myself. Comlinear was bought by National that in turn was bought by TI and I couldn't find any more information. I did find that Fairchild and Exar made them as the KH560:https://www.digchip.com/datasheets/download_datasheet.php?id=476423&part-number=KH560https://www.maxlinear.com/ds/kh560_ds.pdfI mention this part because the data sheet gives enough information to design an output stage with a variable output resistance. The active part of the circuit uses a few transistors, some current mirrors and is amenable to MHz bandwidths.BTW, while looking for this part I ran across the history of Comlinear. A fellow by the name of David Nelson came up with the CFA while working at hp developing Arbitrary Waveform generators. He and others formed Comlinear to develop the idea as a product.

author: David Hess
author_rank: Super Contributor
timestamp: March 17, 2020, 11:19:20 pm
content: Quote from: duak on March 15, 2020, 04:45:57 amThere is no need for me to do the math when someone else has done it better.Today the technique I described is called "active termination" and it does exactly what is needed. I have used it in the past for exactly the reasons described in the article here:https://www.eetimes.com/active-termination-reduces-high-speed-interface-loss/The problem now is that a variable resistance must be synthesized to control the positive feedback but at least the resistance is grounded on one end.

author: nihial
author_rank: Regular Contributor
timestamp: March 19, 2020, 01:07:16 pm
content: Quote from: duak on March 15, 2020, 04:45:57 amThe more the better 1-10MHz would be much more than I need, in practice 100kHz should be enough.Quote from: duak on March 15, 2020, 04:45:57 am[0 30]VQuote from: duak on March 15, 2020, 04:45:57 amI was just tired when I read your post it became clearer after a night of sleepQuote from: duak on March 15, 2020, 04:45:57 amInteresting stuff, I see the idea behind it

author: nihial
author_rank: Regular Contributor
timestamp: March 19, 2020, 03:45:22 pm
content: Quote from: David Hess on March 17, 2020, 11:19:20 pmThat's an interesting circuit, I rarely play with opamps so the maths burns a little bit my eyes but the concept is interesting. I began to work with duak's circuit as a base but I'll look at that circuit when I'm done

author: nihial
author_rank: Regular Contributor
timestamp: March 19, 2020, 03:56:37 pm
content: Once I managed to find a way ton control the amplifier's gain with a voltage I'm done I think

author: David Hess
author_rank: Super Contributor
timestamp: March 22, 2020, 04:45:20 am
content: Quote from: nihial on March 19, 2020, 03:45:22 pmIt works for DC and low frequencies but operational amplifier gain-bandwidth product limits performance at higher frequencies. Of course the high power requirements of the output devices also limit high frequency performance. These types of circuits readily become oscillators.

author: duak
author_rank: Super Contributor
timestamp: March 22, 2020, 06:01:52 pm
content: I remembered something from a project I was on about 20 years ago. We were working on a laser device that had about 32 chip lasers. Each needed to be driven by a constant current of at least 500 mA and modulated at about a 1 MHz rate. I didn't design the driver electronics but I recall that there was no particular problem getting the driver to meet electrical specifications. I mention this because the total current is on the same order as what is requested here. That is, use small faster devices instead of a few large, slow power devices. The driver itselft was about the same size as a 3.5" hard disk drive and used standard surface mount components. A bigger issue was cooling but only because the overall assembly was to be a particular size.

author: David Hess
author_rank: Super Contributor
timestamp: March 23, 2020, 11:36:26 pm
content: Quote from: duak on March 22, 2020, 06:01:52 pmI would not consider 500 milliamps at a 1 MHz rate particularly difficult either but there are differences. Nihial mentioned 30 volts and 20 amps which means either using a few very large devices or dealing with an extended layout of smaller faster devices. And an LED requires a very low compliance from the driver limiting voltage slew rate. And Nihial's requirements include linear operation while I am guessing that your LEDs could have been driven with a current switched open loop source which makes operation to 100s of MHz relatively easy.

author: duak
author_rank: Super Contributor
timestamp: March 24, 2020, 03:19:01 am
content: David, it was a bit more difficult than you make it sound. The current sources were unswitched because they generated arbitrary waveforms. LASER diodes are not as easy to drive as LEDs as their power output is non-linear (see diagram) and we were servoing as well as modulating the optical power of each diode on the fly. We were using feed forward looking at the data pattern to compensate for the wavelength shift of the LASERs. The compliance voltage had to be higher than you may think because of ripple on the power supply with some data patterns. We had tons of OSCON and ceramic caps for bypassing but switching 20-30 Amps was a problem at some frequencies. The inductance of the power cable exacerbated the situation. BTW, I was given an old set of Monster Cable speaker cables; the ones with fine gauge interwoven wires, sort of like Litz cables but with both signal conductors woven together. These helped a lot as they reduced series inductance and, not surprisingly, added a fair bit of parallel capacitance. I could envisage these cables doing in some not so stable audio amplifiers.I mentioned this driver because except for the voltage, it's not far off what the OP was asking for. If you can build a current source there's a good chance you can build a regulator with a variable output resistance. Dealing with the power, of course, is a matter of finding power transistors and getting enough together on a big enough heat sink.

author: nihial
author_rank: Regular Contributor
timestamp: March 30, 2020, 08:39:20 pm
content: Never found a good analog solution for my problem so I chose to use a digipot. I tried a spice simulation but simulation crashes while voltage sources a ramping up and I get terravolts in the circuits nodes. Looks like a ltspice noobie trap.I took the models from TI's website, I autogenerated the parts with the .lib they gave. I wonder if the mistake could come from there or not.In the .lib there's these lines :.subckt VCCS_LIM_CLAWN_OUT_INA821 VC+ VC- IOUT+ IOUT-G1 IOUT+ IOUT- TABLE {ABS(V(VC+,VC-))} =+(0, 4e-5)+(2, 8.16e-5)+(4, 1.21e-4)+(8, 1.92e-4)+(10, 2.35e-4)+(12, 2.76e-4)+(13, 3.1e-4)+(13.5, 3.39e-4)+(13.9, 3.7e-4)+(18, 7e-4).endsEach line with a + is written in red, is it an error or is it legit ?

author: duak
author_rank: Super Contributor
timestamp: March 30, 2020, 10:06:10 pm
content: Nihial,I am not a SPICE user and can't comment on the simulation. If I understand the SPICE schematic I think it is basically correct. I would first connect the drain of M2 to VCC to allow M2 some drain to source voltage. Looking at the data sheets for the amplifiers, I see they both have unity gain bandwidths of about 4.5 MHz. I think this is likely to be unstable. To solve this I would add a series resistor of 10K between U4 IN- and vout_1. I would then add a capacitor between U4 IN- and U4 OUT to meet U4's need to have less than 180 degrees of phase shift at its unity gain frequency. I would start with 100 pF and see if the circuit is more stable. Decreasing the value to will increase the bandwidth but make it less stable. You may also have to increase the value of R8 - try 100R.Please note that varying U2's gain will also change its bandwidth. Higher gains mean lower bandwidth. As I said before, U2 could be replaced with a multiplier like the AD734 that has a bandwidth that does not change as the output resistance control input is varied.Let us know what you find.