Stepper motors and linear scale closed loop setup?

30 Jul 2018 23:07 #115185 by andypugh

Hakan wrote: I will eat up the remaining error. But not in this machine. While idle and with a tad of f-error I can hear the motor taking a step say every second. But the motor doesn't seem to be strong enough to move the table just one step,

This is where I-gain comes in, to take away the steady-state error.
31 Jul 2018 12:15 #115217 by Hakan
I know, it was just that the motor never stopped reposition. I thought it should stop doing that once inside the deadband, but it just kept on although not very often, one microstep every 5-20 seconds or so. Wasn't used to that, I guess.

When using the I-parameter it happened that the position was 1 µm off (seen on the DRO). I just let it do its thing and yeah eventually the DRO switched to 0. So it does its work. It is very sensitive to large I-values, it is easy to get the axis to oscillate.

I now have two sets of parameters that work fine.
P=250, I=0, D=0
P=300, I=10, D=0.5
I really can't see much of a difference in the axis response. Had to lower P from earlier post, jogging very short distances 0.01 mm was a bit sensitive.

Also made a quick milling test, milled in the X axis direction. Following error was a bit noisy like in the figure before, but inside 0-10 µm. So load doesn't seem to be a big factor. Admittedly light load.

Also noticed that the f-error from joint.0.f-error is different from "my f-error" which is encoder.00.position - pid.x.command. "my f-error" is larger than joint.0.-f-error (can be seen in prev figure), I wonder if "my f-error" is wrong.

Why do we use velocity mode? I don't know so I switched to position mode and tried to tune the PID loop. Got worse result, the best result f-error was at least double the f-error with velocity mode. So I run velocity mode again. For servo motors I see the point using velocity mode, but for stepper motors at least it felt more logical to use position mode. But that didn't work out in reality.
01 Aug 2018 16:55 #115327 by Hakan
Tuned and tested in the video.

Now the Y axis.
The following user(s) said Thank You: Clive s, tivoi
07 Aug 2018 09:30 - 07 Aug 2018 09:32 #115736 by Hakan
Finishing off the X axis. Aligning the reading head, mounting the cover.
Another of these un-polished videos that show every detail.

Last edit: 07 Aug 2018 09:32 by Hakan.
08 Aug 2018 15:02 - 09 Aug 2018 01:35 #115811 by RayJr
Hi Peter.
Re: PID command-deriv pins on all stepgens
Could you elaborate a bit more on this?
Does it apply to open loop PID setups, or both open & closed?

I am on LCNC V. 2.7.14

Thank you!


"No problem can be solved from the same level of consciousness that created it"

Albert Einstein
Last edit: 09 Aug 2018 01:35 by RayJr.
15 Aug 2018 23:24 #116106 by Hakan
The Y axis is now done. The Y axis is in poor mechanical shape with a backlash of 0.2-0.3 mm.
Nevertheless I test to see if the encoder can improve things.

I think the result was interesting, although not perfect. The Y axis will be rebuilt later on.
The following user(s) said Thank You: gantarone
30 Aug 2018 21:11 #116889 by Hakan
I test the stepper motors' resolution and try to see if that has an influence on the following error.
The locking screw from from the video is finally added.

04 Sep 2018 17:19 #117066 by Hakan
Prepare a BK15 bearing block with angular contact bearings for use on the Y-axis.
This will, when mounted, improve backlash and stiffness in the Y-axis.

15 Sep 2018 15:57 #117578 by gantarone
any news about Y axis?
11 Oct 2018 09:59 #118665 by gantarone
Hi, can you share your latest .ini and .hal files?
Thank you!!!
Time to create page: 0.093 seconds
Powered by Kunena Forum