基于物联网平台的高校实验室管理系统

2022-11-22 05:59苏泽荫陈源毅王华敏
物联网技术 2022年11期
关键词:网络层阿里联网

苏泽荫,陈源毅,王华敏

(厦门大学嘉庚学院 信息科学与技术学院,福建 漳州 363105)

0 引 言

随着现代科学技术的发展,互联网、物联网和智能终端等技术日趋成熟,已经逐渐渗透到社会生活的各个方面。目前高校的实验室和机房数量多、种类多,实验员经常需要巡查实验室和机房以确保设备的正常运行[1]。一些重要实验室还需要保证实验室的温度、湿度等环境条件满足要求,工作量大,而且容易疏忽遗漏,不能及时发现并处理实验室或者机房出现的问题。因此,智能化的实验室和机房管理需求越来越大[2]。

本文设计了一种解决方案:以物联网技术为核心,采用各种传感器采集环境数据,传输到主控系统进行智能化处理,并把处理后的数据通过无线网络传输到物联网平台,再从物联网平台转发数据到Web服务器,从而实现在Web应用端和手机客户端实时地进行可视化显示和控制。本方案设计的系统具有低成本、易实施、可拓展性强的优点,可快速根据具体的应用场景进行拓展开发。

1 系统方案设计

本文设计的系统主要由STM32主控系统、传感器数据采集模块、ESP8266网络模块[3]、阿里云物联网平台、手机APP客户端和Web应用六大部分组成。系统方案的整体架构分为感知网络层、平台层和应用层,如图1所示。

图1 系统整体架构

在感知网络层中,传感器节点实时采集各种环境数据,传送到STM32主控系统进行处理,根据处理结果智能控制开关。STM32主控系统通过ESP8266网络模块,采用MQTT协议将处理后的数据通过WiFi传输到平台层的阿里云物联网平台。在应用层,在Web应用和移动端的APP中集成物联网平台提供的JAVA SDK,调用API获取物联网平台的数据实时显示,并传递控制信号,从而实现对实验室或者机房状态的实时监控[4]。

2 感知网络层设计

感知网络层主要由STM32主控系统、传感器数据采集模块、ESP8266无线网络模块组成。STM32主控系统主要由STM32F103C8T6最小系统板和开关模块组成。感知网络层组成如图2所示,工作流程如图3所示。

图2 感知网络层组成

图3 感知网络层的工作流程

感知网络层主要实现以下功能[5]:

(1)根据实际应用场景、实验室的要求设置每个传感器采集指标的阈值范围。

(2)每秒采集传感器数据进行处理,将模拟量转化为具有实际意义的数字量,然后通过ESP8266网络模块连接互联网并向阿里云物联网平台上报数据。

(3)判断数据是否在设置的阈值范围内,如果不在,就用声音报警并控制开关模块关闭指定的开关。

(4)接收物联网平台下发的阈值并更新阈值。

(5)接收物联网平台下发的控制命令,关闭或者开启指定开关。

2.1 主控模块

考虑到系统要具备成本低、功耗低的特点,本设计方案采用STM32F103C8T6最小系统作为主控模块。

2.2 传感器模块

传感器模块由多个传感器及其电路组成。传感器的选用要根据实际的应用场景决定,本文针对一个正常的实验室环境进行测试,采用DHT22温湿度传感器、MQ-2烟雾气敏传感器、火焰传感器和光敏电阻传感器等构成传感器检测模块。传感器采集的数据需要经过STM32单片机处理和转化才能使用[6]。图4是传感器模块的构成。

图4 传感器模块结构

2.3 开关模块

开关模块由多路继电器构成,通过控制继电器的开关从而控制实验室的电源、空调、照明灯开关。

3 物联网平台层设计

感知网络层采集环境数据传输到物联网平台存储,物联网平台将阈值和控制数据下发到感知网络层,实现对系统的控制。本方案采用MQTT协议作为感知网络层和物联网平台层的网络通信协议,物联网平台采用阿里云物联网平台[7]。

3.1 MQTT协议

MQTT协议是一个基于客户端-服务器和消息发布/订阅模型的通信协议。Topic是消息发布者和订阅者之间的传输中介。设备可通过Topic实现消息的发送和接收,从而实现服务端与设备端的通信。

根据本方案的实际场景需要,在物联网平台定义了物模型通信Topic,包含属性上报、属性设置和事件上报。通过这些物模型通信 Topic,就能实现设备数据上传和服务端指令下发。

