Need help with bi directional constant current source (±100mA) - Page 1
Forum section: electronics / projects

author: OM222O
author_rank: Frequent Contributor
timestamp: November 11, 2018, 04:50:12 pm
content: HelloI need to design a dual channel constant current source which can drive an inductor to ±100mA. the inductance is 3.2H and I want as good of a transient response as possible, so I chose the ADA4522-2ARZ-RL which is a precision differential amplifier that can be driven with upto 60 volts. I will be using a 48V supply which is divided to give ±24V output. I will also use a DAC (LTC2607-1) and a 2.048V reference (ADR4520B) to produce the control voltage. I will also use a voltage divider followed by a buffer amplifier(TLV9001) to produce a 1.024V reference and will connect it to one of the inputs of the differential amplifier. therefore if the output of the ADC is greater than 1.024 I will get -100mA and vice versa. I came up with this circuit which works great:http://tinyurl.com/y7grgwwpThe only issue is that the differential amplifier can't source or sink that much current (about 14mA at best!) so I somehow need to boost it's output using BJTs or Mosfets. I saw this circuit which was showcased in the datasheet of LT1990 (a single channel differential amplifier) which seemed like the perfect choice as they also use a 10ohm shunt and want to produce 100mA!after trying to simulate the circuit, it seems to not work for me ... the op amp is still the element that's passing all the current!http://tinyurl.com/y9ylnbecas far as I can tell, this is just the basic howland current pump with 2 pass elements. I'm not sure if I'm making a mistake in my simulation or what, but I can't seem to get this circuit to work. please help me fix it.

author: JackJones
author_rank: Regular Contributor
timestamp: November 11, 2018, 04:58:09 pm
content: Your falstad simulation doesn't quite match the circuit in the datasheet. The 1k resistors are supposed to go to the power supply pins of the opamp. I'm not sure if falstad allows to do this though. If not, I'd suggest trying LTspice or some other simulator that allows that.

author: OM222O
author_rank: Frequent Contributor
timestamp: November 11, 2018, 05:01:06 pm
content: Quote from: JackJones on November 11, 2018, 04:58:09 pmunfortunately it doesn't allow me to do that, but I also noticed another difference. They have connected the - input to ground and used the "ref" pin instead! the dual channel differential op amp (ADA4522-2ARZ-RL) does not have such a pin. are there any other methods that can provide the boosting effect?

author: SiliconWizard
author_rank: Super Contributor
timestamp: November 11, 2018, 06:45:59 pm
content: Why not directly use Linear's application schematic instead?

author: OM222O
author_rank: Frequent Contributor
timestamp: November 11, 2018, 06:56:13 pm
content: I can't find the same part in the dual op amp package and I'm fairly space limited on the PCB (17.8 x 35mm) and it's mostly populated. I need to change other parts of the circuit if I have to get 2 of these chips. If all else fails, I have to use the same schematic and change my circuit around________________________________________EDIT:I have tried everything I could and gave up on making the ADA4522-2ARZ-RL work. I want to use the same schematic that was provided by the LT1990 and use two of them. now the issue is that I need the response time to be as quick as possible, so the voltage that the op amp can produce is important. the LT1990 can only be used with ± 15v which is nowhere near as quick as I want it to be. it takes about 100ms to go from -100 to 100mA for my inductor.I tried connecting the transistors to ±24V supply separately but it had no use and there were some strange 1A current draw initially.at this point I honestly have no idea what to doplease help.is it possible to use a low voltage differential amplifier, followed by the ADA4522-2ARZ-RL in unity gain to get the higher voltage range for the desired result?

