Electronic – Op amp driving a LED oscillates, how to stabilize

ledled-driveroperational-amplifieroscillationstability

I have a simple LED driver circuit like this:

schematic

simulate this circuit – Schematic created using CircuitLab

The op-amp is OPA354
250-MHz,
Rail-to-Rail
I/O, CMOS
Operational
Amplifier
supplied from a single +5V rail. The LED is a 100mA, 1.4V forward voltage type. The input is a 0.5V pulse from a signal generator.

What I see is that everything works more or less as expected, the LED current during a pulse is around 50mA, except that at the beginning of each pulse there is a distinct oscillation with a period of ~10ns (around 5-10 cycles are visible). Somewhat more disturbingly, there is a bit of random noise on top of each pulse, maybe 50mV peak to peak, that comes and goes.

The LED has a decently large capacitance of some tens of pF. I've read a lot about stabilizing op amps driving capacitive loads, but these would have the capacitive load where R1 is, not inside the feedback loop.

How do I stabilize the op-amp and prevent this kind of noise/oscillations?

Best Answer

The standard approach in your case is to modify the circuit slightly:

schematic

simulate this circuit – Schematic created using CircuitLab

Unfortunately, I can't give you component values. They depend on the op amp AND R1. As a start, try 1 to 5k and 100 pF, but be prepared to experiment. Getting a circuit simulator such as a SPICE version (TINA, LTSpice, etc) will let you play around, too.

Be prepared to see quite different turn-on and turn-off behaviors. At turn-on the op amp has to come out of a very unpleasant condition, as opposed to its operation during turn-off.