开源改变世界!!

新的主轴/激光功能 #684

推推 grbl 2年前 (2022-10-19) 251次浏览 0个评论
关闭
bdring 打开了这个问题 on 30 Nov 2020 · 18 条评论
关闭

新的主轴/激光功能第684章

bdring 打开了这个问题 on 30 Nov 2020 · 18 条评论

注释

新的主轴/激光功能 #684
所有者

婚戒 评论 on 30 Nov 2020

Devt 分支上的新主轴/激光功能

我们在 Devt 分支上有一些新的主轴特性。有很多要求支持带有主轴和激光器的机器。您现在可以在不重新启动的情况下切换主轴类型并调整相关设置。

您现在为这样的激光器指定引脚。

#define LASER_OUTPUT_PIN    GPIO_NUM_nn   // required
#define LASER_ENABLE_PIN    GPIO_NUM_nn   // optional

主轴销的定义与以前一样。使用的引脚编号可以与激光器不同或相同。

当您发送$Spindle/Type=Laser时,它将使用激光设置。一个新的设置$Laser/FullPower=nnn用于告诉 Grbl 你想要功率映射的范围。现有的$GCode/MaxS-nnnn设置仍用于主轴。这允许在 2 种类型之间快速切换,而不会损失您的最大 RPM 或激光最大功率。

必须在空闲模式和主轴关闭 (M5) 时进行所有更改。每次更改都会重新初始化设备,因此频率和引脚反转之类的东西都会生效。

我们希望得到一些反馈和人们对此进行测试。

未来

这只是对即将发生的事情的一种体验。我们希望将这种实时更改功能扩展到大多数功能。理想情况下,您编译一次并从 SD 卡加载您的机器定义或通过设置对其进行实时调整。

新的主轴/激光功能 #684 bdring 添加了 增强 新功能或请求标签 on 30 Nov 2020
新的主轴/激光功能 #684

非常好; 我非常感谢您扩展 Grbl 设置并转向即时配置所有内容的明智方式

我刚刚将我的 3 轴板升级到main分支(日期20201212为 5 月的上一个固件),并认为在文件中包含和描述这些设置会很好Machines/template.h。在升级时错过了此更改后,我对组合的激光/主轴机器感到有些困惑。尽管检查了Machines/3axis_v4.hMachines/template.h文件以尝试捕获我需要的任何新设置。

我的机器在它的主轴和激光模块之间共享 PWM 和启用引脚(通过拨动开关),我只是假设我可以保留PWM配置中的主轴类型,定义 PWM 引脚,一切都会像以前一样工作。

但是,当我在一个简单的激光作业上测试升级时,它在第一次切割时失败了:
MSG:M4 requires laser mode or a reversable spindle
在一些混乱之后(最终,查看源代码)我意识到我需要LASER_ 在我的自定义机器配置中添加引脚的定义,允许我将主轴类型切换为Laser并成功运行作业。我的主轴不能通过 IO 引脚可逆。

我认为值得在这里发表评论,以防其他人被抓住。特别是因为在上面搜索MSG:并没有为我返回任何匹配项。作为参考,这里有一个乏味的日志记录,我已经超出了控制器的响应:

$32
   $32=1
 
$Laser
   $Laser/FullPower=1000
   $GCode/LaserMode=On
 
$Spindle
   $Spindle/Enable/Invert=Off
   $Spindle/Enable/OffWithSpeed=Off
   $Spindle/Delay/SpinDown=0.000
   $Spindle/Delay/SpinUp=0.000
   $Spindle/PWM/Invert=Off
   $Spindle/PWM/Frequency=5000.000
   $Spindle/PWM/Off=0.000
   $Spindle/PWM/Min=0.000
   $Spindle/PWM/Max=100.000
   $Spindle/Type=PWM
    
$Spindle/Type=Laser
   [MSG:Laser spindle on Pin:GPIO(17), Enbl:GPIO(16), Freq:5000Hz, Res:13bits Laser mode:On]

M4
   ..Works as expected

$Spindle/Type=PWM
   [MSG:PWM spindle Output:GPIO(17), Enbl:GPIO(16), Dir:None, Freq:5000Hz, Res:13bits]

