Where to find a stepper that uses a potentiometer?

(It is easy to misunderstand what I'm describing if you read it too fast)

I've google this for a few days now. I'm looking to make or buy something that bolts onto the back of a stepper motor that makes the stepper motor function exactly like an RC servo. That means it receives PPM/PWM input, HAS A POTENTIOMETER to measure shaft position, and automatically moves the stepper CW or CCW until it is in the correct position according to pulse width. Think of it like RC servo electronics with a big stepper motor in place of the little DC motor that normally is found in the servo casing.

If for some crazy reason this doesn't already exist, one way that it could be made is by buying a cheap servo, desoldering the small DC motor from the control board, making some kind of interface that translates DC voltage to stepper pulses, and outputting that to a stepper motor.

A stepper with an optical encoder is not what I'm looking for. A stepper that receives a direction and speed, regardless of what is attached to it, is not what I'm looking for.

Doesn't this already exist? If not, what would be the simplest design, with the fewest separately-bought pieces, for something like this?

I can't see why such a device would exist in the form you describe - a pot is a pretty terrible absolute position feedback mechanism.
Remember, R/C servos are designed for model control, with a man-in-the-loop.

David82:
(It is easy to misunderstand what I’m describing if you read it too fast)

I’ve google this for a few days now. I’m looking to make or buy something that bolts onto the back of a stepper motor that makes the stepper motor function exactly like an RC servo. That means it receives PPM/PWM input, HAS A POTENTIOMETER to measure shaft position, and automatically moves the stepper CW or CCW until it is in the correct position according to pulse width. Think of it like RC servo electronics with a big stepper motor in place of the little DC motor that normally is found in the servo casing.

If for some crazy reason this doesn’t already exist, one way that it could be made is by buying a cheap servo, desoldering the small DC motor from the control board, making some kind of interface that translates DC voltage to stepper pulses, and outputting that to a stepper motor.

A stepper with an optical encoder is not what I’m looking for. A stepper that receives a direction and speed, regardless of what is attached to it, is not what I’m looking for.

Doesn’t this already exist? If not, what would be the simplest design, with the fewest separately-bought pieces, for something like this?

does not exist. it is like asking for a car that both floats and flies, but does not roll on the roads.

of course, you can make anything you like and it may work fine. I would offer that since you know what you want, that you should be able to make a circuit that drives your stepper the way you want.

simplest design would be a NANO or MINI, a stepper driver, power supply (don’t pretend you are going to use batteries)
and your pot.

connect your pot to the shaft of the stepper, run the pot into the A/I of the arduino for feedback, write your sketch to read the angle and then output to your driver to control. the only real addition to running a stepper in a more common way is the addition of the pot. but some software and you can integrate them.

Use a shaft coupler to connect two things that have shafts.

If for some crazy reason this doesn't already exist

It doesn't, because no one would buy one.

You can write a program to make a stepper behave like a hobby servo without needing to put any potentiometer on it. You will need a limit switch so the Arduino can move the stepper at startup to establish the ZERO or HOME position.

...R
Stepper Motor Basics
Simple Stepper Code

AWOL:
I can’t see why such a device would exist in the form you describe - a pot is a pretty terrible absolute position feedback mechanism.
Remember, R/C servos are designed for model control, with a man-in-the-loop.

dave-in-nj:
does not exist. it is like asking for a car that both floats and flies, but does not roll on the roads.

of course, you can make anything you like and it may work fine. I would offer that since you know what you want, that you should be able to make a circuit that drives your stepper the way you want.

simplest design would be a NANO or MINI, a stepper driver, power supply (don’t pretend you are going to use batteries)
and your pot.

connect your pot to the shaft of the stepper, run the pot into the A/I of the arduino for feedback, write your sketch to read the angle and then output to your driver to control. the only real addition to running a stepper in a more common way is the addition of the pot. but some software and you can integrate them.

jremington:
Use a shaft coupler to connect two things that have shafts.
It doesn’t, because no one would buy one.

I would buy one. The applications would be any robotics project where someone wanted much more torque than servos provide and they wanted to take advantage of the simpler, direct-mount stepper shaft instead of messing around with external gear boxes to get the required extra torque. They make big beefy RC servos but they are $500. No need for that when the cost of RC servo internal electronics and the stepper itself is much cheaper. You have 5v powering the board and PWM signal, but 12v or more powering the stepper.

Why is open-loop bad? I want to tell the stepper to go to a specific angle, and not have to guess about where it was when I gave it that command, or calculate (guess because you don’t really know the real position for sure) the number of steps needed to get to that angle. I want to be able to interrupt it while it is in the middle of moving to tell it to immediately head to some new position. It needs to be able to be bumped or interfered with but still know exactly what position it is in. You can’t meet all of those requirements with open-loop control. I also don’t need continuous rotation. 180 degrees is fine.

If you are trying to optimize high-torque, direct-drive strength, & low-cost (< $150) while meeting the above requirements, what better option is there than the one I originally described? Show me a servo with > 500oz/in of torque, a metal case, and a 3/8 to 1/4 thick, > 2in long output shaft for under $150? Oh, they don’t exist? That’s how the initial question came up :slight_smile:

They still don't exist no matter what your protestations are. There is a very simple reason for this, you don't need them if you design your system correctly.

However if you insist you can get a servo pot to put on the end of your motor with a shaft coupler, they are not cheap but here is one:-
http://uk.rs-online.com/web/p/potentiometers/0173574/

Then you have to make the PID electronics yourself either with an Arduino or other electronics.

Why not get a stepper with a shaft at each end of the motor and couple a pot onto one end. Be sure to include some fixed stops so the motor does not wreck the pot by moving too far.

...R

Use a rotary encoder, so you don't need to care if it goes too far. Using a stepper implies unlimited angular displacement - you can go round-and-round. Why limit your newly developed device to the 280 or so degrees of a normal potentiometer, or even the 10 or so turns of a precision pot?

Why limit your newly developed device to the 280 or so degrees of a normal potentiometer, or even the 10 or so turns of a precision pot?

The pot I posted was a continuous 360o rotation pot.

ChrisTenone:
Use a rotary encoder, so you don't need to care if it goes too far. Using a stepper implies unlimited angular displacement - you can go round-and-round. Why limit your newly developed device to the 280 or so degrees of a normal potentiometer, or even the 10 or so turns of a precision pot?

I don't want continuous rotation. It would break the things mounted on it. I'm generally just looking for a way to build a cheaper version of the $500 high-torque servos, but with a stepper-like body, stepper-like mount, and stepper-like output shaft.

If you use a rotary encoder, can you magically send the stepper a specific position/angle to go to? No, you can't? You have to send it a direction and speed? That won't work then. Again, you don't actually know for sure where a stepper is. You can't interrupt it, bump it out of position, or interrupt the power to it, without it getting off track. servos solve this with a potentiometer.

If you use a Hall effect rotary encoder you get the precise angle because it is an absolute encoder. This is a 10 but number and so is more accurate than the stepping motor steps. At about $8 per chip they are cheaper than a servo pot.
http://uk.rs-online.com/web/p/hall-effect-sensor-ics/6691501/

Grumpy_Mike:
If you use a Hall effect rotary encoder you get the precise angle because it is an absolute encoder. This is a 10 but number and so is more accurate than the stepping motor steps. At about $8 per chip they are cheaper than a servo pot.
http://uk.rs-online.com/web/p/hall-effect-sensor-ics/6691501/

Yea, I noticed that absolute encoders exist, and they are sort of cheap. The problem is that when you want to get everything, the controller, the absolute encoder, and the stepper, the price shoots way up to several hundred dollars. If you compare price vs oz-in of torque, the price is horrible compared to high-end hobby servos. The whole point is to create a servo that has about 400oz/in or more, is controlled like a rc servo, has the physical shape and output shaft of a steppe, but is around $150.

The problem is that when you want to get everything, the controller, the absolute encoder, and the stepper, the price shoots way up to several hundred dollars.

No, not if you make it yourself.

You keep saying

You have to send it a direction and speed?

You send a steping motor driver a direction and a step pulse, you do not set a speed.

If you use a rotary encoder, can you magically send the stepper a specific position/angle to go to? No, you can't? You have to send it a direction and speed? That won't work then. Again, you don't actually know for sure where a stepper is. You can't interrupt it, bump it out of position, or interrupt the power to it...

Steppers can handle all this perfectly well. Except for holding power-off position, which can be implemented the same way a servo does it - gearing down.
All you're doing is outsourcing the servo loop to the Chinese servo manufacturer. The code to handle this better on a stepper is trivial.The only weakness is the presence of distinct step positions, whivh would be minimised by the gear reduction.
Both motors have their advantages, but the control system is custom to the application.

David82:
If you use a rotary encoder, can you magically send the stepper a specific position/angle to go to? No, you can't? You have to send it a direction and speed? That won't work then. Again, you don't actually know for sure where a stepper is. You can't interrupt it, bump it out of position, or interrupt the power to it, without it getting off track. servos solve this with a potentiometer.

This all confused.

The whole purpose of a stepper motor is the ability to send it to a specific position.

You do NOT send a speed command to a stepper motor. You send it a series of pulses, The interval between your pulses controls the speed,

Yes you can bump a stepper out of place but if that is possible in normal operation it means that the chosen motor is not suitable for the application.

And the whole purpose of the rotary encoder is to give independent position data that can be use to correct for any erroneous movement of the motor. A poterntiometer could also do that but with less precision.

Why don't you tell us what the project is about and then you might get useful information. At the moment this is yet another XY Problem

...R

David82:
"The problem is that when you want to get everything, the controller, the absolute encoder, and the stepper, the price shoots way up to several hundred dollars.

This is the basis of the X/Y PROBLEM.

you chose to make decisiosns and not inform others, then ask others to offer solutions to problems that are not the actual problem.

have you stated what your ACTUAL need is ? diving a speedometer needle ? moving a laser cutter ?

Start there.

David82:
The whole point is to create a servo that has about 400oz/in or more, is controlled like a rc servo, has the physical shape and output shaft of a steppe, but is around $150.

then state that as your goal. we can offer why it will work as well as the problems in getting it to work.

a hobby servo is just a DC motor with feedback.

no reason you cannot use a 200 HP motor with feedback that is an industrial servo.

the cost of the DRIVER is what drives up the total cost. switching 10's of amps requires proper circuit design.
createing a circuit that runs at high speed and does not create feedback in board layout is vital for clean pulses.
heat is a factor

These are de rigour in the CNC world, see the Gecko Servo Driver,
you CANNOT have a stepper over a certain power and DC motors are horrible at low speed.

but, if you have a machine that needs high torque, your machine is not a flimsy design with floating shafts that are suported on the ends. it uses heavy and expensive rails. spending a few thousand dollars on a spindle or laser means you are not looking to save a few dollars on cheap motors or drivers. the reason some of these things cost as much as they do is because the parts cost more when you buy properly engineered parts.

dave-in-nj:
This is the basis of the X/Y PROBLEM.

you chose to make decisiosns and not inform others, then ask others to offer solutions to problems that are not the actual problem.

have you stated what your ACTUAL need is ? diving a speedometer needle ? moving a laser cutter ?

Start there.

A computer is pointing a camera that weighs 50lbs+ at random, specific points, at random times that cannot be predicted. Open-loop step and direction commands are NOT an option. The system is currently working with RC Servos and external gearboxes. I want the same high torque and closed-loop PWM positioning in a simple, stepper-like package. Metal-bodied motors with 1/4inch+ thick output shafts would greatly simplify the hardware cost and complexity by eliminating the need for all of the junk needed to convert a RC hobby servo to something with the physical properties of a stepper.

Hi,

Show me a servo with > 500oz/in of torque

500 oz.inches = 36 kg.cm = 3.53 N.m

http://www.robotshop.com/en/hs-7950th-ultra-torque-coreless-titanium-gear-servo.html

• Motor Type: Coreless
• Bearing Type: Dual Ball Bearing
• Speed (6.0V/7.4V): 0.15 / 0.13
• Torque oz./in. (6.0V/7.4V): 403 / 486
• Torque kg./cm. (6.0V/7.4V): 29.0 / 35.0

http://www.robotshop.com/en/hitec-hs-7980th-mega-torque-hv-coreless-titanium-gear-servo.html
• Designed to operate on a two cell LiPo Pack
• Ultra performance coreless motor
• Integrated heat sink case
• Torque oz./in. (6.0V/7.4V): 500 / 611
• Torque kg./cm. (6.0V/7.4V): 38.0 / 46.0

The reason for the high cost is the strength and material of the gearbox, chassis, motor size, power requirements.

It may sound cheap to throw together the small el-cheepo $3.00 servos, but they are built to a price, they are not very strong and their reliability is at time questionable.

You are after a servo with better/higher specs and reliability than the many throw away units.

$125 sounds like a bargain, put an "industrial or commercial" name tag on it and multiply by 5 or 10 to get a suitable servo.

I service large servos controllers used in industrial processes and the minute you start asking for large amounts of torque, and not necessarily speed, the current control requirements due to inductive loads and high accel and deccel push the budget and development costs higher and higher.

Tom... :slight_smile: