3D打印的质量和速度,其实除了机器和材料本身有关,和算法也非常相关。下文是南极熊3D打印网友“阿旺”,向南极熊的投稿。
近日,密歇根大学的Chinedum E. Okwudire教授在控制理论领域的老牌杂志《Mechatronics》发表了一篇名为《Alimited-preview filtered B-spline approach to tracking control – Withapplication to vibration-induced error compensation of a 3D printer》的论文。在这篇文章中Chinedum E. Okwudire教授利用控制算法的研究成果局域FBS算法减少了震动或跳步对打印质量的影响,使普通3D打印机的打印质量大大得到改善。
3D打印机在打印过程中,G代码中包含了打印头的预期的运动轨迹,从而控制步进电机产生相应的运动。在实际过程中,3D打印机往往难以避免震动和位移。在高速打印的过程, 如果机身较轻, 打印头会带动机身震动, 由此会产生误差, 如果误差过大, 会非常影响打印质量,而为了避免这种震动带来的误差,现有的常用手段是增加打印机的重量。
如何把控制理论应用到3D打印中呢?最直接的思路是给打印机中加入前反馈控制模块,能实时修正打印机轨迹与预期轨迹之间的误差,从而提高打印质量。但反馈控制传感器成本较高,往往不符合低成本的要求。
因此在3D打印机中,前馈是唯一的控制手段。理论上前馈控制可以使用给定系统的先验知识及其输入以预定义的方式影响系统的输出,全局FBS补偿算法可以实现这一功能。
全局FBS补偿算法原理
xd为希望输出的路径, 通过公式计算得出P值, P值为控制点数据, 再经过计算得到u, 即输入控制值. 通过H, 即输出程序, 得到实际输出路径x. 再通过对应公式得出 , 后该值用于下一时间点计算。
但由于3D打印机的轨迹是十分长的,每次进行计算时, 全局FBS算法需要对所有时间点数据进行计算且修正, 虽然精度很高, 但是当时间积累到一定时候, 不仅对计算能力提出了挑战,而且效率很低, 因此Chinedum E. Okwudire提出了限制型FBS算法.与全局FBS补偿算法相比,限制性FBS算法或者叫局域FBS补偿算法不需要对所有时间点数据进行修正,只需要修正局域部分即可,大大缩短了补偿算法的工作量。
全局FBS与局域FBS误差对比
算法时长对比
可见, 虽然全局算法的精度更高, 但是效率较低. 相比较下, 限制型FBS算法更具实用性。
由这张图可以看到,图a表示期望中打印头的运动轨迹,图b中蓝色表示实际打印头的运动轨迹,红色表示经过局域FBS补偿算法后打印头的运动轨迹,可以发现局域FBS补偿算法能够有效的减小运动轨迹误差。
打印过程中由于震动跳步可能会引起打印件表面产生波纹,而局域FBS补偿算法可以很好的消除这种波纹,在不影响打印效率的同时,使打印效果得到很大提高。
|
上一篇:恒通3D打印众创空间被科技部认定为国家级众创空间下一篇:美军希望部署可按需3D打印的无人机用于侦察
|