M4
   [MSG:M4 requires laser mode or a reversable spindle
   .. Now I understand what is happening I appreciate getting an error here, I'm happy to be blocked if I accidentally run 
      a laser job without changing the spindle type to Laser!
新的主轴/激光功能 #684

在过去的几天里,我一直试图让 PWM 激光控制工作,但我要么在输出引脚上没有 pwm,要么 M3/M4 Sxx 似乎停止工作。

根据我试过的维基:

#define SPINDLE_TYPE            SpindleType::Laser
#define LASER_ENABLE_PIN        GPIO_NUM_33  // ESP32 Uno Bottom 3 Pin
#define LASER_OUTPUT_PIN        GPIO_NUM_32  // ESP32 Uno Bottom 3 Pin

但是当我尝试手动 M3 S100 时,输出端没有 PWM。

当我尝试:

#define DEFAULT_LASER_MODE      1

/*
#define SPINDLE_TYPE            SpindleType::Laser
#define LASER_ENABLE_PIN        GPIO_NUM_33  // ESP32 Uno Bottom 3 Pin
#define LASER_OUTPUT_PIN        GPIO_NUM_32  // ESP32 Uno Bottom 3 Pin
*/

#define SPINDLE_TYPE            SpindleType::PWM

#define SPINDLE_PWM_PIN         GPIO_NUM_32 
#define SPINDLE_PWM_CHANNEL     0
#define SPINDLE_PWM_BASE_FREQ   5000

#define SPINDLE_ENABLE_PIN      GPIO_NUM_33 
#define SPINDLE_OUTPUT_PIN      GPIO_NUM_32 

#define LASER_ENABLE_PIN        GPIO_NUM_33  // ESP32 Uno Bottom 3 Pin
#define LASER_OUTPUT_PIN        GPIO_NUM_32  // ESP32 Uno Bottom 3 Pin

当我手动 M3 Sxx 时,我可以在 Scope 中看到实际的 PWM,但随后 M4 拒绝工作。

我完全误解了这里的东西还是还有一些小错误?

新的主轴/激光功能 #684
所有者作者

婚戒 评论 2021 年 11 月 8 日

使用 M4,您必须有运动。尝试 …

G91
M4S1000
G1 F200 X20

在运动中进行测量。

新的主轴/激光功能 #684

是的,我知道“运动”约束,但我没有走那么远,因为它告诉我 M4 是无效的 gcode。

新的主轴/激光功能 #684
所有者作者

婚戒 评论 2021 年 11 月 8 日

发送这个以确保您处于激光模式
$32=1

新的主轴/激光功能 #684

对于二极管激光雕刻机/切割机并且应该能够使用 M3 和 M4 的机器,“正确”的机器配置是什么样的?我试过 $32=1,以及上面所有的主轴变化,比以前更困惑。让我们从它在配置中的样子开始,然后我可以开始运行特定的调试测试,以便您更好地了解正在发生的事情。

新的主轴/激光功能 #684
所有者作者

婚戒 评论 2021 年 11 月 8 日

无论您的配置如何,都可以更改 $32。

这将设置默认值,但可以随时将其更改为 0。

#define DEFAULT_LASER_MODE      1
新的主轴/激光功能 #684

时间0 评论 2021 年 11 月 8 日  

是的,请参阅上面的代码段,我也尝试过。我尝试在其中设置 rgbl32 web ui 配置并将其作为 gcode 发送。在过去的几天里,我尝试了很多方法来让实际的 PWM 输出正常工作。让我们忽略我之前所做的一切,以干净的方式解决我的测试中的混乱/混乱。如果它是在引脚 GPIO_NUM_32(默认且仅主轴/工具)上具有 PWM 控制且可以使用 M3 和 M4 的二极管激光器,那么主轴的“正确”机器定义配置应该如何?

新的主轴/激光功能 #684
所有者作者

婚戒 评论 2021 年 11 月 8 日

设置
$32=1
并运行测试。
在继续为您提供帮助之前,我需要该调试信息。

新的主轴/激光功能 #684

G91 M4S500 G1 F200 X20 在引脚上显示 PWM。

1000 是直接查看 PWM 是否工作的坏值。

新的主轴/激光功能 #684

但正如我之前所说,这现在是 PWM 硬件定义,而不是 wiki 文档中的激光定义……这就是我想从那里开始的原因……

新的主轴/激光功能 #684
所有者作者

婚戒 评论 2021 年 11 月 8 日

暂时忽略定义。
它以您想要的方式运行吗?

新的主轴/激光功能 #684

目前是。但是当我“忽略定义”时,我不知道我在做什么或它为什么工作以及我需要将什么作为启动 gcodes 放入 CAM 中,以及什么不是作为机器默认设置的。

目前看起来它正在使用 M4 S500 做它应该做的事情(在移动时):

新的主轴/激光功能 #684

而且 M3 S100 似乎也在工作:

新的主轴/激光功能 #684

到目前为止,grbl_esp32 做得非常简单和出色,corexy、sdcard、oled 显示器——我非常感谢这个项目的存在。我真的没想到像简单的 PWM(无论如何,esp32 应该在硬件中使用 ledc 模式做的事情)让我在几天内离开我 :)

