power a very small heating coil with pwm

Hi,
I am having some trouble getting a small heating coil to run off the Arduino Uno.

The coil is 2.6 ohm. It usually is powered by a 3.8 volt battery. My thought was that I could hook one side of the coil to ground the other side to pin 10 (PWM). I use analogWrite(10, 190) where 190 is (3.8/5)*255. When I put the multimeter to it the voltage looks fine. But it does not heat the coil when connected.

I'm pretty new to Arduino and electronics in general so I would really appreciate if someone could give me some advice on why this approach is failing. I would think the Arduino is capable of powering this coil with no other components or external power source. Perhaps I am mistaken. Ultimately I want to be able to vary the voltage but for now I am just trying to reproduce it's normal working conditions. Thanks.

I'd imagine the coil need far more current than the 20ma the pin can provide. I would try a transistor as a high current switch.

lgbird:
I would think the Arduino is capable of powering this coil with no other components or external power source.

I'm not sure where that expectation came from, but it's wrong. The coil will take over an Amp, from the figures you have given. The Arduino output pins have an absolute maximum output of 40 mA and a safe working current of 20 mA. Hopefully you can see you're overloading them by a factor of about fifty. It's quite likely that you have damaged the output circuit for the pin you have used for this. Probably, the damage is limited to just the pin(s) you've connected it to aqnd the Arduino as a whole has not been affected.

To drive a circuit taking that much current you need to amplify the Arduino's digital signal, for example using a transistor. There are lots of details about how to do that in the Motors, Mechanics and Power section of the forum.

Hello,

at first you need to learn more about what you are doing..
You should at least know the dependencies between Voltage, Current and Restistance. (known as Ohm's law).

So, taking ohms law, your coil will draw 1.46 Amp at 3.8 Volt!
I doubt the battery will like what you are doing to it, its technically a short circuit. This can even turn it into an explosive.
(What kind of battery are you using?)

Ok, each Arduino pin can source up to 40mA (40mA = 0.04 Amp) at 5V, with your coil between a pin and ground, you try to soak up to 1.92 Amp out of the pin. That should easily shortened the pin out, maybe even damaged it or the whole board.

As pYro mentioned, you can't drive the coil directly by an arduino pin, a transistor or mosfet rated at ~2 Amp @5V should work.
You also need a power-source that can source at least 2 Amp. (the more the better)

lgbird:
Hi,
I am having some trouble getting a small heating coil to run off the Arduino Uno.

The coil is 2.6 ohm. It usually is powered by a 3.8 volt battery. My thought was that I could hook one side of the coil to ground the other side to pin 10 (PWM). I use analogWrite(10, 190) where 190 is (3.8/5)*255. When I put the multimeter to it the voltage looks fine. But it does not heat the coil when connected.

I'm pretty new to Arduino and electronics in general so I would really appreciate if someone could give me some advice on why this approach is failing. I would think the Arduino is capable of powering this coil with no other components or external power source. Perhaps I am mistaken. Ultimately I want to be able to vary the voltage but for now I am just trying to reproduce it's normal working conditions. Thanks.

Yes you are mistaken. As others have posted, you will have to use an external switching transistor a series base resistor and an external DC power supply rated at 2 amps or better to be able to control your heater coil with an arduion. An arduino is great a controlling things, but pretty poor at powering stuff without external components.

Lefty

Should be apparent now, this is not really a "very small heating coil". However, this
is a relatively simple job.

What you really want to use is a "logic-level" n-channel MOSFET, such as an IRL540 or
similar, rather than a "transistor", which typically weans BJT. Logic-level means 5V can
drive the gate of the MOSFET. Search for MOSFET inverter circuits.

Then you "MUST" wire a clamping diode in reverse-polarity across the heating coil, to
prevent inductive spikes from killing your Arduino during PWM switching.

oric_dan(333):
What you really want to use is a "logic-level" n-channel MOSFET, such as an IRL540 or
similar, rather than a "transistor",

Do you know what the 'T' in MOSFET stands for?

Do you know what the 'T' in MOSFET stands for?

Umm, did you read the rest of the sentence that you edited out?

When most people want to say MOSFET, they say "MOSFET", when they say
"transistor", they usually mean BJT. As noted.

oric_dan(333):
Umm, did you read the rest of the sentence that you edited out?

Of course I did. I suggested using a transistor. You assumed that because I didn't specify a particular type of transistor, I was referring to the wrong type. I can't imagine why you assumed that, but it was a false assumption.

You assumed that because I didn't specify a particular type of transistor, I was referring to the wrong type.

No, I was simply clarifying the difference, as the OP is a newbie [1 post], and might
not be a trained EE. To repeat for the 3rd time,

"When most people want to say MOSFET, they say "MOSFET", when they say
"transistor", they usually mean BJT. As noted".

[of course, england may be different].

Hey, thank you all for the responses. The pin seems to still works fine. I tested it with the blink sketch. Guess I got lucky. I will look into doing this with external power source as suggested. I do really appreciate all the great suggestions. And yes, I am very much a noob with this stuff.

@kduin, The battery is ICR10440. It is made specifically for powering this coil. It is only ever active for less than 10 seconds. If it was left active for much longer than the coil would burn out. The battery is always (should be) used in a circuit with multiple redundant fail-safes to break the circuit. But yes, if it runs continuously chances are it would explode.

Thanks again for all the help.

oric_dan(333):

You assumed that because I didn't specify a particular type of transistor, I was referring to the wrong type.

No, I was simply clarifying the difference, as the OP is a newbie [1 post], and might
not be a trained EE. To repeat for the 3rd time,

"When most people want to say MOSFET, they say "MOSFET", when they say
"transistor", they usually mean BJT. As noted".

[of course, england may be different].

What do BJT means ? (And that is a real question - not to offend the easy offended)
regards