一种数据手套接口模块的设计方法与流程

文档序号:11198734阅读:1495来源:国知局
一种数据手套接口模块的设计方法与流程

【技术领域】

本发明涉及一种数据手套接口模块的设计方法。



背景技术:

近年来,随着科学技术的不断发展,人们对于先进技术服务于生活越来越重视。虚拟现实技术是实现此要求的很好的一个途径。虚拟现实技术是利用计算机建立一个逼真的虚拟世界,用户可以在其中通过听、视、触、嗅等感官获取对周围环境的感知,有身临其境的感觉。虚拟现实技术在军事、教育、娱乐、科研等多方面都有很广泛的应用。在虚拟现实技术里面,数据手套是很重要的交互工具,让用户可以更加自然和真实的与虚拟环境交互。它可以捕捉到人手的动作和姿态信息。数据手套的外观和普通手套的外观类似,但是其材质上与普通手套不同,其中装有捕捉姿态信息的传感器,通过计算机接口把数据传输到计算机内,完成虚拟手的动作和姿态的实时更新。以便更加直观和真实的进行虚拟现实操作。

数据手套的关键在于手掌、手指以及手腕的各个有效部位的弯曲、外展等测量以及此基础上的外演。国内外许多单位和公司在数据手套的研究开发方面做了大量的工作,并推出不同类型的数据手套,下面对这些做一些介绍:

1)dataglove是vpl公司于20世纪90年代推出的最早的数据手套,该手套结构紧凑,佩戴舒适,轻便易用,采用桌面控制模块,可以同时支持系四副手套;但是容易受到用户手大小的影响。被设计试用于vr的医学应用、可以作为医学应用的输入设备。

2)virtualtechnologies公司于1991年推出了cyberglove数据手套,该手套重量较轻,舒适结构完整,使用权电阻技术来发送实时角度数据,cyberglovetouch系统提供了震动触觉技术。

3)解放军理工大学在2002年成功研制出一款数据手套,针对关节的弯曲和外展研究了光学行程传感器和光纤弯曲传感器,具有精度高,体积小等特点,且使用opengl的双缓冲技术回执三维图像。在使用过程中因用户的差异要对手套进行校正。

4)北京视景科技开发的wiseglove数据手套常用于测量人手指动作,广泛应用于人手的运动捕捉,游戏动画制作以及医学评估等领域。

simulink是matlab中最重要的组件之一,它可以提供一个动态系统建模、仿真和综合分析的集成环境。广泛应用于线性系统、非线性系统、数字控制以及数字信号处理的建模和仿真中。利用matlab虚拟现实工具箱(virtualrealitytoolbox)可以在三维虚拟现实环境中进行可视化操作和动态系统交互,使用标准的vrml技术,可以进行matlab和simulink的交互,动态系统可以通过虚拟现实工具箱将simulink模型随时间的变化以视景和图形化方式进行交互,这对模型对象能有很好的理解,很方便的进行虚拟操作的模拟。在simulink中建立系统的结构图,选择合适的虚拟现实环境连接到simulink结构图中,虚拟现实模块就会为有效的vrml节点扫描出能够由simulink驱动的虚拟世界。

目前,针对simulink虚拟现实技术的数据手套开发比较少,使得在其下的虚拟现实实现缺少了很大的操作性。无法真是的实现人机交互,增强沉浸感,实现更加逼真的虚拟现实。



技术实现要素:

本发明的目的是针对数据手套在simulink下应用匮乏的情况,提供了一种simulink下的数据手套接口模块的设计方法,实现了数据手套在simulink下的使用,为simulink虚拟现实操作技术打下基础。

为达到上述目的,本发明采用以下技术方案予以实现:

一种数据手套接口模块的设计方法,包括以下步骤:

1)进行数据手套归一化处理,标定手套的最大值和最小值;定义一个最大值为a和一个最小值为b,数据手套的数值为c,c在a和b之间满足如下关系:

通过线性算法对数据手套的弯曲角度进行计算,加入手套某个手指的活动角度是e,其弯曲角度为:

e*(c-b)/(a-b)(2)

然后用滑动均值法对数据手套的数据进行标定,滑动均值法取连续n个数据手套数据作为平均值然后设定为当前的值,表示如下:

s=(s1+s2+…+sn)÷n(3)

其中,s是当前传感器的值,n是其个数且为整数;

2)扫描各个串口判断手套是否连接,读取数据手套的型号,然后新建一个数据手套数据结构,利用手动标定对数据手套进行标定;同时利用上述的方法对数据手套数据进行标定,以得到正确的传感器数据;与此同时对采样时间以及输入输出接口进行设计;完成s函数编写工作;

3)驱动s函数使其在simulink下运行并且读取数据手套的数据;把s函数编译为一个能够调用的动态链接库,使用此动态链接库就能够进行s函数的使用;

4)搭建调用s函数的模块并进行封装,把输入直接设置在界面上;搭建结构框图,运行次模块,开始收集读取到的数据,然后通过数据手套的数值得到手势姿态;

