开源改变世界

无法将 z 工作坐标归零 #242

推推 grbl 3年前 (2023-02-02) 223次浏览
关闭
ENGR-mike 开启了这个issue 2017 年 12 月 17 日 · 8条评论
关闭

无法将 z 工作坐标归零#242

ENGR-mike 开启了这个issue 2017 年 12 月 17 日 · 8条评论

注释

无法将 z 工作坐标归零 #242

我在使用 Shop_Floor_Tablet UI 和 TinyWeb UI 操作我的 CNC 铣床时遇到问题。
以下是我安装的具体情况:

CNCjs:1.9.12
Node.js:8.7.0
NPM:5.4.2
我通过 NPM 安装了它。我正在使用 xPRO v3 控制器,但此时这无关紧要,因为我无法让 cncjs 在 pi 上运行。我的 pi 是全新的 Raspberry Pi 3 model B,运行 Raspbian(即 Debian)Stretch(我认为 Stretch 是版本 9)。

使用任一 UI 设置工件零位时,我无法将 Z 坐标归零。此外,当我在我的机器上点动 Z 轴时,Z 坐标显示不会改变。然而,当我点动 Y 轴时,不仅 Y 坐标在显示中发生变化,而且 Z 坐标也发生变化。

无法看到我的 Z 轴位置,我无法建立工作零位。我在使用 Shop_Floor_Tablet UI 和 TinyWeb UI 时遇到了问题。

无法将 z 工作坐标归零 #242

我刚刚修复了 cncjs-shopfloor-tablet 中的错误。版本 v1.0.4 在这方面应该可以正常工作。

对于 cncjs-pendant-tinyweb,该问题已在 2 周前的 v1.2.3 版本中修复,但您也可以获取 v1.2.4 版本,它同时修复了该问题和重定向错误。

无法将 z 工作坐标归零 #242

谢谢!我稍后会安装更新。
我现在就出去吃晚饭。当我有空的时候,我想讨论一下您从 PC 设置工作,然后切换到平板电脑以在工厂运行工作时所经历的步骤顺序。我在 PC 上加载 CNCjs 中的 g 代码时遇到了一些问题,然后切换到平板电脑。将我的工作设置为零后,我很难在按下开始按钮时执行 g 代码。如果您对此有任何想法,请随时分享,但我不会立即回复。

无法将 z 工作坐标归零 #242

我为平板电脑和 tinyweb 安装了更新的文件,现在关于 Z 坐标的所有工作都按预期进行。但是,从桌面加载 ag 代码文件后,我仍然无法从平板电脑开始操作。我的流程如下:

  1. 我在 iPad 上打开平板电脑用户界面并将工作设置为零
  2. 转到我的桌面,打开完整的用户界面并建立连接
  3. 加载g代码文件
  4. 回到店里的 iPad 并尝试通过按开始运行 g 代码文件
    在上面的第 4 步之后,有时平板电脑 UI 有点冻结并且不会响应按开始运行 g 代码文件。有时我什至无法点动机器或启动归位循环。通常我必须退出平板电脑用户界面,关闭连接并重新连接,或者有时刷新平板电脑用户界面页面。

我应该按不同的顺序做事吗?
我现在要去睡觉了,所以我明天再来看看。

无法将 z 工作坐标归零 #242

我不知道。这个对我有用。“有时”很难调试,尤其是当它没有在此处重现时。

为了更接近我的工作流程,您可能会尝试一件事:我通常直接从平板电脑用户界面加载文件,而不是使用完整的用户界面作为流程的一部分。这样做的方法是在 Pi 上设置一个“监视目录”并将 GCode 文件放在那里。要设置监视目录,请编辑文件 /home/pi/.cncrc 并将此行添加为倒数第二行,在右大括号之前:

   "watchDirectory": "/home/pi/GCode"

然后创建该目录:

mkdir /home/pi/GCode

执行此操作并重新启动 cncjs 后,您可以使用平板电脑的文件下拉列表来选择要运行的文件。当然你需要在那个目录下放一些gcode文件。我个人使用 WinSCP 作为将文件从我的 PC 复制到 Pi 的简单方法。

无法将 z 工作坐标归零 #242

很高兴您提到了 watch 目录。那时候我想过那个。我将不得不设置它并以这种方式进行。

无法将 z 工作坐标归零 #242
作者
工程师迈克 评论了 2017 年 12 月 18 日  

我应该在 .cncrc 文件中放入其他行吗?NPM 上的以下网页显示了 .cncrc 文件中的大量行。
https://www.npmjs.com/package/cncjs

无法将 z 工作坐标归零 #242
贡献者
米奇布拉德利 评论了 2017 年 12 月 18 日  

这是一个开放式问题,因为我对你想做什么知之甚少。我将尝试解释 cncrc 选项的作用,以便您自行决定。

  • ports – 允许您指定任何串行端口的名称,无论出于何种原因,自动串行端口列表代码都找不到这些端口。这样做的原因是,在 Linux 和其他一些系统上,没有简单的方法可以找到串行端口的每个设备名称。有一些通常有效的命名约定,但时不时有人会选择一个不遵循约定的现成名称。ports 键允许您通过手动声明给定设备实际上是一个串行端口来解决这个问题。一个具体用途是用于 GRBL 模拟器,它使用名为 /dev/ttyFAKE 的端口;不幸的是,GRBL 模拟器不能很好地发挥作用。如果可以的话,那就太好了,除了添加端口,将端口集限制为您知道实际连接到 CNC 控制器的端口。但是,唉,这不是这个配置键的工作方式。
  • 波特率 – 允许您为古怪的控制器指定额外的非标准波特率。再一次,如果你能限制你的 CNC 控制器已知使用的实际波特率,那会很好,但这不是它的工作原理。
  • watchDirectory – 让您指定服务器上包含 GCode 文件的目录。很有用。
  • accessTokenLifetime – 安全令牌过期的时间。您可以通过缩短默认的 30 天来使系统在某种理论上更安全。
  • allowRemoteAccess – 如果将此设置为true,则可以从不同网络上的计算机访问 cncjs 服务器 – 甚至可能通过 Internet。当然,这会让您容易受到攻击者的攻击。
  • 控制器 – 有效值为“”、“Grbl”、“Marlin”、“g2core”、“TinyG”、“Smoothie”。我认为它的工作方式是,如果值不是“”,则只加载指定的控制器代码。如果值为“”,则加载所有控制器的代码。在我看来,“关闭”您系统上实际上不存在的所有控制器似乎是个好主意,从而避免将操作员与可能无法在给定系统上工作的选项混淆。
  • state – 这有子属性“checkForUpdates”。在完整的 cncjs UI 中,左上角有一个设置(齿轮)按钮。有一个带有“自动检查更新”复选框的常规选项卡。state/checkForUpdates 属性是保存复选框设置的地方。
  • 命令 – 这是存储设置/命令选项卡(见上文)的值的地方。这似乎是运行特定操作系统命令的功能,但我不确定如何调用该功能。我在 UI 中看不到任何使用它的工具。
  • 事件 – 这是一个明显未记录的功能,用于在某些事情发生时运行指定的系统命令或发出 GCode 命令。您可以从“设置/事件”选项卡设置事件。
  • 用户 – 这是存储通过设置/我的帐户设置的用户的地方。
  • macros – 这是通过完整 UI 中的 Macros 小部件设置的宏的存储。
无法将 z 工作坐标归零 #242
合作者

要调用命令,您可以打开下拉菜单以在服务器上执行特定程序。
无法将 z 工作坐标归零 #242