开源改变世界

如何换刀? #590

推推 grbl 2年前 (2023-01-22) 159次浏览

打开
109JB 开了这个issue 2015 年 2 月 12 日 · 15条评论
打开

如何换刀?#590

109JB 开了这个issue 2015 年 2 月 12 日 · 15条评论

注释

如何换刀? #590

我关注 GRBL 的发展已经有一段时间了。我目前在桌面上使用 LinuxCNC 通过并行端口控制 3 轴铣床。我想离开桌面并转向 GRBL 之类的东西。我喜欢这样一个事实,即 Arduino 只做控制机器运动的事情。有时在桌面设置中,我会收到实时警告并且很少会出现错误。尽管这种情况很少见,但它促使我留意解决方案。作为爱好者,我想要一些便宜的东西,这正是 GRBL 吸引人的原因。说了这么多,有一件事阻止我飞跃到 GRBL。那就是工具的变化。现在我使用 LinuxCNC 的手动换刀程序,该程序使用 M06 T# 命令从刀具表中提取刀具长度偏移。我看到 GRBL 目前不支持 M06,但它支持程序暂停、探测和刀具长度偏移 (G43.1)。我认为这将允许将命令列表写入 NC 代码以执行工具更改。例如,执行以下步骤:

1 – 主轴停止
2 – 移动到指定位置进行换刀,同时缩回主轴
3 – 暂停
4 – 物理更换刀具
5 – 使用刀具设置板执行刀具长度的 Z 轴探测
6 – 使用输入偏移的代码G43.1
7 – 缩回主轴
8 – 恢复程序

我不知道的是如何将新的刀具长度偏移输入到 G43.1 中。对于那些这样做的人,你能解释一下,并为此给出示例 NC 代码吗?或者,还有另一种方法可以做到这一点吗?

我已经到了要试一试的地步,并订购了 Arduino 和其他一些物品来尝试这个。任何帮助表示赞赏。

另外,我想要的另一件事是钻 G 代码,但这不是一个交易破坏者。

谢谢,

约翰·B。

如何换刀? #590
成员

@109JB: 嗨,约翰!同意,并行端口解决方案正在变老和崩溃,而 Grbl 终于到了人们可以实现飞跃的地步,就像你即将要做的那样。工具更改一直是很多人询问的问题。所以目前对工具变化的想法是,它应该由 GUI 来处理。GUI 将执行所有偏移测量,保持/维护它们,并在发生工具更改时将正确的偏移发送到 Grbl。要让 Grbl 做到这一点将需要大量宝贵的资源,而且很难使其完全推广到所有类型的机器。

这实际上归结为集成和支持工具更改的 Grbl GUI。据我所知,目前还没有任何可以做到的,但我认为很快就会有一些发布。不过你总是可以打扰 GUI 作者!可能最先进的版本(支持大部分新的 Grbl 功能)是 GrblPanel。我会从那里开始。

至于钻 g 代码,我调查了一次安装它们。它们非常简单,但是 g 代码的“粘性”变量很奇怪。如果 Grbl 有空间,它们将被安装,但我认为大多数人可以将它们翻译成直接的 G0/G1 g 代码。

如何换刀? #590

例如,这个 SW 处理 Grbl 的 M6 代码,等等。
http://www.mikrocontroller.net/attachment/247373/SerialComCNC_0.7f.zip
由于网络摄像头库,它仅适用于 Windows。

2015-02-12 15:59 GMT,Sonny Jeon notifications@github.com

@109JB: 嗨,约翰!同意,并行端口解决方案正在变老和
崩溃,而 Grbl 终于到了人们可以实现
飞跃的地步,就像你即将要做的那样。工具更改一直是很多
人询问的问题。所以目前对工具变化的想法是,它
应该由 GUI 来处理。GUI 将执行所有
偏移测量,保持/维护它们,并
在发生工具更改时将正确的偏移发送到 Grbl。要让 Grbl 做到这一点将需要大量
宝贵的资源,而且很难使其完全
推广到所有类型的机器。

这实际上归结为集成和支持工具
更改的 Grbl GUI。据我所知,目前还没有任何可以做到的,但
我认为很快就会有一些发布。不过你总是可以打扰
GUI 作者!可能最先进的版本(
支持大部分新的 Grbl 功能)是 GrblPanel。我会从那里开始。

