开源改变世界

加速度轴不正确与东方偏移 #668

推推 grbl 3年前 (2023-01-29) 93次浏览
关闭
3个任务
papagno-source 打开了这个问题 2019 年 12 月 30 日 · 7条评论
关闭
3个任务

加速度轴不正确与东方偏移#668

papagno-source 打开了这个问题 2019 年 12 月 30 日 · 7条评论

注释

加速度轴不正确与东方偏移 #668

问题跟踪器不是支持论坛

每个轴
都存在此问题如果值 Max_ACCELERATION = 300
且 OFFSET_AV_RATIO = 0.5
,则实际加速度为 MAX_ACCELERATION/OFFSET_AV_RATIO = 150
此问题在自动模式执行中存在。

我没有纠正这个,OFFSET_AV-RATIO,它应该只在我使用偏移功能时进行干预,而不是在正常工作周期中

(在提交错误报告之前删除此部分)

以下是我重现该问题所遵循的步骤:

1.打开linuxcnc 2.
启动 exsternal offset example ini 文件
3.impose OFFSET_AV_RATIO 0.5
4. 自动工作中的加速度将是 MAX_ACCELERATION ini 文件中施加的 1/2。
5.repeat change value OFFSET_AV_RATIO 0.9
6.start in auto 相同的程序和轴移动缓慢加速。
7.repeat change value OFFSET_AV_RATIO 0.1
8.6.start in auto 相同的程序和轴以相似的加速度移动值 MAX_ACCELERATION

这是我期望发生的事情:

这是发生了什么:

在此之前它工作正常:

有关我的硬件和软件的信息:

  • 我正在使用这个 Linux 发行版和版本(通常显示为lsb_release -a):
    acutual master
  • 我正在使用这个内核版本(由 显示uname -a):
  • 我在跑步 …
    • 来自 linuxcnc.org 的二进制版本(包括 buildbot.linuxcnc.org)
    • 我自己构建的二进制文件
    • 来自 linuxcnc.org 之外的其他来源的二进制版本
  • 我正在使用这个 LinuxCNC 版本(显示在包管理器中,或者对于 git 版本,scripts/get-version-from-git):
  • 我正在使用此用户界面 (GUI)(例如 AXIS、Touchy、gmoccapy 等):
  • 我正在使用这个接口硬件供应商和芯片组(例如,并行端口、以太网端口、FPGA 卡):
加速度轴不正确与东方偏移 #668
合作者
丹加勒特 评论了 2019 年 12 月 30 日  

[AXIS_L]OFFSET_AV_RATIO 在启动时只读取一次。

它应该只在我使用偏移功能时进行干预,而不是在正常工作循环中

启动值适用于所有世界 (teleop) 慢跑和协调 (gcode) 运动(自动或 mdi)。

加速度轴不正确与东方偏移 #668
作者

确实是的。
仅当我必须使用外部偏移函数而不是我想要的加速度并且我在 [AXIS_L] MAX_ACCELERATION 参数中为我想要真机性能的工作。
使用 [AXIS_L] OFFSET_AV_RATIO 中/高的值,例如,为了减少轴上的振动,当我在手轮中移动时,当我启用外部偏移功能时,即使是真正的处理也会减慢,由于轴的加速度与 [AXIS_L] MAX_ACCELERATION 中所需的加速度相比有所降低。
可以改变吗?

加速度轴不正确与东方偏移 #668
作者
papagno源 评论了 2019 年 12 月 31 日  

当我必须使用外部偏移功能时,我会使用 [AXIS_L] OFFSET_AV_RATIO,但在汽车中,加速度应该是在 [AXIS_L] MAX_ACCELERATION 中编程的加速度。
在手册中,当使用 jog -wheel 时,使用 fraction-acceleration 参数。

加速度轴不正确与东方偏移 #668
合作者

某些设置的 ini 值可以使用“inihal”引脚进行更改。包括:ini.N.max_velocity、ini.N.max_acceleration 用于关节和 ini.L.max_velocity、ini.L.max_acceleration 用于世界 (xyzabcuvw) 坐标。

参见: http: //linuxcnc.org/docs/2.8/html/man/man1/milltask.1.html

注意联机帮助页中的限制– 1) inihal 更改不是动态的,不会影响正在进行的 gcode 运动,2) 使用 postgui halfiles 或 [APPLICATION]APPS 但不使用 [HAL]HALFILE= 设置。通常必须提供虚拟面板或并发应用程序来管理这些 hal 引脚。

对于 JOGGING,在点动 joint.N.jog-accel-fraction 和 axis.L.jog-accel-fraction 时有现有的 hal pin 来限制加速度

参考: http: //linuxcnc.org/docs/2.8/html/man/man9/motion.9.html

加速度轴不正确与东方偏移 #668
作者

事实上,由于我们无法通过 .ini 引脚在运行状态下更改加速度值,并使用外部偏移量,在暂停和自动模式下,建议从源头执行加速度值的自动更改.
在代码中,我在哪里可以尝试了解如何仅在外部偏移启用和重置 [AXIS_L] MAX_ACCELERATION 中施加加速度 [AXIS_L] OFFSET_AV_RATIO。我什么时候不使用外部偏移启用?

加速度轴不正确与东方偏移 #668
合作者
丹加勒特 评论了 2019 年 12 月 31 日  

我还不能真正理解您的用例,但在许多情况下,当解释器未处于活动状态时,只需更改 inihal 引脚就足够了——更改将在下一个程序中得到体现。

建议您尝试(X 示例):
$ sim_pin ini.X.max_acceleration ini.X.max_velocity &

“因为我们无法在运行状态下通过 .ini 引脚更改加速度值”

这不是严格意义上的。ini 加速度/速度值在计划时无法更改,协调移动正在进行中,但可以在程序启动之间更改。此外,如果程序包含同步事件(queuebusters),inihal pin 值更改将在同步后计划的移动中生效。同步事件包括工具更改和 hal 输入读取,如 M66。这意味着可以插入多个立即读取(如 M66P0L0)作为程序中的同步点,以允许多次识别 inihal 引脚。

背景:

使用 simple_tp 应用外部偏移——一个单一的坐标规划器,它采用梯形速度分布并遵循由轴加速/速度限制分配的每轴约束,如 OFFSET_AV_RATIO 设置的比例。协调运动 (gcode) 由多维轨迹规划器规划,受多个坐标的加速度/速度限制以及整体轨迹限制的约束。因此,当发生协调运动时,多维轨迹规划器已经使用了在轨迹规划开始时有效的分配的加速度/速度限制。如果在这种运动期间允许增加外部偏移单维规划器使用的限制,则无法防止违反机器限制。

在某些应用(等离子割炬高度控制)中,受控轴的协调运动和外部偏移相互排斥,因此用户可以将加速/速度限制设置为机器限制的两倍,并使用 0.5 的偏移比。

如果您想更改应用程序的代码,大多数更改都
发生在一次大提交中:

784db03355

加速度轴不正确与东方偏移 #668
作者

行 。谢谢你的回复。我检查了代码,但对C语言了解不多。
例如,另一个未来可以提高偏移清除位置的快速覆盖值,现在轴快速返回和快速覆盖没有效果。
再次感谢。