CN103294226B - 一种虚拟输入装置及方法 - Google Patents
一种虚拟输入装置及方法 Download PDFInfo
- Publication number
- CN103294226B CN103294226B CN201310216703.3A CN201310216703A CN103294226B CN 103294226 B CN103294226 B CN 103294226B CN 201310216703 A CN201310216703 A CN 201310216703A CN 103294226 B CN103294226 B CN 103294226B
- Authority
- CN
- China
- Prior art keywords
- axis
- signal processing
- processing module
- input
- mode
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Position Input By Displaying (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明公开了一种虚拟输入装置,包括固定在手指指甲上用于采集手指位置的信号采集模块、用于处理信号采集模块采集的数据的信号处理模块、无线通信模块和上位机,其中,信号采集模块将采集到的手指位置信号输入到信号处理模块后通过无线通信模块输入到上位机中。本发明还提供了一种虚拟输入的方法。本发明不仅装置更简洁,使用起来更加方便、而且灵敏度高、输入的内容更准确,同时可靠性好,还增加了趣味性。
Description
技术领域
本发明属于计算机设备领域,特别涉及一种虚拟输入装置及方法。
背景技术
键盘鼠标作为常见的输入工具,在计算机设备中具有不可或缺的作用。随着计算机的进步,键盘和鼠标也有了很大的改进,其中键盘从独立的物理键盘到目前平板电脑和触摸手机的虚拟软键盘;鼠标也经历了机械鼠标,光机式鼠标,光电鼠标,光学鼠标。
然而,目前普遍使用的物理键盘鼠标都存在着很大的局限性,用户在使用时必须把手放在键盘和鼠标上进行物理接触才能对其进行操作,这使得用户的双手被限制在了键盘和鼠标所在的空间,这样的输入系统是以计算机等机器为中心的,用户的空间位置和操作方式都受到了限制。在现有技术中也有一些基于在手套上的虚拟输入装置,但是这种装置对手掌的大小有限制,有时候选择不合适的手套会产生输入错误的问题,而且这种虚拟输入装置的灵敏度不高。
发明内容
发明目的:针对上述现有技术存在的问题和不足,本发明的提供一种使用方便、灵敏度高、可靠性好,趣味性强的虚拟输入装置。
技术方案:为实现上述发明目的,本发明采用一种虚拟输入装置,包括固定在手指指甲上用于采集手指位置的信号采集模块、用于处理信号采集模块采集的数据的信号处理模块、无线通信模块和上位机,其中,信号采集模块将采集到的手指位置信号输入到信号处理模块后通过无线通信模块输入到上位机中。
所述信号采集模块采用8个三轴加速度计和2个十轴传感器,分别固定在手指的指甲盖上。
为了使整个装置的处理能力更强,所述信号处理模块采用ARM控制器。
进一步,所述无线通信模块的通信接口选为蓝牙。
进一步,十轴传感器2由三轴线性加速度计、三轴陀螺仪、三轴磁场运动传感器和压力/高度传感器组成,采用这种集成度高的传感器,使用更加方便,体积也比较小。
本发明还提供了一种虚拟输入方法,包括以下步骤:
步骤1:将8个三轴加速度计和2个十轴传感器分别通过导线与信号处理模块连接;
步骤2:在信号处理模块中设置Z轴偏移的角度处于不同范围时所对应的字母,并在上位机中建立手势数据库;
步骤3:设定一个三轴加速度计用于选择输入方式;
步骤4:根据步骤3所设定的三轴加速度计检测值变化次数时,信号处理模块进入不同的输入模式,用于选择输入方式的三轴加速度计的检测值从初始状态开始,第一次变化时,信号处理模块进入键盘模式,第二次变化时,信号处理模块进入鼠标模式,第三次变化时,信号处理模块进入魔法输入模式,信号处理模块工作模式的变换根据用于选择输入方式的三轴加速度计的变换次数依次循环;
其中,进入键盘模式时,其他的三轴加速度计将检测的力矢量输入到信号处理模块,信号处理模块根据力矢量在三轴的分量计算出Z轴相对于重力轴偏移的角度,根据设定的角度范围输出不同的字母;
进入鼠标模式时,信号处理模块实时捕捉十轴传感器中的三轴陀螺仪的输出数据,对输出据进行平滑滤波和灵敏度调整,获取鼠标坐标值;
进入魔法输入模式时,三轴加速度计和十轴传感器将采集到的数据通过信号处理模块输入到上位机中,与上位机中的手势库中的手势进行对比,如果有相同的,上位机做出回应。
有益效果:本发明与现有技术相比,不仅装置更简洁,使用起来更加方便、而且灵敏度高、输入的内容更准确,同时可靠性好,还增加了趣味性。
附图说明
图1为本发明的结构示意图;
图2为同一个三轴加速度计不同倾斜角度表示不同信号示意图;
图3为三轴陀螺仪产生信号原理示意图。
具体实施方式
下面结合附图和具体实施例,进一步阐明本发明。
如图1所示的虚拟输入装置,在两只手的手指指甲在位置分别设置四个三轴加速度计1和两个由意法半导体公司生产的STEVAL-MKI124V1型号的十轴传感器2,其中,两个十轴传感器2分别设置在两只手食指的指甲位置,其中,十个三轴加速度计1和十轴传感器2通过锁环固定在手指上,每个三轴加速度计1和十轴传感器2将采集到的位置信号传输到手腕处的采用RAM内核处理器的信号处理模块3中,信号经信号处理模块3处理后通过无线蓝牙发射器4发送到上位机5上的蓝牙接收器6中,从而上位机5获取相应检测数据。其中设定一个三轴加速度计用于模式的选择,根据三轴加速度计采集的数据变化的次数,信号处理模块进入不同的工作模式。
设定的三轴加速度计采集的数据第一次变化时,本发明在作为键盘模式输入,在信号处理模块中设定Z轴为重力方向的坐标轴,当三轴加速度计只受重力作用的时候,读取三个分量Rx,Ry,Rz,此时三个分量来自于重力矢量,当手指弯曲时,三轴加速度计受力矢量的作用,读取力矢量此时在三个轴上的分量,通过算出力矢量与Z轴的夹角获得Z轴的偏移角。根据设定的角度范围,看偏移角属于哪个范围便可以知道需要输入的是哪个字母。如图2所示,比如“Q”、“A”、“Z”这三个键来讲,他们共用一个加速度计,对应的角度分别是0°~30°,30°~60°,60°~90°,其他手指和键位的定义与之类似。
信号处理模块采用处理能力较强的ARM内核处理器,在处理模块中通过一定的算法进行信处理,主要包括了低通滤波,中值平均值等多种滤波算法。为降低误码率,除了各种滤波算法外,本发明还采用了以下三种措施:
其一,由于不同的手指其弯曲程度不一致,经过大量调研用户操作习惯和手指弯曲度,我们对左右手的10个手指采用不同的阈值来确定其按下的键位。经测试,每个手指采用不同的阈值可以显著降低误码率。
其二,利用电子罗盘的功能。当用户的手指不是垂直于身体方向,而是存在一个夹角时,用户手指敲击的角度信息也会有所不同,这也是造成误码的一个原因。因此,检测用户手掌的当前方位角,在选择角度阈值的时候考虑这个方位角的影响,用以补偿加速度的倾角阈值。
其三,当用户某个手指敲击时,可能会带动附近的手指也发生敲击动作,这是造成误码率增大的一个原因。因此在信号处理模块中增加去除冗余的操作和动作的模块,尽最大可能去降低误码率,最终使识别正确率达到95%以上。
其中,十轴传感器中的三轴磁场运动传感器用于测量用户手掌方位角,如图3所示。
根据三轴磁场运动传感器采集到的数据在X轴和Y轴上的分量的值Lx和Ly便可确定水平方位值θ:
θ=tan-1(Ly/Lx)
当芯片发生倾斜时,需要俯仰角和侧偏角来矫正方位数值,矫正公式为:
Xr=Lxcosα+Lysinαsinβ-Lzcosβsinα
Yr=Lxcosβ+Lzsinβ
其中,Xr,Yr为要将芯片转到水平位置的值,α,β为俯仰角和侧倾角,Lz为螺旋仪采集到的数据在Z轴上的分量。依据上述三个公式,可以知道用户的手指摆放位置与用户面对方向的夹角,将此夹角换算入手机倾角阈值即可实现手掌偏移补偿,从一定程度上提高键盘识别度。
关于多键位的问题。如果只采用加速度计,在一种模式下,每个手指最多识别三个按键,因此,本发明利用十轴传感器的陀螺仪来辅助加速度计实现多键位的控制。陀螺仪是用来测量角速度的器件。只需进行积分就可以得到角度数据θ1。
式中,为陀螺仪旋转的角速度,当加入角度数据后,辅以一定的算法,最多能够实现每个手指控制9个按键。基于这三类传感器,本发明就可以实现传统键盘的大部分按键的输入。
设定的三轴加速度计采集的数据第二次变化时,本发明在作为鼠标模式输入,鼠标的实现需要解决移动、左键右键以及滑轮三个问题。移动和滑轮部分由陀螺仪来实现,左右键部分由加速度计来实现。
对于Windows系统来说,鼠标移动的坐标值取决于屏幕的分辨率,对于1920×1080分辨率的显示器来说,其X轴正向为显示器横轴向右,最大值为1920,Y轴正向为显示器纵轴向下,最大值为1080。
只需要实时捕捉十轴传感器2中的三轴陀螺仪的输出数据,对输出据进行一定的平滑滤波以及灵敏度调整,即可映射为鼠标坐标值。实时捕捉数据可以在STM32的定时器中断函数内实现,只需要初始化定时器一个合适的定时初值即可。
首先对陀螺仪的在X轴和Y轴方向的角速度ωx,ωy对时间的一次积分,
得到在X轴和Y轴方向两个方向上的偏转角度RotationRatex,RotationRatey
鼠标坐标值与陀螺仪输出值的映射关系可以简单表示为:
其中,currrent*为鼠标在屏幕上的坐标值,q为陀螺仪的偏转角度和鼠标坐标之间的一个比例系数。
将鼠标数据通过蓝牙模块上传给PC端的软件,由PC端软件进行解码即可实现鼠标移动功能。
设定的三轴加速度计采集的数据第三次变化时,本发明工作在魔法输入状态时,三轴加速度计、三轴陀螺仪,磁场运动传感器共同工作,并在上位机做相应的驱动程序来支持。这个模块是传统输入系统所没有的。首先,三轴加速度计和十轴传感器将采集到相应的数据上传到上位机,上位机与本身自带的手势库相对比,一旦发现与手势库定义的手势相同,即会做出相应的响应。再者,根据不同用户的需求,本发明设计了很多可被系统识别和相应的消息队列,根据设定,不同的动作可是上位机产生所需要的响应和操作。
三轴加速度计在本模块中主要起到识别中断和检测倾角的作用。
根据此倾角,可以得到手指的“静止”姿态。同时,三轴加速度计还会提供中断检测功能,三轴加速度计通常带有对单击、双击等中断源的检测功能,利用这项功能可以直接实现某些复杂手势的识别,比如用户手指用力向右甩动,即会触发右侧加速度值过大的中断,系统也就识别出了用户的这种动作。
三轴加速度计三轴陀螺仪用以捕捉用户的旋转等手势变化。陀螺仪的输出值为当前三轴角速度ωx,ωy,ωz,对三轴数据分别积分:
可以得到三轴的角度θx,θy,θz,基于陀螺仪的高灵敏度,如果对陀螺仪数据连续积分,就可以得到用户的“旋转运动姿态”。
基于“静止”姿态和“旋转运动姿态”,可以实现预定义各种手势的识别。魔法输入的功能,包含的大量的复合快捷键。是键盘鼠标很好的补充和加强,并且大大增加了输入的趣味性和个体性。
Claims (2)
1.一种虚拟输入装置,其特征在于:包括固定在手指指甲上用于采集手指位置的信号采集模块、用于处理信号采集模块采集的数据的信号处理模块、无线通信模块和上位机,其中,信号采集模块将采集到的手指位置信号输入到信号处理模块后通过无线通信模块输入到上位机中;所述信号采集模块包括8个三轴加速度计和2个十轴传感器;所述信号处理模块采用ARM控制器;所述无线通信模块的通信接口采用蓝牙;所述十轴传感器2由三轴线性加速度计、三轴陀螺仪、三轴磁场运动传感器和压力/高度传感器组成,设定的三轴加速度计采集的数据第一次变化时,作为键盘模式输入,在信号处理模块中设定Z轴为重力方向的坐标轴,当三轴加速度计只受重力作用的时候,读取三个分量Rx,Ry,Rz,此时三个分量来自于重力矢量,当手指弯曲时,三轴加速度计受力矢量的作用,读取力矢量此时在三个轴上的分量,通过算出力矢量与Z轴的夹角获得Z轴的偏移角;根据设定的角度范围,看偏移角属于哪个范围便可以知道需要输入的是哪个字母。
2.一种虚拟输入方法,其特征在于:包括以下步骤:
步骤1:将8个三轴加速度计和2个十轴传感器分别通过导线与信号处理模块连接;
步骤2:在信号处理模块中设置Z轴偏移的角度处于不同范围时所对应的字母,并在上位机中建立手势数据库;
步骤3:设定一个三轴加速度计用于选择输入方式;
步骤4:根据步骤3所设定的三轴加速度计检测值变化次数时,信号处理模块进入不同的输入模式,用于选择输入方式的三轴加速度计的检测值从初始状态开始,第一次变化时,信号处理模块进入键盘模式,第二次变化时,信号处理模块进入鼠标模式,第三次变化时,信号处理模块进入魔法输入模式,信号处理模块工作模式的变换根据用于选择输入方式的三轴加速度计的变换次数依次循环;
其中,进入键盘模式时,其他的三轴加速度计将检测的力矢量输入到信号处理模块,信号处理模块根据力矢量在三轴的分量计算出Z轴相对于重力轴偏移的角度,根据设定的角度范围输出不同的字母;
进入鼠标模式时,信号处理模块实时捕捉十轴传感器中的三轴陀螺仪的输出数据,对输出据进行平滑滤波和灵敏度调整,获取鼠标坐标值;
进入魔法输入模式时,三轴加速度计和十轴传感器将采集到的数据通过信号处理模块输入到上位机中,与上位机中的手势库中的手势进行对比,如果有相同的,上位机做出回应。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310216703.3A CN103294226B (zh) | 2013-05-31 | 2013-05-31 | 一种虚拟输入装置及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310216703.3A CN103294226B (zh) | 2013-05-31 | 2013-05-31 | 一种虚拟输入装置及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103294226A CN103294226A (zh) | 2013-09-11 |
CN103294226B true CN103294226B (zh) | 2016-10-19 |
Family
ID=49095241
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310216703.3A Expired - Fee Related CN103294226B (zh) | 2013-05-31 | 2013-05-31 | 一种虚拟输入装置及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103294226B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103645803A (zh) * | 2013-12-18 | 2014-03-19 | 王大鹏 | 微型便携式多功能无线体感捕捉控制系统 |
CN106073126B (zh) * | 2015-04-27 | 2018-05-18 | 陈明洙 | Led安全背包 |
CN105302021A (zh) * | 2015-10-23 | 2016-02-03 | 哈尔滨工业大学 | 人机协作再制造中控制机器人运动的穿戴式手势控制装置 |
CN107678550A (zh) * | 2017-10-17 | 2018-02-09 | 哈尔滨理工大学 | 一种基于数据手套的手语手势识别系统 |
CN109828672B (zh) * | 2019-02-14 | 2022-05-27 | 亮风台(上海)信息科技有限公司 | 一种用于确定智能设备的人机交互信息的方法与设备 |
CN110090401A (zh) * | 2019-05-10 | 2019-08-06 | 西安腾谦电子科技有限公司 | 一种基于颈部肌肉训练的颈肌训练设备及其实现方法 |
CN110442233B (zh) * | 2019-06-18 | 2020-12-04 | 中国人民解放军军事科学院国防科技创新研究院 | 一种基于手势交互的增强现实键鼠系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102063183A (zh) * | 2011-02-12 | 2011-05-18 | 深圳市亿思达显示科技有限公司 | 一种手套式虚拟输入装置 |
CN102323854A (zh) * | 2011-03-11 | 2012-01-18 | 中国科学院研究生院 | 人体运动捕获装置 |
CN203299754U (zh) * | 2013-05-31 | 2013-11-20 | 东南大学 | 一种虚拟输入装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2414309B (en) * | 2004-05-18 | 2009-02-25 | Simon Richard Daniel | Spherical display and control device |
-
2013
- 2013-05-31 CN CN201310216703.3A patent/CN103294226B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102063183A (zh) * | 2011-02-12 | 2011-05-18 | 深圳市亿思达显示科技有限公司 | 一种手套式虚拟输入装置 |
CN102323854A (zh) * | 2011-03-11 | 2012-01-18 | 中国科学院研究生院 | 人体运动捕获装置 |
CN203299754U (zh) * | 2013-05-31 | 2013-11-20 | 东南大学 | 一种虚拟输入装置 |
Also Published As
Publication number | Publication date |
---|---|
CN103294226A (zh) | 2013-09-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103294226B (zh) | 一种虚拟输入装置及方法 | |
US10860091B2 (en) | Motion predictions of overlapping kinematic chains of a skeleton model used to control a computer system | |
US10534431B2 (en) | Tracking finger movements to generate inputs for computer systems | |
US8010911B2 (en) | Command input method using motion recognition device | |
US6515669B1 (en) | Operation input device applied to three-dimensional input device | |
US11474593B2 (en) | Tracking user movements to control a skeleton model in a computer system | |
CN103226398B (zh) | 基于微惯性传感器网络技术的数据手套 | |
US8830189B2 (en) | Device and method for monitoring the object's behavior | |
CN103257711B (zh) | 空间手势输入方法 | |
CN105159539B (zh) | 可穿戴设备的触控响应方法、装置及可穿戴设备 | |
US10976863B1 (en) | Calibration of inertial measurement units in alignment with a skeleton model to control a computer system based on determination of orientation of an inertial measurement unit from an image of a portion of a user | |
US10775946B2 (en) | Universal handheld controller of a computer system | |
KR100777107B1 (ko) | 가속도 센서를 이용한 문자인식 장치 및 방법 | |
CN101606119A (zh) | 输入装置、控制装置、控制系统、控制方法及手持装置 | |
US11079860B2 (en) | Kinematic chain motion predictions using results from multiple approaches combined via an artificial neural network | |
CN103034343B (zh) | 一种感知鼠标的控制方法和装置 | |
US11175729B2 (en) | Orientation determination based on both images and inertial measurement units | |
CN105302021A (zh) | 人机协作再制造中控制机器人运动的穿戴式手势控制装置 | |
US11054923B2 (en) | Automatic switching between different modes of tracking user motions to control computer applications | |
US11531392B2 (en) | Tracking upper arm movements using sensor modules attached to the hand and forearm | |
CN205050078U (zh) | 一种可穿戴设备 | |
WO2020009715A2 (en) | Tracking user movements to control a skeleton model in a computer system | |
Pandit et al. | A simple wearable hand gesture recognition device using iMEMS | |
CN103984407A (zh) | 使用运动传感器融合来进行运动识别的方法及装置 | |
CN109782999A (zh) | 一种输入方法、输入设备以及一种计算机可读介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20161019 Termination date: 20190531 |
|
CF01 | Termination of patent right due to non-payment of annual fee |