一、准备工作
“工欲善其事,必先利其器”,在开始工作之前,你应该准备下面所说的工具(包括软件和硬件)。
1、需要下载的软件
1.1 固件上传工具——Arduino IDE
这是上传固件的必备工具,有了这个软件让上传固件变的容易很多,插上USB,就可以轻松上传。
下载地址:
windows版本:
http://downloads.arduino.cc/arduino-1.5.5-windows.exeMAC版本:
http://downloads.arduino.cc/arduino-1.5.5-macosx.ziplinux 32位版本:
http://downloads.arduino.cc/arduino-1.5.5-linux32.tgzlinux 64位版本:
http://downloads.arduino.cc/arduino-1.5.5-linux64.tgz其它版本:Arduino
1.2 3d打印切片软件——Slic3r
这个软件是生产3d打印机能够识别的控制代码的必备工具。没有它,3d打印机将不能识别3d模型的格式。只有通过这个软件转化为G代码后,打印机才可以正常使用。而Slic3r是一个非常优秀的切片工具。
下载地址:
windows 32位版:
http://dl.slic3r.org/win/slic3r-mswin-x86-0-9-10b.zipwindows 64位版:
http://dl.slic3r.org/win/slic3r-mswin-x64-0-9-10b.zipMAC版本:
http://dl.slic3r.org/mac/slic3r-osx-uni-0-9-10b.dmglinux 32位版本:
http://dl.slic3r.org/linux/slic3r-linux-x86-0-9-10b.tar.gzlinux 64位版本:
http://dl.slic3r.org/linux/slic3r-linux-x86_64-0-9-10b.tar.gz如果你想通过源代码自己编译,请参考:slic3r
1.3 3d打印机控制软件(上位机)——Printrun
reprap官方上位机,界面简单,操作方便,是新手不错的选择。它是3d打印机的控制中心,它会不停的读取计算机上的G代码文件(由上面的切片软件生成),然后通过usb线传输给3d打印机主控板(mega2560)从而实现对打印机的精确控制。
下载地址:
MAC版本:
http://koti.kapsi.fi/~kliment/printrun/Printrun-Mac-12July2013.zipwindows版本:
http://koti.kapsi.fi/~kliment/printrun/Printrun-Win-Slic3r-12July2013.zip更多版本选择:Printrun
1.4 固件——Marlin
固件是安装在mega2560板子上的软件,功能强大的Marlin是不错的选择。
下载地址:
https://github.com/ErikZalm/Marlin/archive/Marlin_v1.zip下载后解压后,marlin文件夹里的所有文件就是固件的源代码,找到里面的pde或ino文件用IDE软件打开即可。
2、安装驱动
MAC和linux系统都不需要位mega 2560安装特定驱动,插上usb就可以使用了,由于mega 2560板子实际上是usb转串口,所以插上后如果正常,会多了一个串口出来。
2.1 windows操作系统安装驱动
当你安装好Arduino IDE后,来到IDE的目录,里面有一个
driver
文件夹,进去后找
mega2560 r3
字样的inf文件,如果找不到,这个目录下应该会有一个压缩文件,解压后就可以找到这个文件了,右键安装就可以了。这是插上mega2560板子,应该是可识别的设备了。
3、工具及配件
DIY 3d打印机没有必要的工具,几乎是不可能完成的,当然必要的配件也是必须的。
3.1 常用工具
在测试或安装3d打印机套件时,可能会用到的工具包括有,一字螺丝刀、剥线钳、压线钳、电烙铁、镊子、片口、尖嘴钳、高温胶带等等。
配套4
3.2 配件
一台完整的3d打印机是由几十个甚至上百个零件组合而成。如果想完成下面的测试或组成一台打印机,你应该有一下零件:
- 3d打印机主控套件:主要包含一个mega 2560主控板,一个RAMPS1.4拓展板和4个4988步进电机驱动板;
- 12V 200W开关电源:用于提供12V电压,可以使用电脑上的ATX电源,但接线时需要注意;
- 2个100k ntc热敏电阻:为了实现控制板对加热头及加热床的温度控制,需要有两个温度传感器,最方便的莫过于ntc 热敏电阻,100k电阻是不错的选择(大部分固件直接支持);
- 至少一个两相四线步进电机:如果你是简单测试,只需要一个步进电机就可以完成轮流测试,如果你要组成一台成品,你需要4~5台步进电机,Z轴根据机械结构的不同有的采用两台电机驱动。电机型号需要根据你自己的情况选择,一般来说普通42电机都可以胜任,需要注意的是4988最大支持的驱动电流是2A;
- 至少一个限位开关:限位开关是打印机用来确定位置的重要传感器,要组成完整的打印机至少需要3个限位来帮助打印机确定原点位置,限位开关种类很多,可以是机械式的、光电的、磁性的(霍尔)等;
- 12V加热管:如果你的机械是FDM(热溶式打印机),那么加热管几乎是必须的,用在加热头上面,可以选择12V 40W的加热管。如果你紧紧是测试主控板是否正常,可以不需要,因为ramps板子上有led指示灯,知道是否在通电;
- 12V风扇:用于散热的风扇,没有太多需要说明的,需要注意的是风扇正负极必须接对,否则不会转,也可以仅仅通过led指示来判断是否工作;
- 12V加热床PCB板:为了让打印材料更容易粘在打印平台上,以及防止冷却变形(主要是ABS材料),如果打印PLA材料,该板子可以不需要,如果测试也可以只通过led来指示;
4、准备开始
如果你已经把上面的软件硬件都准备好了,那么就可以进入下一个环节了。
二、配置固件并上传固件
mega 2560板子在3d打印机中相当于大脑,控制这所有的3d打印配件来完成复杂的打印工作,但mega2560不能直接使用,需要上传(upload)固件(firmware)才可以使用。
1、下载固件——Marlin,由于Marlin固件的强大功能和简单易用,所以这里暂时只介绍Marlin固件。
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 3
#define TEMP_SENSOR_BED 3
这两个参数分别配置温度传感器的类型。这是读取温度是否正常的重要参数,如果读取的温度不正常将不能工作甚至有很大的潜在危险(烧毁器件等)。如果你使用了其它温度传感器需要根据情况自行更改。
#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四轴。多数情况下这个数字都需要自己计算才可以。可以参考
http://calculator.josefprusa.cz/#steppers至此,最常用的参数都已经配置完成,可以开始使用了。 另外如果2004lcd板子还需要改
//#define REPRAP_DISCOUNT_SMART_CONTROLLER
将前面的
//
删除掉才可以正常使用。