注释
@thrushd: 很抱歉听到您遇到问题。从你所说的你已经尝试过的事情中,我发现了一些事情。
这一切都让我认为这是一个电源和电气问题。您可能在 Z 轴上获得比以前更多的功率,即使在静止时也是如此,但在移动时甚至更多。我首先会尝试一些方法来检查 Z 轴电机驱动器是否有抗重力问题。在尝试运行程序时,尝试将其拆下并平放。如果它运行正常,这可能是驱动器/电源问题,例如如果您没有产生足够的电力,或者额外的电力或不良接地泄漏到 Arduino 逻辑线路中,导致它崩溃。 另一件事是确保你的接地是足够的。Arduino 逻辑线路对设备之间的接地波动很敏感。我不是电气工程师,但我听说将所有东西都接地通常会有所帮助。 |
感谢您的快速回复,我在故障排除列表中忘记提及的一件事是,我在运行程序时断开了 Z 轴,并且仍然存在相同的问题。我还将 z 连接到具有相同结果的固定步进器。同样在我对控制屏蔽的重建之一中(由我读到的所有关于接地问题的问题提示),我确保将所有内容清晰地布线并最大限度地减少干扰。我没有尝试过星形接地,但那现在在我要尝试的事情清单上。 现在我正在尝试一个超级简单的 gcode 文件,它只是将 z 向下移动并绘制一个框,然后再向上移动。Z 问题正在发生,但仅限于某些进给率或深度。我觉得这很奇怪,因为我可以在任何距离以 300 毫米/分钟的速度慢跑 Z,但是当我告诉它以 100 毫米/分钟的速度移动超过 4 毫米时,它会在移动的中途冻结并重置。目前,如果进给速度为 50 毫米/分钟,它工作正常。我正在继续调整,希望能找到它崩溃的地方。我想我会很快尝试明星接地,只是为了消除它。再次感谢。 |
@thrushd: 好的。如果您还没有,我会尝试消除您的电气连接。我注意到的一件事是你有一个按钮连接到你的软复位引脚。如果可能的话,我会先在板上移除它,以及任何其他输入引脚:限制、进给保持、恢复。当您从皮带传动切换到滚珠丝杠时,显然发生了一些变化。您是否对系统进行了其他更改? |
不,我没有任何连接到这些引脚的任何东西,只是复位时的 10K 上拉。测试时我连接到电路板的唯一东西是步进器和电源。 |
为确保这不是接地问题,请尝试使用电池供电的笔记本电脑或为步进驱动器使用基于变压器的电源,这将平衡 PC、arduino 和驱动器之间的电位水平。 |
@thrushd: 为什么复位时有 10K 的上拉电阻? 您能否列出从上次工作到首次出现问题时您对机器所做的所有更改? |
我在某处读到,在复位上添加一个上拉电阻将确保它不会意外变低并在操作期间触发软复位。 发生变化的事情: -用于 x 和 y 的滚珠丝杠 -新的 我所做的任何机械更改都没有显着影响步进器上的负载,事实上,现在用手移动 x 和 y 比使用皮带更容易。z 上的负载与以前相同。即将测试星形接地,我将对控制板上的其他所有内容进行三次检查。 |
@thrushd:好的,所以工作设置发生了更多变化,而不仅仅是滚珠丝杠。我怀疑这是新控制板或电源上的东西。我还会在它运行时检查电源电压和安培输出,以确保它为您的系统提供足够的电力或查看是否有任何奇怪的波动。另外,如果你使用旧的控制板和电源,会发生什么?它有效吗? |
好的,只需运行相同的小测试程序来监控电流,最大消耗为 1.32 A。我不认为我的驱动器过热,但我可以很容易地添加更大的散热器。不幸的是,旧的控制板和旧的电源都无法使用。我正在使用的新电源是 24V 5A DIN 电源,它坚如磐石,我认为这不是问题。电流也没有奇怪的波动。下面是我正在测试的代码: N10 G90 它似乎只是在某些时候出现问题,我只是运行它并且表现良好。但后来我将 Z 值更改为 5 并重置。然后我把它改回 10,它仍然冻结和重置。很奇怪。 |
@thrushd: 确实很奇怪。我仍然认为这是电子的,但你能提供你的 Grbl (并且没有 G1 语句?根据您的 g 代码,F 不应该有任何影响,因为它默认为 G0)。 |
@thrushd |
@chamnit:这里是 $$ 设置: Grbl 0.8c [‘$’ for help] @sacidu93: 好点,我添加了一个 G1,它返回一个错误…… |
它似乎没有以搜索速率移动(从 500 更改为 800)。同样,当它确实工作时,Z 显然以指定的进给率移动,即使没有 G1。 |
Z轴这个分辨率很可疑!如果你以 500mm/min 的搜索速率运行,grbl 将无法产生 42 KHZ 的步进频率(一些 30khz 是极限), |
@sacidu93:我相信你是对的,它在 320 步/毫米下工作得很好。你能解释一下为什么以高达 400 毫米/分钟的进给率在 z 轴上进行点动工作正常吗?我也有很多不一致的地方。它会工作一次,我将更改 z 位置或进给率,然后它不起作用,所以我重置所有内容并尝试刚刚起作用的旧值,但它们仍然不起作用。也许 1/32 微步对 Z 来说太大了?谢谢顺便说一句。 |
当以 400 毫米/分钟的速度慢跑时,GRBL 产生 5040*400/60= 33.6khz,这对 GRBL 有好处。 使用中国板时需要$ 3 = 10! $4=1500 这将允许 0.003 毫米的分辨率! |
@sacidu93:Z 为 1/4-20 螺纹杆,x 和 y 为 5mm 螺距。我正在使用 DRV8825 步进驱动器,数据表显示 2us 宽度,但 grbl 不会让我低于 3。我将 Z 更改为 1/16 微步,它似乎做得很好,稍后我将使用其他文件对其进行测试。我认为这可能是主要问题,所以下降到 1/8 似乎很合乎逻辑,我会调整一下,看看会发生什么。谢谢! |
作为@chamnit说,用GRBL V0.9G 很稳定,有更多好看的功能! |
@sacidu93:这似乎已经做到了(手指交叉!)。我使用的是 0.9 但不幸的是 grbl 控制器还不支持它,所以有一些时髦的问题,比如慢跑不起作用。我回到 0.8 只是因为我知道它在我的旧设置中有效。关于如何在 0.9 的 grbl 控制器上慢跑有什么建议吗?(除了手动命令?)再次感谢! |
@thrushd: 很高兴听到它的工作。:) 我会要求 grbl 控制器维护者更新他们的软件以支持 v0.9,因为它现在是主版本,并且从几周前开始发布一般版本。我认为UGS也是如此。他们还没有正式发布与 v0.9 完全兼容的版本,但您可以从用户等处找到预发布版本。 |
非常感谢,刚刚尝试了我的一个更大的文件,一切似乎都很好。我花了整整一周的时间来解决这个问题,你们是最棒的! |
我的 DIY CNC 立铣刀使用 GRBL v1.1 Arduino AtMega2560。立铣刀是重型 Grizzly G1006,带有现成的步进电机、驱动器和定制的 Arduino CNC 防护罩。我在切割一小时的 3D 浮雕时遇到了问题。GRBL 似乎会随机冻结,并且不再接受来自我笔记本电脑上运行的 Universal G-Code Sender 程序的任何命令。为了调试问题,我添加了 3 个 LED 并破解了 GRBL 固件来切换它们。步进电机中断程序 (ISR) 中的红色 LED 每 1000 步切换一次。黄色 LED 切换每个线运动切割(mc_line 子程序)。每当 GRBL 检查串行端口(protocol_main_loop 子程序)上的字节时,绿色 LED 就会切换。再跑一个小时的工作,动作又像往常一样僵住了。绿色 LED 仍在切换并检查串行端口,这向我表明 GRBL 固件未冻结,但通信硬件已锁定。拔下笔记本电脑端的 USB 电缆,然后重新插入,3 个 LED 灯进入启动过程,这向我表明 Arduino 微处理器重新启动,然后所有定位信息都丢失了。这向我证明这是USB电缆上的电磁干扰问题。我使用一个内脏的台式电脑机箱来容纳 Arduino、电源和步进电机驱动器。接线很干净。USB 电缆附近没有电机电缆或电源电缆。为了继续测试,我将屏蔽的 2 英尺 USB 电缆替换为两端带有铁氧体磁珠的 2 英尺 USB 电缆。铁氧体磁珠是电感扼流圈,可滤除电机和电子斩波电路产生的高频射频。这成功了。我已经运行了几个一小时的 CNC 作业,没有任何运动冻结。EMI引起的随机问题很难解决,但我认为这对我来说已经解决了。互联网上有许多帖子描述了这个 GRBL 冻结问题。尽管 GRBL 对此颇有争议,但这不是问题所在。Arduino 可以通过在 USB 差分信号上添加一些过滤而受益,但这会增加成本。所以过滤必须在前端布线上完成。希望这可以帮助任何有这个问题的人。EMI引起的随机问题很难解决,但我认为这对我来说已经解决了。互联网上有许多帖子描述了这个 GRBL 冻结问题。尽管 GRBL 对此颇有争议,但这不是问题所在。Arduino 可以通过在 USB 差分信号上添加一些过滤而受益,但这会增加成本。所以过滤必须在前端布线上完成。希望这可以帮助任何有这个问题的人。EMI引起的随机问题很难解决,但我认为这对我来说已经解决了。互联网上有许多帖子描述了这个 GRBL 冻结问题。尽管 GRBL 对此颇有争议,但这不是问题所在。Arduino 可以通过在 USB 差分信号上添加一些过滤而受益,但这会增加成本。所以过滤必须在前端布线上完成。希望这可以帮助任何有这个问题的人。所以过滤必须在前端布线上完成。希望这可以帮助任何有这个问题的人。所以过滤必须在前端布线上完成。希望这可以帮助任何有这个问题的人。 |
画眉 评论 on 6 Sep 2014
你好,
自从我升级我的cnc(机械上,滚珠丝杠而不是皮带)以来,我对以下问题列表完全没有想法。它在升级之前运行良好,现在我无法通过单个 gcode 文件,除非我删除所有 Z 运动。主要的反复出现的问题是,当使用 grbl 控制器(也可以是任何版本,我都尝试过)将文件流式传输到 grbl(任何版本)时,它将通过大约 10 到 20 行然后停止。通常这种情况发生在 Z 轴移动但不是所有 gcode 文件时。它要么完全冻结,要么重置并尝试在文件中的新点继续。
我尝试过的故障排除:
-grbl 的不同版本(所有 0.8、0.7 和一些 0.9)
-grbl 控制器
的不同版本-通过简单的 python 脚本流式传输代码,混合结果,如果只是 arduino,通常可以工作,没有屏蔽- 不同
的 CAM 后处理器,使用 HSMXpress 进行 CAM 的 Solidworks –
隔离 EMI,不同的 USB 线,屏蔽的 USB 线等。我也把我的设置带回家了,因为我工作的建筑物确实有很多噪音,同样的结果
-不同的控制板,我使用的是自定义的 grbl shield,我已经重建了两次。
-在软复位时上拉电阻(10K) -更好的
步进电源,无噪音-不同的
Arduinos -不同的
计算机
我认为还有更多,但在这一点上一切都是愤怒的模糊;)最令人愤怒的是,在我进行这些升级之前,我让它运行良好,现在它超级脾气暴躁。非常感谢任何和所有输入。