开源改变世界!!

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

推推 grbl 2年前 (2022-10-30) 259次浏览 0个评论
关闭
chamnit 打开了这个问题 on 26 May 2014 · 80 条评论
关闭

请求:新 g 代码解析器的 Grbl v0.9e 测试#411

chamnit 打开了这个问题 on 26 May 2014 · 80 条评论

注释

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411
成员

尚尼特 评论 on 26 May 2014

经过“大量”工作(超出预期),我已经彻底检查了 Grbl 开发分支中的 g 代码解析器。Grbl v0.9e 应该 100%(或接近)符合 g 代码标准。这是一个重大变化。

在消除一些错误方面,我已尽我所能,但我无法测试所有内容。我需要一些帮助,并希望一些志愿者测试新的 g 代码解析器并让我知道任何问题。

您应该注意的最大变化是:

  • 不再有默认进给速率设置。这已被删除,因为它不合规。如果尚未编写使用进给率 (G1/2/3/38.2) 的命令,Grbl 现在将出错。
  • 如果发现错误,则删除整个 g 代码块。这意味着在块中设置的任何命令都不会传递到运行状态。Grbl 的旧解析器将允许其中一些通过,并可能改变您的系统运行方式。
  • 错误反馈更加详细。对于不太常见的错误,Grbl 将报告一个可以在已发布的错误代码列表中查找的代码(尚未编写,但现在请查看 report.h 了解详细信息)。

如果有什么不正常或奇怪的地方,请告诉我!提前致谢!

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

很高兴测试它。有没有发布的构建?

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

我正在尝试在 Arduino IDE 中编译最新的开发版本(0.9e),但我收到了 TIMER0_OVF_vect 的多重定义错误。由 Arduino 的 Wiring.c 文件和 grbl 的 stepper.c 文件使用

Wiring.c 在这里(在 Mac 上)找到:/Applications/Arduino.app/Contents/Resources/Java/hardware/arduino/cores/arduino/wiring.c

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411
成员作者

尚尼特 评论 on 27 May 2014

@Mgilbride: 是的。我刚刚在 grbl-builds 存储库中上传了一个测试固件。这是一个链接。右键另存为。请注意,您的设置将被覆盖,因为它有一个新的设置结构。因此,请确保在闪烁之前将它们打印出来。

@Scott216:我不直接通过 Arduino IDE 编译,所以我无法告诉你发生了什么。很可能它在编译时将所有 Arduino 库都绑定到其中。请使用 Wiki 中列出的方法。我使用 Mac 方法,它仍然使用 Arduino IDE 的编译器,但是通过命令行,因为它没有添加所有额外的东西。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

使用 Arduino IDE 让我感觉更舒服。我可以对 TIMER0_OVF_vect 名称进行简单的更改还是可以避免多重定义?我什至无法弄清楚它在哪里被定义。我只是看到 grbl 将它与 ISR() 一起使用,而wiring.c 也是如此。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

@chamnit:我已经合并了我的 i2c/status_led 的东西,一旦我得到它就会开始测试。
将在星期三或星期四。

顺便说一句,您是否设法查看/修复了问题#352#410

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411
成员作者

尚尼特 评论 2014 年 5 月 27 日

@mschorer: 还没有。这是列表中的下一个。我一直在考虑它,并且一直在考虑使用“%”程序开始字符作为保持循环启用的一种方式,直到程序结束或检测到另一个“%”。它会起作用,但对于新用户来说,确保 ‘%’ 字符在那里并不是很明显。

顺便说一句,我很想尝试将您的 i2c 内容包含在 v1.0 中。我认为这对于将来释放更多引脚是必要的(比如在 Arduino Zero 上)。我认为我们可以使用 i2c 作为所有运行时命令甚至主轴/冷却液控制输出的接口。所有实时的东西都将保留在板上,比如步进销和可能的限制销。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

