Contact me: hankecnc@gmail.com

代码检查模式错误。 #1173

推推 grbl 3年前 (2023-02-02) 249次浏览
打开
sfinexer 打开了这个问题 2019 年 2 月 28 日 · 31条评论
打开

代码检查模式错误。#1173

sfinexer 打开了这个问题 2019 年 2 月 28 日 · 31条评论

注释

代码检查模式错误。 #1173
贡献者
斯芬克斯 评论了 2019 年 2 月 28 日  

代码检查模式错误。
我正在使用最新版本的 GRBL 和最新版本的 b-CNC。
在按照文档的G-code编码中,GRBL将其转为code check模式。我在 G 代码的开头包含命令 $C。
https://github.com/gnea/grbl/wiki/Grbl-v1.1-Interface#g-code-error-handling
在这种模式下,GRBL 的作用与:
#1166
但通过 GRBL。
我认为此行为是由于错误引起的:
#1108
是否有视频:
http
://cnc.tiven.ru/ssr-2019-02-27_19.36.56.mp4 G-cod:
test.cnc.zip

代码检查模式错误。 #1173
贡献者作者

正如您在视频中看到的,错误 №1 先出现。
https://github.com/gnea/grbl/wiki/Grbl-v1.1-Interface#grbl-response-messages

  1. G 代码字由一个字母和一个值组成。找不到信件。

在视频中,我还展示了一段 proizoshol 失败的代码,它非常正确,并且与前面的 G 代码部分相同。
关于 GRBL 版本的行的出现也很混乱。
我假设此时 b-CNC 程序出现故障,她开始向 GRBL 发送与加载到其中的 cnc 代码不同的命令。

代码检查模式错误。 #1173
合作者
哈维 评论了 2019 年 2 月 28 日  

GRBL 给你错误:1 和错误:22。根据手册:
https ://github.com/gnea/grbl/wiki/Grbl-v1.1-Interface#grbl-response-messages

1 | G 代码字由一个字母和一个值组成。找不到信件。
22 | 进给速率尚未设置或未定义。

这意味着你的 G 代码有错误。这就是 $C 模式存在的原因。所以你可以事先检查你的文件是否有这样的错误,这样你就不会在工作中途崩溃。

顺便说一句,您不必将 $C 放入您的 g 代码文件中。您只需单击终端选项卡中的 $C 按钮:

代码检查模式错误。 #1173

代码检查模式错误。 #1173
合作者

此外,您的 g 代码再次包含不受支持的分号注释格式。我们之前一直在讨论这个。GRBL 只支持圆括号中的注释。

;Đàíäîìèçàöèÿ đàâíà = 210

代码检查模式错误。 #1173
贡献者作者

@Harvie

  1. 我带了一个 G-cod,效果很好,可以创建图片(没有 $C 模式)。
    仅当启用此模式时,问题才会显现出来。
  2. 仔细看错误号№22应该晚于错误号№1
  3. 我在视频中演示了一段出现问题的代码,它是正确的并且可以工作。当你重新启动错误发生在其他方法时,我会说更多。

结论:这不是 G 代码错误。

代码检查模式错误。 #1173
贡献者作者
斯芬克斯 评论了 2019 年 2 月 28 日  

此外,您的 g 代码再次包含不受支持的分号注释格式。我们之前一直在讨论这个。GRBL 只支持圆括号中的注释。

;Đàíäîìèçàöèÿ đàâíà = 210

GRBL 标准。
但在 $C 模式下,b-CNC 停止。
我保证“;” 不影响任何东西。但是,我在新视频中展示了它。
好吧,没有符号“;”
视频和cnc代码:
http :
//cnc.tiven.ru/ssr-2019-02-28_18.03.18.mp4 test.cnc.zip

代码检查模式错误。 #1173
合作者

如果您使用 UGS 尝试相同的代码会怎样?

代码检查模式错误。 #1173
贡献者作者
斯芬克斯 评论了 2019 年 2 月 28 日  

