搭建一款属于自己的物联网平台

物联网平台 - Thinglinks-iot

## 🌟 项目简介

一个功能完备、高可扩展的物联网平台,提供完整的设备接入、管理和数据处理解决方案。支持多种网络协议,具备强大的消息解析和实时告警能力,帮助企业快速构建物联网应用。

该项目现已纳入若依项目拓展中

演示地址

代码地址:https://gitee.com/chinachentao/thinglinks-community
演示使用,请不要暴力测试和修改密码,谢谢。
http://47.109.145.72:28082/
账号:admin 密码:admin123

测试方式

MQTT方式:

1、线上已经开启一个端口,连接即可

2、发送以下消息到任意topic

{
“humidity”: 45.7,
“inTemperature”: 22.5,
“outTemperature”: 31,
“voice”: 65.2,
“windSpeed”: 13.8,
“deviceSn”:“mqtt_001”
}

3、查看对应SN设备数据,消息已经上来

Websocket方式也是如此:

1、线上已经开启一个ws连接地址: ws://47.109.145.72:10883/test1
2、发送消息

{
“humidity”: 45.7,
“inTemperature”: 22.5,
“outTemperature”: 31,
“voice”: 65.2,
“windSpeed”: 12.8,
“deviceSn”:“WS_DEVICE_001”
}

3、查看WS_DEVICE_001设备数据

4、在历史数据按钮里面能够看到上下线和上报的历史数据

其他网络组件也是如此,由于线上环境这两种协议比较方便测试,只添加了这两种数据。

🚀 核心特性

1. 设备全生命周期管理

  • 状态监控- 实时设备在线状态跟踪,多种在离线模式
  • 数据清理- 设备可单独配置消息保存时间,到期自动删除

2. 多协议接入支持

  • TCP- 稳定可靠的长连接通信
  • MQTT- 轻量级的发布订阅模式
  • UDP- 高效的低延迟数据传输
  • CoAP- 专为受限设备设计的协议
  • HTTP- 标准的RESTful接口
  • WebSocket- 实时双向通信
  • MODBUS(开发中)- 工业物联网设备协议

3. 智能消息解析

  • 协议适配- 多种数据格式解析(JSON、二进制、自定义)
  • 数据转换- 灵活的数据格式转换和归一化
  • 规则引擎- 可配置的数据处理规则
  • 数据转发- 可配置数据转发到各种消息队列,HTTP接口
  • 设备联动- 多设备联合条件触发,多设备执行指令

4. 实时告警系统

  • 阈值告警- 可配置的数据阈值监控
  • 规则引擎- 灵活的告警规则定义
  • 设备联动- 灵活的设备联动配置,如A设备触发告警、执行B设备指令
  • 多通道通知(开发中)- 邮件、短信、Webhook等多种通知方式
  • 告警分级- 多级别告警管理

5. 远程功能下发

  • 指令管理- 统一的指令下发接口
  • 自动下发- 触发告警后自动下发相应指令
  • 历史记录- 手动\告警触发指令执行记录

6、协议开发

协议包在代码同级目录 protocol.zip
开发协议只需要实现对应网络协议的decode和encode方法即可

decode对应设备上行消息协议

encode对应设备指令下发解析

以mqtt-client为例

1、实现MqttClientProtocol的decode方法,并把解析后的消息组装到DecodeMessage类并返回。

2、实现MqttClientProtocol的encode方法,并把解析后的消息组装到EncodeMessage类并返回。

3、打包成jar包上传到平台,并选择对应的协议分类即可。

注意:更新或者新增协议无需重启项目,上传即生效,平台启动之后,后续任何操作都无需再重启平台。

下面是协议中重要的类截图

MqttClientProtocol接口:

MqttClientDeal实现类:

DecodeMessage解析后的消息实体:

EncodeMessage解析后的指令下发实体:

🏗️ 系统架构

🛠️ 快速开始

1、首页

2、产品管理

3、告警配置

4、实时数据

5、指令下发

6、物模型

7、告警记录

8、其他配置

9、网络组件

