Proper value for FERROR ? (EtherCAT Servo)

More
19 Apr 2026 10:06 #345726 by tar_san
I want to trigger an error if the difference between the actual servo position and the commanded position exceeds a certain threshold (e.g., 5mm) due to external forces. However, unless I set the
FERROR,MIN_FERROR
 in the .ini file JOINT section to something very large (like 50 or 500), a 'Following Error' occurs immediately.

= INI FILE =[JOINT_0]
MIN_FERROR = 500
FERROR = 50

I want to set these values to be able to check following error within 5mm (5.0mm)
 I have already tuned the SERVO gains appropriately and confirmed that the actual physical deviation is nowhere near 50mm. The servo's electronic gear is configured so that 1 unit equals 1/1000mm, and I am converting the values to integers before writing them to EtherCAT.

= HAL FILE =
setp cia402.0.pos-scale 1000
 I know threre are 1ms time difference in EtherCAT and latency for servo position, but I think these settings are not proper.

Which part of LCNC settings should I check or modify to resolve this problem?

 

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

More
19 Apr 2026 15:42 #345739 by andypugh
Replied by andypugh on topic Proper value for FERROR ? (EtherCAT Servo)
f-error calculations compare joint.N.motor-pos-cmd and joint.N.motor-pos-fb.

Maybe you are not scaling the -fb value before passing it back to LinuxCNC (or, possibly, the scaling is taking place in the wrong slot in the servo thread)
The following user(s) said Thank You: grandixximo, tar_san

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

More
20 Apr 2026 06:43 #345752 by Hakan
Replied by Hakan on topic Proper value for FERROR ? (EtherCAT Servo)
Most likely your servo drive doesn't report 0 position at the start.
Look at the pin joint.N.motor-pos-fb to verify that.
I am not aware of any good way to fix this more than to manually set the encoder
value to zero, via some device specific sdos. I'm doing that.
It should be described in the manual in that case.
The following user(s) said Thank You: tar_san

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

Time to create page: 0.062 seconds
Powered by Kunena Forum