如果您使用 UGS 尝试相同的代码会怎样?

我认为问题不在代码中……
它在没有 $C 的模式下工作。我给他们拍照!!!
你能检查任何其他代码吗?

我在机器上有现成的图纸!如果我有真实图片,代码可能无法正常工作。

代码检查模式错误。 #1173
合作者

请尝试使用不同的 g 代码发件人运行相同的检查。该错误是由 GRBL 引发的,因此我不确定这是实际的 bCNC 问题。

代码检查模式错误。 #1173
贡献者作者
斯芬克斯 评论了 2019 年 2 月 28 日  

请尝试使用不同的 g 代码发件人运行相同的检查。该错误是由 GRBL 引发的,因此我不确定这是实际的 bCNC 问题。

我没有不同的 g 代码发件人……..
你能推荐 Linux 吗?

代码检查模式错误。 #1173
合作者
哈维 评论了 2019 年 2 月 28 日  

你能推荐 Linux 吗?

“UGS平台”

它具有比 bCNC 更漂亮的 GUI,但缺少 g 代码编辑器/CAM 功能

代码检查模式错误。 #1173

代码检查模式错误。 #1173
贡献者作者

我手足无措,不知如何是好。
https://winder.github.io/ugs_website/download/#nightly-builds
2.0 平台(测试版)| Java 8+ | 2017 年 7 月 28 日请勿运行。

2.0 经典版(测试版)| Java 8+ | 2017 年 7 月 28 日
http://cnc.tiven.ru/ssr-2019-02-28_19.03.25.mp4

代码检查模式错误。 #1173
贡献者作者
斯芬克斯 评论了 2019 年 3 月 1 日  

此外,您的 g 代码再次包含不受支持的分号注释格式。我们之前一直在讨论这个。GRBL 只支持圆括号中的注释。

;Đàíäîìèçàöèÿ đàâíà = 210

我同意这是第 125 行:
https
://github.com/gnea/grbl/blob/master/grbl/protocol.c#L125 但是,第 131 行:
https ://github.com/gnea/grbl/blob /master/grbl/protocol.c#L131
第 131 行:

