Losing steps on closed loop stepper motors

More
03 Apr 2020 07:44 #162541 by goaran
Hello,

I have build a 3-axis cnc using IHSS60-Closed-Loop stepper motors with on board drivers.
I did some first milling and realized that I am loosing steps (Position of the tool after the milling is off by up to 0.5 mm from the position before the milling.
It cannot come from backlash because I measured that and it is really low (so the ballscrews and the mounting seems ok)
Therefore I guess that the machine is somehow loosing steps.
However I do not understand how a closed loop motor can loose steps. I've tried to change the settings (increase step-time, reduce micro stepping to a longer step-time) but it does not change. One possibility I thought of is that the cables (which are not shielded) may produce some fake steps from noise maybe?
Or has anybody some other idea what could be the problem?
Thanks in advance for any hint.

Please Log in or Create an account to join the conversation.

More
03 Apr 2020 12:59 #162575 by bbsr_5a
Hi
does the Driver firer its Error
if not it is Mechanical
but you can reduce FOR Testing
the Speed to 50%
in ini
the ACC to 75% of its setting
the 60Volt low level Closed are not that fast responding so increse the Stepscale and speed also direction by 500ns

then check again
did you set the SCALE realy as it is

and also using the stepper parameters 400/600/1600 microsteppings not the 1000/2000/5000 as of encoder space

Please Log in or Create an account to join the conversation.

More
03 Apr 2020 14:28 - 03 Apr 2020 15:16 #162585 by PCW
I would try

STEPTIME 5000
STEPSPACE 5000
DIRSETUP 10000
DIRHOLD 10000

As marginal timing is a common cause of missed steps.
I would also verify that you have the step polarity correct
because incorrect step polarity can cause a violation of the
direction hold time.
Last edit: 03 Apr 2020 15:16 by PCW.

Please Log in or Create an account to join the conversation.

More
03 Apr 2020 17:31 #162597 by goaran
@bbsr_5a
no, there are no errors indicated on the driver.

I have also reduced the speed and acceleration for testing and it seems a bit better, but there still is an error.
And an error from acceleration should (like classical step skipping) should not be possible for closed loop motors?

The scale of the axes (microstepping , leadscrew pitch and so on is right since the error only accumulates over time, but a single distance is the length it is supposed to be. What do you mean by "and also using the stepper parameters 400/600/1600 microsteppings not the 1000/2000/5000 as of encoder space"

@PCW
first i had following settings:

STEPTIME 5000
STEPSPACE 5000
DIRSETUP 20000
DIRHOLD 20000

I've already changed that to

STEPTIME 10000
STEPSPACE 10000
DIRSETUP 25000
DIRHOLD 25000

but that did not make any differnence

Please Log in or Create an account to join the conversation.

More
03 Apr 2020 18:28 #162601 by PCW
Excessive acceleration should not cause step loss (though might cause a drive fault)

Did you try inverting the step pulse?

Please Log in or Create an account to join the conversation.

More
03 Apr 2020 18:29 #162602 by BeagleBrainz
Is it on all axis or just one ?
Is everything mechanically tight ?
Is it a linear error, ie does it change with distance tested or is it a constant error of Xmm ?

What type of coupling between the lead screw and motor are you using ?

What type of bearings are you using for the lead screw ? Does the fixed end use angular contact bearings or regular bearings ? Is the fixed bearing tight in it’s housing ?
What procedure did you use to check for backlash ?
Are your lead screws clean with no crap on them ?
What kind of lead screw and nut are you using ?
Is the error the same when you start at different positions along the length of travel ?

Please Log in or Create an account to join the conversation.

More
05 Apr 2020 17:21 #162782 by goaran
@PCW: no I have not tried inverting the pulse, however the motors seem to move totally normal ig the slight drift over time.
How could that be a result of inverted step pulses?

@BeagleBrainz: it seems to be with all axis, however a bit more on the longer one.
No its not a linear error. If you move one axes and measure the distance, then the measured distance is totally fine within some few microns.
The error only occurs when milling for lets say half an hour and then measuring the position against the start position.
The coupling between the motors and the lead screw is done with those couplings that have red rubber in between.
The bearings at the end of the leadscrew are the bearing blocks that come with the leadscrew. I have tested pushing as strong as I can against the bearings and also moving the axis in between, that does not seem to have any effect on them.

The "procedure" I used for testing is. Measure the position of the tool in one axes. Then mill something. Measure it again. This results in an difference of up to 0.5 mm after half an hour of milling. Since 0.5mm is really a lot i cannot imagine how this could be from the leadscrew backlash.

The error is kind of random therefor I habe not tested from different start points.

Please Log in or Create an account to join the conversation.

More
05 Apr 2020 18:38 #162785 by PCW

@PCW: no I have not tried inverting the pulse, however the motors seem to move totally normal ig the slight drift over time.
How could that be a result of inverted step pulses?


Because if the step pulse is of the wrong polarity you can violate both step length and direction hold timing parameters
violating either of these parameters can cause difficult to diagnose step loss, for example if you violate the direction
hold timing you will get random step gain/loss at reversals where you cannot (by ear) determine that anything is wrong

That said, as long as you have direction hold times > (the drives hold time requirements + step length),
and step space > the drives minimum step length, inverted step pulses should not cause an issue.

An easy way bisect the issue into axis mechanics vs step motor/electrical is to mark the step motor shaft and motor frame
at some particular location, run your program, move back to the reference position and see if the marks still align
The following user(s) said Thank You: tommylight

Please Log in or Create an account to join the conversation.

More
12 Apr 2020 13:55 #163758 by goaran
Ok, I guess i might have found the problem. The PC im using is not the newest and when I run the realtime test I get an Max Jitter Base Thread of about 90 000 ns.
In the linuxcnc documentation it is mentioned that over 100.000ns the PC is not good for running linux-cnc, however when I enter 90µs to the Max Jitter field in the GUI it is automatically reduced to 50µs.
So this seems a good candidate for me to cause the problem or what does linux-cnc do if it cannot reach the realtime requirements. Does ist "just" get slower or does is skip steps??

Please Log in or Create an account to join the conversation.

More
12 Apr 2020 14:59 #163765 by tommylight

goaran wrote: In the linuxcnc documentation it is mentioned that over 100.000ns the PC is not good for running linux-cnc, however when I enter 90µs to the Max Jitter field in the GUI it is automatically reduced to 50µs.

That is valid only if you are using parallel port, for Mesa boards it can be worse and still work properly.
Worst case latency errors will cause lost steps.
Do you get a latency warning when running Linuxcnc, on the right lover corner with a red x ?
And stepconf usually sets the base period to 100.000 for any entry above 35.000.

Please Log in or Create an account to join the conversation.

Time to create page: 0.100 seconds
Powered by Kunena Forum