Contact me: hankecnc@gmail.com

串行连接但不… #1399

推推 grbl 3年前 (2023-02-02) 295次浏览
打开
Antoine8082 开启了这个问题 2020 年 5 月 8 日 · 7条评论
打开

串行连接但不…#1399

Antoine8082 开启了这个问题 2020 年 5 月 8 日 · 7条评论

评论

串行连接但不... #1399

您好,
设置:
专用的“旧”Core 2 duo 笔记本电脑、2Go、ATI。
Step1 硬盘:5400rpm 160Go
Step2 硬盘:SSD 60Go

ESP32(连接/LCD)+ STM32(电机控制),USB 或 Wifi(AP 模式)连接上的 4 轴屏蔽。

第 1 步:
全新安装 Lubuntu 和 bCNC(Git 版本按照您的步骤),一切正常。

Step2:
我收到了SDD,换了慢速HDD。
全新安装 Mint(比 Lubuntu 更好)和 bCNC。
串行已连接(ESP32 屏幕在连接时重新启动)但是,GRBL 连接保持“未连接/红色”。
从 1 到 10 的 10 美元没有影响……

在新鲜的(相同的)Lubuntu 上出现相同的症状。

如果我用第一个 Lubuntu 重新插入旧的 5400rpm 磁盘,它就会正常工作。
它在我的 Win 10 Surface 平板电脑上正常工作。
因此,ESP32 方面的问题不是。

我迷路了,不知道要挖掘。
你是否 ?
谢谢

串行连接但不... #1399

经过进一步调查,我意识到安装在旧 HD 上的版本比安装在新 SSD 硬盘驱动器上的版本早几代。
我从提交23e2611安装并将 enabled6axis设置为 false。

我的设置目前正在运行。

我处于只有 A 轴而没有 B 和 C 轴的情况。这是一个常见的设置吗?

(在我的例子中,word == 5)所以代码在
float(word[5])处失败

是否应更改线条
if len(word) > 4:以允许具有 A 轴,但不允许 B 或 C 轴?

串行连接但不... #1399

你好,

我花了几个晚上调试这个相同(或非常相似)的问题。不久前,我让 bCNC 与我的 GRBL 0.9j CNC 路由器一起工作,但现在有了一台新计算机,它就无法完全连接。我得到了“未连接”红色按钮,但单击它时显示“已与 Grbl 建立连接”。

我发现了两个问题:
问题 1
连接后 bCNC 期望状态报告看起来像:
<Idle,MPos:0.000,0.000,0.000,WPos:0.000,0.000,0.000>
但我的 CNC 路由器只发送:
<Idle,MPos:0.000,0.000,0.000>

看到其他论坛帖子建议将 GRBL 参数 $10 更改为 1,但没有帮助,因为这是 bCNC 中的默认设置。查看 GRBL 文档,它指出状态报告中的 MPos 和 WPos 都应将 $10 设置为 3。我尝试更改 bCNC 中的值,但没有任何改变。之后我使用终端软件连接到路由器并发出命令$10=3,这有所不同。连接后,bCNC 现在也获得了 WPos。它并没有解决我的问题。

问题 2
在 bCNC 中,有一个正则表达式可以解析 state、mpos 和 wpos 的状态报告。在提交eb870a6 中,此正则表达式 ( STATUSPAT) 已更改为采用 6 个轴,但据我所知,它不再支持 3 个轴。恢复对“STATUSPAT”和“POSPAT”所做的更改似乎有所帮助,我现在可以连接并从路由器获取位置。不过,我还没有运行任何 CNC 作业。

或许@tsmarks这里有一些意见吗?

diff --git a/bCNC/controllers/_GenericController.py b/bCNC/controllers/_GenericController.py
index f5cf6b0..2b1f49c 100644
--- a/bCNC/controllers/_GenericController.py
+++ b/bCNC/controllers/_GenericController.py
@@ -8,8 +8,8 @@ from CNC import CNC, WCS
 import time
 import re
 
