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.

Fast Line-Follower Motor Selection? What to Look For...

Status
Not open for further replies.

richardv2

New Member
I want to build a fast line-follower. From details I seen through Google, it looks like 1 meter per second is atainable with the right hardware and software. My questions...

How do I equate 1 meter per second with a specific motor? I know the math is easy - wheel circumference times RPM can give me that - right? Do I plan for a speed of 1-1/2 meters per second so the motor still has some acceleration for the straight-away?

Now, if I want the least mass possible (more mass = harder to get through a turn fast), then do I want the lightest motor that will give me the RPM I need?

And what about torque? How does that figure in? For a given size/motor weight, does double the torque mean I can increase speed faster? Or does more torque mean more weight? ...Or just that from a standstill, higher torque will get me started faster, or what? What would be the trade-off questions I'd ask to select from several torque/speed possibilities?

I plan to use PWM and have a PIC18F control left and right motor speed. I'd start slow and work up speed and add PID as I learn how to apply it.
 
Fast Line-Follower Steering? Motor Speed Steering Control or Servo Steering?

I want to build a fast line-follower. I've seen left/right motor only robots where all steering control is in the motors, and I've seen several with a steering servo and sensors out front and the hardware and motors in a trailer in back. My questions...

Is there advantage to either method? Seems like putting the sensors and steering out front would be better, but I don't know how to find out other than build both or ask here.

I'd like to hear your comments on which steering mode would be best. I will probably eventually try both, but for this attempt, I need to pick one.
 
Motor torque affects acceleration. You might have a really high top speed, but depending on the application, you may never have enough continuous run-time for the motor to get up to that speed. Torque ALSO means you can carry more weight (at a slower speed for the same motor). Torque affects both acceleration and carrying capacity.

Motor maximum speed affects the maximum speed the motor can spin at. But, >>BUT!<< it is also depend on torque. You see, a motor under load spins slower than a motor under no-load or less-load. There is a point when the motor can no longer provide enough torque to spin as fast as a motor that has been geared down for less speed and more torque.

THere is a balancing point for a given motor. Suppose I have a motor. I can either leave it ungeared for maximum top-speed or gear it down to reduce output RPM and increase torque. Now, geared down motor will have higher acceleration but lower top-speed. But in practice, and under load it might also have higher speed than the ungeared motor- For two reasons. First is that it can accelerate faster, so in applications where the motor is stopped and started a lot, the motor with faster acceleration can spend more time running at a faster speed than the ungeared motor that has a really fast top speed, but takes so long to accelerate that on a whole, it ends up spending more time operating a lower average speed (let alone ever actually reaching top-speed). The second reason is that for the top-speed of the ungeared motor to actually run faster than the geared motor under-load, the ungeared motor output torque has to be able to at LEAST overcome the frictional losses of the system at that speed to maintain it (and it needs even more torque accelerate to that speed in the first place).

Rule of thumb- when in doubt, go for torque. WHat I said applies to gearing the same motor differently for more torque or more top-speed (ie. same power output). You can get more torque and top-speed by getting a larger motor that has more power.

Steering servo increases weight and reduces the speed and angle that you can turn at without flipping. For speed, one motor per wheel per side with differential turning is best. A separate steering servo also decreases nimbleness. The most agile mobile robots are those with just two wheels.

There is also a balance between mass and power. How fast you can move and turn doesn't really depend on how much your robot weighs or how much power it has. It depends on the power/weight ratio of your robot. As long as your motors aren't undersized for the mass of your robot, you will be able to move just fine.

DC motors spin slower with more load on them, spin faster at higher input voltages, and draw more current as they have to output more torque (drive a larger load). With so many variables, pretty much need the graphs for the motor to figure out the relationship between any of those two things (voltage, current, speed, torque) at a specific operating point. Or, you can use the equations that the graphs are based on (but you need to be given the coefficients for the motor). One thing you can do, at least, without graphs is to figure out the output steady-state POWER you need (using speed and load) and find a motor that can handle that output power. Then you at least know, that with some unknown amount of gearing you will be able to get what you want (but without the graphs, it becomes trial and error).

Sizing motors is a pain, I know. It get's even harder when you are trying to optimize power consumption and efficiency and not just performance.
 