至于钻 g 代码,我调查了一次安装它们。它们
非常简单,但是 g 代码的“粘性”变量很奇怪。如果 Grbl
有空间,它们将被安装,但我认为大多数人可以
将它们翻译成直接的 G0/G1 g 代码。


直接回复此邮件或在 GitHub 上查看:
#590(评论)

如何换刀? #590

http://www.mikrocontroller.net/attachment/246745/SerialComCNC_v0.7d.jpg
截图。

2015-02-12 16:16 GMT,Cri S phone.cri@gmail.com

例如,这个 SW 处理 Grbl 的 M6 代码,等等。
http://www.mikrocontroller.net/attachment/247373/SerialComCNC_0.7f.zip
由于网络摄像头库,它仅适用于 Windows。

2015-02-12 15:59 GMT,Sonny Jeon notifications@github.com

@109JB: 嗨,约翰!同意,并行端口解决方案正在变老和
崩溃,而 Grbl 终于到了人们可以实现
飞跃的地步,就像你即将要做的那样。工具更改一直是很多
人询问的问题。所以目前对工具变化的想法是,

应该由 GUI 来处理。GUI 将执行所有 偏移测量,保持/维护它们,并在发生工具更改时将正确的偏移发送到
Grbl 。要让 Grbl 做到这一点将需要大量宝贵 的 资源,而且很难使其完全 推广到所有类型的机器。

这实际上归结为集成和支持工具
更改的 Grbl GUI。据我所知,目前还没有任何可以做到的,

我认为很快就会有一些发布。不过你总是可以打扰
GUI
作者!可能最先进的版本(
支持大部分新的 Grbl 功能)是 GrblPanel。我会从
那里开始。

至于钻 g 代码,我调查了一次安装它们。它们
非常简单,但是 g 代码的“粘性”变量很奇怪。如果
Grbl
有空间,它们将被安装,但我认为大多数人可以

它们翻译成直接的 G0/G1 g 代码。


直接回复此邮件或在 GitHub 上查看:
#590(评论)

如何换刀? #590
作者

Chamnit – 感谢您的快速响应。我一直在研究与 GRBL 一起工作的 GUI,这听起来是实现 GRBL 中缺少的许多功能的好方法。我完全理解在 Arduino 中保留资源的必要性。似乎钻孔代码之类的东西也可以在 GUI 中实现。例如,当 GUI 看到格式正确的 G81、G82、G83.. 代码时,是否可以将单个代码转换为适当的 G0/G1 移动?我本身不是程序员,但这些年来做了一些。许多 GUI 都是开源的,这可能是我可以尝试的。

cri-s – 这看起来是个很棒的程序。有没有用英语详细介绍该程序的网站?我已经搜索过但没有找到任何东西。我很想知道程序中有哪些 NC 代码可用。不过看起来不错。

如何换刀? #590
成员

@109JB: 是的,如果 GUI 有一个好的解析器,它应该能够转换它。很久以前,我写了一个 python 脚本,它会预处理 g 代码程序以将 arcs 转换为 G1 命令(Grbl 无法在早期处理 arc)。同样的概念也适用于完整的 g 代码标准。我一直想重新访问它并为 GUI 和预处理器编写一个开放的 g 代码解析器库,但没有时间去做。

如何换刀? #590

固定循环在我的 GrblPanel TODO 列表中(虽然不是很高),但这是一个临时解决方案:https ://pico-systems.com/gcode.html 。
如果从我的阅读中完全实现,固定循环非常复杂。很多排列。通常可以说服代码生成器不输出固定循环,而是执行 G0/G1。例如。CamBam 的 Grbl 后处理器为其中一个钻井周期执行此操作。

不过,我将再次开始查看工具更改。

如何换刀? #590
作者

再次感谢大家。我确实发现一些 CAM 软件具有与 GRBL 兼容的可用后处理器。CamBam 是我看到的一个,HSM Express 也有一个 tinyG 后处理器。据我了解,此时 tinyG 和 GRBL 具有相同的可用 G/M 代码集,因此 tinyG 后处理器也应该适用于 GRBL。不幸的是,由于我的财务限制,我不使用任何一个。HSM Express 是免费的,但需要远非免费的 Solidworks。CamBam 的成本要低得多,但此时我仍然遥不可及。我目前使用 pyCam 或手动编写所有代码。我打算研究制作 pyCam 使其与 GRBL 兼容的可能性,或者创建我自己的程序以将我想要使用的固定循环转换为 G00/G01/G02/G03 代码。