@chamnit: 我觉得我们应该看看整体状态管理。还记得前一段时间在问题中发布的(指向包含 a 的 pdf 的链接)状态图 alden 吗?

出于我(简化)的记忆-与我自己的想法混合-它有两个有限状态机:

  • 一个用于 gcode(主机通信、缓冲、解析、错误等)
  • 一种用于机器状态(移动、按钮/手动控制、限制等)

他们有一个“接触点”,一个新的 gcode 命令被解析并准备好,机器可以将下一个命令带入规划器缓冲区。
拥有两个 FSM 应该将状态保持在最低限度并“将关注点分开”。

在当前代码中,状态是全局的,状态管理无处不在,状态是按位定义的(它们是标志吗?),……我发现很难获得和调试。

不要误会我的意思,我没有抱怨,我还没有仔细考虑等等,但是在做我的插件时,我觉得状态管理应该更容易和更明显。
我希望我有时间贡献更多…

关于 i2c:我想是时候让代码准备好共享了。它只不过是一个似乎主要工作的黑客…… :-)

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411
成员作者

尚尼特 评论 2014 年 5 月 29 日

@mschorer: 我看过奥尔登的状态图。在大多数情况下,Grbl 一直这样做,尽管它并不明显。我不同意它的一些小问题,即它是一个满眼的,但它是一个好的开始。

很久以前,我看着制作一个状态机,并且惊讶地发现很少有设置在错误的地方。大多数状态都是由实时命令协议或 Grbl 内部命令设置的。它通常由一组标志控制,以向主程序指示需要更改和执行的内容。标志的目的是允许主程序在准备好时运行该命令,并用作中断和主程序之间的接口,因为它们需要易失性变量在彼此之间进行通信。这将挥发物保持在绝对最低限度。

我认为它令人困惑的原因是中断进程和主程序的重叠。当主程序需要运行实时命令模块来执行任务、更改状态并保持步进缓冲区满时,重叠会导致代码中出现一些难以理解的断点。这些有时很难区分什么是什么。我认为,如果我努力使正在发生的事情变得更清楚,那么解决这个问题将会有很长的路要走。

解决这一切的第一件事是使 g 代码解析器模块化,这就是这次更新的重点。如果我愿意,我现在可以将每个部分从解析、错误检查和执行分解为不同的进程。通过这样做,我可以使执行的序列化清晰并确定性地显示实时命令协议何时需要运行。

主轴控制暂停的状态机问题并不直接是状态机问题。这是 Grbl 如何同步流式命令的问题。每当某些进程需要按时运行某些东西时,我们都会清空计划缓冲区,例如发出主轴/冷却剂命令。因为规划器缓冲区是空的,所以状态机认为循环已完成,但事实并非如此。下一个流命令需要继续并在它进入时执行。我认为我们需要做的就是区分我们何时处于“程序流模式”与“手动用户输入”。这应该由循环自动启动设置来处理,但我认为使用 ‘%’ 字符来区分这会更好。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

我正在尝试在 Arduino IDE 中编译 0.9e,如果我的 .ino 文件只是

int main()
{ startGrbl(); }

其中 startGrbl() 是 main.c 中的原始 main() 函数,我将其重命名为 startGrbl。
这编译得很好,但是在 Arduino 论坛中,有人告诉我这样做时,我需要为 PWM、ADC 等初始化所有定时器。这些东西是否已经由 grbl 代码初始化?如果没有,我将只使用 wiki 进行闪烁,但如果我可以在没有太多麻烦的情况下让它与 IDE 一起使用,我更喜欢它。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

嗨,
今天从 09.d 升级到 0.9e。我在 2560 上运行,但是由于我包含了 i2c/one-wire 的东西,所以将代码转换为 cpp。我只从 Atmel Studio 编译/部署。由于更严格的 cpp 语法而进行了一些小的更改,否则它会按预期工作。浏览了几个冗长的 gcode 文件,这次没有锁定。此外,我必须做的探测工作,因为我尝试自动调平我的床,似乎按预期工作。归位也有效。

