Looking for Suitable MOSFET circuit to drive currents from 50 ma to 2 A from a 12 volt source.

Thread Starter

phillipsoasis

Joined Aug 22, 2022
12
I need to design a 12V dc circuit where I can turn on a variable current into a resistor load. I need two levels of current - ~50-75 ma for a few minutes, and 1-2 A for a few milliseconds. There is a chance the load will open under the high current scenario. I need help selecting a suitable MOSFET for this application.

The full project design today uses a cell phone to connect to a Raspberry Pi to control a DAC that controls the gate voltage of the MOSFET. The low current is used to test continuity of the load circuit, the high current is used to ignite a rocket motor. There is a need to measure the current drawn by the load.

A simple test circuit for the analog portion of the project is shown in the attached picture. The IRLZ34N is just a place holder to simulate the fuse model I used - it provides high current but not the low current part of the project.

Thanks for any help you can provide!
 

Attachments

crutschow

Joined Mar 14, 2008
31,151
Below is the LTspice simulation of a constant-current circuit that should do what you want:
The ignitor current is approximately equal to the DAC input voltage (Ii = Vin).
The time scale is changed from the desired to make the plot more readable.
Note the Igniter_Current voltage representing the igniter current, is referenced to ground, so a differential measurement is not needed.
The op amp and MOSFET can be the ones you show.

1668639809515.png
 
Last edited:

Thread Starter

phillipsoasis

Joined Aug 22, 2022
12
Below is the LTspice simulation of a constant-current circuit that should do what you want:
The ignitor current is approximately equal to the DAC input voltage (Ii = Vin).
The time scale is changed from the desired to make the plot more readable.
Note the Igniter_Current voltage representing the igniter current, is referenced to ground, so a differential measurement is not needed.
The op amp and MOSFET can be the ones you show.

View attachment 280866
I don't understand the function of the op-amp voltage follower. In the actual circuit. I thought I would just drive the MOSFET gate with the output of a DAC. Also, you mention that I can use the use the IRLZ34N in place of your IRLHM620. However, they have very different output characteristics.
 

crutschow

Joined Mar 14, 2008
31,151
I don't understand the function of the op-amp voltage follower. In the actual circuit. I thought I would just drive the MOSFET gate with the output of a DAC.
It's not just a follower.
The op amp is in a closed-loop negative feedback configuration with the MOSFET, so the current is equal to the plus op amp input voltage divided by R1, thus giving a nice, linear change in current with a change in input voltage.
The negative feedback loop basically eliminates any effects of the MOSFET threshold voltage and transconductance variations from the current value.
If you drive the MOSFET gate directly from the DAC, you will find that the current will be zero until you reach the MOSFET Vgs threshold voltage (which varies from unit-to-unit), and then will rapidly nonlinearly increase with a further increase in voltage due to the high transconductance of the MOSFET (see below).
It will also be rather sensitive to temperature variations in the MOSFET Vgs threshold voltage.

1668725568609.png

you mention that I can use the use the IRLZ34N in place of your IRLHM620. However, they have very different output characteristics.
True, but if it's in the feedback loop with the op amp, those differences will have little effect on the output current versus input voltage.
That's the magic of negative feedback.
 
Last edited:

Thread Starter

phillipsoasis

Joined Aug 22, 2022
12
It's not just a follower.
The op amp is in a closed-loop negative feedback configuration with the MOSFET, so the current is equal to the plus op amp input voltage divided by R1, thus giving a nice, linear change in current with a change in input voltage.
The negative feedback loop basically eliminates any effects of the MOSFET threshold voltage and transconductance variations from the current value.
If you drive the MOSFET gate directly from the DAC, you will find that the current will be zero until you reach the MOSFET Vgs threshold voltage (which varies from unit-to-unit), and then will rapidly nonlinearly increase with a further increase in voltage due to the high transconductance of the MOSFET (see below).
It will also be rather sensitive to temperature variations in the MOSFET Vgs threshold voltage.

View attachment 280961

True, but if it's in the feedback loop with the op amp, those differences will have little effect on the output current with input voltage.
That's the magic of negative feedback.
Very cool! Thanks! That also explains the results from my simulation of the circuit I provided above, and why I thought I needed to find a different MOSFET. Thanks again! If I measure the current as shown in your first diagram, I think I still need some amplification as the voltage swing is 5 mv to 100 mv for the current sense. The high side measurement provided that for free. Any particular reason you prefer the low side measurement? Another question, if I may. What happens in the real world when the igniter breaks/opens when the power supply is delivering 1 amp of current through the MOSFET? Is there anything I should be concerned about that the simulation does not indicate?
 

Attachments

crutschow