else if (c == ';') {
            // NOTE: ';' comment to EOL is a LinuxCNC definition. Not NIST.
            line_flags |= LINE_FLAG_COMMENT_SEMICOLON;`
代码检查模式错误。 #1173
贡献者作者

@Harvie
有时使用标准 b-CNC 工具可能会出现此错误。
在视频的最后收到错误。
http://cnc.tiven.ru/ssr-2019-02-28_22.26.04.mp4

代码检查模式错误。 #1173
合作者

2.0 经典版(测试版)| Java 8+ | 2017 年 7 月 28 日

在那个视频中你只加载了 3 行 g 代码……可能你打开了错误的文件或其他东西,因为你的代码有超过 3 行……

代码检查模式错误。 #1173
贡献者作者

2.0 经典版(测试版)| Java 8+ | 2017 年 7 月 28 日

在那个视频中你只加载了 3 行 g 代码……可能你打开了错误的文件或其他东西,因为你的代码有超过 3 行……

文件是正确的…

代码检查模式错误。 #1173
贡献者作者
斯芬克斯 评论了 2019 年 3 月 1 日  

@Harvie
我下载了最新版的UniversalGcodeSender,问题依旧。
视频:
http ://cnc.tiven.ru/ssr-2019-03-01_08.53.12.mp4

代码检查模式错误。 #1173
合作者

也许你的g代码有问题。我一直在使用 UGS 和 UGS 平台,从来没有遇到过问题……

代码检查模式错误。 #1173
贡献者作者

@Harvie你能提供你的代码吗?
我想检查你的代码上的错误是否重复,那我就有问题了。

代码检查模式错误。 #1173
贡献者作者
斯芬克斯 评论了 2019 年 3 月 2 日  

第1180章(评论)
I've had not very big problem excluding those related to EMI and the CH340G on my Arduino that with some big gcode file seems to introduce some bug "forgetting some characters".

这大概是有关系的。
如果 G 代码少于 10k 行,则该错误很少发生。

代码检查模式错误。 #1173
贡献者

当我启动一个大的 gcode 文件时,我遇到了一些类似于这些的问题,(我没有看到 Gcode 的行数)但是如果文件是“大”并且我用不同的操作将它拆分成较小的文件,即拆分部分以不同的文件生成,加工正确无问题。

通常错误发生在某些 gcode 的中间,grbl 报告 gcode 文件中正确的代码中有错误行,并且缺少“一个”或某些字符。

我的开发板将 CH340G 作为 USB 控制器。

希望它能帮助找到问题,我前段时间读过,但我不确定它在界面上发送的 11K 或 12k 字符附近发生在哪里,也许是在某个 arduino 论坛上。

问候

卡罗·D。

代码检查模式错误。 #1173
合作者

@sfinexer你用什么USB串口芯片?我已经看到中国芯片在 115200 波特率下做一些奇怪的事情……因为@onekk报道。

代码检查模式错误。 #1173
贡献者作者
斯芬克斯 评论了 2019 年 3 月 4 日  

@onekk @Harvie
我的系统,先把数据写入SD卡,再发给Arduino。
我要等一下,我没有读卡器可以读取SD卡,我已经订购了,但是包裹还在路上。
我看到 G-cod 没有完全执行,当包裹到达时,我会说控制器收到了什么。
换句话说,我在 b-CNC 和 GRBL 之间做了一个缓冲区。系统正在运行。您可以关闭台式电脑,G-cod 正在运行。但是,由于我没有读卡器,我无法读取 SD 卡,也无法准确了解 arduino-buffer 正在接收什么。

代码正在测试中。但他工作。
问题是我现在没有机会检查 SD 卡上有什么。
当我可以读取 SD 卡(包裹在路上)时,我可以使用不同的 USB 数据速率更准确地说明问题所在。

代码检查模式错误。 #1173
贡献者

也许如果你使用串行通信(而不是 USB)与两个 arduino 交谈,我认为问题不应该出现,因为串行线不受问题影响,它与 USB -> 串行“桥接芯片”有关在原始的 Arduino Uno R3 中是 16u2(如果我没有弄错数字,但它是一个非常强大的 ATmel 处理器,带有 USB com 端口)并且克隆通常使用更便宜的 CH340G(或者甚至可能是CH341G) 存在“字符丢失”问题。

问候

代码检查模式错误。 #1173
贡献者作者

也许如果你使用串行通信(而不是 USB)与两个 arduino 交谈,我认为问题不应该出现,因为串行线不受问题影响,它与 USB -> 串行“桥接芯片”有关在原始的 Arduino Uno R3 中是 16u2(如果我没有弄错数字,但它是一个非常强大的 ATmel 处理器,带有 USB com 端口)并且克隆通常使用更便宜的 CH340G(或者甚至可能是CH341G) 存在“字符丢失”问题。

问候

是的……我什至没有考虑过。
我还认为 CH340G 或类似的东西中存在错误。
昨天注意CH340G芯片(应该有)上的其中一个(其他没看)中文Arduino UNO没有任何标记。

代码检查模式错误。 #1173
合作者

我一直在 CH341 上运行我的测试,它确实不时丢失一个字节。我一直在以 2000000 的波特率测试 32B 字符串,我测试过的两个 CH341 arduino 都丢失了字节,就像每传输 2 MiB 左右一次一样。在我以 115200 的波特率测试 64B 字符串之前,它似乎没问题。但是当与 CNC 机器的 EMI 结合时可能并不完美……

代码检查模式错误。 #1173
贡献者作者
斯芬克斯 评论了 2019 年 3 月 12 日  

@Harvie什么地方丢失了角色?在行的开头还是结尾?
也许我们可以以某种方式绕过这个错误。

代码检查模式错误。 #1173
合作者
哈维 评论了 2019 年 3 月 12 日  

测试中没有线路。只是无限的随机字节流。有时会迷路。在随机位置。

代码检查模式错误。 #1173
贡献者作者

在中文 Mega2560 上是芯片 CH340G。我会看看另一个用于 GRBL 的,阳台上还是太冷了(我那里有 +11 摄氏度)

代码检查模式错误。 #1173
合作者
哈维 评论了 2019 年 3 月 12 日  

丢失字节的示例(我通过添加空格来指示位置来手动对齐字符串):

[harvie@anemophobia arduino-loopback]$ ./test-loopback.py /dev/ttyUSB3 
Total: 32.817566 MiB	Elapsed: 1681.163667 seconds      
ERROR!
Expected: 8feaafb3f46eebb681860d23d1df7ce8fd5b151c8548c14cc717faf65cbec751
Received: 8f  afb3f46eebb681860d23d1df7ce8fd5b151c8548c14cc717faf65cbec751
Total: 35.610137 MiB	Elapsed: 1818.728308 seconds      
ERROR!
Expected: 95f2fbdae7c7dcadd6fef13be1a4f080a79822747ab0454dba64aec089075f61
Received: 95f2fb  e7c7dcadd6fef13be1a4f080a79822747ab0454dba64aec089075f61
Total: 39.452391 MiB	Elapsed: 2009.794305 seconds      
ERROR!
Expected: 516acbc2bfeb6a0cb1938f519a40ecf3eba70198a41616790118756f7df08d41
Received: 516acbc2bfeb6a  b1938f519a40ecf3eba70198a41616790118756f7df08d41
Total: 60.944821 MiB	Elapsed: 3085.195793 seconds      
ERROR!
Expected: 55aaa64477c479d609f2ed5d5f0488f8af4e6d2dc79d47ced2e0731e39603651
Received: 55aaa64477c479  09f2ed5d5f0488f8af4e6d2dc79d47ced2e0731e39603651
Total: 73.066891 MiB	Elapsed: 3694.149093 seconds      
ERROR!
Expected: 1dce74b1a3b4a5a351dd6e52812b5dbe89e19394a2984e596c968470a3868769
Received: 1dce74a3b  4a5a351dd6e52812b5dbe89e19394a2984e596c968470a3868769
Total: 79.368281 MiB	Elapsed: 4010.866526 seconds      
ERROR!
Expected: a1316b76aff7ddf1b34e1170e13fdd7a4f5e43701bd4ce7e6873d9972fd10b4e
Received: a131  76aff7ddf1b34e1170e13fdd7a4f5e43701bd4ce7e6873d9972fd10b4e
Total: 82.528711 MiB	Elapsed: 4169.186577 seconds      
ERROR!
Expected: 63bbc34814404afd4340717167a258c484e3e9351f0ed1cf2ef07871a28e9632
Received: 63  c34814404afd4340717167a258c484e3e9351f0ed1cf2ef07871a28e9632
Total: 82.957299 MiB	Elapsed: 4191.718515 seconds      
代码检查模式错误。 #1173
贡献者作者

半年后,读卡器到了….
我现在可以说数据丢失的问题是在传输到Arduino的过程中丢失了线路。执行过程中没有报错!
错误可能在 CH340G 或其他地方。
但我声明这是完全丢失了 STRINGS,而不是它们的部分。

代码检查模式错误。 #1173
合作者

你能试试使​​用 FTDI 芯片而不是 CH340G 的 arduino 吗?这些稍微贵一点,但更可靠。

还可以用不到 10 美元购买 saleae 逻辑分析仪的中国克隆版,8 通道 24MHz。这对于调试非常有用。看起来像这样:

代码检查模式错误。 #1173

然后,您可以在 Linux 上使用 pulseview(基于 sigrok)软件查看线路中发生的情况,甚至解码串行流量以查看串行线路中的数据:

代码检查模式错误。 #1173

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

还没有

发展

没有分支机构或拉取请求

3人参加
代码检查模式错误。 #1173代码检查模式错误。 #1173代码检查模式错误。 #1173

喜欢 (0)