浅谈klipper固件

最近圈子里的朋友陆陆续续经历了阳到阳康,当然,我也不例外,从上周四开始便连续4天反反复复的烧和退;直到第五天,人感觉没了半条命,好在老天依然眷顾着我,终于在这两天回归了正常人的生活!希望大家保护好自己,新冠非感冒,避免第二次变成小阳人啦!
接下来我们来聊一聊klipper固件。klipper是3d打印机开源固件的其中一种,它结合了树莓派和打印机主板的强大功能,以实现更好的打印机控制,即以更快的打印速度和更好的精度和控制运行打印机。它相比marlin固件有着不可多得的优势,即打得又快又好!有望成为未来10年内3d打印固件的霸主!
klipper作为一个开源固件,开源地址如下:
https://github.com/klipper3d/klipper  
它的开发文档也很齐全,并且大部分的文档也都有翻译成中文的版本:
http://www.klipper3d.org/zh/  
其次,它还能搭配许多更高级的硬件来实现更牛逼的功能,例如电机振动抑制、激光雷达调平、摄像头延时摄影、模型缺陷检测等强大的功能。传统的3d打印固件架构如下所示:
而klipper做了一些变革,它主要由两块来构成,分别是:mcu固件+klipper上位机固件,整体架构如下所示:
以往,3d打印机固件(单片机端运行),它需要完成gcode命令解析(字符串解析)、路径规划运算、温度pid计算等等,它将这一系列复杂的操作都在一个mcu上进行完成了,因此软件方面很难有特别大提升,但这样的稳定性却是相对来说比较高的,维护起来也非常方便;而marlin固件作为目前全世界最活跃的3d打印固件,更新迭代速度极快,后续我相信会做出更大的改善,支持更多牛逼的功能来与klipper以及其它3d打印固件相互竞争。
klipper相对于marlin固件来说则有很大的不同了,它将这些复杂的解析逻辑、运算逻辑等等全部扔在了另外一个执行单元(通常是树莓派、香橙派之类的处理器上),处理完成后将对应的消息块进行16进制指令封装,然后将其发送给klipper的mcu固件,mcu固件不需要去做太多太耗时,太耗资源的操作,因此打印效率就大大提高了!但klipper的缺点是使用的开发平台成本较高,而且多套系统相互结合,使得它的稳定性无法与marlin相媲美;另外,如果对于不懂二次开发的玩家,原本3d打印自带的串口屏也是无法和klipper进行适配的。再者,klipper固件的版本更新迭代周期也比较缓慢,基本上很久才更新一次。
因此,对于marlin和klipper固件,各有各的优势,我只能说“两害相权取其轻”吧。对于如何适配klipper固件,我学习了相应的知识以后尝试的自己配置,最后也成功了,我是用anycubic的vyper来进行适配的。要在anycubic vyper上安装klipper,我们需要相应的条件,如下所示:
香橙派2(如果有树莓派或者带debian或者ubuntu系统的开发板也可以)
香橙派串口线
mainsailos
anycubic vyper 3d打印机
一根网线
接下来参考orangepi_zero2_h616_用户手册_v4.0中的3.31章节中的,通过kiauh安装klipper固件上位机的方法即可成功!
以下是我使用klipper固件的实操结果。
由于klipper的前端本质是基于udp socket进行通信的,因此我们所见到的这些开源的如mainsailos 或 fluiddpi web ui,它们的本质也是这样来进行通信的,对于我们这种嵌入式玩家来说,web ui的东西我就不太感兴趣了,因此可以用qt或者其它的ui框架来替代它,毕竟web之类的东西运行在嵌入式平台也是挺重的。因此后续可以用我自己写的这个上位机模拟相应的功能实现,如下所示,目前使用的是qt + marlin的gcode操作逻辑。


实现一款高可用的TCP数据传输服务器(Java版)
青云全新升级光格网络,赋能物联网产业的智能化建设
NI PXIe-5644R 射频矢量信号收发仪-首台软件完全自定义的仪器-
LED芯片厂供需结构阶段性失衡,LED行业进入洗牌周期
基于Entropic的Vestel机顶盒产品宣布发售
浅谈klipper固件
江波龙与金士顿将成立合资公司,深耕国内高品质与高附加值的嵌入式存储市场
新一代的DRAM将面临哪些挑战?
电子仪器的测量误差
小米用AIOT战略是为了什么
浅谈对变压器瓦斯保护的检验
红米Note 7 Pro是迄今为止红米系列最强悍的手机
共基放大电路和“沃尔曼化”介绍
5G和自动驾驶技术发展助力中芯国际迈向高端代工
英特尔高管批评设备制造商的周转时间
双Type-C口充电方案汇总,助力市场新风向
第三届禅城杯“我的导师 我的创业合伙人”创客创业大赛即将开赛
如何制作一个非常灵敏的火灾报警电路
各大交易所已正式推出了比特币期权产品
关于区块链中分布式存储的浅析