Re: E.M.C. PID Tuning - HELP !!!!
Posted by
Ray Henry
on 2002-04-09 06:32:15 UTC
Hi Jeff
Welcome to the wonderful world of tuning the EMC to a retrofit machine.
Perhaps I missed them but I need the answers to a few questions. Is this a
servo machine? Are these the stock servo drives and motors? What are you
using to get position feedback to the PC?
Now a few thoughts. I write down the values for all of the relevant
variables before I make any changes. Old values get a line through them
and the new value below. Then make a comment on better or worse motion as
a result of the change. This way you can see your progress and not worry
much about over correction. Make only one change at a time. If the change
improves motion make a change in the same direction again. If the change
makes motion worse, step back half way.
There is a tuning widget under the calibration menu but some have reported
that it doesn't always change the running values and save them to the ini
file the way that they expected. Check back to the ini file fairly often
with an editor so that you can make sure the values you want to change are
really doing it and the values that you want to remain constant are also
correct. Don't save from the editor while the EMC is running. When you
shut down the EMC, it will write final values to the ini and report a diff
from the old ini.
I also tend to listen to motors while they start, run, and stop. A
grinding or whining sound means to much gain. An oscillating frequency
while moving at a constant commanded velocity often means the gain is to
low.
You are doing good to lower the accel rate. Do it the same for both max
and default. Remove the I and backlash values, double the P value. Now
gradually increase the acceleration until you get response near where you
expect them. If you get following errors, double those values as well.
Don't worry just yet about jerkiness as long as the machine doesn't rock
from foot to foot <g> or constantly trip out with following error.
When you have the speed near where you want it, begin to back off the gain
(P) until you see some overshoot when you accel or stop and some hunting
during constant commanded velocity. Increase the gain a bit to reduce this
problem.
There is nothing in the EMC quite like the older notion of gain break but
you can use Feed Forward to do something similar. Jon Elson mentioned that
he uses a FF1 value of 8.00 with his bridgeport. You could try adding in a
bit of this and see if it improves the motion that you have achieved above.
Be careful with (I) and (D). (D) can easily cause your machine to run wild
but will kick up the command when the difference between actual velocity
and commanded is great. (I) on the other hand will cause an axis to lag
behind changes in velocity because it integrates over time. (I) is reset
when you change direction but can be changed by compiling with a flag.
FF0 is an offset from actual position. I don't use it at all and can't
comment on where one might. FF2 is also a mystery to me in it's
application.
You might also remember that the motion modules and maths in the EMC are
intended to cover the whole range of motion including rapidly varying loads
and other conditions that might be encountered by vehicles. They are not
specifically intended for machine tool use.
HTH.
RayH -- U.P. Michigan
Welcome to the wonderful world of tuning the EMC to a retrofit machine.
Perhaps I missed them but I need the answers to a few questions. Is this a
servo machine? Are these the stock servo drives and motors? What are you
using to get position feedback to the PC?
Now a few thoughts. I write down the values for all of the relevant
variables before I make any changes. Old values get a line through them
and the new value below. Then make a comment on better or worse motion as
a result of the change. This way you can see your progress and not worry
much about over correction. Make only one change at a time. If the change
improves motion make a change in the same direction again. If the change
makes motion worse, step back half way.
There is a tuning widget under the calibration menu but some have reported
that it doesn't always change the running values and save them to the ini
file the way that they expected. Check back to the ini file fairly often
with an editor so that you can make sure the values you want to change are
really doing it and the values that you want to remain constant are also
correct. Don't save from the editor while the EMC is running. When you
shut down the EMC, it will write final values to the ini and report a diff
from the old ini.
I also tend to listen to motors while they start, run, and stop. A
grinding or whining sound means to much gain. An oscillating frequency
while moving at a constant commanded velocity often means the gain is to
low.
You are doing good to lower the accel rate. Do it the same for both max
and default. Remove the I and backlash values, double the P value. Now
gradually increase the acceleration until you get response near where you
expect them. If you get following errors, double those values as well.
Don't worry just yet about jerkiness as long as the machine doesn't rock
from foot to foot <g> or constantly trip out with following error.
When you have the speed near where you want it, begin to back off the gain
(P) until you see some overshoot when you accel or stop and some hunting
during constant commanded velocity. Increase the gain a bit to reduce this
problem.
There is nothing in the EMC quite like the older notion of gain break but
you can use Feed Forward to do something similar. Jon Elson mentioned that
he uses a FF1 value of 8.00 with his bridgeport. You could try adding in a
bit of this and see if it improves the motion that you have achieved above.
Be careful with (I) and (D). (D) can easily cause your machine to run wild
but will kick up the command when the difference between actual velocity
and commanded is great. (I) on the other hand will cause an axis to lag
behind changes in velocity because it integrates over time. (I) is reset
when you change direction but can be changed by compiling with a flag.
FF0 is an offset from actual position. I don't use it at all and can't
comment on where one might. FF2 is also a mystery to me in it's
application.
You might also remember that the motion modules and maths in the EMC are
intended to cover the whole range of motion including rapidly varying loads
and other conditions that might be encountered by vehicles. They are not
specifically intended for machine tool use.
HTH.
RayH -- U.P. Michigan
> From: "ja_erickson" <ja_erickson@...><S>
>
> evening all,
>
> i have a few questions and oddities that have arisen during a tuning
> attempt of e.m.c. for my bridgeport series 2 retrofit project.
Discussion Thread
ja_erickson
2002-04-08 15:51:06 UTC
E.M.C. PID Tuning - HELP !!!!
Jon Elson
2002-04-08 23:43:34 UTC
Re: [CAD_CAM_EDM_DRO] E.M.C. PID Tuning - HELP !!!!
Ray Henry
2002-04-09 06:32:15 UTC
Re: E.M.C. PID Tuning - HELP !!!!
ja_erickson
2002-04-09 18:12:13 UTC
Re: E.M.C. PID Tuning - HELP !!!!
Ray Henry
2002-04-10 17:13:25 UTC
Re: Re: E.M.C. PID Tuning - HELP !!!!
ballendo
2002-04-14 04:07:49 UTC
ballscrew cumulative error was Re: E.M.C. PID Tuning - HELP !!!!