author: duak
author_rank: Super Contributor
timestamp: November 11, 2018, 09:40:58 pm
content: I would ditch the common emitter booster stage. The 1 A current pulse on startup is due to the charging of the capacitor between the bases of the booster transistors multiplied by their betas. You can reduce the size of the cap, but you'll never really eliminate the current pulse.I would replace it with a complementary emitter follower current booster placed between the opamp's output and the junction between the sense (shunt) and feedback resistors.I'd also add a couple of catch diodes between the driven end of the load and the two power supply rails. These diodes handle the compliance voltage developed by the inductor when the current magnitude is reduced too quickly. Note also that your power supply voltage may pump up when this occurs and exceed the voltage ratings of anything connected to them so you may have to add some zener diodes to the rails to limit the voltage rise.Does this make sense? If not, I can explain further.Cheers,

author: OM222O
author_rank: Frequent Contributor
timestamp: November 11, 2018, 10:12:24 pm
content: yes, I can understand what you mean, but can you also include some schematics as well? Do I need zeners across the inductor only, or do I need it across each rail (GND to +24 and GND to -24 and -24 to +24) to stabilize the voltage? I have also not heard of a "complementary emitter follower current booster". I did some searching but I'm not sure if I understand it correctly. Does that circuit allow me to operate at the higher voltage of ±24V across the transistors even if the amplifier is supplied with±15? I also saw "Low offset follower" which I think is the setup that I need. or maybe even a bi directional current mirror connected to the higher voltage?

author: SiliconWizard
author_rank: Super Contributor
timestamp: November 11, 2018, 10:54:49 pm
content: The following works. I think your schematic contained an error (look at how the transistors and opamp are connected to the load).Note that I attached a simulation with a 3.2µH inductor to assess fast transients. With a 3.2H inductor, it works fine, but it can't be nearly as fast as this! Current will take a much longer time to settle. This is an inductor after all!Also note that I lowered the resistors' value around the opamp. With 1Meg resistors, this would be extremely slow to settle. I don't know how fast you are after. I simulated here with 1k resistors, if you change them to 10k you will notice the difference already, but it may be acceptable for your use. 1 Meg makes it much slower, but you would have less ringing. Up to you.

author: OM222O
author_rank: Frequent Contributor
timestamp: November 11, 2018, 11:16:52 pm
content: I would rather use an integrated differential amplifier due to high common mode voltages and resistor matching becoming an issue. I was wrong and thought that the ADA4522 was a differential amplifier but it in fact is not! most common differential amplifiers have built in 1Meg resistors which is why I chose that value. I can't seem to find a formula that relates the resistor tolerance to the CMRR of an amplifier. would 0.05% be good enough?I think if I go with the 1K resistors, I would also need another op amp as a virtual ground as the low value resistors can pass mAs of current which creates an issue.Please watch the video linked below

author: Lee Leduc
author_rank: Regular Contributor
timestamp: November 11, 2018, 11:46:59 pm
content: Check out figure 15 in the LM675 datasheet.http://www.ti.com/lit/ds/symlink/lm675.pdf

author: SiliconWizard
author_rank: Super Contributor
timestamp: November 11, 2018, 11:53:21 pm
content: Quote from: OM222O on November 11, 2018, 11:16:52 pmAs for the CMRR, you can start here:http://www.analog.com/media/en/reference-design-documentation/design-notes/dn1023f.pdfYou will have a heck of a hard time finding an integrated instrumentation amplifier that is fast enough AND can take +/-24V. The opamp you selected seems to be a good fit actually.Are you really intending on driving a 3.2H inductor with a constant current source though? As I hinted above, 3.2H is HUGE. At those values, the dynamics of the current source may not matter that much anyway, as any real (not ideal) current source will take a long time to settle...Quote from: OM222O on November 11, 2018, 11:16:52 pmWhat do you call "virtual ground"? The 1.024V reference you made out of the 2.048V one? In your original schematic, it's already buffered by an opamp follower (LTV9001) so that shouldn't be a problem whatsoever.

