一种游戏用智能眼镜

文档序号:1571754 发布日期:2020-01-31 浏览:24次 >En<

阅读说明:本技术 一种游戏用智能眼镜 (intelligent glasses for games ) 是由 马兴 于 2019-03-25 设计创作,主要内容包括:本发明提供了一种游戏用智能眼镜,包括:穿戴部件,用于将所述智能眼镜套在头部;重力传感器,用于感应用户的头部运动;MPU,与所述重力传感器相连,用于获取所述头部运动数据,并将所述头部运动数据转换为鼠标控制数据,其中,所述鼠标控制数据传送至主机用于对游戏进行控制。通过上述方式使得用户通过头部运动就可以实现游戏控制,而无需再借助鼠标,达到了简单高效实现游戏控制的技术效果。(The invention provides kinds of intelligent glasses for games, which comprise a wearing part, a gravity sensor and an MPU, wherein the wearing part is used for sleeving the intelligent glasses on the head, the gravity sensor is used for sensing head movement of a user, the MPU is connected with the gravity sensor and is used for acquiring head movement data and converting the head movement data into mouse control data, the mouse control data is transmitted to a host computer to control games, and the game control can be realized through the head movement of the user without the help of a mouse, so that the technical effect of simply and efficiently realizing the game control is achieved.)

一种游戏用智能眼镜

技术领域

本发明涉及控制设备技术领域,特别涉及一种游戏用智能眼镜。

背景技术

随着互联网技术的不断发展,和游戏技术的不断发展。越来越多的人通过手机和电脑来玩一些以第一人称视角的射击游戏。例如:穿越火线(CF)、CS、火线突击、神庙逃亡等。然而,无论是在安卓手机上,还是在台式机上玩,一般都是需要通过手机来左右上下的摆动来进行遥控,或者是通过手机进行控制的。

为了增强游戏的娱乐性和新鲜感,可以通过智能眼镜的摆动来与游戏中的画面摆动进行同步。例如:在玩穿越火线的时候,第一人称视角的键盘可以控制人物的左右移动前进后退、鼠标的点击控制开枪射击。基于此,可以利用可穿戴的眼镜通过头部左晃动和右晃动来控制游戏人物中的靶星左右移动,例如:抬头就是前进、低头就是后退、点击触摸板就是开枪,为了实现该技术仅需要一根USB线与主设备连接。

然而,针对如何实现具体的控制指令的转换,目前尚未提出有效的解决方案。

发明内容

本发明实施例提供了一种游戏用智能眼镜,以实现通过智能眼镜实现对游戏控制的目的,包括:

穿戴部件,用于将所述智能眼镜套在头部;

重力传感器,用于感应用户的头部运动;

MPU,与所述重力传感器相连,用于获取所述头部运动数据,并将所述头部运动数据转换为鼠标控制数据,其中,所述鼠标控制数据传送至主机用于对游戏进行控制。

在一个实施方式中,所述重力传感器包括:加速度传感器和角速度传感器。

在一个实施方式中,还包括:USB数据线,与所述MPU相连,用于将所述鼠标控制数据传送至所述主机。

在一个实施方式中,所述USB数据线遵从HID协议。

在一个实施方式中,还包括:Kernel,其中,所述HID协议位于Kernel中。

在一个实施方式中,所述主机包括以下至少之一:移动终端、台式机。

在一个实施方式中,还包括:鼠标功能控制开关,与所述MPU相连,用于控制所述智能眼镜是否开启鼠标功能。

在本发明实施例中,通过在可穿戴设备(例如:智能眼镜)中增加重力传感器来感应用户的头部运动,并将用户的头部运动转换为鼠标指令(例如:前后左右移动等),从而实现对游戏的控制。通过上述方式使得用户通过头部运动就可以实现游戏控制,而无需再借助鼠标,达到了简单高效实现游戏控制的技术效果。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。在附图中:

图1是根据本发明实施例的智能眼镜的结构示意图;

图2是根据本发明实施例的智能眼镜的工作流程图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施方式和附图,对本发明做进一步详细说明。在此,本发明的示意性实施方式及其说明用于解释本发明,但并不作为对本发明的限定。

