Go Down

Topic: DC Motor Controller: Starts and Stops (Read 3810 times) previous topic - next topic

helloworld

Hello Engineers:

I am trying to control the bi-directional spin of motor using a switch.

I have connected this circuit using an Arduino UNO, a SN754410 Motor Controller and a 540 DC Motor sold by TamiyaUSA.

The Circuit and the Arduino Code are found in the following link:

http://itp.nyu.edu/physcomp/Labs/DCMotorControl

I am using a regulated 5.4 V supply to the motor. I have tried the experiment with 4.8 V and 7.8 V regulated power supply to the motor too.

Now I upload the code to the board. Then, I connect the terminals to the Motor.

Observations:

First, the motor starts running. Then, it stops.
In other instances, the motor starts running. I change the direction of the motor using the switch. Then, it stops.

After it stops, there is a low "krrrrrrrr" sound coming from the motor. If I disconnect the motor terminals and reconnect them, but it doesn't start. However, if I wait for about 10 mins and try it again, it starts and stops all over again. And the sound is still there.

The Motor is not over-heated. None of the circuit elements are over heated (thanks to the heat sink on the regulator).

Also, directly connecting the power source to the motor makes the motor spin (very fast) in one direction without any overheating. So, the there is no damage to the motor.

I have even tried adding a decoupling capacitor of 100 micro Farads across the Motor, but it hasn't changed anything.

Help Required:

Please let me know if I am doing something wrong.

Also, any suggestions on how to make the design more efficient. For tomorrow, I am thinking about adding an Op-Amp voltage follower before the motor terminal. Why? Well, before connecting the power outs from the Motor Controller to the motor terminals I have a +/- 5.4 V across this power out controlled by a switch (for forward and backward motion). But, after I connect the motor to the power outs the voltage difference drops to about 50 to 100 mV.

Also, if you know of a better way of bidirectional motor control using the same elements (atleast the same board and chip), please post.

I thank you all for your interest in advance.

I will check back daily for the next couple months to answer any replies.




helloworld

UPDATE:
it turns out the problem is with the DC Motor I'm using..becoz I changed the motor from the 540 DC Motor to a different one and it works like a charm...so any help on how to Configure the Tamiya USA 540 DC Motor? Maybe it requires a higher current? Will check it out tomorrow.

cr0sh

If it really is a "540" motor, I suspect its because of current needs; such a motor on startup and running could (likely) draw way more current than what the h-bridge controller chip (SN754410) you are using can supply (1A); usually such motors can pull many 10s of amps under load.

Now - its possible your second motor is a higher efficiency (?) motor; do you have spec sheets for either one (or both)? You should consult those (or post them here); if the running or stall current for those is greater than 1A, then you can't use the h-bridge you are using - you need something better.

Likely what was happening was an overcurrent/thermal protection on the chip was kicking in, and it shutdown until it could cool off. This isn't something you likely could detect with your finger, BTW (although a thermal probe might show it).

Here's a datasheet for that h-bridge:

http://www.sparkfun.com/datasheets/IC/SN754410.pdf

As noted, its a 1A h-bridge. I am not sure if this is motor you have, but it is probably similar:

http://www.mabuchi-motor.co.jp/cgi-bin/catalog/e_catalog.cgi?CAT_ID=rs_540rhsh

Note that according to that page, such a motor pulls over 1A no-load, but since it is "close", other similar motors may pull less (but still be right on the edge for the chip you are using)...
I will not respond to Arduino help PM's from random forum users; if you have such a question, start a new topic thread.

helloworld

Thanks for your reply.

Here is the motor that worked:

Pololu Mini Metal Gearmotor

Features:
• DC Motor
• Nominal Voltage: 6V
• Free RPM: 140
• Stall Torque: 15 oz-in (1.0 kg-cm)
• Stall Current: 800mA
• Reduction: 100:1
• Size (mm): 1.66" x 0.46" x 0.60"
• Weight: 0.80oz / 27g

Also, I couldn't find the datasheet for the 'Tamiya USA 540 Motor' as it came with the RC chasis. But it should be similar to what you posted.

And I believe you. I think the motor's pulling too much current saturating the H-bridge. (Multimeter shows 2.15 A for a sec then it goes away >> way beyond the H-bridge capability)

Any suggestions on how I can decrease the current going into the motor to about 1 A. The thing is, the '540 Motor' fits perfectly on the chassis but the Polulu is like one quarter the size of '540'. So, if possible I would like to use the "540" and avoid more assembly work. Another fact, the speed of the Polulu's revolution speed is perfect for our project but the "540" spins at an insanely high speed (due to high voltage/current ??).

