I am working on building a current controller circuit used to drive 8 solenoids (for those interested, the solenoids produce magnetic fields for use in a Zeeman Slower). My problem is that there is persistent current ripple that I cannot seem to remove. Each coil runs a different current ranging from 2 to 8 amps with, ideally, a few percent fluctuation. The circuit consists of 8 channels each of which has a solenoid (1 ohm resistance, 250mH inductance) in series with a mosfet (FDP18N20F) and a sense resistor. The voltage across the sense resistor and a set point voltage are fed into an op-amp (OP275) which drives the mosfet gate to set the desired current. Each channel is powered by a common 13.7V/40A supply (tripplite PR50). I attached a sketch of the circuit.
Each channel works well independently when the others are off. However when they are all running and considerable current is being drawn, the supply voltage begins to ripple resulting in current fluctuations (ripple frenquence is about 300 kHZ). Below is a scope trace showing both the AC coupled signal across the sense resistor (nominal value 1.8V) and the ripple on the 13.7V supply voltage.
My confusion is that the supply voltage ripple leads to much larger current fluctuations than expected given the mosfets are biased in saturation. My only explanation is that my control loop is doing more harm than good at removing the disturbance at the ripple frequency. Is this a reasonable explanation? One solution is to limit the feedback at high frequencies by modifying the circuit shown in the following figure where RC is chosen to limit the bandwidth to a few kilohertz.
Any other possible solutions would be greatly appreciated or advice on how to reduce the power supply ripple. Thanks in advance.