Hello!
I'm using the stepper drivers listed above in the subject, they're functionally equivalent. I've been able to line up the microstep resolution and current settings for them and our motors just fine. Configuring the settings for the output for the KFlop has been fairly easy as well. The issue I'm running into is the stepper drivers appear to have some kind of lag in their input from the KFlop so I'm getting following error issues. If I increase the maximum following error on a channel the motion will complete and settle into a reasonable location with only 2 or 4 counts of following error and the motors and drives will move quickly. It's so quick in fact that if I lower the threshold for following error it will fault out but the motor's motion will still complete in a way where the encoder feedback makes it appear as if the following error didn't exceed the threshold (I verified that it is exceeding the threshold, and then settling into a "good" position).
At the top of page 38 in the KFlop manual it says about following error "Whenever the commanded destination and the measured position differ by greater than this value, the axis will be disabled". When it says "whenever", what time base is that? Is it making that check at the frequency of the clock? Is there a way to increase the delay between the check between destination and position? The stepper drivers appear to follow the motion well, just not 100% in sync with the output pulses from the KFlop. If there's not a way to increase that delay, we can just continue to work on tuning the PID and Feed Forward settings to get better performance.
Thank you.
Leadshine DM542E and DM542T
Moderators: TomKerekes, dynomotion
- TomKerekes
- Posts: 2679
- Joined: Mon Dec 04, 2017 1:49 am
Re: Leadshine DM542E and DM542T
Hi Jacob,
Can you observe the lag on the Step Response Screen in open loop mode?
I don't understand what you are saying. How can the motion complete when there is a fault?I lower the threshold for following error it will fault out but the motor's motion will still complete in a way where the encoder feedback makes it appear as if the following error didn't exceed the threshold
I don't understand what you mean by this.I verified that it is exceeding the threshold, and then settling into a "good" position
It is checked every servo sample time (90us).At the top of page 38 in the KFlop manual it says about following error "Whenever the commanded destination and the measured position differ by greater than this value, the axis will be disabled". When it says "whenever", what time base is that?
You could do it yourself with a User Program and add a provision for it to be out for some period of time before faulting.Is there a way to increase the delay between the check between destination and position?
Most applications require the axis to be at the proper location on the trajectory at all times. Otherwise the coordinated motion path can be distorted. What is your application? Where are your encoders located? Are they linear or rotary.The stepper drivers appear to follow the motion well, just not 100% in sync with the output pulses from the KFlop.
What Output Mode are you using? With Closed Loop Step/Dir you may be able to have KFLOP compensate for the lag by making corrections. The nature of the lag, the response of the Drives, and the mechanics will determine if this is possible.If there's not a way to increase that delay, we can just continue to work on tuning the PID and Feed Forward settings to get better performance.
Can you observe the lag on the Step Response Screen in open loop mode?
Regards,
Tom Kerekes
Dynomotion, Inc.
Tom Kerekes
Dynomotion, Inc.
-
- Posts: 21
- Joined: Thu Sep 02, 2021 6:02 pm
Re: Leadshine DM542E and DM542T
There was a delay in the response of the actual stepper drivers themselves. So while the KFlop would detect a following error and stop sending pulses to the drivers, the drivers would still be executing their previous commands, and when the dust was settled the encoder would read as if no following error had occurred.
We have rotary encoders. This is for a CNC in a production facility that loads parts onto a spindle, then cuts them. The encoders are attached to the backs of the motor shafts. I observed the lag in the Step Response screen in open loop and closed loop modes. I ended up roughly solving the issue by using the Feed Forward Velocity to shift motor response to be more in line with the output from the KFlop.
The stepper drivers tracked very well with the commands from the KFlop in Open Loop mode. The waveforms were nearly identical, there was just a 2 to 3 ms delay in the execution.
So ultimately what ended up working was using the Feed Forward Velocity and increasing the Following Error a bit just so that it wouldn't fault out during motion.
We have rotary encoders. This is for a CNC in a production facility that loads parts onto a spindle, then cuts them. The encoders are attached to the backs of the motor shafts. I observed the lag in the Step Response screen in open loop and closed loop modes. I ended up roughly solving the issue by using the Feed Forward Velocity to shift motor response to be more in line with the output from the KFlop.
The stepper drivers tracked very well with the commands from the KFlop in Open Loop mode. The waveforms were nearly identical, there was just a 2 to 3 ms delay in the execution.
So ultimately what ended up working was using the Feed Forward Velocity and increasing the Following Error a bit just so that it wouldn't fault out during motion.