1
\$\begingroup\$

I'm fairly new to practical electronics so I apologize if any of this is obvious. I am currently trying to use a microcontroller to control the energizing of several 12V solenoid valves using a PC power supply to provide the 12V for the valves and 5V to power the microcontroller.

The issue I'm getting is that the valves appear to be drawing a lot more current than they require to operate. I've measured the voltage and current going through the valves and they read as 4V and 12A. They are rated at 12V and 0.5A by the manufacturer. I can't explain what the problem is or where it resides. I have verified that the proper 5V is being output from the microcontroller and the NPN BJT used for the switching has a 300-ohm resistor on its base.

Any help would be appreciated, this project has definitely lagged as a result of this issue.

\$\endgroup\$
  • \$\begingroup\$ Are you reading 4V across the solenoid? And you're 12A through it? Seems like a lot of current like you said. \$\endgroup\$ – Samee87 May 20 '15 at 3:32
  • \$\begingroup\$ Is the solenoid rated for AC or DC 12V? \$\endgroup\$ – Spehro Pefhany May 20 '15 at 3:40
  • \$\begingroup\$ Some solenoids include an internal flyback diode. If yours is one such model, it must be wired the correct way, otherwise it's a direct path through the diode to the NPN BJT. But even then, only about 1A should be capable of flowing through it as @WhatRoughBeast suggests. Time to check the datasheets of all parts and double-check all wiring. \$\endgroup\$ – rdtsc May 20 '15 at 3:46
  • \$\begingroup\$ They are 12VDC solenoid valves and all have flyback diodes in parallel with them. I know the valves don't come with any internal extra circuitry, they are literally energized coils that drive a magnet upwards to activate. All valves are fed off of the 12VDC rail and connected to their corresponding BJT, so I'm not sure where the error lies in that config. \$\endgroup\$ – Ipsen413 May 20 '15 at 4:08
  • 1
    \$\begingroup\$ Take a solenoid out of the circuit, measure the resistance across it in both directions, and post the result. If you have a part number, post that too. \$\endgroup\$ – Chris Stratton May 20 '15 at 5:48
1
\$\begingroup\$

I would guess that either you have a defective solenoid with a partially-shorted activation coil, or you've made a major wiring error somewhere, with suspicion pointing toward the latter.

The reason I'd guess you've done something very wrong is that 12 amp current. Assuming your base drive is 5 volts, a 300 ohm resistor will give you a base current in the ballpark of 10 mA. A reasonable (although slightly optimistic) gain for an NPN transistor (unless you're using a Darlington) is about 100, so I'd expect a current of 1 amp. The fact that you're seeing 12 amps indicates that something, somewhere, is very wrong, and on the basis of what you've told us I can't be any more specific.

EDIT - And, we have a winner. Two, actually. Well, three. First, you are completely misusing your Fluke. It is incapable of measuring current directly. This suggests (since your usage makes no sense) that the "12" you are reading is actually the 12 volt supply. And I have no idea what the 4 volts is. Consequently, there is no way to tell what the circuit is actually doing. Certainly if you're trying to measure current by putting your Fluke in series with the solenoid, that will explain why it doesn't work.

Second, as has been pointed out, by Bruce Abbott among others, a 2N5551 is not suited to your needs.

Third, assuming you do get a decent transistor, it can't be a single transistor, or at least not a BJT. Assuming your Arduino can supply 10 mA of current, you need to be aware that for switching purposes (such as your application) you should assume a gain of 10 to ensure good switching. This puts an upper limit of about 100 mA on your solenoid drive. You might conceivably try for 200 mA, but not much more. The solution? Use either a MOSFET (n-type in this case) or a Darlington NPN such as a TIP140 or TIP141.

END EDIT

\$\endgroup\$
  • \$\begingroup\$ I've attempted placing a series resistor with the solenoid, which lowers the current going through it but, naturally, also bottoms out the voltage. The strange thing is that it works on occasion and other times doesn't. \$\endgroup\$ – Ipsen413 May 20 '15 at 4:10
  • \$\begingroup\$ @Ipsen413 - please see edit. \$\endgroup\$ – WhatRoughBeast May 20 '15 at 17:00
  • \$\begingroup\$ Great! I was unaware I was using the Fluke meter incorrectly (told ya I was a newb :) ). I'll most likely go out and buy a new multimeter to measure the current. I knew 12A had to be wrong, I just wasn't sure where the error was coming from. Also, I'll look into using a MOSFET for the design; based on what I've heard from you guys and the rest of the internet, it was foolish for me not to have used one from the beginning. Thank you all for the help! \$\endgroup\$ – Ipsen413 May 21 '15 at 3:33
0
\$\begingroup\$

If you're using a 12V supply and you're using the BJT common emitter, (with the solenoid between the supply+ and the collector) then there should be close to 12 volts across the solenoid when the transistor's turned ON.

Since there's only 4 volts across it and there's 12 amperes being taken from the supply when the BJT is ON, it sounds to me like you're either trying to shunt control the solenoid by wiring it and the BJT across the supply in parallel, or you've made that wiring error.

How hot does the BJT get when it's turned ON?

\$\endgroup\$
  • \$\begingroup\$ Not hot at all, when I was messing around with one trying to fix the issue I burned it out, but during normal operation there is no excessive heat. \$\endgroup\$ – Ipsen413 May 20 '15 at 12:45
0
\$\begingroup\$

The 2N5551 is a high voltage low current transistor, not suitable for switching 0.5A. Depending on the manufacturer it may be rated as high as 600mA absolute maximum, but above 40mA its current gain drops off rapidly (to less than 10 at 500mA).

Assuming the solenoid is a basic single coil type, to draw 0.5A at 12V it should have a resistance of 24 Ohms (12V/0.5A). You measured 4V across it, which suggests an actual current draw of ~167mA (4V/24Ω). The transistor is limiting the current because it doesn't have enough gain to turn on fully.

The solenoid cannot have been drawing 12A because the transistor won't let it. Perhaps the meter was set up wrong and you were measuring voltage instead of current?

enter image description here

\$\endgroup\$
-1
\$\begingroup\$
  1. If I am not wrong, the solenoid are DC solenoids. If you have heard of ECONOMY RESISTOR in such applications? Once solenoid is activated it does not require large current to be in closed state and an economy res. is introduced in series with it. This reduces burdon on the supply. hope it helps. vtingole
\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.