CN202600620U - 利用鞋子代替键盘鼠标作为计算机外设的实现装置 - Google Patents
利用鞋子代替键盘鼠标作为计算机外设的实现装置 Download PDFInfo
- Publication number
- CN202600620U CN202600620U CN 201220260207 CN201220260207U CN202600620U CN 202600620 U CN202600620 U CN 202600620U CN 201220260207 CN201220260207 CN 201220260207 CN 201220260207 U CN201220260207 U CN 201220260207U CN 202600620 U CN202600620 U CN 202600620U
- Authority
- CN
- China
- Prior art keywords
- module
- shoes
- mouse
- information
- keyboard
- 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
Images
Landscapes
- Position Input By Displaying (AREA)
Abstract
本实用新型公开一种利用鞋子代替键盘鼠标作为计算机外设的实现装置,所述的装置包括设置在鞋子上的无线传感综合模块和设置在PC机终端的上位机接收模块,二者之间通过无线通讯方式连接;设置在鞋子内的无线传感综合模块采集和确定鞋子的运动信息,然后将鞋子的运动信息根据当前键盘模式或鼠标模式转换为相应的键盘扫描码或者鼠标移动信息和按键信息,达到利用鞋子的运动信息代替键盘或鼠标的作用。本实用新型将鞋子的运动信息与键盘和鼠标输入建立一个可变化的映射表,作为一种新型的人机交互式,既可以为残疾人控制计算机使用,还可以用于电子游戏娱乐,完成人体脚部移动对游戏人物移动的控制,控制方式灵活多变适应范围广。
Description
技术领域
本实用新型涉及一种基于传感器与电子通讯技术的新型鞋子,属于自动化、电子通讯以及计算机接口技术领域。特别地,涉及一种在鞋子底部植入传感器从而精确还原出脚部运动数据,进而通过计算机接口技术实现脚步运动代替键盘按键以及鼠标移动的方法。
背景技术
随着信息科学的发展,体感运动的兴起让越来越多的人机交互产品具有了体感的特征。如联想公司的3D体感控制器鼠标,任天堂的wii游戏主机,微软的XBOX Kinect等。这些设备通过内置传感器或者外置摄像头的方式,来获得人体的运动数据从而实现人机交互。其中联想公司的3D体感控制鼠标,是一种利用无线通讯技术,通过采集使用者手的挥动动作,从而将挥动信息传输到PC端的无线接收模块,从而代替键盘上某个按键输入,可以进行PC游戏的控制;同时也可以感应鼠标在空置的移动,实现对鼠标的代替控制。但是在制鞋领域,尚未出现通过检测人体脚部的运动,利用无线连接的方式,进而代替键盘或者鼠标的发明出现。
实用新型内容
本实用新型利用了一种可以检测出人体脚部移动的无线传感综合模块,并将其轻量化小型化,便于放入鞋子内,通过无线传输模块,将人体的脚部移动信息传输到PC机等智能终端。PC机终端的智能设备数据接收通过一个USB接口的上位机接收模块实现,上位机接收模块内部由单片机控制无线传输模块接收人体脚部移动信息,并转换为标准的键盘或鼠标扫描码,再转换为USB标准信号输出给PC机的USB接口,触发BIOS 09H硬件中断,通知PC机有按键按下,进而将预先映射完成的键盘扫描码送到内存BIOS数据区的键盘缓冲区,从而实现了用鞋子的移动代替键盘输入的功能;此外,对于代替鼠标,则可利用单片机控制无线传输模块接收人体脚部移动信息,通过一定的逻辑映射关系,将脚部在地平面上移动数据映射为鼠标在屏幕上的位置,以及用户脚步的动作映射为鼠标按键,并通过触发硬件INT33H中断,读取鼠标的位置与鼠标按键的状态。本实用新型完成了一个无线键盘和无线鼠标的功能,并将传统的鼠标和键盘的按键输入引发硬件中断,变成了感应人体脚部的移动引发硬件中断,完成了类似于无线键盘和无线鼠标的功能。此外,本实用新型还提供了一种基于系统底层API函数,将用户脚部动作映射为键盘按键和鼠标移动等消息的方法。
本实用新型实用新型提供一种利用鞋子代替键盘鼠标作为计算机外设的实现装置,所述的装置包括设置在鞋子上的无线传感综合模块和设置在PC机终端的上位机接收模块,所述的无线传感综合模块与上位机接收模块之间通过无线传输模块连接;所述的无线传感综合模块包括用于采集鞋子加速度信息的加速度传感器;用于采集鞋子的转动信息的角度传感器;用于采集地磁场强度信息的磁阻传感器;用于调理加速度信息和地磁场强度信息的信号调理单元;用于将信号调理单元的发送信息解算并还原出鞋子在世界坐标系下的运动信息,并将鞋子的运动信息经过无线传输模块发送给上位机接收模块的中央处理单元;用于无线传感综合模块和上位机接收模块之间进行无线通讯的无线传输模块和用于为所述的加速度传感器、角度传感器、磁阻传感器、信号调理单元、中央处理单元和无线传输模块供电的电源单元;所述的加速度传感器与磁阻传感器分别与信号调理单元连接,信号调理单元与角度传感器又分别与中央处理单元连接,中央处理器单元采用基于ARM的芯片,直接通过无线传输模块连接上位机接收模块;上位机接收模块主要包括无线传输模块、单片机、USB/UART接口转换芯片、电源芯片以及USB接口,所述的无线传输模块与USB接口之间顺次连接单片机和USB/UART接口转换芯片,所述的无线传输模块、单片机以及USB接口分别与电源芯片连接。
所述的上位机接收模块中的无线传输模块采用ZigBee模块,USB/UART接口转换芯片为FT232R,电源芯片采用AMS1117。
所述无线传感综合模块设计上以小型化、轻量化为核心理念,采用集成度较高的ARM芯片,以减小无线传感综合模块电路板的大小和重量,使其可以方便的嵌入鞋子底部。本实用新型设计为无线传感综合模块与鞋子可分离式,可分离式设计也便于给无线传感综合模块充电。
本实用新型包括两种工作模式,即键盘模式和鼠标模式,可通过PC端的软件进行设置,在设备初始上电时刻,通过上位机将工作模式以及相关参数以无线传输模式传输给下位机,以实现人体脚部移动代替键盘鼠标输入的不同功能。
无线传感综合模块作为采集用户脚部动作信息的核心模块,其包括以下关键子模块:
(1)基于三轴加速度计的三自由度的加速度传感器;(2)基于数字陀螺的旋转角度传感器;(3)磁阻传感器;(4)基于ARM的中央处理单元;(5)基于无线通讯模块的信号发送和接收单元;(6)独立供电的可充放电电源单元。加速度传感器采集脚部在三维空间内的三个轴上的位移信息,旋转角度传感器采集鞋子的转动角度信息,磁阻传感器采集地磁场强度信息,加速度信息与地磁场强度信息经过信号调理单元调理后,与转动角度信息一起通过以ARM作为核心的中央处理单元,最后将经过处理的信息利用无线传输模块的信号发送单元以无线信号的方式发送出去给上位机接收模块。中央处理单元选用自带高精度AD采集以及看门狗的ARM芯片。AD采集用于获得经过信号调理单元调理的加速度传感器单元的电压输出,并还原为加速度信息,经过对时间的一次积分得到速度信息,经过对时间的第二次积分得到位移数据。看门狗用于当处理器程序跑飞或者处于死机状态时,看门狗将从硬件上对处理器进行强制复位,使处理器重新进入正常工作模式。其中无线传感综合模块内部设置有ROM用于存储出厂时的唯一标识SN号和左右鞋标识ID号,即每一块成品的模块都是依靠烧写进ROM的不同信息进行区分的,类似于产品的出厂序列号。
上位机接收模块,作为接收和处理鞋子中无线传感综合模块所发送信息的模块,其核心在于通过无线通讯协议,与无线传感综合模块建立连接并接收相关数据,并按照初始化时刻的工作模式以及工作参数,将用户脚部的运动信息映射为键盘和鼠标的输入,得到键盘扫描码或者鼠标移动信息和按键信息,并将输入信息转换为标准的USB外设信号,触发相应的硬件中断,将键盘扫描码或者鼠标移动和按键信息传输给BIOS的缓冲区。
本实用新型提供的一种鞋子代替键盘鼠标作为计算机外设的方法的一般工作流程包括以下步骤:
(1)开启鞋子电源,选择工作模式鼠标或者键盘模式,下位机初始化,并为无线传感综合模块上电;
(2)开启上位机接收模块,进行无线搜索,匹配周围的存在无线传感综合模块,开始自组网工作。若搜索到符合协议的设备,则自动进行连接;如果超过阈值时间T秒(可设),仍然没有搜索到可匹配的相应设备,则自动转入连接失败处理程序;如果搜索到可匹配的下位机无线传感综合模块,自动进行连接,实现子节点的自动入网,并建立通讯连接。
(3)自组网成功并且通讯建立完毕后,上位机通过PC端软件的预先设置,将预设的工作模式发送给下位机;完成工作模式以及工作参数设置后上位机向下位机发送开始采集指令,同时通过上位机的软件应用提示用户可自由移动;
(4)中央处理单元按照预设的时钟周期对采集到的数据进行解算,还原出位移及其角度信息,并作为脚部运动信息数据存储于缓存中,具体为:加速度传感器获得鞋子的三个坐标轴方向上的加速度,分别记作ax,ay,az,利用两次积分运算获得鞋子局部坐标系XbYbZb三个轴向上的位移Δxb,Δyb ,Δzb;利用数字陀螺,检测出鞋子绕局部坐标系轴向的转动角度,记作θX,θY,θZ;利用磁阻传感器,测量出鞋子局部坐标系XbYbZb三个轴向上的地磁场强度,记做mx,my,mz。
(5)中央处理单元基于捷联惯导系统的公知方法,由加速度计和数字陀螺所测量得到的Δxb,Δyb ,Δzb,θX,θY,θZ,计算得到鞋子局部坐标系相对于世界坐标系的位置(xn,yn,zn)和姿态角(θ,γ,ψ);
当鞋子处于静止或低速平稳运动时,使用根据加速度计和磁阻传感器计算得到的姿态角对根据捷联惯导算法计算得到的姿态信息进行修正,具体:使用三轴加速度信息计算出俯仰角θ和横滚角γ;结合姿态角信息和磁阻传感器测量到的地磁场强度信息计算得到磁航向,磁航向加上当地磁偏角得到地理航向角ψ',得到最终的鞋子的位置(xn,yn,zn)和修正后的姿态角(θ,γ,ψ),作为鞋子的六自由度运动数据发送至上位机;
(6)上位机接收模块按照设定的周期,定时接收鞋子中的无线传输模块发送的鞋子运动信息。上位机中的单片机将人体脚部的移动信息映射为键盘和鼠标输入,并触发硬件中断,分别根据两种工作模式,触发键盘中断或鼠标中断,将所映射的键盘扫描码或鼠标位置等信息传输到BIOS数据缓冲区,以备系统调用;
(7)如果上位机直接控制发送结束指令,则采集与通讯工作流停止,并退出本次应用;
(8)重新选择工作模式,转入步骤1;或直接退出程序并关闭鞋子电源。
本实用新型利用鞋子的运动信息代替键盘或鼠标,作为计算机的一种外设。本实用新型采用了无线通讯技术,实现了无线键盘和鼠标的功能,更便于用户使用,所采用无线模块可以基于蓝牙,Zigbee等;此外还提供了一种基于操作系统底层API实现脚部动作到键盘鼠标按键映射的方法,从软件层面上给出了代替键盘鼠标的解决方案。本实用新型实现了一种新颖的计算机控制方式,可以作为一种新型的人机交互式,同时可以为残疾人(没有手或手部有残疾的人)来控制计算机使用,还可以用于电子游戏娱乐,完成人体脚部移动对游戏人物移动的控制。此外用户可以在两只脚上分别安装无线传感综合模块,以扩展出更多的动作,从而进行更多的键盘和鼠标操作映射。
本实用新型的创新性和优点在于:
1、设计了一种相当于无线鼠标和无线键盘的计算机外设的鞋子。提出了一种脚部动作控制键盘和鼠标的新方法,填补了该领域的空白;
2、采用了底层的计算机接口技术,参考标准键盘和鼠标的设计原理,由单片机将接收到的运动数据映射为键盘扫描码或鼠标移动信息,利用硬件中断,实现BIOS级的鼠标和键盘代替,是一种真正的计算机外设;
3、设计了一种灵活的映射关系,将人体脚部的动作与键盘和鼠标输入建立一个可变化的映射表,灵活多变适应范围广。在PC机终端,通过软件可以对人体运动信息和键盘动作直接做一个映射,比如,人体往前移动,可以映射为“向上”按键,也可以映射为“W”按键。只需要通过软件对上位机进行工作参数的设置即可,也即传输一个映射表;
4、给出了一种基于操作系统底层API函数实现脚部动作到键盘鼠标按键的映射方法,从软件层面上代替键盘鼠标输入,方式更为灵活;
5、可以作为手部有残疾的人士专用的无线计算机外设,用以操作计算机,实现人机交互;
6、该方法具有可扩展性,用户可以一只脚安放无线传感综合模块,也可以双脚同时安放无线传感综合模块,实现更多的按键输入和鼠标操作;
7、采用陀螺仪,加速度计,磁阻传感器组成的小型航向姿态测量系统,采用基于多传感器数据融合技术,对陀螺仪计算的姿态角进行实时修正,提高姿态信息的计算精度,有效降低因陀螺仪漂移,精度低带来了姿态误差;
8、采用的角度传感器,磁阻传感器,中央处理单元,无线传输模块等各个器件和模块具有体积小,重量轻,低成本,功耗小的特点,可以实现低成本条件下长时间具有较高精度的运动数据测量和解算。
附图说明
图1为设置有无线传感综合模块的鞋子结构示意图;
图2为鞋子上局部坐标系示意图;
图3为本实用新型中的无线传感综合模块与上位机接收模块的结构示意图;
图4为无线传感综合模块采集运动信息的工作流程图;
图5为本实用新型中的子节点入网流程图;
图6为本实用新型中运动信息的采集和传输过程流程图;
图7为上位机接收模块的硬件组成结构示意图;
图8为本实用新型中鞋子局部坐标系和世界坐标系之间的关系图;
图9为XmOmYm与世界坐标系XnOnYn的旋转关系图。
具体实施方式
下面将结合附图和实施例对本实用新型作进一步的详细说明。
本实用新型所述的一种可以代替键盘和鼠标作为计算机外设的方法及装置,如图1所示,所述的装置中,在鞋子1底部设置有无线传感综合模块2,所述的无线传感综合模块2与上位机接收模块3之间基于无线通讯进行连接,本实用新型采用在无线传感综合模块2和上位机接收模块3中分别设置无线传输模块的发送端和接收端的方式实现数据信息传输,也可以分别在无线传感综合模块2和上位机接收模块3中各设置一个无线传输模块。上位机接收模块3直接与PC机等终端设备连接,本实用新型中采用USB端口连接。所述的无线传感综合模块2与上位机接收模块3进行通信,上位机接收模块3用于接收鞋子1的运动信息。无线传感综合模块2上采用高效的ARM处理器芯片,脚部六自由度运动数据的解算过程全部在无线传感综合模块2内部完成,实现了更高的集成度。所述的无线传感综合模块2安置在鞋子底部。
所述的装置的硬件系统总体结构实现如附图3所示,包括无线传感综合模块和上位机接收模块,所述的无线传感综合模块:含加速度传感器、角度传感器、磁阻传感器、信号调理单元、中央处理单元、无线传输模块和电源单元,所述的电源单元用于为加速度传感器、角度传感器、磁阻传感器、信号调理单元、中央处理单元、无线传输模块供电;所述的加速度传感器采集鞋子加速度运动信息并经过信号调理单元调理为可用信号后,与角度传感器采集的鞋子角度信息以及磁阻传感器的地磁场强度信息一起发送到中央处理单元,经过解算还原出鞋子在世界坐标系下的运动信息,并将鞋子的运动信息经过无线传输模块的发送端发送给上位机接收模块;上位机接收模块:含无线传输模块或无线传输模块的接收端、单片机、USB/UART接口转换芯片、电源芯片以及USB接口,所述的无线传输模块的接收端接收无线传感综合模块2中的无线传输模块上发送端的数据,并通过接口转换后,转换为可传输的格式。
所述的加速度传感器为三轴加速度计,采用KXR94加速度计芯片,KXR94是Kionix公司生产的三轴加速度计。该加速度计内部已经对温度和电压波动引起的偏差进行了设计补偿,因此由于电压和温度引起的偏差较小。该器件测量范围为±2g,灵敏度系数为560mV/g,非线性度为0.1%,工作电压为2.8~3.3V;该加速度计功耗很低,静态电流约1.1mA,可以满足整体设计的低功耗要求。KXR94三路输出分别代表X轴输出、Y轴输出、Z轴输出,提供给后续信号调理单元之后最终被中央处理单元的ARM的AD采集。
所述的角度传感器采用ST公司的L3G4200D数字输出陀螺仪。该陀螺仪具有I2C/SPI数字输出接口,16比特率值的数据输出,2.4V~3.6V的宽电源工作电压,嵌入式power-down和睡眠模式,高抗撞击能力,可以满足设计的低功耗防撞击的要求。L3G4200D获得的角度信号可以直接传给中央处理单元中的ARM使用。
所述的磁阻传感器为霍尼韦尔公司的HMC5843,HMC5843是一款三轴磁阻传感器,具有12-bit ADC,低电压运行(2.5-3.3V)。HMC5843采用霍尼韦尔的各向异性磁阻(AMR)技术,主要特点在于轴向高灵敏度和线性、固相结构、垂直轴间低灵敏度,用于测量地球磁场的方向和磁力,从十万分之几高斯到6高斯(gauss)。
所述的中央处理单元是ARM7 LPC1769。该芯片采用Cortex-M3微处理器,主频最高可达到120MHz,可以满足对传感器信息实时采集并且在线计算得到姿态信息,位移信息的要求,LPC1769具有体积小,成本低,价格便宜的特点,可以有效实现本实用新型集成度高、低功耗、低成本的嵌入式应用。LPC1769包含高达512KB的flash存储器、64KB的数据存储器、以太网接口、8通道DMA控制器、4个UART、2条CAN通道、2个SSP控制器、SPI接口、3个IIC接口、8通道的12位ADC、10位DAC、电机控制PWM等,接口丰富,操作简单。ARM处理器通过自带AD采集三路加速度计信息和三路磁阻传感器信息,通过SPI接口读取陀螺仪信息,得到全部传感器的数字信号后通过姿态航向解算算法在线得到姿态信息,将最终结果通过无线传输模块传送至外部设备。工作过程如附图6所示ARM初始化后开始采集加速度、角度、磁阻传感器信息,采集完毕后,进入数据解算程序,即将加速度解算为鞋子的位移并解算得到鞋子相对于世界坐标系的姿态角,作为鞋子的运动信息存入片上缓冲区,并将鞋子运动信息向上位机接收模块发送。
无线传输模块采用ZigBee模块。ZigBee无线通信技术是一种低速率、低功耗、低复杂度、低成本的双向无线通信网络技术,可广泛应用于工业监控、安全系统、传感器网络、智能家居等领域。ZigBee的优势在于低功耗,相较蓝牙或者WiFi待机时间可提高几十倍;低成本,降低了对通讯控制器的要求,而且协议专利免费;高容量,一个主节点可以管理多个子节点,最多可达254个子节点;此外还具有短时延,高安全,免执照频段等优势。Zigbee模块可以满足设计应用的要求。无线传输模块包括发送和接收两部分,分别安装在无线传感综合模块以及上位机接收模块中,用于数据通信。
电源单元采用锂电池供电,并加入AMS1117-3.3作为电源稳压芯片,使电源单元输出稳定为3.3V,可以为ARM、三轴加速度计、数字陀螺仪、及无线传输模块供电。AMS1117-3.3芯片输入电压范围4.75~12V,输出电压3.267~3.333V,输出电流1A,工作温度-40~125℃。电池采用可充电锂电池,工作电压6V,充放电次数可达500次,即使使用很频繁也可以保证至少一年的使用时间。
上位机接收模块主要包括了无线传输模块、单片机、USB/UART接口转换芯片、电源芯片以及USB接口。如附图7所示。无线传输模块主要用于接收无线传感综合模块发送过来的鞋子的运动信息数据。而信号类型转换芯片为FT232R,FT232R为USB/UART转换芯片,其主要功能是在内部硬件逻辑作用下实现USB和一步串行数据传输接口的转换。芯片内部继承了1024位的EEPROM和多频率时钟发生器(6MHz,12MHz,24MHz,48MHz)。电源芯片采用上文提到的AMS1117-3.3,提供3.3V输出为FT232R和Zigbee模块供电。USB接口用于与终端设备如PC机相连,完成数据传输以及电源供电功能。
如附图4所示,采用上述的无线传感综合模块采集运动数据的工作流程可以描述为:
1.打开电源并选择工作模式:鼠标或键盘工作模式。
2.在上位机接收模块已经插入PC机,且上位机软件打开的情况下,打开无线传输综合模块电源;中央处理单元的ARM、加速度计、数字陀螺、磁阻传感器、信号调理单元以及电源单元进行上电和初始化;
3.无线传输模块开始自组网工作,子节点的入网流程如附图5所示,具体为:
(A)需接入的节点上电电并初始化,延时后,判断子节点是否收到信标帧,如果没有收到,则认为子结点入网失败;如果收到,则转(B);
(B)监听信标帧选择主节点;
(C)下位机无线传输模块发送入网请求给上位机接收模块,如果下位机接收到主节点的回复,则转(D);如果下位机没有接收到主节点回复,则转(E);
(D)分配短地址给子节点,此时子节点入网成功;
(E)判断是否存在主节点,如果没有主节点则认为子结点入网失败,如果存在主节点,则返回(B);
4.组网成功后上位机接收模块发送鞋子数据采集指令,中央处理单元开始采集加速度传感器、角度传感器、磁阻传感器的数据;
5.加速度传感器采集鞋子加速度运动信息并经过信号调理单元调理为可用信号后,与角度传感器采集的鞋子角度信息以及磁阻传感器的地磁场强度信息一起发送到中央处理单元进行解算,得到鞋子的运动信息,包括鞋子的位置信息和角度信息;
6.将缓存中运动信息数据通过无线传输模块进行传输,传输给上位机接收模块;
7.上位机接收模块接收运动信息数据,后通过USB直接连接PC机。上位机中的单片机将人体脚部的移动信息映射为键盘和鼠标输入,并触发硬件中断,分别根据两种工作模式,触发键盘中断或鼠标中断,将所映射的键盘扫描码或鼠标位置等信息传输到BIOS数据缓冲区,以备操作系统调用。
8.如果上位机直接控制发送结束指令,则采集与通讯工作流停止,并退本次应用;
9.重新选择工作模式,转入步骤1;或直接退出程序并关闭鞋子电源。
其中人体脚部运动信息解算采用捷联惯导算法,鞋子处于运动状态时,使用陀螺仪测量的所在轴向的旋转角速率代入捷联惯导算法中计算得到鞋子的姿态角。在计算姿态角之前,先需对计算过程中使用到的坐标系进行具体定义。
1、鞋子局部坐标系
原点为本实用新型完成的姿态航向测量参考系统(鞋子上的无线传感综合模块)的几何中心,xb,yb,zb轴分别指向鞋子的横轴、纵轴和竖轴向上,如图2。
2、世界坐标系
原点为初始状态下鞋子局部坐标系的原点,xn,yn,zn三轴分别指地理东向、北向、天向。
姿态角实际上是世界坐标系O-ENU东北天与鞋子局部坐标系之间的方位关系,设ψ为航向角,θ为俯仰角,γ为横滚角,各角度取绕鞋子局部坐标系坐标轴逆时针旋转为正,即航向角鞋子北偏西为正,俯仰角鞋子抬头为正,横滚角鞋子右侧向下为正。世界坐标系绕zn轴转ψ角,绕xn轴转θ角,再绕yn轴转角γ,则得鞋子局部坐标系和世界坐标系之间的关系如附图8所示。
完成坐标系的定义和坐标系之间转换关系的定义后,即可使用捷联惯导算法利用陀螺仪测量所在轴向旋转角速率实时更新姿态矩阵,解算出姿态角,本实用新型使用四元数法更新姿态矩阵,并采用四阶龙格库塔法解算微分方程。具体的解算步骤如下:
1、确定姿态矩阵
由世界坐标系和鞋子局部坐标系之间的角度变换关系:航向Yaw(ψ)—俯仰Pitch(θ)—横滚Roll(γ),可得姿态转移矩阵:
2、使用四元数表示姿态矩阵
此处,q0,q1,q2,q3表示四元数。
3、更新四元数微分方程
使用四阶龙格库塔法解四元数微分方程更新四元数:
其中,姿态速率由于本实用新型使用的陀螺仪精度较低,且数值较小,因此在计算姿态速率时直接取f[·]表示微分方程,T表示计算步长,k1,k2,k3,k4表示单步计算结果。在具体计算中,x(t)即为四元数,ω(t),ω(t+T),为t,t+T时刻的旋转角速率。
上述中,即为陀螺仪的输出;为地球坐标系相对于惯性坐标系的自转角速率在导航坐标系中的投影;为导航坐标系相对地球坐标系的角速率在导航坐标系上的投影;为载体坐标系相对于导航坐标系的角速率在载体坐标系中的投影。
4、姿态角的求取
由更新后的四元数更新姿态矩阵,按下式计算出航向角ψ、俯仰角θ和横滚角γ。
θ=sin-1(C23)
由于本系统使用的MEMS陀螺仪精度低,漂移大,根据捷联惯导算法计算得到的姿态角仅具有短时高精度,姿态角误差会不断积累,无法长时间工作,因此需要使用基于惯性数据融合的方法对姿态角进行修正,减少误差的积累。考虑当鞋子平稳低速运动时,忽略哥氏加速度及其他干扰加速度,认为只有重力加速度作用在鞋子上,即满足下式条件:
其中,gx,gy,gz分别为加速度计在三个轴向上的输出,g为地球重力加速度,threshold为预设的阈值,一般为0.2~0.5m/s2。
此时,使用加速度计输出值计算鞋子局部坐标系相对于世界坐标系的俯仰角θ和横滚角γ,并根据俯仰角和横滚角确定的姿态余弦矩阵将鞋子局部坐标系下测量到的地磁场强度投影到世界坐标系下计算出磁航向,磁航向经当地磁偏角修正后即可得到地理航向。因此当鞋子处于静止状态或低速平稳状态即满足上述条件时,使用加速度计和磁阻传感器信息计算姿态而不使用陀螺仪测量的旋转角速率计算姿态角,这样可以有效地提高姿态角计算精度并对捷联惯导算法计算的姿态角进行较好修正。具体的计算过程如下所示:
因为
并且
则:
由此可得俯仰角和滚转角分别为:
此时由俯仰角和横滚角确定的姿态余弦矩阵为:
为正交矩阵,故
计算磁航向角公式为:
鞋子的位移通过加速度计所测量得到鞋子局部坐标系的三轴的加速度经过两次积分还原出位移:
加速度信息ax,ay,az,先进行积分运算,得到沿着鞋子局部坐标系三个轴向的速度vx,vy,vz,然后再进行积分运算,计算出时间为Δt的周期内,用户相对于鞋子局部坐标系三个轴的位移Δxb,Δyb,Δzb。具体计算公式如下:
根据上述计算得到的姿态角,则既可将用户在局部坐标系的相对位移Δxb,Δyb,Δzb,投影到世界坐标系中,得到用户在世界坐标系下的相对位移Δxn,Δyn,Δzn。
通过不断的累加计算既可得到鞋子六自由度数据,即人体脚部的运动数据可可表示为在世界坐标系下的位置坐标(xn,yn,zn)和姿态角(θ,γ,ψ)。
本实用新型中,对于键盘的代替可利用映射技术实现,即预先设定一个人体运动与键盘扫描码的映射表。通过计算得到的人体脚部位置坐标(xn,yn,zn)和姿态角(θ,γ,ψ)的变换,映射为不同的按键扫描码。然后利用上位机的中央处理单元,即单片机向主机发送键盘中断和相应的扫描码。具体实现如下:
设置计算周期Tc=k时刻(即第k次计算人体脚部位移和姿态),人体的脚部运动信息为Dk(xk,yk,zk,θk,γk,ψk);则相应的Tc=k+1时刻,人体的脚部运动信息为Dk+1(xk+1,yk+1,zk+1,θk+1,γk+1,ψk+1)。
人体脚部典型的动作有,向前,向后,向左,向右,以及向左前,向右前,向左后,向右后八个方向的移动;以及跳跃,左转,右转。本实用新型以这11个动作为例,给出一个映射方式,实际应用中的动作映射可以是多种多样的。
首先,对于Dk(xk,yk,zk,θk,γk,ψk)和Dk+1(xk+1,yk+1,zk+1,θk+1,γk+1,ψk+1)进行分析,得到用户当前姿态下,也就是当前的航向角ψ下,用户的脚部的移动信息。也就是到底是向前还是向后等。为了便于控制计算机,并去除噪声干扰,我们设置一个阈值DifPos=0.05m,只有用户移动范围超过DifPos我们才认定用户移动了;同理对于姿态,我们设置一个阈值DifAtt=20度,只有超过20度我们才认为用户转动了身体。其中具体的阈值可以根据不同的应用具体的修改。参考阈值,可以得到用户沿着当前航向的移动信息,得到用户具体的动作,如上文所述的11个动作。
本实施例中针对11个动作给出两种典型映射表,并给出键盘扫描码,实际应用中用户的具体动作可以是多种多样的。
表1 映射表1
序号 | 人体脚部动作 | 键盘按键 | 键位置 | 十六位映射扫描码 |
1 | 向前移动 | ↑ | 72 | 48 |
2 | 向后移动 | ↓ | 80 | 50 |
3 | 向左移动 | ← | 75 | 4B |
4 | 向右移动 | → | 77 | 4D |
5 | 向左前移动 | W | 17 | 11 |
6 | 向左后移动 | A | 30 | 1E |
7 | 向右前移动 | S | 31 | 1F |
8 | 向右后移动 | D | 32 | 20 |
9 | 左转 | Enter | 28 | 1C |
10 | 右转 | Space | 57 | 39 |
11 | 原地跳跃 | ESC | 1 | 01 |
表2 映射表2
序号 | 人体脚部动作 | 键盘按键 | 键位置 | 十六位映射扫描码 |
1 | 向前移动 | 8 | 9 | 09 |
2 | 向后移动 | 2 | 3 | 03 |
3 | 向左移动 | 4 | 5 | 05 |
4 | 向右移动 | 6 | 7 | 07 |
5 | 向左前移动 | 7 | 8 | 08 |
6 | 向左后移动 | 1 | 2 | 02 |
7 | 向右前移动 | 9 | 10 | 0A |
8 | 向右后移动 | 3 | 4 | 04 |
9 | 左转 | 5 | 6 | 06 |
10 | 右转 | 0 | 11 | 0B |
11 | 原地跳跃 | Enter | 28 | 1C |
上位机中的单片机,通过映射关系,将用户所作的动作,识别为键盘的输入扫描码,将扫描码转换为ASCII码,低字节为ASCII码,高字节为系统扫描码。并将ASCII码和扫描码发送到系统BIOS缓冲区,已备操作系统调用,从而实现键盘的输入功能。
本实用新型中,对于鼠标的移动功能代替是直接利用用户相对移动实现的。具体如下:
对于Dk(xk,yk,zk,θk,γk,ψk)和Dk+1(xk+1,yk+1,zk+1,θk+1,γk+1,ψk+1)得到用户当前姿态下,用户的脚部的移动信息。将用户沿着地平面XOY平面下的移动,直接映射到计算机内部屏幕坐标系中。具体实现方法如下:
启动鼠标功能时,在芯片系统初始化时,可计算得到用户面向的方向,也就是初始航向ψ0;PC客户端将本机显示器的分辨率作为初始化参数之一发送给上位机接收器,存入单片机RAM中,例如屏幕宽度Width=1024像素,高度Height=768像素;并将比例尺参数Scale作为参数传输给上位机接收器,例如这里将Scale=0.05,意思为当用户脚部移动0.05米,相当于屏幕坐标系下鼠标移动一个像素。
如图9所示,建立一个在地平面上的二维坐标系XmOmYm,作为鼠标模式下脚部移动的坐标。为了便于用户控制鼠标,本实用新型设定用户在系统初始化时刻Tc=0时刻,其在世界坐标系下航向角为ψ0的方向,就是Ym轴正向,向右侧方向是Xm轴正向;另外设定系统初始化时刻,用户所在位置为二维坐标系XmOmYm的(Width/2,Height/2)处,Width是屏幕宽度,单位像素,Height是屏幕的高度,单位像素,对应的物理含义为用户脚当前的位置正好对应计算机屏幕的中心点,也是为了便于用户后期的操作与控制鼠标。其中,XmOmYm与世界坐标系XnOnYn的旋转关系如图9所示。
由上述的惯导系统解算得到脚部移动的数据对于Dk(xk,yk,,γk,ψk,和Dk+1(xk+1,yk+1,zk+1,θk+1,γk+1,ψk+1)可以计算得到,用户相对于世界坐标下,在XnOnYn面上的位移(Δxn,Δyn),则根据2D坐标旋转公式,可得到XmOmYm平面下的位移(Δxm,Δym),计算过程如下:
其中在图9二维坐标系下,角度的正负定义也遵循右手定则。
由于计算屏幕坐标系在Windows系统下是左手系,这里用XpcOpcYpc表示,其定义为屏幕左上角为原点,向右为X轴正方向,向下为Y轴正方向。因此为了让用户更加直观的控制鼠标,也为了让用户保持对鼠标的原有操作感,这里还要做一个坐标的转换,则Tc=k+1时刻即当前鼠标的实际位置[xpc(k+1),ypc(k+1)]应为:
k=0时刻,可以由实际需要,指定一个位置作为鼠标控制的初始位置,例如本是实例中将屏幕中心作为鼠标的初始位置,即初始时刻鼠标光标所在位置设为也可以通过系统级调用,查询得到当前用户在启动鞋子鼠标控制功能的时刻系统光标所在的位置,设该时刻系统鼠标位置为[xpc(0),ypc(0)],即可递推计算得到鼠标的在Tc=k+1时刻的位置[xs(k+1),ys(k+1)]。
上位机中的单片机,将鼠标位置数据传输USB口,触发INT 33H硬件中断,将鼠标的位置数据读取到系统缓冲区;对于鼠标按键,可以将用户的脚部动作映射为左键或者右键,具体动作可由实际应用而定,触发该动作后,可将寄存器BX的位0置为1,即代表鼠标左键按下,BX的1位置为1,即代表鼠标右键按下。
此外对于手部有残疾的人士,可以调节Scale至合适的值,将一个适当的区域内,比如坐在电脑前一个30cm*30cm的脚部移动区域,映射为整个计算机屏幕,以便于用户移动双脚来实现鼠标的移动控制和按键。
本实用新型中的实施例中的人体脚部动作与键盘按键、鼠标移动的映射,在实际应用中是灵活多变的,并不局限于实施例中的映射方式。
除了上述方式之外,还可以将人体脚步的动作,通过模拟系统输入的方式,将所接收到的人体动作用以映射为计算机的键盘和鼠标的输入。本实施例中以取代Windows平台中标准鼠标键盘输入为例,其具体实现为:
由前述的表1为例,设已经检测到了人体相应的动作,并建立完成动作与键盘的映射表。基于Windows API函数,将映射的键盘扫描码(也或虚拟按键值即ASCII码)模拟系统键盘消息,或者鼠标按键消息,直接发送。所采用的Windows API可以是表3中所列函数:
表3 可用作模拟键盘鼠标事件的Windows API列表
基于以上系统函数,即可完成Windows平台下,模拟键盘鼠标输入的功能,例如可以开发一个虚拟键盘软件,用于直接得到鞋子的运动信息,通过使用者的脚部移动,实现键盘的按键,用于输入文字,玩电脑游戏等等。特别的,可以为手部残疾人士,提供一种软件层面上的模拟键盘鼠标输入方式,实现打字,编辑文本,娱乐等功能。
上述实施例仅用于说明本实用新型,其中各部件的结构、连接方式等都是可以变化的,凡是在本实用新型技术方案的基础上进行的等同变换和改进,均不应排除在本实用新型的保护范围之外。
Claims (2)
1.一种利用鞋子代替键盘鼠标作为计算机外设的装置,其特征在于:所述的装置包括设置在鞋子上的无线传感综合模块和设置在PC机终端的上位机接收模块,所述的无线传感综合模块与上位机接收模块之间通过无线通讯方式连接;所述的无线传感综合模块包括:
用于采集鞋子加速度信息的加速度传感器;
用于采集鞋子的转动信息的角度传感器;
用于采集地磁场强度信息的磁阻传感器;
用于调理加速度信息和地磁场强度信息的信号调理单元;
用于将信号调理单元的发送信息解算并还原出鞋子在世界坐标系下的运动信息,并将鞋子的运动信息经过无线传输模块发送给上位机接收模块的中央处理单元;
用于无线传感综合模块和上位机接收模块之间进行无线通讯的无线传输模块和
用于为所述的加速度传感器、角度传感器、磁阻传感器、信号调理单元、中央处理单元和无线传输模块供电的电源单元;
所述的加速度传感器与磁阻传感器分别与信号调理单元连接,信号调理单元与角度传感器又分别与中央处理单元连接,中央处理器单元采用基于ARM的芯片,直接通过无线传输模块连接上位机接收模块;上位机接收模块主要包括无线传输模块、单片机、USB/UART接口转换芯片、电源芯片以及USB接口,所述的无线传输模块与USB接口之间顺次连接单片机和USB/UART接口转换芯片,所述的无线传输模块、单片机以及USB接口分别与电源芯片连接。
2.根据权利要求1所述一种利用鞋子代替键盘鼠标作为计算机外设的装置,其特征在于:所述的上位机接收模块中的无线传输模块采用蓝牙或ZigBee模块,USB/UART接口转换芯片为FT232R,电源芯片采用AMS1117。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201220260207 CN202600620U (zh) | 2012-06-04 | 2012-06-04 | 利用鞋子代替键盘鼠标作为计算机外设的实现装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201220260207 CN202600620U (zh) | 2012-06-04 | 2012-06-04 | 利用鞋子代替键盘鼠标作为计算机外设的实现装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN202600620U true CN202600620U (zh) | 2012-12-12 |
Family
ID=47318149
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201220260207 Expired - Fee Related CN202600620U (zh) | 2012-06-04 | 2012-06-04 | 利用鞋子代替键盘鼠标作为计算机外设的实现装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN202600620U (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103529960A (zh) * | 2013-10-11 | 2014-01-22 | 浙江大学 | 一种基于磁定位技术的空中鼠标及方法 |
CN103698741A (zh) * | 2013-10-11 | 2014-04-02 | 浙江大学 | 射频供电的电磁定位探头 |
WO2016037879A1 (en) | 2014-09-09 | 2016-03-17 | Universität Zürich | Size-adjustable sensor shoes |
CN105486275A (zh) * | 2015-11-19 | 2016-04-13 | 中国兵器工业集团第二一四研究所苏州研发中心 | 一种基于9轴惯性测量单元的磁偏角计算方法 |
DE102015210165A1 (de) | 2015-06-02 | 2016-12-08 | Robert Bosch Gmbh | Vorrichtung und Verfahren zur Steuerung eines Benutzerendgeräts |
CN108120438A (zh) * | 2017-12-15 | 2018-06-05 | 北京工商大学 | 一种基于imu和rfid信息融合的室内目标快速跟踪方法 |
CN109643170A (zh) * | 2016-08-30 | 2019-04-16 | 微软技术许可有限责任公司 | 具有用于外部化控件的配件连接器的控制器 |
CN109791512A (zh) * | 2016-09-13 | 2019-05-21 | 田昕 | 足势信息获取,检测及应用的方法和设备 |
-
2012
- 2012-06-04 CN CN 201220260207 patent/CN202600620U/zh not_active Expired - Fee Related
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103529960A (zh) * | 2013-10-11 | 2014-01-22 | 浙江大学 | 一种基于磁定位技术的空中鼠标及方法 |
CN103698741A (zh) * | 2013-10-11 | 2014-04-02 | 浙江大学 | 射频供电的电磁定位探头 |
CN103698741B (zh) * | 2013-10-11 | 2017-03-15 | 浙江大学 | 射频供电的电磁定位探头 |
WO2016037879A1 (en) | 2014-09-09 | 2016-03-17 | Universität Zürich | Size-adjustable sensor shoes |
DE102015210165A1 (de) | 2015-06-02 | 2016-12-08 | Robert Bosch Gmbh | Vorrichtung und Verfahren zur Steuerung eines Benutzerendgeräts |
CN105486275A (zh) * | 2015-11-19 | 2016-04-13 | 中国兵器工业集团第二一四研究所苏州研发中心 | 一种基于9轴惯性测量单元的磁偏角计算方法 |
CN109643170A (zh) * | 2016-08-30 | 2019-04-16 | 微软技术许可有限责任公司 | 具有用于外部化控件的配件连接器的控制器 |
CN109791512A (zh) * | 2016-09-13 | 2019-05-21 | 田昕 | 足势信息获取,检测及应用的方法和设备 |
CN108120438A (zh) * | 2017-12-15 | 2018-06-05 | 北京工商大学 | 一种基于imu和rfid信息融合的室内目标快速跟踪方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN202600620U (zh) | 利用鞋子代替键盘鼠标作为计算机外设的实现装置 | |
CN102722248B (zh) | 利用鞋子代替键盘鼠标作为计算机外设的方法及实现装置 | |
CN103150036B (zh) | 一种信息采集系统和方法、人机交互系统和方法及一种鞋 | |
CN104898828B (zh) | 应用体感交互系统的体感交互方法 | |
CN103968827B (zh) | 一种可穿戴式人体步态检测的自主定位方法 | |
CN102109913B (zh) | 基于复合mems传感器的控制器指针定位方法及控制器 | |
CN106020208A (zh) | 一种基于ros操作系统的机器人远程控制方法和远程控制系统 | |
CN106444750A (zh) | 一种基于二维码定位的智能仓储移动机器人系统 | |
CN104898829A (zh) | 体感交互系统 | |
CN101561708B (zh) | 利用动作感测判断输入模式的方法与其输入装置 | |
CN104503608A (zh) | 电子设备及其控制方法 | |
CN103659817B (zh) | 一种机器人救援系统及实现该救援系统的方法 | |
CN106382934A (zh) | 一种高精度移动机器人定位系统和方法 | |
CN104898827A (zh) | 应用体感交互系统的体感交互方法 | |
CN104537829A (zh) | 一种用于智能交通物理仿真平台的智能小车及定位方法 | |
CN201594225U (zh) | 一种带动作识别功能的游戏手柄 | |
CN102818913A (zh) | 一种人体运动信息检测装置及其检测方法 | |
CN107014377A (zh) | 一种基于惯性定位的多功能鞋垫 | |
CN102261915B (zh) | 行人惯性导航装置和方法 | |
CN104345904A (zh) | 一种手指式空中鼠标 | |
CN104386246A (zh) | 四旋翼飞行器 | |
CN202710598U (zh) | 一种人体运动信息检测装置 | |
CN102662468B (zh) | 一种体感鞋及其人机交互方法 | |
CN204631773U (zh) | 体感交互系统 | |
CN107894774A (zh) | 一种机器人管理系统及其控制方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20190507 Address after: 314100 Room 213, Block A, Entrepreneurship Center, Guigu Park, Luoxing Street, Jiashan County, Zhejiang Province Patentee after: Zhejiang micro run Technology Co., Ltd. Address before: 100191 Xueyuan Road, Haidian District, Beijing, No. 37 Co-patentee before: Liu Gaofeng Patentee before: Song Zijian |
|
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20121212 Termination date: 20190604 |