三次B样条曲线插补算法的VC实现

上传人:hs****ma 文档编号:496815828 上传时间:2023-04-25 格式:DOCX 页数:6 大小:118.43KB
返回 下载 相关 举报
三次B样条曲线插补算法的VC实现_第1页
第1页 / 共6页
三次B样条曲线插补算法的VC实现_第2页
第2页 / 共6页
三次B样条曲线插补算法的VC实现_第3页
第3页 / 共6页
三次B样条曲线插补算法的VC实现_第4页
第4页 / 共6页
三次B样条曲线插补算法的VC实现_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《三次B样条曲线插补算法的VC实现》由会员分享,可在线阅读,更多相关《三次B样条曲线插补算法的VC实现(6页珍藏版)》请在金锄头文库上搜索。

1、三次 B 样条曲线插补算法的 VC 实现孔凡国,郝尚华,钟廷志(五邑大学 机电系,广东 江门 529020)摘要:结合三次B样条曲线的数学性质,理论分析了三次B样条曲线的插补过程,推 导出了三次B样条曲线的插补运算公式。在对三次B样条曲线进行研究的基础上,介绍三 次B样条曲线插补算法实现方法,并在VC环境中对B样条曲线的插补过程进行了实现, 实现了数控插补的动态运算。关键词:三次B样条;插补;VCVC Implement of the Cubic B-spline curveInterpolationKONG Fan-guo, HAO Shang-hua, ZHONG Ting-zhi(Dep

2、artment of Mechatronics, Wuyi University, Jiangmen 529020, China) Abstract:Combined with mathematics characters of the cubic B-spline curve, the interpolation process of the cubic B-spline curve is analyzed and calculation interpolation formula is deduced. Finally the cubic B-spline curve interpolat

3、ion operator is programmed under the platform of VC to realize dynamic simulation.Keyword:cubic B-spline; interpolation; VC在数控加工中用一小段直线或圆弧去拟合实际曲线,这种拟合方法就是“插补”。 它实 质上是根据有限的信息完成“数据密化”的工作。插补的计算方法和计算精度影响到整个数 控系统的精度和效率,因此插补算法对整个数控系统的性能指标至关重要,可以说插补是整 个数控系统控制软件的核心。1 三次 B 样条曲线插补原理B样条曲线是对Bezier曲线的改进,它不仅保留了Be

4、zier曲线的优点,而且具有局部 控制的能力,B样条曲线方程可为:给定n+1个控制点P.(i =0, 1, ,n),也称为特征多边形的顶点,k次(k+1阶)iB 样条曲线的表达式是:1)P(u)=工 P N (u)i i ,ki=0在上式中当k=3,i =0,1, 2, 3时,可得三次B样条曲线方程是: u 为由样条控制点确定的可变系数。P (u)仝 P N (u)0 u 1i i ,3i=0用矩阵形式可表示为:-13-3 13-630-30301 4 1 0u3u 2P0P1P2P32)0u1 (3)本文采用参数化数据采样插补原理来实现插补过程,其基本思想是:按照给定的采样周 期将时间轴分成

5、等间隔的小区间。插补过程中根据进给速度、加减速要求和允许误差,在各采样周期产生空间小直线段AL、AL、AL、去逼近被插补曲线,逐步求得所需的1 2 i各插补直线段端点P、P、P、的坐标值。1 2 i根据插补的思想可以知道,插补过程实际上是通过参变量u作为直接控制量,从而求得 插补点的坐标位置及插补点沿插补轨迹的移动速度等被控量的过程。2 三次 B 样条曲线插补算法设计 在插补过程的每一采样周期中,首先根据进给速度要求和允许误差求出轨迹空间中的插补直线段,然后将此直线段映射到参变量空间,得到与其相对应的参变量空间中的小直线段, 即参变量的增量值。进一步通过对参变量的积分求出参变量空间中的当前点坐