在本例中,考虑到为了实现基于可穿戴设备对游戏的控制,可以通过可穿戴设备中的MPU传感器进行驱动,可以是通过可穿戴设备系统内部的HID类鼠标协议代取代与主机相连的鼠标;具体的,可以是通过USB线与主机相连,MPU传感器产生的加速数据和角度数据会通过协议转化成鼠标协议中的指令,然后,通过USB传入主机。

然而,虽然上述方式从理论上可以完成可穿戴设备对游戏的控制,不过仍需要解决如下几个问题:

1)实现这种接口需要利用鼠标本身设备内部的HID协议代码,且需要将该协议代码移植并与MPU驱动进行融合。

2)鼠标端的硬件接口需要与可穿戴设备端保持一致,且与主机相连的接口需要是USB接口,这样就可能导致电路的不兼容或者功耗增加,且不能保证完全的模拟实现。

3)会存在距离限制问题,当人的运动用力过猛的时候,有可能会导致扯坏USB连接线。

为了解决上述问题,对现有的基于鼠标的控制进行说明和分析如下:目前游戏中所使用的鼠标主要是光机式鼠标,鼠标移动时会带动胶球滚动,胶球的滚动又摩擦鼠标内的分管的水平和垂直两个方向的栅轮滚轴,从而驱动栅轮转动。栅轮的轮沿为格栅状,紧靠格栅两侧,一侧是红外发光管,另一侧是红外接收组件。这样,鼠标的移动将会被转换为水平和垂直栅轮不同方向和转速的转动。栅轮转动时,栅轮的轮齿周期性遮挡红外发光管发出的红外线照射到水平和垂直两个红外接收组件,从而产生脉冲。鼠标内控制芯片通过两个脉冲的相位差判断得到水平或垂直栅轮的转动方向,通过脉冲的频率判定栅轮的转动速度,并不断通过数据线向主机传送鼠标移动信息,主机通过处理使屏幕上的光标同鼠标同步移动。

对于鼠标而言,还有如下几种定位方式:

1)轨迹球定位编辑轨迹球定位的工作原理与光栅的工作原理类似,只是改变了滚轮的运动方式,其球座是固定不动的,直接用手拨动轨迹球来控制鼠标箭头的移动。轨迹球被搓动时,带动其左右及上下两侧的滚轴,滚轴上带有栅轮,通过发光管和接收组件产生脉冲信号进行定位。不过轨迹球的滚轮积大、行程长,这种定位方式能够作出十分精确的操作。并且轨迹球另一大优点是稳定,通过一根手指来操控定位,不会因为手部动作移动影响定位。此外,也有使用光电方式的轨迹球,其工作原理和发光二级管定位类似。

2)二极管定位编辑是大多数光电鼠标的定位方式,这是一种电眼的工作方式。在光电鼠标内部有一个发光二极管,通过该发光二极管发出的光线,照亮光电鼠标底部表面(这就是为什么鼠标底部总会发光的原因)。然后将光电鼠标底部表面反射回的一部分光线,经过一组光学透镜,传输到一个光感应器件(微成像器)内进行成像。这样,当光电鼠标移动时,其移动轨迹便会被记录为一组高速拍摄的连贯图像。最后利用光电鼠标内部的一块专用图像分析芯片(DSP,数字微处理器)对移动轨迹上摄取的一系列图像进行分析处理,通过对这些图像上特征点位置的变化进行分析,来判断鼠标的移动方向和移动距离,从而完成光标的定位。

3)激光定位编辑也是光电鼠标的一种定位方式,其特点是使用了激光来代替发光二极管发出的普通光。激光是电子受激发出的光,与普通光相比具有极高的单色性和直线性,用于定位的激光主要是不可见光。普通光在不同颜色表面上的反射率并不一致,这就导致光电鼠标在某些颜色表面上由于光线反射率低,导致DSP不能识别的“色盲”问题。此外,普通光在透明等物质表面无法使用,或者产生跳动。由于激光近乎单一的波长能够更好的识别表面情况,灵敏度得到有效提高,因此使用激光定位的鼠标可以有效解决这些问题。