author: OM222O
author_rank: Frequent Contributor
timestamp: November 11, 2018, 11:54:54 pm
content: they are using pots to calibrate out errors. I need 12 of these in different parts of the robot and I don't want to fiddle around with pots to get it working. I think if I use 0.05% matched resistors with 15PPM/C temp co, I will have a maximum of 3% error at worst case scenario which is not really ideal ... if I don't have any other choice, I will go with a differential amp (like the LT1990) followed by the ADA4522 as unity gain. it seems like the best option in terms of accuracy so far. I'm just waiting for "duak" to explain more about the follower circuit.again maybe I'm calculating the common voltage wrong ...

author: OM222O
author_rank: Frequent Contributor
timestamp: November 12, 2018, 12:07:24 am
content: Quote from: SiliconWizard on November 11, 2018, 11:53:21 pmas I mentioned it will be used to drive a voice coil actuator and yes, the inductance is really large. it's more like a transformer coil than an inductor and it cannot be swapped out for another one.The transient response is also important as it will be controlling parts of the robot that need to react fast to the environment. The cost is not a big issue as it's supported by university (that should be a given when I'm using a 16 bit DAC, high end voltage references,etc)by virtual ground I meant this point in the circuit:as you see the current changes from 1mA to 1.5mA when he removes the op amp and connects that point directly across the load resistor. then he increases the value of the 4 resistors to 100k to get rid of that error. using more op amps won't be an issue as the ADA4522 comes in a quad op amp package as well! 2 of the can be differential amplifiers and 2 can be buffers to keep the value of the resistors down for the better transient response. I'm just worried about the 24V common mode voltage. (It's actually 0V - 24V - 48V )I'm not sure if it's considered ground so we can dismiss it and consider the common mode voltage to be 1.024 or if it's 25.024but I think we're getting to a good solution here.I actually tried to use the analog devices error budget calculator but there seems to be an issue with it as it raises the error for the ADA4522 and says the supply difference exceeds 36 volts although it should be rated for 60V operation ...here's a link if you want to have a look:https://www.analog.com/en/design-center/interactive-design-tools/opamp-error-budget-calculator.html

author: duak
author_rank: Super Contributor
timestamp: November 12, 2018, 05:04:44 am
content: OM, here's an awful sketch of a current booster.Ri handles the opamp's output current up to the point at which its voltage drop turns on one or the other transistors (~0.6 V / 100R = 6 mA).D1 or D2 turn on when the inductor voltage tries to go beyond the power supply rail voltages. If these weren't here, the inductor current would try to force its way thru the opamp.D3 and D4 are zener diodes that limit the power supply rail voltages when the energy in the inductor has to be dumped. Since this is an actuator in a mechanical system, there may be an energy source may be external to the inductor (such as an arm) in addition to the energy stored in the magnetic field. If there's a lot of energy, you might need some big zener diodes, or a more capable voltage limiter.Do you know how to calculate the worst case power dissipation in the transistors? It's not always obvious, but with a simple inductive load for the case of just holding, you can have maximum current with essentially zero voltage across it. The transistors would then have to drop the rail voltage and so dissipate 100 mA * 24 V = 2.4 W. If the actuator is moving, there will also be a back EMF impressed on the output voltage and further increase the power dissipation.Tons of fun, eh? Good luck!

author: Alex Nikitin
author_rank: Super Contributor
timestamp: November 12, 2018, 09:09:32 am
content: Here is a suitable circuit. The opamp, transistors and diodes types choice is purely for the simulation, you should choose suitable for your application, including voltage and power dissipation limits. If you use appropriate devices the maximum output voltage can be boosted to 100V or more. As shown the circuit will produce +/-100mA output current for +/- 5V input, that also could be changed according to your needs.CheersAlex

