op amp, capacitive loading, again

Thread Starter

bug13

Joined Feb 13, 2012
2,002


Please refer to the circuit above, when the current through R2 is about 1A, and the V_drain is under 7V, the circuit starts to oscillate.


but when V_drain > 7V seen to work alright, just under 2mV ripple on the V_source.


So my question is, what cause it? And how do I fix this?

Thanks.

PS: V_gate = ~3.4V
 

kubeek

Joined Sep 20, 2005
5,795
My first guess is that C1-C2 combination making a filter with R1 and R3, which phase-shifts the gate voltage enough to start oscillation. Why do you have those caps there?
 

Thread Starter

bug13

Joined Feb 13, 2012
2,002
That's what I first thought too, but removing them don't help much, it still oscillate at ~143KHz, ~250mV ripple when the V_drain = 5V.

When V_drain = 6V, it oscillate at ~167KHz, ~35mV ripple, when V_drain > 7V, the oscillation seen to stop.
 

kubeek

Joined Sep 20, 2005
5,795
Do you have decoulpling caps on the supply of the opamp? Try lowering R1 to say 47ohms or something, and putting R3 between gate and source.
 

Jony130

Joined Feb 17, 2009
5,488
Try to add a 10K RF resistor between V(-) input and source of a MOSFET.
Have you try to use a different type of a MOSFET?

As kubeek mentioned lowering R1 also should help.
 

Attachments

Last edited:

Thread Starter

bug13

Joined Feb 13, 2012
2,002
Do it like this.
You might have to change some of the values, depending on your MOSFET.
I don't think IRFB4030 is manufactured by anyone? is that a typo, or can you provide a link?
Thanks Ron H, your solution works best, now come to the question, why? and how do you calculate the value you suggested.

datasheet for IRLB4030, sorry, it's my typo.

PS:
I find that C3 = 1n, 10n or 100n works quite well too, is that a reason why you choose a small value cap?
 

Ron H

Joined Apr 14, 2005
7,063
Thanks Ron H, your solution works best, now come to the question, why? and how do you calculate the value you suggested.

datasheet for IRLB4030, sorry, it's my typo.

PS:
I find that C3 = 1n, 10n or 100n works quite well too, is that a reason why you choose a small value cap?
I haven't tried to analyze it. I run AC simulations (be sure to set a DC voltage on the input) while stepping the values of each passive component, and the drain voltage, one at a time. Try to minimize peaking in the AC response. If you are pulsing or stepping the current, try to maximize the bandwidth at same time.
It's a good idea to run transient response tests with a pulse input waveform also, just to see how pulse response corresponds to various AC response curves.
 

Thread Starter

bug13

Joined Feb 13, 2012
2,002
I haven't tried to analyze it. I run AC simulations (be sure to set a DC voltage on the input) while stepping the values of each passive component, and the drain voltage, one at a time. Try to minimize peaking in the AC response. If you are pulsing or stepping the current, try to maximize the bandwidth at same time.
It's a good idea to run transient response tests with a pulse input waveform also, just to see how pulse response corresponds to various AC response curves.
I am not sure if I am totally understand what you are explaining, but that could be very likely something I need to know but I don't know yet.

But I think I sort of know what I need to learn and what to look for next time, thanks a lot.
 

Thread Starter

bug13

Joined Feb 13, 2012
2,002
I haven't tried to analyze it. I run AC simulations (be sure to set a DC voltage on the input) while stepping the values of each passive component, and the drain voltage, one at a time. Try to minimize peaking in the AC response. If you are pulsing or stepping the current, try to maximize the bandwidth at same time.
It's a good idea to run transient response tests with a pulse input waveform also, just to see how pulse response corresponds to various AC response curves.
Can you explain why should I avoiding peaking in AC response? Are you referring to the peaking in gain, or are you referring to the peaking in phase?

And in those graph, how can I tell graph is which value?
 

Ron H

Joined Apr 14, 2005
7,063
Can you explain why should I avoiding peaking in AC response? Are you referring to the peaking in gain, or are you referring to the peaking in phase?

And in those graph, how can I tell graph is which value?
Attached are Bode plots and transient response plots of the circuit. Note that I could not find a spice model of your transistor, so I chose one that should be similar.
Note the frequency response peaking in the Bode plot (AC sweep) when Rg=100Ω. Note also that this corresponds to overshoot and ringing in the step response.
The response is close to optimum when Rg=500Ω. With 1kΩ, it has more frequency response roll-off than is required for good stability and step response. If you are not applying fast edges to the control input, this would be fine.
Try the simulation with C3=0. Note the huge peak in frequency response. This is indicative of instability, and the circuit will probably oscillate, especially if you leave Rg in the circuit (as you have already discovered). Adding capacitance from gate to ground just makes the problem worse, because it introduces even more phase shift around the loop.
My circuit works by isolating the gate capacitance from the op amp output with Rg, then applying high frequency feedback through the capacitor, bypassing the excessive phase shift caused by Rg and the gate capacitance.
If you run more simulations, you will find that practically anything you change will cause the response to change. If you add a load resistance in the drain circuit, or change the drain supply voltage, the response will change. You might want to play around with the simulation and try some of these things.
I have included the .ASC file. You might have to create a model for LM358.
 

Attachments

Thread Starter

bug13

Joined Feb 13, 2012
2,002
Attached are Bode plots and transient response plots of the circuit....


Hi Ron H

Thanks again for explaining it to me, it really help a lot.

While I am playing around with the simulation, the graph generates in LTSpice doesn't label which line is which, are you using LTSpice as well? Is there a setting somewhere that I can enable the label on the graph?

Again, thanks a lot
 

Ron H

Joined Apr 14, 2005
7,063


Hi Ron H

Thanks again for explaining it to me, it really help a lot.

While I am playing around with the simulation, the graph generates in LTSpice doesn't label which line is which, are you using LTSpice as well? Is there a setting somewhere that I can enable the label on the graph?

Again, thanks a lot
You can turn phase plots on and off by right-clicking on the right side vertical axis.
When you are doing parameter stepping, resulting in multiple plots on the same screen, right-click on the waveform window, then left-click on Select Steps.

The help file is pretty comprehensive. You might also find help here.
 
Top