一种测量VR健身车的车把转角三轴角度的方法与流程

文档序号:18405713发布日期:2019-08-10 00:21阅读:457来源:国知局
一种测量VR健身车的车把转角三轴角度的方法与流程

本发明属于健身器材控制技术领域,特别涉及一种测量vr健身车的车把转角三轴角度的方法。

技术背景

目前市面上有各种各样的健身单车,有的单车是纯机械的,只供用户骑行锻炼,没有辅助的电子装置;有的单车配备电子装置,可以采集单车的骑行距离、速度,用户消耗的卡路里,但这些健身单车都不能采集车把转角这个运动参数,因此在与vr游戏进行交互时不能很好的控制游戏中需要转角的角色,无法达到良好的游戏效果。



技术实现要素:

本发明的目的是提供一种测量健身车的车把转角三轴角度的方法,能够准确地测量车把转角的角度,更精确的与vr游戏进行配合,从而为健身者提供更好的体验。

本发明的测量健身车的车把转角三轴角度的方法,包括如下的步骤:

s1:采集角速度、加速度原始数据

通过六轴姿态传感器感知车把旋转时的角速度与加速度值;

通过单片机i2c总线读取mpu6050数据寄存器中的角速度、加速度数据;

s2:将加速度数值单位化

vx、vy、vz分三轴上的重力向量。

s3:计算误差

将重力加速度与加速度计原始数据ax、ay、az进行叉乘,得到用于修正陀螺仪角度的误差向量ex、ey、ez

ex=(ay*vz-az*vy)

ey=(az*vx-ax*vz)

ez=(ax*vy-ay*vx)

s4:利用误差向量修正陀螺仪姿态角

将误差向量带入传递函数中,得到修正系数:

η=kpe+kt∫e

s5:利用修正后的陀螺仪姿态角更新四元数

qx(t)、qx(t+t)分别为前一时刻和后一时刻的四元数;

s6:将四元数转化为三轴角度

φ、θ、ψ分别为三轴角度。

本发明再一个方面提供一种能测量健身车的车把转角的系统,包含有:

采集角速度、加速度原始数据的六轴姿态传感器;

传输角速度、加速度数据的蓝牙模块;

对测得的角速度和加速度进行上述方法结算的微处理器芯片。

所述的系统还包含有控制电机的继电器、5v转3.3v电压转换电路、usb接口和指示灯。

本发明方法所测得三轴角度用于与游戏进行交互。

本发明的能测量健身车的车把转角的系统,当车把带动含有电路板的表头转动时,姿态传感器会采集到车把转动的角速度和加速度信息,并通过算法解算出车把的转角。其中的姿态传感器模块是集成了陀螺仪和加速度计的六轴姿态传感器,可以获知载体运动时的角速度和加速度;通过融合这两种传感器的数据,短时间内以陀螺仪得到的角度为最优,定时用加速度计去校准陀螺仪,从而得到整个频带的角度最优值。

附图说明

图1:测量健身车的车把转角的系统示意图;

图2:本发明方法的程序流程图。

图3:本发明方法所测得三轴角度用于与游戏进行交互图。

具体实施方式

申请人在研究中发现,姿态传感器模块获知载体运动时的角速度和加速度,但由于加速度计低频特性较好,角度可以直接由三角函数关系算出,没有积累误差,长时间后也比较转却,而陀螺仪长时间后会累计积分误差,导致输出不准确。

针对上述问题,本发明提供一种能测量健身车的车把转角的系统,可以采集单车运动的距离、速度、卡路里、磁控阻力、以及车把旋转的角度,并通过lcd液晶屏显示出来,还配备蓝牙模块。通过融合这两种传感器的数据,以陀螺仪得到的角度为最优,定时用加速度计去校准陀螺仪,从而得到整个频带的角度最优值。可将这些运动数据发送给游戏端,用于控制游戏角色的控制,不仅可以起到锻炼身体的效果,还可以进行游戏娱乐,大大提高健身设备的可玩性与游戏的趣味性。

下面结合实施例对本发明进行详细的描述

实施例1:测量健身车的车把转角的系统

