Getting rid of step skipping of a small stepper motor

Status
Not open for further replies.

ledi

Newbie
Joined
May 13, 2020
Messages
3
Helped
1
Reputation
2
Reaction score
1
Trophy points
3
Activity points
35
I'm designing a small apparatus that has a single stepper motor and an arduino that read signals from external source and them makes the stepper motor to point to a specific direction. Last night I figured out how to calculate the shortest way and direction from any segment of the circle to another and that part works great. The arduino also homes the motor upon startup so the start point is always known. The soul of the project is alive, great.

Problem: the motor skips steps sometimes when changing direction or when moving after being still.
After losing steps it obviously doesn't point to where it thinks it points to anymore.
How could I prevent this?

Overall design needs to be light and simplicity is a bonus.

In the end the motor will be spinning a disk instead of a hand.
I'm now using an arduino nano clone and cheap 24BYJ-48 stepper motor with its provided driver.
 

Attachments

  • IMG_20200714_231935.jpg
    3.5 MB · Views: 154

Are you aware that it's necessary to perform speed ramps? Stepper motors have a start/stop frequency specification, valid for a specific moment of inertia coupled to the shaft. Movement at higher step rates requires ramps.
 

I did come across that information too while searching for solutions. Is that something the very basic arduino library can't do and what AccelStepper library is for?
 

AccelStepper library takes care of acceleration/deceleration (one of parameters that you have to declare in your program). Read the documentation for the library, everything is well explained with samples.
 
Reactions: FvM

Hi,

You may also use dedicated stepper driver ICs with movement control.
Like TMC5072.

Klaus
 

Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…