开源改变世界

轴反转时的加速度控制 #577

推推 grbl 3年前 (2023-01-22) 67次浏览

关闭
JohannesGross 打开了这个问题 2015 年 1 月 22 日 · 12条评论
关闭

轴反转时的加速度控制#577

JohannesGross 打开了这个问题 2015 年 1 月 22 日 · 12条评论

注释

轴反转时的加速度控制 #577

总重量:9g

  1. 如果手动操作或通过一次对一个轴进行编程 – 包括轴反转,加速/减速控制效果很好。
    G91 Y10
    G91 Y-10
    G91 Y10
    G91 Y-10
    四个加速/减速循环执行良好 – 每个命令一个,因为反转。
  2. 但是,如果程序中的一批 g 代码同时操作两个轴 – 包括两个轴的方向反转 – grbl 的行为有些出乎意料:
    G91 Y10 X10
    G91 Y-10 X-10
    G91 Y10 X10
    G91 Y-10 X-10
    现在只有一个加速/减速循环与这 4 个命令的整批相关,并且不关心方向反转。这不是工厂愿意经历的,也可能导致步骤损失。
  3. 如果预期只有一个轴反转方向,我们将再次有 4 个加速/减速周期。
    G91 Y10 X10
    G91 Y-10 X10
    G91 Y10 X10
    G91 Y-10 X10

(因为我是 CNC 事务的新手,所以我自己可能会执行错误。在这种情况下,请指出我 – 否则它可能是 grbl 中的错误 – 由专家决定)
Johannes

轴反转时的加速度控制 #577

您可以将此行为记录在视频中并上传吗?

轴反转时的加速度控制 #577

给你。http://youtu.be/YtO0F-c3jLk抱歉质量太差了。顺便说一句:开始时有点黑,但如果您第二次重新启动视频就可以了。
您会看到适当的初始加速度 – 然后是几次突然的方向变化 – 然后最后是适当的减速。
程序:
G90 G21 G1
X100Y100
X150Y-150
X100Y100
X150Y-150

用 G0 替换 G1 是灾难性的。严重和完全失步,部分丢失方向完全改变。

在我铣削的第一个方形(仅在空气中)时,龙门架接近一个角减速,然后在另一个轴上执行突然的动力启动。在带有弧线的“角落”,它表现良好。由于我是铣削方面的新手,所以我无法在执行转角的程序中找到确切的代码。

我希望你得到了你期望的信息。
谢谢约翰

轴反转时的加速度控制 #577
成员

@JohannesGross: 谢谢你的视频。这很有帮助。我想我知道是什么导致了这个问题。我要把它推到我的优先列表的首位。坚持。

轴反转时的加速度控制 #577 chamnit 重新打开了这个 2015 年 2 月 5 日
轴反转时的加速度控制 #577

谢谢!:-)

轴反转时的加速度控制 #577
成员

@JohannesGross: 你能张贴你的 ‘$$’ Grbl 设置的打印输出吗?我觉得这本质上是数字,可能取决于设置。

轴反转时的加速度控制 #577
成员

@JohannesGross: 谢谢。我想我已经找到了问题所在。我会在今晚晚些时候推送更新。它将位于边缘分支,而不是主分支。边缘分支 v0.9h 将在本周晚些时候合并到 master 中。当我发布它时请给它一个测试。

轴反转时的加速度控制 #577
成员

@JohannesGross: 确定推送错误修复。你现在可以试试吗?您需要更改边缘分支,下载源代码,然后编译/上传它。

轴反转时的加速度控制 #577

你好,

  1. 请在下面找到我当前的设置。
  2. 我刚刚用 X/Z 和 YZ 测试了相同的同步过程。问题没有发生。
  3. 重新测试 X/Y – 它一次又一次地发生
  4. 找到了您提到的存储库,但由于我在编程方面是个该死的乡巴佬,所以我无法编译它。否则,请指导我找到测试所需的文件。
  5. 我觉得这种动议并不少见。任何 G0 命令都会同时将轴从一个工作区域移动到另一个工作区域。
    感谢您的努力 :-)
    约翰

$$
$0=10 (step pulse, usec)
$1=25 (step idle delay, msec)
$2=7 (step port invert mask:00000111)
$3=7 (dir port invert mask:00000111)
$4=0 (step enable invert , bool)
$5=0 (limit pins invert, bool)
$6=0 (probe pin invert, bool)
$10=3 (status report mask:00000011)
$11=0.020 (junction deviation, mm)
$12=0.002 (arc tolerance, mm )
$13=0(报告英寸,布尔值)
$14=1(自动启动,布尔值)
$20=0(软限制,布尔值)
$21=1(硬限制,布尔值)
$22=1(归位周期,布尔值)
$23=1(归位方向反转掩码:00000001)
$24=20.000(归位进给,mm/min)
$25=600.000(归位搜索,mm/min)
$26=250(归位去抖动,毫秒)
$27=1.000(归位牵引,mm)
$100=800.000(x,步长/mm)
$101=800.000(y,步长/mm)
$102=800.000(z,步长/mm)
$110=2000.000(x 最大速率,mm /min)
$111=2000.000 (y max rate, mm/min)
$112=2000.000 (z max rate, mm/min)
$120=100.000 (x accel, mm/sec^2)
$121=100.000 (y accel, mm/sec ^2)
$122=100.000(z 加速度,毫米/秒^2)
$130=510.000(x 最大行程,mm)
$131=476.000(y 最大行程,mm)
$132=101.000(z 最大行程,mm)
好的

轴反转时的加速度控制 #577
成员

@JohannesGross: 行。我为您上传了编译好的测试固件。链接。右键单击并另存为。希望你能烧录一个十六进制文件。否则,您需要阅读有关如何编译的 Wiki 页面。这很容易。

就稀有性而言,这是第一次被报道,从立场来看是罕见的。CNC 程序中的大多数运动都不是这样运动的。我还认为这是一个数字舍入问题,可能取决于设置。如果我是对的,这个错误修复应该一劳永逸地解决这个问题。

轴反转时的加速度控制 #577
贡献者

这是否也表现为相反的行为,即缺少对某些参数组合的加速控制,导致电机试图全速启动?我确定我已经在我的机器上看到了一个文件的这种行为,不幸的是它太大/太复杂而无法尝试隔离触发它的片段

轴反转时的加速度控制 #577
成员

@kfoltman: 可能吧。我想这个问题可能被误解为其他原因。我发布的错误修复更多地与间歇性对角线运动有关,这些对角线运动会返回他们刚刚走过的路径。这并不能解释从静止开始到立即全速运行的情况。也许除非它是在一个程序的中间。我需要可靠的测试用例来重现问题以隔离问题的原因。

轴反转时的加速度控制 #577

工作得很好!:-)
我刚刚测试过:沿三角形的 xy、xz、yz、xyz、xy。一切如预期。
谢谢 :-)

喜欢 (0)