技术领域
本发明属于数控加工相关技术领域,更具体地,涉及一种基于空间网格的刀具轨迹横向信息的重构方法。
背景技术
在数控加工中,由CAM软件生成的G代码,通常在离散时,点的分布极不均匀,有的区域点分布的密集,有的地方点分布的稀疏。稀疏的点云只能依靠生成时的顺序,有序访问,这种前后次序的点的访问效率不高,在点云点数较多时,严重影响了对刀路轨迹上点的访问,制约了程序或算法对其进行的其他计算或优化等其他操作。这种传统的访问方式,导致了在对复杂曲面零件的加工优化过程中,搜索查找点的过程非常的耗时。
对G代码点的操作,如图2所示,通常下都是以点的顺序从前往后,沿刀路轨迹方向的访问,但有时需要沿刀路横向的快速访问,如图3所示。基于速度区间的速度规划方法,在识别出速度区间边界特征点后,需要对速度区间边界特征点进行横向一致的优化,优化的一般通过样条曲线的方式。由于样条曲线在刀路横向比较光顺,对刀路横向呈“锯齿形”速度边界特征点进行平滑,使其横向一致。但由于样条曲线向刀路轨迹映射时,是沿刀路横向的,需要跨刀路行对刀路轨迹进行访问,传统的基于点构建的刀路横向关系因为点的分布不均匀,导致这种跨刀路行的访问变得非常的不可靠。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提供了一种基于空间网格的刀具轨迹横向信息的重构方法,解决行切轨迹中沿刀路轨迹访问点、直线段以及跨刀路行横向访问邻近刀位点间时效率低,耗时长的问题。
为实现上述目的,按照本发明,提供了一种基于空间网格的刀具轨迹横向信息的重构方法,该方法包括下列步骤:
S1根据加工轨迹上的G代码,确定加工轨迹上每个刀位点的坐标,确定所有刀位点中沿坐标轴方向的极限坐标,将该极限坐标包括的区域进行网格划分,以此获得多个细分的网格;
S2对于所述G代码中对应的每组相邻的刀位点,确定与该组相邻刀位点连接形成的直线相交的网格,并对相交的网格进行标记,遍历所有刀位点以此获得刀位点与网格的对应关系;
S3对于任意刀位点p
进一步优选地,在S1中,所述加工轨迹为行切轨迹,该加工轨迹中具有多条平行的刀路。
进一步优选地,在步骤S2之前,还需对每个刀位点按照顺序赋予与该顺序大小一致的索引号。
进一步优选地,在步骤S2中,所述对相交的网格进行标记按照下列方式进行:
当相邻的刀位点相连形成的直线在同一个网格中时,同时采用该相邻的刀位点标记所述网格;当相邻的刀位点p
进一步优选地,在步骤S3中,所述构建搜索范围按照下列步骤进行:
S31确定刀位点p
S32以偏置点所在的网格为中心,预设搜索半径,以此确定搜索范围。
进一步优选地,在所述搜索范围中的网格,将网格对应的索引号大于和小于所述刀位点p
进一步优选地,所述该刀位点p
根据所述刀位点p
进一步优选地,所述预设搜索半径为3×3×n,在X,Y轴方向,搜索步距为3个网格,n是Z方向的步距,其根据实际情况设定。
进一步优选地,根据步骤S2中建立的刀位点与网格的对应关系,计算每个网格对应的刀位点与所述刀位点p
进一步优选地,在步骤S1中,所述网格划分时,网格之间的间距设定为[d/8,d/4],d是平行刀路之间的间距。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,具备下列有益效果:
1.本发明中通过构建网格与刀位点的拓扑关系,搜索邻近刀路上的网格,以网格表示刀位点,构建刀路刀位点跨行邻近的横向关系,实现对刀路横向的快速访问,提高横向刀位点的访问效率;
2.本发明中在构建网络与刀位点的拓扑关系中,在网格中引入刀位点的索引号,一方面保留了刀位点的信息,另一方面使得在计算横向刀位点的时候通过索引号快速找到刀位点,减小计算过程中的计算量,降低计算复杂度;
3.本发明中在搜索刀位点的横向点是,首先通过加工轨迹的间距获得刀位点的偏置点,将偏置点作为搜索中心,搜索偏置点附近的点,将搜索范围内提出搜索范围内的边界外的网格点,进一步缩小搜索范围,避免了大面积的搜索,缩小搜索范围,提高搜索精度,简化计算。
附图说明
图1是按照本发明的优选实施例所构建的基于空间网格的刀具轨迹横向信息的重构方法的流程图;
图2是按照本发明的优选实施例所构建的行切刀路轨迹示意图;
图3是按照本发明的优选实施例所构建的行切刀路中刀位点的示意图;
图4是按照本发明的优选实施例所构建的求解刀位点坐标轴方向极限坐标的示意图;
图5是按照本发明的优选实施例所构建的刀路轨迹网格化的示意图;
图6是按照本发明的优选实施例所构建的相邻刀位点与网格相交获得刀位点与网格关系的示意图;
图7是按照本发明的优选实施例所构建的获取刀位点横向点的流程图;
图8是按照本发明的优选实施例所构建的当前点求解边界点的示意图;
图9是按照本发明的优选实施例所构建的求解刀位点横向点的原理示意图;
图10是按照本发明的优选实施例所构建的从刀位点到横向点快速访问的示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
针对本发明解决的技术问题,本发明可以在解决G代码点,直线段快速访问和刀路轨迹横向操作直线段间的快速访问两个问题的场景中应用,为了更详细的说明本发明方法,下面结合具体的场景和实施例阐述本发明的技术方案,具体地,如图1所示:
S1:计算刀位点在xyz三个方向的极限坐标,并以此范围划分网格。具体方法如下:
①导入G代码文件,顺序记录每一个刀位点坐标。
G代码文件是由一系列离散点坐标及控制指令组成的,点位置是有序的,相邻两点构成一个直线段,有序点间连线构成刀路轨迹。通过记录点,直线段的索引,可以方便快速的访问刀路轨迹上的点和直线段。
②如图4所示,遍历刀位点,找到x、y、z方向的最大和最小值x_min,x_max,y_min,y_max,z_min,z_max;
设置空间网格步长x_step,y_step,z_step,计算出xyz三个方向的划分数目,即x_num=[x_max+x_offset-(x_min-x_offset)]/x_step,
y_num=[y_max+y_offset-(y_min-y_offset)]/y_step,
z_num=[z_max+z_offset-(z_min-z_offset)]/z_step,
其中x_offset,y_pffset,z_offset为边界放大的尺寸,为了简单起见令x_offset=y_offset=z_offset=x_step/2=y_step/2=z_step/2
为了更好地呈现G代码轨迹空间网格化算法,采用的XOY平面网格化进行说明,空间网格化则添加上z坐标即可。如图4所示,在外边框的上下左右四条线之间进行网格划分,x方向网格数目为x_num=[x_max+x_offset-(x_min-x_offset)]/x_step,同理y方向网格数目为y_num=[y_max+y_offset-(y_min-y_offset)]/y_step。任意一个p
intx=[x
y方向的索引为:
inty=[y
S2:如图5所示,将编程轨迹中所有刀位点的索引号添加到网格内,。具体方法如下:
①遍历所有的直线段blk
首先,根据如下公式计算出刀位点p
然后判断p
②向{cube
S3:如图7所示,寻找每一个刀位点的邻近刀路上的横向刀位点,构建刀位点的横向邻近关系。具体方法如下:
①如图8所示,计算该当前点P
②计算当前刀位点P
③确定横向点搜索范围。计算预估点P
④在c
S4:应用已建立的横向关系,如图9和10所示,可以快速获取当前刀位点对应的横向刀位点:例如,选择编程轨迹上任意刀位点,根据已建立的横向关系直接获取所选刀位点的左右横向点,再以获取的横向点为基础继续向左向右获取下一横向点,循环往复直至找不到下一横向点,最终得到一条“横向特征线”。
本发明方法中,采用的是一种基于网格构建刀路轨迹横向信息的方法,在不改变原始G代码的前提下,通过网格的空间拓扑关系构建刀位点与其邻近刀路上刀位点的横向关系,可以解决对刀路轨迹横向计算或优化过程中需要跨行访问邻近刀路刀位点的问题,只需要提前建立一次横向关系,就可以提高后续横向邻近点访问的效率,降低运行时间消耗。
注意:
(1)为了保证横向关系建立的效果,S1②中的网格步长通常设定一般不大于
(2)S3③中3×3×n以此为x,y,z方向的网格数,z方向的网格数取决于G代码轨迹的具体情况,保证不会遗漏应搜索刀位点。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
机译: 基于基于彩色网格的采样的深度图编码方法和基于彩色和网格信息的深度图重构方法
机译: 利用基于空间的增强系统(SBAS)网格电离层垂直误差(Give)信息缓解基于地面的增强系统(GBAS)的电离层误差的方法
机译: 多个传感器网络中的传感器节点,基于传感器树的基于网格树的创建方法以及基于网格树的空间查询处理系统