AC servo is nonstable at very low speed?

More
06 Dec 2018 04:13 #121923 by thang
" reposting because of wrong index"
Currently, i'm using mesa combo: 5i25 + 7i74 + 7i83 to control AC servo in analog velocity mode. Everything are ok till i run this servo at very low speed, the system become nonstable, i tried retunning pid but it doesnt work. I tried google and found out this problem may happen because of this mode control. Is there any solution to solve this problem. There are some solutions that i found out on google like:
  • Running ac servo at one speed level: my application require many speed lvl
  • decrease encoder resolution: i guess it mean decrease encoder resolution in linuxcnc ( the scale)
  • changing gains on velocity loop inside driver: mhm, i dont know how to do this when driver is running, it maybe impossible for me
How do you guys solve this problem?
More
06 Dec 2018 13:43 - 06 Dec 2018 13:49 #121949 by Todd Zuercher
How could you be controlling the drives in analog velocity mode when those Mesa cards don't have any analog outputs (or encoder inputs)?

Edit
Oops, for some reason I saw 7i84 instead of 7i83, never mind.
Last edit: 06 Dec 2018 13:49 by Todd Zuercher.
More
06 Dec 2018 13:48 #121950 by Todd Zuercher
If your encoder resolution isn't high enough your may have trouble with very slow velocity commands, because you can't accurately calculate the velocity feed back.

What is your encoder resolution (pulses/unit) and at what velocities are you having trouble?
More
06 Dec 2018 17:41 #121972 by alan_3301
How does it perform with the drive enabled but no velocity command?
What is the model of drive and motor?

I have delta 400w servos that perform perfectly, but my 1kw servo will not sit still or perform well at low speeds. It works great at higher speeds. I am in the process of changing the 1kw drive to position control to try and fix this problem.
More
06 Dec 2018 18:00 #121976 by andypugh
It is possible to alter the PID tuning parameters depending on commanded speed.
In fact this was the main motivation for writing the "lincurve" component.

It is quite often useful to be able to alter the PID terms in the fly. For reference, this is the I-gain map for something related to my day-job:



You can see that it is asymmetrical around the zero-error point, and varies with temperature.
And this is only one of 10 that can be chosen dependant on gear.

Compared with this, lincurve is very limited (though you could multiply several together)

I can see it being useful to have large I-gain at zero velocity command, for example, but low P-gain to avoid instability on encoder dither.
Attachments:
Time to create page: 0.098 seconds
Powered by Kunena Forum