4)蓝影定位编辑蓝影定位是由微软研发的最新的一种精确定位方式,利用BlueTrack蓝影技术的鼠标使用的是蓝色可见光,但其不利用漫反射原理,而是利用激光引擎的镜面反射点成像的原理,蓝光光源透过高角准直透镜打到任意物体表面后,反射光进入汇聚透镜传入CMOS芯片中进行蓝影定位处理。而光学传感器(CMOSDetector)就如同一台高速连拍照相机一样每秒钟拍摄上千张相片,并将其传入图像处理芯片中,芯片对每张图片进行对比最终得出鼠标的移动轨迹。蓝影鼠标的兼容性非常好,可以适应各种桌面,无论是表面光滑的大理石台面上,还是透明的玻璃上,甚至在粗糙的客厅地毯上都能够精确定位。

以上是现有的几种鼠标移动方向和移动距离的确定方式的原理。

在Linux系统下,大部分usb鼠标驱动大致分为三个部分:usb设备驱动部分,用于获取鼠标设备通过usb协议传送过来的坐标和动作事件;input子系统部分;中断上报事件部分,下面对这三个部分说明如下:

1)usb设备驱动部分,在系统启动的时候,系统将会与所有的usb设备相匹配,会扫描USB驱动中注册端口这个端口,这个端口是鼠标设备用于存放即将要发送数据的地方,可以将这个扫描的过程叫做配置。无论是Windows还是Linux内核,都会自动进行这些工作,配置的过程很比较复杂,在这个过程中,系统会建立该设备的设备、配置、接口、设置、端点的描述信息;建立与usb设备传输的通道(这些都是遵循usb协议),在此之后,usb设备的驱动程序与这些接口相匹配。然后,对设备进行一些初始化工作,例如:分配urb,其中,urb是鼠标来数据了,就会调用这个,是用于准备接收数据用的。

2)中断部分,一个数据来临时,usb核心层会触发一个回调函数,这个回调函数在设备驱动注册后在通过Kernel提供的一个Api调用后就会提交给hcd(usb控制器)来调度接收和发送数据。

3)Input子系统,在驱动中注册一个input设备,当获得鼠标的的坐标数据时,需要向系统的udev结点上报坐标和动作事件,余下的部分将交由系统层完成。-

基于此,在本例中考虑到可以通过可穿戴设备的移动产生的加速度和角速度计算得到距离和角度数据,通过这些数据可以替换为鼠标产生的事件。对于主机系统侧的鼠标驱动是不需要关心的,只需要做好替换工作就可以做到通过可穿戴设备来进行游戏控制了。

对于鼠标而言,鼠标内部一般包括两个模块:一部分是DSP芯片和光栅机械传感器,两者通过物理的移动来产生数字信号,然后计算得到移动中每个点的坐标和距离;另一部分是作为usb设备部分,用于遵循usb设备端协议,将数据通过usb线传送至主机。

在MPU Sensor驱动中会一直产生中断,相应的驱动程序会一直得到加速度数据。将可穿戴设备(例如:眼镜)看作一个整体。如图1所示,在三维方向延伸出3个轴线,例如,以z轴作为受到的重力值,可程式控制,且程式控制范围为±2g、±4g、±8g和±16g的3轴加速器。通过加速计数据,可以在HAL层进行平均值采样运算,从而得到人为晃动的瞬时加速数据,并将其换算为鼠标的移动距离和移动速度,然后,再通过ioctl字符设备接口将移动距离和移动速度写回到鼠标的源码中。

假设鼠标内部芯片有一个芯片也是重力感应Sensor(也可能是光学感应),那么当移动鼠标或者是点击产生数据的时候后,这些数据会通过usb线走HID协议送到上述的驱动中去。基于此考虑到可以将该HID协议代码移植到可穿戴设备的Kernel中,这样可穿戴设备就可以变为一个可穿戴的移动鼠标。相应的,被传输的数据源就是通过头部的晃动MPU产生的数据通过计算将最终的结果进行分类,然后按照上述的HID协议将移动速度、移动距离、角度、移动方向以结构体的形式对数据进行打包,并可以做switch判断,使得上述头部运动的数据转换为鼠标上下左右移动的事件,也就是说,MPU产生的事件需要与鼠标对应的事件保持对应,从而最终可以将MPU产生的事件转换为原始鼠标的数据发送到主机,因为系统和协议是支持鼠标的但是不支持MPU的。

具体的,MPU时时刻刻产生加速度数据和角速度数据,经过各个轴线的运动会产生不同方向的加速度的分量,通过分量可以算出瞬时的运动夹角,通过采集一段时间内的加速数据和变化分析,可以判断出可穿戴设备是运动还是静止,还是运动到某一点停止,以及具体的移动距离,并将这些数据模拟得到鼠标运动数据,然后采用鼠标的数据格式进行包装。

