开源改变世界

[增强请求] jog-speed python接口 #2301

推推 grbl 3年前 (2023-01-31) 203次浏览
打开
spumco1234 打开了这个问题 5天前 · 5 条评论
打开

[增强请求] jog-speed python接口#2301

spumco1234 打开了这个问题 5天前 · 5 条评论

注释

[增强请求] jog-speed python接口 #2301
spumco1234 评论了 5天前

[论坛讨论:https ://forum.linuxcnc.org/qtpyvcp/48020-probe-basic-jog-slider-status?start=0

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

  • halui.axis.jog-speed 和 halui.joint.jog-speed 连接到旋转编码器 (MPG) 和选择开关。
  • 尝试将两个引脚连接到 GUI hal 滑块,但与 SRO/FRO/RRO 不同,这不起作用。
  • 通过编码器进行的点动速度调整在 LCNC 中是准确的,但 GUI 无法显示在 halui 中所做的调整/值

在与 QtPyVCP 开发人员讨论后,他们发现没有用于 jog-speed 的 python 接口。有一个用于主轴、进给和快速覆盖的 python 接口,但是点动速度(可能还有最大速度?)似乎被忽略了。

我认为有一种方法可以将物理控件连接到 GUI 以实现慢跑速度,这会很有帮助。我相信这不仅限于 QtPyVCP,而且会影响所有 GUI。

我对 python 一无所知,但如果有人有时间处理此功能请求,我很乐意进行任何测试。

[增强请求] jog-speed python接口 #2301
合作者
c-莫利 评论了 4天前

这是因为(除了 MPG 之外)linuxcnc 没有“当前点动速度”、“当前点动增量”或“选定轴”的内部概念 – 每个 ui 都会跟踪它自己的。
所以它并没有从 python 模块中丢失 – 它从 linuxcnc 中丢失。

我不是很清楚为什么会这样决定——可能是为了最好的灵活性或最不严重的问题。
很难让它适用于所有控制范例,即在一个用户界面上使用物理选择器开关会使其他用户界面变得不清楚。
在 qtvcp 和 gladevcp 中,我们扩展了 python 接口以包含“自愿”点动速率/增量。
不幸的是,由于 python 的限制,它只能由同一 python 上下文中的程序轻松访问。我已经使用 ZMQ 消息或使用 HAL 引脚解决了这个问题……

[增强请求] jog-speed python接口 #2301
作者
spumco1234 评论了 3天前

谢谢你。我不知道“后台”的东西,但根据你的解释,这是我脑子里嗡嗡作响的东西:

LCNC 保存进给/速度/快速覆盖的值,这些值可以通过 Python 由 GUI 检索。我相信这些是使用 python 接口通过 linuxcnc.stat(?) 可用的属性。

在这些情况下,连接到 halui 的外部控件会调整 LCNC 值,并且 GUI(滑块、状态显示)都可以通过 python 界面跟踪调整 LCNC 值。双向沟通。

在jog-speed的情况下,LCNC没有持有内部值,所以没有相应的linuxcnc.stat属性。当点动命令从 GUI 发送到 LCNC 时,点动速度始终由 GUI 设置。单向沟通。

您在上面提到的 – HAL 引脚 – 是您在此提交中所做的:

https://github.com/LinuxCNC/linuxcnc/commit/da89022b89fe1d493f7a38fde4003786d6e475bd

看来您创建了一个 GUI HAL 引脚,它接受来自外部源的值——即 MPG 或其他。

所以,如果我理解以上内容(大如果)

如果 halui 可以调整 LCNC 点动速度值,即使 GUI 没有“看到”它,这是否意味着点动速度存储在 LCNC中的某个地方?我的 MPG/编码器 -> halui 肯定在调整点动速度值,即使 GUI 不知道。某些东西正在接收该值并将其存储以用于下一次慢跑。

如果不是……我要求的是更好地针对 GUI 开发人员而不是 LCNC 开发人员吗?也许他们可以在其他 GUI 框架之一中复制您的提交。

[增强请求] jog-speed python接口 #2301
合作者
c-莫利 评论了 3天前

If halui can adjust the LCNC jog-speed value even though the GUI doesn't 'see' it, doesn't that imply jog-speed is stored somewhere in LCNC? My MPG/encoder -> halui is certainly adjusting the jog-speed value even if the GUI has no idea. Something is receiving that value and storing it for the next jog.
是的——在海陆。halui 只是另一个没有 G 的
GUI。halui 所做的任何事情都可以在 GUI 中完成。

通常是的,我们在每个 GUI 中都这样做,并处理由同时使用的任何其他 ui 产生的问题。
例如,我可以在 qtvcp 中复制所有 halui,然后“qtui”可以直接与 qtvcp 对话并可以访问当前的慢跑速度。然后我会要求人们不要使用 halui。

肯定不是最优的,但最简单,因为穿透 linuxcnc 的核心代码是痛苦的

您对提交的引用没有显示任何内容,因此我无法直接对其发表评论。

[增强请求] jog-speed python接口 #2301
作者
spumco1234 评论了 3天前

抱歉链接不好,我是 github 的新手。

由您提交,2021 年 8 月 20 日。编号da89022

我刚刚在 LCNC 存储库中搜索了“JOG_RATE”,并在提交的第一页上找到了它。

[增强请求] jog-speed python接口 #2301
作者
spumco1234 评论了 3天前

halui 作为一个“UI”现在更有意义,并解释了为什么/在哪里存储点动速度值。

免费注册 在 GitHub 上加入此对话。已有帐户? 登录评论
标签
还没有
项目

还没有

发展

没有分支机构或拉取请求

2名参加者
[增强请求] jog-speed python接口 #2301[增强请求] jog-speed python接口 #2301

喜欢 (0)