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

【源码】基于C语言和Arduino的3D打印机及USB复合设备综合控制系统

项目简介

本项目是综合性系统,包含两大部分。一是基于C语言和Arduino平台的3D打印机固件Marlin,结合Sprinter、grbl等开源项目特点,加入众多原创功能,能实现高精度3D打印控制;二是基于C语言/AVR32微控制器的USB复合设备固件,可实现USB设备的串行通信和存储功能,并通过用户界面展示设备状态。

项目的主要特性和功能

3D打印机固件Marlin

  • 运动控制:基于中断的运动控制,支持线性加速、高步率、前瞻功能,能保持高速运动和高转弯速度,减少角落处过度沉积;支持圆弧打印,提高打印质量并减少串行通信量。
  • 温度控制:基于中断的温度保护和采样,支持动态温度设定(AutoTemp)和PID调节,可根据挤出速度自动调整温度。
  • 存储和显示:支持SD卡及文件夹操作,可自主SD卡打印;具备LCD菜单系统,能实时调整参数和选择打印文件。
  • 其他功能:支持全限位开关、EEPROM存储参数、QTMarlin GUI调参、限位开关触发报告、加热器功率报告等。
  • 非标准M代码:提供多种特殊G代码和M代码,用于控制运动、温度、参数设置等。

USB复合设备固件

  • USB设备控制:基于Atmel的USB库,实现USB设备基本功能,包括设备状态管理、描述符管理、接口和端点管理、请求处理等。
  • 通信功能:CDC接口实现串行通信,支持数据发送和接收,以及通信线路编码设置和串行状态管理。
  • 存储功能:MSC接口支持标准SCSI命令,可实现数据读取和写入。
  • 用户界面:通过LED灯状态反映USB设备运行状态和操作情况。

安装使用步骤

3D打印机固件Marlin

  1. 安装Arduino软件IDE/toolset v22,下载地址:http://www.arduino.cc/en/Main/Software。
  2. 对于gen6和sanguinololu,将Marlin目录下的Sanguino文件夹复制到Arduino环境中:copy Marlin\sanguino \hardware\Sanguino。
  3. 安装Ultimaker的RepG 25 build,下载地址:http://software.ultimaker.com。
  4. 启动Arduino IDE,选择工具 -> 开发板 -> Arduino Mega 2560或你的微控制器,选择正确的串口。
  5. 打开Marlin.pde,点击验证/编译按钮,再点击上传按钮。
  6. 启动Ultimaker的Custom RepG 25,确保在偏好设置中启用“显示实验性配置文件”,选择Sprinter作为驱动,点击连接按钮。

USB复合设备固件

  1. 确保硬件平台支持AVR32微控制器和USB接口。
  2. 根据硬件平台和USB接口的具体配置,对固件进行必要的修改和配置。
  3. 将修改后的固件烧录到AVR32微控制器中,即可使用。使用时需遵守Atmel的USB库和硬件平台的文档和规范。

下载地址

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