10、组件调试

11、协议管理

12、规则引擎-数据转发

13、规则引擎-设备联动

14、规则引擎-定时任务

15、设备管理-地图服务

!

环境要求

JDK >= 1.8
MySQL >= 5.7
Maven >= 3.0
Node >= 12
Redis >= 3

项目地址:https://gitee.com/chinachentao/thinglinks-community

⭐ 支持项目

如果这个项目对您有帮助,请给我们一个 Star!您的支持是我们持续更新的动力。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1147876.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

DiT注意力可视化解密:从像素迷宫到语义地图的探索之旅

DiT注意力可视化解密:从像素迷宫到语义地图的探索之旅 【免费下载链接】DiT Official PyTorch Implementation of "Scalable Diffusion Models with Transformers" 项目地址: https://gitcode.com/GitHub_Trending/di/DiT 你是否想过,当…

跨平台字体适配终极方案:PingFangSC多设备字体一致性完整指南

跨平台字体适配终极方案:PingFangSC多设备字体一致性完整指南 【免费下载链接】PingFangSC PingFangSC字体包文件、苹果平方字体文件,包含ttf和woff2格式 项目地址: https://gitcode.com/gh_mirrors/pi/PingFangSC 在当今多设备普及的时代&#x…

ResNet18实战:基于TorchVision的稳定识别方案

ResNet18实战:基于TorchVision的稳定识别方案 1. 通用物体识别与ResNet-18技术背景 在计算机视觉领域,通用物体识别是基础且关键的任务之一。它要求模型能够从一张图像中理解并分类出最可能的物体或场景类别,广泛应用于内容审核、智能相册、…

笔记本智能散热控制系统:告别过热烦恼的终极方案

笔记本智能散热控制系统:告别过热烦恼的终极方案 【免费下载链接】nbfc NoteBook FanControl 项目地址: https://gitcode.com/gh_mirrors/nb/nbfc 还在为笔记本电脑风扇噪音大、机身发烫而烦恼吗?NBFC智能散热控制系统通过精准的温度监控和智能风…

高效剪贴板管理:从入门到精通的CopyQ完全指南

高效剪贴板管理:从入门到精通的CopyQ完全指南 【免费下载链接】CopyQ hluk/CopyQ: CopyQ 是一个高级剪贴板管理器,具有强大的编辑和脚本功能,可以保存系统剪贴板的内容并在以后使用。 项目地址: https://gitcode.com/gh_mirrors/co/CopyQ …

InstallerX:重新定义你的Android应用安装体验

InstallerX:重新定义你的Android应用安装体验 【免费下载链接】InstallerX A modern and functional Android app installer. (You know some birds are not meant to be caged, their feathers are just too bright.) 项目地址: https://gitcode.com/GitHub_Tren…

HBuilderX下载Windows版本完整指南:从获取到配置详解

从零开始搭建高效前端开发环境:HBuilderX Windows 全流程实战指南 你是不是也遇到过这样的情况?刚准备入手一个 uni-app 项目,却被卡在第一步—— 到底怎么下载和配置 HBuilderX 才不踩坑 ? 网上搜“hbuilderx下载”&#xff…

3步搞定跨平台构建:xmake极速上手实战指南

3步搞定跨平台构建:xmake极速上手实战指南 【免费下载链接】xmake 🔥 一个基于 Lua 的轻量级跨平台构建工具 项目地址: https://gitcode.com/xmake-io/xmake 从环境配置到项目构建的全流程避坑手册 作为一名开发者,你是否经历过这样的…

ResNet18性能测试:1000类识别精度与速度参数详解

ResNet18性能测试:1000类识别精度与速度参数详解 1. 引言:通用物体识别中的ResNet-18价值定位 在当前AI视觉应用快速落地的背景下,轻量级、高精度、可本地部署的图像分类模型成为边缘计算和私有化场景的核心需求。ResNet-18作为深度残差网络…

Altium Designer中PCB封装创建:手把手教程(从零实现)

