一、简介玩RepRap 3D打印机的朋友们,一定听说过Melzi主板。Melzi主板是一种在3D打印机领域应用非常广泛的紧凑型全合一3D打印机控制板,适合于单挤出头的3D打印机机型。
Melzi主板最开始是基于Arduino Leonardo进行的设计改进,Leonardo就是我们熟知的列奥纳多·达·芬奇,所以设计者选择了达·芬奇最钟爱的学生Francesco Melzi,弗朗西斯科·梅尔兹作为主板的名字。
弗朗西斯科·梅尔兹《青年妇女肖像》
Melzi主板有三个主要的版本,下面表格总结了三个版本的差异:
版本 | ATmega MCU | 步进电机驱动 |
Melzi 1.0 | 644P | A4988 |
Melzi 2.0 | 1284P | A4982 |
Melzi 2.0混合版 | 1284P | A4988 |
可以看出,实际上Melzi的三个版本之间差异不大,只有两种不同的PCB版型,Melzi 1.0与Melzi 2.0混合版,使用的是完全一样的PCB版型,而Melzi 2.0由于将步进电机驱动芯片换成了A4982,修改了步进电机驱动芯片局部的PCB走线。
目前在市面上,能够购买到的Melzi主板,基本上只有Melzi 2.0以及Melzi 2.0混合版两种。这两种唯一的区别就是步进电机驱动芯片,而A4988和A4982两种芯片,基本上只是封装外观不同,没有本质的区别,因此在选购时随便哪一种都是可以的。
上图是一片Melzi 2.0主板,所有芯片上都没有覆盖散热片。可以看到,主板上的步进电机驱动芯片是A4982。
Melzi 2.0以及Melzi 2.0混合版主板的主要参数:
- 处理器:ATmega 1284P
- 全部电气连接使用螺丝端子,不需要压线或者焊接
- 提供Micro SD卡(TF卡)接口,脱机打印G-code文件
- Mini USB接口
- 提供4个独立的A4982(或者A4988)步进电机驱动
- 提供3个独立的MOSFET驱动,用于挤出头加热、热床加热以及风扇
- 外形尺寸:210mm x 50mm x 17mm
- 重量:70g
一个3D打印机玩家经常问虎哥的问题,是Melzi与另一种特别常见的RepRap 3D打印机主板Arduino Mega 2560 + RAMPS的方案相比有哪些异同?我们专门列了一个表格,来说明这个问题:
| Melzi | Arduino Mega 2560 + RAMPS |
MCU型号 | ATmega 1284P | ATmega 2560 |
主频速度 | 16MHz | 16MHz |
FLASH容量 | 128K | 256K |
SRAM容量 | 16K | 8K |
PCB版型 | 全合一形式,单片PCB板,可靠性高 | 插接形式,由1片Arduino Mega 2560,1片RAMPS以及4片步进电机驱动板组成,灵活性高 |
电气连接端子 | 侧面螺丝端子,使用方便可靠,连接完成后接线整洁 | 直插杜邦线接口,容易出错,连接完成后接线混乱 |
SD卡支持 | 支持 | 不支持 |
挤出头支持 | 1个 | 2个 |
LCD支持 | 单线LCD,不需要额外转接板 | 双线LCD,需要额外转接板 |
如果你对Melzi主板感兴趣,想把Melzi主板用在自己的3D打印机上,可以到打印虎的
Melzi产品页面上看看。
有些朋友,会觉得Melzi不能支持双挤出头,或者感觉FLASH容量小,不够用,怎么办?对于这些问题,就必须给打印虎做一个小广告了。日前,打印虎正式推出了自主研发的下一代3D打印机主板Salai,这个主板采用了32位ARM体系结构,CPU运行速度是传统8位主板的5倍,可以有效提高3D打印的质量,同时支持双挤出头,自带3.5英寸的TFT全彩触摸屏,配合大幅改进的Repetier-firmware固件,拥有丰富的操作功能和良好的用户界面。这个产品的固件不仅功能丰富,还是开源的,可以满足深入学习的需求!这个产品不光性能高、颜值高,核心代码开源,价格还特别低,有兴趣的朋友,可以到打印虎的
产品页面,看看更详细的信息,这里就不多说了。
二、设计图纸既然Melzi是完全开源的设计,相关的设计图、电路PCB板图在哪里能下载到呢?如果你的英文没有问题,可以直接从github上下载Melzi的原始设计文档:
下面,我们就一起看一下这个zip文件中都有哪些内容。
解压缩zip压缩包之后,可以看到很多文件,其中有两张png图片。Melzi.png以及melzi-board.png,分别是电路原理图以及PCB版图。
这两张图我们都贴在这里,但因为图片很大,在页面上肯定是看不清楚的,如果需要看清晰版,还是要下载zip包之后在电脑上看。
Melzi 2.0原理图,文件名melzi.png
Melzi 2.0 PCB图,文件名melzi-board.png
虽然使用png格式的图片,用很多看图软件都可以直接查看,但对于电路图来说,特别是PCB设计图,仅仅使用看图软件查看是远远不够的。电路板上很多的细节,特别是正反面都有的PCB走线,如果只凭一张图片,就会有很多东西被覆盖住,完全看不出来了。对于这样的情况,就要求我们必须用EDA(电子设计自动化)软件进行查看了。
Melzi设计时,使用的EDA软件是EAGLE 6.2,在我写这篇文章的时候,EAGLE已经升级到7.5版,经过试验,EAGLE 7.5完全兼容EAGLE 6.2生成的文件,所以我们就用EAGLE 7.5来进行下面的介绍。最新的EAGLE 7.5版可以从这里下载(
打印虎本地下载,
百度云下载)。下载、安装完成之后,就直接可以开始使用了,因为这篇文章不是专门介绍EAGLE软件操作的,所以我们只是进行简要的介绍,一些细节如需要可参考其他的相关资料。
EAGLE启动到主界面之后,就可以使用菜单,打开Melzi的原理图和PCB版图了。首先我们使用菜单“文件”-“打开”-“原理图”,并选择刚才解压的zip压缩包中的melzi.sch文件。可以看到,Melzi的原理图以及PCB图,会在两个独立的窗口中打开。屏幕上首先应该能看到原理图窗口:
PCB图窗口,一开始应该是处于最小化状态,点击Windows的任务栏上的图标,就可以将这个窗口展现出来。这个窗口中实际打开的是melzi.brd文件:
在EAGLE软件里面,再观察原理图以及PCB图,就很方便了。可以任意放大缩小、分层、按照网络查看等,完全可以满足各种需求了。
除了以上介绍的4个文件之外,zip压缩包中还有不少文件。其中,melzi-bom.csv和melzi-bom.ods是Melzi主板的BOM(物料清单)文件,两个文件的内容一样,可以用Excel等电子表格工具软件打开。
剩下的其他文件,是用于Melzi主板制造的GERBER文件。这些文件都是从PCB版设计图中导出的,并不是基础文件,因此即使删除,也可以很容易地重新导出。至于GERBER文件如何生成、查看、使用,就不是本文的主题了,有兴趣的朋友可以查其他资料获得答案。
三、原理分析以上两节,从总体上介绍了一下Melzi主板,以及Melzi开源文件压缩包中的各个文件。这一节简单分析一下Melzi电路板原理图。
首先是MCU模块,这个模块设计非常简单,基本上就是使用了数据手册的参考设计。所有的通用IO引脚都利用上了,有几条还进行了重用。
电源部分,使用了7805DT提供+5V电源,另外用了一个跳线(位于主板中部),选择从USB供电还是从7805供电。对于7805来说,+12V的电源输入比较合适,如果用+24V的电源输入,这个芯片就会太烫,需要特别散热才行。
热床、挤出头以及风扇的控制(图中是风扇的一路,其他两路完全相同),使用了一个MOSFET管作为开关。因为热床要求的功率很高(大约100W),因此这里的MOSFET管电压降必须要小,才能避免在这里产生过多的热量。也是由于同样的原因,虽然原理图上没有体现,但需要从PCB板上体现的是,+12V的VMOT的导线需要尽可能宽,减小电阻和发热量。
主板上有4路步进电机驱动芯片,每一路的图纸是完全一样的。这里的设计也是标准设计,MS1/MS2/MS3(只有A4988有MS3)要与VCC短接,得到步进电机16细分。另外,SENSE1/SENSE2两个电阻,与获取REF参考电压的电位器,要成比例。如果是如图中设计的情况,SENSE1/SENSE2使用0.1R电阻,则REF参考电压应该设定在0.6~0.8V之间;如果SENSE1/SENSE2使用的是0.05R电阻(我在市面上的一些Melzi主板上见到过),则REF参考电压应该设定在0.3~0.4V之间。
XYZ三个限位开关,以及热床和挤出头的热敏电阻,都使用同样的方法与MCU连接。连接端子引出的两个头,一个接地,另一个接MCU通用IO接口,同时有一个10K电阻上拉。对于限位开关来说,MCU只要能判断0/1信号即可。但对于热床和挤出头热敏电阻来说,需要得到一个电压值,因此必须连接支持ADC的MCU接口。实际上,当前的Melzi设计中,热床和挤出头的热敏电阻,分别连接了MCU的ADC6和ADC7两个口。
Melzi主板使用了FTDI FT232RL芯片连接USB端口。使用这个芯片有两个好处,一是芯片已经固化了USB连接程序,不需要再自己刷入了;另一方面这个芯片还提供了3.3V的电源输出,可以直接给SD卡模块使用,省去了一个单独的电压转换芯片。
最后是SD卡的电路,这里使用一个74HC4050D芯片,将+5V的信号转为+3.3V的信号。
四、配套LCD模块现在越来越多的DIY爱好者给自己的3D打印机配上了LCD,这样可以脱离电脑单独控制3D打印机。Melzi主板配套LCD的最佳选择,是打印虎研发的Melzi专用12864中文LCD产品。这个LCD模块使用单条10pin JTAG导线连接,在标准Melzi 2.0主板上,不需要再增加转接板,即可直接连接LCD屏幕。
另一种方案,是使用原本给RAMPS设计的双线12864 LCD模块,这种LCD模块由于要支持上面自带的SD卡插槽(RAMPS上缺少SD卡插槽),所以必须用两根10pin JTAG导线连接。虽然Melzi自己已经有了SD卡插槽,但也必须把两根线都接好这个LCD模块才能工作。可惜对于双线LCD来说,Melzi主板上没有合适的插槽了,所以还需要一片转接板,才能正常使用。
很明显,与打印虎提供的Melzi专用12864 LCD模块方案相比,这个方案在使用的方便程度、完善程度上,就有差距了。
五、常见问题Melzi主板经过最近一两年的发展,也出现了很多相关的问题。特别是在国内,Melzi设计的开源,让大家学习到设计知识的同时,也带来了更多的混乱。下面我们就总结一下目前比较常见的一些Melzi主板的问题。
首先看图中这块Melzi主板,实际上,这块板子是否还能叫做Melzi我都有点存疑。这块主板最大的问题,就是对Melzi设计的修改过于混乱。既失去了Melzi主板原有的可靠性,又没有获得Arduino MEGA 2560 + RAMPS的灵活性。可以注意一下图中右下角的Melzi扩展端口,为了连接双线12864 LCD又不要扩展板,就直接把Melzi的扩展口改为了双10pin JTAG形式。这样,连接双线12864 LCD确实不需要扩展板了,但其他标准Melzi的扩展设备,也就不能连接了。如果用户购买了这样的主板,又买了某种针对标准Melzi主板设计的扩展设备,就只能自认倒霉了。
另一种相对比较常见的问题,出在FTDI芯片上。在元器件市场上有些假冒的FTDI FT232RL芯片,售价比原厂芯片便宜不少。有些主板制造商,为了降低主板的成本,就去使用这样的假冒芯片。这种芯片质量比较差,容易出问题,而且一旦厂商采取措施,这些芯片用户就只能承担相应的损失了。关于假冒FTDI芯片的问题,打印虎在之前的文章中已经比较详细的介绍过了,这里就不再详细说明了。有兴趣的朋友可以去参考
【打印虎】Melzi USB设备不能识别解决办法。
除了FTDI芯片这样的关键部件的质量问题之外,其他小零件也会有类似的问题。为了降低成本,有些主板制造商会采用价格较低质量较差的元器件。这里我们举一个小例子,如以下所示。
这里我们给了两块Melzi主板接线端子的特写照片。上面的Melzi主板,接线端子使用的是方形接口的接线端子,而下面的Melzi主板,使用了圆形接口的接线端子。这两者看起来很类似,但实际上用起来差别很大。方形接口的接线端子,不论导线较粗还是较细,都可以很容易地插入端子,并且牢牢固定住。但圆形接口就费劲多了,导线不能粗也不能细,要恰好符合端子的要求,而且插入的时候也很困难,比方形接口要多用几倍的时间才能搞定。价钱呢?不用我说大家也能猜到了,方形接口当然更贵。可能是因为制造工艺的原因,同样一个端子要比圆形接口的贵出2~4倍,虽然只是几毛钱,但积少成多,很多制造商还是选择了便宜的版本。
六、结束语到这里为止,我们对Melzi主板的介绍就全部结束了。不知道大家看了这篇文章之后,是否对Melzi主板的理解加深了一些呢?
如果你看了我们的文章,对Melzi主板很感兴趣,可以到我们的
产品页面查看产品详情,产品页面的底部,是打印虎淘宝店的连接,购买主板可以到打印虎淘宝店完成。
打印虎作为国内最专业的3D打印机主板设计生产厂家,竭诚为广大用户提供最优质最便宜的3D打印机主板产品。目前主要提供Melzi主板,以及Melzi的升级产品Salai主板。除了主板之外,打印虎还提供3D打印机软件、硬件研发定制服务。无论您是3D打印机DIY玩家,或者是3D打印机的生产企业,都欢迎来打印虎选购产品,洽谈合作。我们会用专业的态度加精湛的技术帮助你解决3D打印机研发中的困难,提供最优质产品和服务。希望能够得到广大用户的认同和选择。我们的
联系方式可以从打印虎网站获得。祝大家玩机愉快,每天都有好心情。