Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

2 simple motor control questions

Status
Not open for further replies.

oem_odm

New Member
Hello everyone: I'm not an electronic engineer, I wonder if someone can answer these 2 questions:

1. How can a DC motor (3.5 volt) be turned off when its turning is resisted. For example. Motor turns a cam, cam is blocked by an object, the motor can't turn. Is there a very simple way to detect the resistance and cut the power to the motor?

2. Motors often have very high RPM's. 9000.... 13000 - I want to use a cheap motor for a project, but, I would like to cut the RPM without gears. Can this be done by restricting the voltage? or, PWM? If PWM, whats the cheapest chips to use for PWM....

thanks / simon
 
1. The H-Bridge connfiguration can give you 4 modes of operation. CW,CCW,coast and BRAKE. Usually you get 2; Direction and NOT ENABLE. The NOT ENABLE signal is the PWM signal.

In the H bridge, there are 2 low value resistors. These can be monitored for the CW and CCW current. With some filtering and knowing if the motor is fully stopped, you can determine how to react. Example. Ignore first 100 ms at start. Overcurrent must last x time before not allowing the motor to run in that direction. Long ago I just put an LM317 in shutdown if an overcurrent condition lasted for x time. Power recycling was necesssary to clear the fault.

2. PWM is usually done in software. Veleman, avalable at Jameco, sells a PWM kit good for 10 A and 24 V. I've used the kit.
 
you are too smart for me. seriously. If you still have the patience, could you reply to each question in really simple terms...something like

1. yes. a motor circuit can sense resistance if something blocks a motor. it does it with a couple of resistors and an h-bridge.
no/yes you cannot slow a motor just by restricting the voltage


2. yes. pwm can slow down a motor without the need for gearing. The cheapest way to PWM a motor is to use a 555 timer to pwm power to the motor....a motor

:)
 
a) H-brides are a circuit configuration that typically has the following modes: CW, CCW, brake and coast
b) Voltage across small values resistors (or other means) allow one to sense current.
c) The H-bridge design allows for two such resistors, one for each direction which can be advantagous.
d) The current to a motor is proportional to torque
e) If you reduce the voltage to the motor, torque is decreased.
f) PWM allows one to slow the motor, but keep the nameplate torque.
g) PWM motor speed kits are everywhere and are easy to use.
h) PWM chips exist
i) You can use the 555 to generate PWM, but it might be difficult to control via a voltage, but easier withe a simple potentiometer.

Better?
 
thankyou for your patience and explanation

so how does a h-bridge sense that a motor's turning is blocked?

motor is turning a cam
Cam gets blocked by something
....what happens in the circuit to sense the blocking of the cam
 
The H-bridge does not sense the motor's current.
This app note might help: https://www.electro-tech-online.com/custompdfs/2011/05/dn407f.pdf

In the last case, a unipolar, which means one polarity, signal is generated that's proportional to what the motor is drawing from the power supply and it doesn't see the pulse width modulated current which means it's a cleaner signal.

If you create a circuit which basically implements, "The current drawn by the motor has been greater than x amps for x time, then shut off the motor".

Now, I may be thinking out of the box meaning I'm thinking you want to be able to reverse the motor and control it's speed.

Now you could be thinking reverse the motor electromechanically (relay or switch) or mechanically rather than electrically or not reversing the motor at all.
You may not need PWM and want to use a linear voltage regulator.

I did the linear regulator thing some 25 years ago for a project I did. If the motor decided to slam into the stop, I didn't want it to do much damage, I sensed the voltage across a resistor, compared it to a reference, and added a timing element and then forced the regulator to shutdown (output 1.2 V) with an SCR. To reset the SCR, I had to remove power. Simple and effective at the time. I used an H-bridge for direction and a relay for braking. For a larger motor in the system that operated in one direction, I dispensed with the H-bridge.
 
thankyou for your patience and explanation

so how does a h-bridge sense that a motor's turning is blocked?

motor is turning a cam
Cam gets blocked by something
....what happens in the circuit to sense the blocking of the cam

When a motor is running, with a load - or if it is stalled (as it is technically at startup) - consider that "infinite load", the amount of current required by the motor goes up; the maximum current is called the "stall current" and is one of the specs of the motor. There is another spec, called the "running current" - this is the current the motor takes when it is running, with no load. With a load (anything that causes the motor to turn slower with work), the current will vary between the "running current" and the "stall current".

At startup, a motor effectively is "stalled", and so the stall current is hit for a very brief amount of time - you need to be able to sense and reject this transient (to allow the motor to run at all). However, when it is blocked from turning for a longer period of time (such as in your proverbial cam situation), then this stall current persists for that longer time.

Typically the way you sense this current is by measuring it with a very small resistor from the outputs of the h-bridge (most h-bridge ICs have these outputs available - generally called current sense outputs, but if your's doesn't, or you are building a larger component h-bridge, then using the outputs of the h-bridge is where these resistors would be placed). So, these resistors are connected from the pins (or the outputs) to ground, and at the junction where they connect to the h-bridge, you bring out your sense wire, which, when you measure the voltage across the resistor, it varies from something really tiny, to something larger as the load on the motor shaft increases (to a maximum voltage when stalled). The resistors must be of a very small value; sub-1 ohm is best, and depending on the size of the h-bridge, they may need to be power resistors.

You could also measure the current using a hall-effect current sensor; this has the advantage of not causing the small voltage drop like you get with a resistor (which is another reason you use a very small resistor), but these sensors can get expensive for larger currents (I've found one company that has 50A hall-effect sensors that they sell for around $25.00 or so each in single quantities - which really isn't that bad of a deal). For your small motor, though, a hall-effect current sensor wouldn't cost near that much (if it cost $5.00 I'd be surprised). Such a sensor is connected in a similar manner between the outputs of the h-bridge and ground, and output a voltage signal in a similar manner.

You'd probably run this voltage into a comparator to cause the motor to shutoff in some fashion (probably with some logic circuitry or such); you could also run it into the ADC of a microcontroller, and code the controller to stop, reverse the motor, or whatever - if the uC was monitoring it continuously, you could cause it to react to the increasing current level before any damage due to stripped gears or other issues occurred, long before stall current was reached.
 
thankyou thankyou to you both.
i understand well now.

just a re-touch on the 2nd original question.

If the motor (which is very small) has a RPM of say 9000... gearing can slow it down (but, I don;'t like the costs associated with that). I would like the motor to be slowed with PWM...I would like the output to be something like 80rpm.

I guess a simple timer can PWM the motor to work at this speed in both directions? I'm not an engineer, I just want to understand top level principles..so I can pay someone to do the right thing... :)
 
That would be less than 1% on time and I don't think that will work out. Motion could be choppy etc.

Also with a 3.5 V motor, there will be losses if reversing is done electronically. Micrprocessors, such as from Parallax Home or even Analog, Embedded Processing, Semiconductor Company, Texas Instruments and others can be under a $1.00. They are designed to do PWM easily. I think one of the MSP430 can operate at 0.8 V.

PS: Nice job cr0sh
 
Last edited:
Status
Not open for further replies.

Latest threads

New Articles From Microcontroller Tips

Back
Top