盘点 12 个物联网开源项目,yyds!

盘点12个高质量的物联网开源项目,干货蛮多的,建议收藏。
1、AliOS-Things
开源地址:https://gitee.com/alios-things/AliOS-Things
AliOS Things发布于2017年杭州云栖大会, 是 AliOS 家族旗下的、面向IoT领域的、高可伸缩的物联网操作系统。AliOS Things 致力于搭建云端一体化 IoT 基础设施,具备极致性能、极简开发、云端一体、丰富组件、安全防护等关键能力,它支持多种多样的设备连接到阿里云IoT平台,可广泛应用在智能家居、智慧城市、工业,新出行等领域。

2、LiteOS
开源地址:https://gitee.com/LiteOS/LiteOS
Huawei LiteOS是华为面向物联网领域开发的一个基于实时内核的轻量级操作系统。
本项目属于华为物联网操作系统Huawei LiteOS源码,现有基础内核支持任务管理、内存管理、时间管理、通信机制、中断管理、队列管理、事件管理、定时器等操作系统基础组件,更好地支持低功耗场景,支持tickless机制,支持定时器对齐。

3、FastBee
开源地址:https://gitee.com/kerwincui/wumei-smart
FastBee是一个简单易用的生活物联网平台。可用于搭建物联网平台以及二次开发和学习。适用于智能家居、智慧办公、智慧社区、农业监测、水利监测、工业控制等。
系统后端采用Spring boot;前端采用Vue;消息服务器采用EMQX;移动端支持微信小程序、安卓、苹果和H5采用Uniapp;数据库采用Mysql、TDengine和Redis;设备端支持ESP32、ESP8266、树莓派、合宙等;

功能:
- 权限管理: 用户管理、部门管理、岗位管理、菜单管理、角色管理、字典和参数管理等
- 系统监控: 操作日志、登录日志、系统日志、在线用户、服务监控、连接池监控、缓存监控等
- 产品管理: 产品、产品物模型、产品分类、产品固件、设备授权码等
- 设备管理: 设备控制、设备分组、设备定时、设备日志、监测统计、设备定位、设备分- 享、设备禁用、OTA升级、实时状态、影子模式、实时监测、加密认证等
- EMQ管理: Mqtt客户端、监听器、消息主题、消息订阅、插件管理、规则引擎、资源 -** 硬件 SDK:** 支持WIFI和MQTT连接、物模型响应、实时监测、定时上报数据、AES加密、NTP时间、AP配网等
- 物模型管理: 属性(设备状态和监测数据),功能(执行特定任务),事件(设备主动上报给云端)
- 其他功能:多租户、统计、新闻资讯、通知公告、支持TDengine时序数据库
- 开发中功能:设备告警、场景联动、云云对接智能音箱、第三方登录、短信登录、设备管理界面自定义、视频流处理等
项目截图:


4、iot-dc3
开源地址:https://gitee.com/pnoker/iot-dc3
DC3 是基于 Spring Cloud 的开源可分布式物联网 (IOT) 平台,用于快速开发、部署物联设备接入项目,是一整套物联系统解决方案。

DC3
平台是基于Spring Cloud
架构开发的,是一系列松耦合、开源的微服务集合。 微服务集合由 4 个微服务层和两个增强的基础系统服务组成,提供从物理域数据采集到信息域数据处理等一系列的服务。

DC3 功能设计,定位目标
- 可伸缩:水平可伸缩的平台,构建使用领先的
Spring Cloud
开源技术; - 容错:没有单点故障弱,集群中的每个节点是相同的;
- 健壮和高效:单一服务器节点可以处理甚至数百成千上万的设备根据用例;
- 可定制:添加新的设备协议,并注册到服务中心;
- 跨平台:使用
Java
环境可异地、分布式多平台部署; - 自主可控:私有云、公有云、边缘部署;
- 完善性:设备快速接入、注册、权限校验;
- 安全:数据加密传输;
- 多租户:命名空间,多租户化;
- 云原生:Kubernetes;
- 容器化:Docker。
5、IoTSharp
Github: https://github.com/IoTSharp/IoTSharp
Gitee: https://gitee.com/IoTSharp/IoTSharp
演示地址:http://demo.iotsharp.net/
IoTSharp是一个基于 .Net 6.0 使用C#语言编写的以实现可见与不可见的物理设备数字孪生的物联网平台。

