开源改变世界

2.8 中的 Python 模块报告请求而不是实际主轴速度 #1551

推推 grbl 3年前 (2023-01-30) 119次浏览
关闭
kentavv 打开了这个问题 2022 年 1 月 30 日 · 3条评论
关闭

2.8 中的 Python 模块报告请求而不是实际主轴速度#1551

kentavv 打开了这个问题 2022 年 1 月 30 日 · 3条评论

注释

2.8 中的 Python 模块报告请求而不是实际主轴速度 #1551

LinuxCNC 模块报告请求的主轴速度而不是实际速度可能是预期的行为。鉴于文档中的描述,我期待实际。以下是我在主轴运行时用来测试的所有内容。在主轴字典中提供实际和请求的速度可能会很好。如果其他人有兴趣,我可以尝试破解它。谢谢

import linuxcnc
while True:
   lcnc = linuxcnc.stat()
   lcnc.poll()
   print(lcnc.spindle[0]['speed'])
2.8 中的 Python 模块报告请求而不是实际主轴速度 #1551
合作者

我不确定是否值得付出努力。实际速度可以很容易地得到:
hal.get_value(‘spindle.0.speed-out’)

如果您使用 hal_glib 库,这就是实际速度的推导方式。

2.8 中的 Python 模块报告请求而不是实际主轴速度 #1551
作者

我不知道有人可以如此轻松地提取任何值,而无需重新启动 LinuxCNC。谢谢!

spindle.0.speed-out 包含命令速度,但 lowpass.spindle.out(和其他)以各种形式保存实际速度。

>>> import hal
>>> h = hal.component("testing")
>>> hal.get_value('spindle.0.speed-out')
301.0
>>> hal.get_value('lowpass.spindle.out')
313.8461538461539