基于STL模型的刀轨生成方法、智能终端以及存储装置与流程

文档序号:26138584发布日期:2021-08-03 14:21阅读:171来源:国知局
基于STL模型的刀轨生成方法、智能终端以及存储装置与流程

本发明涉及工件加工领域,尤其涉及一种基于stl模型的刀轨生成方法、智能终端以及存储装置。



背景技术:

在cam(computeraidedmanufacturing,计算机辅助制造)中,常用的刀轨生成的方法为模型离散点与刀触点求交得到刀触点集,将刀触点进行排序后得到有序刀轨(刀位集)。

为了提高刀轨精度,常做以下处理:

(1)对导入数据进行处理,如导入三维点云数据,stl(stereolithography,立体光刻)数据,数字图像数据,stl去冗余数据等。

(2)通常依据刀触点对应曲面位置处的微分几何性质和刀具类型确定刀位点,并通过插值的方法使刀轨光顺。

现有技术中,为了提高刀轨计算效率,通常利用遗传算法、最小生成树算法等进行刀位排序得到有序刀轨。

公布号cn101403909a提出一种三角网格细分曲面nc刀轨生成方法,该专利利用空间聚类索引结构,剔除stl模型中的冗余信息,面面求交快速得到刀触点,后对刀位点进行排序生成刀轨,该算法可以提高刀轨精度和刀轨生成效率,但是始终未重建stl的拓扑结构,因此对于stl三角面片集合的精度表达欠佳。

公布号cn110227876b提出一种基于3d点云数据的机器人焊接路径自主规划方法,该专利采用遗传算法对焊接件的三维点云数据进行位姿进行修正最终得到机器人的焊接路径。该方法能够提高焊接自动化水平,但受限于遗传算法效率问题和稳定性问题,不适用于复杂结构焊接件的路径规划。

公布号cn109299556a提出一种基于图像处理的环切刀轨生成及优化方法,该专利利用图像处理的方法,可以快速生成任意加工区域的环切平滑刀轨。该方法受限于零件场景在数字图像中的表达,精度欠佳。

然而,刀轨路径优化仍存在以下问题:

(1)模型导入数据精度欠佳。以常用的stl模型为例,因为stl文件自身缺陷,文件本身不包括模型三角面片的拓扑信息,并且存在大量冗余信息。与此同时,如果三维模型转换stl方式不当,会造成数据“空洞”等文件错误问题发生。

(2)无法对(1)中所提到的“空洞”等问题进行自动修补。通常解决办法为人工修补原始三维模型文件,重新转换成stl文件生成刀轨,如果遇到大量同类文件错误问题或者模型复杂程度较高,会对刀轨生成造成严重阻碍。

(3)刀轨生成过程不具备特征识别功能。大多数研究者只专注于刀触点精度的提升,计算效率的提升,但未考虑不同模型特征所对应的加工策略的选择(即实际加工效率与加工质量)。

(4)刀轨生成过程盲目追求高精度,导致计算效率大打折扣,同时未将加工精度作为刀轨生成依据,实际加工指导意义较低。



技术实现要素:

为了克服现有技术的不足,本发明提出一种基于stl模型的刀轨生成方法、智能终端以及存储装置,利用哈希算法重建导入stl模型的拓扑信息,大大提高了导入数据的精度和效率;修补stl文件错误,有效解决因stl文件错误导致的刀轨生成失败问题;对导入模型特征自动识别,并自动分配对应特征最佳工序,大大提高了实际加工效率和加工质量;利用nubrs曲线理论上的控制点可以无限增加且不影响它的计算复杂度的特性,避免了计算曲线复杂对刀轨生成效率的影响;用容差离散插补法引入加工精度对刀轨进行光顺处理,大大提高了刀轨精度。

为解决上述问题,本发明采用的一个技术方案为:一种基于stl模型的刀轨生成方法,所述基于stl模型的刀轨生成方法包括:s101:获取stl模型,通过哈希算法剔除所述stl模型中的冗余信息,对所述stl模型进行拓扑信息重建和破面修复;s102:获取所述stl模型中的特征边的分类信息,基于所述分类信息获取区域划分信息,并通过所述区域划分信息进行工序分配;s103:获取刀触点集,构建刀轨,并通过刀触点集中的碰撞点、容差对刀轨进行光顺处理形成光顺刀轨。