干得好!

凯蒂尔

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411
成员作者

尚尼特 评论 2014 年 5 月 29 日

@SixthGenie: 感谢您测试和报告它的工作方式。您能否概述需要更改以使其与 Atmel Studio 兼容并转换为 cpp 的内容?当 Arduino Zero 出现时(或在 Due 上工作),我可能会搬到 Atmel Studio。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

@chamnit不多,真的。除了将文件重命名为 .cpp 之外,由于本地定义的变量,我不得不将 gcode 文件(在第 619 行)中的一个大小写更改为括在大括号中。至于 AtmelStudio,我认为唯一特别的是将 F_CPU 定义为 16000000。我没有使用任何主轴/冷却液控制的东西,所以我不能对此发表评论……

因为我有一个 Mega2560 和一个中国的 TB6550 板;步进器启用引脚更改为支持 3 个引脚,我添加了一些 M 代码来读取我的温度。传感器并控制 4 继电器模块,因为 2560 上有可用的引脚。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

我注意到 .9c 中针对复杂 gcode 的锁定,这个版本应该有助于阻止这种情况吗?

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

还有哪些文件为此进行了重大修改。我将尝试用这个迁移我现有的代码。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411
成员作者

尚尼特 评论 2014 年 5 月 30 日

@SixthGenie: 谢谢(你的)信息。我会牢记这些东西。

@timryder: 不知道你说的锁定是什么意思。唯一已知的错误是 Grbl 在需要缓冲区同步(驻留和冷却液/主轴控制)的命令时暂停。这个还在制作中。您还可以通过提交历史检查更改的内容。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

我试图让 0.9e 运行,但我遇到了问题。我将十六进制文件刷到我的 uno 并与 UGS 连接。但是 UNO 没有响应我从 UGS 输入的命令。我输入了 $,然后输入了 $$,但它没有在控制台中返回任何内容。我重新启动了 UNO,但这并没有帮助。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

我发现了问题。我需要将 UGS 中的波特率从 9600 更改为 115200

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

step 端口反转掩码和 dir 端口反转掩码有什么区别?我将步进端口反转掩码设置为与 0.8c (11111100) 中相同的值。默认的 dir 端口反转掩码为 11000000。
无论我慢跑的方向如何,我所有的轴都只在 1 个方向上移动。

哪个反转限制引脚设置与 0.8c 相同?

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

我的 Uno 上加载了 0.9e。我在我的 Win 7 笔记本电脑上使用 UGS。当我单击主页按钮时,它会将所有 3 个轴都归位并后退 1 毫米。但是 UGS 给出了这个作为机器位置:
X -199.01
Y -199.05
Z -1

我的起始位置是机器的左前方($26=96),所以它应该给我
X 1
Y 1
Z -1

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

我正在使用 UGS 1.07,并且经常在我慢跑时,grbl 只是忽略我的慢跑命令。UGS 将发送类似:G91 G0 Y2。grbl 会响应 ok,但机器不动。这种情况经常发生。我必须进行软重置才能让它再次慢跑。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411
成员作者

尚尼特 评论 2014 年 6 月 1 日

@Scott216:感谢您的报告,但您遇到的许多此类问题都在已关闭或未解决的问题线程中。在发送很多问题之前,请先检查这些。我们都在空闲时间维护 Grbl。

另外,请记住,这是开发分支。会有错误和已知的现有错误,我根本没有时间去处理或目前正在处理。一般来说,我建议更熟悉 Grbl 内部工作的高级用户做一些这些测试请求并使用开发版本。不太熟悉的用户,我建议在开发版本被推送到 master 之前使用 master 分支。

