欢迎来到工作报告网!

基于Kinect的机械臂增强现实示教研究

学校工作报告 时间:2021-08-11 10:15:30


打开文本图片集

摘要:机械臂广泛地应用在工业自动化生产以及人们日常生活中,机械臂而示教学习作为一种重要的运动规划方式,是机械臂研究领域的一项重要研究内容。鉴于此,设计了一种基于Kinect的虚拟机械臂增强现实示教系统,通过Kinect传感器采集人手位置数据,利用机械臂逆运动学模型驱动虚拟机械臂跟踪人手运动,实现对机械臂的虚拟示教;利用增强现实技术,将虚拟机械臂叠加到真实环境中,实现对机械臂的增强现实示教。实验结果表明该系统能够将虚拟机械臂准确地叠加到真实环境中,并实时跟踪人手运动,系统具有良好的交互性。

关键词:机械臂示教;Kinect传感器;骨骼跟踪;逆运动学;增强现实

中图分类号:TP391 文献标志码:A

Abstract:Manipulators are widely used in industrial production and people"s daily life, while, manipulator teaching, as an important method for manipulator motion planning, is one of the key issues for the research area of Manipulators. This paper presents a virtual manipulator teaching system using augmented reality based on a Kinect sensor, where, the end-effector of the virtual manipulator follows the movement of the human hand based on a Kinect sensor through an inverse kinematics model, and then the resulting virtual manipulator is added into the real working environment by using augmented reality. The experimental results show that, in our system, the virtual manipulator can be accurately registered into the real working environment and follow the movement of the human hand in real-time.

Key words:manipulator teaching; Kinect sensor; skeleton tracking; inverse kinematics; augmented reality

1 引 言

機械臂在工业制造、军事、娱乐、医疗等领域都具有广泛的应用。早期的机械臂只从事一些简单的自动化生产任务,在线示教编程就可以满足生产需要。随着社会发展,机械臂的工作任务日趋复杂,而且在线示教编程过程必须依赖实体机械臂,示教过程变得烦琐。随着计算机仿真技术的出现,机械臂虚拟示教方式也得到了发展。机械臂虚拟示教是利用计算机仿真技术进行机械臂模型以及工作环境的模拟,基于机器人运动学算法,对机械臂模型进行相应的控制和操作,完成机械臂模型示教的过程[1]。机械臂虚拟示教过程不需要机械臂实体,从而把机械臂从在线编程中解放出来,提高了机械臂示教过程的直观性和安全性[2]。

机械臂虚拟示教方式,虽然具有很多优势,但是与实际工作场景脱离,缺乏真实性。一些研究者将增强现实技术引入机械臂示教学习过程,将虚拟机械臂与真实场景融合。Fang等[3.4]采用增强现实技术对机械臂进行运动路径规划及末端执行器方向规划。Chong等[5]基于增强现实技术为机械臂规划与物理实体无碰撞的运动路径。而Kinect传感器的出现为机械臂示教学习和增强现实应用提供了新的交互方式。林海波等[6]设计了基于Kinect的无标定人机交互控制系统,该系统利用Kinect获取的人手骨骼数据控制机械臂运动。王祎等[7]利用Kinect深度图像,基于增强现实技术,进行了虚拟物体与真实场景的碰撞交互实验。

鉴于此,提出了一种应用Kinect进行虚拟机械臂增强现实示教的方法。系统通过Kinect实时地获取人手的运动轨迹,将运动轨迹传递给计算机中的机械臂模型,基于机械臂逆运动学算法,实现机械臂末端执行器对人手运动的实时跟踪,同时采用增强现实技术,实现机械臂模型在真实环境的示教运动。该系统不仅具有虚拟示教的优势,又能实现虚拟机械臂与真实场景的融合,使示教过程显得更自然、更真实。

2 系统框架

构建的虚拟机械臂增强现实示教系统可分为三个部分:人手部位置数据提取、机械臂逆运动学求解、增强现实注册。系统整体框架如图1所示。