进一步地,所述通过哈希算法剔除所述stl模型中的冗余信息的步骤具体包括:遍历所述stl模型中的三角面片,根据所述三角面片的顶点获取关键字,并将所述关键字的哈希值映射到哈希表中以剔除存在冲突的关键字。

进一步地,所述根据所述三角面片的顶点获取关键字的步骤具体包括:通过获取关键字,其中,k为关键字,x,y,z分别代表所述顶点在x、y、z轴上的坐标,int()代表取整数。

进一步地,所述对所述stl模型进行拓扑信息重建的步骤具体包括:对所述stl模型进行逐层切片得到stl模型中与切平面相交的三角面片的集合,所述集合包括所述三角面片与所述切平面的交点;剔除所述集合中的冗余交点,将所述集合中与同一个切平面相交的交点有序连接形成封闭轮廓。

进一步地,所述获取所述stl模型中的特征边的分类信息的步骤具体包括:对所述stl模型进行加权单位法矢计算、二角面计算,根据获取的计算结果以及特征边筛分信息确定所述特征边的分类。

进一步地,所述基于所述分类信息获取区域划分信息的步骤具体包括:根据所述分类信息计算高斯曲率、平均曲率,基于获取的计算结果、区域分类信息确定区域分类。

进一步地,所述获取刀触点集,构建刀轨的步骤具体包括:将stl模型的离散点与刀具求交获取刀触点集,并将预设的控制点连接形成刀轨。

进一步地,所述通过刀触点集中的碰撞点、容差对刀轨进行光顺处理形成光顺刀轨的步骤具体包括:根据所述刀轨中的控制点构建nurbs曲线,获取第一直线与所述nurbs曲线相交形成的弧线,并控制所述弧线小于容差以优化所述nurbs曲线形成光顺刀轨,其中,根据指定加工步长形成包括碰撞点的第一直线。

基于相同的发明构思,本发明还提出一种智能终端,所述智能终端包括处理器、存储器,所述处理器与所述存储器通信连接,所述存储器存储有计算机程序,所述处理器根据所述计算机程序执行如上所述的基于stl模型的刀轨生成方法。

基于相同的发明构思,本发明又提出一种存储装置,所述存储装置存储有程序数据,所述程序数据被用于执行如上所述的基于stl模型的刀轨生成方法。

相比现有技术,本发明的有益效果在于:利用哈希算法重建导入stl模型的拓扑信息,大大提高了导入数据的精度和效率;修补stl文件错误,有效解决因stl文件错误导致的刀轨生成失败问题;对导入模型特征自动识别,并自动分配对应特征最佳工序,大大提高了实际加工效率和加工质量;利用nubrs曲线理论上的控制点可以无限增加且不影响它的计算复杂度的特性,避免了计算曲线复杂对刀轨生成效率的影响;用容差离散插补法引入加工精度对刀轨进行光顺处理,大大提高了刀轨精度。

附图说明

图1为现有技术中stl模型生成一实施例的示意图;

图2为本发明基于stl模型的刀轨生成方法一实施例的流程图;

图3为本发明基于stl模型的刀轨生成方法另一实施例的流程图;

图4为本发明基于stl模型的刀轨生成方法中冗余信息剔除一实施例的流程图;

图5为本发明基于stl模型的刀轨生成方法中冗余交点剔除一实施例的示意图;

图6为本发明基于stl模型的刀轨生成方法中破面修复一实施例的示意图;

图7为本发明基于stl模型的刀轨生成方法中区域和边界划分以及工序分配一实施例的示意图;

图8为本发明基于stl模型的刀轨生成方法中nurbs曲线一实施例的示意图;

图9为本发明基于stl模型的刀轨生成方法中nurbs曲线优化一实施例的示意图;

图10为本发明基于stl模型的刀轨生成方法中形成光顺刀轨一实施例的流程图;

图11为本发明智能终端一实施例的结构图;

图12为本发明存储装置一实施例的结构图。

具体实施方式

为了使本发明实施方式的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各个实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中,为了使读者更好理解本发明而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本发明所要求保护的技术方案。

本发明的说明书和权利要求书及上述附图中的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