5)在虚拟实现操作平台上搭建手模型、定义父子关节,然后把数据传到对应的各个关节上,实现手的驱动,完成虚拟现实操作。

本发明进一步的改进在于:

步骤2)中,手动标定是确定初始时刻的手的姿态。

步骤4)中,输入是采样时间和数据手套的串口号。

步骤5)中,虚拟实现操作平台包括simulink虚拟现实工具箱、unity3d或osg。

与现有技术相比,本发明具有以下有益效果:

本发明基于simulink对数据手套接口进行了设计,通过归一化算法和滑动均值法对数据进行了处理。使得数据稳定且有效。然后通过编写串口函数把数据手套与simulink结合,使其可以有效交互,增加了simulink下的虚拟现实技术的可操作性。

【附图说明】

图1为是基于simulink接口设计流程图;

图2为s-function运行模式流程图;

图3为大拇指数据手套数据;

图4为食指数据手套数据;

图5为中指数据手套数据;

图6为无名指数据手套数据;

图7为小拇指数据手套数据。

【具体实施方式】

下面结合附图和实施例对本发明作进一步详细的说明:

如图1-2所示,simulink中s函数主要是采用回调函数的形式来实现各种功能。其设计的模块可以重复使用,大大增加了效率。

本发明针对simulink的特点,利用数据手套的接口方法,提供了一种基于simulink的数据手套接口模块的设计方法,包括以下步骤:

第一步是归一化数据手套值。对数据手套最大值和最小值进行标定,保证数据手套的活动在某一个范围内。同时由于在实际的测试中数据手套的数据可能会有抖动,因此需要对数据手套数据进行滤波,使用滑动均值法对其进行滤波,保证数据的准确和稳定。具体方法如下:

进行数据手套归一化处理,标定手套的最大值和最小值。定义一个最大值a和一个最小值b,数据手套的数值是c,那么要满足c在a和b之间,如下:

以上就可以保证数据手套的值在规定的手势范围内,即在a和b之间,通过线性算法可以对数据手套的弯曲角度进行计算,加入手套某个手指的活动角度是e,那么其弯曲角度为:

e*(c-b)/(a-b)(2)

然后用滑动均值法对数据手套的数据进行标定,滑动均值法取连续n个数据手套数据作为平均值然后设定为当前的值,表示如下:

s=(s1+s2+…sn)÷n(3)

其中s是当前传感器的值,si是连续的相邻传感器的值。n是其个数。

第二步编写s函数,获取数据手套的端口并打开数据手套,使用先前的标定方法对数据手套进行标定。设定传感器数据结构读取传感器的值。同时把数据手套的数据进行输出,确定手势。具体方法如下:

首先,扫描各个串口判断手套是否连接,读取数据手套的型号,然后新建一个数据手套数据结构,利用手动标定对数据手套进行标定,这里的手动标定主要是确定初始时刻的手的姿态,这样才可以定义具体的手势。同时利用上述的方法对数据手套数据进行标定,以得到正确的传感器数据。与此同时根据自身需要可以对采样时间以及输入输出接口进行设计。这样就初步完成了s函数编写工作。

第三步主要是对编写好的s函数进行编译,生成simulink可以使用的动态链接文件,然后将编译好的动态链接文件导入到我们预先建立的s函数模块中,使其成为一个可以使用的模块。具体方法如下:

有了s函数,则可以不断的调用其中的回调函数来进行数据的读取。下面就是驱动s函数使其可以在simulink下运行并且读取数据手套的数据。把s函数编译为一个可调用的动态链接库,使用此动态链接库就可以进行s函数的使用。

第四步是对s函数模块进行封装并且搭建框图,满足数据手套在simulink下的使用,通过数据手套的数据可以正确的定义手势,然后用于虚拟现实操作。具体方法如下:

对所搭建的模块进行封装,把输入直接设置在界面上,这里面的输入时采样时间和数据手套的串口号。有了输入,搭建结构框图,运行次模块,就可以开始收集读取到的数据,然后就可以通过数据手套的数值知道手势姿态。

第五步是将其运用到一些常见的虚拟现实操作平台的一些方法,使其可以和虚拟现实技术结合,提高虚拟现实的交互性。具体方法如下:

数据手套可以用于很多虚拟现实操作平台,例如simulink虚拟现实工具箱、unity3d以及osg(opensourcegraph)等等。在这些平台上基本流程都是先搭建手模型,定义父子关节,然后把数据传到对应的各个关节上,实现手的驱动,以此来完成虚拟现实操作。

实施例:

本发明具有实用性和可实施性,已经通过仿真验证。图3到图7是进行了仿真实例的验证,连接数据手套,然后设计的模块选择手套连接的串口号,驱动程序运行,通过对手势的初始标定(这里定义的是手掌伸开时的姿态为初始姿态),然后就可以进行手势姿态角的读取,这里,图3到图7分别是大拇指、食指、中指、无名指和小拇指在手掌抓紧伸开过程的姿态角信息。其中横坐标是时间,纵坐标是以初始姿态为参考的角度。

以上内容仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明权利要求书的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1