当前位置:文档之家› 机器人的运动控制

机器人的运动控制

2.4 手臂的控制2.4.1 运动控制对于机器人手臂的运动来说,人们通常关注末端的运动,而末端运动乃是由各个关节的运动合成实现的。

因而必须考虑手臂末端的位置、姿态与各个关节位移之间的关系。

此外,手臂运动,不仅仅涉及末端从某个位置向另外一个位置的移动,有时也希望它能沿着特定的空间路径进行移动。

为此,不仅要考虑手臂末端的位置,而且还必须顾及它的速度和加速度。

若再进一步从控制的观点来看,机器人手臂是一个复杂的多变量非线性系统,各关节之间存在耦合,为了完成高精度运动,必须对相互的影响进行补偿。

1. 关节伺服和作业坐标伺服现在来研究n 个自由度的手臂,设关节位移以n 维向量12(,,,)T n n q q q q =∈ℜL 表示,i q 是第i 个关节的位移,刚性臂的关节位移和末端位置、姿态之间的关系以下式给出:()r r f q = (1)m r ∈ℜ是某作业坐标系表示的m 维末端向量,当它表示三维空间内的位置姿态时,m=6。

如式(1)所示,对刚性臂来说,由于各关节的位移完全决定了手臂末端的位置姿态,故如欲控制手臂运动,只要控制各关节的运动即可。

设刚性臂的运动方程式如下所示:()(,)()M q q h q q q g q τ=++Γ+&&&& (2)式中,()n n M q ⨯∈ℜ为手臂的惯性矩阵;(,)n h q q∈ℜ&为表示离心力和哥氏力的向量,n n ⨯Γ∈ℜ为粘性摩擦系数矩阵;()n g q ∈ℜ为表示重力项的向量;1(,,)T n n τττ=∈ℜL 为关节驱动力向量。

机器人手臂的驱动装置是一个为了跟踪目标值对手臂当前运动状态进行反馈构成的伺服系统。

无论何种伺服系统结构,控制装置的功能都是检测各关节的当前位置q 及速度q &,将它们作为反馈信号,最后直接或间接地决定各关节的驱动力τ。

图1给出了控制系统的构成示意图。

来自示教、数值数据或外传感器的信号等构成了作业指令,控制系统根据这些指令,在目标轨迹生成部分产生伺服系统需要的目标值。

伺服系统的构成方法因目标值的选取方法的不同而异,大体上可以分为关节伺服和作业坐标伺服两种。

当目标值为速度、加速度量纲时,分别称之为速度控制或加速度控制,关于这些将在本节2.和3.中加以叙述。

图1 刚性臂控制系统的构成1) 关节伺服控制讨论以各关节位移的形式给定手臂运动目标值的情况。

令关节的目标值为12(,,,)T n d d d dn q q q q =∈ℜL 。

图2给出了关节伺服的构成。

若目标值是以关节位移的形式给出的,那么如图2所示,各个关节可以独立构成伺服系统,因此问题就变得十分简单。

目标值d q 可以根据末端目标值d r 由式(1)的反函数,即逆运动学(inverse kinematics )的计算得出1()d r d q f r -= (3)图2 关节伺服构成举例如果是工业机器人经常采用的示教方法,那么示教者实际上都是一面看着手臂末端,一面进行示教的,所以不必进行式(3)的计算,d q 是直接给出的。

如果想让手臂静止于某个点,只要对d q 取定值即可,当欲使手臂从某个点向另一个点逐渐移动,或者使之沿某一轨迹运动时,则必须按时间的变化使d q 发生变化。

为了简单起见,假设驱动器的动态特性忽略不计,各个关节的驱动力i τ可以直接给出。

这时,最简单的一种伺服系统如下所示:()i pi di i vi i k q q k q τ=--& (4)pi k 是比例增益,vi k 是速度反馈增益。

对于全部关节,可以将式(4)归纳表示为()p v d K q q K q τ=--& (5)式中,()n n pi p diag k K ⨯=∈ℜ;()n n vi v diag k K ⨯=∈ℜ。

这种关节伺服系统把每一个关节作为简单的单输入、单输出系统来处理,所以其结构简单,现在的工业机器人大部分都由这种关节伺服系统来控制。

但是,从式(2)中可知,从手臂的动态特性来看,严格地说,每个关节都不是单输入、单输出系统,惯性项和速度项在关节彼此之间存在动态耦合。

在式(5)所表示的关节伺服中,这些耦合均被视为外部干扰来进行处理,为了减少外部干扰的影响,在保持稳定性范围内应该尽量将增益pi k 、vi k 设置得大一些。

但无论怎样加大增益,由于重力项的影响,手臂在静止状态下,各个关节仍会产生稳态误差,即将式(5)代入式(6)中,若0q q==&&&,将产生下式所示的稳态误差e : 1()p d g e q q K q -=-= (6)有时为了使稳态误差为零,可在式(5)中再加上积分项,构成()()p v i d d dt K q q K q K q q τ=--+-⎰& (7)式中,n n i K ⨯∈ℜ为积分环节的增益矩阵,和p K 、v K 一样,它是一个对角矩阵。

传统上,上述伺服系统是用模拟电路构成的。

近年来,由于微处理器和信号处理器等高性能、低价格的计算器件的普及,将伺服系统的一部分或全部改成数字电路的所谓软件伺服已经很普遍了。

与模拟电路的情况相比,软件伺服能进行更精细的控制。