为了回答您的问题,两个反相掩码只需拆分旧端口反相掩码。像对待旧的一样对待这些位。归位现在将根据最大轴行程将机器空间设置为所有负空间。请参阅有关解释的问题线程。您的慢跑问题是状态机问题,这是我的首要任务。当快速连续发出命令时,往往会出现此错误。现在,不要那样做。同样,这更像是一个 g 代码解析器测试请求,而不是对现有和已知错误的测试。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

这是一个奇怪的问题。如果我手动按下限位开关使其进入警报模式,然后单击软复位按钮然后单击 $x 按钮以清除警报,然后单击发送 G91 G0 x-1 的 x-jog 按钮,x 轴转到-1 位置。GRBL 认为它处于绝对位置而不是相对位置。如果我第二次单击慢跑按钮,它会正常工作。

此外,在 grbl 0.9e 中,UGS 中的坐标似乎更新较慢

这是我的设置:
$0=40.020 (x, step/mm)
$1=40.200 (y, step/mm)
$2=320.000 (z, step/mm)
$3=500.000 (x max rate, mm/min)
$4=500.000 ( y 最大速率,mm/min)
$5=500.000 (z max rate, mm/min)
$6=25.000 (x accel, mm/sec^2)
$7=25.000 (y accel, mm/sec^2)
$8=25.000 ( z 加速度,mm/sec^2)
$9=200.000(x 最大行程,mm)
$10=200.000(y 最大行程,mm)
$11=200.000(z 最大行程,mm)
$12=30(步进脉冲,usec)
$13= 4 (step port invert mask:00000100)
$14=224 (dir port invert mask:11100000)
$15=255 (step idle delay, msec)
$16=0.050 (junction deviation, mm)
$17=0.100 (arc tolerance, mm)
$18= 3(n 小数,整数)
$19=0(报告英寸,布尔值)
$20=1(自动启动,布尔值)
$21=0(反转步进启用,布尔值)
$22=0(反转限制引脚,布尔值)
$23=0(软限制,布尔值)
$24=1 (硬限制,布尔值)
$25=1(归位周期,布尔值)
$26=96(归位目录反转掩码:01100000)
$27=25.000(归位进给,mm/min)
$28=250.000(归位寻道,mm/min)
$29= 100(归位去抖动,毫秒)
$30=1.000(归位拉断,毫米)

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

我在 shapeoko 2 hello world 文件的第 34 行得到“无效的 gcode ID:33”。

G3X0.4459Y0.6092I-0.282J-0.6397
错误:无效 gcode ID:33
G3X0.3973Y0.6265I-0.4624J-1.2235
错误:无效 gcode ID:33
G2X0.376Y0.6343I0.3353J0.9488
错误:无效 gcode ID:33
G2X0.3546Y0.6427I0.3684J0.9724
错误:无效的 gcode ID:33
G2X0.3333Y0.6515I0.3967J0.9808
G2X0.3119Y0.661I0.4333J1.0077
错误:无效的 gcode ID:33
错误:无效的 gcode ID:33

并非每行在第 34 行之后都失败,但大多数都失败了。查看 report.h 文件,这似乎是一个“无效目标”错误。

grbl 安装在 Arduino UNO 上,通过通用 gcode sender 1.0.7 从带有 arduino 1.0.5-r2 驱动程序的 windows 7 PC 发送 gcode

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

@chamnit– 感谢您的信息,我会调查打开/关闭的问题。我确实注意到我上次慢跑并且机器冻结(您的状态机问题)状态从空闲变为运行。也许你已经知道了。是否有一个地方列出了 0.9e 中的已知问题?

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411
成员作者

尚尼特 评论 2014 年 6 月 1 日

@tenaku: 嗯,好像很奇怪。没错,当偏移模式弧的目标无效时会生成此错误。当到当前位置的半径与到目标位置的半径之差大于 0.002mm 时,就会发生这种情况。我检查检查这个的计算是否存在一些数学问题。我会假设弧线是正确的,但从我的角度来说很难说。