系统硬件部分主要由Kinect传感器和计算机组成。Kinect传感器能提供深度数据流、彩色视频流、骨骼数据流等数据信息[8]。系统利用Kinect传感器进行彩色工作场景的采集和人右手骨骼位置数据的提取,利用计算机进行机械臂三维模型的构建、机械臂逆运动学方程的计算和增强现实注册。本系统的具体工作流程如下:首先,利用Kinect获得人右手骨骼数据和彩色场景数据;然后,将获取的人手骨骼数据传递给计算机中已构建的虚拟机械臂系统,基于逆运动学算法,实现机械臂末端执行器对人手运动的跟踪;最后,进行增强现实注册,将Kinect获取的真实工作场景数据与计算机中构建的虚拟机械臂融合,令机械臂直观地显示在工作场景中,实现虚拟机械臂的增强现实示教过程。

3 手部位置信息获取

3.1 Kinect骨骼数据提取

Kinect传感器设备由一个红外光源、一个深度摄像头和一个RGB彩色摄像头构成,如图2所示。Kinect通过红外线光源和深度摄像头可以获取场景的深度信息,通过Kinect的内置人体运动姿态识别程序又可以从获取的深度信息识别出场景中人体的骨骼数据。骨骼点位置数据用三维坐标(单位为m)进行表示,其坐标系以Kinect的深度摄像头为原点,其Z轴垂直于相机平面,X轴沿水平方向,Y轴沿竖直方向,如图3所示。

Kinect可以实现人体20个骨骼关节点的跟踪,图4所示为这20个骨骼关节点的具体分布,分别为:头部(head)关节、双肩中央(shoulder center)关节、脊柱中段(spine)关节、臀部中央(hip center)关节、左臀部(hip 1eft)关节、右臀部(hip right)关节、左手(hand left)关节、右手(hand right)关节、左腕 (wrist left) 关节、右腕 (wrist right)关节、左肘(elbow left)关节、右肘(elbow right)关节、左肩(shoulder left)关节、右肩(shoulder right)关节、左膝盖(knee left)关节、右膝盖(knee right)关节、左踝(ankle left)关节、右踝(ankle right)关节、左脚(foot left)关节和右脚(foot right)关节。

3.2 Kinect SDK骨骼对象模型

Kinect SDK中定義的人体骨骼对象模型包括Skeleton Stream,SkeletonFrame,Skeleton和

Joint四部分[9]。SkeletonStream为骨骼数据流对象,SkeletonFrame则为骨骼数据帧对象,用于存储一帧的骨骼数据,其数据提取自SkeletonStream对象。Skeleton类定义了一系列字段对骨骼信息进行具体描述,包括骨骼的位置信息以及骨骼中关节的位置信息。Joint类则用于描述骨骼跟踪引擎跟踪和获取的骨骼数据中单个关节点的信息。

4 三自由度机械臂逆运动学求解

4.1 机械臂D-H模型

系统选用的是三自由度串联机械臂,使用Denavit-Hartenberg(D-H)方法来描述相邻两杆的位置关系。用i表示连杆序号,i=1,…,n,则D-H方法涉及四个连杆参数:绕 轴旋转,使 轴转到与 同一平面内的关节角 (两连杆夹角);沿 轴平移,把 移到与 同一直线上的距离 (两连杆距离);沿 轴平移,把 移到与 同一直线上的距离 (连杆长度);绕 轴旋转,使 轴转到与 同一平面内的偏角 (连杆扭角)[10]。本文采用D-H模型建立的机械臂坐标系如图5所示。表1所示为机械臂D-H模型的连杆参数。

4.2 机械臂逆运动学

机械臂的运动学主要包括正运动学和逆运动学,机械臂运动学一直是机械臂设计人员研究的重点,尤其是机械臂逆运动学[11]。机械臂逆运动学是指给定了末端执行器的位置,求解相邻连杆的夹角的过程。在本文中,已知机械臂末端位置即人手位置 ,求解 , , 。

在D-H模型下,连杆i对连杆i-1相对位置关系 可用四个齐次变换矩阵来描述:

5 增强现实注册

增强现实是指在同一环境中实现虚拟物体与真实环境的融合,并实现真实世界与虚拟物体的交互。增强现实的关键技术是三维注册技术[12]。三维注册是指虚拟物体和真实场景在三维空间中位置的一致性,即在空间上的整合。三维跟踪注册方法很多,基于标识物的注册技术无需复杂的硬件设备,标识物的获取较为容易,且此类方法精度较高,所以本文采用基于标识物的注册技术进行跟踪注册。本文系统的注册过程为:首先,Kinect设备采集彩色视频图像,增强现实系统对每帧图像进行检测,识别到标识物后,计算摄像机坐标系相对于标识物坐标系的坐标转换矩阵;然后,根据此转换矩阵,将虚拟机械臂注册到标识物坐标系的原点上;最后,通过摄像机坐标系与屏幕坐标系的坐标转换,将虚拟机械臂渲染到真实场景中,实现虚拟机械臂与真实场景的融合显示[13]。图6显示了基于标识物的三维注册过程,涉及到摄像机坐标系、屏幕坐标系、标识物坐标系这3个坐标系之间的变换。