-STATUSPAT = re.compile(r"^<(\w*?),MPos:([+\-]?\d*\.\d*),([+\-]?\d*\.\d*),([+\-]?\d*\.\d*),([+\-]?\d*\.\d*),([+\-]?\d*\.\d*),([+\-]?\d*\.\d*),WPos:([+\-]?\d*\.\d*),([+\-]?\d*\.\d*),([+\-]?\d*\.\d*),([+\-]?\d*\.\d*),([+\-]?\d*\.\d*),([+\-]?\d*\.\d*),?(.*)>$")
-POSPAT   = re.compile(r"^\[(...):([+\-]?\d*\.\d*),([+\-]?\d*\.\d*),([+\-]?\d*\.\d*),([+\-]?\d*\.\d*),([+\-]?\d*\.\d*),([+\-]?\d*\.\d*):?(\d*)\]$")
+STATUSPAT = re.compile(r"^<(\w*?),MPos:([+\-]?\d*\.\d*),([+\-]?\d*\.\d*),([+\-]?\d*\.\d*),WPos:([+\-]?\d*\.\d*),([+\-]?\d*\.\d*),([+\-]?\d*\.\d*),?(.*)>$")
+POSPAT   = re.compile(r"^\[(...):([+\-]?\d*\.\d*),([+\-]?\d*\.\d*),([+\-]?\d*\.\d*):?(\d*)\]$")
 TLOPAT   = re.compile(r"^\[(...):([+\-]?\d*\.\d*)\]$")
 DOLLARPAT = re.compile(r"^\[G\d* .*\]$")
 SPLITPAT  = re.compile(r"[:,]")
串行连接但不... #1399
贡献者
标记 评论了 2020 年 5 月 25 日 通过电子邮件
串行连接但不... #1399

我的路由器在我购买时预装了 GRBL 0.9j。我从来没有重新刷过它,所以我不能保证它不是工厂定制的。

退后一步,您是否同意新的 regexp:s 与我的路由器的输出不匹配?

<Idle,MPos:0.000,0.000,0.000,WPos:0.000,0.000,0.000>

如果是这样,我的 3 轴系统和你的可能有一些不同的设置吗?正如您在上面的“问题 1”中看到的那样,我的路由器似乎至少丢失了一项设置。当这些状态报告消息来自您的测试单元时,它们看起来如何?

如果我们可以断定我们的机器输出不同的报告消息并且两者都是有效的,则可以向正则表达式添加可选组,但为了降低代码复杂性,根据 6 轴设置使用不同的正则表达式可能更好。

(如果我说的话没有意义,请原谅我,我只花了几个小时来研究代码,试图解决我的具体问题。)

串行连接但不... #1399

我遇到了类似的问题。

串行连接似乎成功,但 bCNC 仍然“未连接”。可以通过 bCNC 终端与 GRBL 通信并成功执行手动 gcode。
从 GRBL 0.9 升级到 1.1 没有解决。

全新的windows10安装。
GRBL 0.9 然后 1.1
Python 2.7
bCNC 通过 pip 全新安装

串行连接但不... #1399

我真的很想在正则表达式模式和状态跟踪方面看到更多的灵活性,因为我看到了其他人已经注意到的一些相同问题,但在我的情况下,这是因为我尝试将 bCNC 与 grblHAL (Arduino Due) 一起使用和 Grbl_Esp32(LOLIN D32 PRO)。ESP32 端口在向后兼容性方面更明显地被破坏,但 grblHAL 令人沮丧地接近“库存”Arduino UNO/grbl 1.1h。我偶尔可以让它进入空闲或慢跑状态,但它总是卡在那个状态,即使它似乎明白当你点击状态按钮时发生了什么。

无论如何,我知道这不是一个具体的目标,所以我想看看我是否可以帮助让 grblHAL 发挥作用,因为它似乎更接近工作状态。看到它说它已断开连接肯定很烦人,但是当您单击该状态时它会正确地说它是空闲或慢跑等,尽管显示的 X/Y/Z 坐标永远不会更新。有什么方法可以在串行终端窗口中显示 grbl 的完整输出吗?通常有相当多的流量是看不见的。
有没有人可以指出 bCNC 在哪里解析并跟踪当前状态?我了解 Python 和正则表达式,但在入门方面提供一点帮助将非常有价值。

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

还没有

发展

没有分支机构或拉取请求

5人参加
串行连接但不... #1399串行连接但不... #1399串行连接但不... #1399串行连接但不... #1399串行连接但不... #1399

喜欢 (0)