[发明专利]基于欧拉回路的生物3D打印路径规划方法有效
| 申请号: | 202110840659.8 | 申请日: | 2021-07-25 |
| 公开(公告)号: | CN113561491B | 公开(公告)日: | 2022-05-13 |
| 发明(设计)人: | 赵丹阳;杨卓达;张诚;李红霞;史伟良 | 申请(专利权)人: | 大连理工大学 |
| 主分类号: | B29C64/393 | 分类号: | B29C64/393;B33Y50/02 |
| 代理公司: | 大连理工大学专利中心 21200 | 代理人: | 关慧贞 |
| 地址: | 116024 辽*** | 国省代码: | 辽宁;21 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 基于 回路 生物 打印 路径 规划 方法 | ||
1.一种基于欧拉回路的生物3D打印路径规划方法,其特征在于,该方法通过对模型切片轮廓内部区域进行子区划分,并生成对应Reeb图,将Reeb图转化为欧拉图,并求得一条欧拉回路,依据欧拉回路指引并套用自适应混合填充模板依次生成子区路径,最后对填充路径进行优化重排,得到打印路径,形成一种具有高度连续性的新型路径规划方法,用于生物3D打印的扫描填充;
方法的具体步骤如下:
步骤一将生物组织模型按给定层高H进行切片,生成一个平面作为切片层,得到模型切片轮廓;该给定层高H决定了打印成品的精度、强度和打印时长,H越小则打印精度越高、强度越大,打印时间越长;通常选择H在0.1mm至0.3mm范围内;利用MATLAB软件读取3D打印常用的立体光刻格式文件,即STereoLithography简称STL模型文件,计算切片层与STL模型文件的交点坐标,得到所有交点坐标即为模型在本层内的切片轮廓信息,将其储存;在所有切片层内依次重复上述步骤,即可得到整个模型切片轮廓;获得模型切片轮廓信息;
步骤二在切片层内按给定距离h及打印轮廓层数n将模型内外轮廓进行偏置;此处给定的偏置距离h决定了打印成品的填充密度和打印强度;打印轮廓层数n决定了打印成品的精度、强度、打印时长,n越大则打印成品强度越大,打印时间越长;通常选择n等于2或3;
为保证打印成品精度和强度,先将本层模型轮廓按给定距离h进行n次偏置;外轮廓向内部偏置,内轮廓向外部偏置;偏置n次后得到的内外轮廓之间的内部区域为后续内部填充区域;
步骤三在切片层内利用Boustrophedon精确子区划分方法对轮廓偏置后的内部区域进行子区划分;
在二维切片层内生成一条扫描直线,使其沿扫描方向扫描过整个切片轮廓区域;依据莫尔斯定理可得相关推论:自由构型空间中切片的端点数目改变时,切片拓扑结构发生变化,相应区间的数目也必须发生变化;由此推论可知,切线端点数目变化时其拓扑结构发生变化;记录下扫描过程中切线端点数目变化的位置信息作为子区初步划分的依据,称此位置为临界点位置;
依据临界点位置对轮廓区域进行初步子区划分:依据初步划分后的子区间连通性的关系,进行进一步的子区合并,即得到Boustrophedon精确子区划分的子区信息;
步骤四在切片层内将划分后的子区信息存储为Reeb图数据结构;
生成一种Reeb图结构,图的节点对应子区的两个临界点,图的边对应子区的轮廓信息;将对应信息储存在Reeb图数据结构中;计算每个子区临界点在扫描方向上的距离,并储存为Reeb图边的权值信息;
步骤五在切片层内将储存有子区信息的Reeb图依据构建的数学模型并基于LP求解器将Reeb图转化为欧拉图,生成储存有子区信息的欧拉图数据结构;
因Reeb图中节点的度为1或3,均为奇数,而欧拉图的节点度数均为偶数,所以Reeb图一定不是欧拉图;为构建欧拉回路,需要将Reeb图转化为欧拉图;将Reeb图转化为欧拉图的过程即是将选定图的边加倍的过程,其对应轮廓区域即是将选定子区分割为上下两部分的过程;
设一个图G的点集合为N,边集合为E,且允许一对点间存在多条边;设点和边的关联矩阵ane,n∈N,e∈E;依据以下构建的数学模型确定需要加倍的边:
xe是整数且xe≥0,e∈E;
wn是整数且wn≥0,n∈N;
n∈N;
其中:xe是边e需要增加的边数目;∑eane是点n的度,即与点n相连的边数目;bn是一个变量,当点n的度是偶数时,bn=0,当点n的度为奇数时,bn=1;wn是一个变量,它使得∑e∈Eanexe对于奇数节点是奇数,对于偶数节点是偶数;ce是边e的代价权值;综上所述,将Reeb图转化为欧拉图可以归纳为找到xe,e∈E,使其满足以上模型;
依据以上将Reeb图转化为欧拉图的数学模型,利用MATLAB中的LP求解器,得到特定的边加倍后的欧拉图数据结构;将加倍的边信息和子区信息依据Reeb图信息储存到新生成的欧拉图数据结构中;
步骤六在切片层内使用Fleury算法在生成的欧拉图中求解一条欧拉回路;利用Fleury算法进行欧拉回路的求解的过程如下:
Step1:在图G中任取一个节点v0,设起点P0=v0;
Step2:沿路径Pi=v0e1v1e2v2…eivi走到节点vi,则从边集E(G)-{e1,e2,…,ei}中选取一条边ei+1,边ei+1应满足与节点vi相关联且除非无别的边可以选,否则ei+1不应是Gi=G-{e1,e2,…,ei}中的桥;
Step3:当Step2无法进行时算法停止;此时得到的回路Pm=v0e1v1e2v2...emvm(vm=v0)为G中的一条欧拉回路;
步骤七在切片层内依据欧拉回路和自适应混合填充模板对子区进行依次填充,生成子区路径;
设计子区填充模板:A类模板对应欧拉图中一条边的填充模板,B类、C类模板对应欧拉图中两条边的填充模板;自适应混合填充模板使用轮廓边界和平行直线填充相结合的方式,通过在子区范围内按照指定偏置距离h自适应微调平行线间距,以实现控制子区路径的起点位置和终点位置,达到相连子区路径最大程度的连续性;
预设定第一个子区填充起点位置,通过计算本子区可能的终点位置和下一子区可能的起点位置之间的距离,确定两个相邻子区起始点相距最近的终点位置和起点位置,并根据子区欧拉图对应边数目套用填充模板,进行本子区内的子路径生成;
按照欧拉回路指引,并按照上述确定子区起点位置和终点位置的方式,套用自适应混合填充模板进行所有子区的填充,直至欧拉图对应所有子区全部填充完毕;
步骤八在切片层内选定初始子路径,并依据各个子路径起点和终点位置关系对已经生成的子路径进行次序、方向重排,得到单层内部最终填充路径;将内部路径与轮廓偏置路径结合,得到层内填充路径;
由于一个欧拉图中可能存在很多欧拉回路,按照Fleury算法求解的欧拉回路仅为多条回路中的一种情况;由于子区对应两条边的自适应混合填充模板将子区分为上下两条路径;所以在相邻子区之间的子路径连接时可能存在交叉点,因此对预先生成的子区路径进行重排可以进一步优化整体路径的连续性;
选定第一条子路径为第一子区对应的一条路径,得到其终点坐标;
依据终点坐标寻找所有子路径中在设定阈值范围内最近的路径起点或终点;若不存在阈值范围内的点则设定此点为路径断点,寻找距离最近的路径起点或终点;
依据路径连续性方向调整选定子路径的正方向,即若搜索到的最近点为一条子路径的起点,则按原生成路径方向排列,若搜索到的最近点为一条子路径的终点,则将该子路径方向翻转进行排列;
依次进行以上步骤直到所有子路径被遍历,最终将重排后的子路径连接起来得到此切片子区的填充路径;将本切片层的内部路径与轮廓偏置路径结合,得到本层填充路径;
步骤九在相邻切片层内采用正交填充的方式,重复步骤二至步骤八的过程,得到整个模型的填充路径;
3D打印路径填充的角度对打印成品的强度有很大影响,研究表明在使用平行直线扫描填充方式时,相邻层填充直线扫描角度采用相交90°的正交填充时具有最优的打印强度;由于填充模板采用沿轮廓填充与平行直线扫描填充相结合的混合填充方式,因此填充扫描线方向视为模板中平行直线扫描填充的方向;在确定模型位置后,奇数层和偶数层的扫描线方向正交,在每个切片层内重复步骤二至步骤八则可得到整个模型的打印路径;
步骤十将得到的模型填充路径生成G代码,输入3D打印机,即可实现打印;
确定生物3D打印机类型,编写头文件;并将模型填充路径坐标信息转化为打印机可识别的G代码格式,将其输入3D打印机即可完成打印。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于大连理工大学,未经大连理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110840659.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种汽车轮毂轮辋宽度检测装置及检测方法
- 下一篇:说话瓣膜