集设备属性数据管理、遥测数据监测、RPC多模式远程控制、规则链设计引擎等强大能力,依据数字孪生概念将可见与不可见的物理设备统一孪生到数字世界,在落地上IoTSharp结合了资产管理、产品化发展的理念,让平台应用更加贴合复杂的应用场景,在协议支持上支持HTTP、MQTT 、CoAp 等多种标准物联网协议接入和非标协议的转换。
6、IoTGateway
https://gitee.com/iioter/iotgateway

基于.NET6的跨平台物联网网关。通过可视化配置,轻松的连接到你的任何设备和系统(如PLC、扫码枪、CNC、数据库、串口设备、上位机、OPC Server、OPC UA Server、Mqtt Server等),从而与 Thingsboard、IoTSharp或您自己的物联网平台(MES、SCADA)进行双向数据通讯。
提供简单的驱动开发接口;也可以进行边缘计算。
8、HslCommunication
https://github.com/dathlin/HslCommunication
HSL专注于解决工业网络间的复杂的数据通信问题,解决多个独立程序之间的数据通信,甚至是不同的操作系统,平台的网络通信问题, 可以用来构建各种各样的应用程序,下至通信小软件,上位机软件,CS架构的聊天系统,上至ERP系统,历史追溯系统,生产管理系统,MES系统,。
无论你的开发环境是Visual Studio, Visual Studio Code, IntelliJ IDEA, Eclipse, Labview, Android Studio等等

HslCommunication支持的品牌及功能:
HslCommunication同时也是一个通讯插件,支持工业现场大部分设备的数据采集,写入,上传互联网。
PLC品牌支持:

机器人及其他通信支持:

9、thingsboard
开源地址:https://gitee.com/mirrors/ThingsBoard
ThingsBoard 是一个开源的物联网平台,用于数据收集、处理、可视化展示以及设备管理

10、DeviceHive
开源地址:https://github.com/devicehive
DeviceHive是基于Apache 2.0协议开源的的IoT平台,DeviceHive将任何连接的设备都变成物联网的一部分。它提供了通信层、控制软件和多平台库,以引导智能能源、家庭自动化、遥感、遥测、远程控制和监测软件等的开发。
11、yytek-iot-cloud
开源地址:https://gitee.com/zzxmgjy_admin/yytek-iot-cloud
一款前后端分离的分布式微服务架构物联网云平台

- 采用前后端分离的模式,微服务版本前端,Nginx前后端分离负载均衡。
- 后端采用Spring Boot、Spring Cloud & Alibaba。
- Docker部署,脚本一键部署各种服务。
- Akka高性能异步计算设备数据规则处理,Quartz分布式定时任务框架。
- 注册中心、配置中心选型Nacos,GateWay网关,流量控制框架选型Sentinel,分布式事务Seata。
- EMQX(MQTT协议)消息队列,Netty的tcp和udp设备连接,ModBus通信协议。
- 缓存Redis,数据库mysql,时序数据库TDengine,文件服务器Minio高性能开源上传下载。
12、蜂鸟(HummingBird)
开源地址:https://gitee.com/winc-link/hummingbird

蜂鸟(HummingBird) 是 Go 语言实现的超轻量级物联网开发平台,包含设备接入、产品管理、物模型、告警中心、规则引擎等丰富功能模块。系统采用GoLang编写,占用内存极低, 单物理机可实现百设备的连接。
在数据存储上,我们创新的使用了轻量级的 SQLite 和高吞吐和高压缩的 LevelDB 当作了我们存储数据库。
产品优势:
- 免费使用:我们提供免费使用版本,可供个人学习或者公司商用。
- 性能优异:经过实际测试,在2C4G主机上,可支持60k的设备连接。模拟4k设备以1000ms的间隔向服务端发送16KB长度的属性数据,cpu使用率稳定在60%、内存使用率稳定在16%。
- 多数据支持:平台支持SQLite、LevelDB和MySQL、TDengine数据库,用户可以根据自己的项目需要,选择适合自己的数据库。
- 云插件:平台实现了阿里云、腾讯云、华为云、oneNet等物联网平台的对接,支持把数据上报到各大物联网平台中。
- 支持可视化大屏:用户只需要进行简单拖拽,无需写任何代码,即可完成可视化大屏开发设计。
- 内置产品模版库: 平台内部预置产品模版(390条),帮助用户一键创建产品。
- 文档清晰:平台文档清晰完整,文档内部有大量使用案例和视频教程,帮助用户快速理解产品和使用产品。
- 部署简单:平台所有服务都是以docker形式运行,支持docker-compose命令一键启动。
- 成本优势:在中小型物联网项目(设备数<=5000)中,只需要2C4G主机即可,并且还可以支持本地部署。