开源改变世界

Hostmot2 编码器去偏移设置漂移 #394

推推 grbl 3年前 (2023-01-29) 138次浏览
关闭
3个任务
pcw-mesa 打开了这个问题 2018 年 1 月 8 日 · 0 条评论
关闭
3个任务

Hostmot2 编码器去偏移设置漂移#394

pcw-mesa 打开了这个问题 2018 年 1 月 8 日 · 0 条评论

注释

Hostmot2 编码器去偏移设置漂移 #394
合作者

问题跟踪器不是支持论坛

LinuxCNC 问题跟踪器用于报告软件中的错误。
如果您对如何使用该软件有疑问,请使用我们社区支持页面上详述的其他方法之一:http: //linuxcnc.org/community/

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

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

  1. 使用带有多路编码器和纠偏选项的配置(编码器版本 >3)
  2. 使用时钟频率为 33 MHz 的 5I25 或 6I25
  3. 将去偏移设置为 100 ns

这是我期望发生的事情:

去偏移舍入为 90 ns(3 个时钟,33.33333 MHz)

这是发生了什么:

去偏移数被截断而不是四舍五入,这并不是很糟糕,除了每次
写入编码器(比如归位时)都会重做去偏移数计算,
并且连续的截断每次都会更改去偏移值,直到它变为 0
这可能会导致离家出走/疯狂的行为。这里确实有两个错误:

  1. 偏斜计算中的截断而不是舍入
  2. 在任何编码器写入时重新计算/重写偏移(和编码器采样频率)

在此之前它工作正常:

(如果在对硬件或软件进行特定更改后行为发生了变化
,请描述您认为负责的更改。例如,“
从 LinuxCNC 2.7.3 升级到 2.7.4 后”)
不确定,可能总是存在

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

  • 我正在使用这个 Linux 发行版和版本(通常用 表示lsb_release -a):
  • 我正在使用这个内核版本(由 显示uname -a):
  • 我在跑步 …
    • 来自 linuxcnc.org 的二进制版本(包括 buildbot.linuxcnc.org)
    • 我自己构建的二进制文件
    • 来自 linuxcnc.org 之外的其他来源的二进制版本
  • 我正在使用这个 LinuxCNC 版本(显示在包管理器中,或者对于 git 版本,scripts/get-version-from-git):
  • 我正在使用此用户界面 (GUI)(例如 AXIS、Touchy、gmoccapy 等):
  • 我正在使用这个接口硬件供应商和芯片组(例如,并行端口、以太网端口、FPGA 卡):