6 实验结果与分析

系统硬件部分由一台Kinect传感器、一张增强现实标识卡和一台普通计算机组成,如图7所示。以三自由度虚拟机械臂为被控对象,采用Kinect传感器采集彩色场景并获取三维人手骨骼位置数据,利用计算机进行机械臂三维模型的构建、机械臂逆运动学方程的计算和增强现实注册。所采用的软件开发环境为:VS2010 C++,Kinect SDK-v1.8,ARToolKit-2.71.2。系统流程如图8所示。

为了验证本系统的可行性,分别用人手指引虚拟机械臂末端执行器进行上、下、左、右四个方向的运动,观察机械臂的运动情况。

图9和图10分别显示的是虚拟机械臂跟踪人手左右运动和上下运动的实验结果。由图9和图10可以看出虚拟机械臂不仅可以准确地显示在真实场景中,还可以实时准确地跟踪人手运动。实验表明本文所提出的基于kinect的虚拟机械臂增强现实示教系统具有良好的直观性和交互性。

6 结束语

系统以三自由度虚拟机械臂为被控对象,利用Kinect获取彩色场景图和人右手位置数据,将这些数据作为输入传递给计算机,通过对机械臂进行逆运动学求解实现机械臂末端跟踪人手运动,通过采用增强现实注册技术将虚拟机械臂直观地显示在真实工作场景中。实验证明系统具有良好的实时性和交互性。在今后的研究工作中,将进一步针对不同的机械臂应用场合,以Kinect骨骼跟踪技术作为人机交互方式,研究基于增强现实的具体的机械臂无碰撞路径规划方式。

参考文献:

[1]张华文. 六自由度机器人三维可视化虚拟示教系统[D].

四川省绵阳市:西南科技大学,2014.

[2]李想,钱欢,付庄,等. 基于QT和OpenGL的机器人离

线编程和仿真系统设计[J]. 机电一体化,2013,(4):

56-59.

[3]Fang H C, Ong S K, Nee A Y C. Novel AR-based interface

for human-robot interaction and visualization[J].

Advances in Manufacturing, 2014, 2(4): 275-288.

[4]Fang H C, Ong S K, Nee A Y C. Orientation planning

of robot end-effector using augmented reality[J].

International Journal of Advanced Manufacturing

Technology, 2013, 67(9): 2033-2049.

[5]Chong J W S, Ong S K , Nee A Y C, et al. Robot

Programming using augmented reality: An method

for planning collision-free paths[J]. Robotics and

Computer-Integrated Manufacturing, 2009, 25(3):

689-701.

[6]林海波,王浩,张毅. 基于Kinect的无标定人机交互控

制系统设计[J]. 计算机工程与设计,2015,36(2):

551-555.

[7]王祎. 基于深度图像的具有虚实物体碰撞交互功能的增

强现实系统 [D]. 北京:北京林业大学,2015.

[8]吴秦,陈智,周宇旋,等. 基于Kinect骨骼跟踪技术的

人机交互[J].常州大学学报(自然科学版),2014,26(3):

6-12.

[9]李恒. 基于Kinect骨骼跟踪功能的骨骼识别系统研究

[D].西安:西安电子科技大学, 2013.

[10]陈桂,王建红,汤玉东. KUKA机器人运动学仿真与实

验研究[J]. 组合机床与自动化加工技术,2014,(8):

94-97.

[11]陈鲁刚,平雪良,徐稀文. 平面三自由度机械臂的轨迹

规划及仿真[J]. 工具技术,2011,45(9): 26-30.

[12]桂振文. 面向移動增强现实的场景识别与跟踪注册技

术研究[D].北京:北京理工大学, 2014.

[13]高净业. 增强现实人机交互系统的研究[D]. 浙江杭

州:杭州电子科技大学, 2011.

推荐访问:教研 增强 现实 机械 Kinect

热门文章