@Scott216: 是的,你是对的。重置时目标坐标生成中有错字。它正在查看最后一个 G90/91 距离模式,而不是它发布的那个。现在将推送此修复程序并更新测试固件。不,不幸的是,没有一个中心位置可以列出所有这些内容。也许可以为此目的填充一个 Wiki 页面。我看看能不能搞定这个设置。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411
成员作者

尚尼特 评论 2014 年 6 月 1 日

@tenaku: 我找到了 ShapeOko2 ‘hello world’ g-code 程序。我复制了这个问题。结果证明是 NIST 对无效目标的定义存在问题。EMC2 (linuxcnc) 已将其从 (>0.002mm) 放松到 (>0.005mm AND 0.1% 半径或 >0.5mm)。我已经更新了固件版本并推送了源代码修复。测试 g 代码现在应该可以正常工作了。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

@chamnit我下载并重新编译了 dev 分支,但在同一行 gcode 上仍然出现错误 33。在文件过程中,我似乎没有像以前那样收到那么多错误,但仍然有不少。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411
成员作者

尚尼特 评论 2014 年 6 月 2 日

@tenaku: 诡异的。我能够毫无问题地在 shapeokos 网站上运行整个程序。你对脚本有什么改变吗?你有你正在运行的程序的链接吗?同时发送您的设置。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411
成员作者

尚尼特 评论 2014 年 6 月 2 日

@tenaku: 没关系,我找到了错误的根源。与该计算的数学有关。还有一个失败。正在对其进行修复,并在推送时为您更新。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411
成员作者

尚尼特 评论 2014 年 6 月 3 日

@tenaku: 没有。似乎一切都很好。你能重新检查你的错误吗?您正在运行原始的 ShapeOko2 测试程序吗?你有没有以任何方式修改它?请记住,您必须运行整个程序,而不是片段。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

@chamnit: 这里有两个拉链。一个有效,另一个无效。我也包含了来自 GrblController 的日志文件。

注意:我没有设置 step/mm 或任何其他默认值来匹配我的机器。我刚刚在我的 OSEPP Uno R3 Plus 板上运行了代码。

欢迎其他任何人试一试这些错误或他们的系统,看看这些错误是否对我的设置很奇怪。

工作文件:
https ://dl.dropboxusercontent.com/u/19375884/Working%20Gcode%20and%20Log.zip

损坏的文件:
https ://dl.dropboxusercontent.com/u/19375884/Broken%20Gcode%20and%20Log.zip

我还将拉下 8c 版本并查看损坏的文件是否可以使用它。
编辑:8c 运行“损坏”的 gcode,没有任何错误。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411
成员作者

尚尼特 评论 2014 年 7 月 5 日

@swalton2004:您的 g 代码在损坏的文件中似乎不正确。

例如,在第 17 行的第一个错误中,该块是G18 G3 X12.18 Z-0.0078 I-0.05 K0. F20.,并且您对该弧的起始位置是X12.23, Y7.5408, Z0.0。如果根据这些参数画出这个圆弧,你会发现它确实是一个无效的圆弧命令。从中心到起始位置的半径X12.23, Z0.0为 0.05。从圆弧中心到目标位置的半径X12.18 Z-0.0078为 0.0078。甚至不接近相同。因此错误。

我不确定你从哪里生成你的 g 代码,但它看起来像一个错误而不是 Grbl。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

@chamnit
谢谢参观。

该代码由 Inventor HSM 2015 生成。我将重新运行 CAM 并查看它是否会生成更好的文件。如果没有,我将打开 Autodesk 的支持案例,看看他们是否可以解决问题。我需要他们消除 g43 代码并确保在各种 g 代码上有一个有效的速度值。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411
成员作者

尚尼特 评论 2014 年 7 月 5 日