Joined Mar 14, 2008
31,151
I think I still need some amplification as the voltage swing is 5 mv to 100 mv for the current sense.
Yes, you could add a gain of 10 non-inverting op amp so that 1V equals 1A.
If you get a dual version of the op amp it won't add any parts to the circuit.
Any particular reason you prefer the low side measurement?
It means you don't need a differential amp for the measurement.
Differential configured op amps can have noticeable output offset voltages due to resistor tolerances when trying to measure small differential voltages riding on a large DC bias.
For example, a 1% resistor tolerance mismatch can generate a common-mode output offset of as much as 240mV with a 12V bias on both inputs.
What happens in the real world when the igniter breaks/opens when the power supply is delivering 1 amp of current through the MOSFET? Is there anything I should be concerned about that the simulation does not indicate?
I think it should be okay, as I see no path for any high voltage transients to damage the MOSFET.
You could add a 20V Zener from the MOSFET drain (cathode) to the MOSFET source (anode) to be on the safe side.

The circuit itself will just go into saturation trying to supply the current, which is not a problem.
 
Last edited:

Thread Starter

phillipsoasis

Joined Aug 22, 2022
12
Yes, you could add a gain of 10 non-inverting op amp so that 1V equals 1A.
If you get a dual version of the op amp it won't add any parts to the circuit.
It means you don't need a differential amp for the measurement.
Differential configured op amps can have noticeable output offset voltages due to resistor tolerances when trying to measure small differential voltages riding on a large DC bias.
For example, a 1% resistor tolerance mismatch can generate a common-mode output offset of as much as 240mV with a 12V bias on both inputs.
I think it should be okay, as I see no path for any high voltage transients to damage the MOSFET.
You could add a 20V Zener from the MOSFET drain (cathode) to the MOSFET source (anode) to be on the safe side.

The circuit itself will just go into saturation trying to supply the current, which is not a problem.
Thanks again for your very helpful comments. The IRLZ34N has a built in Zener from Drain to Source. Can you send me a link to a technical explanation of the op-amp/MOSFET configuration you gave me. I would like to learn more about it. I must confess I am more of a digital than analog person, but I always like learning!
 

crutschow

Joined Mar 14, 2008
31,151
Can you send me a link to a technical explanation of the op-amp/MOSFET configuration you gave me.
Couldn't find a good link so here's my shot at it for the basic part of the circuit (below):

An op amp has a very high open-loop gain so the input voltage difference is typically less than a mV to cause the output to go from rail to rail.
This means that when the op amp is operating in its linear region due to negative feedback, the plus and minus op amp inputs can usually be considered to be at the same voltage with little error.

So in the circuit below, the op amp will adjust its output to an M1 gate voltage that causes just enough current to flow to generate a voltage across R1 equal to Vin (negative feedback) as that's the only stable condition for the circuit.
Thus the current will be equal to Vin / R1.

Make sense?

1668784585840.png
 
Last edited:

Thread Starter

phillipsoasis

Joined Aug 22, 2022
12
Couldn't find a good link so here's my shot at it for the basic part of the circuit (below):

An op amp has a very high open-loop gain so the input voltage difference is typically less than a mV to cause the output to go from rail to rail.
This means that when the op amp is operating in its linear region due to negative feedback, the plus and minus op amp inputs can usually be considered to be at the same voltage with little error.

So in the circuit below, the op amp will adjust its output to an M1 gate voltage that causes just enough current to flow to generate a voltage across R1 equal to Vin (negative feedback) as that's the only stable condition for the circuit.
Thus the current will be equal to Vin / R1.

Make sense?

View attachment 280993
Thanks for the information. I am familiar with negative feedback. I seem to be having an issue duplicating your results. I have attached two screen shots - the circuit and the spice simulation output. I am using KiCAD - are you familiar with it?
 

Attachments

Thread Starter

phillipsoasis

Joined Aug 22, 2022
12
Thanks for the information. I am familiar with negative feedback. I seem to be having an issue duplicating your results. I have attached two screen shots - the circuit and the spice simulation output. I am using KiCAD - are you familiar with it?
Progress....when I remove the U1 op-amp to amplify the igniter current sensor, the circuit works as expected - see the attached simulation plot. I will have to think about the op amp amplifier. One other part of the circuit I am trying to define is some sort of safety cutoff "switch" in case the MOSFET fails as a short (one reason to measure the current through the 100 mOhm resister) or some other catastrophic failure that leaves the igniter clips connected to the power supply.. The Safety Officer wants something non-software dependent to cut the current to the igniter in case of catastrophic failure. I could use a fuse, but the variability of the igniters' ignition current makes specifying that difficult. Also, not all igniters break, so some sort of non-software related timing circuit is needed. If you have any thoughts I would appreciate them!
 

Attachments

Thread Starter

phillipsoasis

Joined Aug 22, 2022
12
Progress....when I remove the U1 op-amp to amplify the igniter current sensor, the circuit works as expected - see the attached simulation plot. I will have to think about the op amp amplifier. One other part of the circuit I am trying to define is some sort of safety cutoff "switch" in case the MOSFET fails as a short (one reason to measure the current through the 100 mOhm resister) or some other catastrophic failure that leaves the igniter clips connected to the power supply.. The Safety Officer wants something non-software dependent to cut the current to the igniter in case of catastrophic failure. I could use a fuse, but the variability of the igniters' ignition current makes specifying that difficult. Also, not all igniters break, so some sort of non-software related timing circuit is needed. If you have any thoughts I would appreciate them!
OK, the igniter current amp is working correctly after correcting some wiring errors and the resister values. On to some sort of cut off circuit.
 

