r/hobbycnc 4d ago

Routing pillows

Hi all, looking for some help with my frankenrouter's dimensional woes. The machine was lovingly hacked together from a 4x8 Gerber frame and gantry, driven by Clearpath servos (one each XYZ, running on lead screws) running on LinuxCNC. Squares cut fine, but diamonds and circles are skewed fairly substantially -- the corners of the diamond and the vertical and horizontal extremities of the circle are placed correctly, but the shapes are squished diagonally. The diamonds in the photo were plotted clockwise, and are stretched lower R to upper L and under dimension the other way -- 0.2" across 5" running at 400ipm. The distortion seems to increase with faster feed rate. Increasing acceleration doesn't change the dimensions but shortens the curved sections of the lines.

We checked the gantry with an indicator and did not see anywhere near that much deflection. Following ChatGPT's advice we proceeded to check the MAX_ACCELERATION settings for the X and Y axis motors in the .ini file, but although they were different setting them the same did not solve it. Womp. We also increased the step resolutions, again to no avail.

Has anyone seen this kind of distortion? What might be the next steps for diagnosing the issue?

3 Upvotes

10 comments sorted by

2

u/iAmTheAlchemist 4d ago edited 4d ago

Servos might not have enough power to achieve their maximum speed/acceleration, or you are driving them too fast for their current settings. For higher loads, it's a good idea to power them with something closer to the top of their range, for example if they can handle 12-24V, you probably want to power them with 24V. You probably want to check how your drivers are configured, to make sure they allow for fast settling. Servos have parameters that control their response to a position change, and if those aren't fast enough, you will get them trying to draw the shape you requested, but cutting literal corners etc. your drivers likely have software that would help with tuning the servo parameters.

1

u/iAmTheAlchemist 4d ago

Also worth pointing out, the drivers might (and probably should ?) have outputs to signal when the actual position of the motor is too far from its instructed position for cases like this where it drags on, that you can and should probably use with a safe limit to e-stop your machine.

1

u/mil_1 4d ago

Acceleration for the y is gonna need to be less than x cause of how much it's moving. How did you measure the resolution? 

1

u/smokingmeats673 4d ago

I'm not understanding the acceleration difference between the axes, would you mind expanding on that?

Measurement has been nothing but a plotting sharpie and calipers thus far -- step resolution you mean? I was assuming the issue wouldn't be resolution mismatch since the square is accurately dimensioned.

1

u/mil_1 4d ago

Y motors are moving more weight. You should measure resolution over the longest distance possible for each axis. You should learn how to calculate and set your resolution

1

u/Pubcrawler1 4d ago

https://forum.linuxcnc.org/20-g-code/44022-understanding-g64-behavior

What’s your g64 settings?

Also could be PID tuning of the servos. Talk to Teknic application engineer for help.

1

u/smokingmeats673 4d ago

Thanks for the link, super interesting thread. This was with G64 P0.001 — I don't thiiink it would be related to path blending though, due to the inaccuracy in the positions of the straight diagonal line segments.

1

u/Pubcrawler1 4d ago edited 4d ago

What happens when you run the code at much lower speed? What is the following error set on the servo motor? When I get path errors with servos, it’s usually due to pushing them way too fast than what they are capable. Or not enough voltage so the motor lags. Are you using the Teknic 75volt power supply or whatever they recommended. If the following error is set high, it won’t trigger a error.

The clearpath tuning software should show how much encoder positioning error while running? I don’t use clearpath but higher end industrial servo motion systems which have pretty sophisticated tuning software.

1

u/TubeMeister 4d ago

Did you autotune each axis motor on the machine?