请参阅图1-10,其中,图1为现有技术中stl模型生成一实施例的示意图;图2为本发明基于stl模型的刀轨生成方法一实施例的流程图;图3为本发明基于stl模型的刀轨生成方法另一实施例的流程图;图4为本发明基于stl模型的刀轨生成方法中冗余信息剔除一实施例的流程图;图5为本发明基于stl模型的刀轨生成方法中冗余交点剔除一实施例的示意图;图6为本发明基于stl模型的刀轨生成方法中破面修复一实施例的示意图;图7为本发明基于stl模型的刀轨生成方法中区域和边界划分以及工序分配一实施例的示意图;图8为本发明基于stl模型的刀轨生成方法中nurbs曲线一实施例的示意图;图9为本发明基于stl模型的刀轨生成方法中nurbs曲线优化一实施例的示意图;图10为本发明基于stl模型的刀轨生成方法中形成光顺刀轨一实施例的流程图。结合附图1-10对本发明的基于stl模型的刀轨生成方法作详细说明。

在本实施例中,应用基于stl模型的刀轨生成方法的设备可以为电脑、手机、工件加工装置、控制台等能够对生成刀轨的智能终端。

在一个实施例中,基于stl模型的刀轨生成方法包括:

s101:获取stl模型,通过哈希算法剔除所述stl模型中的冗余信息,对stl模型进行拓扑信息重建和破面修复。

在本实施例中,获取stl模型的步骤包括:获取被加工物体的物理模型,对该物理模型进行三维建模获取三维模型,通过该三维模型获取stl模型。

在一个具体的实施例中,通过三维建模软件zw3d,pro/e,solidworks等设计被加工物体的三维模型,并利用软件导出的方式导出由三角面片构成的stl模型。

通过哈希算法剔除stl模型中的冗余信息的步骤具体包括:遍历stl模型中的三角面片,根据三角面片的顶点获取关键字,并将关键字的哈希值映射到哈希表中以剔除存在冲突的关键字。

哈希算法将关键字k通过映射函数f(k)映射到哈希表中特定位置访问数据,具有时间和空间复杂度低的优势。

其中,将哈希值映射到哈希表采用链地址法,将哈希值相同的关键字映射到同一个链表节点中,并对同一节点上的关键字进行剔除。若同一节点上的关键字相同,则仅保留一个。

在本实施例中,根据三角面片的顶点获取关键字的步骤具体包括:通过获取关键字,其中,k为关键字,x,y,z分别代表顶点在x、y、z轴上的坐标,int()代表取整数。

通过公式获取哈希值,其中,f(k)为哈希值,p为素数,其取值不大于哈希表长度m,%为取余运算符,n为stl模型包含的三角面片顶点数目。

在一个具体的实施例中,利用哈希表剔除存在冲突的关键字采用链地址法,将哈希值f()相同的关键字k都存在同一个链表节点上,再对同一节点上的关键字k进行滤除(滤除至不发生冲突为止)。例如:

k0=3f(k0)=0

k1=4f(k1)=1

k2=5f(k2)=2

k3=3f(k3)=0

k4=4f(k4)=0,先将k0存储在哈希地址为0的链表上。同时发现f(k0)、f(k3)、f(k4)冲突,再看k值发现k0=k3,k0≠k4,所以将k3滤除不存储。

在本实施例中,对stl模型进行逐层切片得到stl模型中与切平面相交的三角面片的集合,集合包括三角面片与切平面的交点;剔除集合中的冗余交点,将集合中与同一个切平面相交的交点有序连接形成封闭轮廓。其中,拓扑关系重建是建立三角面片之间的位置关系,找出任意三角面片的相邻面片。封闭轮廓表示拓扑关系建立完毕。根据交点之间的距离和排序将交点有序连接形成封闭轮廓。

其中,当集合中存在不同三角面片的交点或边之间的距离太近或重合时,剔除多余的点。根据交点之间的距离判断二者是否为冗余的交点,若是,则仅保留一个交点。

