我用从 github 分叉的 Marlin bugfix-2.0.x 构建了一个 3D 打印机。
我正在尝试设置结点偏差的默认值,这样我就不必在每次重新启动打印机时通过打印机的屏幕/界面更改它,但我认为正确设置它并不能解决问题。
我的想法是在 Configuration_adv.h 中取消注释会起作用:
#define JUNCTION_DEVIATION_MM 0.02
我尝试if
在它出现的默认块的内部和外部设置此定义,只是为了确保问题不是因为我没有设置其他内容,并且当此define
语句受保护时,我会得到相同的行为或不受保护if
此外,默认if
块是这样的:
#if ENABLED( JUNCTION_DEVIATION )
#define JUNCTION_DEVIATION_MM 0.02
#endif
取消注释会给#define JUNCTION_DEVIATION
我留下一个编译器错误,告诉我我不需要这样做,所以我没有看到任何我应该启用以使其使用 JUNCTION_DEVIATION_MM 设置的内容。换句话说,我实际上不能再启用“JUNCTION_DEVIATION”,所以我必须打破 JUNCTION_DEVIATION_MM 设置,if
但它仍然没有效果。
设置好这个参数后,当我给打印机重新上电时,结点偏差被设置为0(虽然调整旋钮一触使其跳到0.010,所以我认为显示为“0”实际上可能意味着“未设置” ),这会导致每次角度变化时出现明显的停止/启动急动,直到我手动设置结点偏差。
我当前的Configuration.h和Configuration_adv.h取自这个 Marlin fork。
以防万一,我在带有 TMC2208 驱动程序的 SKR V1.3 上以 24V 运行它。
任何想法我错过了什么?我确定这很简单,只是我还没有找到。
更新: 10 天后仍然没有解决方案。以下是我发布此请求的另一个论坛的其他信息:
你有没有运行
M502
和M500
更新固件后?
我深入研究了一点,我要么遇到了一个错误,要么就是我根本不明白我应该看到什么。
我发送这个命令:
M205 J0.020
然后验证是否正确设置了结点偏差(它是) 然后:
M500
回应如下:
Settings Stored (616 bytes; crc 51371)
然后我发送这个:
M503
而 M205 的报告缺少我刚刚确认已更改并正在工作的设置:
...
M205 B20000.00 S0.00 T0.00
...
并且重新上电或重置控制器会导致相同的结果:结点偏差重置为 0。
更改设置并验证它是否有效后,我不应该立即在 M205 行中看到“J0.020”吗?