一种人机协作场景下的机器人智能躲避人类方法技术

技术编号:12475023 阅读:109 留言:0更新日期:2015-12-10 10:41
本发明专利技术公开了一种人机协作场景下的机器人智能躲避人类方法,包括以下步骤:1)通过机器人D-H参数构建虚拟场景的机器人圆柱模型;2)通过Kinect实时获取真实场景的RGB图像和操作员的骨骼数据,并构建虚拟场景的操作员圆柱模型;3)真实场景和虚拟场景中机器人和操作员的标定对应;4)机器人模型和操作员模型的实时碰撞检测。采用本发明专利技术方法,操作员可以在机器人作业空间中自由运动,而机器人则可以根据Kinect获取的操作员的信息进行主动的避障。

【技术实现步骤摘要】

本专利技术涉及机器人运动的
,尤其是指一种人机协作场景下的机器人智能 躲避人类方法。
技术介绍
智能机器人与其他领域的交叉与融合,产生了许多需要人与机器人协作的场景。 智能机器人参与到人的作业环境中,在保证工作效率的前提下还可以有效的解放人的劳动 力,特殊情况下还可以代替人完成高风险的任务。在人与机器人近距离协作的背景下,如何 保证人的安全是至关重要的问题。这篇专利技术提出了一种人机协作场景下机器人的建模和避 障的方法,该方法根据机器人D-H参数构建机器人圆柱模型,借用Kinect传感器采集操作 员骨骼位置,以此来构建操作员的圆柱模型,并根据机器人和操作员的碰撞检测结果使机 器人智能地识别并躲避人体。 在构建机器人虚拟场景时,通常的做法是利用3ds Max等建模工具构建与真实场 景的机器人完全对应的虚拟机器人模型,然而这种方法不具通用性,且建模成本相对较高, 因此通过机器人固有的D-H参数来构建机器人模型是有必要的。 在人机协作场景中,机器人根据人体的位置和动作信息,做出避让,避免发生碰 撞。然而传统的机器人避碰研究主要是对物体的避碰,与环境物体不同,人具备自身的结构 特征,人体状态和运动也具有不可预知性,因此机器人需要对人体进行实时地识别。 在Kinect出现之前,基于多视觉相机的人体信息采集技术相对比较热门,但是该 方法需要透视图像,相对成本也较高。在基于标记的多视觉相机人体识别技术中,人体要穿 着特定的服装或设备,在活动过程中处于受限的状态,限制着该技术的应用。基于无标记的 人体信息提取采集技术则需要将人体图像、三维信息与目标函数等先验知识进行匹配,匹 配过程需要足够的样本数量,否则会导致识别准确性较低,也较难保证实时性。
技术实现思路
本专利技术的目的在于克服现有技术的不足,提供一种人机协作场景下的机器人智能 躲避人类方法,操作员可以在机器人作业空间中自由运动,机器人根据Kinect获取的操作 员的信息进行主动的避障。 为实现上述目的,本专利技术所提供的技术方案为:一种人机协作场景下的机器人智 能躲避人类方法,包括以下步骤: 1)通过机器人D-H参数构建虚拟场景的机器人圆柱模型,如下: 假设机器人是由一系列连杆和关节以任意形式构成的,D-H参数表示的是机器人 关节和连杆之间的关系;为了对机器人进行建模,采用点对关节进行建模,圆柱体对连杆进 行建模;涉及到机器人的正运动学,通过机器人各个关节的初始角度,来求解各个关节的坐 标系相对基坐标系的变换关系;给每个关节定义一个右手坐标系,把一个关节的坐标系和 下一个关节的坐标系之间的齐次变换叫做A矩阵,&表示第一个关节相对于在基坐标系的 位置和姿态,那么A2则表示为第二个关节相对于第一个关节的位置和姿态,而第二个关节 相对于在基坐标系的位置和姿态可由如下矩阵乘积组成: T2=A1A2 (1) 以此类推,第η个关节相对于在基坐标系的位置和姿态的公式为: (2) 式中,《f3表示第η个关节的姿态,表示第η个关节相对于基坐标系的位置;其 中A i可根据D-H参数表示: (3): Θ 山,&1,a i为机器人关节i的D-H参数; 构建虚拟场景的机器人圆柱模型时以机器人基坐标系为模型的坐标系,求解各个 关节相对于基坐标系的位置(<4'Zf) f相邻关节间的连杆采用圆柱体进行建模,圆柱体 的上下底面圆心为两关节点的位置,圆柱体半径根据实际情况进行调整,构建6自由度的 机器人圆柱模型; 2)通过Kinect实时获取真实场景的RGB图像和操作员的骨骼数据,并构建虚拟场 景的操作员圆柱模型,如下: 操作员在进入到机器人的工作区间时,由固定在操作员前面的Kinect实时获取 真实场景的RGB图像和操作员的骨骼数据,实现对操作员的跟踪和定位;Kinect有三种摄 像头:一种用于采集彩色图像的RGB彩色摄像头和两种用于采集深度图像的红外摄像头; 对于真实场景RGB图像的获取,将Kinect放在环境中的某个位置,打开彩色图 像NUI_INITIALIZE_FLAG_USES_COLOR来初始化Kinect,通过获取的彩色图像帧数据,用 OpenCV绘制出来; 对于骨骼数据的获取,打开骨骼数据NUI_INITIALIZE_FLAG_USES_SKELETON来初 始化Kinect,当人处于站立状态时,Kinect能够获取到人的20个关节点的位置来表示人的 骨架;提取15个关节点来构建虚拟场景中操作员的圆柱模型,这15个关节点从上到下和从 左到右排序为:①头;②肩中心;③右肩;④右手肘;⑤右手;⑥左肩;⑦左手肘;⑧左手;⑨ 髓关节中心;⑩右髓;:右膝;右脚;左髓;左膝;左脚;这些关节点的位 置都是相对于Kinect坐标系的位置; 在构建操作员圆柱模型时以Kinect坐标系为模型的坐标系,通过Kinect对深度 图像的处理,获取操作员的15个关节点的位置对人体骨架中相邻的关节点采 用圆柱体进行建模,圆柱体的上下底面圆心为两关节点的位置,圆柱体半径根据实际情况 进行调整; 3)真实场景和虚拟场景中机器人和操作员的标定对应,如下: 在上述两个步骤中,对虚拟场景中机器人的建模是以机器人基坐标系为模型的坐 标系,对虚拟场景中操作员的建模是以Kinect坐标系为模型的坐标系,为了将虚拟场景和 真实场景进行对应,选取真实场景中的一个坐标系,称为世界坐标系El,机器人基坐标系称 为坐标系E2, Kinect坐标系称为坐标系E3 ; 机器人基坐标系E2与世界坐标系El之间的关系用旋转矩阵R和平移矩阵T来表 示,设机器人某个关节点p在机器人基坐标系下的坐标为,在世界坐标系下 的坐标为(iff/If,%1),于是它们之间的关系为: ⑷ 式中,e2Rei为3X3矩阵,表示机器人基坐标系相对于世界坐标系的姿态变化矩阵; e2Tei为3X1矩阵,表示机器人基坐标系相对于世界坐标系的位置变化矩阵;M2S 4X4矩阵, 表示机器人基坐标系相对于世界坐标系的位姿变化矩阵; 同理,Kinect坐标系E3与世界坐标系El之间的关系也用旋转矩阵R和平移矩阵 T来表示,设操作员某个关节点P'在Kinect坐标系下的坐标为,在世界坐标 系下的坐标为(I? AtC),则它们之间的关系为: 顏 将机器人基坐标系和Kinect坐标系均转换到世界坐标系之后,接下来就是确定 真实场景和虚拟场景的映射关系以及衡量他们之间的误差;若虚拟场景中的某一AP v的坐 标为,&,Z〃),则该点匕在真实场景RGB图像中的坐标为,& ),则存在一个映射f, 使得虚拟场景中任意的点Pv及其对应真实场景中的点P P存在如下关系: Pr= f(Pv)+ ε (6) 式中,ε为虚拟场景和真实场景对应的误差; 对于Kinect获取操作员的骨骼三维数据和彩色图像二维数据,Kinect SDK提 供了两者之间的相互转化,即提供了虚拟场景操作员和真实场景操作员的映射fpCT_; NuiTransformSkeletonToDepthImage提供了三维骨豁数据到二维深度图像的映射关系A, NuiImageGetCoIorPixeICoordinatesFromDepthPixel 提供了 二维深度图像到二维彩色本文档来自技高网
...
一种<a href="http://www.xjishu.com/zhuanli/54/CN105137973.html" title="一种人机协作场景下的机器人智能躲避人类方法原文来自X技术">人机协作场景下的机器人智能躲避人类方法</a>

