基于微信小程序的物联网模块监测系统设计与实现
Design and Implementation of IoT Module Monitoring System Based on WeChat Mini Program
DOI: 10.12677/hjwc.2025.154010, PDF, HTML, XML,    科研立项经费支持
作者: 韦锦瑜, 孙嵩斐, 孙飞宇, 刘翔宇, 上官乐娜, 任经博, 马青松*:河南职业技术学院电子与物联网学院,河南 郑州
关键词: 微信小程序物联网监测MySQL数据库WeChat Mini Program IoT Monitoring MySQL Database
摘要: 【目的】为提升物联网设备远程监测的便捷性与实时性,解决传统监测系统依赖专用客户端、操作复杂的问题。【方法】本研究基于微信小程序生态,结合B/S架构、Java微服务及MySQL数据库,设计并实现了一种轻量级物联网模块监测系统。【结果】系统包含用户认证、设备管理、实时数据可视化及异常预警四大核心模块,支持微信授权登录、设备二维码绑定、多协议数据采集及历史数据回溯功能。【结论】系统能够实时查看物联网模块运行状态,可为工业设备监控、智慧农业等场景提供高效的远程监测解决方案。
Abstract: [Purpose] In order to improve the convenience and real-time monitoring of IoT devices and solve the problems of traditional monitoring systems relying on dedicated clients and complex operations. [Method] This study is based on the WeChat mini program ecosystem, combined with B/S architecture, Java microservices, and MySQL database, to design and implement a lightweight IoT module monitoring system. [Result] The system includes four core modules: user authentication, device management, real-time data visualization, and abnormal warning. It supports WeChat authorization login, device QR code binding, multi protocol data collection, and historical data tracing functions. [Conclusion] The system is capable of real-time monitoring of the operational status of IoT modules, providing efficient remote monitoring solutions for industrial equipment monitoring, smart agriculture, and other scenarios.
文章引用:韦锦瑜, 孙嵩斐, 孙飞宇, 刘翔宇, 上官乐娜, 任经博, 马青松. 基于微信小程序的物联网模块监测系统设计与实现[J]. 无线通信, 2025, 15(4): 95-104. https://doi.org/10.12677/hjwc.2025.154010

1. 引言

物联网技术的快速发展催生了海量设备接入需求,传统监测系统多基于C/S架构开发[1],存在客户端部署成本高、跨平台兼容性差等问题。尤其在远程教育、工业运维等场景中,用户亟需轻量化、易访问的监测工具。微信小程序凭借其免安装、跨平台及高用户覆盖率的特性,为物联网监测提供了新的技术路径。

2. 系统架构

Figure 1. System architecture diagram

1. 系统架构图

系统依托微信小程序生态,构建了一套高效、安全的物联网设备远程监测解决方案。系统采用分层架构设计如图1,从前端交互到设备接入实现全链路管理:前端交互层基于微信小程序框架开发,通过WXML/WXSS实现动态布局渲染,JavaScript处理用户交互逻辑,并集成WebSocket协议实现设备状态实时推送[2]。用户可通过小程序扫码绑定设备、查看实时数据及下发控制指令,操作体验流畅。业务逻辑层采用Spring Boot微服务架构,通过RESTful API网关统一接口管理,结合JWT鉴权保障数据安全。MQTT消息代理负责设备指令下发与数据上行,设备管理服务支持设备绑定、状态监控与异常告警,确保业务逻辑高效执行。数据层整合MySQL与Redis,前者持久化存储设备元数据及用户日志,后者缓存实时传感器数据,显著提升高频查询效率。设备层接入多类型传感器与执行器,通过MQTT/HTTP协议与云端交互,实现数据采集与远程控制的闭环管理。系统具备实时性、安全性与扩展性,已成功应用于工业监测、智慧农业等领域,有效提升设备管理效率与数据价值。

2.1. B/S架构

系统采用B/S架构实现物联网模块监测的跨平台访问能力[3]。相较于C/S架构,B/S架构的核心思想是将应用程序的复杂逻辑集在服务器,用户通过浏览器向Web服务器发送HTTP请求,Web服务器处理请求后,可能需要与数据库服务器进行数据交互。数据库服务器处理数据请求后,将结果返回给Web服务器,Web服务器再将结果转换为HTML文本形式发送浏览器,展示给用户,具有灵活性、跨平台兼容性和易于维护和升级的特点。

2.2. 微信小程序