从零开始在Altium Designer中创建PCB封装:实战全流程详解 你有没有遇到过这样的情况?原理图画完了,兴冲冲地更新到PCB,结果弹出一个红色警告:“ Unmatched Footprint ”——某个关键芯片找不到对应的封装。更糟的是&…

RISC-V指令集如何提升工控系统实时性:深度剖析

RISC-V如何让工控系统“快准稳”:从指令集到实时控制的深度拆解在一条自动化生产线上,机械臂每秒完成数十次精准抓取;在风力发电机的变桨控制器中,毫秒级响应决定着设备安全;在高速伺服驱动器里,微秒级的时…

eza终极指南:现代化文件管理的革命性突破

eza终极指南:现代化文件管理的革命性突破 【免费下载链接】eza A modern, maintained replacement for ls 项目地址: https://gitcode.com/gh_mirrors/ez/eza 在终端操作中,文件列表查看是日常工作中最基础却最频繁的任务。传统的ls命令虽然可靠&…

7天掌握PingFangSC字体优化:跨平台适配的完整方案与实战指南

7天掌握PingFangSC字体优化:跨平台适配的完整方案与实战指南 【免费下载链接】PingFangSC PingFangSC字体包文件、苹果平方字体文件,包含ttf和woff2格式 项目地址: https://gitcode.com/gh_mirrors/pi/PingFangSC 在当今多设备并存的数字时代&…

阿里万相WAN2.2-AllInOne V6:新手快速上手影视级AI视频制作完整指南

阿里万相WAN2.2-AllInOne V6:新手快速上手影视级AI视频制作完整指南 【免费下载链接】WAN2.2-14B-Rapid-AllInOne 项目地址: https://ai.gitcode.com/hf_mirrors/Phr00t/WAN2.2-14B-Rapid-AllInOne 想要在几分钟内创作出专业水准的AI视频吗?阿里…

3步搞定jq安装:让JSON数据处理变得轻松简单

3步搞定jq安装:让JSON数据处理变得轻松简单 【免费下载链接】jq Command-line JSON processor 项目地址: https://gitcode.com/gh_mirrors/jq/jq jq是一款轻量级的命令行JSON处理器,能够让你在终端中轻松处理JSON数据。无论你是开发者、数据分析师…

StructBERT零样本分类参数详解:提升分类精度的关键设置

StructBERT零样本分类参数详解:提升分类精度的关键设置 1. 引言:AI 万能分类器的崛起 在自然语言处理(NLP)领域,文本分类是构建智能系统的核心能力之一。传统方法依赖大量标注数据进行监督训练,成本高、周…

终极指南:3步完成OpenWrt固件个性化定制的完整方案

终极指南:3步完成OpenWrt固件个性化定制的完整方案 【免费下载链接】OpenWrt_x86-r2s-r4s-r5s-N1 一分钟在线定制编译 X86/64, NanoPi R2S R4S R5S R6S, 斐讯 Phicomm N1 K2P, 树莓派 Raspberry Pi, 香橙派 Orange Pi, 红米AX6, 小米AX3600, 小米AX9000, 红米AX6S 小…

如何快速上手code-interpreter:开源代码解释器的完整指南

如何快速上手code-interpreter:开源代码解释器的完整指南 【免费下载链接】code-interpreter Python & JS/TS SDK for adding code interpreting to your AI app 项目地址: https://gitcode.com/gh_mirrors/co/code-interpreter code-interpreter 是一个…

零样本分类技术详解:StructBERT的语义相似度

零样本分类技术详解:StructBERT的语义相似度 1. 引言:AI 万能分类器的时代来临 在传统文本分类任务中,开发者通常需要准备大量标注数据、设计模型结构,并进行长时间训练才能获得一个可用的分类器。然而,在真实业务场…

Webots机器人仿真大师课:从零到一的实战指南

Webots机器人仿真大师课:从零到一的实战指南 【免费下载链接】webots Webots Robot Simulator 项目地址: https://gitcode.com/gh_mirrors/web/webots 想要快速掌握机器人仿真技术却不知从何下手?🤔 作为开源机器人仿真领域的明星工具…