Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

PIC16f + ULN2003a + DC motor 24V

Status
Not open for further replies.

mifbase

Newbie level 4
Joined
May 4, 2009
Messages
7
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Activity points
1,333
uln2003a

Hi all,

I'm trying to drive a DC motor (24V) using by ULN2003a darlington array (it's because I'm going to swith directions), but no success. The ULN2003a is connected as follow:
IN1 - PIC output pin (+5V)
OUT1 - +wire to the motor and connected also to COM
COM - +24V
GND - -wire to the motor

could you please help me with this problem?
Thanks a lot!
 

uln2003a circuit

A circuit diagram would help - but looking at your breadboard it looks like you do not have pin 8 neg, and pin 9 +24v connected on the uln2003?


Also a motor of that type can easily exceed the current handling of the uln2003, would suggest you fit a relay if you are going to use it with any real load.

It is said, but have not tried it, that you can common up two inputs and their two outputs to handle larger currents - but would still go for a relay

Also looks like you have two 0v wires going to pin 16 ? - that would short things out as pin 16 is an output
 

pic16f

thanks a lot for your reply, richardc. However I think I have no other choice then to use a relay. I have tried to use more inputs and outputs to handle larger current, but it isn't enough for the DC motor.
But if there is any idea how to start up the DC motor using only by the ULN2003a, I would appreciate it.
 

pic 16f

There's no chance to control a wiper motor with an ULN2003. The motor inrush current can be expected higher than 10A, even the no load current would most likely damage the device. A high current MOSFET or better a current limited "intelligent" power driver would be necessary, the latter can handle up to several 10 A.

Also your ULN2003 circuit seems incorrect. You won't never get an output current with one motor wire connected to ground, cause ULN2003 is a low-side switch. You may want to check with a small indicator lamp instead of the motor. The datasheet contains clear example circuits, to my opinion.
 

uln2003a pic

First of all, have you tested the motor to see if it works ? - it looks like a wiper motor so could be 12v or 24v dc - but most will run from 6v dc upwards, but even with no load they can take well over 300ma dc.

Suggest you connect it to a large battery, via a 3A fuse and your current meter, on the 3A or 10A dc setting to see if the motor actually works.


Attatched is a diagram showing how you can use the ULN2003 to drive the motor directly or the motor on /off via a relay.
Suggest you prove the motor / uln2003 circuit like this before thinking about driving it from the pic incase you have an error there.


I also suspect your real problem may be that your power supply is too weak and that it cannot start the motor - but without circuits diagrams and specifications it hard to tell.
 

uln2003a circuits

Hi all. richardc, thanks for the scheme. I've tried this, but there is still too low voltage. See my circuit attached.

The motor is a DC motor 24V and works fine with 4.5V battery.

Could you please review the attached scheme? Thanks a lot.
 

uln2003 circuit

You diagram looks ok, but from your earlier picture and wiring pins 1 & 16 may be damaged.

Suggest you try a different pair - say 6 for control signal, and 11 for output.

Before connecting the motor to these new pins, test the circuit with a resistor and led from pin 11 to + ... does that switch on and off ok ?

If that works ok, then connect the motor, but leaving the led and resistor in circuit so you have visual confirmation of and current flow.

Were you able to measure the motor current at 4.5v ? was it more than 300ma ?
 

uln2003a example

Found a similar motor at work - at 5v it takes 500ma dropping to 350ma at 3v3, so as mentioned by FvM the start up current will be much greater.

My uln2003 circuit , with 2 inputs and 2 outputs commomed together did drive it from a 5v source - it would also just turn the motor at 4.3v ( less the voltage drop of the uln2003 ).

Your particular motor may just not run at such low voltages, you could try increasing your motor battery voltage.

Although I could get it to work just to prove your circuit - it is not good enough run properly with such a heavy duty motor.

You need at least a power transistor circuit to handle the ' dirty' load of such a motor.
 

uln2003 used to run 12v motors

thanks a lot, richardc. Finally I got it work with more motor battery voltage. So, now it works perfectly with PIC. Now, I'm thinking about direction of motor rotation, but until now I have no idea (except of relay)
 

uln2003 dc motor

For electronic (relays-less) polarity reversal, a four transistor H-brige is needed.
 

h bridge uln2003

Glad you got it working - before I can answer your question - need to know what you are trying to achieve - or just experimenting.

For simple stop start control you can use a relay, for reversing the motor you can also use relays, but that needs more than one.

If you want to vary the speed of the motor by the Pics PWM or electronically reverse it, then as FvM mentioned you need four driver transistors etc.

If you are just experimenting then suggest you obtain a much smaller cheap model motor as that SWF type is just too big, and will blow your parts eventually - if not sooner !

If you have a specific use for that motor then you should use the uln2003A with relays or a hefty power transistor set up, well able to handle 10A peak as mentioned earlier by FvM.
 

uln2003a dc motor

I'm just experiencing, but with this type of DC motor:) Thanks richardc and FvM for your suggestions. I will try the H-bridge (looks like quite easy solution) and will see if it works within the current configuration. Then, I will publish my attempt to share with you.
 

uln2003a example relay

I have tried to connect H bridge into ULN2003a, but something is wrong. For the H bridge, I used PNP - BC327 as A, B and NPN - BC337 as C, D. I did some measurement and see the motor takes 2A.
 

transistor dc motor 24v

Suggest you read up on H bridge and dc motor drive a bit more before you attempt any more building - this looks a good start -
http://www.mcmanis.com/chuck/robotics/tutorial/h-bridge/index.html

As you will see your current circuit is just a little bit out - the bc327 transistors are way under rated for that motor and have probably blown - which is why you measure 2amps - as a short.

Do try and swap that beast of a wiper motor for something much smaller, any little dc motor is better than that - then you can use smaller cheaper transistors and power supplies.
 

h bridge pic16f690

Hi richardc,

thanks a lot for the helpful link. Finally I got it working (the DC motor controlled by PIC) using by the H-bridge described on the chuck's page. Yes, I see the ULN2003a isn't feasible for this operation and the h-bridge is the right choice.

Thanks a mil!
 

dc motor uln2003a

Hi Mifbase,

That's really good to hear - well done !

Doing it yourself from scratch is so much more rewarding and you learn a heck of a lot more about things as well.

So, what's next ? - a stepper or servo motor !! :D

regards

Richard
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top