微信小程序是一种基于微信生态的轻量级应用,用户无需下载安装即可通过扫码或搜索直接使用。其核心目标是实现“即用即走”的体验,同时兼顾接近原生应用的性能[4]。技术层面,小程序的开发融合了前端技术与微信独有的框架体系,开发者主要使用 JavaScript、类HTML/CSS语言及微信封装的API进行构建[5] [6]。微信小程序的WXML是一种用于构建页面结构的标记语言,WXML通过自定义标签替代传统HTML标签,支持数据绑定语法,允许动态渲染内容。它内置了条件渲染和列表渲染指令,开发者无需直接操作DOM即可实现动态界面更新,同时通过事件绑定与逻辑层交互,简化了用户行为响应逻辑。WXSS小程序的样式语言,基本语法与CSS一致,但引入了适配移动端的特性。

在核心技术架构层面,微信小程序采用类Web技术的分层设计理念[7]。配置管理采用JSON格式,支持全局配置与页面级配置的双层结构,这种设计既保证了配置的灵活性,又维护了项目的可维护性。

2.3. Java编程语言

Java是一种面向对象、跨平台的高级编程语言,凭借“一次编写,到处运行”的特性,广泛应用于企业级开发、移动应用和服务器端开发[8]。其核心优势包括健壮的内存管理、多线程支持、丰富的类库生态以及通过JVM实现的平台无关性。在微信小程序生态中,Java虽不直接参与小程序前端开发,但常作为后端服务的关键技术:通过构建RESTful API或微服务架构处理业务逻辑,连接数据库并实现数据加密、用户鉴权等高安全需求,最终通过HTTPS协议与小程序前端交互。例如,使用Java开发的Spring Boot服务[9]可为小程序提供实时数据计算、设备状态同步或用户行为分析等能力,成为支撑小程序复杂功能的核心技术底座。

2.4. 数据库技术

MySQL作为物联网监测系统的核心数据管理平台,通过多线程架构与ACID事务机制,实现了每秒数千级传感器数据的高并发写入与设备状态变更的可靠记录,其智能查询优化器显著提升了结构化时序数据的处理效率[10]。在架构设计上,采用规范化表结构管理设备元数据,基于时间分区表存储温湿度、电压等动态指标,并通过主从复制集群实现读写分离,主库实时承接监测数据流,从库支撑分析查询负载。针对物联网场景特性,MySQL结合内存表缓存高频状态数据、压缩表缩减历史存储空间、GIS扩展处理地理坐标,同时利用存储过程在数据库层直接实现阈值告警与数据清洗逻辑,形成轻量化业务闭环。通过与JDBC/ODBC协议对接数据分析平台,配合索引优化与缓冲池调优,系统吞吐量可提升超40%,稳定支持百万级设备的数据处理需求,广泛应用于工业设备监控、智慧农业及环境监测等领域,成为连接物理感知与数字分析的关键枢纽。

3. 系统需求与总体设计

3.1. 系统总体需求分析

系统通过微信小程序实现物联网设备的远程管控。系统需服务三类用户角色:普通用户通过微信授权登录,实时查看设备状态、接收异常告警并远程下发控制指令;管理员需管理用户权限、审核设备接入及监控系统运行。核心功能涵盖设备全生命周期管理、多维度数据交互及安全身份认证。系统需支持多协议设备接入,确保从数据采集到用户交互的闭环管理,满足工业级设备监测的精准性与实时性要求,提升远程运维效率与决策支持能力,系统功能需求如表1所示。

Table 1. Requirements for IoT module monitoring system

1. 物联网模块监测系统需求

需求

功能

功能项

功能需求

用户管理

微信授权登录、权限分级、操作日志

设备管理

扫码/手动绑定、状态监控、批量导入/导出

数据监测

实时可视化、历史查询、异常告警

控制交互

远程指令下发、阈值设置、执行反馈

用户角色需求

普通用户

查看实时数据、设备控制、接收告警

管理员

用户权限管理、设备审核、系统监控

3.2. 系统登录

Figure 2. User login process diagram

2. 用户登录流程图

系统登录模块采用微信开放平台的OAuth2.0认证机制,通过获取用户微信唯一标识UnionID实现免注册登录。通过服务端SessionKey动态校验机制增强安全性,避免敏感信息泄露。设备添加功能需集成二维码生成与解析技术,采用ZXing库实现设备编码的图形化转换,结合AES加密算法保障设备标识传输安全性。添加流程包含设备有效性验证环节,通过服务端接口调用物联网云平台API核验设备合法性,防止非法设备接入系统。如图2所示用户登录流程图。

