android 陀螺仪加速度传感器,如何在Android智能手机中使用加速度传感器...

您可能正在寻找的方程式是:

Velocity = (Gravity*Acceleration)/(2*PI*freq)

正确使用此方程式(公制)的单位为

Gravity = mm/s squared = 9806.65

Acceleration = average acceleration over 1 second

Frequency = Hz (of the acceleration waveform over 1 second)

例如,如果您从加速度计的所有3个轴收集数据,则将执行以下操作以获取3D空间的加速度波形(原始值):

inputArray[i] = sqrt(X*X + Y*Y + Z*Z);

收集完数据后,仅使用本应收集的波形中的样本数量即可(如果两个值之间存在1ms的延迟,则只能使用1000个值).

将这些值相加并除以样本数量即可得到平均值(如果加速度计数据为负值,则可能需要使所有值均为正值),您可以使用此算法在找到平均值之前执行此操作.

for(i = 0; i < 1000; i++){

if(inputArray[i] < 0){

inputArray[i] = inputArray[i] - (inputArray[i]*2);

}

}

获得加速度平均输出后,需要执行上面的公式.

static double PI = 3.1415926535897932384626433832795;

static double gravity = 9806.65;

double Accel2mms(double accel, double freq){

double result = 0;

result = (gravity*accel)/(2*PI*freq);

return result;

}

例如,一个挥杆动作的平均加速度为1秒内3 gs:

注意:此计算基于正弦波形,因此该频率将代表加速度计的物理运动,而不是采样率的频率

Accel2mms(3, 1);

1秒内3 gs,频率为1(一个方向摆动1个)= 4682.330468 mm / s或4.7米.

希望这是您想要的东西.

请记住,此计算基于正弦波形,但适用于基于单个运动(频率1)进行计算,因此它可能不太准确.但理论上应该可行.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值