PID TUNING FF1
14 Sep 2016 11:58 #80433
by snujcnc
PID TUNING FF1 was created by snujcnc
HI..
i have question for pi tuning
i am using ethercat servo with linuxcnc
recently i retrofit moriseiki sl6 machine
i found strange issue during installation
z axis motor setting in ini file if i set FF 1 = 0
my z axis motor show 100 % load during 10 to 100 rmp (i measured load on ethercat bus (actual torque))
and above 100 rmp it show around 30% load that is acceptable
now i make some trial and set FF1 = 2
then i find load between 10 to 100 rpm is 30%
but z axis work like very high power
i think this FF1 is add some command to servo command
but now i want to reduce hunting when i move with handwheel z axis move is strange
but position accuracy is ok if i move 0.1mm with handwheel it move with hunting
x axis move normally with ff1=0 value
may be this is mechanical issue but ff1 effect i am not able to understand
can anyone explain what exact ff1 does with command
for information i can tell that this machine works since last one year without any issue
nut i always get complains from that machine operator that x axis move very smoothly and z axis move is very strange
may it damage mechanical parts in ball screw
i have question for pi tuning
i am using ethercat servo with linuxcnc
recently i retrofit moriseiki sl6 machine
i found strange issue during installation
z axis motor setting in ini file if i set FF 1 = 0
my z axis motor show 100 % load during 10 to 100 rmp (i measured load on ethercat bus (actual torque))
and above 100 rmp it show around 30% load that is acceptable
now i make some trial and set FF1 = 2
then i find load between 10 to 100 rpm is 30%
but z axis work like very high power
i think this FF1 is add some command to servo command
but now i want to reduce hunting when i move with handwheel z axis move is strange
but position accuracy is ok if i move 0.1mm with handwheel it move with hunting
x axis move normally with ff1=0 value
may be this is mechanical issue but ff1 effect i am not able to understand
can anyone explain what exact ff1 does with command
for information i can tell that this machine works since last one year without any issue
nut i always get complains from that machine operator that x axis move very smoothly and z axis move is very strange
may it damage mechanical parts in ball screw
Please Log in or Create an account to join the conversation.
- Todd Zuercher
- Offline
- Platinum Member
Less
More
- Posts: 5007
- Thank you received: 1441
14 Sep 2016 12:46 #80435
by Todd Zuercher
Replied by Todd Zuercher on topic PID TUNING FF1
A properly tuned and configured servo should never reach 100% output under normal conditions.
Ordinarily, a velocity mode servo in Linuxcnc will work best with an FF1 near 1 (if inputs are scaled right).
Jog wheel inputs are incremental, and can result in jerky movement. But there are ways to smooth them out.
You may need to share your config files for us to make better recommendations. Also images of halscope traces of following (or PID) error, velocity command, velocity feedback and PID output would make giving suggestions for servo tuning easier.
Ordinarily, a velocity mode servo in Linuxcnc will work best with an FF1 near 1 (if inputs are scaled right).
Jog wheel inputs are incremental, and can result in jerky movement. But there are ways to smooth them out.
You may need to share your config files for us to make better recommendations. Also images of halscope traces of following (or PID) error, velocity command, velocity feedback and PID output would make giving suggestions for servo tuning easier.
Please Log in or Create an account to join the conversation.
14 Sep 2016 12:57 #80437
by snujcnc
Replied by snujcnc on topic PID TUNING FF1
thanks
i will arrange all information and post soon
i will arrange all information and post soon
Please Log in or Create an account to join the conversation.
18 Sep 2016 19:38 #80576
by andypugh
Replied by andypugh on topic PID TUNING FF1
Part of the solution might be linuxcnc.org/docs/2.7/html/man/man9/ilowpass.9.html
A PID controller is very simple...
Error = command - measured
Output = Error * PGain + (Integral of Error) * IGain + dError/dt * DGain + FF0 * command + FF1 * dCommand/dt
So, in a position loop FF1 is velocity-feedforward, a number that is multiplied by the rate of change of the position command and sent to the output.
In an absolutely perfect system FF1 = 1 with no P, I, D or FF0 would be all you needed. The other terms make up for not having a perfect system.
A PID controller is very simple...
Error = command - measured
Output = Error * PGain + (Integral of Error) * IGain + dError/dt * DGain + FF0 * command + FF1 * dCommand/dt
So, in a position loop FF1 is velocity-feedforward, a number that is multiplied by the rate of change of the position command and sent to the output.
In an absolutely perfect system FF1 = 1 with no P, I, D or FF0 would be all you needed. The other terms make up for not having a perfect system.
The following user(s) said Thank You: snujcnc
Please Log in or Create an account to join the conversation.
Time to create page: 0.069 seconds