基于LeapMotion的仿生机械手臂设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

开发研究
基于LeapMotion 的仿生机械手臂设计
张港
(湖北工业大学机械工程学院,湖北武汉430068)
摘要:提出一种基于LeapMotion 的仿生机械手臂设
计方案,通过LeapMotion 传感器同时采集左右手的信 息,将识别到的手势以及手掌的位置信息动态地反映到机
械手臂系统中,控制机械手臂跟随手部的动作实时运动, 实现抓取、旋转以及机器人的前进、后退、转向等一系列动 作,实现了体感技术和机器人控制技术的结合,提供了一
种新的机械手控制方式,增强了用户的沉浸感,操控更加
自由。

实验结果表明机械手臂的跟随效果良好,但是运动
稳定性和定位精度有待提高。

关键词:LeapMotion ;机械手臂;人机交互
随着信息技术的高速发展,人机交互也越发向拟人化、 宜接化的方向发展,目前主要的新型人机交互方式包括:语 音交互、触摸交互、体感如等。

瞎交互是利用人的肢体 动作与设备进行互动,近年来发展尤其迅猛。

体感交互能
够利用人体最自然的肢体动作对系统进行操控,因此具有
宜接、快捷、便利、沉浸感强的特点。

Leap 公司的LeapMotion 传感器是一种高精度体感识
别传感器,通过红外LED 和摄像头以光学感测技术的方式 来完成对手势的追踪和捕获。

目前,LeapMotion 开始应用
于医疗康复训练、教学演示、手势识别等方面。

本文设计了
基于LeapMotion 的仿生机械手臂,由六自由度机械手臂和 全方向移动平台组成,并将体感操控作为机械臂的控制方式,
通过LeapMotion 提取左右手的手势信息和位置信息来操 控机械臂,实现机械臂的抓取和移动。

1 系统方案设计
1.1系统硬件组成
系统选择stm32F427芯片为主控制器丄eapMotion
通过蓝牙与控制器进行通讯,传输命令以及手势信息;六自
由度机械手臂通过6个舵机控制6个自由度的运动,控制 器输出6路pwm 信号分别控制6个舵机的转动;全方位 移动平台由底板和4个Mecanum 轮组成,车轮分别和4 个独立的3510无刷电机相连,分别由820R 电调进行驱
动,控制器通过CAN 总线控制各个车轮的转向和转速係
统框图如图lo
图1系统结构框图
1.1.1 LeapMotion 传感器
LeapMotion 是Leap 公司生产的一种高精度的体感
识别传感器,内部的3颗红夕卜LED 对手部进行照明,2颗
红外摄像头用来获取手部动作信息,如图2所示:
奇帧率红外摄像头
图2 LeapMotion 结构图
LeapMotion 的工作原理是红外立体视觉原理。

红外 LED 通过频闪在滤光片上方区域发出扇形的结构光线,双
红外摄像头对反射回来的红外光进行光跟踪,2个摄像头获
取的画面存在视差,通过视差关系建立三维影像模型,并实 时计算出被测目标的空间信息。

其识别空间为倒三角形,识
别死区位于设备的中心,该传感器的有效探测范围在设备上 方25〜600 mm 处。

LeapMotion 工作原理如图3所示。

对影像进行噪点过滤和背景分离处理后,可获得含有
空间信息的目标影像数据,LeapMotion 的采集速率为
100〜200 Frame/s,精度高达1/10 mm o 通过内部高
速处理芯片对数据进行处理撚后发送至计算机内,计算机 的上位机软件调用传感器软件开发包的API,对数据进行
图像识别和三维模型还原运算后可获得手、手腕、手指等的 各项信息,并可以获取手势和动作等静态与动态信息。

1.1.2 Mecanum 全方位移动平台
传统的轮式结构很难实现原地旋转、朝任意方位运动
和左右平移运动,左 右转也是通过差速的
原理或者1个轮子正 转,]个轮子反转来
实现,但也很难实现
原地零半径旋转、朝
任意方向运动和左右
平向移动。

在复杂或
《湖北农机化》2019年第10

开发研究
者狭窄的空间,很难实现自主的移动。

而利用Mecanum
轮,就可以很好地解决上述问题,麦克纳姆轮具有全方位移
动的功能,它的圆周上分布了许多小滚子,这些特殊分布的
小滚子的轴线与车轮的轴线成45。

