法律状态公告日
法律状态信息
法律状态
2020-01-10
授权
授权
2017-12-15
实质审查的生效 IPC(主分类):B25J9/16 申请日:20170608
实质审查的生效
2017-11-21
公开
公开
技术领域
本发明涉及远程遥操作机器人控制技术领域,特别是涉及一种基于视觉的遥操作机器人控制系统及方法。
背景技术
尽管机器机器人技术近年来获得了长足发展,但是当前机器人仍然不能够独立地完成一些复杂的、危险的操作任务,比如处理核废料、拆除爆炸物、水下以及空间探勘等。
目前,机器人遥操作技术既可以将人类与危险的操作环境隔离开,又利用了人类处理问题的能力和经验,因而具有较强的实用价值和广阔的应用前景。
然而,现有的遥操作方法一般分为接触式和非接触式两类。其中,接触式遥操作方法通常使用外骨骼设备、数据手套、惯性测量等方法来获取操作者的运动信息,进而利用这些运动信息控制机器人,实现对机器人的遥操作。该些方法因为需要在操作者身上穿戴传感器设备,会造成操作动作受限和不自然的情况。非接触式遥操作方法通常采用基于视觉测量操作者动作行为的方法,因此,操作者在操作时动作会很自然,有利于操作者完成较为复杂的遥操作任务,但该种方法对视觉测量的精确度要求较高。
在基于视觉的遥操作系统中,不使用特定标记物的方法对操作者来说是最自然的。但是,这类方法对识别算法的要求很高,目前仅能完成一些简单的操作任务,比如简单的夹取等。相比之下,使用特定标记物的视觉方法具有算法简单的特点,在设计简单有效的标记物和快速高效的检测算法的基础上可以获得较高的检测精度。
发明内容
为了解决现有技术中的上述问题,即为了解决接触式遥操作方法需要的外部设备结构复杂、操作者执行操作任务时不自然以及对操作者复杂动作识别度低的问题,本发明提供了一种基于视觉的遥操作机器人控制系统及方法。
为实现上述目的,本发明提供了如下方案:
一种基于视觉的遥操作机器人控制系统,所述控制系统包括主站和从站,所述主站通过网路与所述从站连接;其中,
所述主站包括:
一字支架和十字支架,为手持设备,通过操作者的手部运动分别带动所述十字支架和一字支架运动;
深度相机,用于采集所述十字支架和一字支架运动时的彩色图像及对应的深度图像;
主站控制器,与所述深度相机连接,用于根据所述彩色图像及对应的深度图像确定所述十字支架的位姿增量及一字支架与竖直方向的夹角;
所述从站包括机械臂、与所述机械臂的末端连接的机械抓手以及机械臂控制器;所述机械臂控制器通过网路与所述主站控制器连接,接收所述十字支架的位姿增量及一字支架与竖直方向的夹角;所述机械臂控制器分别与所述机械臂和机械抓手连接,用于根据所述十字支架的位姿增量控制所述机械臂的目标位姿,根据所述夹角控制所述机械抓手的开闭。
可选的,所述十字支架上的三个端部分别设置有一个球体,且所述十字支架的连接处设置有一个球体;所述一字支架的两端分别设置有一个球体,且六个球体的颜色均不相同。
可选的,所述主站还包括:
六个分类器,分别与所述深度相机和主站控制器连接,用于根据所述彩色图像中六个球体的颜色进行分类识别;
所述主站控制器还用于采用重心法确定六个球体的球心位置,并根据各所述球心位置及所述深度图像确定六个球体在当前帧中摄像机坐标系下的三维空间位置。
可选的,所述主站还包括:
Kalman滤波器,与所述主站控制器连接,用于根据各球体在当前帧中摄像机坐标系下的三维空间位置,预测各球体在下一帧中的位置;
所述主站控制器还用于根据预测的各球体在下一帧中的位置及所述深度相机采集的彩色图像进行局部检测确定球体的三维空间位置。
可选的,所述主站还包括均值滤波器,与所述控制器连接,用于对所述十字支架的位姿增量进行滤波,并将滤波后的位姿增量通过网络发送至所述机械臂控制器。
可选的,所述从站还包括网络相机,用于采集机械臂与机械抓手的运动及工作场景的图像;
所述主站还包括显示器,与所述主站控制器连接;所述主站控制器还用于接收所述网络相机采集的机械臂与机械抓手的运动及工作场景的图像,并发送至所述显示器进行显示。
根据本发明的实施例,本发明公开了以下技术效果:
本发明基于视觉的遥操作机器人控制系统通过设置深度相机采集在操作者手部运动时带动十字支架和一字支架运动的彩色图像及对应的深度图像,通过主站控制器确定十字支架的位姿增量及一字支架与竖直方向的夹角;使得机械臂控制器可根据十字支架的位姿增量控制机械臂的目标位姿,根据夹角控制机械抓手的开闭,从而使得操作者能够自然的执行操作任务,同时简化设备结构,提高对操作者复杂动作的识别度,以及提高控制精度。
为实现上述目的,本发明提供了如下方案:
一种基于视觉的遥操作机器人控制方法,所述控制方法包括:
在主站,通过深度相机采集操作者手部运动时带动所述十字支架和一字支架运动的彩色图像及对应的深度图像;
通过主站控制器根据所述彩色图像及对应的深度图像确定所述十字支架的位姿增量及一字支架与竖直方向的夹角;
在从站,通过机械臂控制器接收所述十字支架的位姿增量及一字支架与竖直方向的夹角,并根据所述十字支架的位姿增量控制所述机械臂的目标位姿,根据所述夹角控制所述机械抓手的开闭。
可选的,所述十字支架上的三个端部分别设置有一个球体,且所述十字支架的连接处设置有一个球体;所述一字支架的两端分别设置有一个球体,且六个球体的颜色均不相同。
可选的,所述控制方法还包括:
通过六个分类器根据所述彩色图像中六个球体的颜色进行分类识别;通过所述主站控制器采用重心法确定六个球体的球心位置,并根据各所述球心位置及所述深度图像确定六个球体在当前帧中摄像机坐标系下的三维空间位置。
可选的,所述控制方法还包括:
通过Kalman滤波器根据各球体在当前帧中摄像机坐标系下的三维空间位置,预测各球体在下一帧中的位置;通过所述主站控制器根据预测的各球体在下一帧中的位置及所述深度相机采集的彩色图像进行局部检测确定球体的三维空间位置。
根据本发明的实施例,本发明公开了以下技术效果:
本发明基于视觉的遥操作机器人控制方法通过深度相机采集在操作者手部运动时带动十字支架和一字支架运动的彩色图像及对应的深度图像,通过主站控制器确定十字支架的位姿增量及一字支架与竖直方向的夹角;进而使得机械臂控制器可根据十字支架的位姿增量控制机械臂的目标位姿,根据夹角控制机械抓手的开闭,从而使得操作者能够自然的执行操作任务,同时简化设备结构,提高对操作者复杂动作的识别度,以及提高控制精度。
附图说明
图1是本发明基于视觉的遥操作机器人控制系统的结构示意图;
图2是本发明实施例计算位姿的方法;
图3为本发明实施例的立体视觉软件流程图;
图4为本发明实施例的颜色表的第一张颜色子表图;
图5为本发明实施例的颜色表的第二张颜色子表图;
图6为本发明实施例的颜色表的第三张颜色子表图。
符号说明:
操作者—1,一字支架—2,十字支架—3,深度相机—4,控制计算机—5,网络—6,机械臂控制器—7,机械抓手—8,机械臂—9,网络相机—10。
具体实施方式
下面参照附图来描述本发明的优选实施方式。本领域技术人员应当理解的是,这些实施方式仅仅用于解释本发明的技术原理,并非旨在限制本发明的保护范围。
本发明提供一种基于视觉的遥操作机器人控制系统及方法,通过设置深度相机采集在操作者手部运动时带动十字支架和一字支架运动的彩色图像及对应的深度图像,通过主站控制器确定十字支架的位姿增量及一字支架与竖直方向的夹角;使得机械臂控制器可根据十字支架的位姿增量控制机械臂的目标位姿,根据夹角控制机械抓手的开闭,从而使得操作者能够自然的执行操作任务,同时简化设备结构,提高对操作者复杂动作的识别度,以及提高控制精度。
如图1所示,本发明基于视觉的遥操作机器人控制系统包括主站和从站,所述主站通过网路6与所述从站连接。
其中,所述主站包括一字支架2、十字支架3、深度相机4及主站控制器,所述一字支架2和十字支架3为手持设备,通过操作者1的手部运动分别带动所述十字支架3和一字支架2运动;所述深度相机4用于采集所述十字支架3和一字支架2运动时的彩色图像及对应的深度图像;所述主站控制器与所述深度相机4连接,用于根据所述彩色图像及对应的深度图像确定所述十字支架3的位姿增量及一字支架2与竖直方向的夹角。
所述从站包括机械臂9、与所述机械臂9的末端连接的机械抓手8以及机械臂控制器7;其中,所述机械臂控制器7通过网路6与所述主站控制器连接,用于接收所述十字支架3的位姿增量及一字支架2与竖直方向的夹角;所述机械臂控制器7分别所述机械臂9和机械抓手8连接,根据所述十字支架3的位姿增量控制所述机械臂9的目标位姿,根据所述夹角控制所述机械抓手8的开闭。其中,所述机械臂9的目标位姿为所述机械臂9的初始位姿加滤波后的位姿增量。具体地,当一字支架2与竖直方向的夹角为0(即所述一字支架2处于竖直姿态)时,机械抓手8闭合;当一字支架2与竖直方向的夹角为90°(即所述一字支架2处于水平状态)时,机械抓手8张开。
优选地,所述十字支架3上的三个端部分别设置有一个球体,且所述十字支架3的连接处设置有一个球体;所述一字支架2的两端分别设置有一个球体,且六个球体的颜色均不相同。例如,所述十字支架3上的四个球体的颜色分别为:连接处的球体颜色为红色,三个端部的球体颜色为蓝色、绿色和黄色;所述一字支架2的两端上的球体颜色可为紫色和黑色;但并不以此为限。
进一步地,所述主站还包括六个分类器,分别与所述深度相机4和主站控制器连接,用于根据所述彩色图像中六个球体的颜色进行分类识别;
所述主站控制器还用于采用重心法确定六个球体的球心位置,并根据各所述球心位置及所述深度图像确定六个球体在当前帧中摄像机坐标系下的三维空间位置。
如图2所示,红色球体的坐标为(xr,yr,zr)、蓝色球体的坐标为(xb,yb,zb)、绿色球体的坐标为(xg,yg,zg)、黄色球体的坐标为(xy,yy,zy),其中,x、y、z分别表示摄像机坐标系下三维方向。
红球到绿球的向量:
(x1,y1,z1)=(xg-xr,yg-yr,zg-zr)-------公式(1);
红球到黄球的向量:
(x2,y2,z3)=(xy-xr,yy-yr,zy-zr)-------公式(2);
红球到绿球的向量为上面两个向量的叉乘:
(x3,y3,z3)=(y1z2-y2z1,x2z1-x1z2,x1y2-x2y1)--公式(3);
将上面三个向量归一化得到单位向量i、j、k,通过i、j、k可以得到十字支架3在摄像机坐标系下相对于摄像机坐标系的翻滚角R、倾斜角P、和偏航角Y。结合十字支架3上红球的位置和翻滚角R、倾斜角P、和偏航角Y就得到十字支架的位姿=(xr,yr,zr,R,P,Y)-----公式(4)。
进一步地,所述主站还包括存储器,存储有颜色表,各所述分类器与存储器连接,调取所述颜色表,通过查表法确定颜色球的位置。其中,所述颜色表表征6个分类器对256×256×256种颜色的分类结果。具体的,所述颜色表包括3张颜色子表,每张颜色子表的大小为256×256。
如图4至图6所示,本发明实施例使用YCbCr颜色空间,且对各球体的颜色进行编号,编号为非零整数,比如1代表蓝色,2代表绿色,3代表黄色,4代表红色;三张颜色子表的大小为256×256;当需要对一个颜色(Y,Cb,Cr)进行分类时,首先根据颜色的Cb和Cr值查第一张表(如图4所示),如果对应值为0,则表示该颜色是背景;如果非零则继续查看第二张表(如图5所示)和第三张表(如图6所示),如果该颜色的Y分量的值在第二张表和第三张表的对应值之间,则表示它是球体的颜色,否则是背景;例如,对于颜色对(x2,y2,z),在第一张表中(x2,y2)位置的值为3,表示它可能是黄色,继续查看第二张表和第三张表,得到对应位置的值为84和229,如果84≤z≤229,则表示该颜色是黄色,否则该颜色是背景。
此外,所述主站还包括Kalman滤波器(图中未示出),与所述主站控制器连接,用于根据各球体在当前帧中摄像机坐标系下的三维空间位置,预测各球体在下一帧中的位置;所述主站控制器还用于根据预测的各球体在下一帧中的位置及所述深度相机采集的彩色图像进行局部检测确定球体的三维空间位置。
以对十字支架上球体的检测为例:如图3所示,第一步:所述主站控制器接收深度相机获得的彩色图像,并针对十字支架上的4个球体对所述彩色图像进行全局检测,直至确定各球体在当前帧中摄像机坐标系下的三维空间位置,并将检测成功后用4个球在当前帧中的位置发送至所述Kalman滤波器;所述Kalman滤波器预测各球体在下一帧中的位置并发送至所述主站控制器,从而使得所述主站控制器可在预测位置附近的小范围内进行局部检测;若检测成功则更新Kalman滤波器的状态,否则检测失败转入全局检测。同理,一字支架上的2个球的检测采用同样的流程,在此不再赘述。
具体地,所述Kalman滤波器的状态方程为:
其中,X(k)是k时刻系统的状态,A是系统参数,Z(k)是系统k时刻的测量值,H为系统的观测矩阵,W(k)表示调整控制过程的噪声,V(k)表示测量过程的噪声。在本实施例中,所述调整控制过程的噪声和测量过程的噪声均为高斯白噪声。
假设状态X(k)只包含k时刻x方向的位置和速度,要包含y方向和z方向只需将它们扩充进X(k)即可,则X(k)、A和H的设置方式为:
X(k)=[x(k)v(k)]T----------公式(6);
Z(k)=[z(k)]T----------------公式(8);
H=[1 0]----------------------公式(9);
将十字支架上的6个颜色球的空间位置x,y、z作为观测值,从而确定观测矩阵,6个球的空间位置x、y、z和对应方向的速度vx、vy、vz作为状态变量,从而确定Kalman滤波器的状态方程。
进一步地,所述主站还包括均值滤波器,与所述控制器连接,用于对所述十字支架的位姿增量进行滤波,并将滤波后的位姿增量通过网络发送至所述机械臂控制器7,以控制所述机械臂9的目标位姿。
此外,为使得操作者准确控制所述机械臂9及机械抓手8的动作,以完成操作任务,所述从站还包括网络相机10,用于采集机械臂9与机械抓手8的运动及工作场景的图像;所述主站还包括显示器,与所述主站控制器连接;所述主站控制器还用于接收所述网络相机采集的机械臂与机械抓手的运动及工作场景的图像,并发送至所述显示器进行显示。在本实施例中,所述主站控制器与显示器集成在一台控制计算机5中。
本发明基于视觉的遥操作机器人控制系统的工作过程(如图1所示):在主站,操作者1左右手分别手持一字支架2和十字支架3并运动,十字支架3控制机械臂9的末端位姿,一字支架2控制机械抓手8的开闭;深度相机4同时获得一字支架2和十字支架3运动时的彩色图像和对应的深度图像,因此可以确定场景中的一个点在摄像机坐标系下的三维位置,通过立体视觉的方法就可以得到操作者1手持的一字支架2和十字支架3上的6个球体的空间位置;主站的控制计算机5根据这6个球体的空间位置解算出十字支架的位姿和一字支架与竖直方向的夹角;当一字支架处于竖直姿态时,机械抓手8闭合,处于水平状态时,机械抓手8张开;十字支架的位姿用来表示操作者手部的位姿;系统启动时,控制计算机通过这种方式首先得到操作者1手部的初始位姿,然后不断将后续得到的位姿与初始位姿作差,得到主站操作者1手部的位姿增量(即十字支架的位姿增量);所述位姿增量经过一个均值滤波器后得到滤波后的位姿增量;通过网络6将一字支架与竖直方向的夹角和位姿增量传递给所述从站的机械臂控制器7,机械臂控制器7把控制信号传递给机械臂和机械抓手,控制机械臂9的运动和机械抓手8的张开和闭合;同时所述从站的网络相机10对机械臂的运动和机械臂所在场景进行图像采集,并将所采集得到的图像传回主站并在主站显示器上显示。
本发明基于视觉的遥操作机器人控制系统通过一个深度相机、一个一字支架和一个十字支架提取操作者手部位姿和状态,从而实现遥操作具有操作自然、成本低廉等特点;采用Kalman滤波器和颜色表可以减小颜色检测时的计算量,能够满足系统的实时性要求;使用网络相机将操作现场的图像传回主站能够直观地显示机械臂在操作场景中的状态,有利于增强临场感和完成相对复杂的工作。
此外,本发明还提供了一种基于视觉的遥操作机器人控制方法。具体的,本发明基于视觉的遥操作机器人控制方法包括:
在主站,通过深度相机采集操作者手部运动时带动所述十字支架和一字支架运动的彩色图像及对应的深度图像;
通过主站控制器根据所述彩色图像及对应的深度图像确定所述十字支架的位姿增量及一字支架与竖直方向的夹角;
在从站,通过机械臂控制器接收所述十字支架的位姿增量及一字支架与竖直方向的夹角,并根据所述十字支架的位姿增量控制所述机械臂的目标位姿,根据所述夹角控制所述机械抓手的开闭。
其中,所述通过主站控制器根据所述彩色图像及对应的深度图像确定所述十字支架的位姿增量及一字支架与竖直方向的夹角,具体包括:
步骤101:所述操作者在主站手持十字支架和一字支架进行运动,主站控制器通过视觉测量的方法解算十字支架的初始位姿和一字支架与竖直方向的夹角;
步骤102:操作者在主站手持十字支架和一字支架继续运动,主站控制器不断将后续得到的操作者手部位姿与初始位姿作差,得到十字支架的位姿增量,再用一个均值滤波器对该位姿增量进行滤波处理。
在从站,机械臂控制器根据所述十字支架的位姿增量控制所述机械臂的目标位姿,根据所述夹角控制所述机械抓手的开闭。其中,所述机械臂的目标位姿为机械臂的初始位姿加滤波后的位姿增量。具体地,当一字支架与竖直方向的夹角为0(即所述一字支架处于竖直姿态)时,机械抓手闭合;当一字支架与竖直方向的夹角为90°(即所述一字支架处于水平状态)时,机械抓手张开。
可选的,所述十字支架上的三个端部分别设置有一个球体,且所述十字支架的连接处设置有一个球体;所述一字支架的两端分别设置有一个球体,且六个球体的颜色均不相同。例如,所述十字支架3上的四个球体的颜色分别为:连接处的球体颜色为红色,三个端部的球体颜色为蓝色、绿色和黄色;所述一字支架2的两端上的球体颜色可为紫色和黑色;但并不以此为限。
本发明基于视觉的遥操作机器人控制方法还包括:通过六个分类器根据所述彩色图像中六个球体的颜色进行分类识别;通过所述主站控制器采用重心法确定六个球体的球心位置,并根据各所述球心位置及所述深度图像确定六个球体在摄像机坐标系下的三维空间位置。
如图2所示,红色球体的坐标为(xr,yr,zr)、蓝色球体的坐标为(xb,yb,zb)、绿色球体的坐标为(xg,yg,zg)、黄色球体的坐标为(xy,yy,zy)。
红球到绿球的向量:
(x1,y1,z1)=(xg-xr,yg-yr,zg-zr)-------公式(1);
红球到黄球的向量:
(x2,y2,z3)=(xy-xr,yy-yr,zy-zr)-------公式(2);
红球到绿球的向量为上面两个向量的叉乘:
(x3,y3,z3)=(y1z2-y2z1,x2z1-x1z2,x1y2-x2y1)------公式(3);
将上面三个向量归一化得到单位向量i、j、k,通过i、j、k可以得到十字支架3在摄像机坐标系下相对于摄像机坐标系的翻滚角R、倾斜角P、和偏航角Y。结合十字支架3上红球的位置和翻滚角R、倾斜角P、和偏航角Y就得到十字支架的位姿=(xr,yr,zr,R,P,Y)----公式(4)。
进一步地,本发明基于视觉的遥操作机器人控制方法还包括调取存储的颜色表,各分类器通过查表法确定颜色球的位置。所述颜色表表征6个分类器对256×256×256种颜色的分类结果。具体的,所述颜色表包括3张颜色子表,每张颜色子表的大小为256×256。
如图4至图6所示,本发明实施例使用YCbCr颜色空间,且对各球体的颜色进行编号,编号为非零整数,比如1代表蓝色,2代表绿色,3代表黄色,4代表红色;三张颜色子表的大小为256×256;当需要对一个颜色(Y,Cb,Cr)进行分类时,首先根据颜色的Cb和Cr值查第一张表(如图4所示),如果对应值为0,则表示该颜色是背景;如果非零则继续查看第二张表(如图5所示)和第三张表(如图6所示),如果该颜色的Y分量的值在第二张表和第三张表的对应值之间,则表示它是球体的颜色,否则是背景;例如,对于颜色对(x2,y2,z),在第一张表中(x2,y2)位置的值为3,表示它可能是黄色,继续查看第二张表和第三张表,得到对应位置的值为84和229,如果84≤z≤229,则表示该颜色是黄色,否则该颜色是背景。
进一步地,本发明基于视觉的遥操作机器人控制方法还包括:通过Kalman滤波器根据各球体在当前帧中摄像机坐标系下的三维空间位置,预测各球体在下一帧中的位置;通过所述主站控制器根据预测的各球体在下一帧中的位置及所述深度相机采集的彩色图像进行局部检测确定球体的三维空间位置。
以对十字支架上球体的检测为例:如图3所示,第一步:通过深度相机获得的彩色图像,对所述彩色图像进行全局检测十字支架上的4个球体,直至确定球体在当前帧中的位置,并将检测成功后用4个球在当前帧中的位置发送至所述Kalman滤波器;所述Kalman滤波器预测各球体在下一帧中的位置,从而使得所述主站控制器可在预测位置附近的小范围内进行局部检测;若检测成功则更新Kalman滤波器的状态,否则检测失败转入全局检测,从而实现对球体的快速定位,提高检测速度。同理,一字支架上的2个球的检测采用同样的流程。
其中,所述Kalman滤波器的状态方程为:
其中,X(k)是k时刻系统的状态,A是系统参数,Z(k)是系统k时刻的测量值,H为系统的观测矩阵,W(k)表示调整控制过程的噪声,V(k)表示测量过程的噪声。在本实施例中,所述调整控制过程的噪声和测量过程的噪声均为高斯白噪声。
假设状态X(k)只包含k时刻x方向的位置和速度,要包含y方向和z方向只需将它们扩充进X(k)即可,则X(k)、A和H的设置方式为:
X(k)=[x(k)v(k)]T----------公式(6);
Z(k)=[z(k)]T----------------公式(8);
H=[1 0]----------------------公式(9);
将十字支架上的6个颜色球的空间坐标x,y、z作为观测值,从而确定观测矩阵,6个球的空间位置x、y、z和对应方向的速度vx、vy、vz作为状态变量,从而确定Kalman滤波器的状态方程。
此外,为使得操作者准确控制所述机械臂9及机械抓手8的动作,以完成操作任务,本发明基于视觉的遥操作机器人控制方法通过在从站的网络相机采集机械臂与机械抓手的运动及工作场景的图像,并通过网络回传至主站的主站控制器,通过主站控制器发送至显示器进行显示,便于操作者的观察。优选的,所述主站控制器与显示器集成在一台控制计算机上。
相对于现有技术,本发明基于视觉的遥操作机器人控制方法与上述基于视觉的遥操作机器人控制系统的有益效果相同,在此不再赘述。
至此,已经结合附图所示的优选实施方式描述了本发明的技术方案,但是,本领域技术人员容易理解的是,本发明的保护范围显然不局限于这些具体实施方式。在不偏离本发明的原理的前提下,本领域技术人员可以对相关技术特征作出等同的更改或替换,这些更改或替换之后的技术方案都将落入本发明的保护范围之内。
机译: 基于视觉的自适应巡航控制系统和方法
机译: 基于视觉的自适应巡航控制系统及方法
机译: 基于机器视觉和传感器相互作用的切割机自动控制系统及控制方法