自动化学报
ACTA AUTOMATICA SINICA
2000　Vol.26　No.1　P.7-15



基于非完整运动规划的多指手灵巧操作
管贻生　何永强　张启先
摘 要 灵巧操作是多指手操作的一个重要方面，探讨实现这种操作的纯滚动方法.首先利用纯滚动的非完整特性，进行非完整运动的最优路径规划，然后根据规划结果应用多指手操作运动学方程确定手指的运动.为多指手灵巧操作的实现提供了一条途径.
关键词 多指手，运动学，灵巧操作，纯滚动，非完整运动规划.
DEXTEROUS MANIPULATION OF MULTIFINGERED HAND BASED ON NONHOLONOMIC MOTION PLANNING
GUAN Yisheng HE Yongqiang ZHANG Qixian
(Robotics Research Institute,Beijing University of Aeronautics and Astronautics,Beijing 100083)
Abstract Dexterous manipulation is an important topic of multifingered study. Dexterous manipulation with rolling contacts is addressed in this paper. Based on the nonholonomy of rolling, a nearoptimal planning method of nonholonomic motion is given by Ritz approximation, with the shortest length of contact trajectory on the fingertip face as cost function. With the planning results, according to the proposed multifingered kinematics equation, the motion of finger is generated to realize the desired dexterous manipulation.
Key words Multifingered hand, kinematics, dexterous manipualtion, rolling contact, nonholonomic motion planning .
1 引言
　　多指手的一个重要优点和特性在于它对物体有多种抓持，并且可以实现抓持之间的变化，即从一个抓持位形过渡到另一个抓持位形.也就是说，可以通过控制手指的运动改变手指对物体的抓持状况 (接触位形)，这就是灵巧操作，在操作中具有重大意义：其一，为了稳定可靠地抓持物体，当初始的或操作中的抓持位形不佳时，需要调整到一个良好的抓持位形；其二，当手指在操作中运动到极限位置、手指之间将有干涉或接触点将超越有效的接触区时，需要调整手指的接触状态.实现灵巧操作有多种途径，如指态规划(finger gaiting)、滑动和纯滚动.其中纯滚动的方法由于相对简单、在操作过程中比较容易保证可靠的抓持而引起了研究人员的关注.
　　纯滚动是一种非完整约束运动，其非完整性在于接触速度约束的不可积性.基于这点用非完整运动规划的方法、应用非线性控制理论即可实现灵巧操作.Li和Canny用现代微分几何的理论研究过两个相接触的物体之间的滚动［1］，分析了位形空间中路径的存在性，并给出了一种路径规划的方法，但此法只适用于特殊形状的物体(圆球与平面)，路径长、变化大、不光滑.Murray和Sastry发展了用正弦函数作输入来驱动非完整系统的规划方法，并用于轮式移动车辆的路径规划上［2］，并在文［3］中研究了球状指端的手指操作方形物体时接触位形调整问题，以指端和被抓物体之间的转动为输入，将速度约束方程转化为二阶链式系统，但其算法的完成需要几个阶段，比较复杂.以上研究中的算法不是最优的，而且没有考虑怎样根据规划的结果最终生成手指的运动.
　　本文系统地探讨用纯滚动进行多指手灵巧操作的方法.首先基于纯滚动的非完整运动特性，用接触位形中的两个局部坐标的时间变化作为等效的非线性控制系统的输入，以接触点在物体和指端上走过的路径长度作为性能指标，对纯滚动进行最短路径规划.然后根据规划的结果，应用多指手操作的运动学方程产生手指的运动，从而实现多指手的灵巧操作.
2 纯滚动的非完整性
　　对于图1所示的n个手指的多指手，纯滚动运动学方程为［8］

图 1 多指手及其坐标系设定
　(1)

　　vpo为物体的速度，在物体坐标系中描述；Adg为对应于位形g的伴随变换［4］，将速度从一个坐标系变换到另一坐标系；为手指i的雅可比，M、K分别接触表面的度量张量和曲率张量.为规划非完整运动，只考察单个的手指即可.因此在以下的公式中，无手指下标号i.用纯滚动的方法可以实现手指与物体的接触从一种位形到其它任一种位形的变化，其可行性源于纯滚动的非完整性，即纯滚动虽然在接触位形的速度上有约束，但在接触位形上无约束.这可用现代微分几何的有关定理和非线性控制系统的可控性来说明［4］.
　　由接触运动学［5］可得纯滚动操作中接触坐标的速度约束
　(2)
　　令(2)式左边的前一矩阵可写为
因而上式可写为Pfaffian约束的标准形式
　　令由上式可得
　(3)
　　这是一个非线性控制系统方程，其可控性与纯滚动的Pfaffian约束(2)的非完整性(不可积性)是等价的.而非线性控制系统的可控性可用Chow定理来说明.其过程为，计算系统方程中矢量场gi(q)的李代数，由矢量场及其李代数张成分布并判定其维数(计算其秩)，若分布的维数等于系统状态空间的维数，则系统是可控的.

