Contact me: hankecnc@gmail.com

奇怪的行为 – 1.8.6 #100

推推 grbl 3年前 (2023-02-02) 208次浏览
关闭
jarretluft 打开了这个问题 2016 年 12 月 4 日 · 8条评论
关闭

奇怪的行为 – 1.8.6#100

jarretluft 打开了这个问题 2016 年 12 月 4 日 · 8条评论

注释

奇怪的行为 - 1.8.6 #100
jarretluft 评论了 2016 年 12 月 4 日  

你好@cheton
我在最新版本 (1.8.6) 中遇到了一些奇怪的行为和错误。

我已经尝试运行一些非常标准的 gcode 两次,但两次都出现错误和不稳定的机器运动。
我在服务器端打印出一堆错误,以及一个非标准的 gcode 错误(grbl 错误:20)。此外,在错误发生后,机器运动不再符合应该发生的情况。我只在 gcode 中输入了几行,直到事情开始出错,我不得不中止。

任何想法发生了什么?自昨晚运行以来,我对系统所做的唯一更改是更新到 1.8.6(之前运行的是 1.8.2)。
我正在使用 grbl 版本 ($i): [VER:1.1d.20161023:]

G代码:

T1M6
G17
G21
G0 Z3.2004
G0 X0.0000 Y0.0000 S12000 M3
G0 X88.9358 Y-3.7040 Z3.1750
G1   Z-2.5000 F508.0
G1  Y-63.7040  F762.0
G0   Z3.1750
G0  Y-3.7040 

服务器端错误:

2016-12-03T23:39:25.021Z - info: Started the server at http://127.0.1.1:8000
2016-12-03T23:43:39.105Z - error: uncaughtException: Uncaught, unspecified "error" event. ([object Object]) date=Sat Dec 03 2016 16:43:39 GMT-0700 (MST), pid=1621, uid=1000, gid=1000, cwd=/usr/lib/node_modules/cncjs/dist/cnc/app, execPath=/usr/bin/nodejs, version=v4.6.0, argv=[/usr/bin/nodejs, /usr/bin/cnc], rss=57937920, heapTotal=35438188, heapUsed=31746412, loadavg=[0.02490234375, 0.044921875, 0.00244140625], uptime=64794, trace=[column=17, file=events.js, function=Smoothie.emit, line=144, method=emit, native=false, column=19, file=/usr/lib/node_modules/cncjs/dist/cnc/app/index.js, function=Smoothie.parse, line=6265, method=parse, native=false, column=29, file=/usr/lib/node_modules/cncjs/dist/cnc/app/index.js, function=, line=5177, method=null, native=false, column=13, file=events.js, function=emitOne, line=77, method=null, native=false, column=7, file=events.js, function=SerialPort.emit, line=169, method=emit, native=false, column=17, file=/usr/lib/node_modules/cncjs/node_modules/serialport/lib/parsers.js, function=null, line=24, method=null, native=false, column=null, file=null, function=Array.forEach, line=null, method=forEach, native=true, column=13, file=/usr/lib/node_modules/cncjs/node_modules/serialport/lib/parsers.js, function=, line=23, method=null, native=false, column=18, file=/usr/lib/node_modules/cncjs/node_modules/serialport/lib/serialport.js, function=SerialPort._emitData, line=313, method=_emitData, native=false, column=14, file=/usr/lib/node_modules/cncjs/node_modules/serialport/lib/serialport.js, function=, line=293, method=null, native=false, column=7, file=/usr/lib/node_modules/cncjs/node_modules/serialport/lib/serialport.js, function=, line=306, method=null, native=false, column=17, file=fs.js, function=FSReqWrap.wrapper [as oncomplete], line=576, method=wrapper [as oncomplete], native=false], stack=[Error: Uncaught, unspecified "error" event. ([object Object]),     at Smoothie.emit (events.js:144:17),     at Smoothie.parse (/usr/lib/node_modules/cncjs/dist/cnc/app/index.js:6265:19),     at SerialPort.<anonymous> (/usr/lib/node_modules/cncjs/dist/cnc/app/index.js:5177:29),     at emitOne (events.js:77:13),     at SerialPort.emit (events.js:169:7),     at /usr/lib/node_modules/cncjs/node_modules/serialport/lib/parsers.js:24:17,     at Array.forEach (native),     at SerialPort.<anonymous> (/usr/lib/node_modules/cncjs/node_modules/serialport/lib/parsers.js:23:13),     at SerialPort._emitData (/usr/lib/node_modules/cncjs/node_modules/serialport/lib/serialport.js:313:18),     at SerialPort.<anonymous> (/usr/lib/node_modules/cncjs/node_modules/serialport/lib/serialport.js:293:14),     at SerialPort.<anonymous> (/usr/lib/node_modules/cncjs/node_modules/serialport/lib/serialport.js:306:7),     at FSReqWrap.wrapper [as oncomplete] (fs.js:576:17)]
2016-12-03T23:43:39.139Z - error: uncaughtException: Uncaught, unspecified "error" event. ([object Object]) date=Sat Dec 03 2016 16:43:39 GMT-0700 (MST), pid=1621, uid=1000, gid=1000, cwd=/usr/lib/node_modules/cncjs/dist/cnc/app, execPath=/usr/bin/nodejs, version=v4.6.0, argv=[/usr/bin/nodejs, /usr/bin/cnc], rss=58200064, heapTotal=35438188, heapUsed=31961980, loadavg=[0.02490234375, 0.044921875, 0.00244140625], uptime=64794, trace=[column=17, file=events.js, function=Smoothie.emit, line=144, method=emit, native=false, column=19, file=/usr/lib/node_modules/cncjs/dist/cnc/app/index.js, function=Smoothie.parse, line=6265, method=parse, native=false, column=29, file=/usr/lib/node_modules/cncjs/dist/cnc/app/index.js, function=, line=5177, method=null, native=false, column=13, file=events.js, function=emitOne, line=77, method=null, native=false, column=7, file=events.js, function=SerialPort.emit, line=169, method=emit, native=false, column=17, file=/usr/lib/node_modules/cncjs/node_modules/serialport/lib/parsers.js, function=null, line=24, method=null, native=false, column=null, file=null, function=Array.forEach, line=null, method=forEach, native=true, column=13, file=/usr/lib/node_modules/cncjs/node_modules/serialport/lib/parsers.js, function=, line=23, method=null, native=false, column=18, file=/usr/lib/node_modules/cncjs/node_modules/serialport/lib/serialport.js, function=SerialPort._emitData, line=313, method=_emitData, native=false, column=14, file=/usr/lib/node_modules/cncjs/node_modules/serialport/lib/serialport.js, function=, line=293, method=null, native=false, column=7, file=/usr/lib/node_modules/cncjs/node_modules/serialport/lib/serialport.js, function=, line=306, method=null, native=false, column=17, file=fs.js, function=FSReqWrap.wrapper [as oncomplete], line=576, method=wrapper [as oncomplete], native=false], stack=[Error: Uncaught, unspecified "error" event. ([object Object]),     at Smoothie.emit (events.js:144:17),     at Smoothie.parse (/usr/lib/node_modules/cncjs/dist/cnc/app/index.js:6265:19),     at SerialPort.<anonymous> (/usr/lib/node_modules/cncjs/dist/cnc/app/index.js:5177:29),     at emitOne (events.js:77:13),     at SerialPort.emit (events.js:169:7),     at /usr/lib/node_modules/cncjs/node_modules/serialport/lib/parsers.js:24:17,     at Array.forEach (native),     at SerialPort.<anonymous> (/usr/lib/node_modules/cncjs/node_modules/serialport/lib/parsers.js:23:13),     at SerialPort._emitData (/usr/lib/node_modules/cncjs/node_modules/serialport/lib/serialport.js:313:18),     at SerialPort.<anonymous> (/usr/lib/node_modules/cncjs/node_modules/serialport/lib/serialport.js:293:14),     at SerialPort.<anonymous> (/usr/lib/node_modules/cncjs/node_modules/serialport/lib/serialport.js:306:7),     at FSReqWrap.wrapper [as oncomplete] (fs.js:576:17)]