例如,不再让各个关节的增益pi k 、vi k 固定不变,而是让其按照手臂不同姿态时所期望的响应特性而变化,用下式代替式(7),通过对重力项的计算,直接实现重力项的补偿()()p v d g q K q q K q τ=--+& (8)后续的内容中,都是在软件伺服假设的前提下展开讨论的。

如后面所述,软件伺服系统方式还能有比式(7)和式(8)更高级的控制方法,但是即使用式(7)和式(8)的简单的控制方法,闭环系统的平衡点d q 也能达到渐进稳定,即经过无限长的时间,q 能收敛于d q 。

即在多数场合,式(7)和式(8)的控制方法已经足够了。

2)作业坐标伺服控制关节伺服控制的结构简单,对软件伺服来说,计算量少,采样时间较短,所以是工业机器人经常采用的方法,这一点已经在前面有所论述。

但在自由空间内对手臂进行控制时,在很多场合都希望直接给出手臂末端位置、姿态运动的显式表达。

例如,让手臂从某个点沿直线运动至另一个点就是这种情况。

在这种情况下,很自然会取末端姿态向量r 的目标值d r 作为手臂运动的目标值。

一旦得到d r ,利用上述式(3)变换为d q ,当然也能应用关节伺服方式。

但是,为此不但需要事前求解末端目标值d r ,而且往往要在运动中对其加以在线修正,于是必须实时计算式(3)的逆运动学方程式。

此外,因为在关节伺服系统中各个关节是独立受控的,它们的实际响应结果导致的末端位置、姿态的响应比较难以预测,而且为了得到期望的末端响应,对各关节伺服系统的增益调节也十分困难。

因此,现在我们来研究不将d r 变为d q ,而把d r 本身作为目标值来构成伺服系统。

由于在很多情况下,末端位置、姿态d r 是用固定于空间内的某一个作业坐标系来描述的,所以把以d r 作为目标值的伺服系统称为作业坐标伺服。

下面举一最简单的作业坐标伺服的例子。

为此,首先将式(1)的两边对时间进行微分,由此可得下式:()r Tf r q J q q q ∂==∂&&& (9) 式中,()T m n r J q qf q ⨯=∂∂∈ℜ&,称之为雅可比矩阵,雅可比矩阵为q 的函数。

r 和q &通常如式(1)所示,为非线性关系。

与此相反,由式(9)可知,r &和q &为线性关系。

式中()J q 是q 的函数。

根据式(9)和虚功原理,可得下式:()T J q f τ= (10)式中,()T J q 表示()J q 的转置,当m=6时,6(,,,,,)T x y z f f f f m m m αβγ=∈ℜ,是组合向量,包括作业坐标系所描述的三维平移力向量和以欧拉角等描述的r 的姿态所对应的三维旋转力向量,式(10)表示与手臂末端的力和旋转力等效的各关节驱动力的关系式。

若取欧拉角(,,)αβγ作为r 的姿态分量,则,,m m m αβγ为绕欧拉角各自旋转轴的力矩,这从直观上非常难以理解。

所以,在机器人学中,雅可比矩阵经常不是根据式(9),而是根据速度的关系直接按照下式来定义:(,)()T T T s s v J q qω==& (11)在式(11)中,末端速度向量s 的姿态分量不是姿态分量的时间微分描述,而是用角速度向量3ω∈ℜ来表示。

不过,在s 中,3v ∈ℜ是末端的平移速度,和r 的位置分量的时间微分一致。

式(11)的矩阵()s J q 也称为雅可比矩阵,它表示末端速度向量S 与关节速度q &之间的关系。

虽然它不是从式(9)原本的数学意义出发的,但是在机器人学中通常称之为雅可比矩阵。

若采用式(11)所定义的雅可比矩阵,对应于式(10)右边的f 就成为()Tz y x z y x m m m f f f ,,,,,,f 的旋转力分量就变成绕三维空间内某些轴旋转的力矩向量,这样从直觉就很容易理解。

有了上面一些预备知识,可以用下式给出一个作业坐标伺服的例子:()[()()]T p v d J q g q K r r K q τ=--+& (12)此时对应的控制系统示于图3中,再考虑附加积分环节,即如下式所示:()[()()]T p v i d d J q dt K r r K r r K q τ=-+--⎰& (13)图3 作业坐标伺服举例如果将末端位置、姿态的误差向量d r r -分解成位置和姿态分量,用[,]T T T p o e e 表示,各个分量可以用p d e p p =-,[,,]T o d d de ααββγγ=---来表示。

3p ∈ℜ是末端位置向量,d p 是目标值,(,,)αβγ是欧拉角或横摇角、纵摇角、偏转角,(,,)d d d αβγ是其目标值。

由式(10)可知,与式(12)、式(13)右边第一项中的p K 有关的项产生的使r 与d r 一致的潜在的力()p df K r r =-可视为是施加在末端上的。

式(12)、式(13)中手臂末端的当前位置、姿态r 可根据当前的关节位移q ,由式(1)的正运动学(direct kinematics )计算求得。

为了从直观上便于理解,可以认为式(12)、式(13)的方法就是要把末端拉向目标值的方向。

另外它还有一个特点,就是不含逆运动学计算。

与式(7)、式(8)一样,式(12)和式(13)表明闭环系统的平衡点d r 是渐进稳定的。

3)姿态的误差表示在式(12)或式(13)中,可以用式(11)中的雅可比矩阵()s J q 代替式(9)中的雅可比矩阵。

但此时s 的姿态分量ω无对应的位置量纲来表示(ω的积分值没有物理意义),故必须留意末端的误差,即姿态分量d r r -的表示方法。

相关主题