author: OM222O
author_rank: Frequent Contributor
timestamp: November 12, 2018, 12:15:48 pm
content: Quote from: duak on November 12, 2018, 05:04:44 amthank you very much. I just had one final question: shouldn't there be current limiting resistors in series with all diodes? D1 through D4. the entire transient will take about 28ms so I'm not sure if the diodes can dissipate that power as it's just a short burst (actuator won't go from -100 to +100 rapidly, I just need the response time to be as quick as possible to react to the environment, not to rapidly move all the travel range) something like alex recommended seems like a better choice but is still missing resistors for D3 and D4?I'm also not sure why he is using 4 transistors ... which one is dissipating the major amount of power?

author: Alex Nikitin
author_rank: Super Contributor
timestamp: November 12, 2018, 01:04:55 pm
content: Quote from: OM222O on November 12, 2018, 12:15:48 pmThe energy in the coil is not that great, so any mid-sized diode should be OK.Quote from: OM222O on November 12, 2018, 12:15:48 pmThe output pair obviously dissipates more than the previous stage. The opamp and the first pair of transistors (Q1 and Q4) make two voltage controlled current sources - one for each polarity, and the output pair (Q2 and Q3) together with resistors and diodes work as two current mirrors with a combined output. The ratio is 10:1 , so for 10mA through Q1 or Q4 the output will be 100mA through Q3 or Q2 respectively. This circuit is convenient as you essentially limited only by the size and voltage handling of transistors. The circuit as is is working in Class B so is not very linear in the area of low output currents. If that matters, just add a resistor between bases of Q2 and Q3, providing about 0.5mA current (so for +/-40V output stage supply it should be ~150K), however that may create a small offset current due to an asymmetry of two current mirrors. It could be trimmed down if required though.CheersAlex

author: OM222O
author_rank: Frequent Contributor
timestamp: November 12, 2018, 02:28:44 pm
content: Thank you very much for the detailed explanation. as I mentioned before size is a concern on my PCB so I will probably go with the circuit that duak provided. if it proved to be unsuitable after testing, I will give your circuit a shot as well.

author: Alex Nikitin
author_rank: Super Contributor
timestamp: November 12, 2018, 02:54:25 pm
content: Quote from: OM222O on November 12, 2018, 02:28:44 pmYou should not forget that in either circuit output devices may dissipate considerable power so should be sized accordingly and placed on a heatsink (100mAx40V = 4W for example).CheersAlex

author: duak
author_rank: Super Contributor
timestamp: November 12, 2018, 09:04:57 pm
content: OM, you will not want to put resistors in series with the clamp diodes (D1 & D2) as they are trying to bypass currents that could damage the transistors or opamps.Putting resistors in series with the zener diodes will allow the rail voltages to rise further. Are you able to quantify how much mechanical energy may have to be dumped? You could implement a more capable energy dumper by augmenting the zener diodes with some transistors and resistors. If you have a number of drivers & actuators, only one energy dumper for each rail is needed.Best o' luck,

author: David Hess
author_rank: Super Contributor
timestamp: November 13, 2018, 12:00:03 am
content: The LT1990 is an instrumentation amplifier and not a differential amplifier. As shown, the two transistors boost the output current although this configuration is normally seen with operational amplifier.Any instrumentation amplifier can be used in that configuration to make a Howland current pump. The advantage is that the instrumentation amplifier has the precision resistor network used for the Howland current pump built in and will provide a known precision without trimming any resistors.

author: OM222O
author_rank: Frequent Contributor
timestamp: November 13, 2018, 12:45:11 am
content: Quote from: David Hess on November 13, 2018, 12:00:03 amit's in the title: "±250V Input RangeG = 1, 10, Micropower,Difference Amplifier" although it is also classified as a "instrumentation amplifier". I'm not sure why they classify it like that, but it certainly can be used as a differential amplifier. howland current pump is basically a differential amplifier with a shunt resistor to be honest.

