主从遥操作机械手的阻尼触觉反馈
2024-05-07潘雷潘明章李劲梁科
潘雷,潘明章,李劲,梁科
(广西大学机械工程学院,广西南宁 530004)
0 前言
遥操作机械手已经成为一个活跃且有趣的研究领域[1],它将人类的智能与机器人的高精度相结合来执行长距离或者人类无法到达的操作,已经被广泛应用于医疗、航空航天、救援和深海探索等非结构化环境下的任务中[2-5]。
在遥操作过程中,操作者与从机械手分隔两地,操作者往往只能通过摄像头提供的视觉信息认知从端环境。然而视觉信息存在画面分辨率有限、视角的灵活度不足和视野易被遮挡等缺点。虽然可以通过增加摄像头来提供给操作者更多的环境信息,但是这无疑会增加操作者的认知和工作负荷。因此,当从端工作空间内存在障碍物时,遥操作的约束使操作者难以准确感知障碍物的位置,可能导致危险情况的发生,比如碰撞。
由于遥操作系统中视觉反馈的种种限制,且随着触觉反馈设备的不断发展与进步,人们逐渐尝试开发触觉反馈来增强操作者对从机械手与障碍物的感知,提高遥操作系统的安全性和作业效率[6]。目前,已有许多触觉反馈方法被提出,如虚拟夹具[7]、控制屏障[8]、人工势场[9]等。但这些方法大多数是基于从机械手与障碍物之间的位置信息,虽然有少数方法涉及到速度信息,也只是考虑了速度大小[10],忽略了速度方向,所生成的触觉反馈并不够准确地反映碰撞信息。为此,本文作者提出阻尼触觉反馈的方法,并且为了使人类操作员更准确、更迅速地感知障碍物信息,提出一种避障阻尼模型,该模型除了关注从机器人与障碍物之间的距离外,还加入了对从机器人末端的速度方向这一新因素的考虑,通过速度信息预测未来一段时间的机器人运动,从而调整触觉反馈阻尼辅助人类操作者找到无碰撞的运动方向。最后通过实验证明其有效性。
1 遥操作机械手系统组成与运动学映射
1.1 遥操作系统组成
遥操作系统主要分为3个部分:主动系统、从动系统和通信系统,如图1所示。人类操作者通过力反馈主手将位置信息通过通信手段传达给从端,从而远程控制从机器人按照操作者意图运动。一方面,操作者可以通过显示器获取摄像机提供的从端环境的视觉信息;另一方面,从机器人与环境的交互力信息可以通过力反馈主手传递给操作者实现触觉反馈。
图1 遥操作系统原理
1.2 运动学映射
由于大部分主从设备在构型上存在差异,无法在关节空间直接进行主从映射,所以文中使用笛卡尔空间的位置映射[11]来完成遥操作运动控制,如式(1)所示:
vs=Kv·vm
(1)
式中:vm为主手的实际运动速度;vs是发送给从机器人控制器的速度指令;Kv是调整主从速度缩放比例的参数。
从机器人的控制器将接收到的控制信号为vs通过逆运动学分解成每个关节的角速度,并通过PID控制实现伺服跟随,从而实现遥操作系统的主从运动学映射。
2 触觉反馈
2.1 触觉反馈技术
在机器人领域,触觉反馈被广义地定义为机器人、人类与真实、远程或者虚拟环境之间的真实和模拟的触觉和力觉的交互。其中触觉是指与人类皮肤有关的振感[12]、压觉、温度等感官刺激的总称;而力觉是指人类对与机器人运动学有关的位置、速度、惯性力等物理特性的感知。在操作者、主手和从机械手构成的主从遥操作系统中,触觉反馈技术的实现需要主手具有触觉反馈的功能,触觉反馈主手可以将从机械手在真实或模拟环境中所生成的力感和触感反馈给操作者,增强操作者对远端环境的感知。为提高主从遥操作机器人的安全性,减少甚至避免因网络延迟或者操作者人为失误等导致的从机械手碰撞、倾覆等危险情况的发生,触觉反馈技术提供了一个切实可行的方向。
2.2 阻尼触觉反馈
文献[1]在研究遥操作系统的主从映射方法时,将主手反馈力设置为一个与主手位置和速度有关的弹簧阻尼模型,从机械手的速度越高,操作者感受到的阻力就越大,如果从机械手移动过快,操作者将很难继续加速从机械手,因为他/她已经感受到来自主手的非常高的操作阻力,这可以保证安全操作。受到这一思想的启发,为了提高遥操作系统的安全性,减少人为误操作导致的从机械手与障碍物碰撞,增强操作者对远端障碍物的感知,将主手的触觉反馈设置为一个与速度方向有关的避障阻尼模型,如图2所示。
图2 阻尼触觉反馈示意
速度方向是影响碰撞风险的一个重要因素。在存在障碍物的环境中,当从机械手的末端执行器沿不同方向运动时,所产生的碰撞风险显然不同。根据当前方向的碰撞风险调整主手触觉反馈的阻尼值,使操作者感知到不同速度方向上的操作感差异,提供触觉上的提示,从而帮助操作者寻找安全的运动路线,可避免从机械手与障碍物发生碰撞。
遥操作系统的阻尼触觉反馈力Fm由式(2)计算:
Fm=-D·vm
(2)
式中:D为根据当前碰撞风险计算得到的操作阻尼值;触觉反馈力Fm的方向始终与主手速度vm方向相反。
3 避障阻尼模型
为了提高触觉反馈的准确性和及时性,同时考虑从机械手与障碍物的距离因素和速度因素,文中提出式(3)所示的避障阻尼模型:
D=Ddis·(1+λvel)
(3)
式中:Ddis为与障碍物距离有关的阻尼值;λvel为与速度方向有关的阻尼增益。
3.1 GJK算法
与传统的避障策略类似,文中所提出的避障阻尼模型需要计算机械臂与障碍物之间的最小距离。为此,需要计算障碍物到机械臂每个连杆的最小距离,则可以检测出距离障碍物最近的连杆,并将该连杆与障碍物之间的最小距离当作该时刻机械臂与障碍物的最小距离。
传统碰撞检测方法使用几何体包络法,即以圆柱体和球体近似替代机械臂连杆和障碍物来计算距离,将问题简化为点到线段的距离问题。显然这种方式无法准确描述机械臂在复杂形状障碍物环境中的位置信息,且运算量庞大。虽然球体是面对距离计算和碰撞检测最简单的实体,但是它并不能很好地反映真实环境,从而导致机器人在避障过程中存在过于保守的现象,不能充分利用工作空间。
文中采用GJK算法[13]快速计算机械手与障碍物之间的距离。GJK算法是一种有效且快速的算法,用于计算2个任意形状的凸多面体之间的最小距离,如图3所示。
图3 GJK算法
考虑2个凸体A和B,在三维空间中,其由矩阵定义的顶点分别为VA∈RnA×3和VB∈RnB×3。nA和nB分别是凸体A和B的顶点数。这些矩阵的每一行表示相应凸体顶点的位置。GJK 算法采用这些矩阵并计算2个凸体的最近顶点之间的最小距离。
(4)
因此,为了使用GJK算法计算距离,如图4所示,将机器人不规则连杆建模为凸形胶囊体。对于障碍物,根据形状采用合适的凸形体(长方体、圆柱体、球体等)及其组合进行包裹。
3.2 距离因素
考虑到避障阻尼应该在障碍物距离较远时保持较小值,以保证人类操作者的动作不会受到明显限制,只有当障碍物在一定距离内时才达到较大值,从而使操作者感受到运动阻力。因此,有必要设计一种开关机制来实现这种功能。这在遥操作系统中是个很好的特性,因为没有必要在明显安全的情况下让操作者感知到避障带来的运动阻碍感。此外,值得注意的是,不连续的阻尼会导致人类操作者在操作过程中受到突变断续的反馈力,从而导致不舒适的用户体验。因此,式(3)中的Ddis由式(5)计算:
(5)
式中:KD为阻尼幅值调节因子,通过实验获得最佳值;d是当前从机器人与障碍物之间的最小距离;ds是阻尼触觉反馈开始起作用的安全距离,根据实际任务需求进行调整;α为整形因子,用来调节阻尼与距离d之间的关系。
当从机械手与障碍物之间的距离足够远(即碰撞风险很小)时,Ddis趋近于0,人类操作者基本感受不到避障阻尼的存在,可以轻松驱动主手设备沿任意方向自由运动。当机器人小于所设定的避障安全距离ds时,Ddis逐渐增大。随着Ddis的增大,人类操作员在操纵主手的过程中所感受到的阻力越来越明显,从而提醒操作员从机械手已经接近障碍物,应降低操纵速度避免碰撞。
3.3 速度因素
除了距离,速度方向也是影响碰撞风险的一大因素。为了量化速度方向对碰撞的影响,将其转化为距离计算的问题,如图5所示。
图5 基于末端速度的运动预测与距离计算
在图5(a)中,当前时刻机器人末端执行器的速度为vs,假设机器人在接下来的tp时间内都按照该速度的方向运动,速度大小设置为常量vp。则机器人连杆将在空间中划出一个复杂的运动曲面,为了量化此末端速度对机器人的碰撞影响,需要得到预测过程中机器人与障碍物的最小距离,即障碍物到该复杂运动曲面的最小距离。然而该问题很难通过解析法直接解出,因为要得到该曲面的准确数学表达并不容易。如图5(b)所示,将预测时间tp内机器人的运动曲面离散化为N个状态,利用逆运动学求解,并根据“最小行程”策略(取2个相邻运动时刻机器人关节角度变化的最小值)选择得到这N个状态下对应的关节角度,然后求解出每个中间状态下机器人与障碍物的最小距离,从而取N个距离中的最小距离作为预测时间tp内机器人与障碍物的最小距离,由式(6)计算:
(6)
式中:din是第n状态下机器人m个连杆中第i个连杆与障碍物之间的距离,由GJK算法计算可得;t0表示初始时刻;dt是t时刻机器人与障碍物之间的最小距离;dmin是预测时间tp内机器人与障碍物之间的最小距离。
然而,在某些情况下,只通过上述预测时间内的最小距离dmin并不能准确表达速度方向对碰撞的影响。如图6所示,为了方便理解,只考虑机械手末端执行器的碰撞,以rp为半径的圆代表预测时间内末端可到达的范围边界。vs1和vs2代表机械臂末端执行器的2个大小相等、方向不同的速度,且预测时间tp内都会导致机械臂与障碍物发生碰撞,即dmin=0。但是,vs1、vs22个速度对碰撞的影响并不相同,vs1会比vs2更早导致碰撞的发生。因此,为了进一步提高预测的准确性,对机器人从当前状态首次到预测最小距离状态的时间进行了计算,为了简化描述,后面称之为碰撞时间tc,由式(7)计算:
(7)
图6 末端以不同速度方向运动对碰撞的影响
式中:k(k=1,2,…,N)是预测周期tp内离散状态中对应于最小距离dmin的第一次的机器人状态的序列号。
建立与速度方向相关的避障阻尼增益因子λvel,由式(8)计算:
(8)
式中:ωv是增益比例系数。
当机器人沿着远离障碍物的速度方向运动时,dmin=dt0=d,λvel=0,则表示当前速度方向不会给主手设备带来额外的阻尼增益。当机器人沿着接近障碍的速度方向运动时,通过预测周期内的最小距离dmin来调整阻尼增益λvel。为了进一步区分预测周期内不同速度方向对碰撞风险的影响(dmin=0),还在该模型中引入了碰撞时间tc(0≤tc≤tp),tc减小表示当前速度方向的碰撞风险不断增高,λvel逐渐增大,使操作者感受到避障阻尼在不同速度方向上的差异,为操作者提供了早期避障预警和适当的引导,从而进一步减少了碰撞的发生,提高遥操作系统的安全性和可靠性。
通过上述分析,得到所提出的避障阻尼模型,式(3)可以进一步由式(9)表示:
(9)
4 实验及结果分析
4.1 实验平台搭建
为了验证所提出的触觉反馈方法的有效性,搭建了遥操作机械手的触觉反馈实验平台。分别采用UR5e协作机器人和omega.7力反馈设备作为遥操作系统的从端和主端。上位机采用AMD Ryzen 5 5600H with Radeon Graphics(3.30 GHz) CPU和开源机器人操作系统ROS-Melodic with RT-PREEMPT(Ubuntu18.04×64),控制回路以500 Hz的频率运行,通过以太网实现上位机、主端和从端之间的通信。
4.2 实验分析
为了模拟远程机械手搬运和避障任务,邀请了5名受试者进行遥操作实验(均没有遥操作经验),受试者被要求操作力反馈主手控制从机械臂末端执行器在避开障碍物的同时搬运工件依次到达3个目标位置,每个受试者的路线顺序随机,如图7所示。实验前,通过反复实验调整所提模型中的相关参数,以获得系统的最佳性能。为了简便,此实验中,从机械臂末端执行器的姿态保持不变,障碍物的形状以及相对从机械手的位姿已知。
在该实验中,分别进行了2组实验:第一组只提供给操作者视觉反馈,即操作者只能通过摄像机提供的画面感知远端环境;第二组除了视觉反馈外,还通过力反馈主手向操作者提供文中提出的阻尼触觉反馈。每个受试者需要分别在上述2组实验模式下完成一次实验。在整个实验过程中,用于评估方案性能的记录参数包括碰撞次数、任务耗时和主观工作量。其中:主观工作量使用NASA任务负荷指数(TLX)[14]进行评估(包括6个问题,评分范围0~100,100表示工作量最大),以记录任务期间感知的身体和精神负荷。
碰撞次数结果如表1所示。可以看出:所提出的触觉避障方法可以显著地减少碰撞的发生,提高遥操作系统的安全性。在表2中,记录了2个组别每个操作者完成任务的时间,当操作者可以同时利用视觉和触觉(组别2)时,相比于仅有视觉反馈(组别1),操作者的平均任务耗时降低了20%。即所提出的触觉避障方法在提高遥操作作业效率上可以发挥重要作用。NASA-TLX的调查结果如图8、9所示:当使用阻尼触觉反馈时,NASA-TLX的加权评分平均分明显减少了47.17%(从59.93降低到31.67);此外,相较于组别1,组别2每项工作量的平均评分都较低,说明所提出的触觉方法显著降低了操作者的工作负荷。
表1 碰撞次数
表2 任务耗时
图8 NASA-TLX的加权平均分
图9 操作人员对每项工作量的平均评分
5 结论
针对触觉反馈在主从遥操作机械手系统避障应用中存在的网络传输时延和准确性不足等问题,提出了一种新的阻尼触觉反馈方法,同时考虑了距离和速度因素。根据距离设计了一种可实现触觉平滑介入的开关机制,通过离散化的方法将速度方向对于碰撞的影响转化为距离计算问题进行量化。实验结果表明:与仅提供视觉反馈的遥操作相比,该方法提供给操作者的阻尼触觉反馈可以实现远端障碍物的准确碰撞感知,有效提高安全性和作业效率,并且显著降低了操作者的工作负荷。