Go Down

Topic: Comparing stepper motors (Read 265 times) previous topic - next topic

kadamr

I'm comparing these two stepper motors:

1) 12V, 0.33A, NEMA 17, bi-polar, 200 steps
https://www.sparkfun.com/products/9238

2) 3V, 1.7A, NEMA 17, bi-polar, 400 steps
https://www.sparkfun.com/products/10846


I'm struggling with some unanswered questions even after reading every stepper motor guide I can find. If anyone could help with these questions I'd really appreciate it! I will refer to the motors by their voltage - I realise voltage isn't that important in stepper motors, but it's just for referencing them.


A) The 3V motor draws significantly higher current at a far lower voltage (and therefore has more torque even at the lower voltage) - so is the 3V motor objectively a better motor? The only disadvantages being price (+$2) and height (+1cm)?

B) Using a stepper driver: hypothetically, would a 3V supply to the 3V motor perform better than a 12V supply to the 12V motor? Despite the higher voltage supplied to the 12V motor, its higher winding resistance means the 3V motor would still outperform it, right?

C) People often run a 12V stepper with 8 AA batteries (12V) and get good performance. Does this mean I can run the 3V stepper with 2 AA batteries (3V) and still get good performance (or even better than the 12V motor because of higher current rating)? In that case I could use 4 AA batteries to power the motor, driver and my microcontroller for a nice portable project - or is this just wrong?

Thanks in advance for any help, I've been trying to figure this out for two weeks!

Robin2

#1
Aug 10, 2018, 06:09 pm Last Edit: Aug 10, 2018, 06:13 pm by Robin2
You should choose a stepper motor to provide the torque you require. The 1.7A motor has about twice the holding torque of the 0.33A motor.

For a given power supply voltage a stepper motor with low coil resistance will be capable of a higher speed.

The torque drops of significantly as speed increases so you probably need to view the graph of torque vs speed if it is available.

When you have selected your motor then you need to select a stepper motor driver. The 0.33A motor will work with Sparkfun Easydriver, BigEasydriver or a Pololu A4988. But they won't be suitable for the 1.7A motor. At the very least you would need a Pololu DRV8825.

If cost is a consideration then be sure to take account of the combined cost of motor and driver.

Stepper motors work better at higher voltages. I would not consider using less than 12v for either motor and 18v or 24v would be better. The 1.7A motor will perform very poorly at its nominal 3v, and in any case, most stepper drivers cannot work with such a  low voltage.

Study these links for more detail
Stepper Motor Basics
Simple Stepper Code


...R
Two or three hours spent thinking and reading documentation solves most programming problems.

kadamr

Thanks for the reply! That makes sense and is very useful.

I want to have a stepper motor (with driver) and microcontroller in a portable package. Is there a way of running these off a single battery?

To get to 12 volts I could just about fit 8 AA batteries into my project. Is it possible to connect this same power supply to my microcontroller as well via a 5V buck converter?

I heard it's a bad idea to use the same power supply for the motor and microcontroller - but I can't fit an additional 4 AA batteries for the microcontroller (making 12 in total) in my project.

Robin2

Stepper motors are very inefficient and are not really suited to battery power. They draw full power even when stationary. A pack of AA cells will be used up very quickly. If you disable the drivers to save energy the motor is likely to lose position.

An Uno or Mega can be powered directly from 12v connected to the barrel jack.

...R
Two or three hours spent thinking and reading documentation solves most programming problems.

kadamr

Thanks again. I will be using the stepper motor with a worm gear/drive so when it is off the gearing shouldn't shift at all I think. In fact there are two separate stepper motors.

If I use 8 x 2800mAh AA batteries I should have around 10-12V and 2800mAh which should power one 1.7A stepper motor for over an hour in the worst case scenario (stationary). But I will only be using the motor for a split second at a time - it is doing small steps for a time lapse. It will be turned off the majority of the time. I expect this means it will last for a long time.

I already have the microcontroller - its 5V, so I'll use a buck converter connected to the same 8 AAs.

Does any of this sound completely wrong?

Robin2

Does any of this sound completely wrong?
Will it be a problem if a stepper motor jumps forward or backwards one step when you re-enable the driver?

...R
Two or three hours spent thinking and reading documentation solves most programming problems.

kadamr

Ah! I didn't realise this could happen - that would be a problem.

My thinking was when you turn the motor off if it would stay still so long as there was no force on it. And as I was using a worm drive (that can't be driven backwards) there wouldn't be any force to rotate it. I didn't think about re-enabling it being a problem.

Is there a way to avoid jumping when it re-enables?

For context - professional products that match what I'm trying to make use a 11.1V 2000mAh battery and quote over 8 hours life. They must get around this as I imagine they aren't permanently on for the 8 hours!

I need to do one, and only one, full step every 10 seconds, and disabled the rest of the time.

Robin2

Is there a way to avoid jumping when it re-enables?
No.

And, of course, it may not jump a step, but you can't guarantee that.

It is probably less likely to jump a step if you are using the motor in full-step mode.



...R
Two or three hours spent thinking and reading documentation solves most programming problems.

Daenerys

> Is there a way to avoid jumping when it re-enables?

Stepper motors don't magically 'jump' when re-enabling the driver.

>My thinking was when you turn the motor off if it would stay still so long as there was no force on it.

You are correct!  That is what happens.



Robin2

You are correct!  That is what happens.
I don't believe you can guarantee that. If the motor is not perfectly aligned with its poles it could move to a different pole from the one it stopped at. For example if it was under load (pushing, let's say) when the power is turned off it is likely to relax back to a between-steps position.

The proper way to avoid missed steps is to keep the motor powered.

...R
Two or three hours spent thinking and reading documentation solves most programming problems.

kadamr

Thanks both.

In that case (and out of interest anyway), are there any stepper drivers one can buy that have a reduced holding current capability? I don't need very high current for holding as the stepper motor will not be under much torque.

I couldn't find any of the breakout boards by SparkFun, Adafruit etc. that mentioned this and I can't design my own in the time frame I have, even if I were able.

MarkT

> Is there a way to avoid jumping when it re-enables?

Stepper motors don't magically 'jump' when re-enabling the driver.
Depends on the driver and the library and how "re-enabling" is implemented.  The driver would need
to remember phase, and with microstepping remember all of the microstepping state.  I think you'd
need to read the datasheet of the stepper driver chip carefully.
Quote
>My thinking was when you turn the motor off if it would stay still so long as there was no force on it.

You are correct!  That is what happens.

[ I will NOT respond to personal messages, I WILL delete them, use the forum please ]

Go Up