I'm working on a project which involves a stepper motor.
The motor has to turn with a precision of at least 0.1 degree at a low RPM rate, and only a very small torque is needed.
Looking at the options and datasheets of different stepper motors, I figured half stepping/microstepping
is needed to achieve such small steps. But I can't decide which motor, unipolar of bipolar, should be used.
I've seen a lot of examples of achieving microstepping with bipolar steppermotors, but is this also possible using unipolar motors? And which is the best option to go with?
Most bipolar stepper motors have 200 steps per revolution which is 1.8 degrees per step. With microstepping that can be reduced by factors of 2. 1/16th microstepping would give an angle per step of 0.1125°. An exact 0.1° would not be possible without gearing.
Speed is entirely dependent on the interval between step pulses so it can be a slow as you want.
If you tell us what you are trying to create it will be much easier to give useful advice.
The 0.1 degrees is not mandatory, slightly below or above should be fine as well. So I think 16th stepping will suffice.
I'm trying to calibrate a camera lens using a motor. So the motor must turn the lens. This task does not require a lot of torque.
Are there any advantages when using an unipolar motor compared to a bipolar motor in terms of precision?
If there are none, I will just stick with a bipolar version and use an appropriate driver (like the A4988).
p.s. The information provided with those links at the bottom of your post are excellent. Thanks for that.
Microstepping is intended for smooth rotation with less vibration, and does not produce accurate steps.
So if "precise motion" is really important for your project, you need to gear a standard 200 step/rev motor down by more than 10:1, use full or half steps only, and possibly also drive in only one direction to reduce gear backlash.
Do not expec too much from microstepping with cheap motors. A better soluion is feedback with encoder, to get beter results. or gears, however his is tricky.
Unipolar motors used to be popular because it saved 2 transistors in the driving circuit. Transistors used to be expensive! Now the number of transistors inside an A4988 is enough to build a small computer. It is a small computer, with only one task. It is very good at that task, so now bipolar motors are preferred.'
I disagree with the "inaccurate" comment. Running at 1/16 microstepping you can't expect that every step is exactly the same as every other, but you can expect that it achieves 16 distinct positions when lightly loaded. Full steps are always full steps, due to the construction of the motor. There's innaccuracies there too. Maybe the inaccuracy is bigger than 1/16th of a step on a few of those full steps. It's all highly dependent on the motor manufacturer.
Running at 1/16 microstepping you can't expect that every step is exactly the same as every other, but you can expect that it achieves 16 distinct positions when lightly loaded.
Thron1998:
Are there any advantages when using an unipolar motor compared to a bipolar motor in terms of precision?
If there are none, I will just stick with a bipolar version and use an appropriate driver (like the A4988).
The common unipolar motor used with an Arduino is the 28BYJ-48 which is a combined motor and gearbox. It should have plenty of torque for your project but I don't think it would have the accuracy you need due to backlash within the gearbox. Also the gear ratio is not an exact number - I've never been able to find out what it is.
A low-geared DC motor with an encoder like these from Pololu might be more suitable. Those motors are widely available.
You will need a suitable H-bridge motor driver to enable the Arduino to control a DC motor.
No one uses microstepping for "precise positioning". Serious applications use industrial servos with high resolution encoders.
Indeed - microstepping is all about reducing noise and vibration and increasing effective torque
by reducing mid-band resonance effects. The precision of a stepper motor under load is worst-case
nearly +/- 2 steps, as it cogs every 4 steps.
0.1 degree accuracy suggests anti-backlash gear reduction is needed.