【技术保护点】
一种人机协作场景下的机器人智能躲避人类方法,其特征在于,包括以下步骤:1)通过机器人D‑H参数构建虚拟场景的机器人圆柱模型,如下:假设机器人是由一系列连杆和关节以任意形式构成的,D‑H参数表示的是机器人关节和连杆之间的关系;为了对机器人进行建模,采用点对关节进行建模,圆柱体对连杆进行建模;涉及到机器人的正运动学,通过机器人各个关节的初始角度,来求解各个关节的坐标系相对基坐标系的变换关系;给每个关节定义一个右手坐标系,把一个关节的坐标系和下一个关节的坐标系之间的齐次变换叫做A矩阵,A1表示第一个关节相对于在基坐标系的位置和姿态,那么A2则表示为第二个关节相对于第一个关节的位置和姿态,而第二个关节相对于在基坐标系的位置和姿态可由如下矩阵乘积组成:T2=A1A2  (1)以此类推,第n个关节相对于在基坐标系的位置和姿态的公式为:Tn=A1A2...An=qn3×3pn3×101---(2)]]>式中,表示第n个关节的姿态,表示第n个关节相对于基坐标系的位置;其中Ai可根据D‑H参数表示:Ai=cos(θi)-sin(θi)cos(αi)sin(θi)sin(αi)aicos(θi)sin(θi)cos(θi)cos(αi)-cos(θi)sin(αi)aisin(θi)0sin(αi)cos(αi)di0001---(3)]]>θi,di,ai,αi为机器人关节i的D‑H参数;构建虚拟场景的机器人圆柱模型时以机器人基坐标系为模型的坐标系,求解各个关节相对于基坐标系的位置相邻关节间的连杆采用圆柱体进行建模,圆柱体的上下底面圆心为两关节点的位置,圆柱体半径根据实际情况进行调整,构建6自由度的机器人圆柱模型;2)通过Kinect实时获取真实场景的RGB图像和操作员的骨骼数据,并构建虚拟场景的操作员圆柱模型,如下:操作员在进入到机器人的工作区间时,由固定在操作员前面的Kinect实时获取真实场景的RGB图像和操作员的骨骼数据,实现对操作员的跟踪和定位;Kinect有三种摄像头:一种用于采集彩色图像的RGB彩色摄像头和两种用于采集深度图像的红外摄像头;对于真实场景RGB图像的获取,将Kinect放在环境中的某个位置,打开彩色图像NUI_INITIALIZE_FLAG_USES_COLOR来初始化Kinect,通过获取的彩色图像帧数据,用OpenCV绘制出来;对于骨骼数据的获取,打开骨骼数据NUI_INITIALIZE_FLAG_USES_SKELETON来初始化Kinect,当人处于站立状态时,Kinect能够获取到人的20个关节点的位置来表示人的骨架;提取15个关节点来构建虚拟场景中操作员的圆柱模型,这15个关节点从上到下和从左到右排序为:①头;②肩中心;③右肩;④右手肘;⑤右手;⑥左肩;⑦左手肘;⑧左手;⑨髋关节中心;⑩右髋;右膝;右脚;左髋;左膝;左脚;这些关节点的位置都是相对于Kinect坐标系的位置;在构建操作员圆柱模型时以Kinect坐标系为模型的坐标系,通过Kinect对深度图像的处理,获取操作员的15个关节点的位置对人体骨架中相邻的关节点采用圆柱体进行建模,圆柱体的上下底面圆心为两关节点的位置,圆柱体半径根据实际情况进行调整;3)真实场景和虚拟场景中机器人和操作员的标定对应,如下:在上述两个步骤中,对虚拟场景中机器人的建模是以机器人基坐标系为模型的坐标系,对虚拟场景中操作员的建模是以Kinect坐标系为模型的坐标系,为了将虚拟场景和真实场景进行对应,选取真实场景中的一个坐标系,称为世界坐标系E1,机器人基坐标系称为坐标系E2,Kinect坐标系称为坐标系E3;机器人基坐标系E2与世界坐标系E1之间的关系用旋转矩阵R和平移矩阵T来表示,设机器人某个关节点P在机器人基坐标系下的坐标为在世界坐标系下的坐标为于是它们之间的关系为:E2E1TE2E101·XpE2YpE2ZpE21=M2·XpE2YpE2ZpE21---(4)]]>式中,E2RE1为3X3矩阵,表示机器人基坐标系相对于世界坐标系的姿态变化矩阵;E2TE1为3X1矩阵,表示机器人基坐标系相对于世界坐标系的位置变化矩阵;M2为4X4矩阵,表示机器人基坐标系相对于世界坐标系的位姿变化矩阵;同理,Kinect坐标系E3与世界坐标系E1之间的关系也用旋转矩阵R和平移矩阵T来表示,设操作员某个关节点P’在Kinect坐标系下的坐标为在世界坐标系下的坐标为则它们之间的关系为:E3E1TE3E101·Xp′E3Yp&prime...

【技术特征摘要】

【专利技术属性】
技术研发人员:张平杜广龙金培根高鹏刘欣李备
申请(专利权)人:华南理工大学
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1