关闭 Hogie1982 开启了这个问题 2016 年 3 月 10 日 · 3条评论 关闭 圆周运动问题和较低的进给率#930 Hogie1982 开启了这个问题 2016 年 3 月 10 日 · 3条评论 注释 Hogie1982 评论了 2016 年 3 月 10 日 您好, 最近,我使用 Grbl 构建了一台小型 3 轴 CNC 机床,通常一切正常。X 和 Y 方向的最大进给速度约为 400mm/min,Z 轴方向的最大进给速度约为 50mm/min。真高兴我 祝贺你们的工作。 在做了一些测试件后,我发现在特定进给率范围内的运动存在问题。当进给相对较低 F35-F42 时,步进电机显示不稳定的运动。在 F100 处做一些圆圈和对角线时观察到这一点。即当在 XY 平面上从 x0 y10 到 x0 y10 做半个半径为 10mm 的圆并且只看X 轴时,X 轴的进给率从它的最大进给(在 y10)到最小值F0(在 y0),然后回到最大值(y-10)。在此进给率变化过程中,它跨越了上述进给率范围,在该范围内,步进器进行了一些不稳定的运动。 通常,有人会争辩说应该避免有问题的范围。因此,只需使用更高或更低的进给率,但这对于圆是不可能的,并且在选择对角线的进给率时必须小心。 现在的问题是,有没有人遇到过类似的问题?如果是,您是否知道这个问题可能是什么,以及如何解决? 我做了一些下面描述的测试,然后总结了设置(包括 Grbl 设置)。 测试: 有问题的进给率范围是通过一些测试定义的(请参见下面的 G 命令): 首先,通过使用当前连接到机器的步进电机并运行一些运动命令,然后使用相同类型的步进电机重复测试,但未连接到机器(因此只是放在桌子上)。两次测试的结果相同。 经过测试的 G 命令(对于线性命令,从 x0 y0 开始,对于圆形命令,相对于 x0y0 开始): G01 沿 X 轴运动(即 G01 X10 F50),进给范围 5mm/min 到 200mm/min G01 沿 Y 轴运动(即 G01 Y10 F50),进给范围 5mm/min 到 200mm/min G01 沿 X 和 Y 轴的 45 度对角线运动(即 G01 X10 Y10 F50),进给范围 5mm/min 到 200mm/min G01 沿 Z 轴移动(即 G01 Z10 F50),进给范围 5mm/min 至 50mm/min XY 平面中的 G02 和 G03 运动(即 G02 X10 Y0 I10 J0 F50),进给范围 5mm/min 至 100mm/min 结果: 结果如下: G01沿X轴运动(即G01 X10 F50): 从 F5 到 F35 的进给率:没问题 从 F35 到 F42 的进给率:运动不稳定 从 F45 到 F200 的进给率:没问题 G01沿Y轴运动(即G01 Y10 F50):与X轴相同 G01 沿 X 轴和 Y 轴对角线 45 度运动(即 G01 X10 Y10 F50): 进给速率 F5 至 F50:没问题 F50 到 F60:两个轴的不稳定运动(实际上分别看 X 轴和 Y 轴,这些进给率通过乘以 sin(45 度)与每个轴的 F35 到 F42 相关) F70以上:没问题 G01 沿 Z 轴运动(即 G01 Z10 F50):类似于沿 X 或 Y 轴的直线运动 XY 平面中的 G02 和 G03 运动(即 G02 X10 Y0 I10 J0 F50): 进给速率 F5 至 F30:没问题 F35 到 40:其中一个轴在其最大速度范围内时的不稳定运动(见上面的描述) F45到F100:圆周过程中各轴有些乱动(见上文说明) 我的设置: 阿杜诺乌诺 R3 Grbl v0.9j ($I=0.9j.20151218) 通用 Gcode 发送器(版本 1.09) Arduino CNC Shield v3.00 (Protoneer) 步进驱动器:Pololu DRV8825 步进电机驱动器载体,高电流 步进电机:400 步/转 (42byghm809) Nema 17 步进电机 仔细检查没有电源线相互交叉,也没有从 PC 到 Arduino 的 USB 电缆交叉。还使用额外的通风来冷却 Arduino、CNC 板和步进驱动器。 Grbl 设置: $0=10(步进脉冲,usec) $1=25(步进空闲延迟,毫秒) $2=0(步进端口反转掩码:00000000) $3=6(dir 端口反转掩码:00000110) $4=0(步进启用反转,布尔) $5=0(限制引脚反转,布尔) $6=0(探针反转,布尔) $10=3(状态报告掩码:00000011) $11=0.010(结点偏差,mm) $12=0.002(电弧公差,毫米) $13=0(报告英寸,布尔) $20=0(软限制,布尔) $21=0(硬限制,布尔) $22=0(归位周期,布尔) $23=0(归位方向反转掩码:00000000) $24 =25.000(归位进给,毫米/分钟) $25=500.000(归位寻道,毫米/分钟) $26=250(归位去抖动,毫秒) $27=1.000(归位牵引,mm) $100=400.000(x,步长/mm) $101=400.000(y,步长/mm) $102=400.000(z,步长/mm) $110=500.000(x 最大速度,mm /min) $111=500.000 (y max rate, mm/min) $112=500.000 (z max rate, mm/min) $120=10.000 (x accel, mm/sec^2) $121=10.000 (y accel, mm/sec ^2) $122=10.000(z 加速度,毫米/秒^2) $130=200.000(x 最大行程,毫米) $131=200.000(y 最大行程,毫米) $132=200.000(z 最大行程,毫米) 注意设置 $0 和 $1,这里我已经测试了一些值(即 $0=5;$0=10;$0=25;$1=0;$1=25-50;$1=255)。结果保持不变。 Puh,这比预期的要长,我很抱歉。 提前感谢您的关注, 埃里克 闪烁光 评论了 2016 年 3 月 10 日 我不能保证 grbl 与此无关,但你确定这不是步进电机的中频带共振吗?您是否使用任何微步进(1/8 或更好往往会绕过这类事情)?您的步进电机是否以额定电流运行? 编辑:你确定你不能处理更大的加速度吗?我的速度是 80mm/sec^2,我绝对可以处理更多,我只是保守;你的价值观看起来有点低… 作者 Hogie1982 评论了 2016 年 3 月 10 日 @blinkenlight非常感谢您的意见。我刚改成 1/8 微步,这似乎解决了问题。我现在将运行进一步的测试。并将在稍后对结果发表评论。 再次,非常感谢。 作者 Hogie1982 评论了 2016 年 3 月 10 日 改为 1/8 微步解决了这个问题。所以没有 Grbl,但中频共振问题@blinkenlight提到的似乎是问题所在。 Hogie1982完成后 关闭 2016 年 3 月 10 日 喜欢 (0) Grbl 在工作完成后快速挂起 #815 双轴归零偏移 #816 GRBL/UGS 问题,已知硬件可以工作,但没有运行 Grbl 的步进运动 XY 绘图仪 – 将 Word 文档转换为 GRBL 文件 grbl 随机在中间停止 Arduino Uno GRBL 问题 GRBL/UGS 问题,已知硬件可以工作,但没有运行 Grbl 的步进运动XY 绘图仪 – 将 Word 文档转换为 GRBL 文件grbl 随机在中间停止Arduino Uno GRBL 问题为什么这会“崩溃”我的 3018 CNCFusion 360 / Grbl – 最后毁掉了工作?!使用 Grbl Shield,必须采取哪些接地预防措施?GRBL 安装挑战(在 cnc 3018 pro 上)
您好,
最近,我使用 Grbl 构建了一台小型 3 轴 CNC 机床,通常一切正常。X 和 Y 方向的最大进给速度约为 400mm/min,Z 轴方向的最大进给速度约为 50mm/min。真高兴我 祝贺你们的工作。
在做了一些测试件后,我发现在特定进给率范围内的运动存在问题。当进给相对较低 F35-F42 时,步进电机显示不稳定的运动。在 F100 处做一些圆圈和对角线时观察到这一点。即当在 XY 平面上从 x0 y10 到 x0 y10 做半个半径为 10mm 的圆并且只看X 轴时,X 轴的进给率从它的最大进给(在 y10)到最小值F0(在 y0),然后回到最大值(y-10)。在此进给率变化过程中,它跨越了上述进给率范围,在该范围内,步进器进行了一些不稳定的运动。
通常,有人会争辩说应该避免有问题的范围。因此,只需使用更高或更低的进给率,但这对于圆是不可能的,并且在选择对角线的进给率时必须小心。
现在的问题是,有没有人遇到过类似的问题?如果是,您是否知道这个问题可能是什么,以及如何解决?
我做了一些下面描述的测试,然后总结了设置(包括 Grbl 设置)。
测试:
有问题的进给率范围是通过一些测试定义的(请参见下面的 G 命令):
首先,通过使用当前连接到机器的步进电机并运行一些运动命令,然后使用相同类型的步进电机重复测试,但未连接到机器(因此只是放在桌子上)。两次测试的结果相同。
经过测试的 G 命令(对于线性命令,从 x0 y0 开始,对于圆形命令,相对于 x0y0 开始):
结果:
结果如下:
G01沿Y轴运动(即G01 Y10 F50):与X轴相同
G01 沿 X 轴和 Y 轴对角线 45 度运动(即 G01 X10 Y10 F50):
G01 沿 Z 轴运动(即 G01 Z10 F50):类似于沿 X 或 Y 轴的直线运动
XY 平面中的 G02 和 G03 运动(即 G02 X10 Y0 I10 J0 F50):
我的设置:
仔细检查没有电源线相互交叉,也没有从 PC 到 Arduino 的 USB 电缆交叉。还使用额外的通风来冷却 Arduino、CNC 板和步进驱动器。
Grbl 设置:
$0=10(步进脉冲,usec)
$1=25(步进空闲延迟,毫秒)
$2=0(步进端口反转掩码:00000000)
$3=6(dir 端口反转掩码:00000110)
$4=0(步进启用反转,布尔)
$5=0(限制引脚反转,布尔)
$6=0(探针反转,布尔)
$10=3(状态报告掩码:00000011)
$11=0.010(结点偏差,mm)
$12=0.002(电弧公差,毫米)
$13=0(报告英寸,布尔)
$20=0(软限制,布尔)
$21=0(硬限制,布尔)
$22=0(归位周期,布尔)
$23=0(归位方向反转掩码:00000000)
$24 =25.000(归位进给,毫米/分钟)
$25=500.000(归位寻道,毫米/分钟)
$26=250(归位去抖动,毫秒)
$27=1.000(归位牵引,mm)
$100=400.000(x,步长/mm)
$101=400.000(y,步长/mm)
$102=400.000(z,步长/mm)
$110=500.000(x 最大速度,mm /min)
$111=500.000 (y max rate, mm/min)
$112=500.000 (z max rate, mm/min)
$120=10.000 (x accel, mm/sec^2)
$121=10.000 (y accel, mm/sec ^2)
$122=10.000(z 加速度,毫米/秒^2)
$130=200.000(x 最大行程,毫米)
$131=200.000(y 最大行程,毫米)
$132=200.000(z 最大行程,毫米)
注意设置 $0 和 $1,这里我已经测试了一些值(即 $0=5;$0=10;$0=25;$1=0;$1=25-50;$1=255)。结果保持不变。
Puh,这比预期的要长,我很抱歉。
提前感谢您的关注,
埃里克