,这样就使得滚子受2
个方向的力,既可以绕自身转动又可以绕车轴转动。

图4
为全方位移动平台的车轮布置图。

1.1.3六自由度机械手臂
六自由度机械手臂模仿人的手臂机构,包含肩、肘、腕3
个关节的移动以及旋转,因此机械手臂能够模拟出人类手臂
的各种姿态,其中夹取装置能够模拟人的手部抓取动作。

机械手臂由6个伺服舵机和铝
合金支架拼接而成。

舵机可以根据
pwm信号的占空比大小旋转到对应
的角度,然后精准地停下。

控制系统
将LeapMotion传感器提取的手部
坐标转换为占空比大小,从而控制机
械臂各个关节的运动和定位。

图5
为机械臂的结构图。

正因为采用伺服舵机控制机械
玮的运动,所以在®Whh,能够
很方便地将手部的位置信息和舵机
的角度映射起来,从而能够实现机械
跟随手部动作的功能,且拥有较
好的精度,同时极大简化了控制系统
的设计,提高了控制系统的稳定性。

1.2上位机软件设计
Leap公司辭了SDK包供开发者开发。

本系统在Win-dowslO操作系统下,iffiS C++编写上位机濟获取传感器中的追踪娜,并通过蓝牙发送给stm32F427控制器。

系统使用到了SDK类库中的6大类:Controller类、Frame类‘Gesture类、Finger类、Handlist类、Hand类。

Controller类提供主要接口,通过仓(I建Controller类的实例来访问每一帧的数据;Frame类包含在1个帧中识别到的手部数据;Gesture类表示对手势的识另!J;Finger类表示1个手指的相关数据;Handlist类为识别到的所有Hand 对象的列表,可以通过Handlist访问其中的每一个Hand 对象;Hand类则表示手部的特征数据,如手掌方向、手掌位置、移动速度等等。

上位机软件首先初始化,创建Controller实例和SampleListener实例、对串口进行初始化,然后将Sam-pleListener实例加入到Controller实例中,等待任意案件按下,程序循环运行。

当传感器每获得一帧后,创建Fra­me实例、Handlist实例、Hand实例,首先区分左右手,将Frame提取到的左右手对象放入到对应的实例中,然后分别对左右手的实例中提取手部的位置信息、角度信息以及手势信息,使用到的函数有palmPositionO、direction。

、countO等,然后将提取到的数据通过串口发送给蓝牙模块,然后返回。

程序框图如图6、图7。

图6主程序流程图
2系统运行
为了验证系统的可行性,本文进行了多次实验,测试手势控制机械臂的稳定行和成功率,其中右手控制机械臂的上下、左右移动以及机械手的抓取、翻转动作,左手控制移动平台的前后、左右、旋转移动,每个动作测试100次,统计数据如表l o
表1系统测试统计
测试项目测试次数(次)成功率(%)机械手上下运动100次100%
机械手左右运动100次100%
机械爪抓取动作100次92%
机械爪翻转运动100次88%
移动平台前后运动100次100%
移动平台左右运动100次100%
移动平合旋转运动100次100%
结果表明,对于手掌的平移以及旋转运动,系统都能准确地识别到,对于较复杂的手势如抓取和手腕的翻转,识别成功率略低,这是由于传感器从手部底面进行拍摄,当手部动作复杂时,传感器易出现误判,导致系统不稳定,还应对信号进行滤波处理。

3结论
通过使用LeapMotion传感器提取双手的手部特征,用以控制机械手臂的姿态和动作,将体感技术与机械手臂的控制结合起来,并通过实验验证了系统的可行性和稳定性,机械手臂能够准确地完成移动和抓取动作,目前复杂手势的识别率还不够高,可通过算法进行优化。

对未来新型人机交互应用与机械手臂控制方面有借鉴作用。

参考文献:
口]赵小刚•机械臂全方位移动自动控制系统研究[J1.自动化与仪器仪表,2016⑼:62-63.
[21刘忠超,熊雷,翟天嵩•六自由度采摘机械臂系统设计[J].农机化研究,2015(8):112-114.
(收稿日期=2019-04-03)
《湖北农机化》2019年第10期。

相关文档
最新文档