Go Down

Topic: Moving a closed loop stepper motor VERY slowly (Read 405 times) previous topic - next topic

crumblingbiscuit

Hi all,

I have a project in which a 450 mm long arm will rotate in steps of 0.5 degrees from 0 to 90 degrees. Each step will take 3 seconds and the motor has to stand still for 2 seconds before going to the next 0.5 degrees. 

The arm will be actuated by a stepper motor with a shaft thats attached to the arm. The shaft is supported by two bearings, so the load of the arm won't have to be carried fully by the stepper motor shaft.

The problem im facing is the following:

I want to make a trapezoidal motion profile for the movement, because I dont want it to go to max speed instantly, but rather accelerate and decelerate. However the movement that it has to make is SO small, I dont know how I could possibly make a motion profile for this. Also, I am not sure how to program this in Arduino. I have the CL57T motor controller from StepperOnline, which is able to do microstepping up to 40.000 PPR.

Also I am worried about the motor having to turn so slowly because I've heard it generates a lot of noise, vibration and heat. Can someone tell me if this is true and if so, what I can do about it?

Thanks in advance!

zwieblum

Take a look at the specs of your stepper: How many steps per revolution? 200? 400? How does that fit to your 720 steps/rev. ? 0.277 steps per 0.5°?

crumblingbiscuit

Take a look at the specs of your stepper: How many steps per revolution? 200? 400? How does that fit to your 720 steps/rev. ? 0.277 steps per 0.5°?
its 200 steps per revolution. However with microstepping ''theoretically'' it should be able to do up to 40.000 steps per revolution from what I understand.

zwieblum

Microstepping divides steps and momentum. e.g. fullstep ~ 10Nm --> halfstep 5Nm --> 1/4 step 2.5Nm ... so each fullstep position you get 10Nm, inbetween that you get for 1/2 step positions 5Nm, inbetween that you get for 1/4 step position 2.5Nm ... better get a geared stepper with a 1:36 ratio - or any ratio that translates 200steps/rev to 360steps/rev

jremington

Microstepping does not produce accurate fractions of a step. Instead, it is designed for smooth continuous running. 

As suggested above, use a gearbox to produce accurate step fractions.

Robin2

The problem im facing is the following:
You have given a lot of information but you have not told us how many steps the motor would need to move to achieve the 0.5 degrees.

Note, also, that degrees and stepper motors don't sit well together because there are 360 degrees in a circle but stepper motor circles are multiples of 200 steps. Gearing can solve that problem.

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

crumblingbiscuit

Microstepping does not produce accurate fractions of a step. Instead, it is designed for smooth continuous running.  

As suggested above, use a gearbox to produce accurate step fractions.
I was not aware of that. Would there be another possible solution in stead of buying a motor with a gearbox? They seem to be quite expensive and I already ordered a regular stepper motor without a gearbox.

zwieblum

If you have a 3d printer, just print one. Or use a timing belt and built a 5:9 gear.

crumblingbiscuit

If you have a 3d printer, just print one. Or use a timing belt and built a 5:9 gear.
But doesn't a gearbox have backlash? How can I solve the backlash problem? 

jremington

#9
Nov 21, 2020, 10:06 pm Last Edit: Nov 21, 2020, 10:08 pm by jremington
Half-stepping a standard motor is accurate, because one or two coils are always fully powered.

Why haven't you posted the rest of the details?

Gearbox backlash is only an issue if the motion is back-and-forth, and if so, is easily corrected by approaching the final goal from one direction only.

crumblingbiscuit

Half-stepping a standard 200 step/rev motor is accurate.

Why haven't you posted the rest of the details?

Gearbox backlash is only an issue if the motion is back-and-forth, and if so, is easily corrected by approaching the final goal from one direction only.
please let me know which details you are interested in and I will provide them 
Let's say the starting position of the arm is at 0 degrees, then it moves to 0.5 degrees by using a motor with a gearbox. at 0.5 degrees the arm is standing still for 2 seconds. If I were to touch the arm during this 2 second standstill, i would be able to move it because of the backlash, no? I'm asking because part of the object attached to the arm will be in a box with water, so the water will exert forces onto the object. I'm thinking maybe these forces could move the arm while it is in standstill because of the backlash.

Paul_KD7HB

Gear backlash was solved several generations ago with spring-loaded split gears. Usually made of metal.

Paul

jremington

#12
Nov 22, 2020, 12:31 am Last Edit: Nov 22, 2020, 12:35 am by jremington
Post details explaining how and why backlash is a problem for a device suspended in moving water, in a box.

JCA34F

#13
Nov 22, 2020, 01:57 am Last Edit: Nov 22, 2020, 02:00 am by JCA34F
Cog belt drives don't have backlash as long as proper belt tension is maintained, 15 teeth on the motor sprocket, 54 teeth on the driven sprocket, 1 step on motor = 0.5 degrees on driven sprocket. Driven sprocket torque = (about) 3.6 times motor torque.

johndg

I want to make a trapezoidal motion profile for the movement, because I dont want it to go to max speed instantly, but rather accelerate and decelerate.

Also I am worried about the motor having to turn so slowly because I've heard it generates a lot of noise, vibration and heat. Can someone tell me if this is true and if so, what I can do about it?

You don't need acceleration or deceleration. At the speed you're talking about, the motor is not moving continuously, just moving a few steps* very slowly, and stopping for a while. At each step, you'll have the full pull-in torque available. 
* Number of steps per move depends on gearbox ratio. If I understood your post correctly, you have 1 second to make the move.

Noise, vibration and heat won't be a problem if you set up the drive correctly. If necessary, reduce the motor current using the tuning software. May need to increase the control loop deadband.

Don't know what motor you're using but note that the drive manual says:
"Warning: For NEMA17 closed loop motor, need to change the value of motor peak current from 80 to 30, if not, it will burning the motor as too high current output."

Go Up