本发明涉及三维打印领域,尤其涉及一种三维打印中喷头的最优移动路径规划方法。
背景技术:三维打印作为制造业领域蓬勃发展的一项新技术,被称为“具有工业革命意义的制造技术”。三维打印又称为增量制造,它可以打印出结构高度复杂且轻盈稳定的产品原形。就三维打印具体的实现机制而言,有激光固化光敏树脂成型(SLA)、熔融层积成型(FDM)、三维喷涂粘结成型(3DP)以及选择性激光烧结成型(SLS)等。其中,熔融层积成型(FDM)是三维打印中较为典型的一种,占有三维打印大约30%的市场份额。熔融层积成型的核心思想在于逐层、逐体素打印。因此,喷头的路径规划是熔融层积成型技术中的关键组成部分,也是未来三维打印技术领域的重要研究课题。目前,大多数基于熔融层积成型技术的三维打印机工作原理是这样工作的:首先,根据逐层打印思想,在各待喷涂层内,预计算待打印产品的数字模型的截面信息和喷头的移动轨迹;其次,在实际打印过程中,喷头在待喷涂层的截面内持续作X-Y平面运动,热塑性丝状材料由供丝机构送至热熔喷头,并在喷头中加热和熔化成半液态,流至指定的位置;如此循环,直到打印出产品的整个三维模型为止。在三维打印过程中,喷头在各待喷涂层内的打印至少需要满足一定的要求:喷头在待喷涂层的截面内进行打印时既需要满足喷头必须历经每个需要打印的体素,且同一体素不能被喷头反复打印,又要满足尽量减少喷头在各位置上的跳转,即便喷头必需跳转时,要求喷头的该跳转间隔不宜太长。然而,在现有三维打印研究领域中并没有提出有效的喷头移动路径规划措施以同时满足上述打印要求。可见,喷头的移动路径规划,尤其是喷头在待喷涂层的截面内的移动路径规划是三维打印过程中的关键组成部分。
技术实现要素:本发明所要解决的技术问题是针对上述现有技术提供一种既能够保证喷头遍历待喷涂层内各需要打印的体素、实现同一体素不被反复打印,又能够避免喷头在各位置上出现较长时间跳转间隔的三维打印中喷头的最优移动路径规划方法。本发明解决上述技术问题所采用的技术方案为:三维打印中喷头的最优移动路径规划方法,用于喷涂待打印物品三维模型分层后的待喷涂层截面,其特征在于,依次包括如下步骤:步骤(1),将待打印物品的数字模型在给定的直角坐标系O-XYZ中进行光栅化处理,得到利用三元组标识的落在物体内部的所有体素;步骤(2),沿Z轴的正向处理每一个待喷涂层,以该待喷涂层的体素为顶点,建立邻接图G,并设定待喷涂层上两个体素之间的权值;其中,设定两个体素分别为点(i,j)与点(i',j'),它们之间的权值W定义如下:步骤(3),设定待喷涂层上所有体素的个数为n,在所得到的邻接图G中选择其中的一个体素v1,并将体素v1记为喷头喷涂路径的已访问节点;步骤(4),根据已得到的邻接图G,进行针对体素的迭代,在迭代中不断寻找与上次访问节点满足四邻域条件且未访问的节点,并形成喷头的移动路径;其中,针对体素的迭代过程如下步骤(4-1)和步骤(4-2):步骤(4-1),在邻接图G中,在除去体素v1的剩余n-1个体素中,在与体素v1满足四邻域条件且未访问的节点中选择其中一个点vr作为喷头的最近访问节点;步骤(4-2),查找该最近访问节点vr的所有满足四邻域条件且未访问的节点,然后对节点vr的满足四邻域条件且未访问的这些节点中的任意一个节点进行访问,直到喷头最近访问节点以及所有未访问节点中均没有满足四邻域条件时,则停止迭代访问;其中,喷头停止迭代访问时的节点记为vr+1,此时喷头的访问路径记为S1,S1=(v1,v2,…,vr,vr+1);步骤(5),根据迭代访问停止时所得到的访问路径S1,对该访问路径S1上的节点个数k1进行统计,并根据统计所得访问路径S1上的节点个数k1进行如下判断操作:步骤(5-1),当所得访问路径S1上的节点个数k1小于该待喷涂层上所有体素的个数n,即k1<n时,设定路径上S1存在节点vi是节点vr+1的满足四邻域条件的节点,且节点vi+1具有未访问的满足四邻域条件的节点w,该相邻节点w不在路径S1上,则对原路径S1重新排列,得到路径S2,并在所得路径S2后加入节点w,得到新路径S3,并根据新路径S3,执行步骤(6);其中,路径S2和新路径S3表示如下:路径S2=(v1,v2,…,vi-1,vi,vr+1,vr,vr-1,…,vi+1);新路径S3=(v1,v2,…,vi-1,vi,vr+1,vr,vr-1,…,vi+1,w);步骤(5-2),当所得访问路径S1上的节点个数k1大于或等于该待喷涂层上所有体素的个数n,即k1≥n时,则输出路径S1为喷头的最优移动路径,结束判断操作;步骤(6),对路径S3上的节点数进行统计,并根据路径S3上的节点数k3与该待喷涂层上所有体素的个数n进行如下操作:步骤(6-1),当路径S3上的节点数k3小于该待喷涂层上所有体素的个数n,即k3<n时,设定在路径S3上存在节点vj,且节点vj具有未访问的满足四邻域条件的节点w1,该相邻节点w1不在路径S3上,则标记该节点w1为最近访问节点;然后在标记的该最近访问节点w1的所有未访问且满足四邻域条件的m-1个节点中,任选其中的一个未访问节点进行访问,从而自节点w1延展得到路径S4,并执行步骤(7);其中,路径S4=(w1,w2,…,wm-1,wm);步骤(6-2),当所得路径S3上的节点个数k3大于或等于该待喷涂层上所有体素的个数n,即k3≥n时,则输出路径S3为喷头的最优移动路径,结束判断操作;步骤(7),在延展所得路径S4上,如果节点wm具有未访问且满足四邻域条件的节点vg,且满足i+1<g<k3,节点vi+1是节点vg+1的满足四邻域条件的节点,则将原有路径S3变成新路径S5,并执行步骤(8);其中,所得新路径S5表示如下:步骤(8),如果在路径S5上的节点数k5仍然小于该待喷涂层上所有体素的个数n,即k5<n时,则将路径S5上的节点访问顺序进行逆序,得到路径S5的逆序路径S6,并将逆序路径S6作为新的路径S3后,再次转至步骤(6)中执行判断;其中,逆序路径S6如下表示:如果在路径S5上的节点数k5大于或者等于该待喷涂层上所有体素的个数n,即k5≥n时,则输出路径S5为喷头的最优移动路径,结束判断操作。与现有技术相比,本发明的优点在于:首先,本发明中将待打印物品的数字模型光栅化处理,并得到待打印物品的三维模型后,喷头在三维模型的其中一个待喷涂层的内部进行喷涂填充时,通过得到待喷涂层内部体素的邻接图,并设定邻接图中两两体素之间连线的权值,将规划喷头在待喷涂层内部的喷涂移动路径问题转换为计算各连线权值之和最小值的问题,从而简化了规划喷头在待喷涂层内部移动路径计算复杂度;其次,通过针对邻接图内各体素的迭代寻找,得到上次访问节点的满足四邻域条件且未访问的节点,以形成喷头在待喷涂层内部喷涂时的最优移动路径,形成的喷头的该最优移动路径既保证喷头遍历邻接图内各需要打印的体素、实现同一体素不被反复打印,又能够避免喷头在各位置上出现较长时间跳转间隔,保证了打印物品三维模型时的模型稳定性,提高了三维打印的速度。附图说明图1为本发明实施例三维打印中喷头的最优移动路径规划方法流程示意图;图2为体素点P与其满足四邻域条件的体素位置示意图。具体实施方式以下结合附图实施例对本发明作进一步详细描述。针对喷头在待打印物品三维模型分层后的各截面内部的喷涂问题,本实施例提供一种喷头的最优移动路径规划方法,利用该移动路径规划方法可以对待喷涂层的截面内部进行有效的喷涂。具体地,该喷头的最优移动路径规划方法,依次包括如下步骤:步骤(1),将待打印物品的数字模型在给定的直角坐标系O-XYZ中进行光栅化处理,得到利用三元组标识的落在物体内部的所有体素;通过将待打印物品数字模型光栅化处理后,得到待打印物品的三维模型,该待打印物品内部由体素组成,各个体素均利用三元组标识,即利用三维坐标来标记,例如,待打印物品内部的某个体素的三维坐标为(x,y,z);待打印物品的三维模型由沿Z轴正向上的多个二维的待喷涂层构成;假设待打印物品的三维模型V由N个二维的待喷涂层构成,本实施例中喷头的移动路径规划方法即针对N个二维待喷涂层中的其中一个待喷涂层的内部路径进行;当喷头利用该最优移动路径规划方法完成一层的内部路径喷涂后,再利用多边形逼近方法填充待喷涂层的外部轮廓路径,填充完该待喷涂层的外部轮廓路径后,喷头转而利用该最优移动路径规划方法继续依次完成剩余各待喷涂层内部路径的喷涂过程;步骤(2),沿Z轴的正向处理每一个待喷涂层,以该待喷涂层的体素为顶点,建立邻接图G,并设定待喷涂层上两个体素之间的权值;两个体素的连线构成一条边,该权值即代表两个体素之间的相对距离,这样我们就可以把喷头在该待喷涂层内部喷涂时的路径规划问题抽象为哈密顿图问题,即在待喷涂层的内部,只要使得喷头所依次遍历过的两两体素间所有连线的权值之和最小,此时对应着喷头既遍历完该待喷涂层内部的所有体素,又可以保证该待喷涂层内部的同一体素不被重复喷涂,从而提高喷涂效率;其中,关于两个体素之间连线的权值情况作以下说明:设定两个体素分别为点(i,j)与点(i',j'),它们之间的权值W定义如下:步骤(3),设定待喷涂层上所有体素的个数为n,待喷涂层上的n个体素包括了满足四邻域条件的体素以及不满足四邻域条件的体素,在待喷涂层上的n个体素中,任意两体素之间相互连接,则在待喷涂层上的所有连接线构成了邻接图G,在所得到的邻接图G中选择其中的一个体素v1,并将体素v1记为喷头喷涂路径的已访问节点;其中,此处的已访问节点表示喷头已经遍历过的体素;在待喷涂层的所有体素中,将满足四邻域条件的体素分成一类,这样设置可以保证三维模型被打印时的稳定性以及保证喷头在待喷涂层的内部具有最短的移动路径,以尽量减少大跨度的移动;例如,设定点P(x,y,z)为待喷涂层上的体素,则该体素点P的四邻域体素分别为P1(x,y+1,z)、P2(x+1,y,z)、P3(x,y-1,z)和P4(x-1,y,z),具体情况参见图2中所示,体素P1、P2、P3和P4即均为体素点P的满足四邻域条件的节点,也就是说,体素P1、P2、P3和P4也均是体素点P的相邻节点;步骤(4),根据已得到的邻接图G,进行针对体素的迭代,在迭代中不断寻找与上次访问节点满足四邻域条件且未访问的节点,并形成喷头的移动路径;其中,针对体素的迭代过程如下步骤(4-1)和步骤(4-2):步骤(4-1),在邻接图G中,在除去体素v1的剩余n-1个体素中,在与体素v1满足四邻域条件且未访问的节点中选择其中一个点vr作为喷头的最近访问节点;步骤(4-2),查找该最近访问节点vr的所有满足四邻域条件且未访问的节点,然后对节点vr的满足四邻域条件且未访问的这些节点中的任意一个节点进行访问,直到喷头最近访问节点以及所有未访问节点中均没有满足四邻域条件时,则停止迭代访问;其中,喷头停止迭代访问时的节点记为vr+1,此时喷头的访问路径记为S1,S1=(v1,v2,…,vr,vr+1);步骤(5),根据迭代访问停止时所得到的访问路径S1,统计得到该访问路径S1上的所有节点个数k1,并根据统计所得访问路径S1上的节点个数k1进行如下判断操作:步骤(5-1),当所得访问路径S1上的节点个数k1小于该待喷涂层上所有体素的个数n,即k1<n时,说明该访问路径S1只经过该待喷涂层上的部分体素,则需要扩展路径以经过该待喷涂层上的所有体素,设定路径S1上存在节点vi是节点vr+1的满足四邻域条件的节点,且节点vi+1具有未访问的满足四邻域条件的节点w,该相邻节点w不在路径S1上,则对路径S1重新进行排列,得到路径S2,路径S2表示为S2=(v1,v2,…,vi-1,vi,vr+1,vr,vr-1,…,vi+1);并在所得路径S2后加入节点w,从而得到新路径S3,新路径S3表示为S3=(v1,v2,…,vi-1,vi,vr+1,vr,vr-1,…,vi+1,w),然后执行步骤(6);步骤(5-2),当所得访问路径S1上的节点个数k1大于或等于该待喷涂层上所有体素的个数n,即k1≥n时,说明该访问路径S1已经经过该待喷涂层上的所有体素,则输出路径S1为喷头的最优移动路径,结束判断操作;因为该访问路径S1已经经过该待喷涂层上的所有体素,且有且仅有一次,则此时所输出的路径S1即为喷头在该待喷涂层上的最优移动路径;步骤(6),对路径S3上的节点数进行统计,并根据路径S3上的节点数k3与该待喷涂层上所有体素的个数n进行如下操作:步骤(6-1),当路径S3上的节点数k3小于该待喷涂层上所有体素的个数n,即k3<n时,说明该访问路径S3只经过该待喷涂层上的部分体素,则需要扩展路径以经过该待喷涂层上的所有体素,设定在路径S3上存在节点vj,且节点vj具有未访问的满足四邻域条件的节点w1,该相邻节点w1不在路径S3上,则标记该节点w1为最近访问节点;然后在该最近访问节点w1的所有未访问且满足四邻域条件的m-1个节点中,任选其中的一个未访问节点进行访问,从而自节点w1延展得到路径S4,S4=(w1,w2,…,wm-1,wm),然后执行步骤(7);其中,节点w1的所有未访问且满足四邻域条件的m-1个节点分别标记为w2,…,wm-1,wm;步骤(6-2),当所得路径S3上的节点个数k3大于或等于该待喷涂层上所有体素的个数n,即k3≥n时,说明该访问路径S3已经经过该待喷涂层上的所有体素,则输出路径S3为喷头的最优移动路径,结束判断操作;因为该访问路径S3已经经过该待喷涂层上的所有体素,且有且仅有一次,则此时所输出的路径S3即为喷头在该待喷涂层上的最优移动路径;步骤(7),在延展所得路径S4上,如果节点wm具有未访问且满足四邻域条件的节点vg,且满足i+1<g<k3,节点vi+1是节点vg+1的满足四邻域条件的节点,则将原有路径S3变成新路径S5,然后执行步骤(8);步骤(8),如果在路径S5上的节点数k5仍然小于该待喷涂层上所有体素的个数n,即k5<n时,说明该访问路径S5只经过该待喷涂层上的部分体素,则需要扩展路径以经过该待喷涂层上的所有体素,则将路径S5上的节点访问顺序进行逆序,得到路径S5的逆序路径S6,并将逆序路径S6作为新的路径S3后,再次转至步骤(6)中执行判断;如果在路径S5上的节点数k5大于或者等于该待喷涂层上所有体素的个数n,即k5≥n时,说明该访问路径S5已经经过该待喷涂层上的所有体素,则输出路径S5为喷头的最优移动路径,结束判断操作,因为该访问路径S5已经经过该待喷涂层上的所有体素,且有且仅有一次,则此时所输出的路径S5即为喷头在该待喷涂层内部喷涂填充时的最优移动路径。