机器人系统控制的运动学方程

控制机器人系统的运动通常需要了解末端执行器方向(通常称为工具尖端或命令参考系或命令坐标系)和最终操纵末端执行器的物理控制执行器或电机的方向(也通常称为控制参考系或控制坐标系)之间的关系。

通过Jason Goerges, ACS运动控制 二九年六月一日
一个三自由度(DOF)起重机,就像这里显示的,让用户控制起重机的长度,旋转角度和倾斜角度,但不允许起重机的工作端在直线上运行。来源:www.rki-us.com

控制机器人系统的运动通常需要了解末端执行器方向(通常被称为工具尖端或命令坐标系或命令坐标系)和最终操纵末端执行器的物理控制执行器或电机的方向(也通常被称为控制坐标系或控制坐标系)之间的关系。这一知识一般可以被称为机器人系统的运动学结构,并由运动学方程表示。一些高性能的运动控制器能够利用这样的方程来生成协调的运动轨迹,从而实现机器人系统的实时位置控制。在本文中,将为两个特定的机器人系统开发运动学方程。

为什么要用运动学?三自由度起重机

一个相对简单的机器人系统是一个三自由度(DOF)起重机,其中用户可以控制起重机长度,起重机旋转角度,起重机倾斜角度(见起重机图片来自www.rki-us.com).通常起重机有第四个自由度,即有效载荷的悬挂长度,尽管在这里它将被忽略,但不失一般性。

通常情况下,起重机会摆动手臂,从上面看会形成一条弧线。此外,如果起重机臂的倾斜角增加,末端执行器(起重机末端的有效载荷)将沿着弧形路径向上。在某些情况下,这些自然弯曲的路径可能是可以接受的,但是如果用户希望有效载荷遵循由直线组成的路径,或者甚至是三维中的任意形状呢?例如,如果有效载荷是某种测量设备,甚至是图像采集系统,则可能是这种情况。一个简单的例子是在一个正方形描述的路径上移动有效载荷,这对某些系统可能很有用。

对于那些研究过坐标几何的人来说,起重机的控制坐标系应该是熟悉的——它通常被称为球面坐标系。https://mathworld.wolfram.com