图2 指端和物体的局部坐标系设定
　　以平面指端的双指手操作半径为ρo的球形物体为例.建立图2所示的局部坐标系后，可得指端的几何参数(曲率张量K、度量张量M和挠曲形式T)为

球的几何参数是

将它们代入(3)式并整理得到

由矢量场g1和g2计算李代数，

可见，在局部坐标的定义域内，矢量场g1,…,g5是线性无
的，由它们张成的分布的维数是5，等于状态空间的维数.
　　用球状指端手指操作方形物体的情况与此完全类似.而用球状指端操作球形物体，当它们的半径不相等时，用纯滚动的方法也可实现接触位形空间中的任意变化［1］.
3 纯滚动的最短路径近优规划
　　路径规划是指给定初始的和终止的位形，寻求一个合适的系统输入即合适的路径，使系统从初始位形运动到终止位形.在灵巧操作中，我们希望接触点在表面上走过的路径最短，这种考虑出于三点：1) 路径短时，接触点不容易超越指端和被抓物体上的有效的接触区；2) 短的路径不易使指端和被抓物体的相对运动范围过大而造成手指达到其工作空间边界；3)路径越短，操作效率越高.下面根据这三点来作路径规划.
　　接触点在时间段［0,T］内，在表面上走过的路径长度可求得为［8］

其中M为物体表面的度量张量.
　　纯滚动中，接触点在两接触物体表面上走过的路径长度相等.故只需考虑接触点在一个表面上的路径长度，当然宜选取较简单的表面.为便于数学上的处理，令目标函数为

非线性控制系统(3)中，输入即为上式中的这样，路径规划问题转化为端点固定的优化问题
　(4)
系统可控时，存在优化解u*∈L2［0,T］，这里L2［0,T］是由定义在区间［0,T］内的形如
的可度量矢量函数构成的Hilbert空间.
　　下面以平面和球面之间的滚动为例说明上述问题的近优解.在平面上，由于M为2×2单位矩阵，因而目标函数为将时间伸缩为T=2π，并设为L2［0,T］上的一组正交基，那么u∈L2［0,T］可表示为其中为由满足关系式
的所有标量序列构成的Hilbert空间.目标函数成为

这样，寻求输入u就成了求解系数a.然而a是无穷维的，不可能求得，但应用Ritz逼近方法可以取其有限维而求得问题的近似解［6］.如取前N项，即令

由于u是近似的，极小化目标函数时应考虑由此造成的输出q的误差.为此，定义目标函数为
　(5)
其中，γ＞0为罚因子，为加权矩阵，是为了在非欧空间中度量矢量q的“大小”而引入的.接触位形空间不是度量空间，因为af,ao,ψ的量纲不同.为系统为初始条件，在T时刻的状态.显然，它是a∈RN的函数.令q(T)=f(a)，则目标函数(5) 即
　(6)
可以证明，当N,γ→∞时，上述有限维问题的近优解收敛于无穷维的优化解［6］.
　　(6)式的极值问题可用下列修正的牛顿法求解
　(7)
上式的推导用了J(a)的Taylor展开，并忽略了fi(a)的Hessians.其中为f(a)的Jacobian，σ=1/γ,0＜μ＜1为参数.f(a)及其Jacobian A可按下列方法计算：
　　定义那么u=Φa，而式(3)即为
显然A为矩阵函数在t=T时的值，而对Y(t)微分可得

这样，每一步都从t=0到t=T积分下列微分方程组以刷新a，
　(8)
令f(ak)=q(T), A=Y(T)即可.求得系数后即得系统的输入，从而得到系统状态变量的轨迹.
4　路径规划仿真结果
　　本节以圆盘平面指端的手指操作半径为90mm的小篮球为例(参见图2)，对上节的纯滚动非完整运动规划进行仿真验证.
　　假定手指与物体的初始接触位形为q0=η=(10,6,0,0,0.3)，圆盘指端的初始接触点不在其中心，期望的终止接触位形为qf=(0,0,0,0,0).要求在1秒钟内从初始接触位形过渡到终止接触位形.取傅立叶基的前十项，N =10，即

按上节的叠代方法可求得系统的输入为
u1(t)=-0.0002-0.9320sin2πt+1.6534cos2πt+0.8853sin4πt-0.4084cos4πt，
　　u2(t)=0.0002+2.1396sin2πt-0.2472cos2πt-0.1686sin4πt-0.4063cos4πt.
　　接触点在指端上的路径如图3(a)所示，从点(10,6)运动到(0,0).图3(b)为物体表面接触坐标轨迹，从(0,0)到(0,0)，走一封闭的路径.各接触坐标随时间的变化见图3(c)和3(d).结果表明，接触位形从(10,6,0,0,0.3)很好地过渡到了(0,0,0,0,0).