@swalton2004:鉴于它是您使用的专业套件,它可能不是他们软件中的直接错误(但您永远不知道。)请记住,它可能是 CAM 软件及其设置的后处理器。在那些开始的代码行或后处理器中可能有一些假设会使初始位置不是 X12.23、Y7.5408、Z0.0。它可能是其他会导致有效弧的东西,但 Grbl 无法识别它或拥有该信息。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

@chamnit
我希望你是正确的。我希望让 Autodesk 调整后处理器以更好地支持 grbl。我认为还有其他人使用 Inventor 来满足他们的爱好 cnc 机器。

我已经在使用稍微改动过的 mach2 帖子了。它在 8c 上运行良好,但我需要控制每个轴的最大速度,所以我想为 grbl 0.9 获得更好的帖子。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411
成员作者

尚尼特 评论 2014 年 7 月 5 日

@swalton2004:仅供参考,Grbl 紧跟 linuxCNC(以前称为 EMC2),但支持 CNC 真正需要的主要 g 代码。我最终需要发布 v0.9e 支持的新 gcode,但是当它被推到边缘进行最终测试时我会这样做。

此外,v0.8 没有很多错误检查,很可能不会明确捕获此错误。只有在 v0.8 中实际运行 g 代码,您才会注意到一些错误。这可能是微小的,但应该是一个错误。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411
成员作者

尚尼特 评论 2014 年 7 月 7 日

大家好。鉴于我们可能在 dev 分支中解决了大部分未解决的问题。我想获得更多关于今天最新推送的反馈。它具有建议的原子标志设置修复@kfoltman并通过以下方式恢复冷却液和主轴控制@ashelly@mschorer. 以及一些新功能,如动态工具偏移,以及一些各种次要的 g 代码解析器错误修复。

如果从您的反馈来看一切都正常,我认为 dev 分支将准备好推送到边缘分支并关闭 v0.9 的主要开发。在边缘,我认为我们将只专注于修复并使其足够稳固以用于主版本。我希望它不会花费太长时间,因为自 v0.8 发布以来已经有一段时间了。是时候了。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

你要制作这个最新开发分支的十六进制文件吗?

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411
成员作者

尚尼特 评论 2014 年 7 月 10 日

仅供参考,开发分支已与边缘分支合并。dev 分支已被子顺序删除。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411
贡献者

tmpvar 评论 2014 年 7 月 10 日

祝贺和伟大的工作?

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411
成员作者

尚尼特 评论 2014 年 7 月 14 日

我从无线电静音中假设 Grbl v0.9f 都很好?有没有人花时间试一试?

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

我仍在评估……这是我的修改版本(我的硬件需要)。

到目前为止我遇到的唯一“我认为”的问题:执行有时(但很少)暂停 – 然后我可以通过开始按钮继续……但现在打开一个问题还为时过早。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411
贡献者

福尔特曼 评论 2014 年 7 月 14 日

我还没有在我的设置中看到自动暂停问题,但由于我的设置中的机械问题(弯曲的桌子使雕刻毫无意义),我大部分时间都在做短工。关于什么可能触发自动暂停以及它最终处于哪种状态的任何想法?(进给保持等)

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

@chamnit
首先感谢您为 grbl 所做的所有工作,我喜欢它。我只有一个问题或要求。是否可以选择在归位后将机器坐标显示回零而不是负最大行程。也许可以在设置菜单中放置一个选项。如果工作量太大或麻烦或不值得,我很抱歉提出要求。我也很乐意在什么文件中获得有关要更改或编辑的内容的信息,以便我可以构建一个新的十六进制文件。
再次感谢你

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411
成员作者

尚尼特 评论 2014 年 7 月 15 日

@ihayri:归零归零行为一直是一致的请求。从历史上看,我们现在的做法是正确的。我认为这与您在工作时浏览屏幕时能够轻松识别您正在查看的坐标系、机器或工作有关。无论如何,已经有足够多的人要求允许他们“修复”这种行为,以便无论方向如何都将轴归零。

