Contact me: hankecnc@gmail.com

交互式流脚本 #243

推推 grbl 3年前 (2023-01-21) 222次浏览

打开
fragmuffin 打开了这个问题 2017 年 8 月 6 日 · 6条评论
打开

交互式流脚本#243

fragmuffin 打开了这个问题 2017 年 8 月 6 日 · 6条评论

注释

交互式流脚本 #243
松饼 评论了 2017 年 8 月 6 日  

关于此代码注释

我已经使用curses.
https://github.com/fragmuffin/pygcode/blob/develop/scripts/grbl-stream

编辑:移至它自己的仓库’ https://github.com/fragmuffin/grbl-stream

慢跑
它以慢跑状态开始,按键:

; Jogging Keys                                                                
;    - Arrow Keys: X/Y axes                                                   
;    - PgUp/PgDn: Z axis                                                      
;    - []: increase/decrease jog distance                                     
;    - Space: zero work offsets (all axes)                                    
;    - x,y,z: zero individual axis                                            
;    - Enter: start streaming gcode                                           

交互式流脚本 #243

如果请求点动,机器的模式将更改为增量模式G91,然后在完成后恢复为初始模式。

串流

当用户按下[enter]gcode 时流式传输

交互式流脚本 #243

慢跑流媒体状态下,屏幕上的 gcode 指示……

G00 Z2             > ok               gcode was sent, and GRBL device has responded with 'ok' 
(comment)
G00 X10            >                  line has been sent, but no response received
G00 Y-10                             line has not  been sent yet

脚本继续流式传输/检查状态,直到:

  • 所有行已发送
  • ok已收到所有回复
  • 机器的状态是Idle

用法

usage: grbl-stream [-h] [--quiet] [-d DEVICE] [-b BAUDRATE] [--disable-status]
                   [--poll-interval POLL_INTERVAL] [--buffer-size BUFFER_SIZE]
                   [--serial-log LOG_FILE] [--pending-count PENDING_COUNT]
                   [--keep-open]
                   infile

GRBL gcode streamer for CNC machine. Assist jogging to position, then stream
gcode via serial.

positional arguments:
  infile                gcode file to stream

optional arguments:
  -h, --help            show this help message and exit
  --quiet, -q           if quiet, help messages won't be printed

Serial Connectivity:
  -d DEVICE, --device DEVICE
                        serial device GRBL is connected to, can use direct
                        device name (eg: /dev/ttyACM0) or the Arduino's serial
                        number (eg: 55639303235351C071B0)
  -b BAUDRATE, --baudrate BAUDRATE
                        serial baud rate (default: 115200)

Debug Parameters:
  --disable-status      disables '?' being sent every '--poll-interval'
  --poll-interval POLL_INTERVAL
                        frequency of sending '?' for status report when status
                        is enabled
  --buffer-size BUFFER_SIZE
                        GRBL internal serial buffer size
  --serial-log LOG_FILE
                        if given, data read from, and written to serial port
                        is logged here (note: \r and \n characters are escaped
                        for debugging purposes)
  --pending-count PENDING_COUNT
                        number of gcode lines to display ahead of them being
                        sent
  --keep-open, -o       if set, window won't close when job is done

限制

  • 目前有点问题(我今天早些时候才开始工作)
  • 不能在 Windows 上按原样工作(有一个端口UniCurses可以工作)
  • 需要pygcode

您对此项目的补充感兴趣吗?

交互式流脚本 #243
贡献者

我肯定会的。但是,它可能需要是一个链接项目,而不是主要代码库的一部分。这主要是由于确保一切正常运作和得到良好支持的时间和精力。在大多数情况下,Grbl 流式传输脚本有意设计得很简单,因此当更复杂的 UI 似乎失败时,可以使用一些东西进行测试。

也就是说,我一直想将流式脚本扩展为简单的东西,例如基于文本的 GUI。实际上,对于 99% 的任务,您不需要它来做更多的事情。另外,它可能会在 RPi 零和小键盘上的小型爱好 LCD 屏幕上运行良好。请让我们了解您的最新进展。

交互式流脚本 #243
作者

“它可能需要是一个链接项目”

我同意,因为一个 1000 行的脚本对我来说有点太长了。
我会把它拆分成它自己的项目,完成后我会在这里发布一个链接。

“在大多数情况下,Grbl 流式传输脚本是故意简单的”

我同意…该脚本是我学会缓冲通过串行传输的字节的方式,而这个脚本太难学习了(作为新手)

“另外,它可能会在 RPi 零和小键盘上的小型爱好 LCD 屏幕上运行得很好”

好主意!,我没想到?

交互式流脚本 #243
作者

我在这里创建并启动了 repo:https ://github.com/fragmuffin/grbl-stream

此外,还有对 python 的另一个值得注意的贡献(您可能知道)PyGRBL

尽管我关注的重点grbl-stream不同,但在这个美妙的开放软件世界中两者都有空间。

grbl-stream当我在 PyPi 上发布时,我会在这里重新发布

交互式流脚本 #243
作者

好的!,我已经发布了现在可以使用的 grbl-stream 。

我已经将 v0.1.0 推送到 master(作为pre-alpha),但我还没有发布它pip(原因在上面的链接中列出)。

它有一些我在任何其他 grbl 流光中都没有看到的好处,例如:

  • 始终显示okerror内联正在流式传输的 gcode
  • 拆分 gcode 并将它们作为单独的行发送(可选)

考虑到所有因素,我进入 CNC 世界的经历在很大程度上分散了我的主要任务,所以我不得不暂时停止开发这些脚本……如果有人对使用它们表现出兴趣,那么我会很乐意选择他们备份并擦亮它们以使其更有光泽。

@chamnit:如果您有任何意愿将其作为 的功能流媒体grbl,请告诉我,我会优先考虑使其更便携(即:Windows)、可靠健壮,因此用户没有理由这样做灰心。

交互式流脚本 #243
贡献者

@fragmuffin: 不好意思回复晚了。一直很忙。我很想把它做成一个有特色的蒸笼,但它需要一些奉献精神来保持它由你自己或其他人维护。当不再维护时,UI 就会消亡。

但是,我确实有一些有趣的问题想在线下向您提出。请给我发电子邮件(见我的个人资料)。

交互式流脚本 #243
作者

(耳语耳语)

喜欢 (0)