庹军波,王 晓,张贤明,刘培基
(1.重庆工商大学a.废油资源化技术与装备教育部工程研究中心;b.机械工程学院,重庆 400067;2.重庆大学机械传动国家重点实验室,重庆 400044)
在能源价格不断上涨、制造企业对降低能源成本的极致追求以及“双碳3060”目标的背景下[1],节能降碳研究已越来越重要。3D打印作为制造业等领域未来一项重要的发展技术,其能耗优化已成为促进制造业可持续发展、缓解能源危机的重要途径,同时也逐步受到众多学者的关注[2]。
熔融沉积式(FDM)3D打印作为使用最广泛的3D打印技术,已有不少学者对其能耗展开了研究。例如,纪晓磊等[3]从填充路径优化方面提出了轮廓偏置法与实体内部Zigzag填充相结合的复合方式,实现了填充能耗减少;VAISSIER等[4]采用了遗传算法对内外支撑结构进行修剪,于支撑结构优化角度出发降低了支撑结构的打印能耗。
相比于填充路径和支撑结构的能耗优化,轮廓路径能耗优化的研究一直较少。近年来,随着人工智能的兴起、各种算法的提出和完善,轮廓路径规划的研究逐渐兴盛起来,包括打印起始点位置、轮廓打印顺序、路径拐角平滑度等方面。例如,吕宁、韩兴国等[5-7]采用改进的最短距离法和改进的近邻法优化打印起始点位置,进而实现了轮廓的打印能耗的优化;崔凤英、杨伟东等[8-9]将轮廓打印顺序视作解决旅行商问题,分别通过融合算法和遗传算法优化了轮廓打印顺序,降低了轮廓打印的能耗;王迪尔、THOMPSON等[10-11]分别通过速度正交分解方法和抛物线混合轨迹规划方法将行程中的直线拐角替换为圆弧曲线,使各轴速度能均匀变化,减少由于速度突变产生的能耗。
上述方法对3D打印轮廓路径节能规划起到了一定作用,但一直未能解决切片软件确立起始点位置时因遵循最短距离法原则而陷入局部最优的问题。即规划时遵循喷头完成当前轮廓打印后选取距其最近的起始点对应轮廓进行打印的原则,每次只选取距离最近的点,不再进行回溯,但是往往只能使该段路径最短,并不能保证总路径最短,导致打印总能耗增加的问题。
为解决上述问题,本文提出一种面向低碳节能的FDM 3D打印切片轮廓路径规划方法。该方法利用遗传模拟退火算法确立轮廓打印顺序,避免了上述路径长度局部最优的问题;同时,后续还对轮廓起始点位置进行了优化,实现了能耗的进一步降低。
FDM 3D打印包括“建模-切片-打印-后处理”4个过程。其中,切片过程为将三维模型的打印过程进行细化,包括轮廓设计、轮廓填充等内容;为了防止在打印过程中发生变形和翘边等现象,通常先打印轮廓,再进行轮廓填充。在打印轮廓或规划轮廓时,每个轮廓均有一个打印起始点和打印终点(通常为同一个点),从某轮廓的终点到下一个轮廓起始点需要走过的距离即为空行程。轮廓路径规划就是将轮廓起始点和终点按照一定顺序连接起来,得到短空行程路径的过程。
一个轮廓在最终打印时只有一个最佳起始点。当已知打印起始点集合M={S1,S2,S3,…,SG}时,设d(si,sj)为单层切片中第i个轮廓起始点到第j个轮廓起始点之间的空行程,可表示为:
(1)
式中:(xi,yi)和(xj,yj)分别为si和sj的坐标。
根据式(1),可推导出轮廓路径规划的目标函数,即FDM 3D打印过程中喷头空行程运动总路程最短的表达式为:
(2)
本文提出的方法将遗传模拟退火算法作为FDM 3D打印轮廓路径规划的工具,结合遗传算法的快速收敛特性[12]与模拟退火算法能接受较差解的优势[13],既解决遗传算法易陷入早熟的问题,又能够提高寻找最短路径长度过程的收敛速度和计算效率。具体操作步骤如图1所示。
图1 轮廓路径规划操作步骤
假设每层切片中需要加工的轮廓图形共有G个,定义L1为最外层轮廓,L1中包含有G-1个封闭轮廓,分别记为Li={L2,L3,…,LG}。每个轮廓中有不同数量的顶点,则任意轮廓的顶点集合为Lij={Li1,Li2,Li3,…},除最外层轮廓外每个轮廓的中心为Ls= {Ls2,Ls3,…,LsG},针对不规则多边形可选取该轮廓的几何重心作为该轮廓的中心。
步骤1:确定轮廓中心集合R。选取最外层轮廓的一个顶点L11,令S1=L11,并于其他轮廓的中心组成遗传模拟退火算法的初始点集R={S1,Ls2,Ls3,…,LsG}。
步骤2:求解集合R间最短路径。从S1出发,遍历所有初始点集,然后回到S1,将其视作解决旅行商问题,使用遗传模拟退火算法寻找S1与其他多边形轮廓中心连线距离的最优解。具体操作如图2a所示。
图2 遗传模拟退火算法流程图
①定义初始化参数。定义最优解Sbest;设置遗传算法种群数目N、迭代次数MAXGEN、交叉概率Pc、变异概率Pm;设置模拟退火算法外循环迭代次数MaxOutIter、内循环迭代次数MaxInIter、初始温度T0、冷却因子alpha。
②计算适应度值。适应度值为目标函数值的倒数。因此适应度值越小,子代个体被选中的概率就会越小[14]。本文所提出的目标函数为最短路径值,则适应度值为:
(3)
③执行选择操作。根据每个个体的适应度值,采用二元锦标赛的方式从所有路径值中选取最优的个体进入下一代。
④交叉、变异运算。依据概率Pc和Pm随机确定交叉变异个体,然后在该个体中随机挑选两个起始点进行交换、逆转、插入操作[15],生成新的个体。
遗传算法运行完一次,将子代种群中最优个体的前30%进行模拟退火操作,如图2b所示。
①产生新解。在搜索时将交换结构、逆转结构、插入结构赋予不同的权重,采用轮盘赌的方式选择使用哪个结构,在该邻域结构下产生当前路径Scurr的新路径Snew,并比较两路径的适应度值g(Scurr)与g(Snew)。
②判断是否接受新解。当新路径的适应度值优于当前最优路径时,则接受该新路径;否则按照Metropolis准则依概率接受新路径,接受概率p为:
(4)
③更新模拟退火全局最优解。比较当前新路径的目标函数g(Snew)与当前最优解的目标函数g(Sbest1)来更新全局最优路径。
④更新当前温度。用于在外循环中修改温度值,使算法具有渐近收敛性,整个系统以概率1收敛到全局最优解,更新后的温度为:
T(t+1)=alpha·T(t)
(5)
⑤输出模拟退火最优个体。当外层循环次数达到最大值时,跳出模拟退火算法,输出当前最短路径。
返回遗传算法,如图2c所示。
①重组新的Chrom。将模拟退火算法每次迭代输出个体Sbest1重组为新的子代种群。
②更新遗传算法全局最优解。比较重组的种群Chrom的最优个体bestChrom以及当前Sbest的适应度值更新全局最优解。
③输出全局最优解。重复Step 2步骤,达到遗传算法最大迭代次数,输出此时全局最优解Sbest,即该算法下的最短路径。
步骤3:确定打印起始点位置和打印顺序。由步骤2得出的轮廓中点间最短路径,将该路径经过每个轮廓的第一个点定为该轮廓的起始点Si,建立轮廓打印起始点集合M′={S1,S2,S3,…,SG},并确定打印顺序为S1-S2-S3…SG-S1。
步骤4:优化起始点位置。选取起始点集合M′后,对其进行优化处理。首先选取起始点集合M′中的S1和S3,遍历S2所在轮廓的所有顶点L2j,找到与S1和S3两点距离和更近的点,更新S2所在的点。若存在多个顶点距离和最近,则选择离S3更近的点作为更新的S2。按照以上步骤依次更新S3,S4,…,SG-1。优化过程中,若某一点发生更新则需要重新判断前面的点是否需要更新,若需要更新则直至S2,若不需要更新则继续正向优化。对于最后一个点SG,则参考SG-1和S1更新为最短距离的点。最后获得优化后的起始点集合M={S1,S2,S3,…,SG}以及打印顺序S1-S2-S3…SG-S1。
为验证所提出方法的有效性,采用威布三维双喷头打印机打印某零件的过程作为案例进行了试验验证。其中,零件的材料为PLA,零件的三维模型如图3所示,包括7个轮廓(零件最外层轮廓记为1个轮廓)。能量消耗测试仪器为LMG600高精度功率分析仪,采样频率为50 Hz。打印时,喷嘴吐丝直径为0.8 mm,单层打印厚度为0.2 mm,打印速度为700 mm/min。整个试验测试现场如图4所示。
图3 模型
图4 测试现场
此外,为了与现有切片过程进行比较,试验还将Cura和Simplify 3D切片软件规划的路径作为对照组,与本文将所提方法规划路径(即实验组)进行了对比分析和讨论。
实验组与对照组路径结果如图5所示。试验组规划出的轮廓路径优化打印顺序为S1-S2-S3-S4-S5-S6-S7-S1,避免了从Cura软件从A点到B点、Simplify3D软件从A点到C点产生的局部最优的问题。此外,它们的轮廓路径长度分别212.63 mm、240.83 mm、246.30 mm,如表1所示。从表可知,实验组相较于对照组的两种方法分别缩短了11.71%和13.98%。由此可见,本文提出的方法有效缩短了空行程。
表1 路径长度对比
图5 轮廓路径图对比
关于打印过程的时间和能耗情况,结果如表2所示。由表2可知实验组规划的路径单层打印时间为74.75 s,相较于对照组两种方法分别缩短了10.21%和11.80%。实验组规划的路径单层打印能耗为2 069.91 J,在打印环境与床身、喷头加热温度相同的条件下相较于对照组两种方法分别减少了12.87%和14.73%。由此可见,本文提出的方法打印效率明显提高、打印能耗明显降低。
表2 打印时间以及能耗比较
本文提出了一种针对零件在切片打印过程中存在多个封闭轮廓的FDM 3D打印轮廓路径规划方法。该方法基于遗传模拟退火算法的快速收敛以及不易早熟的特性,通过分步规划打印路径,解决了传统切片软件带来的路径长度局部最优问题。实验结果表明本文提出的方法与传统切片软件相比:该方法能有效缩短轮廓路径的空行程、减少单层打印时间,从而使打印效率明显提高;同时空行程的减少也使得打印总能耗降低(甚至减少了10%以上),特别适用于轮廓数量较多的情形。
鉴于所提方法只考虑了目前最普遍的打印情况(即轮廓打印起始点和终点相同),故下一步将研究轮廓打印起始点和终点不同时的路径规划。