Hello everyone! I hope you will be absolutely fine and having fun. Today, I am going to give you a detailed Introduction to ULN2003. We will also discuss ULN2003 Datasheet, Pinout, Circuit Diagram & Proteus Simulation. If you have ever controlled any motor (i.e. DC Motor, Stepper Motor etc.) with microcontroller (i.e. PIC, Arduino etc.), then you must have heard about drivers. Why we need to use drivers? We use drivers (to control motors) because of two reasons.
- First: Microcontrollers operate at 5V while motors operate at different voltages (5V, 12V, 24V etc.).
- Second: Motors are Inductive loads thus they produce back emf, which may damage your micrcontroller permanently (if not handled correctly).
- ULN2003 is a 16 Pin IC, consisting of 7 darlington pairs (each pair protected with supression diode) and thus has the capability to handle maximum 7 loads (could be inductive).
- In simple words, we have 7 drivers in a single ULN2003 chip and thus can control maximum 7 loads.
- Each Darlington pair can handle maximum 500mA load, while peak value is 600mA.
- Similarly, maximum output voltage of each darlington pair is 50V.
- In below figure, you can see ULN2003 has 16 Pins, where inputs and their respective ouputs are placed infront of each other (for ease of circuit desining).
- Other than I/O Pins, we have Ground Pin where we need to provide 0V & Vcc (Common) Pin.
- Here's the link to ULN2003 datasheet, must read it once.
- I have also given the link of a reliable source, from where you can buy ULN2003 IC.
Download ULN2003 Datasheet
Buy ULN 2003 Online
- ULN2003 has 16 pins in total:
- 7 Input pins (Pin # 1 to Pin # 7)
- 7 Output pins (Pin # 10 to Pin # 16)
- 1 Ground pin (Pin # 8)
- 1 COM pin (Pin # 9)
- ULN2003 Pinout is shown in the below figure:
ULN2003 Pin Description
- The functions associated with each pin of ULN2003 along with pin names, are shown in the table given below.
ULN2003 Darlington Pair
- ULN2003 consits of 7 identical Darlington pairs.
- A single darlington pair consists of two bipolar transistors its maxmum operating values are 50V & 500mA (peak 600mA).
- These two transistors of darlington pair have common emitter while their collectors are open.
- Here's the circuit diagram of single darlington pair, in below figure:
ULN2003A Free Wheeling Diodes
- ULN2003A has free wheeling diodes, which protects from back emf.
- So, if we are using any inductive load (i.e. relays), then we don't need to add extra diodes, if we are controlling it with ULN2003A.
- Logic Diagram of ULN2003A is shown in below figure:
ULN2003 FeaturesThere are a lot of keys features associated with relay driver ULN2003. A few of then are given below:
- 500mA of rated collector.
- High output voltage of around 50V.
- Relay driver applications.
- Output clamp diodes.
- Compatible input with popular logic types.
- Some of the key features are also given in the table below for the better understanding about the working conditions of ULN2003.
ULN2003 ApplicationsThe relay circuit driver ULN2003 has a wide range of applications in real life. Some of the major applications associated with ULN2003A are given below.
- Logic buffers.
- Line drivers.
- Relay drivers (for driving different loads).
- Lamp drivers.
- LED display drivers (display devices).
- Motor (stepper and DC brushed motor) drivers.
ULN2003 Proteus Simulation
- I have designed simulation in Proteus ISIS for LED control using ULN2003.
- The screenshot of the simulation, is shown in the figure below.
- As you can see in the above figure that I have connected Logic State at all inputs of ULN 2003 and have connected Leds at outputs.
- So, now when I make the Logic State HIGH then the respective LED will also go ON.
- The running form of the above simulation is shown in the figure below.
- If you change the state of the logic state from 0 to 1, corresponding LED will be turned ON as shown in the above figure.
- You can download the Proteus simulation here by clicking on the button below.
- Just download .rar file, extract it and enjoy the simulation.
Download ULN2003 Proteus Simulation
- Here's the video in which I have shown how to use ULN2003 in Proteus: