Contact me: hankecnc@gmail.com

A 轴不报告度数。 #389

推推 grbl 3年前 (2023-02-02) 206次浏览
打开
12 个任务中的第 4 个
托德米切尔 打开了这个问题 2018 年 10 月 25 日 · 5 条评论
打开
12 个任务中的第 4 个

A 轴不报告度数。#389

托德米切尔 打开了这个问题 2018 年 10 月 25 日 · 5 条评论

评论

A 轴不报告度数。 #389

描述

你好呀,

我在我的数控机床上使用旋转轴,轴小部件中的 A 轴在点动时不报告/显示值(即 G0A250)。我没有尝试 G1 命令。

我配置为在 cohesion3d 板(smoothieware)和启用 5 轴的 smootheiware 文档之后使用自定义编译固件使用毫米。

浏览代码,我没有看到任何学位转换,但我可能遗漏了什么?

谢谢!

版本

  • CNCjs:1.9.15
  • 节点.js:6.x
  • NPM:5.x

你如何安装CNCjs?

  • NPM
  • 下载 CNCjs 桌面应用程序

数控系统

  • Grbl
  • 冰沙
  • TinyG/g2核心

硬件

  • 树莓派
  • 台式机或笔记本电脑
  • 移动设备

操作系统

  • 不适用
  • 视窗
  • 苹果
  • Linux
A 轴不报告度数。 #389
合作者
奇顿 评论了 2019 年 4 月 23 日  

https://github.com/Smoothieware/Smoothieware/blob/edge/src/libs/Kernel.cpp#L176

状态字符串似乎随着时间的推移发生了变化,现在格式不同了。输入“?”会报什么?命令或串行控制台上的“获取状态”命令?

A 轴不报告度数。 #389

我和 Marlin 2.0.9.3 (CNCjs 1.9.24) 一样

客户端> M114
X:6.000 Y:606.000 Z:409.000 A:10.000 B:-83.000 Count X:2793 Y:279669 Z:163600 A:158 B:-1308
S_XYZ:5
ok

但 Axes 选项卡上 A 和 B 轴的值为 0.000

A 轴不报告度数。 #389
合作者
奇顿 评论了 2022 年 4 月 3 日  

你好@gitwasi,

可以通过向解析器添加“A”、“B”、“C”来支持旋转轴。

原始线性 X/Y/Z 轴:

// https://github.com/cncjs/cncjs/blob/v1.9.24/src/server/controllers/Marlin/MarlinLineParserResultPosition.js
class MarlinLineParserResultPosition {
  // X:0.00 Y:0.00 Z:0.00 E:0.00 Count X:0 Y:0 Z:0
  static parse(line) {
    const r = line.match(/^(?:(?:X|Y|Z|E):[0-9\.\-]+\s+)+/i);
        :    :    :
    const pattern = /((X|Y|Z|E):[0-9\.\-]+)+/gi;

添加旋转 A/B/C 轴:

class MarlinLineParserResultPosition {
  // X:0.00 Y:0.00 Z:0.00 E:0.00 Count X:0 Y:0 Z:0
  // X:0.00 Y:0.00 Z:0.00 A:0.00 B:0.00 C:0.00 Count X:0 Y:0 Z:0 A:0 B:0 C:0
  static parse(line) {
    const r = line.match(/^(?:(?:X|Y|Z|A|B|C|E):[0-9\.\-]+\s+)+/i);
        :    :    :
    const pattern = /((X|Y|Z|A|B|C|E):[0-9\.\-]+)+/gi;

我可以创建一个 PR 来支持 Marlin 控制器的更多轴,唯一的问题是我手头没有配置有 4 个或更多轴的 Marlin 固件。

验证上述更改的一种快速方法是使用新轴修补现有代码。你能告诉我你的 CNCjs 运行环境吗(例如 Linux、Windows、macOS 应用程序,或通过 NPM 安装)?

A 轴不报告度数。 #389

我现在在 Windows x64 桌面应用程序上使用它,我也可以在 Linux 桌面上测试它。我可以在 Marlin 上配置所有 6 个轴进行测试。

A 轴不报告度数。 #389

我已经搞定了@cheton您在本地代码中所做的更改,由此生成了 .AppImage,现在它适用于所有 6 个轴。
当所有轴都在移动并且这个数字在变化时,看看这个真是太棒了。

对于 Marlin 2.0.9.3 M114 上的 6 个轴,请给出:

X:20.000 Y:41.000 Z:38.000 A:34.000 B:24.000 C:17.000 计数 X:9311 Y:18922 Z:15200 A:536 B:378 C:268

我没有在 Windows 上测试过,因为我不知道如何制作 Windows 二进制文件。

离题但是:
用这个“S_XYZ:…”做点什么会很棒。当在 Marlin 配置中启用连续报告时 (REALTIME_REPORTING_COMMANDS),该代码将填充所有控制台。

免费注册 在 GitHub 上加入此对话。已有帐户? 登录评论
项目
状态:阻塞/等待
发展

没有分支机构或拉取请求

4人参加
A 轴不报告度数。 #389A 轴不报告度数。 #389A 轴不报告度数。 #389A 轴不报告度数。 #389

喜欢 (0)