一种基于空间平面法向量的小线段光顺方法技术

技术编号:26650144 阅读:44 留言:0更新日期:2020-12-09 00:41
本发明专利技术提供一种基于空间平面法向量的小线段光顺方法,包括预先设定的判定角度值、线段处理长度最大值和最大允许偏离距离;基于空间平面法向量的小线段光顺方法包括以下步骤:1)读取数控设备文件并逐一扫描数控程序中的指令;2)判断当前数控程序中的指令是否为直线插补代码,若不是直线插补代码,则进入步骤1);若是直线插补代码,则进入步骤3);3)判断是否对当前直线插补代码线段进行光顺处理;4)对当前直线插补代码线段进行光顺处理;5)判断是否达到数控程序中的结束点,若是结束操作,若否进入步骤1)。本发明专利技术具有运算速度快,加工质量好的优点。

【技术实现步骤摘要】
一种基于空间平面法向量的小线段光顺方法
本专利技术涉及数控加工领域,具体涉及一种基于空间平面法向量的小线段光顺方法。
技术介绍
在数控加工领域中,数控系统一般根据CAM(ComputerAidedManufacturing)软件生成的NC代码所描绘的路径来进行加工。对于现今国内数控加工行业中最常用的直线插补代码(G01),其轨迹由大量逼近工件表面的微小直线段所组成,当工件表面为复杂曲面时,为达到加工轮廓精度要求,CAM软件所生成的微小线段的数量会明显增多,而且线段的长度也会相应变短,因此不可避免地出现代码之间的不光顺情况,导致数控系统执行插补运算时进行频繁的加减速,影响了工件表面光洁度。目前在数控微小线段光顺处理的研究中常用的方法为曲线拟合。方法包括:利用最小二乘NURBS曲线拟合方法为基础,通过最优控制点搜索方法和基于直线段轨迹连续性指标分段的曲线拟合方法,对直线段刀位点轨迹拟合;利用带权因子和一阶导数约束的NURBS曲线最小二乘逼近算法;通过微小直线段曲线重构技术,对连续微小直线段进行实时样条重构,将连续的微线段拟合为Hermite曲线,从而实现曲线插补等。目前存在的光顺方法在理论上具有较高的性能,但仍会遇到曲线构成条件难以判定、程序实现复杂以及难以应用到实时数控系统等问题,加工过程中会导致加工速度以及加工质量下降的问题,在实际应用中达不到理想效果,且目前没有利用空间平面法向量的小线段光顺方法。
技术实现思路
本专利技术提供一种算法简单,运算量小,运算速度快的,加工质量好的基于空间平面法向量的小线段光顺方法,利用本专利技术的方法,减少了运算量,提高了运算速度和加工质量,对不规则微小线段的数控代码进行光顺处理。为达到上述目的,本专利技术的技术方案是:一种基于空间平面法向量的小线段光顺方法,包括预先设定的判定角度值、线段处理长度最大值和最大允许偏离距离;方法包括以下步骤:1)读取数控设备文件并逐一扫描数控程序中的指令;2)判断当前数控程序中的指令是否为直线插补代码,若不是直线插补代码,则进入步骤1);若是直线插补代码,则进入步骤3);3)判断是否对当前直线插补代码线段进行光顺处理;(3.1)判断当前直线插补代码线段的长度是否小于线段处理长度最大值;(3.2)计算当前直线插补代码线段的前端点为交点所在平面的法向量,并计算当前直线插补代码线段的后端点为交点所在平面的法向量,并求取两个法向量所组成的夹角值;(3.3)判断角度值是否大于或等于判定角度值,若大于判定角度值,则进入步骤1);若小于判定角度值,则进入步骤(3.4);(3.4)判断当前直线插补代码线段的前端点和后端点分别到预光顺处理新生成的直线段之间距离是否小于或等于最大允许偏离距离,若大于最大允许偏离距离,则进入步骤1);否则进入步骤4);4)对当前直线插补代码线段进行光顺处理;5)判断是否达到数控程序中的结束点,若是结束操作,若否进入步骤1)。以上方法,通过判定直线插补代码对直线插补的线段进行光顺处理,且通过预设的线段处理长度,对于在预设线段处理长度范围内进行处理,防止由于过长而导致处理精度差的问题,提高加工质量,然后通过非光顺线段的线段建立空间坐标系,对于非光顺出线段的空间坐标进行计算,得出线段之间组成的平面法向量,再对平面法向量之间的夹角进行计算,判断能否进行光顺处理;由于小线段处于光顺状态时,每条线段的走向都是一致的,因此前后相连的两个法向量的夹角的变化量相对较小,从而利用夹角的数值大小标识两个法向量的变化程度,数值越大表示变化越大,即小线段的不光顺程度越高,从而进行光顺处理,防止需要对每个线段进行一次光顺处理,简化算法的复杂度以及运算量,同时通过检查当前直线插补线段的长度与预设线段处理长度值以及求取前端点和后端点到预光顺生成直线的距离判定是否进行光顺处理,由于线段过长进行光顺处理将会导致光顺之后的线段与原始线段偏离过大导致处理不准确的问题出现,从而以上能避免处理过后的小线段与原始线段端点偏离过大的问题,使得算法更加准确。进一步地,所述步骤(3.2)中中计算当前直线插补代码线段的前端点为交点所在平面的法向量,并计算当前直线插补代码线段的后端点为交点所在平面的法向量具体包括:(3.2.1)设定当前直线插补代码线段为起点为P1,当前直线插补代码线段为终点为P2,当前直线插补代码线段的上一直线插补代码线段的起点为P0,当前直线插补代码线段的下一直线插补代码线段的终点为P3,即P0的坐标为(X0,Y0,Z0),P1的坐标为(X1,Y1,Z1),P2的坐标为(X2,Y2,Z2),P3的坐标为(X3,Y3,Z3),当前直线插补代码线段的向量为当前直线插补代码线段的上一直线插补代码线段的向量为当前直线插补代码线段的下一直线插补代码线段的向量为其表达式为:(3.2.2)根据向量外积定义及右手定则,可得出上述3个向量所组成的2个法向量和其表达式为:3.2.3)将平移至相交于P1处,根据空间向量夹角公式可得两者之间的夹角A,其表达式为:这样,根据求得的夹角A与预先设定的判定角度值比较,判断是否小于或等于判定角度值;通过该种方式能更快更好地求出夹角值。进一步地,4)对当前直线插补代码线段进行光顺处理具体包括:设定当前直线插补代码线段的起点为P1,当前直线插补代码线段的终点为P2,当前直线插补代码线段的上一直线插补代码线段的起点为P0,当前直线插补代码线段的下一直线插补代码线段的终点为P3,设定当前直线插补代码线段为P1P2,取中点为P12,将点P1与点P2移至P12处,使两者重合,将小线段P0P1和P2P3变更为小线段P0P12和P12P3,小线段P0P12和P12P3即为预光顺处理新生成的直线段;以上设置,通过取中点的方式进行光顺处理,算法简单且可靠。进一步地,步骤4)之后还包括,步骤4.1):判断光顺处理后的线段是否光顺,若光顺,则进入步骤5);若不光顺,则进入步骤3.2);以上在完成光顺处理后,再次判断是否光顺,若判断不光顺,再次进行光顺处理;若判断光顺,继续扫描下一条数控程序中的指令,这样,算法简单,运算量小,运算速度和运算时间都有提高。进一步地,所述步骤4.1)之后还包括,根据设定当前直线插补代码线段为起点为P11,当前直线插补代码线段为终点为P21,当前直线插补代码线段的上一直线插补代码线段的起点为P01,当前直线插补代码线段的下一直线插补代码线段的终点为P31,采用Hermite插值法辅助,可计算得出三次Hermite插值多项式:其中,t=L/S,设当前插补点P’到点P11的距离为L,当前插补小线段长度为S,得到辅助曲线,根据辅助曲线对当前直线插补代码线段进行光顺处理,这样,可以避免处理后的线段有可能降低对原始曲面的逼近精度,利用Hermite曲线插值法作为直线插补的辅助曲线,保证了光顺后的线段对原始曲线的逼近精度。进一步地,步骤2)中“判断当前数控程序中的指令是否为直线插补代码本文档来自技高网...

