如何构建由 5 个智能手机组成的网络,将加速度计数据记录到计算机中?

物联网 传感器 数据传输 互操作性
2021-06-22 17:45:46

我想建立一个由 5 部智能手机(最好是 Android,如果有任何区别)组成的网络,将同步的加速度计数据记录到计算机(如数据记录器)中。我怎样才能做到这一点?任何帮助,将不胜感激。

更多细节: - 首选采样频率为 50Hz。根据加速度计的质量,这种高频可能没有意义。但是,低于 10 Hz 的采样频率将没有用处。- 来自所有加速度计的数据需要同步。记录的数据最好采用以下格式:Time Acceleration11 Acceleration12...Acceleration53;其中 Acceleration11 是设备 1 中的加速度,方向 1(例如 X 方向)。

我是电子和物联网的新手,所以请在回答中考虑这个事实。例如,请避免在没有解释的情况下使用缩写,并请提供一些指导,如何实际实现您的建议。

1个回答

同步来自不同设备的数据始终是一项艰巨的任务。对您有利,您正在使用智能手机。在这种情况下,您可以设法使时间戳具有准确的微秒精度。

首先,我们需要考虑沟通。我能想到的更简单的方法是,这需要最少的编程和硬件工作,如下所示:

  1. 手机正在运行一个应用程序,该应用程序对加速度计数据进行采样,以您所能达到的最佳精度为它们加上时间戳,然后通过 HTTP 请求将它们发送到网络服务器。
  2. 网络服务器由运行 LAMP 的 RPi 组成。PHP 脚本接收请求,并使用 mySQL 将数据放入表中。
  3. 您的前端由一个简单的网页组成,javascript 在该网页上从数据库中获取数据并对其进行相应的处理。

现在让我们谈谈#1。

在我看来,您有两种方法可以为您的数据添加时间戳。简单的方法和困难的方法:

最简单的方法是使用外部源,例如NIST另一种非常简单的方法是使用您的 GPS 时间戳,这是非常准确的。困难的方法是进行时钟同步。这些都很难实现。

但是

有一个工具可以帮助您解决这个问题。

网络服务器非常简单。获得 RPi,选择 LAMP,您就完成了。带有 mysqli 的 PHP 简单服务器就完成了。互联网上到处都是教程。

一旦您将数据放入数据库并根据您的精度正确加上时间戳,请对其进行解析并执行您需要的任何操作。如果时间戳匹配,则有您的同步数据。

请注意,这是一种非常简单的方法,有一些广泛的缺点,具体取决于同步的精确程度,但这可能会让您在任务中占得先机。