6、标。最后,求 取与参变量空间中当前点相对应的轨迹空间中的映射点,得到插补轨迹上的当前点的坐标 值。由于三次B样条曲线的各坐标分量均为参数u的函数可以直接计算。在每个插补周期T 内,有相等的微小增量九,即参数u的增量步长恒定,然后由公式计算得下一个插补点。 这种插补算法虽然计算简单,速度快,但其存在插补速度不恒速等缺点。要使得样条插补在轨迹空间内匀速,就必须要根据编程进给速度来确定一个插补周期内 的轮廓步长,然后将此参数映射到参数空间中,得到与其相对应的参数空间内的增量Pu。设V是样条曲线的切线速度矢量:dP(u) dP(u) du V =udt du dt设V是样条曲线的编程进给速度,则:dt

7、2dP(u)4du设控制系统的插补周期为t n=tu是关于t的函数,令u (t )二u,iiu(ti J二i+1,用泰勒级数将u叮在展开可得:duu u +i+1i dtt=ti/、1 d 2u(t -1) +i+1i 2 dt 2t=ti(t -t )2 +o(ut2) i+1i所以,插补递推公式的一阶近似为:u u u +i+1iV OTu =Uj4)二阶近似为:ui+1VOTV 2 OT 2/ dP(u) od 2 P(u)、.dudu 2 丿u =Uj2: dP(u)4du5)由于现在的数控系统插补周期T一般都很小,在曲线半径不太小的情况下,一阶近似迭 代求解已经可以满足精度要求。如果

8、曲线曲率半径很小,便要采用二阶近似。由于每个插补周期内的参数增量:6)_V OTO ui dP (u)iduu _uj是由编程进给速度和插补周期决定,在每一个插补周期中生成的轨迹空间的弦长是不变的 所以进给速度是不变的。3 程序流程根据上文的理论分析及公式推导,可按照图1 所示的流程设计程序。图 1 三次 B 样条曲线匀速插补算法流程图4 插补算法的 VC 程序实现 该程序主要用于演示在平面坐标系中三次 B 样条曲线的插补过程,以及速度控制的实 现。要求用户输入控制点点数、插补速度和插补周期,并在绘图区选择控制顶点。绘图区采 用 Windows 的默认坐标系,即左上角为原点(0 , 0),向右

9、方向为 X 轴正方向,向下为 Y 轴正方向。程序运行后,首先根据输入的控制定点数,申请内存空间,并进行初始化,用于保存各 控制顶点信息,然后将鼠标选取的坐标点信息以此存放到申请的内存空间中,当最后一个点 选择完毕后,程序将按照前面输入的插补速度和插补周期,结合公式(3)、(6),计算出每 个插补周期的 u 的增量和小直线段的终点,以插补速度 V 匀速的绘制出所要求出的三次 B 样条曲线。(1)参数输入 在本程序中需要用户输入三个数据:控制点的数目、曲线的插补周期和插补速度,且控 制点数不能小于 4,插补速度和插补周期大于0。(2)程序运行 完成上述信息输入后,通过鼠标点击在绘图区选取给定个数的

10、控制点的坐标,程序将在最后一个点选取完成后自动按照给定速度,匀速的绘制出相应的三次B样条曲线。以10个 控制定点为例,绘制出的三次B样条曲线如图2所示:图 2 程序运行实例5 结论对过对三次 B 样条曲线的数学性质、三次 B 样条曲线插补过程的分析和研究,用 VC 实现了三次B样条曲线插补算法,实现过程中采用动态改变参数u的增量实现了插补的匀 速进行,该程序略加改动即可应用于简易数控系统。因此,对于更好地理解插补原理及工程 实践都有借鉴意义。参考文献:1 .周凯.PC数控原理、系统及应用M.北京:机械工业出版社,2006.9.2 .胡自化,张平.三次B样条曲线恒速进给实时插补算法的研究J.北京:制造技术与机床, 2000 (8).3 .周凯,陆启建.样条曲线采样插补技术J.大连:组合机床与自动化加工技术,1998 (4).4 .叶伯生,杨叔子.CNC系统中三次B-样条曲线的高速插补方法研究J.武汉:中国机械工程, 1998. 9(3).5 .施法中.计算机辅助几何设计与非均匀有理B样条M.北京:北京航空航天大学出版,1994.

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号