Analog DC servo very big response delay

More
6 years 11 months ago #150004 by Glite
Hi again, I've got a time to get to the machine, but results are a bit disappointing.
Speed and current regulator inside the drive are pretty well tuned, increasing proportional gain for speed regulator, makes things only worse, changing integration term doesn't change much. I exchanged existing 220 nF capacitor with 100 nF, and it didn't change the delay.
Changing 100 nF filter capacitor with 22 nF haven't changed much too, but I still left it as it didn't made things worse.
Looks like the main problem with this machine and similar to it is static friction, even when using anti stiction lubes. I'm not sure that even exchanging with modern PMSM drives can solve this somehow.
Still question is open, whether something can be done with this machine.

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

More
6 years 11 months ago - 6 years 11 months ago #150110 by Glite
Could someone please add FF3 for the jerk feedforward to the PID component in master branch? PCW mentioned that this could help in some thread, I would like to make a test of it.
Last edit: 6 years 11 months ago by Glite.

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

More
6 years 11 months ago #150193 by andypugh
There isn't much advantage in having jerk feedforward in the PID unless the motion controller has a matching output. That is likely to be the bigger part of the work required.

Maybe you could experiment with velocity-dependent P-gain? The "lincurve" component was designed with this sort of thing in mind.

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

More
6 years 11 months ago - 6 years 11 months ago #150203 by Glite
I did a quick modification to PID component in servo sim to add this jerk derivative.

I will try to give it a go, as it possibly could remove some overshoots at movement phase 2 and 3(end of acceleration, start of deceleration) too, not only undershoot at start. But there is some overshoot at the end of move, and lincurve may help there.
Last edit: 6 years 11 months ago by Glite.

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

More
6 years 11 months ago #150233 by Glite
Well, jerk feedforward does help!






I've used values between 2e-06 to 4e-06 for axes. Increasing this further does reduce start undershoot, but increases end overshoot/undershoot.
I think P gain scheduling based on velocity should help too with start undershoot, but that will be another day.
I'm glad that it reduced by some degree almost all overshoots/undershoots, so I definitely think this should be added to PID component.
I attached modified pid.c
The following user(s) said Thank You: akb1212, tommylight, Benb

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

More
6 years 11 months ago #150236 by andypugh
Do you feel like adding the new pin description to the docs and comments in pid.c and submitting a pull request on Git?

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

Time to create page: 0.437 seconds
Powered by Kunena Forum