开源改变世界

冰沙软件支持 #94

推推 grbl 2年前 (2023-02-02) 242次浏览
关闭
tritao 打开了这个问题 2016 年 11 月 23 日 · 25条评论
关闭

冰沙软件支持#94

tritao 打开了这个问题 2016 年 11 月 23 日 · 25条评论

注释

冰沙软件支持 #94

您好,首先感谢您为这款出色的软件所做的工作。

您是否有计划在软件中添加对 Smoothieware 的支持?

冰沙软件支持 #94
合作者

Smoothieware 类似于Grbl,我认为将Smoothieware 支持添加到cnc 软件中并不难。改天我会得到一个 4XC SmoothieBoard 用于协议测试。

参考
vlachoudis/bCNC#143
绕线机/通用-G-代码发送器#204

冰沙软件支持 #94 奇顿 添加了 增强 标签 2016 年 11 月 23 日
冰沙软件支持 #94
作者
三道 评论了 2016 年 11 月 24 日  

我怀疑是否@arthurwolf可以在这里帮助一块板来帮助您进行测试。

如果没有,根据您所在的位置,您可以查看 MKS SBase,它与 Smoothieware 兼容并且从中国发货。

如果有问题,请告诉我,我会为您订购一个。

冰沙软件支持 #94

嘿 !

如果您使用 CNC 构建,Smoothie 与 grbl 非常相似,并在配置中添加: 
grbl_mode true

如果你愿意,我可以给你打折,或者给你寄一块破板(仍然可以通信)。

干杯 :)

冰沙软件支持 #94
合作者

感谢您的信息。我将购买 SmoothieBoard(或来自中国的 MKS SBase v1.3),然后开始锻炼。

冰沙软件支持 #94
作者
三道 评论了 2016 年 12 月 2 日  

刚刚尝试按照建议连接到 Smoothieware@arthurwolf,使用 CNC=1 编译的固件将其置于 Grbl 兼容模式。

输出似乎更符合 cnc 的预期,但仍然存在一些问题。

2016-12-01T17:30:13.838Z - debug: [cncserver] New connection from 192.168.0.174: id=1p4flM5-1LXzY-kLAAAA, token.id=bce85834-fd3e-46ad-97e4-1be600159a83, token.name=joao     at Namespace.<anonymous> (/Users/joao/Dev/cnc/dist/cnc/app/index.js:3406:28)
Started the server at http://192.168.0.174:8000/.
2016-12-01T17:30:15.275Z - debug: [cncserver] socket.open("/dev/cu.usbmodem1421", {"controllerType":"Grbl","baudrate":115200}): id=1p4flM5-1LXzY-kLAAAA     at Socket.<anonymous> (/Users/joao/Dev/cnc/dist/cnc/app/index.js:3457:32)
2016-12-01T17:30:15.288Z - debug: [Grbl] Connected to serial port "/dev/cu.usbmodem1421"     at SerialPort.<anonymous> (/Users/joao/Dev/cnc/dist/cnc/app/index.js:5175:28)
2016-12-01T17:30:15.289Z - silly: [Grbl] > 
2016-12-01T17:30:15.292Z - silly: [Grbl] < ALARM:Abort during cycle
i4aR5O9GGE_RjwSzUujnywqa9VBtNNQd GET /api/controllers 200 8.366 ms
2016-12-01T17:30:17.065Z - debug: [cncserver] socket.command("/dev/cu.usbmodem1421", "homing"): id=1p4flM5-1LXzY-kLAAAA, args=[]     at Socket.<anonymous> (/Users/joao/Dev/cnc/dist/cnc/app/index.js:3508:32)
2016-12-01T17:30:17.066Z - silly: [Grbl] > $H

2016-12-01T17:30:18.072Z - silly: [Grbl] < ok
2016-12-01T17:30:18.701Z - debug: [cncserver] socket.command("/dev/cu.usbmodem1421", "unlock"): id=1p4flM5-1LXzY-kLAAAA, args=[]     at Socket.<anonymous> (/Users/joao/Dev/cnc/dist/cnc/app/index.js:3508:32)
2016-12-01T17:30:18.702Z - silly: [Grbl] > $X

一个问题是即使在正确归位机器的归位命令之后,Axes 小部件也永远不会自行解锁。但是发送的解锁按钮$X永远不会得到董事会的任何回复。

冰沙软件支持 #94
合作者

感谢您的信息。刚收到我的 SmoothieBoard,我会在接下来的几天试一试。

冰沙软件支持 #94
作者

谢谢您的帮助。

经过更多测试后,开发板确实向 发送了响应$X,处理响应时出现了一些问题。

冰沙软件支持 #94
合作者

命令执行将被就绪检查阻止,直到它收到 Grbl 启动行
Grbl 1.1d ['$' for help]

https://github.com/cheton/cnc/blob/v1.8.5/src/app/controllers/Grbl/GrblController.js#L233-L252

