创世纪2
这一篇是升级3D打印机的教程,包括:klipper固件安装和升级,然后就是校准和其他。
klipper上位机——50元
Klipper是3D打印机固件。它将通用计算机的运算能力与一个或多个微控制器相结合。它给你带来的是更好的用户操作界面,更强大的网络管理功能以及共振补偿等这些黑科技。
首先我们需要一个klipper的载体,俗称上位机,对应的MKS-Robin主板就是下位机,微控制器。通过klipper操作下位机达到提高打印效果的目的。我这边用的是一个之前买的机顶盒CM311-a。这边对上位机就两个要求:1. 可以运行debian系统即可,armdian这种专门为了arm设备配置的debian系统也可以。2. 有个USB-A插口。【最便宜的方案是红米A2,改装好60+,自带触摸屏】
系统要求是为了运行python,而USB插口是为了连接上下位机的。传统的工业设备上下位机连接会用专门的线束,而我们只需要一个USB连接线即可。下位机一般都会有个USB插口,有可能是双USB-A接口的,因为3D打印机有时候会用U盘进行打印,所以这种接口是最易得的。
确定好上位机载体之后就需要做两件事:
-
给上位机刷Klipper固件。
这一步很简单,有专门的脚本kiauh,全称是:Klipper Installation And Update Helper,安装和升级脚本,网页上有教程,复制命令即可。
这块需要注意的是,脚本不允许用root执行,这块需要将一个新用户,然后给他sudo的权限,可以参照命令:sudo adduser username -增加用户
sudo usermod -aG sudo username -增加用户权限
groups username -确认用户权限是否在用户组内这里我遇见的问题是,默认登录用户是root,然后我用su username进行切换,直接切换到username这个用户,但是没有把对应的用户文件夹给切换过来,如果你知道用户文件夹在根文件home下面的话还好,会切换。所以我建议使用
su - username这个命令进行切换用户,这个会模拟完整的shell登录过程,将你带到这个用户的文件夹下,这样你执行./kiauh/kiauh.sh这些命令的时候,就不会提示找:不到文件夹或者没有对应的权限。【是的,你用klipper在root的用户文件夹操作那肯定不可能有权限,哪怕这个文件就在那】。 现在其实有了deepseek等工具,命令这些都可以现找的,我更加看中的是问对问题,而不是如何解决 -
给下位机刷可以被klipper固件控制的固件
这块也很简单,首先找到你的你的主板型号,比如我得MKS-Robin V2.4,如果你是MKS主板,那么去这里找到所有的MKS主板对应的klippe固件和配置。就是这么简单,我得机器刷固件只要把对应文档的固件放到SD卡里去,然后开机就会自动刷入里面还有张图片就是配置klipper,让上位机知道如何操作下位机的配置图。
后续就是用一条USB线连接上位机和下位机,进行配置和连接,一切顺利之后,你就可以在网页端看到界面,并且操作后续的校准。这块网上有很多教程,也没什么好讲的,原理就是刷两边相同的固件即可,这里需要提一句好多人希望通过klipper上位机刷下位机固件的,比如这个视频,但是很多人操作之后,提示:flash Error 255,下面很多评论都不知道为啥。其实这个原因在于它开头的时候是按着开关机按钮插电源的,这样的话,对应它这块主板进入到了DUF模式【主板DFU模式(Device Firmware Upgrade)是设备固件升级模式】,所以如果你按照它这么操作,有可能行,有可能失败。原因是不是所有主板都有DFU模式,其次是进入DFU的方法有可能不是这样,这个视频是直接进入主板的DFU模式,然后通过klipper脚本将下位机固件刷写的。
配置
在编写完成之后,进入后台界面,开始编写配置,一般主板厂商会提供一份基础配置,里面大部分数据是对的,尤其是针脚【pin】这块,因为大部分接口都是固定的,比如电机,热敏之类的。