Attachments

Thread Starter

phillipsoasis

Joined Aug 22, 2022
12
So how do you want to detect this "catastrophic failure"?
If by current, what is the criteria for that?
I wish they and I knew. I think it is a way to cut the current if it runs too long. If the rocket launches, the igniter has not melted, the ignition circuit has failed so it is still pulling current, and someone grabs the leads to setup for the next launch, we don't want to fry someone. Too long is not defined, but around a 1/2 a second. Just based on how long a normal launch is (~300ms to ignite the engine), but that is based on old igniter testing 20+ years ago that has not been verified. I can build in a software safety switch, but they want something based on hardware and physics so it can't fail. A fuse would work, but it is not clear (no data) on exactly how much current is needed to launch the rocket. The reason I want to measure the ignition current is to record some data from real launches as to how much current is used and for how long. I also don't want to be replacing fuses after each launch. There is a mechanical switch to isolate the 12 volt power from the ignition circuit when setting up the next rocket, but we don't want the rocket to spontaneously ignite when someone is standing at the launch pad and puts that switch into the armed state if the ignition circuit is "on". The ignition circuitry is at the launch pad, not a remote site. I know, not much to go on.
 

crutschow

Joined Mar 14, 2008
31,151
based on how long a normal launch is (~300ms to ignite the engine)
I'm confused.
If it takes 300ms to ignite the rocket than what's the purpose of applying a 1-2A pulse for only a few ms as you stated in your initial post?
That won't tell you anything about the ignitor operation.
 

Sensacell

Joined Jun 19, 2012
3,102
Ignitor CKT.JPG

This ignitor drive concept comes up frequently- here is a circuit that might be helpful for your project.

R1 puts a safe test current of about 50 mA into the ignitor circuit - this is used to measure the ignitor and contact resistance.

The voltage output goes from ~ 0 to 4.8 V when measuring resistance of the ignitor and wiring, and goes to 5V if the ignition circuit is on.


You can qualify the state of the system by reading a single voltage output.

0- 2.6 V Ignitor leads shorted.

2.6 - 3.6V Ignitor connected, valid resistance range.

3.6 - 4.6 V - ignitor connected - bad connection, high resistance.

4.8V ignitor circuit OPEN.

4.9- 5V = IGNITION CIRCUIT ON. (Fire in progress or shorted fire switch)
 

Attachments

Thread Starter

phillipsoasis

Joined Aug 22, 2022
12
I'm confused.
If it takes 300ms to ignite the rocket than what's the purpose of applying a 1-2A pulse for only a few ms as you stated in your initial post?
That won't tell you anything about the ignitor operation.
Apologies, the 300 ms was a typo. From the little data I have, it takes about 1 - 2 A for about 30 ms to igniter the igniter I normally use. The testing was done a long time ago (~20 years ago) and the sample size was small (~4), and not verified by the manufacturer. Manufacturers don't provide this data. Depending on the brand of igniter it can take anywhere between 6 ms to 400 ms and 0.3 A to 1.8 A to ignite the igniter. In my application, software is controlling the length of time and the amount of current delivered to the igniter, so I believe the circuitry for measuring the ignition current and length of time (assuming the igniter breaks, which is normal) will give some meaningful data. Not necessarily for any type of official report, but enough data to tweak the circuitry and code as needed.
 

crutschow

Joined Mar 14, 2008
31,151
It's still not clear to me what you will do with this information(?).
Why can't you just supply a large current until the igniter ignites?
 

Thread Starter

phillipsoasis

Joined Aug 22, 2022
12
It's still not clear to me what you will do with this information(?).
Why can't you just supply a large current until the igniter ignites?
The main reason for measuring the current is to test the continuity of the ignition circuit. It is very easy to short out the igniter or break it after installing it in the engine and putting the rocket on the launch pad. Lack of continuity is one cause of a misfire, so when hitting the launch button and the rocket does not launch, it rules out the possibility that there is no glowing ember in the rocket engine, so one can approach the rocket safely. Not all igniters break during ignition, so it would also be nice to measure if current is in the ignition circuit after a reasonable amount of time and cut the current off so It is safe to handle the igniter and leads for the next launch. If there is a misfire, it would be nice to know if there is current in the ignition circuit, and cut it off as needed. Measuring the current is about the only way to get any feedback on what is going on in the ignition circuit and to make changes to the ignition circuit to make it safe to approach and handle the rocket. Finally, If I can gather some data on the current used for ignition on the igniters I use today, I can do a better job of sizing the batteries needed for a day or two of launching, and setting the parameters in the launcher for how much current and how long to let it run before shutting it off. In older launchers, feedback on what was happening to the system was done visually, and the system was controlled with mechanical switches. What I am building does not have mechanical switches, but is controlled with software, so some form of feedback for the software is needed to make decisions on the state of the system.
 
Top