注释
本周我会调查你在那个控制器上的问题。 |
它似乎对我有用。在激光模式下,主轴使能在 M3 和 M4 期间始终打开,在 M5 期间始终关闭。我正在使用库存 CPU_MAP_MPCNC_V1P2 cpu_map。 在激光模式… M3 的工作方式与非激光模式非常相似,只是 S 值会立即应用于 PWM。 M4 在加速和减速过程中补偿与所需进给速率相比的精确速度。因此,移动完成后它变为零。 这是一些适合我的 M3 gcode。注意所有的 S 值。这是由激光 Grbl 产生的。
|
您可以粘贴显示您遇到的问题的最少量 gcode 吗? |
我已经用你的 Gcode 测试过了。激光模式关闭时,激光打开。激光模式打开时,激光不开机。我在 pwm 输出上放了一个 LED 以欣赏调制。 以防万一,这是我的 $$ 配置:
正如所问,这是使用 lightburn 生成的最少量代码:
相同的结果.. 当 $32=1 时没有输出… 我真的不明白发生了什么。 |
版本信息: |
我可能在第 277 行附近发现了问题,在 stepper.cpp 中,查找这段代码 #ifdef VARIABLE_SPINDLE
// Set real-time spindle output as segment is loaded, just prior to the first step.
if (st_prep_block->is_pwm_rate_adjusted) {
spindle_set_speed(st.exec_segment->spindle_pwm);
}
#endif
将其更改为… #ifdef VARIABLE_SPINDLE
// Set real-time spindle output as segment is loaded, just prior to the first step.
spindle_set_speed(st.exec_segment->spindle_pwm);
#endif
编译并上传固件 |
明白了!现在在 pwm 引脚上的两种模式下都可以正常工作。干得好 … SPINDLE_ENABLE_PIN 应该在激光发射期间激活吗? |
对我来说… M3 为 SPINDLE_ENABLE_PIN, 它不依赖于 PWM 值。PWM 0 在 M3 期间仍然启用 |
不工作。我已经使用定义的 SPINDLE_ENABLE_OFF_WITH_ZERO_SPEED 进行了测试(如果是 M3S0)。一样。我明天会检查线路。现在是法国晚上 11 点 30 分。非常感谢您的大力支持。我会在我的测试中发布结果。 |
您在 MPCNC V1P2 控制器中进行测试吗?如果是这样,电源是连接到控制器还是仅连接到 USB 电源? |
不,正如线程开头所说,“我已经使用 MPCNCV1P2 pinount 连接了一个原型”。它不是 MPCNCV1P2(那里不再有售)。但是,是的,我正在测试这两种能力。 |
我仔细检查了接线,GPIO32(主轴启用)上的电平转换器坏了。修复后,SPINDLE_ENABLE 正常工作。可以关闭 Bug,并提交完成你在 stepper.cpp 上没有的修改。再次感谢! |
编辑:这是评论#42 ..答案?(道格拉斯·亚当斯)
我已经使用 MPCNCV1P2 pinount 连接了一个原型。固件使用 CPU_MAP_MPCNC_V1P2 pinout 编译,在 cpu Map 中,USE_SPINDLE_RELAY 被注释,COOLANT_FLOOD_PIN 设置为 GIO_NUM_2。
激光 SPINDLE_PWM_PIN 位于 GPIO_NUM_16(带 5V 电平转换器),SPINDLE_ENABLE_PIN 位于 32(也有电平偏移,暂时未使用),引脚 2 上的 COOLANT_FLOOD_PIN 连接到激光风扇的继电器。
当激光模式关闭时 ($32=0),激光功率通过 M3 S0 > 255/M5 得到适当控制。风扇正在工作 (M8/M9)。主轴启用引脚似乎不起作用(我已经在上面安装了 LED)。
由于激光模式只允许在不等待主轴上升的情况下即时更改 PWM,因此我尝试将其设置为 ($32=1)。
激光风扇(冷却液溢出)继续工作正常,但 SPINDLE_PWM_PIN 上不再有 PWM。
在这两种情况下,SPINDLE_ENABLE_PIN 都保持关闭状态。
现在的问题:
谢谢你的时间和耐心,巴特。再次非常感谢您所做的工作…
PS:激光代码是用 Lightburn 生成的。
JPC