开源改变世界!!

机器空间和归航

推推 grbl 3周前 (12-01) 53次浏览

机器空间和归航

机器空间和机器坐标是 Grbl_ESP32 内部使用的轴上运动范围的术语。将轴归零或更改工作坐标系 (G54-G59) 时,坐标不会改变。工作坐标只是与机器坐标的偏移。重置机器坐标的唯一方法是归位到限位开关。

Grbl 传统上会创建一个负机器空间。如果轴的长度为 300,则有效机器空间从 -300 到 0。这与机器在归位轴时行进的方向无关。归位方向唯一会改变的就是归位完成后的当前位置。如果以正方向归位,则位置将为 0。如果以负方向归位,则位置将为 -300。这是假设您的归位拉力为 0。

有些人对负空间有点困惑,但了解 gcode 不使用机器坐标非常重要。Gcode 在工作坐标系中运行,您可以在任何地方将其归零。您的机器坐标是什么并不重要。

话虽如此,Grbl 有两个很少使用的编译时选项来改变机器坐标行为。这些是HOMING_FORCE_SET_ORIGINHOMING_FORCE_POSITIVE_SPACE我们正在尝试将尽可能多的编译时功能移至设置。在此过程中,我们就这些选项和可能的替代方案进行了长时间的讨论。

新的 $<axis>/Home/Mpos 设置。

我们决定通过添加一个新设置来实现这两个选项。此设置设置所触及的限位开关的机器坐标位置。

这使您可以保留传统的负空间,创建正机器坐标空间,甚至创建 -150 到 150 的空间。

以下是影响机器坐标空间和归位的设置。

  • $X/MaxTravel轴的长度
  • $Homing/DirInvert轴归位的方向。设置 $Homing/DirInvert=XZ 可使 X 和 Z 以负方向归位
  • $X/Home/Mpos在限位开关处设置机器坐标的值
  • $Homing/Pulloff归位后,将开关拉离多远。

示例

  • $X/最大旅行费用=300
  • $X/主页/Mpos=0
  • $Homing/DirInvert=(所有轴归正)
  • $归巢/脱钩=1

机器将以正方向归位。它将正端设置为 0。它将负端设置为 -300,因此范围是 -300 到 0。归位后的实际机器位置将由于拉离而为 -1。

  • $X/最大旅行费用=300
  • $X/主页/Mpos=0
  • $Homing/DirInvert=X
  • $归巢/脱钩=1

机器将沿负方向归位。它将负端设置为 0。它将正端设置为 300,因此范围是 0 到 300。归位后的实际机器位置将为 1,这是由于拉脱所致。

  • $X/最大旅行费用=300
  • $X/主页/Mpos=150
  • $Homing/DirInvert=X
  • $归巢/脱钩=1

机器将以负方向归位。它将负端设置为 150。它将正端设置为 450,因此范围是 150 到 450。归位后机器的实际位置将由于拉离而为 151。

  • $X/最大旅行费用=300
  • $X/主页/Mpos=10
  • $Homing/DirInvert=
  • $归巢/脱钩=1

机器将以正方向归位。它将正端设置为 10。它将负端设置为 -290,因此范围是 -290 到 10。归位后机器的实际位置将由于拉离而为 9。

软限制

软限位可防止机器移动到上述运动范围之外。使用软限位时,必须先将机器归位。如果希望软限位忽略其中一个轴,请将 $ <axis>/MaxTravel 值设置为 0。

不使用开关或归位

如果您不使用归位,机器空间将处于静音状态。机器不知道自己在任何时候在哪里。不应使用软限制。可以使用硬限制,但如果您有开关,则可能会归位。您仍然可以将工作空间归零到您想要的任何地方。使用 MaxTravel 和 Home/Mpos 创建的机器空间将被忽略,您可以自由地越过末端。

升级问题

在升级过程中,没有好的办法可以自动设置新设置。它将被设置为 0。这对于向正端回归的传统负空间机器来说是正确的。

升级后,您应该检查机器的行为并相应地设置机器空间。如果出现问题,它将影响任何先前归零的坐标系、G28 和 G30。

如果您想保留传统行为,请将 $<axis>/Home/Mpos 设置在以负方向返回到行程负方向的任何轴上。

页脚

喜欢 (0)