我现在假设如果我从所有轴的总和中减去9.8,它将给我在手机上施加的合力而不考虑重力.因此,如果手机处于固定位置,它将返回值0.
现在,如果手机直接躺在一个轴上,这确实是真的,但如果手机以45度角对着某个东西,它会返回4-5的值(大约是重力的一半)角度越接近轴,注册力就越小(继续前进并假设它是成比例的)
根据我的理解,这不应该发生,它应该返回0,因为所有的轴都会相互抵消,不是吗?由于手机是静止的,手机上应该没有记录力吗?
解决方法 值为4-5 m / s2表示计算中存在小错误或硬件缺陷.你说你要添加所有值,但你是怎么做到的?您必须将幅度计算为sqrt(x * x y * y z * z).这是因为速度,位置等加速度是矢量,它们的 length是根据 Pythagorean theorem计算的.通常,这些传感器并不像您预期的那样精确.在iPhone上,我测量了9.75和9.87之间的g力值.值取决于温度(把它放在冰箱里,你得到的值越来越低 – 我检查了它;-)并且在改变方向时确实存在差异.我发现值增量为0.3 m / s2.为了解决这个问题,你需要大量的数学(Kalman-Filter或类似的东西),当然还需要第二个传感器(陀螺仪,因为磁力计,即指南针反应太慢).
总结以上是内存溢出为你收集整理的android – 尝试校准加速度计全部内容,希望文章能够帮你解决android – 尝试校准加速度计所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)