3.3. 功能需求

功能需求分为四个主要类别:用户管理、设备管理、数据监测和控制交互。

3.3.1. 用户管理

用户管理功能确保了系统的安全性和用户操作的可追溯性。它包括微信授权登录,用户可以通过微信账号快速安全地访问系统。权限分级允许系统管理员根据不同用户的角色分配不同的访问权限,保护敏感数据。操作日志记录了用户在系统中的所有操作,便于审计和追踪。

3.3.2. 设备管理

设备管理功能是物联网应用的核心,它允许用户通过扫码或手动绑定的方式添加设备,并对设备状态进行监控。批量导入/导出功能则方便了大量设备的管理,提高了工作效率。

3.3.3. 数据监测

实时可视化和历史查询功能使用户能够随时了解设备的运行状态,而异常告警则在设备出现异常时及时通知用户,确保问题能够被及时发现和处理。

控制交互功能允许用户远程下发指令,设置阈值,并接收执行反馈。这使得用户能够远程控制设备,实现自动化管理。

3.4. 用户角色需求

用户角色需求部分则针对不同用户角色在系统中的特定需求进行了详细说明,主要分为普通用户和管理员两大类。

3.4.1. 普通用户

普通用户主要集中在查看实时数据、设备控制和接收告警上。用户需要能够实时监控设备状态,通过应用界面控制设备,并在设备出现异常时接收到告警通知。以上功能使得普通用户能够有效地管理和使用设备,而无需深入了解后台操作。

3.4.2. 管理员

管理员权限拥有系统更高权限。用户权限管理允许管理员控制不同用户的访问权限,确保系统的安全性。设备审核功能使得管理员能够对新添加的设备进行审核,确保所有设备都符合安全和性能标准。系统监控则提供了对整个系统运行状态的全面视图,帮助管理员及时发现并解决问题,保障系统的稳定运行。

通过区分普通用户和管理员的需求,这个物联网应用能够为不同用户提供定制化的服务,确保每个用户都能根据自己的角色和需求有效地使用系统。这种角色区分不仅提高了用户体验,也增强了系统的安全性和管理效率。

4. 系统设计结果

4.1. 开发环境系统

本系统采用的前端开发环境是微信开发者工具V1.06,使用Vant Weapp组件库优化UI交互。微信小程序框架基于WXML/WXSS原生语法,通过npm管理依赖包。采用Java开发环境IntelliJ IDEA 2023和JDK17,Spring Boot 3.0框架整合MyBatis-Plus与Redis,通过Swagger3生成API文档,部署于Tomcat 10.0容器,运行应用程序,系统开发环境系统版本如表2所示。

Table 2. Development environment system versions

2. 开发环境系统版本

分类

要求

微信开发者工具

V1.06

JDK

jdk17

Spring Boot

3.0版本以上

IntelliJ IDEA

IntelliJ IDEA 2023

Tomcat

Tomcat 10

4.2. 系统登录

登录界面分为已注册用户登录和未注册用户注册两种流程:已注册用户需输入用户名和密码,验证成功后进入首页;未注册用户可选择微信、支付宝或手机号授权快速注册,授权后补充必要信息如用户名、密码,系统校验通过后自动登录并跳转首页。若输入信息缺失或校验失败,系统会实时提示错误并引导用户修正,确保流程顺畅,系统登录界面如图3所示。

Figure 3. System login interface

3. 系统登陆界面

4.3. 设备添加功能

4.3.1. 设备管理

系统采用响应式布局构建设备管理界面,顶部导航栏集成CRUD功能控件,通过悬浮操作按钮实现设备注册入口。核心功能区部署全局搜索组件,支持设备唯一标识符及用户自定义别名的模糊匹配查询。设备列表视图采用卡片式设计,动态展示设备元数据:包括设备命名规范值、硬件序列号、剩余电量百分比及最后心跳时间戳。用户交互层提供深度数据钻取功能,点击条目可调取设备全量监测数据面板,包含环境传感器矩阵、运动状态参数及光照强度等物联数据集。设备管理页面和设备详情页如图4图5所示。

Figure 4. Equipment management list page

4. 设备管理列表页

Figure 5. Equipment management details

5. 设备管理详情

4.3.2. 地图定位

