林星翰
(北京工商大学人工智能学院,北京 100048)
3D打印就是计算机控制可黏合材料连续一层层铺设,该技术的发展始于20世纪80年代,目前已经广泛应用于许多行业[1]。3D打印的主要特点是可以制造传统方法无法制造的复杂器件或者系统;另一个特点是不需要机械加工或模具,利用计算机图形数据可以直接生成各种形状的物体,大大缩短了产品的生产制造周期,提高了效率。通过多年的发展,3D打印改变了传统的生产制造方式,开启了新一轮世界范围内的制造革命,节约了企业的生产成本。它的市场潜力很大,是制造业重点发展的一项新兴技术[2]。
3D打印过程就是把设计好的3D器件模型用G-Code代码的形式表现出来,然后将模型的G-Code代码导入到3D打印机中打印出实体。因此,3D打印生产流程可分为3个步骤,即获取模型代码、模型打印和后处理[3]。针对模型的获取主要有3种途径。第1种是通过UG、Pro/E或SolidWorks等三维软件设计;第2种是对已有的器件实物通过三维扫描仪扫描,重建该器件的三维模型;第3种是通过网络模型库获取。在获得打印模型后,需要检查模型,确保模型完整,之后需要考虑模型的摆放角度和是否添加支撑。摆放好模型并做好支撑后[4-5],进行切片参数设置,然后切片可获得导入打印机的模型G-Code代码。在3D打印前,需要对打印机进行参数设置,例如打印头温度、热床温度和打印速度等。后处理则是对打印完成的模型进行去毛刺、打磨以及抛光等处理。
3D打印机的中央控制系统是其核心部分,也是整个3D打印机构的指挥中心,通过解析相应的指令任务、接收传感器信息以及控制机械结构与步进电机等硬件完成3D工件结构成形[6]。3D打印中央控制系统是上位PC机与X,Y,Z3个方向的步进电机、吐丝电机、温度传感器、加热棒、限位开关等硬件设备之间的桥梁。3D打印主控电路板上的CPU芯片通过读取TF卡或者SD卡中的G-Code文件,或者接收上位PC机发送的G-Code代码指令,将指令解析之后,控制打印机各机构协同工作,完成打印。3D打印的过程控制对制造出来的器件质量有着非常大的影响,打印过程中对打印头的温度和运动轨迹等的控制直接决定了器件的质量[7-8]。随着3D打印的广泛应用,在航天领域,人们对3D打印的各项性能指标提出了更高的要求,尤其是在中央控制系统方面[9]。因此,发展3D打印中央控制系统的相关技术,可进一步推动整个3D打印产业链的升级。
本文将对3D打印过程中的运动控制、温度控制和限位控制以及相应控制算法进行介绍,对比各类算法的优缺点,并简单叙述3D打印在相关领域的应用。
3D打印运动轨迹控制的运动执行器是步进电机,步进电机在3D打印中是将电信号脉冲转换为相应角位移或者线位移的精密执行机构,步进电机基于接收到的脉冲信号驱动电机按设定的方向旋转固定角度,在没有超过电机负载能力的前提下,电机的转速、停止的位置只取决于加载在电机上脉冲的频率和脉冲数,与负载没有关系。现流行的一种3D打印机是利用上位机和下位机(打印机)控制主板相配合来完成运动控制的,步进电机的脉冲信号以G-Code指令的形式由上位机产生,并将产生的信号传递给下位机,下位机执行G-Code指令,即操纵步进电机转动,步进电机带动丝杠转动,丝杠转动带动打印头移动,同时G-Code指令中有对打印头移动速度的设置。
计算机中的3D模型大多是以三角面所包裹的空间来近似表示,切片软件则是通过将3D模型切片得到一系列的二维切平面,而打印头如何在这些二维平面中进行运动控制是3D打印过程控制研究的核心技术。当打印头运动轨迹合理时,打印效率和打印质量将会大幅提高。一般情况下,3D打印都是在笛卡尔坐标系中对运动轨迹进行规划。运动轨迹多为直线,这是因为直线方便、高效,容易准确地测量出由指令控制打印头移动的位移与实际打印头移动的位移之间的误差,便于检测打印机构的精度以及后续运用算法对运动误差进行补偿。
张文君等[10]基于笛卡尔坐标系下桌面FDM的3D打印机设备,对设备箱体结构、运动系统的机械结构等进行了优化设计,并对其驱动系统和运动控制部分进行了合理化改进,相关数据表明,改进后的设备能够很好地保证机构运动的平稳性并提升打印精度。
徐凡等[11]针对传统的偏移或缩放的方法生成的多层旋转体存在的一些局限性,设计了一种生成任意简单多边形的多层旋转体算法,解决了分层在旋转时的碰撞问题。这样设计可以使得三维物体在较为压缩的空间上进行打印生产,生产完成后再通过旋转的方式展开为三维物体,并且无需后期组装,提高了打印效率和打印精度。但是文中只使用了一种结构来组装旋转体的各层,对于使用更多不同的结构来丰富不同层之间的组合方式,算法仍具有一定的局限性。
3D打印对步进电机运动的控制需要很好的算法控制及轨迹优化策略,才能提高3D打印的整体性能。打印机在打印过程中需要打印头在单位时间内打印出的体积与挤出机在单位时间内挤出耗材的体积相等,即线宽×层高×打印头单位时间移动距离=耗材截面积×单位时间内耗材消耗长度,做到材料进给量与打印头对材料的吐出量很好地耦合才能提高打印效率和打印零件的质量。
针对打印过程中的控制优化问题,3D打印领域的科研人员提出了许多控制策略算法。相关研究成果如下:
马晨曦等[12]针对传统的数控机床在加工折线时存在的因进给系统反复骤停而影响加工效率的问题,提出了优化折线光滑转接加工的控制算法,并针对由直线段和曲弧段组成的连续曲线整体加工控制问题,基于S型曲线模型[13]提出了一种加加速度连续的改进算法,从而提高了打印效率和打印质量。
蔡锐龙等[14]针对数控加工中传统S型加减速算法在处理加加速度时出现的阶跃问题,提出了一种四阶S型曲线柔性加减速算法。首先在传统S型加减速控制的基础上,重构了加减速控制模型,将加加速度的变化规律设计为三角形状连续变化。然后针对重构的模型,对算法的求解进行了方案设计,采用分类讨论和循环迭代相结合的方法进行算法求解,采用匀速补偿法克服不同精度要求下算法耗时不稳定的问题[15]。仿真结果表明,在满足数控系统实时性要求的前提下,提高了数控加工的运动平稳性。
陈志伟等[16]针对传统的直线加减速算法和指数加减速算法的速度突变问题以及传统七段式S型加减速算法运算繁琐的问题[17],提出了基于logistic模型实现的S型加减速算法,减少了运算量,同时将传统的七段式S型加减速算法优化成五段式,使得运算量更小,速度曲线更加平滑[18],提高了速度曲线的平滑性和灵敏性,让模型调试更加简单。
针对现有的定细分数3D打印步进电机控制方法在追求高精度打印的同时往往会牺牲打印速度的情况,姚绪梁等[19]提出了一种变细分数的3D打印步进电机控制方法,即在大距离范围内打印时采用低细分数,用于提升打印机运行速度;在小距离范围内采用高细分数,来保证打印精度。变细分数控制方法在控制步进电机运行速度的同时[20-22],保证了打印精度,使得打印件的打印质量得到了提升。
Lin等[23]提出了一种新的SFC(space-filling curve,空间填充曲线)型刀具路径规划方法,将规划任务定义为一个旅行推销员问题(traveling salesman problem,TSP)。首先在输入曲面上生成一组规则的刀具接触点,用一种切削仿真方法来评估扇贝误差,并确定交叉进给方向下一个刀触点(cutter contact point,CC)的位置。然后将得到的CC输入到一个高效的TSP 求解器LHK中,得到最优的CC点连接序列,结果表明,该方法能够自动找到最优进给方向,且生成的刀具轨迹比传统的SFC方法短[24]。最后通过切削实验验证了该方法的可行性。
Ding等[25]考虑了曲面层路径规划,用线性和三次样条逼近从切片阶段得到的多边形,提供了一种使用五轴打印机来打印外壳类型对象的方法。该方法利用附加的两个打印机自由度来提供弯曲铺设路径规划[26],结果表明,该策略在很短的时间内提高了打印工件的质量。
王腾飞[27]针对当前用于3D打印数据处理的分层算法和路径规划算法存在的问题进行了细致的研究,提出基于等距偏移算法的路径规划方法[28],即选取基于三角面片位置的分层算法和在轮廓偏置算法的基础上采用等距离轮廓偏置,最后通过实验证明有效的数据处理能够高效地提高成形件的精度和强度,以及设备的制造效率。
总而言之,3D打印轨迹规划与控制规划算法的设计与优化直接影响整个打印的效率与质量,优化的算法可以提高打印头运动的平稳性以及运动精度,提高打印效率与打印质量。
温度精确控制是3D打印性能的重要组成部分,因此需要实时监测打印头温度是否正常,即温度采集模块正常工作时系统能够实时接收打印头的温度信息,当温度采集模块异常时能够自动提示温度异常信息,方便故障分析。众所周知,对温度的控制精度能够直接影响3D打印的效率和质量。打印时耗材在熔融状态下通过挤出机对耗材的向前传送,将加热腔内熔融的耗材从打印头中挤出,因为不同的打印耗材熔点不同,所以在打印时需要根据打印耗材的熔点设置打印温度。一般情况下打印温度都高于耗材的熔点,但是过高的温度会使喷嘴出口处变得黏稠,影响距离喷嘴较近处已打印的部分,甚至导致打印件发生变形;然而当温度偏低时,则会加快材料的凝固,在喷嘴吐出的耗材刚堆积到打印的区域时耗材便凝固,不能和之前的打印材料很好的粘结,导致耗材在堆积粘黏时易出现裂纹和粘黏不牢的现象,温度过低时甚至会导致打印耗材无法从打印头中喷出,出现打印不能顺利完成的情况。因此,打印系统对温度控制的好坏决定着打印能否顺利进行并直接影响打印效率和打印质量。
Yang等[28]设计了一种采用FPGA(field programmable gate array, 现场可编程门阵列)控制的恒温系统。打印3D模型时,环境温度会随着时间的推移而升高,因此控制环境温度很重要。用户设定温度范围后,恒温系统根据感知到的环境温度,控制风扇打开或关闭。当FPGA接收到运行中的风扇发出的信号时,FPGA可以计算出风扇的转速并实时监测系统中风扇的转速,以此来降低耗材的消耗。
Lin等[29]以PID算法为主要研究对象,结合模糊理论设计了一种基于模糊推理的自适应PID控制算法,同时设计了恒温箱的机械结构部分和测量控制部分的软硬件。实验数据表明,恒温箱内温度的控制稳定性小于0.05 ℃,证明所使用的模糊自适应PID控制算法和设计的恒温系统是合理和有效的。
Agron等[30]开发了一套监测和控制集成系统,用于降低制造产品的热降解风险,防止打印失败、喷嘴堵塞。在监测程序中,采用两级滑动窗策略的时间神经网络准确地提供了喷嘴尖端的热值的预测值,这些估计的热值被用来作为控制系统的刺激[31],根据热值的预测值控制系统执行相应的操作以防止整个设备发生异常。
Lee等[32]研究了单区空间室内空气温度的控制。首先,建立了太阳能LHTS新风空调系统的温控数学模型;然后,针对变风量空调系统非线性、扰动大、不确定性大的特点,提出了一种模糊PID控制方法,并将其应用于室内温度控制。在模糊控制的帮助下,PID的参数可以在线调节。结果表明,模糊PID控制同时具有模糊控制和PID控制的优点,能够以简单的步骤提高复杂控制系统的控制效果。
从上述多个文献可知,当前3D打印中央控制系统的温度精确控制算法主要使用的是模糊PID算法及其改进算法。
随着3D打印快速发展,市场和消费者提出了更为高级的功能需求,促使从事3D打印研究的相关科研人员、技术人员以及爱好者对3D打印机的结构及功能进行了很大的改进和完善。相应的限位控制和自动调平等功能也不断被优化和更新,3D打印机的功能越来越丰富多样,使得3D打印技术越来越成熟。
在3D打印机中,使用限位控制是保护打印机安全的重要措施。限位控制能防止移动机构与边框碰撞而造成机器的损坏,因此施加限位控制是必不可少的环节。传统的打印机多是利用限位开关,当打印移动机构碰撞上机械限位开关或者遮挡住光电限位开关时,规定此时打印机的位置为相应轴的零点,结合程序或者软件中对该轴的行程距离设定,限制打印机移动机构的行程。当移动机构触发限位时,电机停止转动,系统根据基准点主动计算需要多少个脉冲数能够达到程序或者软件所规定行程,当电机转动对应的脉冲数时,移动机构所处的位置即为最大行程处。
郝亚冲等[33]设计了一种结合CPLD的3D打印机的嵌入式系统,用该系统实现了模拟信号采集、数据处理以及信号控制等功能。重点研究了该系统的运动控制系统,采用两相混合式步进电机专用驱动器A4988实现步进细分驱动,设计了步进机驱动电路;采用TCRT5000光电传感器精确控制X、Y、Z轴行程,设计了限位开关电路,解决了打印精度和速度等根本性问题。
随着3D打印技术的不断进步,市场和消费者对3D打印件打印精度和打印质量的要求也日渐增高。目前打印件的承接平台也就是热床的调平大多还是人工进行手动调平,这种调平方式繁琐且精度低,如果热床不平则会引起打印件的底面呈现倾斜状态甚至打印失败。针对调平问题,相关学者设计出了自动调平功能,首先在打印头上安装自动调平模块的触头,触头跟随打印头移动;然后用触头接触热床上不同位置的点,控制系统自动记下在不同位置处打印头下移或者热床上移的距离。在打印头进行首层打印时,系统通过控制面板根据之前记录的各个点的下移或者热床上移的距离,控制喷嘴在不同的位置喷出层高不同的耗材进行首层的补偿,离喷嘴垂直距离较大处多喷耗材,离喷嘴垂直距离较近处喷嘴少喷耗材。首层如此处理后,接下来打印第二层时打印头距离打印完的首层平面各个位置的距离就一致了。总之,对于热床不处于水平面的情况,通过补偿首层高度,使得打印面在打印首层平面后处于水平面上,从而能够获得更好的打印效果。
周春燕[34]针对小型平台进行了自动调平控制系统的研究,结合实际要求,通过比较多种方案的优缺点,设计出一款以ATmega162单片机为中控核心的小型平台机电式自动调平控制系统,实现了小型平台的快速、稳定、高精度自动调平[35],解决了长期以来人工手动调节小型平台所带来的费时、费力、调节精度低等缺点。实验表明,调平状态稳定后,水平方向的角度误差稳定在-0.02°~0.02°,从启动到热床稳定处于水平状态,调平时间小于2 min,无论调平时间还是调平精度都很理想。
由于市场对3D打印技术的要求不断提高,因此某些3D打印应用场景中还需要实施力控制。
Qu等[36]介绍了两种具有不同力量程和传感分辨率的三维打印微力传感器的研制历程。首先通过有限元仿真评估传感器设计的可行性,并通过实验验证SLA和FDM的3D打印分辨率,实现了较高的传感器柔韧性。应变片附着在3D打印的模型上,用于力的采集。该力传感器的设计基于ISO 14577标准,可以量化传感器的精度和灵敏度。使用开发的力传感器对PDMS样品进行了两次概念验证演示[37],两种力传感器测得的PDMS样品的杨氏模量值较为一致。该结果也与之前报道的数据一致,证明了3D打印力传感器的有效性。
在此之前,Qu等[38]还设计与标定了微牛顿分辨率的3D打印力传感器,即基于两种典型的3D打印技术——熔融沉积法(FDM)和立体光刻技术(SLA),构建了特征尺寸小于0.3 mm的聚合力传感器结构[39]。两个3D打印的应变式力传感器覆盖不同的力测量范围,分别为4.3 μN和56 μN。文献[39]介绍的实验技术能使用入门级3D打印机实现高性能力传感器的快速成型,易于满足各种力感系统定制设计要求。
上述的限位控制、自动调平以及力控制主要是根据3D打印机机构安全以及具体打印需求添加的功能,也就是研究人员可以根据不同的3D打印材料或者需求增加对应的功能。
随着科技的不断发展,3D打印技术逐渐变为一种新兴的制造技术。在航空领域中,3D打印正在进入产业化生产阶段,例如奥地利Lithoz公司利用LCM技术打印出了用来生产单晶镍基合金涡轮叶片的铸造型芯、定向凝固铸造型芯、等轴铸造型芯等模具部件。然而,3D打印技术门槛很高,对温度控制精度、材料纯净程度等都有严格要求,欧美发达国家的企业研究了很多年,仍只能制作一些小部件,体积稍大点就会有缺陷。和传统加工方式相比,3D打印材料的强度、刚度、机械加工性能等仍不够理想,即3D打印产品质量方面的问题还有很多,需要一一解决。
2014年12月,美国研制的微重力3D打印机在国际空间站打印出套筒扳手[40],3D打印机未来有望用于制造国际空间站30%以上的备用部件。蓝色起源公司和美国太空探索技术公司都利用3D打印技术为其运载火箭建造了一些部件和工具,例如涡轮泵。2015年4月,中国航天科工集团第六研究院41所应用3D打印技术制作的某型号发动机点火装置成功通过发动机地面试车考核。2016年初我国的某3D打印制造技术项目实现了国内首次3D打印技术在转子类零件上的应用,显著提升了发动机综合性能。然而,限制3D打印技术在航天领域应用的因素主要是太空中的真空环境,在恶劣的真空环境中影响航天器工作的因素有很多。目前3D打印出的零部件仅适用于小型、薄壁的组件,而体积较大的航天器部件,目前还处于系统性的工艺和结构优化的研究阶段。
3D打印技术在医疗领域也得到了广泛应用,例如制备特定患者的解剖模型、解剖学操纵辅助工具,制备个性化的特异性植入物(如骨骼、韧带和其他结构)。如果在植入物上加载活性物质,能发挥更大的作用。目前限制3D打印技术进一步在医学上发展的主要因素是3D打印材料,3D成型植入物是静态无生命的,但人体内的环境是复杂多变的,人体中的许多反应机制目前还不明确,打印材料在人体内并不能随着体内环境的变化而进行相关的适应性调整,因此无法达到理想的治疗效果。
总之,3D打印技术可以应用的领域很多。无论是在各大新闻中出现的各领域的3D打印尖端技术成果,还是在各大仪器展览会上越来越多的3D打印产品或样机,都可以证明3D打印技术正被各国高度,重视并且该技术也在不断高速发展与创新。
目前,3D打印技术仍处于技术发展阶段,也正是因为受到技术的限制,3D打印对新商业模式的参与仍较少。我国高度重视增材制造产业,政府就增材制造推出了一系列的扶持政策。3D打印技术在航空航天及医疗领域的应用前景非常广阔,市场对制造提出的各种特殊需求对3D打印技术起着不断推动的作用,因此3D打印技术打印出的航空航天和医疗产品的市场价格将会逐步降低。相信在不远的将来,3D打印技术在航空航天以及医疗等领域的应用会越来越广泛,甚至促使大规模廉价航天器时代的快速到来。