图3 路径规划仿真结果
　　更一般的情况是接触位形取任意值.假定初始接触坐标都不为零，例如q0=η=(10,6,0.2, -0.1, 0.3)，要求在1s内过渡到qf=(0, 0, 0, 0, 0).同样可得到理想的仿真结果，详见文［8］.
5 灵巧操作算法及仿真
　　直到上节只规划出指端与被抓物体的相对运动轨迹，操作中应最终求得手指的运动.根据非完整运动规划结果求得接触坐标的时间变化率，再根据被抓物体的运动，按多指手运动学即可求得手指的运动.算法如下面所述(见图4).

图4　算法过程框图
灵巧操作算法
已知：1)手指运动学模型；
　　　2)指端和物体表面的几何模型.
输入：1) 初始抓持位形θ(0)，η(0)；
　　　2)被抓物体的运动轨迹g(t)；
　　　3)期望的接触位形η(T)；
　　　4)运行时间T.
输出：手指的关节轨迹θ(k).
过程：1)求离散点数N,令k=0；
　　　2)用非完整方法规划路径η(t)；
　　　3)求离散点的物体速度vpo(k)
　　　和接触速度
　　　4)根据(1)式求
　　　5)求关节角θ(k+1)=θ(k)+
　　　重复步骤3)～5)，直至k=N.
　　　仍以前面的两指手操作小篮球为例.设手指有六个自由度(例如HKUST Hand的三个手指是三个六自由度的Motoman K3S机器人).设手指1 (图2中左边的F1)与球的初始接触位形为(10, 6, 0, 0, 0.3)，这时手指关节角为 (0.0184, -0.3307, -0.6082, -0.0322, 0.6084,-0.2736)，指端点在手掌坐标系(建在两手指的中间)中的坐标为 (-89.9838, 8.6849, 482.1695)，球心坐标为 (0, 0, 490).现要求将球在1s内上举50mm，同时将接触位形调整到 (0,0, 0, 0, 0).根据前节的规划结果，按照上面的算法，手指指端轨迹的仿真结果如图5所示.从仿真结果看到，指端点变到 (-90.0383, 0.0744, 539.9227)，姿态由下面的R(0)变化到R(1)，结果正确.同理可求的另一手指的运动.



图5 指端轨迹仿真结果
6 结论
　　多指手灵巧操作是一个引人入胜而有难度的问题，虽然实现灵巧操作有几种潜在的途径，但目前还没有较简单可行的方法.本文利用了纯滚动的非完整性，以接触点在表面上所走过的路径长度为性能指标，利用Ritz逼近，给出了纯滚动的非完整运动路径规划的近优解，仿真结果表明了这种规划方法的有效性.根据路径规划的结果，按多指手操作的运动学方程求得了手指的运动，从而使灵巧操作得到了具体的实现.但是应该指出，当手指的自由度较少时，难以根据规划的结果求得手指的精确运动.在这些情况下，需要考虑更有难度的指态规划或滑动.
致谢 本文部分工作在香港科技大学完成，得到了李泽湘博士的指导，对此第一作者特致以谢意.
国家自然科学基金资助项目(69785001).
管贻生 1966年生，博士.主要研究方向：机器人操作及控制.
何永强 1966年生，博士生，主要研究方向：机器人灵巧手控制
张启先 1925年生，工程院院士.主要研究领域：机构学，机器人学.
管贻生(北京航空航天大学机器人研究所 北京 100083)
何永强(北京航空航天大学机器人研究所 北京 100083)
张启先(北京航空航天大学机器人研究所 北京 100083)
参考文献
1，Li Z，Canny J. Motion of two rigid bodies with rolling constraint. IEEE Transactions on Robotics and Automation, 1990, 6(1)：62～71
2，Murray R M，Sastry S S. Nonholonomic motion planning: steering using sinusoids. IEEE Transactions on Automatic Control,1993，38（5）：700～716
3，Murray R M，Sastry S S. Grasping and manipulation using multifingered robothand.In：Proc. of Symposium in Applied Mathematics, 1990, 4：2931～2938
4，Murray R M, Li Z, Sastry S S. A Mathematical Introduction to Robotic Manipulation. CRC Press, 1994
5，Montana D J. The kinematics of contact and grasp. The International Journal of Robotics Research, 1988，7(3)：17～32
6，Fernandes C, Gurvits L. Nearoptimal nonholonomic motion planning for a system of coupled rigid bodied. IEEE Transactions on Auotmatic Control, 1989，39（3）：450～463
7，管贻生,张启先. 多指手操作：运动学算法和实验. 机器人，1998，20（5）：321～327
8，管贻生. 多指手操作：理论、算法和实验［博士学位论文］.北京：北京航空航天大学，1998
收稿日期 1998-06-23 收修改稿日期 1999-03-25