author: David Hess
author_rank: Super Contributor
timestamp: November 13, 2018, 01:12:28 am
content: Quote from: OM222O on November 13, 2018, 12:45:11 amA differential amplifier has a differential output which is unavailable on the LT1990 or any instrumentation (or difference) amplifier. The only way to use it as a differential amplifier (with a differential output) is to use two with their inputs connected in anti-parallel which is sometimes done for exactly this.To make things more confusing, in the past the term push-pull was used in place of differential but luckily that terminology stayed in the past.I'm not exactly sure how they distinguish instrumentation and difference amplifiers. It may be by the impedance of their inputs or lack of input dividers but there are parts which break these rules.

author: OM222O
author_rank: Frequent Contributor
timestamp: November 15, 2018, 05:48:01 pm
content: Quote from: duak on November 12, 2018, 05:04:44 amHi, I've been trying to do my own research and understand how this circuit works and I've read some articles about it as well.for example this one:https://www.allaboutcircuits.com/technical-articles/how-to-buffer-an-op-amp-output-for-higher-current-part-2/but I've had no luck with it so far ... sorry if I'm just being way too big of a noob but after running the simulations (dc sweep to see if I get the ±100mA depending on the control voltage), I'm hitting the output current limit of the op amp as you can see:Have I done something wrong with the schematic? can you please help me figure out the mistakes? thanks

author: duak
author_rank: Super Contributor
timestamp: November 15, 2018, 07:28:45 pm
content: OM, you will have to increase the value of R1 to something like 100 ohms. With R1 = 10 ohms, the diff amp would have to source 60 mA (0.6 V/10R) which, I'm sure, it cannot do.BTW, what transistors are you using?Cheers,

author: OM222O
author_rank: Frequent Contributor
timestamp: November 15, 2018, 08:44:32 pm
content: that made things even worse! I honestly can't explain this behavior!Can you please run a simulation yourself and check what I'm doing wrong?

author: duak
author_rank: Super Contributor
timestamp: November 15, 2018, 09:45:57 pm
content: OM, I didn't look too closely at what you'd presented previously. Sorry about that.You need another current sense resistor after or to the right of the current booster. The INA's feedback resistors are to be connected to the new resistor, not the original R1. R1 develops a voltage that turns on the booster transistors when more current is needed.I can't do a sim or schematic. I have Linux and can't seem to get the design package working.I'm just about to head out for a few hours - observe & cogitate; I think you'll get it.Cheers,

author: OM222O
author_rank: Frequent Contributor
timestamp: November 15, 2018, 11:21:37 pm
content: The LT1990 does not have a feedback outputthey instead went with a x10 gain functionality which is uselessI instead chose to use the AD8277 which is a 2 channel difference amplifier with a gain of 1. It's the perfect fit for the job. The only thing is it uses 40K trimmed resistors instead of 1Meg ... I'm not sure what issues if any will that cause (some advice would be nice). I think they will create an error in the output voltage which is why it's recommended to use another op amp in unity gain configuration to drive the "ref" connection.also after running the simulations, it seems that the external voltage supply will have no effect unless the output of the op amp can reach that voltage (i.e. if I use ±12V to drive the op amp but connect the transistors to a ±48V supply, the transient response would be exactly the same!) any comments on how I can improve that?I also ditched the idea of using transistors as they don't seem to have any SOA ratingso I went with mosfets.also at the beginning of the transient, the voltage goes about 1.5V above the supply rails of the op amps ... can that cause an issue? if yes, is there a way to fix it?here is a link to the falstad simulation:http://tinyurl.com/y7294uw7and here are the things that I was asking about

