注释
@luben111: 当我有空的时候我会调查这个,但是首先你能验证当你注意到它失败时 Grbl 正在接收 0x85 命令吗?不确定最简单的方法是什么。也许编辑串行 RX ISR 代码以在读取 0x85 时切换引脚。 |
好点,我会检查这个 |
@luben111 :你提到你正在使用 labview 你愿意和我分享你的工作吗,这样我就可以帮助/验证 grbl 的更多/新功能基本上我正在将 grbl 移植到 xmega avr,我的目标是添加 G33(点击/threading ) g 代码支持,我需要 labview 类型的应用程序来测试功能完整性 |
@shamsiqbal |
@luben111 我已经改装了 beaver vc5 cnc 铣床,它是 xmega 和 arduino nano 的混合体,但下一个版本我将只使用 xmega128a1u |
@shamsiqbal 移植到 XMega128 听起来是个好主意(尽管很快就可以移植到 ARM),你有一些 PCB 吗? 关于慢跑 – 新的 GRBL v.1.1 内置了慢跑控制,我可以说它工作得非常好 – 使用 PC 键盘我可以获得技术上与使用吊坠相同的行为。 |
@luben111 关于 xmega pcb 我已经使用光敏胶片方法构建了分线板,你可以使用碳粉转移法构建一个它是一个简单的 smd to dip 分线板,一旦我完成移植,我将使用我自己构建的 cnc 铣床构建完整的 pcb 您可以通过shams@bosonelec.com 将文件通过电子邮件发送给我 我在 grbl 端口上使用 v1.0 而不是 v1.1,因为我在 v1.1 中发现了一些问题,我新添加的参数无法正确保存
我认为在 ARM 上移植 grbl 并不重要,但要进行 S 曲线运动规划。您选择了 lpc17xx arm 端口,但如果您选择了 stm32 nucleo 板,这将是一个不错的选择,因为它具有经济的价格和可用的板载调试选项,请查看 stm32 nucloe 板。cortex m3 vs cortex m4 和 fpu 有很大的不同我有 3k kintes mkv3 系列 cortex m4 mcu,但我仍然更喜欢 stm32f4 系列,在我看来,在 stm32f429i 发现板上可以使用独立的基于 grbl 的 cnc 控制器,我建议你考虑一下用于 grbl arm 端口的 stm32 系列板 |
@shamsiqbal:在你开始说你不知道的话之前,请尝试阅读其他问题线程。特别是关于转向 ARM 的话题。关于这个话题有一段很长的对话。此外,LPC 端口是由用户完成的,不是我的主要选择,因为您会看到是否阅读了该主题。对于要求使用这个 ARM 芯片或那个 ARM 芯片甚至 FPGA 的每个人,我都说完了。越来越荒谬了。 |
@shamsiqbal:我和我的兄弟将 grbl 移植到 lpc17xx,因为有大量出售的 CNC 板使用它,但运行不同的固件。据我所知,grbl-lpc 的步进率和阻塞率比任何其他 grbl 端口都快。M4性能会更好吗?或许。我们会看看您或其他人何时移植到它。 |
@chamnit: 此外,这些是您对https://github.com/gnea/grbl-Mega/issues/17 thread 在此线程中,我指出了三件事 我从 v0.8 开始就一直在阅读 grbl 代码,我对 grbl 的经验比你少,如果我不能执行任何附加功能,那么向专家寻求帮助是显而易见的事情,这不是事情是如何工作的,而是关于代码兼容性的grbl中的现有功能 @tbfleming ? |
请停止自相矛盾。你在上一篇文章中提到了这一点。
请理解,回答有关这些问题线程的问题需要时间和精力。它用于确定是否存在错误或讨论重要问题。 不是为了教每个随机的人如何为 Grbl 编码。由于这个原因,代码被很好地注释了。当 v1.1 的一切都在向前发展时,尝试在旧版本的 Grbl 上帮助您也没有任何意义。你想要的对我自己和这里的其他人来说完全是浪费时间。 此外,您建议的所有改进先前已在多个位置进行过讨论,并且已经在计划中。请尝试使用 Google 并在此处发布之前做一些功课。这将节省每个人自愿提供帮助的宝贵时间。应该花在开发或制作某物上的时间。 |
ClearPath 伺服系统。 |
此外,当前一代业余爱好者激光器上的步进器运行频率接近 100 kHz。未来的爱好激光器可能需要更高的速率。 |
我对 serial.c(第 161 行)进行了以下修改,以显示 0x85 取消操作 – 每次 0x85 取消时 PB5 都会切换(在 ISP 的引脚 3 上可见)。 @———————————————— ———————————————- 似乎确实存在一些问题,它发生在以下情况下
The misbehaviour is – if 0x85 was sent before command 1 head movement stopped, command 2 will be executed, i.e. 0x85 is not affecting jog commands which were accepted and waiting to be executed while previous command was cancelled but head is still moving. My explanation is:
|
@luben111 : Thanks for digging into this. It’s possible there may be some bug in the state machine. I didn’t vet it as much as I have in the past prior to releasing v1.1. But, first:
I suppose the question would be, what is the situation that you are sending a jog cancel and then still are sending jog commands? |
嗨,
我正在使用 LabView 来控制 GRBL v1.1(几天前下载了最新的 GRBL)。一切都像魅力一样工作,除了我发现了一些可能是慢跑控制中的故障。错误在于有时向 GRBL 发送 0x85 并不会中止移动。让我详细解释一下发生这种情况的情况。我记录了问题发生时发送到 COM 端口的所有数据(char <…> 是 0x85):
G00 X-0.30 (1)
$J=G90X-558F2000 (2)
…$J=G90X-558Y-2F2000 (3)
…$J=G90X-558F2000 (4)
… (5)
刚刚按下 X+,将单步移动发送到绝对位置
如果按下 X+ 点动键的时间超过 500 毫秒,程序将发送点动命令,而不是频繁发送点动步骤,我将瞄准区域的末端 (x= -558)。此时机器开始平稳移动到 X 轴末端 (-558)。
在 X 方向移动时,我也可以按 Y-点动键,在命令中止当前点动运动之前发送了 0x85。这很好用,现在头部同时移动到 X 轴的末端和 Y 轴的开始。
释放 Y- 键,发送 0x85 以中止当前的点动并发送新的点动命令目标 X 轴末端 (x=-558)
X+ 点动键已释放 – 发送 0x85 以中止点动操作。问题恰好出现在这里 – 在 2-5% 的情况下,机器只是忽略 0x85 命令并继续移动。
如果您在我的点动命令中发现可能导致问题的不正确之处,请告诉我。
简而言之 – 有时 0x85 命令不会中止当前执行的点动运动。
最好的问候,
鲁本