虽然GPS适用于长距离更换,但我想使用iPhone的加速度计测量更短的距离。
假设我想使用iPhone应用程序测量盒子的高度。您可以启动应用程序,按一个按钮在框底部开始测量,将iPhone移动到框顶部,然后按一个按钮停止测量。然后,应用程序将计算并显示框的高度。
我如何使用加速计进行这种测量?
答案 0 :(得分:14)
可以这样做,因为我在sparkfun IMU上实现了一个更复杂的系统。
有一些组件可以准确地完成您的操作。
1)您需要使用低通滤波器过滤accellerometers信号。这样可以消除任何不是由慢速移动的手臂引起的噪音。
2)将3个单独的加速度值积分两次,从加速到速度,然后从速度到距离。
3)当您将手机从盒子底部移到顶部时,必须通过将手机放在同一平面上来执行上述方法。任何俯仰/滚转/偏航都会破坏测量(提示)
4)从上面,为了补偿俯仰/滚转/偏航,你可以包括内置陀螺仪=]。使用它将从accellerometer获得的矢量映射到起始点。使用这种方法,您可以通过走动来测量“穿过和对象”的距离。 (记住这个陀螺仪也需要过滤)。
最终结果取决于许多因素,例如滤波器的有效性,您的测量仪和陀螺仪的准确度和采样率,以及您的数学和线性代数技能的绝佳性。
答案 1 :(得分:5)
尝试在感兴趣的距离拍摄已知大小的物体。
答案 2 :(得分:3)
根据应用程序和所需的精度,您可以在iPhone 4和iPod Touch第4代中使用新的6轴陀螺仪加速度计。您可以通过积分加速度矢量来获得总位移。
当积分加速度以获得位移时,任何错误都将是累积的,因此这可能不合适,但可能值得考虑。
答案 3 :(得分:0)
毕达哥拉斯定理:c ^ 2 = a ^ 2 + b ^ 2(http://en.wikipedia.org/wiki/Pythagorean_theorem)
在你的情况下,如果点A =(Ax,Ay)和B =(Bx,By),那么你可以通过以下方式计算距离C:
C = sqrt( (Bx-Ax)^2 + (By-Ay)^2 )
答案 4 :(得分:0)
GPS目前还不够准确无法测量一个盒子。考虑到可能存在大约10米到1英里的误差。您可以使用CLLocation获取度量的准确性。