开源改变世界!!

画全圆的问题 #384

推推 grbl 2年前 (2023-01-25) 203次浏览
关闭
paudr 打开了这个问题 2018 年 6 月 22 日 · 10 条评论
关闭

画全圆的问题#384

paudr 打开了这个问题 2018 年 6 月 22 日 · 10 条评论

注释

画全圆的问题 #384

当我将此 gcode 发送到我的 grbl 1.1f 激光机时,它会绘制一个圆圈,但在 laserGRBL 的预览中,不会出现 cricle。

G90
M4
G0 X25 Y12.5 F3000 S0
G3 X25 Y12.5 I-12.5 J0 F1000 S200
G0 X0 Y0 F3000
画全圆的问题 #384
所有者

感谢您的问题报告。我找到了错误代码,但我需要一些时间来找到最佳解决方案。

画全圆的问题 #384 arkypita 添加了 漏洞 标签 2018 年 6 月 26 日
画全圆的问题 #384
阿里米德茹 评论了 2018 年 6 月 27 日  

我不是程序员
,但像这样 – 工作:
G90
M4
G0 X25 Y25 F3000 S0
G0 X25 Y12.5
G2 X25 Y12.50001 I-12.5 J0 F1000 S200
G0 X0 Y0 F3000
M5
G0 X0 Y0

画全圆的问题 #384

画全圆的问题 #384
所有者

我已经知道所描述问题的原因:

  1. 我的绘图代码有一些优化,可以跳过在同一位置开始和结束的线段的绘制。此代码没有考虑到整个圆周在其自身性质上在同一位置开始和结束
  2. c# circle 函数需要计算起始角和结束角,结果相同,所以结果是 0° 的弧而不是 360°
画全圆的问题 #384
所有者

@Arhimed-Ru你的例子只是因为 0001

arkypita 添加了引用此问题的提交 2018 年 7 月 2 日

画全圆的问题 #384
斯图尔特B4 评论了 2018 年 7 月 3 日  

出于好奇,我尝试了上面 Arhimed-Ru 发布的代码。

画全圆的问题 #384

虽然在屏幕上看起来不错,但这就是结果。

画全圆的问题 #384

看起来它需要向右偏移才能更正它。
与版本 2.8.51 相同的结果

画全圆的问题 #384
作者

@arkypita我刚刚用 v2.8.51 测试了我的 gcode,问题已解决。非常感谢!但是我注意到预览屏幕上有不同的行为,但我不确定它是否有意为之。绘制的图形通过将其适合预览区域的宽度来缩放,忽略图形的高度。

这是一个截图:
画全圆的问题 #384

@StuartB4我相信您的问题出在固件方面而不是 lasergrbl。该软件向 grbl 固件发送 g 代码命令,并且是“移动”激光的固件。我已经测试了这两个代码(我的原始代码和@Arhimed-Ru版本)与我的激光至极有 grbl 1.1f,它工作正常。

这是结果(左边是我的,右边是@Arhimed-Ru一):

画全圆的问题 #384

画全圆的问题 #384
所有者
阿尔基皮塔 评论了 2018 年 7 月 4 日  

@frikeldon

我注意到预览屏幕上有不同的行为,但我不确定它是否有意为之。绘制的图形通过将其适合预览区域的宽度来缩放,忽略图形的高度。

行为没有改变。之前的版本中存在同样的问题,但您没有看到它,因为之前的屏幕截图是以 4:3 的尺寸(限制图像宽度)拍摄的,而最后一张屏幕截图是以 16:9 的尺寸拍摄的。

该问题涉及计算烧录图像的最小值和最大值 X 和 Y,该图像是根据每个段的每个起点和点的最小值和最大值计算得出的。
虽然这在线段上没问题,但在需要更复杂的计算而不是起点和终点坐标的弧上存在问题。

如您所见,计算出的大小是 25×13,这是错误的。

画全圆的问题 #384
所有者
阿尔基皮塔 评论了 2018 年 7 月 4 日  

@StuartB4我同意@frikeldon …你有固件或硬件问题

画全圆的问题 #384

我似乎对 grbl 或我的硬件没有问题。我有 grbl 1.1f。
我检查了硬件和 GRBL 设置,一切正常。
然后我决定使用重置按钮重置 Arduino,它现在工作正常,它一定是被弄糊涂了。