开源改变世界

编辑器块更改在线产生重复的坐标 #783

推推 grbl 2年前 (2023-02-01) 196次浏览
关闭
valentinAlkan 打开了这个问题 2018 年 3 月 22 日 · 4条评论
关闭

编辑器块更改在线产生重复的坐标#783

valentinAlkan 打开了这个问题 2018 年 3 月 22 日 · 4条评论

注释

编辑器块更改在线产生重复的坐标 #783

当我尝试旋转/镜像我的 gcode 文件时,bCNC 会生成一条输出线,该线两次具有相同的坐标集。然后在尝试运行该文件时抛出错误 25。我已经能够在两台不同的机器上重现这个错误,运行最新的 bCNC。在能够毫无问题地旋转/镜像我的 gcode 文件之后,这是随机开始的。实际上,我没有以任何方式更新或更改 bCNC,甚至没有重新启动它。如果你继续旋转/镜像,它会在你每次按下按钮时为每条线添加另一组坐标。如果您将它们全部选中,则任何一个块或所有块都会发生这种情况。

编辑器块更改在线产生重复的坐标 #783
编辑器块更改在线产生重复的坐标 #783

这是我的 gcode 文件,由 kicad/flatcam 生成。我没有以任何方式更改此文件和以前工作的文件之间的工作流程。

G21
G90
G94
F10.00
G00 Z1.0000
M03 S10000
G4 P1
G00 X10.1600Y-10.1600
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X10.1600Y-12.7000
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X10.1600Y-15.2400
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X10.1600Y-17.7800
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X10.1600Y-20.3200
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X10.1600Y-22.8600
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X10.1600Y-25.4000
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X10.1600Y-27.9400
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X10.1600Y-30.4800
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X10.1600Y-33.0200
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X10.1600Y-35.5600
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X10.1600Y-38.1000
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X10.1600Y-40.6400
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X10.1600Y-43.1800
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X10.1600Y-45.7200
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X35.4600Y-10.1600
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X35.4600Y-12.7000
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X35.4600Y-15.2400
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X35.4600Y-17.7800
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X35.4600Y-20.3200
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X35.4600Y-22.8600
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X35.4600Y-25.4000
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X35.4600Y-27.9400
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X35.4600Y-30.4800
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X35.4600Y-33.0200
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X35.4600Y-35.5600
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X35.4600Y-38.1000
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X35.4600Y-40.6400
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X35.4600Y-43.1800
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X35.4600Y-45.7200
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X8.8900Y-82.5500
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X11.4300Y-82.5500
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X13.9700Y-82.5500
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X16.5100Y-82.5500
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X7.7800Y-72.6600
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X10.3200Y-72.6600
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X31.0200Y-56.8800
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X33.5600Y-56.8800
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X36.1000Y-56.8800
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X36.1000Y-72.1200
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X38.6400Y-56.8800
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X38.6400Y-72.1200
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X41.1800Y-56.8800
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X41.1800Y-72.1200
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X29.0700Y-91.7700
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X34.1500Y-91.7700
G01 Z-2.0000
G01 Z0
G00 Z1.0000
G00 X0.0000Y0.0000
M05
M05
编辑器块更改在线产生重复的坐标 #783
作者
瓦伦丁阿尔坎 评论了 2018 年 3 月 23 日  

遇到此问题的任何人都可以使用以下 python 脚本来修复您的文件:

from __future__ import print_function

fname = input("Please enter the file name to fix: ")
print("Opening file " + fname)

with open(fname) as f:
    content = f.readlines()

content = [x.strip("\n") for x in content]
content = [x.split(" ") for x in content]


i = 0
for line in content:
	if line[0] == "G0" or line[0] == "G1":
		print(line)
		content[i] = line[:3]
	i += 1
		
for line in content:
	print(line)
	
with open(fname + "_fixed", 'w+') as f:
	for line in content:
		f.write(" ".join(line) + '\n')

在完成转换后,在 bCNC 生成的 gcode 文件上运行它。

这仅适用于具有 G0 命令且后跟 X 和 Y 的文件。如果您在其中也有 Z 移动,则需要更改此行:

内容[i] = 行[:3]

对此:

内容[i] = 行[:4]

但仅适用于其中带有 Z 的行。

编辑器块更改在线产生重复的坐标 #783

我也有些混乱!当你也移动 gcode 时它会影响你吗?或不 ?

编辑器块更改在线产生重复的坐标 #783
所有者

感谢您的报告。我刚修好了,你可以用新主人测试