CNC 控制台错误:

> (9) G0 Z3.175
error:20
奇怪的行为 - 1.8.6 #100
合作者
奇顿 评论了 2016 年 12 月 4 日  

1.8.5没看到报错,1.8.6就出现了。这可能与添加 Smoothie 支持的代码有关。您可以将您的版本回滚到 1.8.5 ( npm install -g cncjs@1.8.5),我将查看此问题。

奇怪的行为 - 1.8.6 #100 奇顿 添加了 ?漏洞 标签 2016 年 12 月 4 日
奇怪的行为 - 1.8.6 #100
合作者
奇顿 评论了 2016 年 12 月 4 日  

根本原因是第一行,我猜你的 Grbl 1.1d 没有启用 M6,它报告了这样的错误:

> T1M6
error:20

1.8.6 中的 Smoothie 解析器没有正确处理错误,因此它阻止了执行。我会在今天之前修好它。

奇怪的行为 - 1.8.6 #100
合作者
奇顿 评论了 2016 年 12 月 4 日  

“错误”事件是 EventEmitter 中的一个特殊事件:https ://nodejs.org/api/events.html#events_error_events

我将添加一个“错误”事件侦听器以防止引发错误。

文件:
https ://github.com/cheton/cnc/blob/v1.8.6/src/app/controllers/Grbl/GrblController.js#L196
https://github.com/cheton/cnc/blob/v1.8.6 /src/app/controllers/Grbl/Grbl.js#L658
https://github.com/cheton/cnc/blob/v1.8.6/src/app/controllers/Smoothie/Smoothie.js#L523

奇怪的行为 - 1.8.6 #100
合作者

已在 1.8.7 中修复