Android 如何使用加速计检测移动或静止的船舶?

Android 如何使用加速计检测移动或静止的船舶?,android,iphone,accelerometer,Android,Iphone,Accelerometer,是否有人有在船舶上使用加速计检测船舶是否移动或静止的经验 困难的是,我在6Hz下采集了一些样本,发现所有的X/Y/Z轴都显示出正加速度和负加速度。当船舶移动和静止时,模式完全相同。我想这是由海浪引起的 有什么想法吗 谢谢大家的建议 我必须使用加速计来检测船只上的运动的原因是,我的设备(一个定制的嵌入式系统)大部分时间进入睡眠/休眠状态以节省电源,并且它只有在检测到运动后才醒来执行某些任务。GPS耗电太多,因此不能一直通电 实际上,我不需要测量速度或位置,我只需要区分在海上移动和静止。加速计在陆

是否有人有在船舶上使用加速计检测船舶是否移动或静止的经验

困难的是,我在6Hz下采集了一些样本,发现所有的X/Y/Z轴都显示出正加速度和负加速度。当船舶移动和静止时,模式完全相同。我想这是由海浪引起的

有什么想法吗


谢谢大家的建议

我必须使用加速计来检测船只上的运动的原因是,我的设备(一个定制的嵌入式系统)大部分时间进入睡眠/休眠状态以节省电源,并且它只有在检测到运动后才醒来执行某些任务。GPS耗电太多,因此不能一直通电

实际上,我不需要测量速度或位置,我只需要区分在海上移动和静止。加速计在陆地上工作良好,但由于海浪的随机性,可能在海洋上工作不好

我也考虑过使用陀螺仪,但是,它太贵了


有什么建议吗?

您可以使用GPS接收器检查船舶是移动还是静止。使用GPS API,您可以获得船只在地球上的位置、移动方向、速度


这里有一个很好的GPS跟踪教程:

毗瑟奴·哈里达斯是对的,GPS是一个更好的方法


如果你需要在没有gps(如iPod touch)的设备上安装你的应用程序,那么加速计就不是船上使用的合适硬件:顾名思义,它记录的是速度的变化,而不是速度的变化。假设一艘船以10英里/小时的速度向前移动,它的速度变化等于0,所以加速度计只能给你0(但是发动机振动波…)

< P>我用GPS写了一个日志飞行时间的应用程序。根据GPS报告的速度和一些启发式方法检测事件。例如,当速度超过阈值(其可配置的3kts工作正常)时,检测到阻塞关闭(飞机停止停车并开始滑行)事件。类似地,通过一段时间低于阈值的速度检测到阻塞(飞机在着陆并滑行到停车位置后停车)。在这里,您也可以使用位置,但速度更好(噪音更小)。 对于风校正/漂移(滑行时不相关,但对检测着陆和触碰有用),用户可以输入风向和风速估计值。该值用于修正GPS报告的速度。
使用加速度传感器,这一切工作正常。我建议尝试一下GPS。唯一的风险似乎是,当在船上时,所涉及的较低速度可能会导致较差的速度-噪声比,当然,漂移是其中的一个方面。(但在我看来,由于涌浪,使用加速度传感器时也存在问题。)

仅从加速度传感器数据就无法判断船舶是以恒定速度移动还是停泊:在这两种情况下,加速度均为零


如果需要更高的精度,可以只使用GPS或尝试传感器融合(GPS+加速计)。不管怎样,你都需要GPS

事实上,GPS并不消耗那么多电能。功耗来自使用GPS的应用程序。您可以编写一个使用GPS并具有良好性能的轻量级应用程序。我知道我晚了一天,还缺了一美元,但我只是把这个放在这里给子孙后代看

你的意思可能是加速度计作为测量适当加速度的工具,与坐标加速度不同。由于水流、波功率、水密度、速度和其他因素,Aka螺旋桨x的加速度不会导致x的速度加速度


您将需要一个设备,它还可以计算波的功率,并将它们相对放置,以防止出现错误(静态时显示加速度)。通常,加速度计带有波浪补偿计算器。您使用什么型号?

我曾尝试测量发动机振动(当船舶移动时,发动机应具有较高的频率),以确定船舶是移动还是静止。然而,似乎振动太小,加速度计无法拾取。当然。。。但正如我所说的,主要的问题是,一艘静止的船的加速度与一艘以恒定速度运行的船的加速度相同,所以加速计帮不上忙……我的答案仍然是一样的:无论你做什么,你都需要GPS,单凭加速计数据是无法区分这一点的。不过,GPS是解决方案。我也有类似的问题,在路上跟踪一辆集装箱车。正如你所说,GPS需要更大的功率,所以最后我们找到了一个解决方案——在跟踪手机时,我们总是将手机连接到汽车充电器。GPS接收器需要比加速度计多几个数量级的功率。示例:56mA-350uA。我没有将其与任何东西进行比较。只是说它本身并不像人们想象的那样消耗能量。如果您将手机连接到功率表并测量所消耗的电流,您将看到打开GPS所消耗的电流与频繁刷新屏幕所消耗的电流相比非常小。