From a3b4543c978f3fe6cdcdf1fc96af61750b186646 Mon Sep 17 00:00:00 2001 From: Arksine Date: Wed, 12 Jun 2019 20:26:58 -0400 Subject: [PATCH] skew_correction: add documentation Signed-Off-By: Eric Callahan --- config/example-extras.cfg | 22 ++++++++++++++++ docs/G-Codes.md | 14 ++++++++++ docs/img/skew_lengths.png | Bin 0 -> 13354 bytes docs/skew_correction.md | 52 ++++++++++++++++++++++++++++++++++++++ 4 files changed, 88 insertions(+) create mode 100644 docs/img/skew_lengths.png create mode 100644 docs/skew_correction.md diff --git a/config/example-extras.cfg b/config/example-extras.cfg index 459e71f4..256fa886 100644 --- a/config/example-extras.cfg +++ b/config/example-extras.cfg @@ -377,6 +377,28 @@ # if retries are enabled then retry if largest and smallest probed points # differ more than retry_tolerance +# Printer Skew Correction. It is possible to use software to correct +# printer skew across 3 planes, xy, xz, yz. This is done by printing +# a calibration model along a plane and measuring three lengths. See +# skew_correction.md in the docs directory for more details. +# +#[skew_correction] +#xy_ac_length: +#xy_bd_length: +#xy_ad_length: +# The measured lengths (in mm) on the xy plane skew calibration print. +# If one length is provided all three lengths must be provided. The default +# is no measurement, which results in no skew correction along the xy plane. +#xz_ac_length: +#xz_bd_length: +#xz_ad_length: +# The same as above, on the xz plane. The default is no skew correction +# on the xz plane. +#yz_ac_length: +#yz_bd_length: +#yz_ad_length: +# The same as above on the yz plane. The default is no skew correction +# on the yz plane. # In a multi-extruder printer add an additional extruder section for # each additional extruder. The additional extruder sections should be diff --git a/docs/G-Codes.md b/docs/G-Codes.md index 3fcdd88e..12b43fb4 100644 --- a/docs/G-Codes.md +++ b/docs/G-Codes.md @@ -468,3 +468,17 @@ of retraction required. parameters. - `G11`: Unretracts the extruder using the currently configured parameters. + +## Skew Correction + +The following commands are available when the "skew_correction" config +section is enabled. + - `GET_CURRENT_SKEW`: Reports the current printer skew for each plane in + both radians and degrees. The skew is calculated based on parameters + provided to the [skew_correction] section of printer.cfg. + - `CALC_MEASURED_SKEW [AC=] [BD=] [AD=]`: + Calculates and reports the skew (in radians and degrees) based on a + measured print. This can be useful for determining the printer's current + skew after correction has been applied. It may also be useful before + correction is applied to determine if skew correction is necessary. See + skew_correction.md for details on skew calibration objects and measurements. diff --git a/docs/img/skew_lengths.png b/docs/img/skew_lengths.png new file mode 100644 index 0000000000000000000000000000000000000000..3c646b0f0464f9049c7fbd24c01dd82cbaa3f72e GIT binary patch literal 13354 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 nK#9-bh-Ci%gemi5>+&s|cZ#kpdA BD= AD= +``` + +# Caveats + +When using the [skew_correction] module it is suggested to home all axes +before attempting a move. Homing a single axis to move could result in a +correction along the x and/or y axis, potentially leading to a homing error. + +It is also important to keep in mind that it is possible for [skew_correction] +to generate a correction that moves the tool beyond the printer's boundries +on the X and/or Y axes. It is recommended to arrange parts away from the +edges when using [skew_correction].