3.2 阿里云物联网平台

阿里云物联网平台是在阿里云上搭建了具备设备接入、设备管理、数据安全通信和消息订阅等能力的一体化平台,支持采集海量设备数据上云并提供云端API,让Web应用和移动端APP可通过调用云端API实现数据的可视化显示或者将指令下发至设备端,实现远程控制的功能[8],工作原理如图5所示。

图5 阿里云物联网平台工作原理

要使感知网络层与阿里云物联网平台通信需要经过以下五个步骤[9]:

(1)创建产品与设备:根据实际的应用需求,创建产品和设备,获取设备证书信息即三元组:ProductKey、DeviceName和DeviceSecret,作为设备连接物联网平台的身份认证。

(2)为产品定义物模型:将感知网络层设备抽象成由属性、服务、事件所组成的数据模型后,就能在物联网平台上进行管理和数据交互。

(3)建立设备与平台的连接:感知网络层设备根据设备证书信息通过MQTT协议连接物联网平台,在物联网平台控制台就可以看到设备状态显示为在线。

(4)定义物模型通信Topic:设置属性上报、属性设置和事件上报Topic。

(5)设备端通过接口定时发布属性状态的Topic,并获取属性设置Topic,从而实现设备数据的上报和操作命令的下发。

完成感知网络层和阿里云物联网平台通信后,还需要进一步实现阿里云物联网平台和Web服务器通信,把物联网平台数据存储到MySQL数据库。因此需要在物联网平台上配置服务端订阅,主要有以下三个步骤:创建消费组,创建订阅,服务端集成并运行AMQP客户端。阿里云物联网平台采用AMQP服务端订阅实现将设备消息流转到Web服务器上,然后将设备消息存储到数据库中。

4 应用层设计

应用层主要包含Web应用和移动端APP[10]。Web应用开发采用前后端分离这种目前最新的开发模式。前端采用Vue开发框架,后端采用Spring Boot和MyBatis框架。移动端APP采用目前市场占有率最高的Android系统,后续可根据需要再扩充其他操作系统。

应用层主要实现的功能如下:

(1)用户管理功能:不同的用户登录后具有不同的权限,能查看和控制的实验室是不同的,重要且敏感的系统功能只有高级管理员用户能使用。

(2)接入并运行AMQP客户端:下载阿里云物联网平台提供的JAVA SDK,参考官方文档,完成业务代码编写,运行AMQP客户端,即可接收设备消息,将上报的数据存储到MySQL数据库中。

(3)数据的实时显示:在Web应用和移动端APP的页面实现各种指标数据的实时显示。

(4)各个指标数据在一段时间内的折线图显示:可长时间记录历史数据,随时可查询。

(5)开关控制和阈值设置:提供按钮进行开关控制,提供文本框进行阈值设置。控制和设置命令通过物联网平台转发,下发到设备端。

5 系统测试

各个高校的实验室、机房环境和设备不尽相同,而本文提出的实验室智能化管理的解决方案需要根据学校实验室的实际环境进行配置。本文针对一个比较普通的实验室环境进行测试。

测试过程:在实验室运行整套硬件系统,查看Web应用的页面和手机APP上是否实时显示数据,显示的数据是否正常。

测试结果:阿里云物联网平台的物模型数据显示如图6所示,手机APP的测试页面如图7所示,Web应用的测试页面如图8所示。

图6 阿里云物联网平台的物模型数据

图7 手机APP页面显示

图8 Web应用页面显示

经过测试分析,该系统能实时显示传感器采集数据,对异常数据也能报警并上报,在Web应用和手机APP都能实现远程控制实验室、空调和照明开关,很好地满足了系统的设计要求。

6 结 语

本文结合了互联网、物联网和智能终端等技术,提出一个智能化管理实验室的解决方案,以解决目前高校实验室采用人工管理的方式带来的工作量大且无法及时发现现场出现的状况的问题。本方案设计的系统成本较低、易于实现、应用场景广泛,可以针对各种室内场景进行定制化开发,具有一定的应用价值,可进一步推广。

猜你喜欢
网络层阿里联网
“身联网”等五则
云上阿里
辰辰带你游阿里
抢占物联网
阿里战略
可再生能源与物联网
阿里是个好榜样
得MCU者得物联网天下
Current advances in neurotrauma research: diagnosis, neuroprotection, and neurorepair