在一个具体的实施例中,对stl模型进行逐层切片,得到每层的切平面与三角面片相交的信息,根据该信息形成与切平面相交的三角面片的集合。其中,当{t1,t2}、{t3,t4}、{t5,t6}组合情况出现时(不同三角形交点的交点或边之间的距离太近或重合,计算机中点的坐标一般是double类型(不是精确值)存储的,就会出现比如xa=0.0000120,xb=0.0000121,这种情况要剔除一个点。{t1,t2}出现时,a和b本应是重合关系,只取一个点就好,现在a和b同时存在就是冗余。),会影响拓扑重建,视a=b(a与b重合,下同)、c=e,d=f、h=i,应进行去重和过滤操作,只留下单一点。经过上述操作,得到该切平面上所有不影响拓扑重建的点坐标。通过三角形交点的有序性判断最终得到交点的封闭轮廓,将封闭轮廓有序性相连完成拓扑重建。

在上述实施例中,{t1,t2}情形可以称为点a和b(2个点)与切平面重合。{t3,t4}情形可以称为线cd和ef(2条线)与切平面重合。{t5,t6}情形可以称为点g,h和点i,j(4个点)与切平面重合。而t7绕l点旋转,可以分别出现以上三种情形,因此作为临界判断条件。

拓扑重建后的stl模型存在不为三角形形状的破面区域,因此需要进行破面修复。其中,破面修复的步骤包括:因此遍历stl模型中的三角形面片,获取≥3条直线汇聚的顶点(直线汇聚的顶点是三角面片与相邻三角面片上的顶点),根据该顶点确定破面区域。获取破面区域的边形成的夹角,以夹角中的最小夹角的顶点为出发点连接破面区域的其他顶点获取新的夹角。将新的夹角中的最小夹角所在的三角形确定为新的三角面片。对剩下的破面区域重复上述过程直至破面区域修复完成。

在一个具体的实施例中,遍历≥3条直线汇聚的顶点(直线汇聚的顶点是三角面片与邻面片上的顶点),如图6中的a,b,c,d,e。分别求出破面区域相邻边(边界)形成的夹角∠abc,∠bcd,∠cde,∠dea,∠eab,以最小角∠abc为出发点,分别连接可能构成三角形的顶点e和d,如下图计算出∠ɑ和∠β,选定最小角∠β并连接bd,重复该过程,选定最小角∠ɑ连接be,最终面片修复完成(是以最小角开始重复。画完bd之后待修复轮廓由abcde变为abde,下次再从abde中最小角∠abd出发,连接be。重复到破面区域都是三角形为止)。

s102:获取stl模型中的特征边的分类信息,基于分类信息获取区域划分信息,并通过区域划分信息进行工序分配。

特征区域划分要确定特征区域和区域特征边,为了确定区域特征边,引入加权单位法矢和二面角的计算方法。

在本实施例中,获取所述stl模型中的特征边的分类信息的步骤具体包括:对stl模型进行加权单位法矢计算、二角面计算,根据获取的计算结果以及特征边筛分信息确定特征边的分类。

在本实施例中,选取步长为10°进行特征边筛分计算。请查看表一,表一为特征边筛分表,结合特征边筛分表获取特征边的分类。

表一、特征边筛分表

在一个具体的实施例中,加权单位法矢计算:

其中,:第k个相邻三角网格的单位加权法矢,:第i个三角面片对应的单位法矢,:第i个三角形面积。

二面角计算:

其中,为二面角夹角,相邻三角形分别对应的单位法矢。

基于分类信息获取区域划分信息的步骤具体包括:根据分类信息计算高斯曲率、平均曲率,基于获取的计算结果、区域分类信息确定区域分类。

在一个具体的实施例中,通过如下公式计算模型中某点p的高斯曲率、平均曲率:

其中,为p点第i个相邻三角形的内角,为p点第i个相邻三角形的面积,n为p点的三角形个数。

其中,为以为顶点的三角形点集合,:第j条公共边的向量,为公共边对应的两个三角面内角。向量的方向根据特征边的分类确定。

在本实施例中,根据表二、区域分类及工序分配表确定区域的类型以及每个区域的工序分配方式。

表二、区域分类及工序分配表

除此之外,孔面属于平面,不同孔型可由上述面型组合而成,其工序采用孔加工工序。对于区域边界,凸面、脊形和鞍脊面的边界采用清角加工工序,凹面、谷形、鞍谷面的边界采用角度限制加工工序。