author: duak
author_rank: Super Contributor
timestamp: November 16, 2018, 06:14:20 pm
content: OM,1.) You are probably opening a can of worms by using FETs for the current booster. In particular, high frequency stability and possible damage to the FETs by exceeding their gate to source voltage limits. I'm surprised the bipolar transistors do not have a graph of the Safe Operating Area. What devices were you using?2.) Without going into great detail, I'd say that by not buffering the + divider, you'll get a current error in absolute terms equal to Vload / 80K. This is because the divider is diverting some of the current pump's output to circuit common. If you want 100 mA at 20 V, you'll get 99.75 mA. If you want 1 mA at 20 V, you'll get 0.75 mA. If this is used in a closed loop servo, this is most likely acceptable. IOW, the non-linearity just gets lumped into the stiction of the actuator. Another way to look at it is that current pumps should have infinite output impedances, ie., the current is independant of the voltage. This will put an 80 K resistor in parallel with the current pump.3.) if you decide to use an opamp to buffer the + divider, good design practice is to not exceed its input to supply rail voltage and current specs. It'd probably be acceptable to use a resistor of say, 10 K to 100 K in series with the + input of the buffer to limit current in case a greater voltage is applied. This will introduce another error due to an offset voltage developed across this resistor by the input bias current of the opamp. (see Final Note)4.) If the INA is powered by +/-12 V, there won't be any real difference in the transient response. An inductance generates a counter voltage across itself equal to the rate of change of current thru it. Therefore, if you want to change the current faster, you need to apply a greater voltage to overcome counter voltage. Using +/- 40 V on the current booster does not change the fact that the INA output is still limited to +/- 12 V. The current booster has a voltage gain of almost 1 but a current gain related to the beta of the transistors.BTW, I've been using the term INA for Instrumentation Amplifier. It's probably not completely accurate as these parts are maybe better described as Opamps with Integrated Differencing Divider Networks - OIDDN - or something like that.Final note: As a Jewish friend said, "Oy Gevalt!" These things are like a game of Whack-a-mole.Hope this makes sense and helps in some way (at least)Cheers,

author: iMo
author_rank: Super Contributor
timestamp: November 16, 2018, 08:29:33 pm
content: This works somehow.. Parts chosen are from my junkbox, use yours if any, and do elaborate.. It gives you +/-102.4mA into R6 or L1 (the load)..The signal generator is 2.048Vpp sine with DC offset +1.024V.

author: Zero999
author_rank: Super Contributor
timestamp: November 16, 2018, 11:57:21 pm
content: Quote from: OM222O on November 11, 2018, 06:56:13 pmThat won't work because Q1 and Q2 will both turn hard on, causing lots of smoke. Look at the DC emitter currents!Look at Q1 to start with. Its emitter is at -24V and its base is being pulled upwards to -12V via 1k, causing it to turn fully on and the same is going on with Q2.This one of the traps with simulators: they permit things which would cause fire in real life!Quote from: imo on November 16, 2018, 08:29:33 pmYes it will work, but the +/-24V power supply doesn't gain you much. The common emitter follower will not increase the voltage swing of the op-amp, so nothing is gained from using a higher voltage power supply, than what the op-amp can tolerate.Q1 and Q2 have a voltage gain of just under 1, so if the op-amp's output can only swing from +13V to -13V, the output of Q1 and Q2 won't be any better. There will also be some crossover distortion due to the dead band when neither Q1 and Q2 are on.Quote from: OM222O on November 15, 2018, 11:21:37 pmSnip.Before going any further. What are your requirements regarding bandwidth and slew rate, precision and offset? Sorry if you've mentioned it somewhere, I haven't read every single word of this thread yet, as I don't have time at the moment.Have you considered using a bridged output? Doing so would enable the entire circuit to be powered by standard op-amps, with not voltage boosting, only current boosting would be required.How about an audio amplifier IC?

author: iMo
author_rank: Super Contributor
timestamp: November 17, 2018, 10:30:37 am
content: This gives you nice swing (here aprox 45Vpp) on the output.The Load is L1=3.5H with R6=5ohm in series (no idea what is the Resistance of your actuator).Current +/-102.4mA into the Load based on input (here 2.048Vpp sine w/ DC offset +1.024V).Not easy to simulate, however..Mind it is a simulation only..Needs some elaboration with R values and final components of choice..You may add decoupling, output protection diodes, snubbers, etc. (you mess with inductive load)

