主从遥操作下双臂机器人的阻抗控制策略研究

2024-03-05 01:41昌,周浩,高
小型微型计算机系统 2024年3期
关键词:主从双臂位姿

韩 昌,周 浩,高 俊

(武汉商学院 机器人视觉感知与应用学术团队,武汉 430056)

0 引 言

遥操作(Teleoperation)是指操作员通过远距离操作的方式,实现对于危险环境下的或人类无法进行操作尺度下任务的作业[1,2].随着遥操作和机器人技术的快速发展,遥操作机器人系统因具备拓展人类作业范围的能力,已被广泛用于空间、海洋、医疗等领域.在非结构化环境下作业过程中,从端的机器人需与外界环境进行直接交互.由于外界扰动及视觉误差等因素的存在,机器人实际运动轨迹会与理想轨迹有微小的误差[3-5].在一些有高精度位置需求或者高刚度的环境中,位置一旦产生误差,机器人本身的刚度与环境进行硬碰硬,这对环境或机器人都会造成破坏.因此,为了使操作人员安全地远程操作从端的机器人,应合理地控制机器人与环境的接触力,以避免因接触力过大对机器人和环境造成破坏[6-8].

目前遥操作机器人系统中常见的控制方法有波变量法、自适应控制法、模糊控制法、阻抗控制法、神经网络控制法以及模糊控制法等[9,10],这些方法在遥操作机器人工程应用中得到了成功的应用并取得了不错的效果.尤其重要的是基于神经网络的控制方法已经成为近几年来在机器人遥操作系统中处理运动学和动力学两个重要问题的主要工具与手段.阻抗控制方法,可以将力控制和位置控制纳入同一个控制体系,具备计算简单以及鲁棒性较强的优点,是处理机器人力控制的一个常见且高效的方法[11-14].在控制系统末端执行器加入阻抗控制器,可提高机器人接触外界环境时展现的柔顺特性,从而保证了遥操作下机器人末端执行的安全性.质量弹性阻尼模型是阻抗控制方法的基本模型,主要是利用该模型建立机器人与外界环境之间的空间位置和外力的实时响应关系.由于该模型的有效性,国内外学者纷纷对机器人阻抗控制方法开展了一系列的研究.早期,机器人接触力控制主要是通过具有力控制的PID控制器来实现的[15-17].实验结果发现,这类控制器在与刚性较大的环境接触时控制效果不佳.García-Valdovinos等人[9]构建了机器人目标阻抗模型,同时为改善奇异位形情况,在奇异位形附近关节角速度指令直接由各个关节力矩阻尼控制得到,实现角速度精准输出.束友升等人[4]通过添加虚拟外力,结合位置的阻抗控制,使得机器人末端执行器与目标物体接触前的冲击力减小.Patolia等人[5]提出了一种用于双臂协同操作的空间机器人的虚拟力设计,实现机器人的阻抗控制.为了实现机器人对物体的协调操作李坤[6]提出的间接自适应阻抗控制方法很好的解决了这一问题.现有研究大多数集中主动型机器人的柔顺力控制,此情况下机器人的运动轨迹是预先确定的[18-20].

在主从遥操作机器人系统中,因为操作者往往无法直观的感受与环境的接触[21-23],因此解决机器人与外界环境的交互问题,使之可以在按要求完成任务的同时,与环境保持柔顺地力接触至关重要的[24,25].本文提出结合运动映射和阻抗控制来实现遥操作下机器人柔顺控制.首先,提出主端设备与从端机器人之间的运动映射策略,求解出遥操作下机器人期望运动目标;接着,研究机器人阻抗控制策略,建立位置误差与力反馈的映射关系,提高操作的柔顺性;最后,引入虚拟排斥力,让从端机器人的双臂在允许的空间中运动,避免从端机器人的双臂碰撞,从而提高机器人遥操作的安全性.鉴于此,本文设计了擦拭白板任务的机器人遥操作实验,利用该实验对本文所提出的遥操作下机器人阻抗控制方法进行数据分析,验证本控制策略的有效性.

1 遥操作机器人的运动映射

本文所建立的主从遥操作机器人系统主要由主端设备和从端双臂机器人的两子系统组成.其中,主动设备选用的是Geomagic Touch X 力反馈设备,其具备6 自由度位姿感知和3自由度的末端力反馈.从端机器人使用Baxter双臂机器人,该机器人装备了两个7自由度的机械臂,具有工作空间大、高灵活度等特点.而且Baxter机器人还具备接触力矩监测能力,可通过各关节力矩计算的到近似的末端受力状况.在主从遥操作过程中,操作人员通过主端Touch X设备将操作的位姿信息传递给从端Baxter机器人,通过运动映射策略求解得到Baxter机器人的期望位姿,并生成运动接近目标,其系统组成如图1所示.

图1 主从遥操作机器人系统组成Fig.1 Master-slave teleoperation robot system

