我想测量从Android应用程序移动的汽车行驶的距离。距离通常在(0-60米)之间。如何在Android设备上使用传感器计算距离。
谢谢。
答案 0 :(得分:2)
你最好的选择是GPS。获取开始和结束的位置,并使用Location.distanceTo。
如果你的意思是你想尝试计算你何时开始和停止 - 我会寻找一个显着的加速事件并在那些时候与GPS位置相关联。
如果你的意思是你根本不想使用GPS,请立即放弃。传感器太嘈杂,无法尝试使用加速度方程求解。
答案 1 :(得分:1)
你可以(尝试)整合加速度计值,但正如Gabe Sechan所说,它绝大部分都是无望的。如果您花一些时间分析加速度计并手动校准(我的意思是通过您测量的偏差和缩放误差进行补偿),您可以减少误差,但是您仍然会遇到一个(显着的)增长误差,随着时间的推移越来越快。
作为旁注,如果您不断转动(例如,在螺旋坡道中),您可以直接从陀螺仪和加速度计的组合中获得速度(基本上结合了向心运动的方程式" a = v ^ 2 / r"和角速度" v = w * r"得到" v ^ 2 = a ^ 2 / w ^ 2")。我试过用Android设备做这个,只要角速度" w"足够高,返回的值非常一致且相当准确(并且误差不会随着时间呈指数增长,就像两次积分加速度数据一样)。