【数控系统】第七章 NURBS插补
一、NUBRS曲线
在数控系统中NURBS刀具轨迹的生成主要有两种方式。
一种是CAM生成的小线段直线插补轨迹在给定的误差范围内拟合成NURBS插补刀轨(通常为插值与逼近两种拟合方式),再由数控系统对其进行插补运算,这种是对小线段进行轨迹平滑的策略,在FANUC系统中称为平滑功能。
另一种方式是真正意义上的NURBS插补,首先CAM系统将CAD中的模型轮廓转化为NURBS曲线,然后CNC根据该曲线的特征参数(控制点、节点矢量、权因子)进行NURBS插补运算。这种方式不存在将线性刀轨转换成NURBS刀轨的误差,因此精度更高。
二、NURBS拟合
采用第一种方式的NURBS插补,需要将CAM离散化后的微小线段,在数控系统中提前预读,并通过NURBS数学模型重建曲线。NURBS拟合分为两种方式,一种为插值,另一种为逼近。
① 插值:提供刀位点,生成一条经过所有刀位点的拟合曲线。

② 逼近:提供刀位点与拟合误差,生成一条到刀位点距离在误差范围内的拟合曲线。

CAM 将生成近似的样条曲线和曲面刀具路径,通过对刀具路径进行线性化处理,创建多条较短的直线段来近似模拟所需的形状。刀具路径与所需形状匹配的精确程度很大程度上取决于所使用的直线数量。使用的直线越多,生成的刀具路径就越接近于样条曲线或曲面的标称形状。
由于CAM将曲线分割为微小线段时,产生的若干个刀位点并非在原始曲线上(CAM曲面离散化的具体实现方式这里不进行赘述),采用插值的方式生成的拟合曲线已偏离原始轨迹,因此使用逼近方式拟合更佳。

采用最小二乘法逼近的NURBS拟合步骤 —— 取自《非均匀有理B样条》/The NURBS book 9.4.3章节算法
三、NURBS插补
跟直线插补、圆弧插补等类似,拟合后生成的NURBS曲线需在曲线上进行插补点密化,得到每个插补周期的插补位置。
相比其他类型插补,NURBS曲线插补的难点在于如何确定下一插补周期下,ΔS所在曲线的u值。首先可以确定的是 S(t)的表达式,这是加减速算法已经得到的(具体查看请【数控系统】第六章 加减速控制)。我们需要得到 u(S)的表达式,现在已知 ΔS = dS/dt = v,因此通过换参可以得到 u(t) 的表达式,求得u之后便可算出 NURBS 曲线 C(u)上的插补点 。
四、NURBS曲线可视化
NURBS拟合
NURBS插补