Contact me: hankecnc@gmail.com

更改初始 z 轴行程移动的位置 #282

推推 grbl 3年前 (2023-02-03) 312次浏览
关闭
domenic-d 打开了这个问题 2017 年 4 月 21 日 · 11 条评论
关闭

更改初始 z 轴行程移动的位置#282

domenic-d 打开了这个问题 2017 年 4 月 21 日 · 11 条评论

评论

更改初始 z 轴行程移动的位置 #282

我们注意到初始 G0 z 轴移动发生在生成的 GCode 中的错误位置。

现在,在初始 G0 x 和 y 移动之前设置初始 G0 z 高度。这可能会导致与材料发生碰撞。

当前 GCode

; Pass 0
; Pass Z Height 10mm (Offset: 0mm)
G0 Z10.00
; Pass 0 Path 0
G0 X148.70 Y92.78

改进的 GCode

; Pass 0
; Pass 0 Path 0
G0 X148.70 Y92.78
; Pass Z Height 10mm (Offset: 0mm)
G0 Z10.00

注意:结束 GCode 是正确的,因为它在最终 G0 x 和 y 移动之前执行最终 G0 z 轴移动。

更改初始 z 轴行程移动的位置 #282 domenic-d 添加了 增强 标签 2017 年 4 月 21 日
更改初始 z 轴行程移动的位置 #282
成员

是否有像铣床和刳刨机那样的间隙Z值?以下是这些的顺序:

  • 移动到间隙 Z
  • 移至起始 XY
  • 移动到起始 Z
更改初始 z 轴行程移动的位置 #282
作者

我们的 z 间隙位置是最高位置的激光头。这是激光头归位的地方,也是完成工作后返回的地方。

为了使所有内容都“通用化”,那么在启用 z 轴时设置中的 z 间隙高度效果最好。

那么你建议的顺序将与铣床/路由器等相同。

更改初始 z 轴行程移动的位置 #282
合作者

至于现在,生成 gcode 的方式无法实现该异常。这将导致一堆“在第一次通过第一条路径之后但只有一次”的挂钩,从而使代码膨胀或进行巨大的重构。

我能想到的唯一方法是使用操作上可用的宏挂钩。onJobStart,转到Z间隙位置就足够了。

更改初始 z 轴行程移动的位置 #282
作者

也许这个请求已经变得混乱了。
正如我在最初的帖子中提供的示例一样,第一个 z 移动应该发生在第一个 xy 移动之后。

这不是一个例外,它是第一次 z 移动发生时的重新排序。

更改初始 z 轴行程移动的位置 #282
合作者

是的,@domenic-d,我并不是说“例外”是不必要的。
这是实际 gcode 生成代码的完成方式(暗示一些深度循环)的例外,如果不进行大量重构就无法解决。或许@tbfleming可以进一步检查它以找到插入的最佳位置。

更改初始 z 轴行程移动的位置 #282
作者

我希望这对于铣削来说是绝对必要的。我还没有检查这是否已经在 laserweb 的那一侧实现,但如果没有,我会感到惊讶。

这也许是另一个很好的例子,其中后处理器基础设施会非常有用。

更改初始 z 轴行程移动的位置 #282
合作者

@domenic-d 密尔确实做到了。我已经破解用于激光切割操作。Hacking on raster 将在稍后修改。
请彻底测试。也许并不适用于所有情况。

更改初始 z 轴行程移动的位置 #282
合作者

@openhardwarecoza,@tbfleming,@cprezzi,@domenic-d
我一直在寻找一个后处理器规范,而不是重新发明轮子,但没有发现任何仅仅是结构化的东西。
最简单的引擎可以使用接收所有核心 gcode 的网络工作者来完成。
由帖子贡献者来编写他想要的任何代码。应该发布在像 lw.machines 这样的集中存储库上以被批准为 PR。LW 可以公开 JSON 清单文件中描述的那些文件名。LW 实际上可以公开的最多的是一些具有预定义格式的注释,以提示后处理器核心进程正在发生什么。我将不胜感激具体的实施想法?

更改初始 z 轴行程移动的位置 #282
成员

可能应该将其作为一个单独的问题。首先要确定的是:用户试图用后处理器完成什么?

更改初始 z 轴行程移动的位置 #282
合作者
更改初始 z 轴行程移动的位置 #282
作者

@jorgerobles初始 z 定位现在看起来是正确的。
谢谢。
我将关闭它,让核心团队决定他们希望如何继续使用后处理器(如果有的话)。