s103:获取刀触点集,构建刀轨,并通过刀触点集中的碰撞点、容差对刀轨进行光顺处理形成光顺刀轨。

获取刀触点集,构建刀轨的步骤具体包括:将stl模型的离散点与刀具求交获取刀触点集,并将预设的控制点连接形成刀轨。

在本实施例中,通过刀触点集中的碰撞点、容差对刀轨进行光顺处理形成光顺刀轨的步骤具体包括:根据刀轨中的控制点构建nurbs曲线,获取第一直线与nurbs曲线相交形成的弧线,并控制弧线小于容差以优化所述nurbs曲线形成光顺刀轨,其中,根据指定加工步长形成包括碰撞点的第一直线。

在本实施例中,指定加工步长的数值可根据实际需求进行设置。

在一个具体的实施例中,stl的离散点与刀具求交得到刀触点集,如下图所示,连接a、b、c、d、e后,在顶点位置出现尖点,会导致主轴进给速度产生较大波动,主轴随即产生较大震动,因此产生大噪音并且影响零件表面质量。

因此通过a、b、c、d、e控制点构建一条3次g2连续(g2连续:为曲率连续,曲线点点连续,并且其曲率分析结果为连续变化,体现了曲线的光滑程度)。

的nurbs曲线(图8、图9中的曲线)。同时,需要以容差,刀具碰撞作为优化依据,修正控制点。根据图8可以看出,nurbs曲线需要绕过刀具碰撞点a(真实的加工场景中刀具下落与被加工物体触碰的点。该点作为安全依据,如果刀具越过触碰点继续下落,被加工物体就会损坏。本发明将刀具外形离散成无数点,沿着加工方向与模型离散点(stl离散点)触碰,得到碰撞点),因此需要ab与bc分别增加控制点,如图9所示,此时要以加工精度和g2连续为依据,验证修正后的nubrs曲线。通过a点创建一条长为指定加工步长l1的直线与nubrs曲线相交,l1与nubrs曲线围成的劣弧最大高度为l2,需保证l2小于容差(加工精度)。按照上述方法对nubrs曲线优化完毕后得到高精度的光顺刀轨。

有益效果:本发明基于stl模型的刀轨生成方法利用哈希算法重建导入stl模型的拓扑信息,大大提高了导入数据的精度和效率;修补stl文件错误,有效解决因stl文件错误导致的刀轨生成失败问题;对导入模型特征自动识别,并自动分配对应特征最佳工序,大大提高了实际加工效率和加工质量;利用nubrs曲线理论上的控制点可以无限增加且不影响它的计算复杂度的特性,避免了计算曲线复杂对刀轨生成效率的影响;用容差离散插补法引入加工精度对刀轨进行光顺处理,大大提高了刀轨精度。

基于相同的发明构思,本发明还提出一种智能终端,请参阅图11,图11为本发明智能终端一实施例的结构图,结合图11对本发明的智能终端进行说明。

在本实施例中,智能终端包括处理器、存储器,处理器与存储器通信连接,存储器存储有计算机程序,处理器根据计算机程序执行如上述实施例所述的基于stl模型的刀轨生成方法。

有益效果:本发明的智能终端利用哈希算法重建导入stl模型的拓扑信息,大大提高了导入数据的精度和效率;修补stl文件错误,有效解决因stl文件错误导致的刀轨生成失败问题;对导入模型特征自动识别,并自动分配对应特征最佳工序,大大提高了实际加工效率和加工质量;利用nubrs曲线理论上的控制点可以无限增加且不影响它的计算复杂度的特性,避免了计算曲线复杂对刀轨生成效率的影响;用容差离散插补法引入加工精度对刀轨进行光顺处理,大大提高了刀轨精度。

基于相同的发明构思,本发明又提出一种存储装置,请参阅图12,图12为本发明存储装置一实施例的结构图。

在本实施例中,存储装置存储有程序数据,该程序数据被用于执行如上述实施例所述的基于stl模型的刀轨生成方法。

在本申请所提供的几个实施例中,应该理解到,所揭露的终端、系统和方法,可以通过其它的方式实现。例如,以上所描述的终端实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立地产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以通过一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(英文全称:read-onlymemory,英文缩写:rom)、随机存取存储器(英文全称:randomaccessmemory,英文缩写:ram)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1