1.1 Baxter机器人的运动分析

Baxter是 Rethink Rbotics生产的一款双臂协作机器人,本实验中的机器人采用可移动基座躯干和双臂组成,每个机械臂具有7自由度,其中肩关节和肘关节个有2个自由度,腕关节具有3自由度的能力.因为Baxter内置的关节组件采用串联弹性驱动器(series elastic actuators)的形式组成,在发动机/传动装置和执行器之间有一条弹簧,通过弹簧的变形可以计算出关节输出力矩,因此可以监测外部的作用力并反馈.

本文采用D-H参数法分析机器人的正向运动学.由于机器人的右臂与左臂相互对称.表1给出了7-DOF右臂的D-H参数.

表1 Baxter机器人右臂的D-H参数表Table 1 D-H parameter of Baxter robotic ram

Baxter机器人的正运动学(Forward kinematics,FK)的求解,是利用齐次变换矩阵来求出机器人末端坐标系相对于基准坐标系的位姿,完成对每个序列链的正运动学求解.公式(1)展示的是4×4齐次变换矩阵,该矩阵表达了坐标系{i}相对于坐标系{i-1}的位姿.其中,缩写:cθi=cosθi,sθi=sinθi,cαi=cosαi,sαi=sinαi.

(1)

(2)

1.2 主从设备间的运动映射

本文通过基于工作空间的运动映射,将主端Touch X设备的运动信息传递给从端Baxter机器人.首先,记录Touch X设备关节状态下信息,通过运动学分析得到其位姿信息,其次,通过运动映射将主从端联系起来,求解出Baxter机器人运动的目标位姿态.最后,通过Baxter机器人逆运动学分析,求解出Baxter机器人的各个关节的目标位置信息,从而驱动机器人完成运动控制.为了更好的保证下文实验二中与平面的稳定接触,本文将机器人最终末端的姿态调整为固定的方向(竖直向下),仅考虑遥操作过程中的位置信息映射.因此,遥操作机器人系统的主从映射表达式:

Pb=Tt2b·Pt+b

(3)

2 遥操作下机器人的阻抗控制

在主从遥操作过程中,从端Baxter机器人实现两个要求:1)Baxter机器人按照映射策略稳定的跟随主动设备的运动;2)Baxter机器人根据指令及当前状态,与外界环境保持合适的接触力,完成指令的同时避免过载接触力导致机器人或环境损伤.为此,本文提出机器人的阻抗控制方法,以实现机器人执行末端与环境接触的力相适应.该阻抗控制模型是以质量弹性阻尼模型为基础,建立机器人执行末端与外界接触力之间的空间位置和实时动态响应关系.在遥操作机器人控制系末端加入阻抗控制器,可提高机器人接触外界环境时展现的柔顺特性,从而保证了遥操作下机器人操作的安全性,同时,因为最终接触力通过关节处的力矩输出实现,也使得我们可以通过调整各关节的参数的方式,让整个机器人手臂整体上保持更为合理的姿态.其完整过程如图2所示.

图2 基于阻抗控制的遥操作机器人柔顺控制流程图Fig.2 Flow chart of telerobotic compliance control method with impedance control

在阻抗控制方式中,机器人与环境的接触力与位置偏差之间往往需满足所示的公式关系:

(4)

其中,x代表实际位置,x0代表期望位置,e代表位置跟踪误差.Md,Dd,Kd代表期望系统的惯性特性、阻尼特性和刚度特性,通过调节这3个参数,从而改变机器人末端的柔顺度.

则为公式(4)添加补偿项并整体转化为关节力矩后得到:

(5)

在此,为了便于直接调整各关节的扭转刚度,进一步确保执行任务过程中手臂可以呈现出一个合理的姿势,我们舍弃了采用力雅可比矩阵的方式,直接使用关节误差计算关节输出力矩:

(6)

结合阻抗控制和虚拟排斥力,更新后的阻抗控制,如公式(7)所示.阻抗控制根据追踪误差eθ以及排斥力,计算出输出力F.其中,Md′,Dd′,Kd′表期望系统各关节能具备的阻抗参数.

(7)

在主从遥操作过程中,操作人员从主端远程控制从端机器人运动,并与环境之间接触.期望位置x0与实际位置x产生误差,随着x0与x差值变化,接触力Fext按照预想的机器人末端位置偏差和接触力偏差之间的动态关系随之变化,整个任务过程既实现了对于操作端的跟随,同时保持了接触是可控的,达到柔顺接触力控制的目的.而当双臂过于接近时,虚拟排斥力也将不断增大,这也将减缓机械臂的运动,使其不再保持原有的速度防止双臂之间的碰撞.

3 实 验

3.1 实验平台搭建