我正在努力,应该很快就会完成。不过,空闲时间对我来说并不充足,而且我在不久的将来也看不到更多。因此,我将不得不在此和其他更新中快速工作。为此,我认为我首先需要更改所有设置掩码的工作方式,以便它们都以相同的方式工作(我的待办事项列表上有一段时间)。可能 0 位始终是 X 轴,1 位是 Y 轴,2 位是 Z 轴。ABC 轴将为 3-5 位保留。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

@chamnit: 谢谢回复。我知道空闲时间很宝贵,但不要着急,尽可能多地花时间。我确信按照现在的方式归位没有任何问题,只是当我归位到左前下角时,我想要为零(我可以忍受显示的负机器坐标)但是当我点击ugs 中的归零按钮 机器一直沿相反方向移动并将机器坐标设置为零。也许我确实在 grbl 中设置了错误的设置,我不知道,因为我是 cnc 构建和 grbl 的初学者。
如果有帮助,这是我的设置:
$0=160.000 (x, step/mm)
$1=160.000 (y, step/mm)
$2=160.000 (z, step/mm)
$3=400.000 (x max rate, mm/ min)
$4=440.000 (y max rate, mm/min)
$5=350.000 (z max rate, mm/min)
$6=60.000 (x accel, mm/sec^2)
$7=60.000 (y accel, mm/sec^2)
$8=40.000 (z accel, mm/sec^2 ) )
$9=270.000 (x max travel, mm)
$10=370.000 (y max travel, mm)
$11=80.000 (z max travel, mm)
$12=25 (step pulse, usec)
$13=0 (step port invert mask:00000000 )
$14=128 (dir port invert mask:10000000)
$15=25 (step idle delay, msec)
$16=0.020 (junction deviation, mm)
$17=0.002 (arc tolerance, mm)
$19=0 (report inches, bool)
$20 =1(自动启动,布尔值)
$21=0(反转步进启用,布尔值)
$22=0(反转限制引脚,布尔值)
$23=0(软限制,布尔值)
$24=1(硬限制,布尔值)
$25=1(归位周期,布尔值)
$26=224(归位目录反转掩码:11100000)
$27=15.000(归位进给,毫米/分钟)
$28=400.000(归位寻道,毫米/分钟)
$29=100(归位去抖动,毫秒) )
$30=1.000(归位拉断,毫米)

我只是再次尝试了一切,我可以使用 G10 P1 L20 x0 y0 z0 将工作位置设置为零,然后将我的轴沿正方向移动例如 10mm,并使用 G90 x0 y0 z0 移动回零工作位置。如果这是正确的,也许重新映射 ugs 中的归零按钮(如果可能的话)也可能是使事情更容易使用的解决方案。也不再支持重置零,一些重新映射也会很好。然后我需要弄清楚的是如何在 XLCD 中显示工作位置而不是机器位置,我会是一个快乐的露营者。

很抱歉发了这么长的帖子,再次感谢让这一切成为可能。如果我对我的知识不多有帮助,请告诉我。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411
成员作者

尚尼特 评论 2014 年 7 月 16 日

@ihayri:UGS的“归零”一直都是奇葩的实现。这并不是真正实现此类功能的 CNC。我认为这与您按下该按钮时他们发出的命令有关。我会和 UGS 开发人员讨论这个问题。我认为他们没有更新 v0.9 的 GUI,因为它一直在开发中。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

@chamnit. 是的,您是对的,我将尝试与他们取得联系,同时我正在尝试找出如何自己更改按钮的命令(例如,他们发送 G10 P0 X0 Y0 Z0 用于重置零,而不是 G10 P1 L20 X0 Y0 X0) 不幸的是我对 jar 文件一无所知,必须谷歌。

