Joint1 following error

More
04 Apr 2025 04:32 #325654 by Chia
Joint1 following error was created by Chia
My machine uses a CoreXY system for the XY axis and a linear system for the Z axis.
When I run yzEllipse_60.ngc, the machine stops and reports an error when returning to the home position.(IMG_7058.JPG)
The same issue occurs when running yzEllipse_50.ngc (IMG_7058.JPG).

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

More
04 Apr 2025 04:35 #325655 by Chia
Replied by Chia on topic Joint1 following error
Sorry, the error picture of yzEllipse_50.ngc is IMG_6981.JPG not IMG_7058.JPG.

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

  • tommylight
  • tommylight's Avatar
  • Away
  • Moderator
  • Moderator
More
04 Apr 2025 05:08 #325659 by tommylight
Replied by tommylight on topic Joint1 following error
You should have mentioned this is a RPI.
-
When running the gcode file, set the Max Velocity slider to a lower value, till you do not get the joint following error anymore, then divide that value with 60 and set that value as the MAX_VELOCITY in the ini file.
-
Also noted the scaling, if you have direct drive belts with GT2 20 tooth belts, the scaling should be 40 or 80 depending on drive microstepping.

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

More
06 Apr 2025 17:00 #325823 by Chia
Replied by Chia on topic Joint1 following error
Yes, it’s a RPI.
May I kindly ask how the “Max Velocity” slider affects the machine? I initially thought that all machine controls were determined solely by the .hal and .ini files. Additionally, I would like to understand why the value needs to be divided by 60 when setting the MAX_VELOCITY parameter in the .ini file.

I’m currently using GT20 20 tooth belts, and the drive is set to 8 microsteps. May I ask how to correctly calculate and set the SCALE value based on this configuration?

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

  • tommylight
  • tommylight's Avatar
  • Away
  • Moderator
  • Moderator
More
06 Apr 2025 20:30 #325835 by tommylight
Replied by tommylight on topic Joint1 following error
Max_velocity in the ini file is in units per seconds (mm or inch), while everything in GUI is in units per minute, hence divide or multiply by 60.
The error you are getting is because you are requesting higher step rate than possible given the base period in use and timings for the software stepgens RPI uses, so you have to lower the step rate, or use less microstepping on the drives to get more velocity, but this will make more vibrations al low motor speeds. Still, do give it a try with microstepping at 4 and step scale.....
Step scale is motor steps per rotation multiplied by the microstepping value and divided by the pulley tooth/diameter/tooth pitch, in your case for a normal 1.8 degree per step motor that is 200 steps per rotation of the motor and pulley since it's directly driven, multiplied by 8 microsteping in the drives and divided by 20 tooth of the GT2 (GT2 is 2mm pitch between teeth) or 40mm
200*8=1600/40=40steps per mm for metric machine.
If you do set the drives to 4 microsteps, the scale in the ini file has to be changed to 20.

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

More
07 Apr 2025 15:02 - 07 Apr 2025 15:09 #325866 by Chia
Replied by Chia on topic Joint1 following error
Thank you very much for your detailed explanation.
During testing, I tried using microstepping at 8, and I changed the scale in the ini file to 40. Then I set G-code "97: G1 X0 Y0 Z0 F300", and it ran successfully!
However, I don't understand why G-code "96: G1 X345 Y100 Z0 F600", runs properly with F600, but when I use G-code "97: G1 X0 Y0 Z0 F600", it fails to run. Why does line 96 run successfully with F600, but line 97 produces an error even though both use F600? Could you please help clarify this difference? Thank you.
Attachments:
Last edit: 07 Apr 2025 15:09 by Chia.

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

More
07 Apr 2025 17:17 #325877 by Todd Zuercher
Replied by Todd Zuercher on topic Joint1 following error
Step motors rapidly lose torque with RPM. It is possible that at F600 you are operating on the ragged edge of what your steppers are capable of. That combined with differing friction levels for different directions or positions on you machine due to binding forces, making the machine more prone to loosing steps in one direction vs the other. Stepper motors can be queer and finicky things, and when set up without suitable safety margins, will give troublesome results.

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

More
07 Apr 2025 17:59 #325878 by PCW
Replied by PCW on topic Joint1 following error
However, I don't understand why G-code "96: G1 X345 Y100 Z0 F600", runs properly with F600, but when I use G-code "97: G1 X0 Y0 Z0 F600", it fails to run.

It likely depends on the maximum velocity reached, (which is acceleration and GCODE dependent)
at some point the stepgen component cannot generate steps fast enough at the current base
thread period so falls behind, causing  a following error.

 
The following user(s) said Thank You: tommylight

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

Time to create page: 0.075 seconds
Powered by Kunena Forum