对于那些研究过坐标几何的人来说,起重机的控制坐标系应该是熟悉的-它通常被称为球面坐标系.空间中的一个点可以用球坐标中的3个参数来描述:距离原点r的距离,x-y平面上x轴θ的方位角(范围0 - 2π), z轴θ的极角(范围0 - π)。该坐标系的图表显示在SphericalCoordinates.gif (https://mathworld.wolfram.com).

为了命令移动跟随线段,我们希望在标准中工作三维笛卡尔坐标系.笛卡尔坐标中的点可以简单地用(x, y, z)来描述,直观地,这个系统可以很容易地对线段进行控制。例如,一条构成正方形的路径将由四条线段组成,这是笛卡尔坐标中最基本的移动。接下来的问题是:我们如何实现这个坐标系的转换。答案吗?运动学方程。运动学方程将笛卡尔坐标系(x, y, z)与起重机(球面)坐标系(r,θ, Φ)联系起来。

在进一步讨论之前,让我们快速证明为什么这些方程是必要的。如果用户想要在笛卡尔坐标中命令一条路径,他/她将通过给出一系列(x, y, z)位置来指定一条路径。在使用运动控制器时,对于许多类型的移动来说,显式地指定此路径通常是不必要的。运动控制器将为命令移动生成运动剖面(一系列(x, y, z)位置),例如点到点移动,它在笛卡尔空间中生成一条线。如果我们知道末端执行器的期望(x, y, z)位置,则需要逆运动学,以便运动控制器可以计算如何定位实际起重机(臂长,倾斜角度和摆动角度应该是多少- (r, θ, Φ)?)

正运动学方程将更多地用于初始化和验证目的。它们可用于将测量到的反馈位置(r,θ, Φ)转换为用户关心的位置(x, y, z)。这个过程也可用于确定启动位置,并初始化任意起重机位置的相对(x, y, z)位置。

现在讨论了运动学方程的必要性,现在是实际求解方程的时候了。从起重机的逆运动学开始,我们想求解(r,θ, Φ):

这个方程实际上是可以在球面/笛卡尔坐标集上求解的,其中使用了一些三角公式。下列公式可以很容易地验证:

请注意,在上面的第三个方程中,Φ是用r表示的,而在第一个方程中,r是用(x, y, z)表示的。

正运动学方程将采用类似的形式:

这些方程也可以通过检查和验证来求解:

一个更复杂的例子- 6自由度Stewart平台六足机

斯图尔特平台六足机应用于许多领域,包括汽车测试、机器人手术、卫星和望远镜定位、机器模拟器等等。六足机器人由6个独立控制的执行器(长度)组成,一端连接到固定底座,另一端连接到平面平台,允许6个DOF (α(滚转),ß(俯仰),γ(偏航),x, y, z)。

斯图尔特平台六足机应用于许多领域,包括汽车测试、机器人手术、卫星和望远镜定位、机器模拟器等等。

对于该系统,逆运动学方程告诉我们:执行机构的长度(l1,我2,我3.,我4,我5,我6)为给定的(α, ß, γ, x, y, z),也称为位姿(P)。正演方程计算位姿P,根据执行器腿长度l。正演方程在计算高效的封闭形式的方程集中是不可解的。相反,正运动学可以使用涉及广义牛顿-拉弗森方法的迭代方法求解,这将在后面进行描述。

为了求解该系统的逆运动学方程,必须确定平台和基座执行器的关节位置,因为腿的长度就是这些点之间的距离。根据基础关节坐标系,平台执行器关节位置描述为:

上式中的下标表示向量的参考系。在这里,这些点实际上是齐次坐标,用(x, y, z,和w)或(x/w, y/w, z/w)来描述位置,为了简单起见,我们可以把w看作1。R是一个变换矩阵,它将平台节点(Pp),即平台坐标中的值(Bp .),以基坐标表示。R是一个3 × 4矩阵它由一个3 × 3旋转矩阵项和一个3 × 1平动矩阵项组成。

在R的方程中,s是正弦函数;c是余弦函数。上式中的旋转矩阵项是横摇、俯仰、偏航旋转的标准矩阵。平动项是一个简单的向量加法。一旦(Bp),人们现在可以通过计算两个关节之间的距离来计算腿的长度,因为(Bb)是已知的:

上面的方程实际上相当简单,但由于涉及到矩阵代数,所以有很多项。下面是最终的逆运动学方程(腿' i '):

该系统的正运动学方程较为复杂,由于处理要求,不容易实时求解。在这里,比直接求解更好的方法是使用迭代求解,其中初始猜想被评估、更新并重复,直到猜想中的误差收敛到某个阈值以下。这里不详细讨论计算;相反,这种方法将作为遵循的一般程序来介绍。这种方法是牛顿-拉弗森方法的推广,如前所述。在文献中有大量关于这方面的信息,但这里将讨论正运动学的应用。第一步是猜测初始姿态k,或者换句话说,猜测(α, ß, γ, x, y, z)的值是什么。对于运动控制器,这个初始猜测通常是(α, ß, γ, x, y, z)的命令位置。从猜测,逆运动学方程可以用来计算基于猜测的执行器长度,让我们称之为(g1g2g3.g4g5g6)或向量形式的g。从数学上讲,这看起来像g = I(k)

接下来,这些基于猜测的长度可以与从反馈设备得知的实际长度l进行比较,形成“猜测误差”eE = g - l。

如果猜测误差低于某个阈值,那么该过程就完成了!如果猜测错误没有低于阈值,那么就需要一个新的、更好的猜测。重复这个过程,直到猜测足够好(然后当前的猜测被用作解决方案!)为了理解如何从数学上确定“更好的猜测”,首先考虑以下简单的微积分练习。假设我们有一个一般的函数y = f(x),其中f一般是非线性的。如果我们想计算由x的变化引起的y的变化,下面的方程是成立的:

现在,如果我们观察f(x)的一个小范围,我们可以近似线性,得到以下结果:

上面的方程通常被认为是基础微积分中斜率的局部近似,重写如下:

如果将前面的公式再重写一遍,我们可以得到x的变化量方程:

现在让我们把同样的想法应用到我们的情况中。回想一下,我们有一个非线性函数g=I(k),根据假设的姿势(k)来确定腿的估计长度(g)。我们也知道腿的实际长度(l),从反馈装置。我们的猜测中的错误被评估为e=g-l,如果错误的数量是不可接受的,我们的愿望是得到一个新的姿势猜测(k*)。我们将使用与之前相同的方法:

上面的等式看起来很熟悉;本质上就是我们在之前的简单微积分例子中展示的。我们可以简单地再重写一次方程,以得到我们对姿态(k*)的新猜测的公式。

矩阵dI(k)/dk就是我们所说的雅可比矩阵。为了在上面的方程中使用,这个矩阵必须倒转,这在六足动物的情况下需要6 × 6矩阵倒转,这是一个计算强度大的过程。一旦计算出新的姿势猜测,就可以重新开始这个过程,并重复直到误差(e = g - l)低于某个可接受的水平。

以下是连续计算一般正运动学的步骤的概述,如果逆运动学方程已知:

  1. 猜测平台的起始姿势(k)。这通常是运动控制器中的初始命令姿势。

  2. 根据猜测计算腿的长度,使用逆运动学方程(g=I(k))。

  3. 通过与编码器读取的当前实际腿长进行比较计算猜测的误差(e = g - l)。如果误差幅度低于某个阈值,则算法已经收敛到k的当前值,因此跳过步骤6。如果错误值高于阈值,则继续执行步骤4。

  4. 使用逆雅可比矩阵生成一个新的猜想(k*=k-inv(dI(k)/dk)*e)。

  5. 用第4步的结果更新猜测。

  6. 从步骤2开始另一个迭代。

这个算法不是针对六足系统的;相反,它可以用来寻找任何系统的正运动学(收敛解)与已知的逆运动学方程。

结论

以鲁棒方式控制机器人系统的关键是运动学方程。这些方程不仅描述了系统的几何结构;它们还允许具有足够处理能力和速度的现代运动控制器执行必要的计算,从而为系统提供平稳的运动控制。运动方程通常可以直接实时求解,然而在复杂系统中,这是不可能的,有算法仍然可以提供所需的解。高性能运动控制器提供了实现这些方程到控制系统的结构,为许多行业提供了探索机器人系统应用的机会。

www.globalelove.com

作者信息
自1985年以来,ACS运动控制已经开发和制造了先进的多轴运动控制器和集成控制模块。北美总部位于明尼苏达州伊甸草原,在以色列、欧洲和亚洲设有办事处。