I am going to dedicate today to running the "540". If you have a suggestion for a better H-bridge (and available at Radioshack so that I can get it quick: I cannot wait a week so I can't order it online) please provide. Otherwise, I will have to switch to the Polulu.

Thanks for your time.

cr0sh


Thanks for your reply.

Here is the motor that worked:

Pololu Mini Metal Gearmotor

Features:
• DC Motor
• Nominal Voltage: 6V
• Free RPM: 140
• Stall Torque: 15 oz-in (1.0 kg-cm)
• Stall Current: 800mA
• Reduction: 100:1
• Size (mm): 1.66" x 0.46" x 0.60"
• Weight: 0.80oz / 27g


Yes - thats a much smaller motor; as you can tell its stall current is well under what the h-bridge you have can supply, which is why it works well.


Also, I couldn't find the datasheet for the 'Tamiya USA 540 Motor' as it came with the RC chasis. But it should be similar to what you posted.


From what I saw online, the Tamiya motor -is- a Mabuchi motor; but I don't have it in front of me, you do - so look on the motor and see if you can see any markings or numbers that you can google on...



And I believe you. I think the motor's pulling too much current saturating the H-bridge. (Multimeter shows 2.15 A for a sec then it goes away >> way beyond the H-bridge capability)


If you can't find a spec sheet, what you could do is hook up your multimeter to measure current using the 10A probe setting, switched to current measure mode (make sure you do this properly!), then hook it in series with the motor, and attach a small pair of vice-grips to the shaft (enough to prevent it from rotating, but not so much to damage it - you may want to put something between the shaft and the jaws as well, like a piece of rubber or leather). Apply your voltage (for less than a second!), and watch the meter, record the reading. Record the reading while free running, too. That will be your min/max range.


Any suggestions on how I can decrease the current going into the motor to about 1 A. The thing is, the '540 Motor' fits perfectly on the chassis but the Polulu is like one quarter the size of '540'. So, if possible I would like to use the "540" and avoid more assembly work. Another fact, the speed of the Polulu's revolution speed is perfect for our project but the "540" spins at an insanely high speed (due to high voltage/current ??).


Well - you could try a high-wattage sand-resistor inline with the motor, but its going to decrease the torque (and the resistor will get hot); the thing is, it would be cheaper to get the right h-bridge, rather than control the current. The reason the motor spins so quickly is due to its design and the voltage, it was just designed that way.


I am going to dedicate today to running the "540". If you have a suggestion for a better H-bridge (and available at Radioshack so that I can get it quick: I cannot wait a week so I can't order it online) please provide. Otherwise, I will have to switch to the Polulu.


Without knowing the exact specs, its difficult to say; you won't be able to buy a cheap (or expensive) h-bridge IC that will run that motor from RatShack though - they don't sell them. What you might try is to build an NPN transistor h-bridge, using 2n3055 NPN TO-3 case transistors, which I know RS sells (whether yours have them in stock is another matter). The only problem with such an h-bridge is cost (RS 2n3055s don't come cheap - they overprice them), plus you may need a heatsink (which they don't sell) for each/all transistors (plus insulators, etc).

With only a week, and from what I gather, not enough understanding to design your own high-current h-bridge, your best bet might be to stick with the Pololu motor for now...
I will not respond to Arduino help PM's from random forum users; if you have such a question, start a new topic thread.

markB

Helloworld
You could look at using some of the RC controllers for this motor.
Some of them include a limited speed reverse.
The other option is to use a relay to do the switching between forward and reverse.
It would be best to stop power to the motor, then reverse it.
You will end up with a large current spike, but the controller should handle it.

Otherwise its designing a high current H bridge, and I would suggest you look at 10Amps minimum.

Good luck
Mark

helloworld

Thank you guys for your interest.

I have decided to go with the Polulu because the "540" is proving to be so problematic.

By the way, I looked at the "540". Here is the inscription I found on it:

MABUCHI MOTOR
RS-540SH
TD048704
MADE IN CHINA


Even if I got the 540 to work, it goes at a speed way too fast for my project. I need it to make my wheels go 2/3 cms in a sec. For now, I have decided to take the Polulu and make a housing for it so that it will fit the gear system on the chasis(originally designed for the "540"). In the meantime, I am going to research how to work the "540" as time allows.

Nonetheless, I really appreciate your time and suggestions.

I will post more questions in the future regarding my project, which is scheduled for th next two months. I hope you will keep providing your feedback.

Go Up