举例而言,MPU检测到头部向左方移动10cm,距离加速度是x轴方向产生了0.6g,角度为0,在计算得到这个数据后,可以对这个数据在程序中做手动映射,将其映射到鼠标中的移动距离事件和角度事件。例如:头部向正左方移动了10cm的事件,映射到主机端就是鼠标向左移动的10cm,对于主机侧而言,仍旧认为是鼠标发送过来的命令通过驱动上报到主机的。

通过上述方式,在具备重力传感器的可穿戴设备上与主机连接可以实现鼠标模拟。

如图1所示,在本例中提供了一种游戏用智能眼镜,可以包括:

1)穿戴部件101,用于将所述智能眼镜套在头部;

2)重力传感器102,用于感应用户的头部运动;

3)MPU 103,与所述重力传感器102相连,用于获取所述头部运动数据,并将所述头部运动数据转换为鼠标控制数据,其中,所述鼠标控制数据传送至主机用于对游戏进行控制。

即,通过在可穿戴设备(例如:智能眼镜)中增加重力传感器来感应用户的头部运动,并将用户的头部运动转换为鼠标指令(例如:前后左右移动等),从而实现对游戏的控制。通过上述方式使得用户通过头部运动就可以实现游戏控制,而无需再借助鼠标,达到了简单高效实现游戏控制的技术效果。

上述的重力传感器102可以包括:加速度传感器和角速度传感器。通过加速度传感器和角速度传感器的设置,使得可以有效获取用户头部运动的移动速度、移动距离、角度、移动方向等,从而可以将其一一转换为鼠标对应的事件,从而可以被封装打包为鼠标事件,从而实现对游戏的控制。

为了实现对主机中游戏的控制,在智能眼镜上可以如图1所示,设置USB数据线104,该USB数据线可以与MPU 103相连,用于将所述鼠标控制数据传送至主机。

上述USB数据线可以通过HID协议将数据传送至主机,进一步的上述智能眼镜中可以设置有Kernel模块,其中,所述HID协议位于Kernel中。

上述主机是可以任意的能够承载和玩游戏的设备,例如,可以是移动终端、可以是台式机等等。

进一步的,考虑到智能眼镜的主要作用是完成智能眼镜本申请的观看或者VR AR等技术,鼠标功能并非是智能眼镜最主要的作用,为此,可以设置一个鼠标功能控制开关,通过该控制开关,可以控制所述智能眼镜是否开启鼠标功能,从而可以使得需要进行游戏控制的时候,就开始眼镜的鼠标模拟功能,如果不需要进行游戏控制,可以将其鼠标模拟功能关闭,以适应于不同的场景需求。

基于上述的智能眼镜,可以采用如图2所示的方法步骤实现控制:

S1:通过头部运动来触发眼镜运动传感器,得到x、y、z轴的三轴的加速度数据;

S2:通过安卓标准接口上报至HAL层,模拟鼠标的运动轨迹算法,将加速度的数据按一定时间进行采样,得到一个平均加速值,从而可以算出各个方向的移动距离。然后,再将3个加速度的值模拟出鼠标定位光电值,得出模拟的坐标;。

S3:将这组数据从Hal层写到Driver层的鼠标协议代码中,然后通过usb采用中断传输的方式走usb协议将数据传输到主机;

S4:主机系统的Kernel接收到数据后,会认为这些数据是鼠标发过来的数据,并通过驱动上报给系统,以完成模拟。

通过上例所提供的智能眼镜和具体的实现方式,可以增强游戏的真实感,达到了以第一人称头部视角代替手动鼠标来控制游戏的目的,增大了游戏的乐趣。具体的,通过眼镜内部的重力传感器代替主机上的鼠标,可以增加游戏的新鲜感,游戏中的瞄准度会更高。

因为采用的HID协议,从而使得上述的装置和方法中所涉及的驱动可以是基于Linux平台的,也可以是基于Windows系统的,可以实现多种系统和设备的兼容。

显然,本领域的技术人员应该明白,上述的本发明实施例的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明实施例不限制于任何特定的硬件和软件结合。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

9页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:虚拟场景显示方法、装置、电子设备及存储介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类