Page 1 of 1

Exploring Geo Correction Beyond the Z-Axis for CNC Bed Surface Roughness

Posted: Thu Mar 06, 2025 10:01 am
by Wayne
Hi all,

I recently attempted to use geo correction to address the surface roughness of my CNC bed. While it works for Z-axis, I am curious to know if geo correction can be applied to axes other than the Z-axis. The reason for this is that I have been using dual loop control, with my A-axis assigned to measure the Z distance between a probe and the bed surface. The geo correction, which is formatted as (row, col, X, Y, Z), only corrects for Z-axis, and the correction was not applied when the axis was switched to A.

It would be great if such correction can be applied on both Z and A.

Many thanks!!!
Wayne

Re: Exploring Geo Correction Beyond the Z-Axis for CNC Bed Surface Roughness

Posted: Thu Mar 06, 2025 4:49 pm
by TomKerekes
Hi Wayne,

It's not exactly clear how your machine works or why if you have a bed following mode you would want to make corrections to not follow the bed.

One option might be to have your bed following mode still use the Z axes by re-assigning the Coordinate Motion System. Do you need corrections in both modes? Are the corrections the same?

KinematicsGeppettoExtrude.cpp has Geocorrection for X Y Z and C. Do you know how to recompile the libraries using Visual Studio? See here. You could then make a new class such as KinematicsGEO_XYZA modeled after CKinematicsGeppettoExtrude with everything removed except the Geocorrection functions. Then modify the Geocorrection to use C instead of A. See here on how to make a new Kinematics Class.

HTH