【技术保护点】
1.一种基于空间平面法向量的小线段光顺方法,其特征在于:包括预先设定的判定角度值、线段处理长度最大值和最大允许偏离距离;/n方法包括以下步骤:/n1)读取数控设备文件并逐一扫描数控程序中的指令;/n2)判断当前数控程序中的指令是否为直线插补代码,若不是直线插补代码,则进入步骤1);若是直线插补代码,则进入步骤3);/n3)判断是否对当前直线插补代码线段进行光顺处理;/n(3.1)判断当前直线插补代码线段的长度是否小于线段处理长度最大值;/n(3.2)计算当前直线插补代码线段的前端点为交点所在平面的法向量,并计算当前直线插补代码线段的后端点为交点所在平面的法向量,并求取两个法向量所组成的夹角值;/n(3.3)判断角度值是否大于或等于判定角度值,若大于判定角度值,则进入步骤1);若小于判定角度值,则进入步骤(3.4);/n(3.4)判断当前直线插补代码线段的前端点和后端点分别到预光顺处理新生成的直线段之间距离是否小于或等于最大允许偏离距离,若大于最大允许偏离距离,则进入步骤1);否则进入步骤4);/n4)对当前直线插补代码线段进行光顺处理;/n5)判断是否达到数控程序中的结束点,若是结束操作,若否进入步骤1)。/n...

