I'm using a basic relay and I want to use 12 like this. Each one needs 50 milliamps, but the Arduino can supply only 300 milliamps. What can I do?
1 Answer
You should never drive relays direct from an Arduino. You always need a driver circuit since each OP pin can only reliably provide up to 25mA.
Every relay needs (at least) an NPN transistor and a flyback diode. Follow the myriad of examples for controlling one relay on an Arduino and multiply it by 12.
You might like to make things smaller and more manageable by using a paur of ULN2303 chips with 6 darlington drivers in each instead of using 12 discrete transistors.
-
Im using a transistor for each one. But it still take 50 milli amper. Can you show me a circuit?– MyNickCommented Oct 23, 2015 at 9:56
-
@MyNick If you are managing to draw 50mA into the base of a transistor then they must be massive transistors driving house sized relays. If you are talking about the power supply current draw not the IO pin current draw, then just get a bigger power supply.– MajenkoCommented Oct 23, 2015 at 9:58
-
-
@MyNick Then I have to assume (rightly or wrongly, I can't tell since you won't tell me) that you're referring to the power supply current not the IO pin current, in which case - what is your problem? Just use a more powerful power supply for the relays. If you are actually referring to the IO current then god help your Arduino.– MajenkoCommented Oct 23, 2015 at 10:13
-
This is the circuit for each relay, it takes 50 milli amper from the io pin: mail.google.com/mail/u/0/…– MyNickCommented Oct 23, 2015 at 10:28