王振斌,李 笑,郭彦泽,李超伟
人们在江河、港口中进行桥梁修筑、物体打捞等水下施工作业时,有必要使用遥操作水下工程机器人系统完成作业任务。为了提高其作业效率,需要将作业现场的图像、运动、力和声音等信息通过网络传递给操作者,使操作者在视觉、运动觉、触觉和听觉上具有临场感。但由于水下作业环境恶劣,如工程机器人作业时搅动泥沙造成河水混浊不清,摄像机获取的图像信息并不能准确地反映工程机器人与目标物体的位置和作用关系,且大量的图像信息传递还存在网络时延等问题。然而,若能将工程机器人手爪与目标物体的触觉信息在虚拟现实操作环境中可视化,不仅可使操作者保持一定的视觉临场感,还可克服图像信息传递的时延问题。因此,研究遥操作水下工程机器人的触觉可视化技术具有重要的工程实际意义。
近年来,国内外学者对机器人及其触觉可视化技术开展了相关研究[1-9]。文献[1]利用安装在工业机器人末端上的PVDF触觉传感器扫描目标物体获取其轮廓高程数据,并与视频图像相融合构造操作对象的三维可视化模型。但由于水下环境恶劣,视频图像失真,且触觉传感器所能感知的范围有限,该方法仅适用于小型且形状规则的目标物体的建模。文献[2]通过在工程机器人手爪上安装的力传感器和在关节处安装的角位移传感器,获取手爪末端与海底接触点的位置坐标,并将这些坐标用曲线连接显示在虚拟现实操作环境中。该方法虽可显示水下地形轮廓,但未能反映工程机器人与目标物体之间的位置和作用关系。
针对以上问题,提出并设计一种遥操作水下工程机器人的触觉可视化系统。采用SolidWorks建模与Opengl函数建模的混合建模方法及Denavit-Hartenberg(D-H)描述方法构建虚拟工程机器人,利用工程机器人末端的力传感器信号将手爪与目标物体的触觉信息显示在虚拟现实操作环境中。该系统可实时显示工程机器人的位姿、目标物体物理特性及其与手爪之间的位置和作用关系,实验证实了其有效性。
遥操作水下工程机器人触觉可视化系统,如图1所示。主要由力反馈手柄、远端工控机、本地工控机、力传感器、虚拟现实操作环境等组成。操作者操纵力反馈手柄控制工程机器人运动时,力反馈手柄控制指令也通过工控机传递给虚拟现实操作环境中的虚拟工程机器人,驱动其运动显示工程机器人的运动状态。当手爪抓取或手爪末端触碰目标物体时,安装于手爪内侧和末端处的力传感器将检测信号传递给远端工控机进行处理,一方面使力反馈手柄杆产生扭矩给操作者以触觉提示,另一方面通过串口传递给本地工控机控制的虚拟工程机器人,使手爪与目标物体的触觉信息显示在虚拟现实操作环境中,给操作者以视觉提示。
图1 遥操作水下工程机器人触觉可视化系统Fig.1 The Haptic Visualization System of Teleoperated Underwater Construction Robot
为了保证虚拟工程机器人能准确反映工程机器人的位姿,二者之间的尺寸比例及各部分的形状应相同。由于需控制虚拟工程机器人在虚拟现实操作环境中运动,故根据工程机器人的自由度,将其拆分成若干部分,对各部分分别建模,然后组合成整体模型[10]。
该工程机器人通过四个伺服液压缸的伸缩来调整手爪的位姿,针对其结构与运动特点,采用SolidWorks建模与Opengl函数建模的混合建模方法构建虚拟工程机器人几何建模。
首先,用SolidWorks对基座、动臂、斗杆、回转体、支撑杆、固定板、手爪连杆、上手爪和下手爪分别进行绘制,保存为STL格式的模型数据源文件,再分别导入3DMAX,导出为3ds格式的模型数据源文件。
然后,在VC++环境下,通过CLoad3DS()专门类对9个3ds格式的模型数据源文件进行读取,用OpenGL的平移、旋转和缩放等坐标变换对虚拟工程机器人进行组装。组装完成后利用Opengl自身函数,根据模块相关关节点的坐标值对液压缸建模。最后,对其进行材质、光照、纹理、反走样等处理,使虚拟现实操作环境更加逼真。
采用D-H描述方法对虚拟工程机器人运动学建模。在每个连杆上固定一个参考坐标系,建立起一个连杆和相对于上一个连杆的坐标变换矩阵,将这些变换矩阵相乘即可得到手爪末端相对于基座的运动学方程。
为了使虚拟工程机器人与工程机器人动作保持同步,虚拟现实操作环境中的坐标系应与实际坐标系一致。
虚拟工程机器人坐标系,X0Y0Z0、X1Y1Z1、X2Y2Z2和 X3Y3Z3为回转体、动臂、斗杆和上手爪关节坐标系,X4Y4Z4为手爪末端坐标系,如图2所示。
图2 虚拟工程机器人坐标系Fig.2 The Coordinates of the Virtual Construction Robot
根据建立的坐标系,用矩阵Ai描述连杆i相对连杆(i-1)之间的齐次坐标变换,关系式为:
式中:θi—绕zi-1轴由xi-1轴转向xi轴的关节转角;Rot—旋转齐次坐标变换矩阵;Trans—平移齐次坐标变换矩阵。
将虚拟工程机器人各关节连杆变换矩阵相乘,得其手爪末端的位姿矩阵:
展开并整理得:
式中:Si=sin(θi);Ci=cos(θi);Sij=sin(θi+θj);Cij=cos(θi+θj);li—各杆件长度。
利用Opengl的平移函数、旋转函数与矩阵堆栈函数将导入虚拟现实操作环境的各模型移动到特定位置,且能使其绕各自关节坐标轴旋转。这样便建立了虚拟工程机器人关节的运动继承关系。
触觉可视化方案是:在虚拟工程机器人的上、下手爪顶点之间建立目标物体模型,当工程机器人手爪抓到物体时,此模型在虚拟工程机器人上显示,未抓到物体时,不显示此模型。同理,在虚拟工程机器人手爪末端处建一个立方体模型。当工程机器人手爪末端未碰到物体时,此模型在虚拟工程机器人上不显示。碰到物体时,显示此模型。同时把手爪末端与目标物体接触过点的坐标保存在数组中,然后在虚拟现实操作环境中用线段依次连接这些坐标来获取目标物体轮廓。
目标物体模型是在虚拟工程机器人的上、下手爪顶点之间绘制的以手爪顶点连线为轴心的圆柱体,此圆柱体可随着手爪的张开伸长和手爪的闭合缩短。这样建立的模型可直观的显示目标物体的大小,受力后变形量。
图3 目标物体三维模型Fig.3 The 3D Model of Target Object
目标物体的三维模型,是利用旋转矩阵在虚拟工程机器人的上、下手爪顶点 A(x1,y1,z1)与 B(x2,y2,z2)之间绘制的圆柱体模型,如图3所示。首先调用Opengl的相关函数,在世界坐标系原点处,沿着Y轴方向完成高等于A、B点之间距离的圆柱体绘制,然后旋转此圆柱体使其轴心线与AB向量平行,最后平移此圆柱体到A、B点之间。在旋转矩阵中,dir向量是AB向量的单位向量,将dir向量和Y轴单位向量叉乘得到side向量,然后把side向量单位化,最终side向量与dir向量叉乘得到up向量。其中旋转矩阵m[4][4]公式为:
式中:side_x、side_y、side_z—side 向量在 x、y、z轴的坐标值;up_x、up_y、up_z—up 向 量 在 x、y、z 轴 的 坐 标 值 ;dir_x、dir_y、dir_z—dir向量在 x、y、z轴的坐标值。
触觉可视化实现流程图,如图4所示。当工程机器人手爪抓住或碰到目标物体时,力传感器输出的电压信号大于阈值T,工控机通过Cserialport串口类传递字符信号1给虚拟工程机器人,使已建模型用 glPolygonMode(GL_FRONT_AND_BACK,GL_FILL)函数来渲染,以实现其显示。未抓到或碰到目标物体时,力传感器输出的电压信号小于阈值T,工控机通过Cserialport串口类传递字符信号2给虚拟工程机器人,使已建模型用glPolygonMode(GL_FRONT_AND_BACK,GL_POINT)函数来渲染,以实现其隐藏。同时,当工程机器人手爪末端碰到目标物体时,保存手爪末端与目标物体接触点的坐标到数组中,在虚拟现实操作环境中用线段依次连接可获得目标物体轮廓。
图4 触觉可视化流程图Fig.4 The Flow Chart of Haptic Visualization
为了验证所设计的触觉可视化系统的有效性,对工程机器人抓取不同物体运动进行了大量实验研究。实验时操作者通过力反馈手柄调整工程机器人手爪的位姿来抓取物体。主要实验仪器参数,如表1所示。
表1 主要实验仪器及参数Tab.1 Main Experimental Instruments and Parameters
工程机器人作业现场与虚拟现实操作环境的对照图,如图5所示。手爪抓取砖块的情况,如图5(a)所示。抓取和抓压轮胎的情况,如图 5(b)、5(c)所示。手爪放下轮胎的情况,如图 5(d)所示。可以看出,触觉可视化系统能够在虚拟现实操作环境中实时显示目标物体的大小与变形量,反映目标物体的物理特性、手爪与目标物体的作用关系。
图5 工程机器人作业现场与虚拟现实操作环境Fig.5 The Working Spot and Virtual Reality Operation Environment of the Construction Robot
为了验证所设计的触觉可视化系统的可行性,利用该系统引导,对工程机器人抓取目标物体运动进行了大量实验研究。实验时,操作者与工程机器人分处不同场地,在不可见工程机器人的情况下,仅依靠触觉可视化系统引导操纵工程机器人。首先通过手柄控制工程机器人手爪触碰到目标物体,然后移动手爪获得手爪末端与目标物体的多个接触点坐标,由系统依次将这些点连接并显示目标物体的外形轮廓与位置,最后调整手爪位姿抓取物体。
图6 工程机器人作业现场与触觉可视化图像Fig.6 The Working Spot of the Construction Robot and Haptic Visualization Image
在触觉可视化系统引导下工程机器人作业现场与触觉可视化图像对照图,如图 6 所示。图 6(a)、6(b)和 6(c)分别为手爪末端碰到目标物体、获取目标物体轮廓和手爪抓取目标物体的情况。可以看出,触觉可视化系统在虚拟现实操作环境中能实时动态的显示工程机器人的位姿、目标物体的轮廓及其与手爪之间的位置和作用关系,实现了在无视频图像情况下工程机器人的远程操作。
为解决遥操作水下工程机器人的视觉提示问题,设计一种触觉可视化系统。实验表明,虚拟工程机器人建模及触觉可视化设计方法有效,可为在水下恶劣环境下作业的遥操作工程机器人的虚拟现实系统设计提供指导。