随着越来越多的设备进行相互连接,物联网的边界变得越来越模糊。根据Gartner的报告称,2016年安装了60亿件物联网设备,物联网市场估值超过1万亿美元。同样,HPE Aruba发现,57%的公司采用了物联网技术,到2019年这一数字将增至85%。
物联网革命背后的主要驱动力之一是开源社区,其不断的实验加上新技术带来的可能性,创造了许多新的和有趣的应用程序。
下面是用于物联网开发的10佳开源软件工具。
1. DeviceHive
DeviceHive基于AllJoyn的Data Art设备,同时也是AllSeen的联盟成员。这一款免费开源机器和机器通信(M2M)框架在2012年开始推出,并持续成为物联网应用的领先开发平台之一。
无论网络配置如何,其基于云的API都可以进行远程控制。它可以管理和控制门户、协议和开源库,其潜在的应用包括安全、智能家居技术、远程传感器和自动化。
DeviceHive网站有一个充满活力的论坛,上面发表了一系列来自开发爱好者的博客文章。使用DeviceHive所需的包括组件,包括其他的信息等等,都可以在他们的网站上找到。
2. Kaa
Kaa旨在为大型云中的连接设备提供端到端支持,由Cybervision投资支持。Kaa的多用途中间件允许开发人员创建物联网解决方案,连接应用程序和各种智能产品。
Kaa的主要优点之一是它易于安装,并提供许多可轻松插入平台的功能。Kaa将开源套件描述为“硬件不指定”,意味着它可以与您所需的任何硬件(包括设备、传感器和网关)进行交互。
开发套件还可用于设置跨设备互操作性,分发空中固件更新,并分析用户行为以提供目标通知。任何想要进入物联网开发的人都可以拥有一个全方位的优秀技术。
3. Arduino
Arduino是最知名的平台之一,部分原因是它同时提供硬件和软件。该开发套件允许用户使用集成开发环境(IDE)在Arduino语言中编码。目前,其云系统包含了MQTT代理,开发人员能够在上面发送消息。
使用Arduino创建的项目包括宠物的位置跟踪设备,拍摄照片的方法,并让他们自动上传到流行的博客网站Tumblr;对于商业,可以创建从GitHub到纸上的打印收据。
Arduino云平台将在未来几个月内增加新功能,并寻求对当前设置的反馈。
4. Home Assistant
顾名思义,Home Assistant主要面向家庭自动化,它运行于基于Python的编码系统,可以通过移动和桌面浏览器进行控制。这款开源软件相当容易设置,并已注意到其安全和隐私功能。
该软件系统每两个星期会定期更新,目前已支持近250个智能设备。该软件可以运行任何系统,因此其也可以运行Python 3,包括桌面和Raspberry pi。
然而,这个软件没有家庭助理网络中心,也没有云组件。但开发者认为,这种功能缺失是值得的,因为即使当互联网停机,家庭还始终保持活跃,你的私人数据依然保持私密。
5. Devicehub.net
Device Hub是IoT项目开发的集成解决方案,该服务将商业智能和云集成相结合,以便合成硬件和Web技术。开发套件被称为“Paas”或“平台即服务”,硬件和移动开发人员都可以有效利用它提供的功能。
中小企业和个人运用平台提供的解决方案,使得车队管理系统,智能自动售货机和可穿戴技术得以快速发展。
Device Hub与创业派有良好的合作关系。他为开发者提供,使用创建的设备中心程序可以完全白名单,重新品牌化,并安装在本地或在企业级部署的虚拟私有云中。
6. SiteWhere
SiteWhere主要旨在帮助公司加快新产品和服务的上市时间,并且可以部署在几乎任何一个云平台上。该平台已经经过许多不同的供应商测试,包括Hortonworks和Cloudera,因此该套件具有相当可靠的业绩记录。
SiteWhere的一个大卖点是能够部署您自己的私有云,您可以安全地存储您自己的数据,同时需要利用第三方的云服务。不过,如果你更喜欢一个具有经过验证的安全记录的服务,开发套件还可以与Azure或Amazon EC2集成。
局域网也可大规模扩展,您可以从单个笔记本电脑运行它或在集群环境中线性扩展,有效地解决大数据问题。如果你正在寻找一个更大的网络的物联网解决方案,使用单个批处理命令控制大量设备的能力是理想的。
7. Zetta
Zetta是一个基于Node.js构建的基于服务器的平台,并结合了REST API,WebSockets和反应式编程,使其成为将许多设备组装成数据密集型实时应用程序的理想选择。
Zetta能够将大量设备转换为API。如果您希望创建一个通过API进行通信和反应的设备系统,那么Zetta使用反应式编程和Siren超媒体就可以实现。
这个开源开发套件的主要吸引力是如何针对大数据进行优化软件的体系结构,以允许大量数据密集型实时应用程序具有可导性。可视化工具允许您观察和响应系统和设备的行为,以便洞察和采取行动。
8. Particle
Particle,以前被称为Spark,是一个全栈开发平台,它允许您安全可靠地连接物联网设备到实际的互联网。
根据Gartner的报告,80%的物联网项目因为其复杂性而延迟推行,这不可避免地导致预算成本不足的问题。粒子插件有助于缓解这个过程,其简化的设计和加密协议,使设备本质上是安全的。
Particle更为大胆的声明是,使用这个平台,一个小团队的工程师和开发人员,即使没有物联网经验,也可以在几个月内开发一个产品。如果你正在寻找一个快速的周转项目,那么这个平台会是你想要的选择。
9. ThingSpeak
ThingSpeak是目前可用的较老的物联网开发平台之一,但它也是最可靠的之一。该平台主要专注于警报、位置跟踪和传感器记录,但它仍然是一个内在多功能的平台。
一个典型的例子是汽车计数器开发,使用网络摄像头和Raspberry Pi设备,通过ThingSpeak的分析和可视化,能够计数汽车在一个繁忙的公路上的交通模式。
类似地使用开源Arduino硬件和ThingSpeak开发潮汐警报系统,其可以测量通常不通过较大分析或天气报告的区域中的水位。ThingSpeak是那些希望收集、分析和处理特定数据集的人的理想化平台。
10. OpenRemote
OpenRemote是另一个用于智能家居解决方案和家庭自动化的开源IoT开发平台。 它于2009年推出,OpenRemote为开发人员提供了基于云的设计工具。
该网站还提供一个方便的一步指南,可以指导您第一个应用程序从设计到安装的全过程,这是一个方便的初学者工具。
该公司还规定了专业开源方法,意味着社区中的顶级开发者通常会参与进公司本身的项目。
本文转自d1net(转载)