注释
|
@timryder: 是不是运行master Grbl v0.9g,把M20/21换成M8/9有这个问题?另外,您将步进空闲延迟设置为多少?对于您的案例使用类型,我会推荐 255。 |
|
我只是快速地将工具重新连接到冷却剂销并进行测试。步进延迟为 0。 您认为 255 与 0 的区别是什么? |
|
@timryder:从 0 开始,255 将保持步进器启用,但没有延迟。如果你把东西设置为 0,它可能不会改变任何东西。虽然我想知道如果你将空闲延迟设置为 100 左右,它的运行方式是否会发生变化。如果某处存在一些基于时间的问题。 无论如何,我不能完全告诉你 2-3 秒的延迟是从哪里来的。也许是 FTDI 芯片?咕噜咕噜?很难说。我可以告诉您,Grbl 代码中没有任何内容会故意造成那么长时间的延迟。最接近的是在警报事件后硬编码强制延迟 500 毫秒,以确保消息在重置所有内容之前清除串行 TX 缓冲区。 发生此类事件后程序是否恢复正常?Grbl 在此暂停期间是否有响应,这意味着它会返回“?” 冻结时的状态报告? |
|
@chamnit我相信它没有反应, |
|
从 m 20 / 21 更改为 M 8 / 9 似乎提高了性能并大大降低了频率。但是我确实让事件连续发生了三次。 对于步进器空闲延迟,我仍然运行 0。更改此值似乎没有任何区别。 当事件发生时,Grbl 似乎没有反应。用户界面仍在等待“确定”以继续流式传输 gcode。有什么想法吗? |
|
@timryder:从 M20/21 到 M8/9 的简单变化会产生不同,这似乎很奇怪。为了弄清楚这一点,我想我必须自己测试一下。你能提供一段重现这个问题的 g 代码吗? 另外,您使用的是什么用户界面?如果您使用另一个,会有什么不同吗? |
|
在这种情况下,将第二个 FTDI 连接到您的 PC 可能是值得的。将它连接到运行 Grbl 的 Uno 上的 Rx/Tx 接头。然后使用诸如 putty 之类的程序连接到该 FTDI,它只发送您键入的内容,只显示它接收到的内容。 |
|
M22 我一遍又一遍地运行相同的 g 代码,它绘制字符,但错误的频率不会在一段时间内发生。我花了几十个周期才真正产生异常。 我使用我自己的自定义 UI,它基本上模仿 UGS,它只在收到“OK”响应时才发送下一行。 |
|
@timryder: 嗯,我远程连接到安装了 Arduino 的家用电脑。我用我们的 stream.py 脚本测试了你的 g 代码几十次(使用字符计数和呼叫响应方法)没有明显的问题。我看不到发生了什么,但我没有看到 g 代码流中有任何暂停。我可以继续尝试,但这指向特定于设置的东西,无论是在您的 Grbl 设置中还是在您的自定义板/接线/GUI 中。 你能把你的 Grbl 设置也发给我们吗?M22 命令有什么作用? 此外,我最近为 GUI 开发人员编写了一个 Interface Wiki。请快速阅读,如果你还没有。它会让您快速了解为 Grbl 编写 GUI 的推荐方法。 |
|
是的,grbl 设置在这里…. #define DEFAULT_X_STEPS_PER_MM 640.0 对不起,我忘了把那个从 g 代码中拉出来。 [[[[[[[[[[[[[[[[[[ 来自 settings.c ]]]]]]]]]]]]]]]]]]]]]]] |
|
我正在用 Atmel Studio 编译它。 今天下午我也将尝试给予@gerritv也想做个测试。 |
|
@timryder: 关于您的 M 代码暂停问题有任何消息吗? |
|
道歉。不得不离开一个星期。我完全切换到 M8/9,它仍然发生。前几天一个循环看了3遍。我将在周中回到它。请不要关闭。 |
|
@timryder: 出于好奇 – 当您调用自定义代码时,您是否验证过您的 grbl 控制器由于某种原因(驱动 MOSFET 等时的瞬态)没有完全重置,并且您看到的 2-3 秒延迟不是结果“重启”(引导加载程序等待或看门狗超时)延迟……?此外,您的自定义 GUI 本身并不是延迟的来源(使用不同的 GUI 等进行测试)…?只是一个想法… |
|
@timryder: 任何新闻?现在想想,因为我们还没有听到任何这已经解决的消息。 |


好的,所以我正在做一个项目,我创建了自己的定制板,它使用 FT232RL USB 转 UART 芯片和 ATMEGA328P 模仿 Arduino Duemelinova,就像 Uno Rev 3 一样。该板似乎工作正常。
我在 grbl 中添加了一个自定义 M 代码,它 100% 模仿了冷却液溢流和冷却液禁用命令的工作方式。我已经注释掉 Main 中的行以初始化探针引脚,我正在使用它来驱动 MOSFET 的输出。回顾一下,端口 C 位 5 对我来说是一个输出引脚。我添加的 Mcode 是 M20(启用)M21(禁用)我也经常使用 G4 命令来确保我的自定义工具到达零件(通常是 20 毫秒)。
所以请记住,代码与冷却剂代码完全相同。我注意到的是,有时在我调用 M20 或 M21 gcode 后系统会随机冻结。没有真正的押韵或理由,但不久后(2-3 秒)它将继续并恢复并吐出 OK 并允许我继续发送 GCode。我在一个周期内发生过 5 次以上。如果我在没有这些代码的情况下运行系统,我永远不会看到问题,它似乎只有在我使用 em 时才会发生。
这是一个问题的原因是,当工具到达不应停留在一个位置的零件时,这会给零件带来问题并将其报废。
我意识到这是一个奇怪的“问题”,我想这并不是真正的问题,而是在寻求任何故障排除帮助。
我正在使用 0.9g 分支。