谢谢,

约翰·B。

如何换刀? #590

CamBam 给你 40 次尝试,如果你考虑它是如何工作的,它可以为你做很多工作。
pyCam 是否输出钻孔循环???

这是一个脚本示例,用于获取一个或多个钻孔循环并将其转换为 G0/G1。https://github.com/garciasa/grbl-drills-cambam

一篇关于固定循环的好文章:
http ://webs.purduecal.edu/et/files/2012/09/lecture15.pdf
http://webs.purduecal.edu/et/files/2012/09/lecture16.pdf

对于一般情况而言并非微不足道

如何换刀? #590
作者

我只将 pyCAM 用于一些没有孔的 3D 铣削项目。我想我从来没有想过它是否有钻孔模式。我考虑过下载 CamBam 演示,但我真的坚持要 3d CAM。我有一些使用 MasterCam 的经验,当我想开车去朋友的商业商店时,我可以访问该程序的一个席位。他不在的时候让我用。任何我需要做的更复杂的事情,我通常都会去那里。

至于固定循环,我了解它们的工作原理。在我回到大学之前,我做了很多年的 CNC 机械师,我工作的商店需要做很多手工编程。我们不只是装载库存和按下按钮。我们实际上必须了解编码是如何工作的。它们是否微不足道取决于您对微不足道的定义。最常见的固定循环有一个明确的流程,只需检查一下当前的机器模式,就可以很容易地将其分解为单独的动作。我不是在谈论像攻丝循环那样需要主轴同步的固定循环,而是像 G81、82、83 这样更基本的固定循环。如果对这些固定循环有很好的理解,在我看来它们是非常基础的。

如何换刀? #590
贡献者

如果您从 Java 开始并创建固定循环模块,您可以查看https://github.com/winder/Universal-G-Code-Sender并且直接集成它会很好。如果您想使用 UGS 源代码,我建议您使用 NetBeans。

如何换刀? #590
作者

@alpharesearch, 谢谢。实际上,我下载了 Netbeans,并通过制作一个简单程序的练习来适应圣诞节和新年之间的界面。不过,我一直没能抽出时间回到 Java。希望事情对我来说会慢一点,我可以潜入。

如何换刀? #590
成员

UGS 有一个用于在 gcode 解析器中扩展 Gcode 命令的位置,我用
它来添加代码以将小圆弧扩展为线段,当时这
对 GRBL 来说是一个潜在的问题。

如果有人有想要尝试的算法,请随时进行实验:
https://github.com/winder/Universal-G-Code-Sender/blob/1d6a6adfda2d2a1aa030cad4b0288839267eb6b7/src/com/willwinder/universalgcodesender/gcode/GcodeParser。 java#L349

在 2015 年 2 月 16 日星期一上午 10:46,109JB notifications@github.com写道:

@alpharesearch https://github.com/alpharesearch,谢谢。实际上,我
下载了 Netbeans,并通过制作一个简单
程序的练习来适应圣诞节和新年之间的界面。不过,我
一直没能抽出时间回到 Java。
希望事情对我来说会慢一点,我可以潜入。


直接回复此电子邮件或在 GitHub
#590(评论)上查看。

如何换刀? #590
作者

@winder我一定会去看的。在 GRBL 的所有 GUI 中,我真的很喜欢 UGS 的外观和感觉。一些 CNC 图形用户界面太拥挤了。UGS 从外观上看具有很好的平衡性。一旦我开始使用它,我就会知道更多,但从我的角度来看它看起来很棒。

再次感谢大家。

如何换刀? #590

仅供参考,bCNC https://github.com/vlachoudis/bCNC最近增强了手动更改功能和新工具的自动验证功能

如何换刀? #590

我用这个:

G00 G53 Z-1 //Z原点
G00 G53 X-9.6 Y-1.6 // 测头位置
T1 M00 // 换刀
G91G38.2 Z-30 F100 // 快速第一次接触
G0 G91 Z1 //
退回 G38.2 Z- 10 F10 // 精确触摸
G10 L20 P1 Z-3.4 // 零件 Z0 和触摸 Z 活动位置的距离
G00 G53 Z-1 //Z 原点

喜欢 (0)