物联网由我们在家里、工作中或街上使用的各类传感器以及传输系统组成,这些物体和设备现在都是计算机化的。它们具有网络连接和嵌入式软件,可以与手机和其他设备交互,接收和发送信息,并由用户控制。物联网开发意味着将硬件部分和软件程序结合起来,使最终产品可以监控数据,收集和传输数据,分析给定的数据,并使物理设备采取相应的行动。
物联网本身已经转变为一个行业,因此对可靠和全面的开发人员工具包的需求也增加了。创建复杂应用程序所需的物联网开发工具由物联网硬件设备(传感器、网关、基站等)、物联网应用程序开发平台、物联网操作系统(如嵌入式Linux)和编程语言代表。那么物联网领域常用的开发工具有哪些呢?今天我们就为大家介绍一下。
物联网常用开发工具软件一览
让我们简单地看看目前用于物联网项目的15个最流行的工具。
- Arduino
- Flutter
- Kinoma
- Tessel 2
- M2MLabs Mainspring
- Raspberry Pi OS (ex. Raspbian)
- Node-RED
- Eclipse IoT
- SiteWhere
- DeviceHive
- Home Assistant
- OpenRemote
- ThingsBoard
- Milesight DeviceHub
- Zetta
1. Arduino
Arduino是物联网市场上的领先公司,产品包括微控制器板、模块、屏蔽和套件。硬件规格适用于创建各种项目,如机器人和家庭自动化。
Arduino产品由:
- Arduino IDE:一个开源原型平台,可以用来轻松地编写与任何Arduino板兼容的代码。
- Arduino Cloud:一个单一平台,可以实现物联网设备的无线通信,以及它们的远程控制和数据收集。
- 物联网云远程:用于创建仪表板来控制云连接设备的应用程序。
- Web编辑器:一个从浏览器编码的应用程序。
2. Flutter
物联网解决方案的另一个硬件产品是Flutter,一种可编程处理器核心。该电路板基于Arduino,拥有强大的ARM处理器,内置电池充电和安全芯片。远程无线发射机使得这个板非常适合无线传感器网络。
Flutter提供了:
- 基本控制模块
- Pro控制模块
- 完整套件(快速入门套件,车辆控制套件)
- 配件板(蓝牙适配器、Breakout、遥控器、浏览器)
- 一个太阳能电池板,一个圆柱形电池和其他配件
- 为您的设备3d打印部件。
3. Kinoma
Kinoma软件工程师,为物联网和嵌入式解决方案开发了一系列开源Kinoma软件和硬件产品。
- Kinoma Create:用于物联网设备原型的硬件平台。它由JavaScript驱动,内置SD卡、扬声器、麦克风、蓝牙和Wi-Fi。它通过WebSocket互联网协议实现了设备与云平台的交互。
- Kinoma Studio:一个集成开发环境(IDE),提供硬件模拟器和传感器库,允许开发人员创建健壮的应用程序。
- Kinoma Connect:支持IoT设备的Android和iOS应用程序。
4. Tessel 2
要创建连接的设备,您还可以使用Tessel 2—支持JavaScript、Node.js库和其他语言的可编程微控制器。它运行Linux,并提供对许多NPM模块及其所有功能的访问。
由于内置模块和USB端口,Tessel 2可以通过外部硬件(传感器,外围设备)进行扩展。它还提供Wi-Fi和以太网连接、联发科路由器、64MB RAM和32MB Flash。方便的命令行工具简化了原型。
5. M2MLabs Mainspring
使用M2MLabs Mainspring框架,机器对机器应用程序的开发非常容易。这个基于java的开源框架被广泛用于构建车队管理应用程序和远程监控项目。它可以实现灵活的设备配置,并支持机器之间的可靠连接。用M2MLabs Mainspring创建应用原型非常快。此外,它还通过可伸缩的Apache Cassandra数据库确保了长期的数据存储和检索。
6. Raspberry Pi OS
树莓派OS(以前称为Raspbian)是树莓派硬件的官方操作系统。32位版本目前可用,64位版本正在积极开发中。这是一个免费的,基于debian的系统。树莓包括基本的程序和实用程序,以使硬件运行,但它也编译了数千个软件包和预编译的软件,以便于安装。
7. Node-RED
Node-RED是一款基于Node.js的免费编程工具,旨在集成分布式物联网硬件和软件系统,并使其交互自动化。它主要在Linux环境中工作,但也可以安装在Android和Windows上(Windows只需要一个Linux子系统)。Node-RED提供开箱即用的存储库、用于连接MQTT的接口、逻辑集和格式解析器,以及编写自定义组件的能力。
您可以通过将Node-RED与云平台(Azure、AWS、IBM)和其他第三方系统集成来扩展Node-RED的功能。
8. Eclipse IoT
Eclipse包括软件开发平台、框架、服务、标准、构建数字孪生的工具、雾计算和边缘计算解决方案等等。Eclipse IoT项目侧重于使用Lua编程语言,该语言被认为非常适合物联网项目。
9. SiteWhere
SiteWhere是一个开源的平台,用于在工业层面构建、部署和支持物联网应用程序。该平台使用了Docker框架、Kubernetes、微服务和Apache Kafka等技术。SiteWhere方便大数据传输、存储、处理和集成、设备管理和事件处理。您可以将SitePlatform部署到本地或云平台,包括Azure、AWS、GCP。
10. DeviceHive
- DeviceHive平台覆盖端到端物联网服务,包括:
- 原型设计和大规模生产
- 通过MQTT, REST API, WebSockets连接任何设备
- 与云平台和第三方系统集成
- 使用Apache Spark和Kafka等最佳数据解决方案进行实时数据分析。
DeviceHive提供公共、私有或混合云部署模型,一个由Kubernetes管理的基于容器的架构,并支持用各种语言编写的库。您可以使用这个可扩展且设备不可知的平台来实现任何复杂性的物联网项目。
11. Home Assistant
家庭助理是一种综合性的家庭自动化软件系统。这个单一的中心集成了智能家居设备,提供本地控制和安全性。家庭助理提供了方便的移动应用程序,可以远程管理您的设备,并在出现问题时发送通知。您还可以通过将该工具与其他应用程序集成来扩展该工具的功能。
12. OpenRemote
OpenRemote是一个可以用来创建和管理物联网监控应用程序的平台。利用该工具的主要领域是智能城市和移动、能源管理和资产管理。
OpenRemote在开源或商业许可证下提供。它背后的团队还提供从概念开发到实施和产品维护的一系列服务。
13. ThingsBoard
ThingsBoard物联网平台使用MQTT、CoAP和HTTP协议来连接设备并处理来自设备的数据。开箱即用的可配置仪表板、图表、地图和小部件为您提供强大的数据实时可视化,您可以与合作伙伴共享。此外,您还可以使用内置编辑器创建自定义小部件。ThingsBoard Rule Engine允许您创建与用例需求完美匹配的规则链和基于事件的工作流。
该平台可以支持多个用户和数百万台设备。云和预置部署可用。您可以为小型项目选择单片架构,也可以为高度可伸缩的项目选择微服务架构。
14. Milesight DeviceHub
Milesight是全球领先的监控摄像头、人工智能系统、物联网硬件和软件产品提供商。DeviceHub是该公司的关键软件解决方案之一。这是一个连接套件,支持部署多个设备,实时监控和远程升级。使用DeviceHub,您可以获得有关被监控设备的全面报告,并采取有洞察力的操作。该平台的云版本和内部部署版本都可用。
15. Zetta
Zetta是一个为物联网设备设计api的平台。该平台基于Node.js,并结合了响应式编程、WebSockets和REST api。Zetta服务器可以在云中运行,也可以在Raspberry Pi或Intel Edison等本地硬件上运行。
由于抽象和对协议和约定的直接访问,开发过程得到了简化。可视化工具确保了设备行为的持续监控和对异常的及时反应。使用Zetta,您可以创建数据密集型的移动、设备和云应用程序,并将较小的系统集成到一个连贯的系统中。
总结
物联网行业持续快速发展,不断开拓新的商机。用于创建物联网解决方案的工具数量也在增长。我们只列出了目前使用的一些最流行的工具,希望我们能够帮助您为您的项目做出明智的选择。