开源改变世界

支持不同的 PWM 主轴(简单 H 桥) #364

推推 grbl 3年前 (2023-02-05) 250次浏览
关闭
spsspssps 打开了这个问题 2022 年 4 月 7 日 · 3条评论
关闭

支持不同的 PWM 主轴(简单 H 桥)#364

spsspssps 打开了这个问题 2022 年 4 月 7 日 · 3条评论

评论

支持不同的 PWM 主轴(简单 H 桥) #364
贡献者

我已经在我的自定义 CNC 板上成功测试了 fluidnc https://github.com/spsspssps/spscnc我的卡使用 H 桥驱动主轴,并且需要 2 个非同步 PWM 信号。

当前原型原理图(带带):
https ://github.com/spsspssps/spscnc/blob/releases/1.0/1.0.2/doc/design.description.md

当前的 PWMSpindle 驱动程序支持 DIRECTION 和 OUTPUT,我的驱动程序需要 OUTPUT_A、OUTPUT_B。
当主轴正转时,OUTPUT_A输出PWM,OUTPUT_B输出GND。
主轴逆时针时,OUTPUT_A输出GND,OUTPUT_B输出PWM。

我在本地启动了一个功能分支,如果此功能获得批准,我可以提交拉取请求,但我有两种可能的方法来实现它:

a) 扩展PWM类,增加一个反向管脚,根据方向,PWM设置在OUTPUT_A或OUTPUT_B上,管脚命名为_output_pin和_output_b_pin(但我看到BESC控制器已经继承了这个类,我没有想弄得一团糟
。b) 添加一个派生类(来自 PWM 或 ONOffSpindle,并将其称为 SimpleHBridge,覆盖 PWMSpindle 类中的几个方法,以便这些更改不会影响任何其他现有驱动程序。

我可以自己编写功能,但我想就如何与项目的其余部分协调地介绍它达成一致。

支持不同的 PWM 主轴(简单 H 桥) #364 spsspssps 添加了 增强 新功能或要求标签 2022 年 4 月 7 日
支持不同的 PWM 主轴(简单 H 桥) #364
合作者
米奇布拉德利 评论了 2022 年 4 月 7 日  

子类化可能是最好的。我会在没有 Simple 的情况下称它为 HBridge – 除非你已经有了一个不太简单的 HBridge,所以区别意味着什么。

支持不同的 PWM 主轴(简单 H 桥) #364

我要问的另一件事是,如果您的 PR 被接受,您将长期潜伏在 Discord 上并回答与之相关的任何问题。我厌倦了支持其他人的代码。

支持不同的 PWM 主轴(简单 H 桥) #364
贡献者作者

谢谢,
我同意不时潜伏,并在源代码和主要文档中添加驱动程序文档。我将从子类化开始,我会尽量不偏离原始类太多。