Last edited:
richardv2 said:
How do I equate 1 meter per second with a specific motor? I know the math is easy - wheel circumference times RPM can give me that - right? Do I plan for a speed of 1-1/2 meters per second so the motor still has some acceleration for the straight-away?

If you plan on building a differential drive line follower robot, then you need motors that turn at least at twice the needed RPM, because in most control methods, you play on decelaration and acceleration for fast-tight turning.

EDIT: That's for sure after choosing the right torque, as described above! ;)
 
Last edited:
This is a test. I just typed in a long post and it gave me an error, so I'm trying this first


richardv2 said:
I want to build a fast line-follower. From details I seen through Google, it looks like 1 meter per second is atainable with the right hardware and software. My questions...

How do I equate 1 meter per second with a specific motor? I know the math is easy - wheel circumference times RPM can give me that - right? Do I plan for a speed of 1-1/2 meters per second so the motor still has some acceleration for the straight-away?

Now, if I want the least mass possible (more mass = harder to get through a turn fast), then do I want the lightest motor that will give me the RPM I need?

And what about torque? How does that figure in? For a given size/motor weight, does double the torque mean I can increase speed faster? Or does more torque mean more weight? ...Or just that from a standstill, higher torque will get me started faster, or what? What would be the trade-off questions I'd ask to select from several torque/speed possibilities?

I plan to use PWM and have a PIC18F control left and right motor speed. I'd start slow and work up speed and add PID as I learn how to apply it.
 
Jay Davis said:
This is a test. I just typed in a long post and it gave me an error, so I'm trying this first
That sucks. You lost the post didn't you?
 
Thanks dknguyen. I think agility will be the key as speed increases, so I like your idea of two wheels only. I also have been thinking that having the sensors "out in front" will also give me better reaction time.

...so a sensor boom out front with battery in back of the two wheels for balance seems a good choice.
 
Twice?? Could you please explain that.
Suppose for the wheels I have, 200 RPM = 1 meter/second.
Wouldn't a 400 RPM rated motor be operating mostly in the 25-50% range of its rated speed. . . .While a 200 RPM motor would be operating at the high end of its range, which seems more efficient. So I guess I don't understand why I'd intentionally run a motor at the low end of its range.
 
richardv2 said:
Twice?? Could you please explain that.

"Twice the speed you need" sounds like a rule-of-thumb-type thing that tries to account for the acceleration that you need (without actually considering acceleration). Due to the way the motor speed decreases as you increase torque load on it, a motor that can move your robot at the twice the speed you need will output more torque if it's running slower at the actual speed you need, somewhat accounting for the torque+acceleration factor without needing to think much about it. I don't use that rule though. I use the following rule-of-thumb though since it's lower-level and still lets me attempt to characterize the motor entirely.

Rule of thumb: a DC motor operates most efficiently at 1/7th to 1/8th of it's stall torque. Conversely, this translates to a DC motor operates most efficiently at about 6/7ths - 7/8ths of it's no-load speed.

Rule (not a rule of thumb): DC motors output the most power at half stall-torque or half no-load speed (which occur at the same point).

You know the problem about rules of thumbs though (ie. sometimes false and no optimization)...I've used the 1/7th rule though to try and figure out more operating characteristics about motors where only stall torque is given. It seems to hold fairly true since I use it on every motor I come by where all the data is given to check it's validity and they have all come very close to the 1/7-1/8th range so far.

richardv2 said:
Suppose for the wheels I have, 200 RPM = 1 meter/second.
Wouldn't a 400 RPM rated motor be operating mostly in the 25-50% range of its rated speed. . . .While a 200 RPM motor would be operating at the high end of its range, which seems more efficient. So I guess I don't understand why I'd intentionally run a motor at the low end of its range.

Your example is too vague as you don't specify what "high" and "low" end of the range are (is it torque? or is it speed?)

