Transform Geometry in X to Compensate for CNC Axis Pitch Error

I have a particularly annoying error on my CNC X-Axis which I believe is caused by the pitch of the teeth on the drive rack (it’s rack and pinion not ballscrew) not being linear.

I want to be able to stretch my geometry in X to compensate for this error.

I have machined 10mm wide pockets, spaced 10mm apart, across the X-Axis direction and measured with a digital vernier across 6 of these. I can do this across the axis and get a different error as I cross the axis.

In the centre of the axis I get errors of +0.8mm and at the edges the sizes are OK (<+0.1)

When I do the same thing along the Y-Axis I have a consistent error of +0.25mm which is due to the rebound when you cut plywood. I don’t mind this as it is the same across the whole of the Y-Axis.

I am going to replace the rack and one day upgrade to a ballscrew but in the meantime I wondered if it was possible to transform the geometry I want to cut such that this error is compensated.

I’m wondering if it is possible to do this by creating a curve function from the errors and using this to transform the geometry…



Any ideas? (18.1 KB)

Spatial Deform looks promising… Will test the deformed geometry.