本发明所提供的测量健身车的车把转角的系统的硬件部分主要有以下几个部分组成(图1):stm32f1芯片,lcd液晶屏,继电器,指示灯,电压转换模块,蓝牙串口模块,六轴姿态传感器mpu6050。其中stm32f1芯片属于高性能,低功耗的32位微处理器;指示灯用于显示表头供电情况,蓝牙是否连接以及阻力的最大最小状态;电压转换模块主要是将5v直流电转换为3.3v,供stm32f1芯片使用;蓝牙串口模块用于将打包好的运动数据发送出去,并接收游戏端的指令;六轴姿态传感器用于采集车把旋转时的角速度与加速度,用于合成角度。继电器模块用于控制电机以调节后轮阻力。

而软件设计采用了ucos嵌入式实时操作系统,可以进行多任务处理,分配时间轮片,提高系统的实时性。在控制阻力电机的任务中,采用了adc采集电位器电压的方式用于初始化电机的位置,并采用定时器来精确控制每增加或减少一段阻力电机旋转的时间。在蓝牙发送数据和接收命令任务中,采用了打开通知的方式发送数据和串口接收回调来接收命令的方式。液晶显示任务中,采用延时刷新的方法来更新液晶屏显示的数据。

硬件模块主要集成在一块两层的电路板上,除了电阻、电容、晶振、三极管等小型电子元件,还包括微处理器、蓝牙模块、姿态传感器模块、lcd以及指示灯。

stm32f1系列芯片的主频为72mhz,属于高性能32位微处理器,可轻松运行复杂的数据处理程序,且外设功能齐全,包括定时器、串口、iic等接口,定时器可用于驱动磁控阻力电机,串口可用于连接蓝牙串口模块,iic接口可用于驱动六轴姿态传感器。蓝牙串口模块可与stm32f1芯片的串口连接,当单片机处理完一组运动数据后,将其打包并通过串口发送出去,蓝牙模块会接收到该组数据,并通过通知的方式发送出去。六轴姿态传感器mpu6050集成了三轴加速度计、三轴陀螺仪,可以采集车把运动时的加速度和角速度,由程序中的算法将这两组数据解算为角度。

lcd液晶屏上的数字和图案用于显示运动时间,骑行速度、距离,消耗卡路里,以及蓝牙连接状态。usb接口用于给ipad充电。

实施例2:测量健身车的车把转角的方法

姿态角解算任务中鉴于加速度计低频特性比较好,因为加速度的角度可以直接算出来,没有累积误差,所以长时间后也比较准。而陀螺仪长时间后由于积分误差的累加,会造成输出误差比较大,甚至无法使用。所以根据特性取长补短进行姿态解算,每过一段时间就让加速度计去校准一下陀螺仪,在短时间内采用陀螺仪得到的角度做为最优值,定时对加速度采样来的加速度值进行取平均值来校正陀螺仪的得到的角度。短时间内用陀螺仪比较准确,以它为主;长时间用加速度计比较准确,这时候加大它的比重,这就是互补滤波,这个过程中加速度计要滤掉高频信号,陀螺仪要滤掉低频信号。

本发明的测量健身车的车把转角的方法,其流程如图2所示,包括如下的步骤:

s1:采集角速度、加速度原始数据

基于内部mems结构六,轴姿态传感器可以感知车把旋转时的角速度与加速度;

通过单片机i2c总线读取mpu6050数据寄存器中的角速度、加速度数据;

s2:将原始数据单位化

将加速度数值单位化

vx、vy、vz分三轴上的重力向量;

s3:计算误差

将重力加速度与加速度计原始数据ax、ay、az进行叉乘,得到用于修正陀螺仪角度的误差向量ex、ey、ez

ex=(ay*vz-az*vy)

ey=(az*vx-ax*vz)

ez=(ax*vy-ay*vx)

s4:利用误差向量修正陀螺仪姿态角

将误差向量带入传递函数中,得到修正系数:

η=kpe+kt∫e

s5:利用修正后的陀螺仪姿态角更新四元数

q0(t)、q0(t+t)分别为前一时刻和后一时刻的四元数。

s6:将四元数转化为转角

φ、θ、ψ分别为三轴角度。

最终测定的三轴角度数据用于与游戏进行交互,当用户骑行vr健身车时,表头会采集运动数据并处理成角度、速度、距离等,并通过蓝牙将运动数据发送给游戏,控制游戏中的角色的动作方向。

如图3所示为一种所测定的三轴角度与游戏交互的方式,游戏中为一个跳跳熊,当用户蹬车时,跳跳熊会积累能量,能量积累到一定会跳跃出去,而跳跃的角度靠车把转角来控制。本发明可以精准解算车把转角,使用户在操作游戏时能轻松控制跳跳熊跳跃的角度,获得良好的游戏体验。

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