为了验证所提出方法的有效性性,本文搭建了一套具备阻抗控制的机器人遥操作系统,如图4所示.该系统基于控制计算机的局域网实现通讯,由Ubuntu操作系统下的开源机器人操作系统(ROS)控制整个系统的运行.实验中,分别在机器人右臂的末端固定一块板擦,在机器人工作空间内放置一块提前做好标记的白板.实验过程中主从端设备的力学信息,关节状态,末端状态等均采用100Hz的频率的进行采样.

3.2 实验分析及结果

本文通过设计了两项实验来验证所提出方法的有效性.实验1中暂不引入遥操作系统,我们通过简单的外力拖拽实验,在期望位姿固定的情况下迫使机器人运动,以验证机器人在所设计系统中的顺应和稳定性;实验2是机器人擦拭白板实验,我们远程控制Baxter机器人执行擦拭任务,来验证所搭建的阻抗控制系统在遥操作情景下的可行性.

如图3所示,在实验1的外力拖拽实验中,首先在计算机向机器人发送固定的末端位姿的状态下通过手动拖动和扭转的方式,向机器人右臂末端施加一定的力,迫使其发生移动及扭转.在阻抗控制下,机器人可以迅速自行复位,并保持稳定.

图3 Baxter机器人的外力拖拽实验Fig.3 External drag experiment of Baxter robot

整个运动过程中,一方面操作者通过施加外力到机器人末端,可以柔顺地改变机器人末端位姿,说明系统在外力存在的情况下可保持较好的柔顺性,可有效保证交互过程中的安全;另一方面在外力消失后,机器人设定的初始位姿迅速实现复位,说明系统具有较好地位姿跟踪能力.图4实验数据显示,机器人各关节在收到外力发生强迫位移和扭转的过程中,产生了与之反向,并且柔顺的输出力矩.在驱使机器人复位后,输出力矩的值迅速收敛到零附近,表现出系统具备良好的稳定性.

图4 Baxter机器人各关节(S0-W2)输出扭矩变化Fig.4 Change of output torque of robot joints(s0-w2)

在实验2的白板擦拭实验中,Baxter机器人需与白板保持合适的接触力才能完成任务.接触力过小则无法擦拭印记;接触力过大则对机器人和白板造成破坏.在实验中,采用Touch X设备远程操作的方式,控制Baxter机器人擦拭工作台上的白板上的印记.

图5展示了遥操作下Baxter机器人擦拭过程中的关键状态.首先,机器人在初始点就位,如图5(a)所示.其次,操纵机器人准确地运动到标记的一侧,并和白板表面进行接触,如图5(b)表示.接着,机器人开始擦拭动作,机器人在远程操作下,保持与板面的稳定接触,同时克服摩擦阻力运动,如图5(c)所示.最后,机器人离开白板表面,顺利完成擦出任务,如图5(d).整个白板擦拭过程耗费约40秒.实验结果显示,Baxter机器人不仅可以准确跟随主动设备的运动,还可以与外界环境保持合适的接触力,完成擦拭任务.

图6显示了白板擦拭过程中Baxter机器人末端力学信息.机器人在和白板接触后,一方面在Z方向上产生了6~8N的接触力,这使得机器人能够通过摩擦顺利擦除白板上的标记,另一方面X,Y方向的力显示,机器人在跟随指令运动,同时未对白板表面造成任何损伤.实验结果表明,所提出阻抗控制方法可实现遥操作机器人系统在具有接触的任务中的柔顺操作,可提高操作的安全性.

图6 执行过程中机器人末端与环境的接触力Fig.6 Force between robot end and whiteboard during wiping

4 结 论

本文以提高遥操作机器人系统操作安全性为目的,将进具备运动映射功能的遥操作系统与阻抗控制进行结合,提出了遥操作情景下赋予机器人柔顺性的控制策略,使得从端机器人在跟随主端设备运动的同时能更好的处理与外界的物理接触,使整个操作过程与外界环境保持合适接触力.所提出阻抗控制策略,建立机器人与外界环境之间的位置和接触力的动态响应关系,同时引入针对机器人双臂的虚拟排斥力,让从端机器人的双臂在允许的空间中运动并避免接触,从而提高了主动遥操作机器人操作的柔顺性和安全性.基于所提出的系统,本文进行了机器人遥操作实验,实验结果表明:所提出的方法可以让从端的Baxter机器人具备较好的运动平稳性、可操作性以及对于外力的顺应性,并完整实现了擦拭白板任务,验证了方法的有效性.

猜你喜欢
主从双臂位姿
我在街上走
FANUC系统PROFIBUS主从功能应用
双臂掘进钻车
基于共面直线迭代加权最小二乘的相机位姿估计
基于CAD模型的单目六自由度位姿测量
基于主从控制的微电网平滑切换控制策略研究
小型四旋翼飞行器位姿建模及其仿真
基于飞行试验数据的仿真模型主从一体化检验
我在街上走
基于FPGA的机床数控系统主从控制器通信研究