新的主轴/激光功能 #684
所有者作者

婚戒 评论 2021 年 11 月 8 日

如果您寻求帮助,我也需要了解情况。

我觉得你的配置没问题。沿着 $32 行的某处更改为 0。没有办法从配置文件中阻止它。这是激光 CAM 程序需要访问的动态设置。

它的行为方式与 Grbl 相同。

FluidNC 是下一代 Grbl_ESP32。激光模式会根据您使用的主轴类型自动更改为正确的模式。

新的主轴/激光功能 #684

a) 你用的是什么板子?至少有一块板在 pwm 输出电路中有一个电平转换器,这需要一些技巧来确保它被正确启用。
b) 您是否尝试过仅定义了激光引脚而不双重定义任何引脚的定义文件?

新的主轴/激光功能 #684

如果您寻求帮助,我也需要了解情况。

是的,显然 :) 这就是为什么我建议我们从头开始,这样你和我就有相同的状态可以建立。不想听起来“有资格”或忘恩负义,这似乎更有意义,这样我们在运行测试时都知道我们在哪里。非常感谢所有帮助。

我觉得你的配置没问题。沿着 $32 行的某处更改为 0。没有办法从配置文件中阻止它。这是激光 CAM 程序需要访问的动态设置。

对我来说,配置与 wiki/docs 建议的完全相反,只是尝试不同主轴参数组合的“蛮力”结果。我本来希望这是“正确的”:

#define SPINDLE_TYPE            SpindleType::Laser
#define LASER_ENABLE_PIN        GPIO_NUM_33  // ESP32 Uno Bottom 3 Pin
#define LASER_OUTPUT_PIN        GPIO_NUM_32  // ESP32 Uno Bottom 3 Pin

但这是当前正在运行的(绝对不是根据激光的 wiki/docs)

#define DEFAULT_LASER_MODE      1

#define SPINDLE_TYPE            SpindleType::PWM

#define SPINDLE_PWM_PIN         GPIO_NUM_32 
#define SPINDLE_PWM_CHANNEL     0
#define SPINDLE_PWM_BASE_FREQ   5000

#define SPINDLE_ENABLE_PIN      GPIO_NUM_33 
#define SPINDLE_OUTPUT_PIN      GPIO_NUM_32 

#define LASER_ENABLE_PIN        GPIO_NUM_33  // ESP32 Uno Bottom 3 Pin
#define LASER_OUTPUT_PIN        GPIO_NUM_32  // ESP32 Uno Bottom 3 Pin

它的行为方式与 Grbl 相同。

FluidNC 是下一代 Grbl_ESP32。激光模式会根据您使用的主轴类型自动更改为正确的模式。

FluidNC,从来没有听说过,去看看,谢谢你的建议。

新的主轴/激光功能 #684
所有者作者

婚戒 评论 2021 年 11 月 8 日

这是我们Discord 服务器的邀请。

FluidNC 现在仍然是“测试版”。您应该检查一下,但请稍等。

新的主轴/激光功能 #684

时间0 评论 2021 年 11 月 8 日  

a) 你用的是什么板子?至少有一块板在 pwm 输出电路中有一个电平转换器,这需要一些技巧来确保它被正确启用。

啊,我用这个完全进入了黑客模式,因为我想在没有自定义板的情况下给 grbl_esp32:

https://www.amazon.de/gp/product/B08BV3L92G/
https://www.amazon.de/gp/product/B07YWQJCNY/

我想看看是否可以使用这些 COTS 板。那里根本没有电平转换器。

新的主轴/激光功能 #684

b) 您是否尝试过仅定义了激光引脚而不双重定义任何引脚的定义文件?

是的,见上文,根据文档 – 并且没有 pwm 输出。至少不是在 M3 上,我还没有用它测试过 M4 运动,但我希望 M3 也可用。

新的主轴/激光功能 #684
 
添加标题文本添加粗体文本,<Ctrl+b>添加斜体文本,<Ctrl+i>
添加引号,<Ctrl+Shift+.>添加代码,<Ctrl+e>添加链接,<Ctrl+k>
添加项目符号列表,<Ctrl+Shift+8>添加编号列表,<Ctrl+Shift+7>添加任务列表,<Ctrl+Shift+l>
直接提及用户或团队引用问题、拉取请求或讨论

添加已保存的回复

喜欢 (0)

您必须 登录 才能发表评论!