stepper motor oscillation

More
17 Aug 2021 19:31 - 17 Aug 2021 19:35 #218009 by robertspark
never seen this before.....

simple 3 axis stepper motor setup for a mill.

X, y, z + analog vfd
no encoders, glass scales etc.

l was jogging the z axis upwards and when I released the keyboard pgup the z began oscillating back and forth in ever decreasing motion.

first question, how is this possible..... I understand how it could happen with a closed loop arrangement, but this is purely stepper motors, no feedback..... so I would presume linuxcnc would just output step and dir pulses.

it is via a Mesa 7i76E, and the stepper motors are big hefty nema34's, the velocity of the motion was not very fast at all (it was driving a 10mm pitch acme leadscrew)

just never expected to see oscillation without a feedback signal
(I set it up using pncconf and although I've seen the PID values in the hal/ini file, I just left them at default (I think 1000 or 10000 for P, and I and D are zero.... given no feedback signal.... didn't expect any ringing)
Last edit: 17 Aug 2021 19:35 by robertspark.

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

More
17 Aug 2021 20:24 - 17 Aug 2021 20:25 #218012 by PCW
Replied by PCW on topic stepper motor oscillation
The hardware stepgen uses "local" feedback which must be set
up properly for the servo thread rate.

FF1 should be 1
P should be 1/Servo thread period (or 1000 for a 1 ms servo thread)

A P of 1/servo-thread-period means that any errors between the expected
position (from LinuxCNC) and actual position (from the stepgen hardware)
are corrected at the next servo thread.

If the P term is higher than 2/servo-thread-period you will get oscillation
with ever increasing magnitude.
Last edit: 17 Aug 2021 20:25 by PCW.
The following user(s) said Thank You: robertspark

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

More
17 Aug 2021 21:16 #218017 by robertspark
thanks as always I'll take a look.

servo thread is 1000, so I think (will check) that p is 1000 as it was default as per pncconf.

the FFx I didn't change (I didn't change any of it really)..... didn't know what the FFx was for

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

More
17 Aug 2021 21:54 #218022 by PCW
Replied by PCW on topic stepper motor oscillation
FF1=1 basically sets the stepgen velocity correctly before any feedback
is applied.

I have seen pncconf set wrong P values if you ever changed the servo
period

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

Time to create page: 0.121 seconds
Powered by Kunena Forum