this.grbl.on('startup', (res) => {
    this.emitAll('serialport:read', res.raw);

    if (!this.ready) {
        // View Grbl settings
        this.feeder.feed({ line: '$$' });

        // View startup blocks
        this.feeder.feed({ line: '$N' });

        if (!this.feeder.isPending()) {
            this.feeder.next();
        }
    }

    this.ready = true;
    this.queryResponse.status = false;
    this.queryResponse.parserstate = false;
    this.queryResponse.parserstateEnd = false;
});

我可以添加一段代码来检测可以与当前 Grbl 控制器一起使用的 Smoothie。

对 Smoothieware 的全面支持,包括 Smoothie 小部件,可能会在 1.9.0 版本中提供。

冰沙软件支持 #94
合作者

在1.8.6版本中添加了对 Smoothieware 的初步支持。不能保证稳定性,但值得一试!

冰沙软件支持 #94
作者

太棒了,会做一些测试并让你知道。

冰沙软件支持 #94
合作者
奇顿 评论了 2016 年 12 月 5 日  

你好@arthurwolf,

我在尝试停止将 G 代码程序流式传输到 Smoothie 时发现了一个问题,状态报告 (?) 可能会报告具有不确定偏移量的异常工作位置。

重现步骤:
第 1 步。将 G 代码程序流式传输到 Smoothie
第 2 步。发送!ctrl-x进给保持并重置
第 3 步。发送$X以解锁警报状态
第 4 步。再次运行第 1 步

尝试了几次后,我发现 Smoothieware 在状态报告中丢失了它的工作位置,但是这在 Grbl 中从来没有发生过。

我可以知道我在尝试恢复警报状态时是否做错了什么吗?

冰沙软件支持 #94
亚瑟狼 评论了 2016 年 12 月 5 日 通过电子邮件
冰沙软件支持 #94

$X 或 M999 将从警报模式重置,但如果定位丢失,则您还需要在 $X.. 之后使用 $H 回家。无法保证在突然中止后位置不会丢失。甚至 Grbl 也不保证这一点。

冰沙软件支持 #94
合作者

!我过去常常使用和~命令立即暂停和恢复 G 代码程序。您推荐的从保持状态中止的方法是什么?

以下是我针对暂停中止 G 代码程序的步骤:

  1. 清空队列
  2. 发送~简历
  3. 发送 ctrl-x 以中止
  4. 解锁警报 ($X)
  5. 将 Z 轴缩回到间隙高度
  6. 主页 ($H)
冰沙软件支持 #94
作者

今天一直在用激光切割机测试新的 Smoothie 支持,我可以报告它有效。

暂停工作似乎有一些问题,有时它会起作用,但大多数时候工作会继续,直到我按下停止按钮。我明天再做一些检查。

冰沙软件支持 #94
合作者
奇顿 评论了 2016 年 12 月 10 日  

你好@tritao,

我仍在微调暂停/恢复/停止工作的工作流程(提交e2abb57),一旦我确认正确使用,我将发布一个新版本。

关于你的问题,我在这里得到了一些回复: LaserWeb/deprecated-LaserWeb3@ ab3ffa6 #commitcomment-20137765

Grbl 和 Smoothie 之间是有区别的并且M600无法在 Smoothie 中立即暂停作业,暂停 (!) 将在计划队列完成之前生效。

冰沙软件支持 #94
狼人 评论了 2016 年 12 月 11 日  

FYI I am removing the ! and ~ from smoothie, as it does not really do anything. You can continue to send them but they will be ignored. The control-X will continue to work as immediate abort.
If you want to pause you should simply stop sending gcode to smoothie, and then continue to send when you resume. this is basically what happens now in smoothie anyway and I just realized that the ! was not doing anything effective.
So there is no immediate pause/resume in smoothie, and given how hard it is to implement I suspect there will not be any time soon.
M600/M601 are there for 3D printers to replace filament and should not be used by CNC hosts as it requires the host to honor the reprap style feedback commands like  // command:pause

冰沙软件支持 #94
Collaborator
cheton commented 2016 年 12 月 11 日  

@wolfmanjm Thank you very much for your detailed explanation. I will list it as a known issue in FAQ, and remove ! and ~ from Pause and Resume buttons as well to prevent from unexpected behaviour.

冰沙软件支持 #94
Collaborator
cheton commented 2016 年 12 月 11 日  

Note. Both ! and ~ are ignored in Smoothieware/Smoothieware@716c759

冰沙软件支持 #94

Yes just did that, so you can continue to send ! so when/if it is ever implemented it will just work :) right now it’ll just be ignored.

冰沙软件支持 #94
Collaborator

Sure! Thank you for your guidance. I just upgraded the firmware to the latest build version edge-fecb4cc, I will do more tests with this version.

冰沙软件支持 #94
Collaborator
cheton commented 2017 年 2 月 13 日  

Added in v1.9.0-alpha