所以你只需要在那份文件上修改,然后再增加一些配置即可。
这里顺便说下如何查看针脚代码,以这款主板为例:我将散热分散没有接到对应的接口上,反而接到的是挤出口1这个接口,所以我用主板给的配置文件,导致我一开始启动之后散热风扇不运行。现在有两种方案:1. 拆机然后把电风扇的电线接到对应的接线口上。2. 找到挤出口1的针脚,告诉系统这个地方被我拿来当风扇了。
首先找到主板上对应位置的喷码,可以看主板,也可以看电路图。
,
然后找到对应主板的针脚图,找到HEATER1,看到对应的针脚是PC7,修改针脚即可。

另外这边我遇见的困难是FAN和heater_fan是两个不同的参数,我这边的电风扇是热头的散热风扇,所以要用heater_fan,而前者则是热床或者打印件的散热,这块可以自由定义。
最后附上我得配置和描述
1 | [include fluidd.cfg] # 包含Fluidd界面配置文件 |
这块推荐去看官方文档,说明的很详细,有中文,一些英文未翻译的可以直接翻译软件,不难,这边就解释两个概念,热床和挤出机加热的时候有两种控制方式:
- PID
pid_Kp:22
pid_Ki:1.08
pid_Kd:144
PID 反馈控制系统的比例 (pid_Kp)、积分 (pid_Ki) 和微分 (pid_Kd) 设置。Klipper 使用以下通用公式评估 PID 设置:
heater_pwm = (Kperror + Kiintegral(error) - Kd*derivative(error)) / 255
其中“error”为“requested_temperature - measured_temperature”,“heater_pwm”为所需的加热速率,0.0 表示完全关闭,1.0 表示完全开启。建议使用 PID_CALIBRATE 命令来获取这些参数。对于 PID 加热器,必须提供 pid_Kp、pid_Ki 和 pid_Kd 参数。 - watermark
通过max_delta: 2.0控制,当温度高于目标温度2度时候就停止,低于目标温度2度的话就开始加热。
一般推荐用PID,参数照搬即可,后续会有:
PID_CALIBRATE HEATER=extruder TARGET=170
PID_CALIBRATE HEATER=heater_bed TARGET=60
这两个命令是用来校准PID参数的,所以上面写的什么无所谓。
其他升级
正如我之前所说的,我买的这台是杂牌的机器,但是基础的框架是没问题的,系统现在我也改成klipper,虽然对线不了大牌,但是还是可以满足我得需求,但是由于先天硬件不行,还是有很多地方可以改进的,或者说如果你不知道如何升级,那么直接看最新品牌机,看看同样结构下它能做到什么,你这台机器大概率也可以,推荐看纵维立方这个牌子,别看拓竹,他们定制和开发了太多了。
自动调平:调平也是阶段性测试的,当然一些高端机器每次打印前都会调平。——10元
细心的朋友看出来了,我上面的配置里面是没有调平配置的,这是由于我在刷机之前刚刚调平过,就偷个懒,这边说下klipper支持的主流的调平方案和缺点吧。
-
接触式
- BLTouch 探针/3DTouch 探针
都是一回事,后者是国内版本的,就是在挤出头旁边增加一个这个玩意,它一旦触碰到平台就会弹回,同时告诉系统到达平面了。这个算是最早开发出来的自动调平方案,缺点就是:大和丑,这么一大块就放在挤出头旁边。价格便宜:35-45之间
- 优点:配置简单,直接一个架子安装以下即可
- 缺点:复制版价格便宜,传感器是贴片得,用久了会有灵敏度的问题。
- 热床压力传感器
这块是Duet 3D提出的,现在拓竹X1和P1系统用的就是这个方案,在热床四周放置这个传感器,然后通过挤出头去触碰特定区域,来确定是否平整,缺点是定点,比如四个点,但是中心或者别的地方有时候会因为各种原因突起,价格一个:39官方,普通的20一个,至少需要4个。
- 优点:还是配置简单,是个固定螺丝安装一下就行
- 缺点:调平是能调平,但是无法测准整个平面的
- klicky
一个用鼠标微动,磁铁构成的调频装置,结构简单,而且不用担心灵敏度问题,通过磁铁传输信号,最重要的是测准精度好。
- 优点:简单,准确,价格便宜
- 缺点:配置比较复杂,需要打印头特定路径才可以测准。当然你也可以选择一段时间调平一次。
- 挤出头压力传感器/VORON Tap
通过一个光电感应,来判断是否打印头是否和平面接触,目前这个方案就VORON在用,其他的用的少- 优点:准确
- 缺点:结构复杂需要结构上的支持,还有就是价格贵,需要线轨
- BLTouch 探针/3DTouch 探针
-
非接触式
- 涡流感应探头
这个有个大前提:具有均匀磁场的导电金属热床,原理可以看图,很简单的东西,价格我找了几家都100+的,这块你买的时候需要注意看下自己主板是否还有位置,有can总线和USB接口两种,需要看下主板是否有相对应的位置。
- 优点:配置简单,一个线,一个固定结构即可
- 缺点:贵,需要热传支持,受温度和磁场影响,但是3d打印机里面有好多电机
- 接近开关
就是一个距离传感器,靠近到多少就停止了,需要注意的是它的检测目标有一些是有限制的,比如检测铁制品之类的成功率高点。价格:5-100都有,贵的一般就是小型化,如果你用的是那种工业用大家伙,也就五六块
- 优点:配置简单
- 缺点:对热床有要求,准确性看产品
- 视觉校准
热传上有特定的图案,然后根据摄像头进行校准,个人DIY难度巨大,不仅要求热床,还有摄像头角度等,需要大量经验。- 优点:简单,甚至你无需额外投入
- 缺点:一般人搞不定,搞定的人直接VORON
- 涡流感应探头
我选择的使用一个薄膜开关进行调平,费用低廉。
共振补偿:共振补偿不是实时的,是一段时间后你需要做的一个测量,来提升你打印质量的,所以不用考虑太复杂。——40元
共振补偿这块klipper这块有一个比较麻烦得方案,就是打印出特定模型,然后手工测量共振幅度,然后调整,其实这块有个更加简单得处理方式,就是增加一个加速度传感计,比如ADXL345,这块得难点在于,由于角度传感器需要特定得安装角度,而且还需要固定住,所以你需要找一个合适得地方安装就是。然后就是接线:

官方推荐使用SPI接线模式,SPI接口的关键组成 (4线):
SCLK (Serial Clock):串行时钟线,由主机产生,用于同步数据传输。
MOSI (Master Out Slave In):主设备数据输出、从设备数据输入线。
MISO (Master In Slave Out):主设备数据输入、从设备数据输出线。
CS (Chip Select):片选信号(也叫NSS),由主机控制,用于选择与哪个从设备通信
这时候你就要看下你得主板是否还有足够得针脚,还是以我的MKS Robin 为例,预留了几个拓展:

然后去查询对应得针脚:

这边我们可以看到我们缺少一个输出MOSI,但是其实我们有4个还未定义得GPIO针脚,所以理论上是可以定义GPIO针脚增加一个MOSI。或者你使用SD上面得针脚

但是需要注意,这个走的是SD卡得同一条路线,如果有SD卡得话,这个就用不了。

需要注意:
- SPI是高速通讯模式,所以一般对线的要求比较高,最好不要超过30厘米,而且最好有屏蔽
当然,你说有没有一种简单有愉快的方式接入传感器呢?有的呢,兄弟,有的

自带一个RP2040的微处理器,省去了接线的麻烦,通过USB线直接和上位机通讯。
- 优点:简单,不用担心SPI通讯干扰,而且自带安装孔位。
- 缺点:40元,是自己接线的2倍
摄像头——50元
摄像头直接买个USB免驱得即可,注意下你需要得参数:
像素/分辨率:这块买的时候对方会故意混肴,像素是机械性能,分辨率则是最后成品,有时候高像素为了展示效果会降低生产视频得分辨率,这个很正常,比如用了畸变得镜头需要处理掉一些边脚。现在推荐200-400万像素,分辨率在1080P以上为佳。
镜头焦距焦距和像素是两回事,焦距是镜头,而上面像素是MOS芯片,要看它给相机配置得镜头焦距,我们由于在狭窄空间内使用,需要焦距小得,看得近,视角范围大,推荐2.8MM的。
协议:UVC协议,这个就是USB免驱的。
如果你觉得自己购买太麻烦了话,有一个直接简单的解决方法:星云摄像头。创想三维3D打印机官方配件,现在150多就是。

