重力感应游戏可行性办法研究
一.手机中的重力感应组件
很多人都知道手机有重力感应这个功能,但是重力感应具体是什么,却并不是很了解。重力感应组件不是摄像头,人们知道有多少万像素,不是触摸屏,人们了解是电容屏还是电阻屏,重力感应就像笼罩着迷雾的山谷,让人难以一探究竟。下文将对重力感应组件进行详细描述。
组件1:加速计
要了解加速计,首先得了解加速计是什么。实质上加速计就是用来检测手机受到的加速度的大小和方向的电子元件,而手机静置的时候是只受到重力加速度的 .所以很多人把加速计功能又叫做重力感应功能。下面列出一个加速计的具体参数及应用:
加速计型号: mma7660
生产厂商:飞思卡尔
? 数字输出(I2C)
? 集成3 轴±1.5 g MEMS传感器和 CMOS接口控制器在同一个封装内
? 可配置数据输出速率:1-120次采样 /秒
? 自动唤醒/ 自动休眠功能来降低功耗
? 方向检测:横向/纵向、正面 /反面识别
? 振动识别和脉冲识别
? 可靠的设计、高抗震性( 10,000 g)
典型应用:
? 手机/PMP/PDA :图像稳定性 , 文字滚动,移动拨号,点击静音
? 硬盘驱动(HDD):自由下落检测
? 笔记本电脑:自由下落检测,防盗
? 计步器
? 运动传感,故障记录仪
从资料可知,加速器就是当前移动设备重力感应功能的核心组件,它能感应到手机收到的加速度的大小以及方向,即加速计是以内部测量组件在各个方向上的受力情况来得到结果。但是否加速计就是手机重力感应的全部组件呢,其实并不尽然,下面介绍手机重力感应功能的另外2个组件。
组件2:陀螺仪
一提到陀螺仪,很多人第一印象会感觉到很无稽,手机内怎么可能有陀螺,其实并非如此。陀螺仪就是内部有一个陀螺,它的轴由于陀螺效应始终与初始方向平行,这样就可以通过与初始方向的偏差计算出实际方向。手机里陀螺仪实际上是一个结构非常精密的芯片,内部包含超微小的陀螺。利用高速回转体的动量矩敏感壳体相对惯性空间绕正交于自转轴的一个或二个轴的角运动检测装置。利用其他原理制成的角运动检测装置起同样功能的也称陀螺仪。下面列出一款陀螺仪的具体参数:
型号: LPR550AL
产品数据:
制造商 : STMicroelectronics
产品种类 : Gyroscopes
RoHS : 是
传感轴 : Dual
灵敏度 : 0.5 mV/deg/s
输出类型 : Analog - Voltage
电源电流 : 6.8 mA
封装 / 箱体 : LGA-16
封装 : Tray
最大工作温度 : + 85 C
最小工作温度 : - 40 C
电源电压(最大值) : 3.6 V
电源电压(最小值) : 2.7 V
封装: TRAY
描述: LPR550AL Series Dual Axis Pitch and Roll ±500° /s Analog Gyroscope LGA-16
陀螺仪传感器的应用:
1.带有照相机的手机 & PDAs:图像稳定
2.照相机和摄像机:图像稳定
3.游戏机:姿态识别
4.机器人技术:翻转检测, 倾度测量
5. 汽车电子: 不安全因素,主动 /被动安全装置
6.GPS 导航系统: 导航支持, 推算定位技术
7.计算机: 姿态识别
由资料可知,陀螺仪测量是参考标准是内部中间在与地面垂直的方向上进行转动的陀螺。通过设备与陀螺的夹角得到结果。
组件3:磁力计
磁力计是测试磁场强度和方向的。磁力计的原理就是中学物理中涉及到的那个最简单的指南针了。下面列出一款常用磁力计的具体参数:
产品型号:三轴磁力计 MAG3110
生产厂家:飞思卡尔
SCL时钟:最大400KHz
写地址: 0x1C
读地址: 0x1D
写时序: I2C起始位——MAG3110写地址——目标寄存器地址——写入数据——停止位
读时序: I2C起始位——MAG3110写地址——目标寄存器地址——重复起始位—— MAG3110读地址——接受数据——停止位
总结: 陀螺仪的强项在于测量设备自身的旋转运动。对设备自身运动更擅长。但不能确定设备的方位。
加速计的强项在于测量设备的受力情况。对设备相对外部参考物 (比如,地面)的运动更擅长。但用来测量设备相对于地面的摆放姿势,则精确度不高。
磁力计的强项在于定位设备的方位。可以测量出当前设备与东南西北四个方向上的夹角。
陀螺仪对设备旋转角度的检测是瞬时的而且是非常精确的,能满足一些需要高分辨率和快速反应的应用比如 FPS游戏的瞄准。而且陀螺仪配合加速计可以在没有卫星和网络的情况下进行导航,这是陀螺仪的经典应用。加速度计可用于有固定的重力参考坐标系、存在线性或倾斜运动但旋转运动被限制在一定范围内的应用。同时处理直线运动和旋转运动时,就需要把加速度和陀螺仪计结合起来使用。如果还想设备在运动时不至于迷失方向,就再加上磁力计。
二.当前主流手机的重力感应可实现 应用功能研究
介绍了当前手机的重力感应设备,也感受到了当前电子设备功能的强大,是否我们手中的手机就可以实现以上的功能呢,答案是否定的。众所周知,电子产品的的技术是难度是很高的,以陀螺仪为例,其购买途径有:美国 ADI公司 TI 公司 ST公司 俄罗斯 Fizoptika 挪威SENSONOR公司 日本Silicon 美国BEI村田 EPSON 美国CrossbowKVH 国内的一些高校和研究所也在研发生产一些陀螺仪。由资料可知,这些高新技术元件主要生产厂家依然是国外的高科技公司,且主要应用于高新技术产业,一台手机装备了一个用于航天飞行的高新设备,这无论如何都是不可能。所以由于生产成本等等原因所限,我们手机中的电子元件并非能达到实际上如上所述这些效果。
且硬件的功能受到软件所限,硬件再好,驱动无法实现这些功能也是枉然,下面我将介绍下当前我们常用的主流手机重力感应所能实现的功能。
以国内厂家 M8为例(其硬件配置足以与 iphone一代抗衡,虽然有些老,但是原理不变),最容易理解的重力感应理论为用压电传感器 ,利用压电效应,测量内部一片重物 (其实很轻..) 的重力的正交两个方向的分力大小 ,就可以判定水平方向了. DirectInput为游戏杆、头盔、多键鼠标以及力回馈设备等各种输入设备提供了最先进的接口,通过直接与设备驱动程序配合, DirectInput绕过了Windows 消息系统,可提供最佳的性能。效果有四种基本类型:持续力、倾斜效果、周期效果和条件。持续力是单一方向上不改变强度的力。倾斜效果是强度随时间线性变化的持续的力。周期效果是沿着给定的轴重复变化,其量级或者力的强度由周期效果定义。条件则是对用户与游戏杆的交互作用做出响应的效果。这种效果类似一根弹簧,操纵杆向某个方向推得越远,反弹力就越强。
有上述资料可知,当前主流手机所支持的仍然是两轴的感应(当然不排除新出现的高端机型以及 iphone的三轴,但是毕竟是少数)。故其实现的功能就大大受到限制,也可以理解为只能实现的功能只有水平状态下的平面定位,即上下左右倾斜的倾斜及竖立时的左右(理论上前后应该也可以)摇摆,这就大大限制了游戏功能的应用。