第 4 章 机器人抛光轨迹的规划及生成
4.4 曲线的插值与插补算法
4.4.1 三次参数样条曲线的简述
所谓“样条”(spline)是工程设计中的一种绘图工具,它是富有弹性的细长条。
绘图时,绘图员用压铁迫使样条通过指定的型值点,并且调整样条使它具有光滑 的外形。这种外形曲线可以看作是作为弹性细梁的样条,再压铁的集中载荷作用 下产生的挠度曲线,在挠度不大的情况下它恰好表示为三次样条函数,压铁的作 用点就是样条函数的型值点。
所谓样条函数,从数 学上说,就是按 照一 定光滑性要求“装配”起来的分段多 项式。具体地说,称具有划分
0 1
:a x x xn b
∆ = < K< =
的分段 k 次式S x 为 k 次样条,如果它在每个型值点k( ) xi(1≤ ≤ − 上具有直到i n 1) k−1 阶连续导数。
上述定义的 k 次样条是 k 次多项式的推广。事实上,如果具有分划 ∆ 的 k 次样 条S x 在每个型值点k( ) xi(1≤ ≤ − 上具有连续的 k 阶导数,则它便蜕化为普通的 ki n 1) 次多项式。
三次样条函数由于其极小模性质、最佳逼近性质和很强的收敛性等特点而成 为构造插值曲线和曲面的最主要的方法。它能准确地通过插值点,一阶和二阶导 数都连续,故拟合效果好,整体光滑,应用较广,曲线的连续性基本可以满足实 际应用的要求。但插值曲线随坐标的改变而变化,即其图形不具有几何不变性;
而当处理大挠度时,可能产生较大的误差,甚至出现多余的拐点。缺乏几何不变 性,也就是说当平面直角坐标系中的型值点发生放置等几何变形时,其曲线的形状也 发生变化。
为了解决三次样条曲线存在的种种问题,尤其是对任意平面数据点,人们提出了三
次参数样条曲线的方法。本文采用累加弦长三 次参数样 条曲 线函数 ,解决 三次 样条 曲线的二义性 问题。此时 ,构造累加弦长三次参数样条曲线 函数需要 知道每个数 据点处的节点值,这样插值出来的曲线误差小,其插值效果好,计算方便。
4.4.2 插补算法的设计与选择
插补算法是最早产生在数控系统的零件加工生产中,随着机器人在工业等领域的广 泛应用和机器人技术的日趋成熟,各种插补算法也应用于机器人的运动控制系统当中,
不断地提高机器人运动控制精度和速度。
在早期的硬件数控时期,插补算法是由数控系统的硬件逻辑实现的。随着插补算法 复杂程度的不断提高,其硬件逻辑实现的成本和难度也相应急剧上升,因此当时的算法 仅仅是简单的直线和圆弧插补。后来伴随着计算机技术的飞速发展,陆续出现了主要有 软件实现逻辑控制的计算机数控系统(CNC)。由于早期 CNC 系统中的 CPU 计算能力和 计算速度的影响,任何插补算法只能用CPU 的加减乘除指令来实现[43]。
随着计算机的计算能力和计算技术得到了极的不断提高,特别是将数学协处 理器应用于集成 CPU,使得复杂的数学运算得以直接高速的进行,如三角函数、
指数、开方等。插补算法的研究与实现不再受加减乘除指令的影响和限制,这位 新的插补算法的研究创造了难得的技术条件,也产生了许多复杂的直线插补算法。
本文将插补算法应用于机器人的运动控制中,这不但涉及到机器人运动控制 的精度、效率,更重要是会影响到机器人运动控制的编程方式和编程效率,以及 机器人的操作等诸多方面问题。因此,设计机器人运动控制系统时,插补算法的 选择和设计应即要考虑插补精度、插补速度、编程指令的设计、手工编程是否方 便,又要从是否易于实现自动编程等各个方面来设计插补算法。在此,给出以下 插补算法的选择和设计原则:
1) 插补算法必须满足机器人运动控制精度和插补速度的要求;
2) 插补算法要有利于机器人指令系统的设计,并能简化机器人运动控制的编 程;
3) 尽可能实现对机器人运动轨迹的直接插补。
4.4.3 累加弦长三次参数样条曲线的构造及求解
当抛光工具沿循图4.3 所示的轨迹 UV 进行加工工作时,抬刀换位之前节点O1 的 y 坐标是不发生变化的,变化的位置参数只有节点O 的1
x
轴坐标x 、1z
轴坐标z ,1 因此在截平面 ABCD 中构造的累加弦长三次参数样条函数。(1) 累加弦长参数样条函数的构造
已知在截切平面 ABCD 上,存在n+ 个节点 ( , )1 P x z ,i i i
i = 0,1, 2, , ⋅⋅⋅ n
,相邻两点i 1
P− ,P 的连线长等于: i
2 2
2 2
令式(4.10)中