120 degree precisely (hence no 1.8 +/-5%)

Hi

I need to turn a 3,5cm plate in 120 degree steps/angels - precisely - no more or no less.

  • I have 1 sec. to move it 120 degree.
  • Weight will be less than 200g.
  • Any voltage will do - i'll just source a corresponding supply.
  • Wouldn't mind using my adafruit motorshield (optional)
  • Pricetag is "less" important than precision.

Most of the stepper motors I could find is 1,8 +/-5% - and thats a dead-end.

Any recommendations?

Thanks!

Kind regards Taras

precisely - no more or no less.

Nothing in this world is precise, everything has a tolerance on it. Find out what your tolerance is and then maybe we can have a sensible discussion.

In the mean time, think about gears and micro stepping.

Alright, alright a bit exaggerated

The disc I'm turning has a 3,5 cm diameter - Ø109,9mm
Each degree = 0,289mm
Optimal tolerance is +/- 0,1mm hence +/- 0,346 degree
Max tolerance would be 0,15mm = 0,52

Hope it helps you help me... thanks!

The disc I'm turning has a 3,5 cm diameter - Ø109,9mm

sp. "The disc I'm turning has a 3,5 cm diameter - Ø35mm

sorry, circumference 109,9mm

sp. "The disc I'm turning has a 3,5 cm diameter - Ø35mm

Methinks he meant the circumference is 109.93, which would round to 110 mm at the circumference.

You're only off a little more than a factor of two from your target, so a microstepping drive in the 1/4 or 1/8 step mode would suffice. You haven't told us how many Amps, so I'll point you in the general direction:

Optimal tolerance is +/- 0,1mm hence +/- 0,346 degree

So 1.8 / 0.346 = 5.2
Therefore gearing the motor at anything greater than 6:1 or micro stepping at say 16 micro steps / step would get you to where you need to go.

Hi

So basically what you are telling me is that using a 1/8 microstepper driver (such as EasyDriver - Stepper Motor Driver - ROB-12779 - SparkFun Electronics), combined with a 1,8 degree stepper (such as https://www.sparkfun.com/products/9238), I can break down the 200 steps in a rotation into 1600 steps.

Did I get it correct?

Alternatively I could get a gear with a min. reduction of 1/6 .
Could you recommend a 1/6 geared stepper?

Recommendations - microstepper vs. gear ?

It is going to have a high repetitive usage, so I would not mind using a little extra money on getting some quality components.

I think it would help if you explain what the project is supposed to do rather than how you think you should do it.

While microstepping breaks big steps into little steps the little steps are not as precise as the big steps would be.

Also, 120 deg is 1/3rd of a revolution. A 200 step motor can never move exactly 1/3rd of a revolution no matter how many microsteps you choose because microsteps are all powers of 2.

A toothed belt drive (to eliminate backlash) with gearing that adjusts the step rate so it can give an exact 1/3rd revolution would probably be necessary. For example 1:3 gearing means that a full revolution of the motor using all the precision of full steps would give 1/3rd revolution of the disc.

...R

While microstepping breaks big steps into little steps the little steps are not as precise as the big steps would be.

.true but it is monotonic.
That one step is always results in a larger angle.

Under load, stepping motors can miss steps completely and the problem is worse with microstepping, as discussed here: http://preview.insidepenton.com/machinedesign/nl/MicroMo-Microstepping-Myths.pdf

A toothed belt is the best way to go for precise control, but gears are fine if backlash is taken into account. You can buy geared steppers quite cheaply on the surplus market.

You're quite right, I've attached an illustration of my device...

Was also considering just using something like Continuous Rotation Servo [FeeTech FS5103R] : ID 154 : $11.95 : Adafruit Industries, Unique & fun DIY electronics and kits though with a proximity feedback, and then use some PWM to hit that exact angle.... but it might be a hard job for a newbie

Was also considering just using something like Continuous Rotation Servo [FeeTech FS5103R] : ID 154 : Adafruit Industries, Unique & fun DIY electronics and kits though with a proximity feedback, and then use some PWM to hit that exact angle.... but it might be a hard job for a newbie

Replace "hard" with "impossible" and "for a newbie" with "for anyone".

Alright, I'll take your word for it!
Have got a Adafruit Motor shield, wouldn't that be able to do the trick, or would it still be to difficult to get it within my tolerance?

taras:
Alright, I'll take your word for it!
Have got a Adafruit Motor shield, wouldn't that be able to do the trick, or would it still be to difficult to get it within my tolerance?

I'm confused again now.

An Adafruit Motor shield is not necessary to drive a servo - but you seem to have accepted that a servo is not suitable. Neither is the motor shield appropriate for a stepper motor.

You need a proper stepper motor driver board - the Pololu A4988 is a good example but may or not be suitable for your chosen motor. The stepper motor driver must be comfortably able to supply the current required by the stepper motor. The A4988 can work with motors up to about 1.5 or 1.7 amps.

...R

The problem with microstepping is that you can't really stop there, reliably.

I'd use toothed pulleys to "gear" it down so you can use full steps.

You can stop where you want with microstepping if there's negligible friction
and keep powered up.

Microstepping doesn't give you the accuracy you think though, since the motor shaft
will not be precisely at the centre of the stator (in a cheap production stepper), this
slop is normally quoted in the specs.

Also the microstepping response of motors is not linear between full-steps, its a bit
wavy. Microstepping gives you some more resolution and a lot less vibration, which is
important for fast moving systems.

If you want really good accuracy you need an expensive optical shaft mounted encoder and
closed loop control.

You aren't looking for high accuracy at all, high accuracy means more like 2^16 steps
per revolution or better! check the motor specs - something like "+/-5% of step size" or
some such will be quoted if the motor has a good datasheet.

If you can find a nice 0.9 degree step motor you'll get to 0.45 degrees just with half-stepping

Thank you for explaining what I didn't have time to.

In addition, if you power down the stepper, or if your stepper driver has auto-power off, the stepper will fall back to a full step position. Since you may not know which way it fell, you'll have to program it so it finds the Home position again.

You might get a stepper motor/driver setup like below and experiment. The motor probably has four discrete positions per rotation, and it has 64-1 gear reduction, so that should resolve to 256 discrete positions in one rotation of the output shaft. That would give 1.4 deg position accuracy.

http://www.ebay.com/itm/5V-Stepper-Step-Motor-Driver-Board-ULN2003-28BYJ-48-For-Arduino-High-Quality-/271473069262?pt=LH_DefaultDomain_2&hash=item3f350e4cce

look into an encoder and a simple DC motor. the stepper is only accurate to 1.2 step, the reason for microstepping is to smooth out the movemet between steps and not for positional accuracy.

also, if you lose power, your motor will move to the nearest full step and you will need to re-zero. but zero will not be at a natural full step, so that too will be off.

with an encoder you have positional feedback.
with a simple window and opto-interupter, you can make your own target so all you need to do is move until it finds the new point.

another way is to put a mechanical stop, with adjustment and slam the part into the stop. you can use a cheap DC motor for that or a hobby-servo.

trying to hold in space with just the stepper seems like the hard way to go.