【技术特征摘要】
1.一种基于空间平面法向量的小线段光顺方法,其特征在于:包括预先设定的判定角度值、线段处理长度最大值和最大允许偏离距离;
方法包括以下步骤:
1)读取数控设备文件并逐一扫描数控程序中的指令;
2)判断当前数控程序中的指令是否为直线插补代码,若不是直线插补代码,则进入步骤1);若是直线插补代码,则进入步骤3);
3)判断是否对当前直线插补代码线段进行光顺处理;
(3.1)判断当前直线插补代码线段的长度是否小于线段处理长度最大值;
(3.2)计算当前直线插补代码线段的前端点为交点所在平面的法向量,并计算当前直线插补代码线段的后端点为交点所在平面的法向量,并求取两个法向量所组成的夹角值;
(3.3)判断角度值是否大于或等于判定角度值,若大于判定角度值,则进入步骤1);若小于判定角度值,则进入步骤(3.4);
(3.4)判断当前直线插补代码线段的前端点和后端点分别到预光顺处理新生成的直线段之间距离是否小于或等于最大允许偏离距离,若大于最大允许偏离距离,则进入步骤1);否则进入步骤4);
4)对当前直线插补代码线段进行光顺处理;
5)判断是否达到数控程序中的结束点,若是结束操作,若否进入步骤1)。


2.根据权利要求1所述的一种基于空间平面法向量的小线段光顺方法,其特征在于:所述步骤(3.2)中计算当前直线插补代码线段的前端点为交点所在平面的法向量,并计算当前直线插补代码线段的后端点为交点所在平面的法向量具体包括:
(3.2.1)设定当前直线插补代码线段的起点为P1,当前直线插补代码线段为终点为P2,当前直线插补代码线段的上一直线插补代码线段的起点为P0,当前直线插补代码线段的下一直线插补代码线段的终点为P3,即P0的坐标为(X0,Y0,Z0),P1的坐标为(X1,Y1,Z1),P2的坐标为(X2,Y2,Z2),P3的坐标为(X3,Y3,Z3),当前直线插补代码线段的向量为当前直线插补代码线段的上一直线插补代码线段的向量为当前直线插补代码线段的下一直线插补代码线段的向量为其表达式为:

【专利技术属性】
技术研发人员:冯瑞珏李志锋郭琳王智东邓筠李玉姣
申请(专利权)人:华南理工大学广州学院
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1