如何重新编程新 Prusa MK3 MMU2 以接受更高的 Z 轴

3D打印 prusa-i3 固件 z轴 普鲁萨姆
2021-04-27 05:51:04

在上一个问题中,我将 Prusa Mk3 的 Z 轴高度从 250 毫米修改为 350 毫米。

在 MMU2 升级之前,我通过以下方式更改了打印机中的代码以接受新高度:我将 Arduino → Configuration_prusa.h → 轴设置 → 第 54 行更改为 #define Z_MAX_POS 210(效果很好)。

但是,新固件 v. 3.4.1 的布局有所不同,我不知道 Z 轴设置到哪里去了,如果它们仍然存在的话。任何人都可以指出我找到 Z MAX POS 设置的正确方向吗?

显然,我不太擅长编码,但看起来整个代码布局在 v. 3.4.1 中发生了变化

固件

Prusa MK3(固件 3.4.1) MMU2(固件 1.0.1)。Github 上的源代码可以在这里找到

2个回答

基本上,之前问题答案仍然有效,但您的具体问题将在下面解决。

通过回答来回答设置的位置:

但是,新固件 v. 3.4.1 的布局有所不同,我不知道 Z 轴设置到哪里去了,如果它们仍然存在的话。任何人都可以指出我找到 Z MAX POS 设置的正确方向吗?

要找到设置的位置,您需要转到 Prusa 固件(基于 Marlin 固件)的源代码存储库或下载带有源代码的 zip 文件并使用“grep”搜索实用程序来搜索文件。

该设置Z_MAX_POS位于电路板配置文件中(1_75mm_MK3-EINSy10a-E3Dv6full.h如果您有 MK3,则位于其中)。这可以在在线资源(github 页面)中找到。在线存储库位于此处使用搜索功能在该页面上的源代码文件中进行搜索,您可以找到您需要查找的任何设置。如果您输入“Z_MAX_POS”并向下滚动直到看到

#define Z_MAX_POS 210

如果您找到了MK3 板,您就找到了您要找的东西

通过回答来解决您的问题:

如何重新编程 NEW Prusa MK3 MMU2 以接受更高的 Z 轴?

Prusa 开发团队已经摆脱了Configuration_prusa.h你将不会在存储库中找到这个文件了

相反,它是说有重命名板变种文件之一(从“固件/变种”文件夹),对应于你要“Configuration_prusa.h”之机,并将其放置在“固件”编译之前的文件夹(请注意,这些是您可以在任何操作系统上执行的简单操作;即复制文件、粘贴文件、重命名文件)。您编译源代码之前,你需要改变的值Z_MAX_POS 210Z_MAX_POS 350请阅读自述文件,因为它比上面描述的更详细地描述了您需要做的事情(例如,使用正确的 Arduino IDE,例如 1.6.9,因为它由 Prusa 开发团队自己使用)。

引用自 README 文件:

描述文件重命名的部分:

在子目录“Firmware/variants/”中选择与您的打印机型号相对应的配置文件(.h),复制名为“Configuration_prusa.h”(或简单重命名)并复制到“Firmware/”目录中

描述编译的部分:

运行“Arduino IDE”;从放置源代码的位置的子目录“Firmware/”中选择文件“Firmware.ino”文件->打开进行所需的代码自定义;所有更改均由您自行承担风险!

选择目标板“RAMBo” Tools->Board->RAMBo 注意:不可能使用任何变体“Arduino Mega ...”,即使它是同一个 MCU

运行编译 Sketch->Verify/Compile

将结果代码上传到连接的打印机 Sketch->Upload

或者您也可以将输出代码保存到文件(所谓的 HEX 格式)“Firmware.ino.rambo.hex”:Sketch->ExportCompiledBinary 然后使用程序“FirmwareUpdater”将其上传到打印机注意:此文件在目录“固件/”中创建


要正确编译源代码,请注意使用正确的软件版本和库(Arduino IDE 1.6.9、RepRap Arduino 兼容主板 RAMBo 由 Ultimachine v. 1.0.1、Arduino AVR 板内置由 Arduino 更新为 v。 1.6.23)



边注:

对于那些有兴趣了解(并具有一些编程技能)为什么需要更改变体配置文件之一的名称的人来说,更深入一点。基本上,Prusa 为他们销售的不同打印机使用不同设置的不同电路板。这些打印机变体的所有设置都存储在该Firmware/variants文件夹中。当您重命名变体文件并将其放在更高的文件夹层Configuration_prusa.h (e.g.Firmware/variants/1_75mm_MK3-EINSy10a-E3Dv6full.h toFirmware/Configuration_prusa.h 中时),这些特定的打印机和电路板设置将包含在Configuration.h文件中(准确地说是第 43 行) C 代码包含语句:

#include "Configuration_prusa.h"

这个包含语句基本上将插入(如在内存中复制)Configuration_prusa.h文件中的语句,从而设置重要的常量,如:

#define MOTHERBOARD BOARD_EINSY_1_0a

还有很多。

最新固件:Prusa-Firmware-3.5.0\Prusa-Firmware-3.5.0 Arduino 1.6.9, RepRap Arduino 兼容主板 RAMBo by Ultimachine 最新版本 1.0.1, Arduino AVR Boards Built-in by Arduino latest version v. 1.6.23.

将 1_​​75mm_MK3-EINSy10a-E3Dv6full 文件从 Prusa-Firmware-3.5.0\Prusa-Firmware-3.5.0\Firmware\variants 复制到 Prusa-Firmware-3.5.0\Prusa-Firmware-3.5.0\FirmwareConfiguration_Firmware 。H。
打开固件 Arduino 文件。Configuration_prusa.h 显示在 Configuration_adv.h 旁边的选项卡中。更改//归位后的行程限制#define Z_MAX_POS 从210 到350。验证→ Sketch 使用225,482 字节(87%)的程序存储空间。最大值为 258,048 字节。全局变量使用 6,091 字节的动态内存。