我对物联网很陌生,对它的了解并不多。我花了很长时间试图更多地了解它,但无论我去哪里尝试了解物联网,总是有太多我不知道的假设知识。我的最终目标是能够开发用于从 IOT 设备收集数据并将其呈现给客户的应用程序,我认为最好的方法是获得一些实践经验。所以我注册了 AWS 并想开始使用 IOT 服务来了解它是如何完成的。我想学习如何创建从 IOT 设备收集数据的应用程序,但我需要一些设备来执行此操作,但我没有。有什么地方可以让我玩一些假设备或练习设备之类的吗?
我是 IOT 的新手,正在寻找一些可以用来学习如何创建 IOT 应用程序的平台
欢迎。我喜欢你的问题,并已将其标记为 favo(ur)ite。然而,它可能会因为过于宽泛而被关闭。如果你能缩小你的要求,你可能会得到一个很好的答案(尽量避免 GIGO)。以下是您可以采取的众多可能途径之一:
我的最终目标是能够开发从物联网设备收集数据并将其呈现给客户的应用程序
所以我注册了 AWS
为什么?AWS 是否是一项硬性要求,您是否将其与 IoT 联系起来并思考“为什么不”?
您当然不需要 AWS,我建议从您能想到的最简单的系统开始,然后逐步进入更复杂的系统。
你需要什么?
- 一些硬件来测量某物
- 一种将测量值发送给客户端的方法
- 一种向客户(大概是人类客户?)显示数据的方法
1)树莓派很流行,有很多教程支持;它甚至有自己的 Stack Exchange 站点 不到 10 美元,它有用于传感器的 WiFI、蓝牙和 GPIO 引脚(如果你是焊接方式甚至是面包板,你也可以购买带有传感器的帽子来安装这些引脚)。Raspberry Pi Zero W 是最便宜的互联网连接,应该足以满足您正在考虑的任何物联网项目。
话虽如此,我个人(和 YKmH 可能会有所不同),我发现 Pi 有点矫枉过正,因为我不认为您需要 Linux。如果您提供更详细的要求,我们可以为您指明处理器。一个很好的入门者是 ESP32,你可以在速卖通上以 7 美元左右的价格买到它,带显示器的价格可能是 14 美元。我也喜欢STM32,我将要研究它,因为它支持 Ada 2012,但这对你来说可能有点深奥。还可以考虑一下BBC Micro:bit,它是专门为瘦人设计的(他们给英国的每个学童一个),并且可以用 Python 编程(我提到的其他人也可以),或 Ada ;-) 或图形语。
如果您需要 ESP32 的推荐,请查看M5stack,它是一个模块化系统,可让您轻松组合(堆叠)设备和配件(例如设备电池),并具有十几个或更多传感器来测量许多事物。它很便宜(IMO)并且很容易掌握,我买了很多,只是为了玩。一旦奖励是你不需要做任何焊接或面包板(尽管你可以);一切都是即插即用。您可能对“可穿戴”手腕感兴趣,它看起来很酷,我用它来跟踪员工。见下图
2) 所以,现在您已经对您的设备进行了编程以读取一些传感器数据,并且想要一种将其发送到服务器的方法。有很多方法可以做到这一点,但我个人认为这是在开发 RESTful HTTP API 或使用 FOSS 和现成的东西之间的选择。对于后者,有几个选项,但MQTT非常流行且文档齐全,并且有很多示例。学习起来也非常简单。
3) 显示数据。同样,报告的选择过多——不,是聚宝盆。但是,FOSS Node-RED使用简单,非常受欢迎,支持良好。
您提到了 AWS,但这只是一开始会让您感到困惑的另一件事(并不是说您以后不应该深入研究)。更简单的是在您自己的 PC 上运行您自己的服务器。如果您运行 Linux,那么您已经安装了 Apache。如果是 Windows,则安装Xampp 之类的东西,它可以在 Linux 上运行 Apache 服务器,并且不需要太多/任何知识。
正如我所说,这只是众多众多选择之一大大地。
如果您确实使用 ESP32,那么,除了许多很棒的免费教程之外,我个人还建议您阅读 Kolban 关于 ESP32和ESP32 物联网编程的书。要获得好的教程,请查看Random Nerd 和Hackster。作为 IDE,我强烈推荐PlatformIO _ 而不是 Arduino IDE,因为它支持在许多板上进行调试,以及更多,并且它有一个很好的支持社区。
我错过了任何一般性建议吗?
我鼓励其他人扩展这个答案。虽然这个问题太广泛而无法保持开放,但在社区 wiki 上的答案将非常有用。