author: Zero999
author_rank: Super Contributor
timestamp: November 17, 2018, 10:06:34 pm
content: Quote from: imo on November 17, 2018, 10:30:37 amThat circuit doesn't give a voltage offset of 1.024V, but a current offset of 102.4mA.It's a good idea but the biasing is a bit off. The quiescent current will be high, resulting in a high power dissipation, even though there's no signal. The DC current through the +/-24V power supplies is nearly 140mA, even with both inputs connected to 0V!The power amplifier also has far too much gain and there's no frequency compensation network so it will oscillate in real life: something which not all models will show.I've simulated it in LTSpice. Note how I've improved the presentation, using labels, to make it easier to follow.Fortunately it can be fixed. See the schematic below.The circuit is biased into class AB operating using a Q5 which forms a VBEmultiplier. RV1 will need to be adjusted to give about 15mA through Q1 and Q2. Start off with the wiper set so the resistance is near zero and increase it until the voltage across R14 or R5 reaches 150mV. Q5 should also be thermally coupled to Q1 ans Q1, so its base voltage varies with the temperature of the output transistors.Oscillation is avoided by keeping the open loop gain to a minimum, rather than adding capacitors. R6 and R7 provide negative feedback to the power amplifier stage, giving it a gain of just under 3.2, in reality it's 2.1, as R12, R13 and R18, R19 act as a potential divider which reduces the gain further. R16 and R17 reduce the loop gain, without actually altering the gain (figure that one out?).

author: Zero999
author_rank: Super Contributor
timestamp: November 17, 2018, 11:31:45 pm
content: The most efficient solution is to get rid of the bipolar power supplies and replace them with a single 24V supply and use a push-pull configuration. U1 can be a decent op-amp, with low offset voltage and current, but U2 can be a generic op-amp, such as the old uA741.

author: duak
author_rank: Super Contributor
timestamp: November 18, 2018, 03:24:28 am
content: Hero,I'm not able to simulate yours (or anyone's) circuits. May I have you run some simulations on your circuits first with a square wave input and then secondly a repeating plus, zero, minus, zero (tri-level) waveform? The load voltage waveforms should be interesting, especially for the non-bridge designs.Thx & cheers,

author: iMo
author_rank: Super Contributor
timestamp: November 18, 2018, 08:32:40 am
content: Quote from: Hero999 on November 17, 2018, 10:06:34 pmNope, it is not about an output offset, but DC offset of the input signal generator used in my simulation:QuoteThe OP has got 2 sources at two inputs:1. a constant +1.024V DC, and2. the input from a DAC -> 0..+2.048V (=1.024 + 1.024*sin(x), in my simulation).Therefore my simulation follows his setup..Of course, the simulation/implementation needs some tweaking, as I wrote above. The important point there is the working principle - the transfer function would be (based on my schematics):Quoteor something like that

author: Zero999
author_rank: Super Contributor
timestamp: November 18, 2018, 09:28:50 am
content: Quote from: duak on November 18, 2018, 03:24:28 amWhat software did you use?A square wave, with a decent rise/fall time, will always cause clipping with an inductive load because a very high voltage will be required to achieve such a high di/dt.Quote from: imo on November 18, 2018, 08:32:40 amOh I see what you mean, but the input is differential, so it really doesn't matter. Whether the negative input is set to 0V and the input swings from -1.024 to +1.024, or the negative input is set to +1.024V and the input swings from 0V to 2.048V, is immaterial. The output voltage will be the same and fortunately the DC bias voltages on the op-amp inputs will be within the common mode range.I'm surprised you missed the error I made when simulating your circuit: I set the input voltage too high. I think the signal generator on your circuit shows thevoltage swing, but LTSpice uses the peak voltage, so I set it to double what it should be, causing clipping. I did realise after I uploaded the attachment, but decided not to redo it, in the hope you'd notice.

author: iMo
author_rank: Super Contributor
timestamp: November 18, 2018, 09:32:21 am
content: Fixed above:QuoteOP - original poster, opamp - a device