One reason to oversize a motor is to account for the extra torque you may need at peak torque conditions. Another is a cooler running, longer lasting motor. You sacrifice steady-state efficiency however when running an oversized motor (oversized relative to steady-state conditions to be specific, there's never a point in oversizing the motor relative to peak conditions). Sometimes you have to oversize the motor by a lot beyond steady state conditions because the peak-loads required are much much greater than steady-state, and a motor sized near steady-state would stall, overheat and burn out whenever the peak-load was encountered.

You might run an undersized motor because it is cheaper, and smaller, and depending on the way you use it, may take less current and extend battery efficiency(batteries provide more total energy if smaller currents are drawn from them). This can be the case in intermittemt applications where the motor has off-time to allow cooling.

A DC motor runs more efficiently when it is closer to no-load (full-speed) than stall-load (zero speed). However, below the torque/speed where you get maximum efficiency, (at very close to no-load), the efficiency drops very fast (much faster than if you went beyond the max efficiency point to a lower speed/higher torque).

Represenative graphs:
**broken link removed**

You probably know this, but your last post makes me have to say this out loud:
Don't size a motor stall's conditions to your steady-state operating conditions.
 
Last edited:
I get most of what you say... Let me state something and you tell me if I'm on the right track.

I have a set of wheels for a robot. I estimate that my goal is to average (straight-aways and smooth turns - no sharp corners) 1 meter per second.
The math of my wheels says I need 200 RPM to do 1 meter/sec. Since I need straight-away speed greater than that, let's say I shoot for 240 RPM max.
...so I find a 240 RPM gear-box motor.

So you are saying that my most efficient speed is about 85-87% of no load speed, or 240 X 0.86 = 206 RPM is a good speed.

If that's good for speed, now I'm stuck on torque. Isn't torque a direct function of the load? Won't a 2 pound and a 25 pound robot react totally differently torque-wise? ...or what would be the formula to answer this question...
I have a _____ pound, _____ ounce robot. The formula for computing the torque on dual drive motors is ???

I'm usually a fan of just "get a motor and see if it works", but I'd like to know more about how to select the correct motor the first time.
 
richardv2 said:
I get most of what you say... Let me state something and you tell me if I'm on the right track.

I have a set of wheels for a robot. I estimate that my goal is to average (straight-aways and smooth turns - no sharp corners) 1 meter per second.
The math of my wheels says I need 200 RPM to do 1 meter/sec. Since I need straight-away speed greater than that, let's say I shoot for 240 RPM max.
...so I find a 240 RPM gear-box motor.

So you are saying that my most efficient speed is about 85-87% of no load speed, or 240 X 0.86 = 206 RPM is a good speed.

If that's good for speed, now I'm stuck on torque. Isn't torque a direct function of the load? Won't a 2 pound and a 25 pound robot react totally differently torque-wise? ...or what would be the formula to answer this question...
I have a _____ pound, _____ ounce robot. The formula for computing the torque on dual drive motors is ???

I'm usually a fan of just "get a motor and see if it works", but I'd like to know more about how to select the correct motor the first time.

Yes, torque is a function of load (as in, torque is the load as far as the motor is concerned). RPM, in turn is a function of torque which can make it a pain in the ass to figure out exactly what kind of motor characteristics you need.

You do not so much find a 240 RPM gearmotor as you find a motor that is capable of outputting 240 RPM at the torque you need. If you know the torque you need (see my tutorial in the ELectronics THeory and Design section). My tutorial only deals with how much torque is needed so a robot can maintain constant speed on a slope (just enough to overcome gravity and other forces). You will need more torque to accelerate past zero speed to actually move up the slope! If you know your needed acceleration and robot mass, use F=ma and convert it to torque and add it on to the torque calculated in my tutorial to do this.

You, of course, divide the total torque required to move the robot by the minimum number of motors you expect to be moving the robot at one time (like on all-terrain robots where wheels can lose their footing causing motors to not do any work, especially if one motor drives one wheel and multiple wheels are/aren't ganged to the same motor).

What is "straight-away" speed? Is that no-load? If so, what you said is correct. If straight-away speed is the speed moving in a straight line, then you actually need a motor that no-load speed than that (assuming it provides enough torque that is). You use the 1/7th rule on the 240RPM maximum, straight-line speed to figure out the no-load speed of the motor with best efficiency (assuming the motor has the torque characteristics under your load to run at maximum efficiency).
 
Last edited:
Status
Not open for further replies.

Latest threads

Back
Top