这边建议像素高点,后续可以自己培训YOLO进行判断是否打印坏了,这是目前大多数厂商使用的方案,可以在打印过程中每几分钟拍一张照片,然后如果有坏的照片可以作为训练数据,后期用上位机或者另外一个机器进行判断,本身klipper就是python写的,这块连接很方便,期待大佬开发吧。
我这边用的是一个号称500w像素的,但是帧率只有15的摄像头,实际体验下来效果满足我得需求,当然不如150+的夜视强大。
完美升级【主要是卖不出去,看看能不能拯救下】
从上面可以看出,我已经再机器上花费了200+,但是实际体验下来还是不如目前主流的品牌机,由于技术的更新迭代太快了,一年几乎就有一个新的技术亮点出现,这在技术初期是很正常的,于是我估计了下,如果我要让它追上目前主流的技术水平,我需要花费多少?
首先我的框架绝对没问题,重且大,所以框架不变的情况下,剩下的就是内核优化:
1. 使用can转接板,做到线束的极少——100
现在的主流厂商都已经是一根线连接主板和热端,我这么一堆线束的情况,是上一代的产品了,所以我需要一个打印头转接板:

它集成了电机,热端,风扇,限位,热敏所有的功能,然后通过一个CAN转接板连接到上位机。

这样就能解决我现在线束杂乱的问题,而且现在这种转接板都自带ADXL2345加速度传感器,直接就可以做共振补偿。
2. 升级24v电源,现在12v的电源从热床加热到热端加热都差强人意——70
现在的电源是12V,导致热床的加热功率很慢,升到50度的话,往往需要2-3分钟,主流的厂商已经使用交流热床,直接使用220V加热,其次是现在市面上大多数都是24V的相关配件所以升级也是必然的。
3. 电源升级之后,热床也需要相对应升级甚至可以考虑交流加热——50
由于电源的升级,同样的热床电压就不匹配了,所以需要同步升级,如果使用220V的交流加热要达到300。
4. 更换晶格玻璃为PEI板——40
铲除掉原来的晶格玻璃,玻璃的辅佐下还是不如PEI板,而且方便程度还是有差距。方案是在热床上买个3D打印机热床磁性橡胶底座,然后买个PEI板即可,很简单,可以极大的提高附着性,同时你可以增加擦嘴和擦拭塔,每次正式打印前画一条直线,保证后续吐料流畅。
5. 整个热端加上置挤出机——100+【使用voron方案】
我的机器框架很好,而且用的是线轨,从硬件上已经没有太多的问题,剩下的就是不如品牌机的易用性,在提高了易用性之后剩下的就是改进下目前的热端和挤出机,以适应上面的一些升级。
总结

目前已经花费了500,如果我按照我的想法继续投入的话,这台机器将会达到900,带来了一台勉强和目前主流品牌一样的功能,但是效果还不一定有人家的好,而且二手还卖不出去。所以如果你单纯的只打PLA和PETG,或者说只是玩玩的话,那么只需要一台拓竹A1即可。别自己瞎搞,如果你想要DIY,那么我建议你直接买创想三维K1的官翻版本,900-1000,带来的效果超过自己折腾,而且它也能root。