author: iMo
author_rank: Super Contributor
timestamp: November 18, 2018, 09:48:47 am
content: 35y back I messed with a 5 pins chip called TDA2030 - a 14W/36V audio amplifier, basically a power opamp.. Here is thedatasheet, pretty obsolete today, but may be there is something newer available today..

author: iMo
author_rank: Super Contributor
timestamp: November 18, 2018, 01:55:40 pm
content: Quote from: duak on November 18, 2018, 03:24:28 amI've just reinstalled my LTSpice to the latest and the Hero's .asc (double click on it) simulates..

author: duak
author_rank: Super Contributor
timestamp: November 18, 2018, 07:24:50 pm
content: re simulations: I've been in electronics for almost 50 years - from before SPICE was developed. It was my hobby and profession. I'm now retired, and while I've used SPICE here and there, it wasn't how I designed and tested circuits. I use Linux and tried the Oregano package but couldn't get it to do anything. Right now I don't have time to fart around with simulations as I have to deal with an ill family member.I'm asking that the circuits be simulated with stimuli that could show some problems that my experience indicates may happen. In particular what happens when zero current is commanded after maximum current. Some of my previous replies address this issue.BTW, for the designs using a common emitter booster, can anyone predict what could happen when the junction temperatures of the output transistors cause the VBE to drop enough so that the idle current of the opamp is sufficient to provide base current all the time?Cheers,

author: iMo
author_rank: Super Contributor
timestamp: November 19, 2018, 09:26:03 am
content: This is with squarewave input: 0/2.048V, 100ms period, 50/50, 1us rise/fall edges, and 20-140degC step 20degC.Note: the temperature simulation depends on how the opamps/transistors' models handle the temperature, the resistor's tempco used here is 0ppm/deg. You may define the tempco for your resistors in LTSpice when interested..

author: SiliconWizard
author_rank: Super Contributor
timestamp: November 19, 2018, 05:27:44 pm
content: Still not sure what your requirements are in terms of rise and fall times at full scale (0 to 100mA for instance), but I'll leave it as an exercise what voltage you'd need to get, say, a 100µs rise time driving a 3.2H inductor from 0 to 100mA...

author: Zero999
author_rank: Super Contributor
timestamp: November 20, 2018, 09:44:45 am
content: Quote from: duak on November 18, 2018, 07:24:50 pmWell the maximum di/dt is dependant on the voltage swing of the amplifier and inductance.QuoteThermal runaway is the most likely scenario, which is why the base-emitter resistors need to be selected to ensure it won't happen. Adding emitter resistors can help to mitigate that risk somewhat, at the expense of a higher saturation voltage.I think 100R base-emitter resistors should be safe enough with the OP07. I did make an attempt at allowing sufficient headroom. I couldn't find the quiescent current for the OP07 on the data sheet, so I derived it from the maximum power consumption figure of 120mW at a combined power supply voltage of 30V (+/-15V). P = 0.12/15 = 4mA, which would be a voltage drop or 400mV across 100R, which should be too low to bias the BJTs on, unless they're extremely hot. I also expect the OP07's current consumption will have a negative temperature coefficient, which should make cross conduction less likely.https://www.analog.com/media/en/technical-documentation/data-sheets/op07.pdfGlancing at the data sheet again, I've noticed the OP07C has a maximum quiescent power consumption of 150mW, drawing a current of 5mA, so would drop 500mV across 100R, which would be a problem if the transistors got hot. I'd reduce the base-emitter resistor values to something like 82R or even 68R. It's possible to go lower, but going too low, there's an increasing risk the op-amp won't be able to produce enough drive current to turn on the transistors, especially at low temperatures.Also note that the power and therefore current consumption figures were derived from the worst case data sheet figures, which were specified at 30V. The situation is unlikely to be that bad and at 24V, the current consumption is likely to be lower.