ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

UM2复刻机电路详解:从电源选型到安全保护

UM2复刻机电路详解:从电源选型到安全保护 搬完机械架子之后这台UM2复刻机就到了最让人头秃的环节——电路。上一篇聊了框架、Z轴丝杆和滑车怎么装今天这篇把整台3D打印机的电气系统讲透。UM2Ultimaker 2虽然是2013年前后的老设计但它的电路拓扑在今天的低端FDM机器上依然随处可见一个主控板、几路步进驱动、一路热床、一路热端、两三颗热敏电阻、几个限位开关和风扇总共就这么点东西。说实话只要把每一路负载的电压、电流、控制信号搞清楚DIY电路部分一点都不可怕。这篇我会按我实际走通的方案从电源选型、主控板取舍、驱动电流设置到热床加热和安全保护完整捋一遍。适合正在复刻UM2、或者想给自己的老机器改电路的人参考看完你至少能回答三个问题电源电压到底选12V还是24V步进驱动Vref怎么调热床热端怎么接才不会烧主板1. 复刻UM2电路前先把整体拓扑装进脑子里1.1 UM2的电路系统到底由哪些部分组成UM2的电气架构在FDM打印机里属于非常标准的“单板机”结构。原机用一块Ultimainboard 2.0主控板板载Atmel ATmega2560单片机把处理器、步进驱动、MOS管功率开关、SD卡槽和USB转串口全部集成在一起。外部接的东西也不多一路18V直流电源适配器、四个步进电机X、Y、Z、挤出机E0、一个热床、一个热端加热棒、两个热敏电阻、三个机械限位开关还有散热风扇和控制面板。我自己复刻时没有照搬原版主板而是换成了更常见的RAMPS 1.4加Arduino Mega 2560组合。这样做的好处后面细说但整机拓扑逻辑没有变电源进来之后分两条路一路直接给热床、热端和驱动供电另一路经过板载稳压变成5V给主控芯片和逻辑电路。主控通过GPIO发出步进脉冲和方向信号驱动模块负责放大成电机线圈电流热床和热端则靠MOS管做开关配合PID控制算法来调节平均功率。温度反馈来自热敏电阻位置反馈来自限位开关整个闭环就是这么简单。1.2 不能照抄原版的三处设计原版好归好但复刻的时候有三处我建议不要直接照搬否则要么买不到零件要么会因为器件换代踩坑。第一处是电源电压。原版UM2用的是18V直流适配器这个电压在今天非常冷门大量国产电源适配器里几乎找不到这个规格定做又不划算。更麻烦的是步进驱动模块、加热棒、风扇这些周边器件基本都是按12V或24V来设计的你去买“18V专用”的加热棒选择面非常窄。所以复刻时绝大多数人会在12V和24V之间选一个我选了24V理由后面详细说。第二处是步进驱动。原版主板把驱动芯片直接焊在板上坏了很难换而且那个芯片型号早就停产了。现代DIY基本都用插拔式驱动模块比如A4988、DRV8825、TMC2209坏了直接拔下来换新的成本也就十几块到几十块。这个改动几乎是纯收益没有理由不换。第三处是热床接口。原版热床是专用PCB加热板接口位置和尺寸都是为UM2机架定制的普通玩家想买到同款并不容易。我的做法是买通用型PCB热床或铝基板热床自己重新规划走线和固定点只要加热面积和机械尺寸匹配效果完全一样。2. 电源系统别小看这个“适配器”2.1 原版为什么要用18V很多新手会问UM2原版为什么用18V而不是更常见的12V或24V这个要从功率公式说起。热床加热功率等于电压的平方除以热床电阻P U² / R。UM2原版热床电阻大约4.3欧姆在18V下功率大概是18²÷4.3 ≈ 75W这个功率对当时180mm×200mm的打印区域来说升温速度尚可接受。如果用12V同样一块热床功率会掉到12²÷4.3 ≈ 33W升温会变得非常慢冬天基本能把人急死。如果用24V功率会跳到24²÷4.3 ≈ 134W升温快但发热量也大对热床本身的均匀性和MOS管的过流能力都有更高要求。所以原版选18V本质上是在12V和24V之间取了一个折中既保证热床有一定的升温速度又不至于让功率器件压力太大。问题在于现在的DIY市场里24V生态已经非常成熟而18V周边器件却越来越难买。电源适配器要定制加热棒要定制连风扇都不好找所以复刻时硬守18V反而得不偿失。2.2 24V方案的改动点我最后选择了24V电源但这不是插上就能用下面几个地方必须同步改动。首先是步进驱动模块。A4988和DRV8825的耐压上限分别是35V和45V24V供电没问题TMC2209耐压更高也没问题。但要注意驱动模块的额定电流能力会受供电电压影响24V下同样的Vref会让电机电流更“冲”所以Vref设置要比12V时更保守一些这个在后面专门讲。其次是加热棒。UM2热端加热棒原设计是为18V准备的我直接换成了24V 50W的通用加热棒。这里有个硬指标加热棒电阻不能和电压乱配。原则是电阻电压²÷功率24V、50W对应电阻约为11.5Ω买回来最好量一下实际阻值偏差太大直接退货。第三是风扇。所有12V风扇都要换掉或者单独用buck降压模块供电绝对不能直接接到24V上否则基本是一通电就烧。我机箱风扇和热端风扇都换成了24V规格这个钱不能省。2.3 逻辑电源和风扇降压一块小buck模块解决主控板的5V逻辑电源通常由板载稳压芯片直接从主电源降压得到这部分不用操心。但复刻过程中会遇到一个实际情况手头剩下的12V风扇、或者想给自动调平传感器单独供电主板上没有对应的电源接口。我的做法是在电源输出端并了一个LM2596 buck降压模块把24V降到12V专门给12V设备用。选模块时注意两个参数一个是输入耐压要高于电源电压另一个是输出电流余量要大于负载总电流。风扇一般单个0.1A到0.2A测距传感器也不超过0.5A所以一个标称3A的buck模块就绰绰有余了。接的时候把输入端接到24V电源正负极输出端电压先用电位器调到12V再上负载不要带电调压否则容易烧模块。3. 控制板选型追原厂还是走通用路线3.1 三条路线的对比复刻UM2时控制板有三条路线可选我直接做个表格对比一下方案价格区间驱动模块固件支持适合人群原版Ultimainboard复刻板中高板载独立驱动芯片老版本Marlin为主追求原汁原味的玩家RAMPS 1.4 Mega 2560低插拔式A4988/DRV8825/TMC2209Marlin支持极好大多数DIY新手和进阶玩家现代一体板如MKS、BTT系列中板载或插拔式驱动新固件支持好带静音驱动追求简洁、静音、现代功能的玩家原版复刻板最大的问题是贵而且驱动芯片坏了只能找售后或者自己焊维修成本高。现代一体板胜在功能集成度高很多自带TMC静音驱动、掉电续打、Wi-Fi扩展之类但价格相对高而且一旦某一处坏了整板返修很麻烦。RAMPS 1.4属于最“古老”却最皮实的方案板子便宜到可以当耗材坏了直接换一块插头全在半天就能恢复。3.2 我选RAMPS的核心理由说实话我选RAMPS 1.4并不是因为它先进恰恰是因为它落后——资料多、问题多、踩过坑的人更多网上随便一搜就是各种解决方案。复刻一台老架构的UM2用一套被验证过无数次的电路方案是风险最小的选择。RAMPS 1.4和Mega 2560是两块板子上下叠放的Mega负责运算RAMPS上的插座负责输出。它的引脚分配很规律D4、D5、D6是三个步进驱动的STEP引脚D54到D57对应方向引脚热床在D8热端在D10风扇在D9。温度传感器接T0和T1限位开关分别接X、Y、Z位置。这套引脚逻辑在Marlin固件里都有默认定义即使不看源码也能猜到大概。另外一个原因是维修经验可以复用。RAMPS上最常见的损坏是MOS管烧穿、保险丝熔断、插针接触不良这些我都会修。换成一体板之后如果炸了只能整块换对预算有限的玩家来说不太友好。3.3 Marlin固件准备主板选好之后固件层面有一些必须改的地方。我用的是Marlin 2.0.x版本下载好源码后主要改这几处修改Configuration.h中的主板型号定义RAMPS 1.4对应#define MOTHERBOARD BOARD_RAMPS_14_EFB这里EFB表示挤出机、风扇、热床的接口顺序不要选错。修改温度传感器类型UM2热端热敏电阻是NTC 100K所以#define TEMP_SENSOR_0 1#define TEMP_SENSOR_BED 1这里的数值1代表Marlin内置的100K NTC曲线。修改限位开关逻辑#define X_MIN_ENDSTOP_INVERTING false如果用了常闭开关这一项就要设成false具体含义后面讲限位开关时会细说。修改串口波特率为250000对应#define BAUDRATE 250000否则上位机连接容易出问题。还有一点容易被忽略的是#define DEFAULT_AXIS_STEPS_PER_UNIT这是每毫米步数。UM2的XY传动结构和齿轮比与原版不同必须按自己机器的实际参数算不能照抄默认值。4. 步进驱动电路电机电流别靠蒙4.1 三款热门驱动的区别步进驱动是3D打印机电路里最影响体验的部分它决定了电机的噪音、发热和运动平稳性。市面上最常见的三款驱动模块我放在一起对比一下驱动型号最大电流供电范围噪音细分范围特点A49882A8~35V大1/16便宜老方案容易过热DRV88252.5A8~45V较大1/32性价比高适合24VTMC22092A4.75~29V有48V版小1/256插值静音UART可调需要散热对UM2这种老结构机器原生噪音就不小我用DRV8825跑了一段时间那个声音堪称“拖拉机”。后来换了TMC2209最大的改善是电机声音小到可以忽略打印时机器只剩风扇声。如果你的打印环境在卧室或办公室TMC2209基本是必选项。不过TMC2209的供电范围需要注意常规版本输入耐压在29V左右所以我选的24V电源刚好卡在安全线内。如果你手头是30V以上的电源就必须买高压版TMC2209或者干脆用耐压更高的驱动。4.2 Vref电流怎么算步进驱动模块上都有一个用来调节电流的电位器旋钮的位置决定了电机线圈里的电流大小而这个电压值就叫Vref。电流调太小电机会失步、缺相打印质量直线下降调太大电机会发热严重甚至烧驱动。所以Vref不能靠猜必须计算。三个驱动的计算公式并不一样A4988Imax Vref ÷ (8 × Rsense)模块上Rsense通常是0.1欧姆所以Vref ≈ Imax × 0.8DRV8825Imax Vref ÷ (5 × Rsense)同样Rsense为0.1欧姆时Vref ≈ Imax × 0.5TMC2209公式相对复杂常规做法是查模块厂家文档经验值一般落在0.8到1.1V区间对应0.8到1.0A的RMS电流以42步进电机为例这类电机的额定电流通常在1.5A到1.7A之间但我并不会按额定电流跑满。实际使用中机器运动轴的电流设置为额定电流的70%左右就够了挤出机可以稍微高一点因为要克服挤料阻力。比如额定1.5A的电机运动轴就按1.0A左右算DRV8825的Vref就调到0.5V左右TMC2209大约调到0.85V。调整的时候用万用表测电位器引脚和GND之间的电压边测边用小螺丝刀拧拧完先打印一个简单的方块测试如果电机表面温度超过70度手摸上去明显烫手那就说明电流过大了赶紧把Vref调低。4.3 跳线、方向和散热驱动模块上还有一组细分跳线RAMPS板上对应MS1、MS2、MS3三个引脚不同驱动模块对跳线组合的定义略有差异但目的都一样设置步进细分数。以DRV8825为例设置为1/32细分时三个跳线全部短接TMC2209在独立模式下默认的插值方式已经足够平滑一般把三个跳线全部短接或者按模块说明书设置即可。细分越高电机运动越平滑但到达最高速度时更容易丢步所以不要盲目追求最高细分1/16或1/32对FDM打印机都够用。方向问题也很常见。装好之后电机转反了不需要重新接线直接在Marlin的Configuration.h里把对应轴的INVERT_DIR改为true即可。如果只有挤出机反转则单独改INVERT_E0_DIR。散热方面A4988和DRV8825这种块头小、电流大的驱动芯片发热非常集中必须贴散热片最好再配一个小风扇对着主板吹。TMC2209虽然静音但发热量并不小特别是24V供电时同样建议加散热片。我吃过这个亏A4988没贴散热片打一个8小时的模型中途驱动过热直接停机零件废了不说还得排查原因。5. 加热系统热床和热端的安全红线5.1 热床阻值与功率计算热床是打印成败的关键一环而热床的电阻值直接决定了它在某个电压下的表现。复刻UM2时我买的是通用PCB热床卖家给的规格是24V、约100W实际用万用表一量电阻约5.7欧姆对应功率为24²÷5.7 ≈ 101W和标称一致。建议大家在安装热床前一定先测电阻。如果一块热床标称24V却只有不到3欧姆那接上24V功率就会超过190W主板上的MOS管和电源适配器都会承受巨大压力。反过来如果热床电阻超过8欧姆24V下功率不到72W升温就会慢得让人崩溃。5.2 MOS管直驱还是固态继电器RAMPS 1.4上热床和热端都是靠板上MOS管直接开关的12V方案下这样用没问题。但24V方案下热床电流接近4A到6AMOS管长时间工作会明显发热而且一旦MOS管击穿短路热床就会持续满功率加热后果非常危险。所以我很早就决定把热床改造成固态继电器SSR方案。固态继电器接线不复杂主板热床输出端不直接接热床而是接SSR的控制端一般为一根正极一根负极具体看型号它相当于一个小的电磁开关24V电源正极进SSR的输入端输出端再去热床。这样MOS管只负责控制SSR的线圈电流电流只有几十毫安而真正的大电流走SSR内部安全性和稳定性都会好很多。选SSR时注意额定电流。24V、100W热床对应的电流约4.2ASSR选择额定10A的型号就有足够余量如果以后想换更大的热床直接选25A版本也行。SSR发热也不小安装时要固定在铝散热板或金属机架上不能悬空。5.3 加热棒与热敏电阻热端加热棒我选了24V 50W的通用型阻值约11.5欧姆。这里有个常见误区电源选24V但加热棒却按12V买结果就是加热棒电阻太小24V下实际功率变成标称的4倍加热棒会急剧升温甚至烧毁。反过来电源12V却买24V加热棒功率只有标称的1/4热端升不到目标温度挤出机就会不断堵料。UM2热端测温我用的是NTC 100K热敏电阻玻璃封装耐温高适合热端。热床温度传感器用同类型热敏电阻也够用。安装热敏电阻时一定要确保它紧贴热块或热床并且用螺丝固定不能松动。接触不良会导致温度读数跳变严重时会触发Marlin的“温度失控保护”强制停机打印到一半突然停止体验极差。6. 传感、限位和风扇小东西大坑多6.1 NTC热敏电阻的接线与读数翻车实录NTC热敏电阻的阻值随着温度升高而降低Marlin固件通过检测分压电路上的电压来推算温度。接线看起来只是两根线但翻车率极高我自己就栽过一次。第一次接热床热敏电阻时我把线插到了主板的T1插槽但Marlin里只开启了T0和热床温度传感器结果屏幕显示热床温度一直是-14度。这里的-14度是Marlin在传感器开路时的读数表示检测不到信号。后来发现是自己插错了槽位把热床热敏电阻插到T1并在固件里开启了TEMP_SENSOR_BED 1才恢复正常。如果你看到温度显示“1000度”那通常是热敏电阻短路重点检查两根线是否碰在一起或者插针有没有连锡。NTC热敏电阻不分正负极所以不用担心接反。6.2 限位开关用常闭更安全限位开关的作用是告诉主板“运动轴到原点位置了”。UM2复刻一般用机械微动开关有三根引脚分别对应COM公共端、NO常开和NC常闭。我强烈建议用NC常闭接法。原因是常闭状态下主板随时都能检测到开关回路的通断如果线松了、断了主机会认为限位一直被触发或者直接报错。而用NO常开接法时如果线断了主板完全检测不到异常运动轴会一头撞上去轻则撞歪机构重则烧驱动。在Marlin里如果NC常闭接线限位开关的ENDSTOP_INVERTING要设成false用NO常开则设成true。每次接线后不要急着打印先用菜单里的“移动轴到原点”功能测一遍确认限位能正常触发。6.3 风扇接线与降压模块UM2机身上一般有三个风扇机箱散热风扇、热端散热风扇、主板散热风扇。如果统一用24V风扇接线最简单直接并联到电源输出端就行。如果手里还有12V风扇就要用前面的buck降压模块千万别直接串个电阻“降压”电阻发热大、降压不稳定而且风扇转速会随温度漂移根本不可靠。风扇的接线还有一个细节热端散热风扇最好常开一开机就转不要用Marlin里带温度控制的自动风扇功能。因为如果等热端温度超过50度才开风扇那在升温的这段时间里热端已经有一部分热量通过热桥导上去会导致耗材过早软化、产生热堵。我习惯把热端风扇接到24V电源常开只有主板散热风扇交给固件控制让它在打印结束后自动停转。7. 实操实录从焊线到第一次空跑7.1 线材、端子与通电前检查表所有电路设计完成后动手接线前先准备线材。热床电流大用14AWG硅胶线耐热耐折热端加热棒和电源主线用16AWG或18AWG信号线用22AWG就行。端子方面RAMPS板上用的是2.54mm排针和XT60电源接口热床加热棒我改用了航空插头方便以后拆卸。接线完成后不要急通电先按下面这个清单检查一遍电源输入正负极是否接反用万用表蜂鸣档测一下主板电源接线柱两端确认没有短路。热床和热端加热棒的电阻是否与预期一致小于2欧姆就要警惕接线错误。所有驱动模块是否插到位电位器拧到最小后再通电。温度传感器和限位开关的插头是否在正确的接口上。确保没有裸露的铜丝搭在金属机架上。我第二次组装的时候就是因为没检查RAMPS板上的电源接线柱附近有一颗螺丝掉在板子上通电瞬间“啪”一声MOS管直接报废。后来每次接线完我都会用万用表量一遍主板电源输入端和GND之间的电阻确认没有短路再上电。7.2 刷固件和首次通电的观察清单固件改好后用Arduino IDE或PlatformIO编译上传到Mega 2560。首次通电的时候我建议按照这个顺序观察先看屏幕是否正常亮起并进入Marlin菜单如果没有优先检查USB串口驱动和主板供电。然后看温度显示常温下热端和热床应该显示25到30度左右。接着测试限位开关手动按一下X、Y、Z限位屏幕上的对应状态要发生变化。再测驱动方向用菜单里的“移动轴”功能分别让X、Y、Z以较低速度运动确认方向正确、电机不抖动。最后才测加热。先把热床温度目标设为40度观察升温是否正常再测热端设为180度观察PID控制能否稳住。这一步一定要看着做不要离开防止加热失控。7.3 我翻车两次的教训第一次翻车在驱动电流上。TMC2209刚装好的时候我按网上某个帖子的指导直接抄了Vref 1.2V结果打印时挤出机电机烫得不能摸而且打印到第三层就开始丢步层纹非常明显。后来重新看手册才发现我那个电机额定电流只有1.0AVref 1.2V对应实际电流接近1.3A严重超了。降回0.85V之后问题立刻消失。所以Vref一定要按自己的电机型号算不要抄别人的参数。第二次翻车在SSR接线。第一次用固态继电器我把24V接到了控制端把主板的控制信号接到了负载端结果一通电继电器直接导通热床不受控地开始加热。后来查了说明书才发现固态继电器输入是接直流控制信号输出是接交流或直流负载两者不能反。发热床这种安全关键的负载接线错了真的容易出事大家动手前一定多看两遍说明书。8. 常见问题与排查速查表8.1 屏幕不亮或串口连不上屏幕不亮先确认主板有没有5V供电如果Mega 2560靠USB供电能亮但外接24V后不亮检查RAMPS板上保险丝是否熔断。串口连不上则优先查USB线是不是纯充电线——只有供电没有数据的线材我家里攒了十几根。换线后如果还连不上打开设备管理器看端口驱动是否正常Mega 2560用的是CH340G或ATmega16U2两种方案驱动不同。8.2 温度读数异常温度恒定显示-14度说明传感器开路检查插头是否插紧、线材是否折断。温度飙到1000度左右说明传感器短路重点检查线头是否碰在一起。另一种情况是温度在打印过程中剧烈跳变通常是热敏电阻没有固定好在热床或热块上来回晃动重新固定拧紧就能解决。8.3 电机不动、抖动或过热电机完全不动先测驱动模块的供电和Vref如果Vref为0说明电位器没调好或模块坏了。电机抖动但不动多半是电流不够、细分跳线错误或A4988/DRV8825插反了方向。电机过热则直接调低Vref过热问题不用排查其他原因九成都是电流设置过大。8.4 热床升温慢或不加热热床升温极慢先量热床两端电压如果只有12V左右检查24V电源是否被限流或者SSR接触不良。完全不加热按顺序检查主板热床输出引脚电压、SSR控制端是否导通、热床供电回路保险丝。如果SSR是继电器类型还要听有没有吸合声没有声音基本就是控制信号没到。我在调试热床时遇到过一种非常隐蔽的情况SSR输入端接反了极性控制信号虽然是好的但继电器因为二极管极性反了始终不导通测量时怎么都找不到问题最后用万用表从主板输出端一路查到SSR引脚才定位。所以排查加热问题最有效的办法就是拿万用表分段测电压哪段没有电压就是哪段的故障。最后再分享一个小技巧这几天给这台UM2复刻机做电路收尾最大的感受是电路部分的设计要在机械装配之前就想好尤其是24V电源方案、SSR热床保护和热敏电阻的走线路径。很多人在机械装完才发现线材没法走、限位开关位置不对只能返工拆机器非常浪费时间。我的习惯是先用扎带固定好主板和电源的安装位置再规划线束走向。热床线和加热棒线走机器背面的线槽信号线单独走另一侧避免强电和弱电混在一起。如果空间允许主板上加一个保险丝座电源进线端串一个5A到8A的保险丝这样即使后面接线失误烧的也只是几毛钱的保险丝而不是几十块钱的驱动模块。3D打印机的电路DIY并不需要高超的电子技术它更讲究按部就班、逐级验证。从电源到主板从驱动到加热每一路都测通了再往下走你也能把这样一台老架构的机器变成稳定可靠的日常工具。
返回列表