http://learn.makerlab.me/guides/1/articles/2
mega 2560板子在3d打印机中相当于大脑,控制这所有的3d打印配件来完成复杂的打印工作,但mega2560不能直接使用,需要上传(upload)固件(firmware)才可以使用。
1、下载固件——Marlin
由于Marlin固件的强大功能和简单易用,所以这里暂时只介绍Marlin固件。
Marlin原版下载地址(很多参数都需要自己配置):
我自己配置的Marlin固件大部分参数已经改好:http://vdisk.weibo.com/s/dt1ol2fSahCM
delta机型固件:http://vdisk.weibo.com/s/dt1ol2fSahjs
我的淘宝店铺:MakerLab
2、配置固件参数
如果你下载的是我提供的固件,那么大部分参数不需要调整,基本上烧入后就可以进行后面的工作了。但下面需要配置的参数还是知道比较好,免得因为固件配置有问题打印机而无法使用。没有提到的参数默认即可。#define BAUDRATE 250000
这是配置串口波特率的,只有上位机波特率和固件波特率相同来能通讯成功,一定需要注意。当然也不能随便改,常见的波特率为:2400,9600,19200,38400,57600,115200,250000。在3d打印机中常用的是后3个。#define MOTHERBOARD 33
这个参数是配置板子类型的,3d打印机主控板类型非常多,每个板子的io配置不尽相同,所以这个参数必须要跟你自己的板子类型相同,否则无法正常使用。我的板子是RAMPS1.4版本,对应的配置应该为33(单打印头配置),和34(双打印头配置)。如果你使用的是其它板子,请参考旁边的注释并选择合适的配置。#define TEMP_SENSOR_0 1
#define TEMP_SENSOR_BED 1
这两个参数分别配置温度传感器的类型。这是读取温度是否正常的重要参数,如果读取的温度不正常将不能工作甚至有很大的潜在危险(烧毁器件等)。配置为1说明两个都是100K ntc热敏电阻。如果你使用了其它温度传感器需要根据情况自行更改。#define EXTRUDE_MINTEMP 170
这个参数是为了防止温度未达到而进行挤出操作时带来的潜在风险,如果你做其它3d打印机,比如有朋友做巧克力打印机,挤出温度只需要45度,那么这个参数需要配置为较低数值,比如40度。const bool X_ENDSTOPS_INVERTING = true;
const bool Y_ENDSTOPS_INVERTING = true;
const bool Z_ENDSTOPS_INVERTING = true;
这里的三个参数是配置3各轴的限位开关类型的,配置为true,限位开关默认状态输出为1,触发状态输出为0,也就是机械限位应该接常开段子。如果你接常闭段子,则将true改为false。#define INVERT_X_DIR false
#define INVERT_Y_DIR true
这两个参数是比较容易错的。根据自己机械的类型不通,两个的配置不尽相同。但是原则就是要保证原点应该在打印平台的左下角(原点位置为[0,0]),或右上角(原点位置为[max,max])。只有这样打印出来的模型才是正确的,否则会是某个轴的镜像而造成模型方位不对。参考下图坐标。#define X_HOME_DIR -1
#define Y_HOME_DIR -1
#define Z_HOME_DIR -1
如果原点位置为最小值参数为-1,如果原点位置为最大值配置为1.#define X_MAX_POS 205
#define X_MIN_POS 0
#define Y_MAX_POS 205
#define Y_MIN_POS 0
#define Z_MAX_POS 200
#define Z_MIN_POS 0
这几个参数是配置打印尺寸的重要参数,参考上面的坐标系图来填写,这里需要说明的是坐标原点并不是打印中心,真正的打印中心一般在[(x.max-x.min)/2,(y.max-y.min)/2]的位置。中心位置的坐标需要在后面的切片工具中使用到,打印中心坐标应该与这里的参数配置匹配,否则很可能会打印到平台以外。#define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0}
配置回原点的速率,单位为毫米每分钟,如果你使用的是xy轴同步带传动,z轴螺杆传动,这个参数可以使用默认值。#define DEFAULT_AXIS_STEPS_PER_UNIT {85.3333, 85.3333,2560,158.8308}
这个参数是打印机打印尺寸是否正确的最重要参数,参数含义为运行1mm各轴所需要的脉冲数,分别对应x,y,z,e四轴。多数情况下这个数字都需要自己计算才可以。计算公式可以参考我的文章3d打印机各轴脉冲数计算方法。如果你不想自己计算可以用我的计算器:3d打印机脉冲数计算器
至此,最常用的参数都已经配置完成,可以开始使用了。 另外如果你使用了我的lcd板子还需要改//#define REPRAP_DISCOUNT_SMART_CONTROLLER
将前面的//
删除掉才可以正常使用。
3、上传固件
上传之前,windows用户需要提前安装驱动。 配置板子类型:Tools > Board > Arduino Mega 2560 ,如图
配置串口: Tools > Serial Port > 你的mega板子对应串口号一般是最后一个,如果是windows系统,串口号一般是com3、com4、com8之类的形式。如图
点击对号按钮来检查是否有错误,如图
再点击向右的箭头按钮来上传固件,如图
上传过程中,2560板子上的TX RX 和L对应的三个led灯都会闪。如果不闪了,说明上传完成,如图
上传中...
上传完成提示
如果上传成功,你就可以进入下一个步骤了,如果上传中出现问题而无法上传,请查看IDE下方的提示框,确认是什么问题后进行进行解决再上传,常见错误板子类型选择错误,串口选择错误等。