Gmoccapy SCARA EtherCAT drive - joint error

More
11 Jul 2024 08:46 #304875 by DPFlex
Hello,
I am not sure my topic is in correct category, please move to correct one if it is not.
My testing system is:
- Debian bookworm, kernel 6.1.0-22-rt-amd64
- LinuxCNC: 2.9.2; EtherCAT:  Igh EtherCAT 1.6.0
I test SCARA in step:
- Using sim.gmoccapy.non-trival-kinematics.scara to record position X,Y,Z in 2 positions.
  In simulation, it runs well.
- Create macro position_1 and position_2
- Apply same to real system: it has error of joint as attach photos.
Can you explain why and how to avoid this issue ?.
Thank you.

File Attachment:

File Name: position_1.ngc
File Size:0 KB

File Attachment:

File Name: position_2.ngc
File Size:0 KB
Attachments:

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

More
11 Jul 2024 08:56 #304877 by Aciera
Have you tried substantially increasing the FERROR and MIN_FERROR values in your ini file?
Since you are using an EtherCAT drive the following error should be handled in the drive already.

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

More
11 Jul 2024 10:57 - 11 Jul 2024 10:58 #304895 by DPFlex
Hello Aciera,

Before your advice, I did not have FERROR & MIN_FERROR.
After I added both of above setting, the issue still happens.
I tried (FERROR; MIN_FERROR) options: (1;0.1) ; (0.1; 0.01) ; (0.01; 0.001)

Yes, I think EtherCAT drives handle joint error, but it makes motor shocking so strong & stop suddenly without finishing targeted  position.

I attach my INI file for your reference.
 

File Attachment:

File Name: dpf_scara.ini
File Size:3 KB
Attachments:
Last edit: 11 Jul 2024 10:58 by DPFlex.

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

More
11 Jul 2024 11:28 #304897 by Aciera
 

After I added both of above setting, the issue still happens.

FERROR and MIN_FERROR entries need to be in the [JOINT_n] section not in the [AXIS_l] section:
linuxcnc.org/docs/html/config/ini-config.html

I tried (FERROR; MIN_FERROR) options: (1;0.1) ; (0.1; 0.01) ; (0.01; 0.001)

I would suggest something like (100,100). I presume you are running your drives in position mode and the loop is closed in the drive, if so LinuxCNC really has no part in monitoring following errors at all and setting the values very high will effectively eliminate following error checking in LinuxCNC.

Yes, I think EtherCAT drives handle joint error, but it makes motor shocking so strong & stop suddenly without finishing targeted  position. 

If you get drive faults because of following error then you likely need to lower acceleration/velocity values. Also note that if your SCARA pose is close to a singular point  the kinematic model will likely fail and cause large or even infinite angular velocities which will then cause the drives to fault.
The following user(s) said Thank You: DPFlex

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

More
12 Jul 2024 06:09 - 12 Jul 2024 06:32 #304968 by zz912
When I have this problem with the Mesa card, I increase these parameters:
STEPGEN_MAXVEL
STEPGEN_MAXACCEL
I have no experience with Ethercat, so I don't know if this information will help you.

What is your max servo driver acceleration?
What is your max servo driver velocity?

What is your max acceleration joint in INI file?
What is your max velocity joint in INI file speed?

The maximum acceleration and maximum speed of the physical hardware should be greater than the maximum acceleration and maximum speed of the LCNC.

Do you have yerk set in the servo drivers? 3rd derivation of position. LCNC can't do this, so that could also be a source of problems.

Do you use velocity control or position control?
Last edit: 12 Jul 2024 06:32 by zz912.
The following user(s) said Thank You: DPFlex

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

More
12 Jul 2024 09:29 #304973 by DPFlex
Hi Aciera,
I tried (FERROR; MIN_FERROR) = (10;1) first, it runs well. I will try 1-2 days more.
After that I will test your advice of high value (100, 100). Just want to test all scenario for understanding.

Hi zz912,
I have not revised STEPGEN_MAXVEL/MAXACCEL, and not check info of drivers, just let it as default.
I will do it in next step :)

Thanks all of you a lot.

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

Moderators: newbynobiHansU
Time to create page: 0.138 seconds
Powered by Kunena Forum