如何将数据从车载微控制器推送到远程服务器?

物联网 联网 微控制器 数据传输 阿杜伊诺
2021-06-11 04:31:27

首先,我是物联网领域的新手。硬件零件对我来说很新。

我想做一个小项目。这就是在汽车上创建一个盒子,可以跟踪其位置和温度。而且,在盒子里面,应该有一个微控制器(我正在考虑使用 Arduino,因为它易于使用)、一个温度传感器和一个 GPS 接收器。现在,当汽车运行时,这个盒子的功能应该是将传感器数据推送到服务器进行处理,然后我希望写一个网页来展示它们。

目前,我在研究阶段。我担心如何将数据从盒子推送到服务器上。你能告诉我一些技术以及做这些事情所需的硬件部件吗?(如果这项技术可以扩展到一堆汽车上就更好了,因为我想为公共汽车系统而不仅仅是一辆汽车。)

3个回答

总而言之,您需要一个在汽车或公共汽车上行驶的 Arduino 向传感器发送一些数据。

首先你要搞清楚你是实时需要这些数据,还是可以在驱动的过程中采集,最后发送到服务器。

如果您需要实时,那么我们可能会排除 WiFi,除非您 1000% 确定始终有 WiFi 覆盖(也许是新加坡?)。

这给我们留下了公共电话网络。您可以决定成本/电池寿命(除非您将决定由车辆供电),是将 SIM/GSM 模块添加到 Arduino,还是将温度传感器添加到廉价的 Android 手机。

您可以在此处寻求建议,但在Hardware Recommendations Stack Exchange 中可能会更好在任何一种情况下,请明确您想要什么,以及哪些功能优先于其他功能。

您的问题是关于将数据从车辆推送到服务器。有很多使用 SMS 的解决方案,通常是因为它更便宜,但您可能应该只使用 HTTPS 和您自己设计的标准CRUD RESTful API(除非服务器已经指定了一个 API)。

如果你能等到行程结束,那么当车辆回到基地时你就可以使用WiFi。

既然你说到巴士,你可能想要冒险。当公共汽车四处行驶时,它们可能会存储数据,直到它们到达 WiFi 点并传输它。

或者,直到他们经过另一辆公共汽车。

这是我对这个问题的回答的轻微改写- 尝试将斑马视为公共汽车:-)

基本上,TCP/IP 会丢弃无法传送的数据包,而延迟/中断容忍网络维基百科版本)将存储和转发。

因此,如果您的总线没有 WiFi 连接,它会等待,直到它有,或者直到它通过另一条总线,然后可能将数据包发送到另一条总线,而另一条总线可能必须存储,直到它可以有 Wifi ,然后最终转发数据包。

从广义上讲,当总线相互经过时,它们会说“嘿,如果你有一些 WiFi 接入,你能把这些数据传递给服务器吗?”。

已经有许多现有的项目使用 DTN,首先是著名的 zebranet(谷歌用于 zebranet 野生动物追踪)。

我自己开发了一些这样的项目,但不允许讨论它们。

我相信一点点想象力和一些 Raspberry Pi Zero Ws 会让你为自己开发一个有趣的项目

在此处输入图片说明

您希望将移动车辆的数据传输到云端。拖曳电缆似乎有点不切实际,因此您只能使用无线。无线选项大致有:

  1. 卫星
  2. 蜂窝
  3. 点对点
  4. 低功耗广域网

卫星相对昂贵,而且使用起来有点棘手。点对点要求您设置链接的另一端,而且在此阶段听起来似乎还不够。LPWAN 同样需要您现在需要的更多准备。

所以这取决于蜂窝选项。它们又是非常粗略的:

  1. GSM/CDMA/2G
  2. 3G
  3. 4G/LTE
  4. CAT-1
  5. CAT-M1
  6. 窄带物联网

您的选择应该与汽车在世界上的目的地以及何时到达那里有很大关系。如果你想让它在今天和手机普及的地区工作,那么你可能想要瞄准 3G/4G/LTE/CAT-1。

缩小范围后,您只需要一个 Arduino 3G/4G/LTE/CAT-1 扩展板。它们有很多,因此请选择一个您可以轻松采购的适用于您所在地区的产品(有支持它的运营商)。

为了快速部署和概念证明,我会尝试使用驱动程序的手机创建系统的数据连接,并通过它进行通信(即使用 BLE)

这个问题的另一个答案对于产品版本来说是绝对正确的,但需要做更多的工作。