至少现在我知道如何构建一个十六进制文件,我这样做是为了降低波特率,直到我在 XLCD 上获得更高的波特率(必须高于 grbl),然后如果不是 115200 波特,则将 grbl 恢复到至少 57600再次。向ugs添加一个触摸板按钮也很好,但无论如何这不属于这里。

不过有一个问题,我的 13 美元 14 美元 26 美元的设置与 grbl 中的设置是否正确?

谢谢。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

到目前为止运行得像魅力。

在空运行期间(桌面上 grbl-shield 旁边的电机),我还没有遇到任何 M03/05 (8/9) 暂停。Ggcode 由 gcodetool inkscape 扩展 (1.07) 生成。很多主轴启动和停止(总共 129 个),因为我使用该引脚来切换螺线管。通过 G00、G01、G02 和 G03 移动。

进给20000,毕竟是笔式绘图机。文件有 1416 行代码,可在此处获得:http: //pastebin.com/Q0zSqtL8

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411
成员作者

尚尼特 评论 2014 年 7 月 17 日

@darkfibre-nl: 20000 毫米/分钟?!棒极了。我认为你有最大的提要记录,至少我知道。感谢测试报告!

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

我只是想说,我可以通过 UGS 的重置和归零按钮解决所有问题。期待进一步的发展。谢谢

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

@chamnit呵呵,好吧,让我们看看它在实际工作中是如何运作的。等待一些组件(即24V电源和一些机械部件)。为了完整起见,我的 grbl 配置在这里:http ://pastebin.com/zWcCTr4j

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

仔细查看您的步进器性能/扭矩曲线。我最终
使用 48 伏电压来获得我想要的性能。发现
系统设计的这个细节是最难整理的。双倍电压有效地
使速度翻倍。但我把泡沫打烂了。“轻松”的工作。但
可能不像成为一名绘图员那么容易。期待看到你的构建。

2014 年 7 月 17 日星期四上午 11:31,darkfiber-nl notifications@github.com
写道:

@chamnit https://github.com/chamnit呵呵,好吧,让我们看看它
在实际工作中是如何运作的。等待一些组件(即24V
电源和一些机械部件)。为了完整起见,我的 grbl 配置
在这里:http ://pastebin.com/zWcCTr4j


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

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

使用屏幕和通用 gcode 发送器测试了我的 macbook 中的一些简单文件到 Arduino Uno。我发送的文件只有换行符,没有crlf。这似乎在一段时间后使 grbl 崩溃,停止 ok 响应,在某些时候,在重置和重新启动后,甚至状态?将返回部分垃圾并重新启动 grbl,直到我重新刷新 grbl。将所有 ^J 更改为 ^M^J 后问题就消失了,后者是从 Windows 机器发送的,但我认为这不是区别。grbl 9e 和 grbl 9f 也出现了同样的问题。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411
成员作者

尚尼特 评论 2014 年 7 月 21 日

@Woutoo: 唔。这似乎很奇怪。你能给我一个你用来导致这种行为的示例文件吗?我想在我的设置上自己测试一下,看看我是否可以重现它。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

我很乐意发送文件,但我似乎无法找到这样做的方法。请原谅我的无知。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

邮件中附加的文件。

[编辑:删除邮件页脚]
在 2014 年 7 月 20 日星期日下午 6:57,Sonny Jeon notifications@github.com
写道:

@Woutoo https://github.com/Woutoo:嗯。这似乎很奇怪。你能给
我一个你用来导致这种行为的示例文件吗?我想
在我的设置上自己测试一下,看看我是否可以重现它。


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

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411

对我来说工作得很好,9f。使用 Atmel Studio 编译它只是为了让我知道我可以根据需要进行调整。在基于 Velmex 定位器的自制设备上使用。到目前为止我一直在进行空气切割,主轴购买是下周。我真的很喜欢 0.8 以上的增强功能,谢谢。

请求:新 g 代码解析器的 Grbl v0.9e 测试 #411
 
喜欢 (0)

您必须 登录 才能发表评论!