系统通过电子地图界面实时展示设备位置信息,用户可在地图上直观查看带有蓝色标记的设备当前位置,并可通过手指缩放、拖拽操作自由浏览不同区域。地图下方设有状态显示区,清晰列出设备当前所处的经度,以及移动速度和方向的状态数据。系统提供历史移动轨迹回放功能,用户可通过滑动时间轴查看设备过去的活动路线。此外,支持用户自定义设置数据更新频率如每5分钟刷新,并通过结构化指令模板输入设备控制参数,确保操作指令的规范性和安全性。整个界面适配手机、平板等多种设备屏幕,满足用户在不同场景下的使用需求。设备定位页面如图6所示。

Figure 6. Equipment positioning

6. 设备定位

4.3.3. 消息中心

消息中心界面为用户提供了集中管理各类信息的交互空间,包含报警消息、系统通知和指令回执三个分类标签页。在报警消息标签页中,系统会实时推送设备运行状态预警,例如当设备ID:8842的电池电量下降至20%时,将自动触发低电量提醒,提示用户及时处理充电需求;同时,用户自定义的监测阈值一旦被触发,如设备ID:8839的传感器检测到温度超过安全范围,界面会立即显示数据异常警告并建议进行设备检查。系统通知标签页主要用于推送平台动态信息。指令回执标签页则承担着指令交互反馈功能,用户向设备发送控制指令后,可通过该页面查看每条指令的实时执行状态,例如设备重启指令是否成功送达、参数修改是否生效等关键信息,形成完整的“发送–响应”闭环。三类消息均以时间轴顺序排列,确保用户能够快速定位最新动态与历史记录。消息中心界面如图7所示。

Figure 7. Message center

7. 消息中心

5. 结语

本研究基于微信小程序生态,结合B/S架构、Java微服务及MySQL数据库,设计并实现了一种轻量级物联网模块监测系统。系统包含用户认证、设备管理、实时数据可视化及异常预警四大核心模块,支持微信授权登录、设备二维码绑定、多协议数据采集及历史数据回溯功能。系统能够实时查看物联网模块运行状态,可为工业设备监控、智慧农业等场景提供高效的远程监测解决方案。

基金项目

2024年度河南省高等教育教学改革研究与实践立项重点项目“高职院校电子信息类技术技能人才创新创业能力培养探索与实践”(2024SJGLX0692),主持人:刘拥军;2024年度河南省中央引导地方科技发展资金项目(Z20241471015);2025年度河南省科技攻关252102210157。河南省高等教育学会高等教育研究项目(立项编号:2025SXHLX099)。

NOTES

*通讯作者。

参考文献

[1] 上官雅婷. 基于物联网的沙漠光伏电站监测与功率预测系统[D]: [硕士学位论文]. 南宁: 广西大学, 2024.
[2] 纪志峰, 陈姝, 于健伟, 等. 基于物联网和微信小程序的口腔综合治疗台监测调控系统的研究与应用[J]. 中国医疗设备, 2025, 40(4): 38-43, 54.
[3] 王赵慧. B/S架构下基于物联网的远程温室温度控制系统设计[J]. 河北水利电力学院学报, 2024, 34(4): 50-55.
[4] 林政艺, 杨亚仿, 罗俊. 基于微信小程序的学生评教系统设计与实现[J]. 科技创新与应用, 2025, 15(10): 108-112.
[5] 刘汉奕, 黄俊闻, 黄映欣, 等. 基于微信小程序云开发的牙齿健康检测系统的探索与设计[J]. 电子制作, 2024, 32(6): 64-69.
[6] 王晓俊, 易雪, 赵旭, 等. 微信小程序在手术室医疗设备管理中的应用[J]. 检验医学与临床, 2024, 21(4): 552-555.
[7] 王晓星, 黄建昌. 基于微信小程序的应用开发浅析[J]. 信息技术与信息化, 2021(3): 23-25.
[8] 陈佳潋. 基于微信小程序的建筑铝模板租赁管理系统的设计与开发[D]: [硕士学位论文]. 长沙: 湖南大学, 2023.
[9] 刘芳. 基于微信小程序的电力巡线任务管理系统[J]. 邯郸职业技术学院学报, 2025, 38(1): 24-29.
[10] 朱禹, 蒋娅文, 魏旭龙. 在线门诊预约系统的设计与实现[J]. 福建电脑, 2025, 41(4): 90-94.