littlebot
Published on 2025-04-07 / 0 Visits
0

【源码】基于C++的Prusa i3 3D打印机固件

项目简介

本项目是Prusa i3系列3D打印机的开源固件,基于Marlin 1.0.x开发,支持MK3S/MK3/MK2.5S/MK2.5等型号的打印机。该固件提供全面的3D打印机控制功能,采用模块化设计,能灵活适配不同硬件配置和用户需求。

项目的主要特性和功能

  1. 打印控制:支持从SD卡读取G代码文件打印,具备步进电机与温度控制功能。
  2. 温度控制:利用PID算法精准控制热床和喷嘴温度,保障打印质量。
  3. 传感器管理:支持多种传感器(如热敏电阻、丝材传感器等)的数据读取与处理。
  4. 文件管理:支持SD卡文件的读取、排序、删除等操作,便于管理打印文件。
  5. 多语言支持:可进行多语言切换,用户能按需选择界面语言。
  6. 自动校准:提供自动床面校准和第一层校准功能,确保打印平台水平。
  7. 菜单导航:通过LCD显示屏和旋钮,方便用户进行菜单操作和设置。

安装使用步骤

1. 复制仓库

复制本项目的源码到本地(具体命令缺失,待补充)。

2. 设置打印机型号

进入Firmware/variants/目录,选择与您的打印机型号对应的配置文件(.h文件),并将其复制到Firmware/目录下,重命名为Configuration_prusa.h

3. 编译固件

Linux 环境

  • 进入项目根目录,运行命令: bash ./build.sh
  • 编译完成后,生成的固件文件将位于PrusaFirmware/lang/firmware.hex

Windows 环境(使用Arduino IDE)

  1. 安装Arduino IDE(推荐版本1.8.5)。
  2. 添加Prusa Rambo板的支持:
  3. 打开Arduino IDE,进入File -> Preferences -> Settings
  4. Additional Boards Manager URLs中添加相应URL(具体URL缺失,待补充)。
  5. 打开Tools -> Board -> Board Manager,安装Prusa Research AVR Boards by Prusa Research
  6. 修改platform.txt文件,添加-Wl,-u,vfprintf -lprintf_flt -lmcompiler.c.elf.flags中。
  7. 打开Firmware.ino文件,选择Tools -> Board -> PrusaResearch Einsy RAMBo,然后点击Sketch -> Verify/Compile进行编译。
  8. 编译完成后,可通过Sketch -> Upload将固件上传到打印机。

4. 刷入固件

  • 使用PrusaSlicer:打开PrusaSlicer,进入Configuration -> Flash printer firmware,选择生成的firmware.hex文件进行刷入。
  • 使用Arduino IDE:编译完成后,直接点击Sketch -> Upload将固件上传到打印机。

5. 运行测试

项目包含自动化测试代码,使用CMake和Ninja进行测试: bash mkdir Prusa-Firmware-test cd Prusa-Firmware-test cmake -G "Eclipse CDT4 - Ninja" ../Prusa-Firmware ninja ./tests

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】