How to handle high current DC devices using microcontroller

Post Reply
User avatar
Shane
Captain
Captain
Posts: 226
Joined: Sun Jul 19, 2009 9:59 pm
Location: Jönköping, Sweden

How to handle high current DC devices using microcontroller

Post by Shane » Fri Jun 24, 2011 7:32 am

You may want to use the Arduino to control a DC powered device that draws more current that the 2N3904 transistor can supply. A solution for this situation is to use an NPN Darlington Transistor designed for medium power linear switching applications. In this tutorial we will use a TIP122 transistor, which can power devices up to 100VDC at 5 Amps. This can be used to power devices such as motors, solenoids and fans, where the only necessary operation control operation is ON and OFF (see the H-Bridge Tutorial for bi-directional rotation and speed control of DC motors.)

The circuit is identical to the 2N3904 transistor circuit - the base of the transistor (PIN 1) is connected to the Arduino output pin (D6) through a 1K OHM resistor. The emitter (PIN3) is connected to ground and the collector (PIN2) is connected to one end of the coil of the device being driven (in our example we have a 12VDC Solenoid connected). The other end of the coil is connected to the +12VDC external power supply (the ground from this power supply is connected to a common ground with the Arduino - this is necessary for the transistor to function). It is very important to put a diode across the coil of the device being powered to protect the control circuit from a potential voltage spike that can be created when current is released from the device being powered.
1.jpg
1.jpg (142.32 KiB) Viewed 3537 times
2.jpg
2.jpg (693.11 KiB) Viewed 3537 times
3.jpg
3.jpg (218.82 KiB) Viewed 3537 times
4.jpg
4.jpg (218.24 KiB) Viewed 3537 times
If you want to drive a lower current such as for few LEDs, have a look at How to drive multiple LEDs on a single pin of a micro

Courtecy of UMASS AMHERST
Post Reply

Return to “Arduino”