admin 管理员组

文章数量: 1086019


2024年3月19日发(作者:async组织)

软件打茨与龛用

China

Computer

18

与电

&

Communication

16

2020

年第

22

基于物联阿平台的实训环境监控系统的设计与实现

许浒周志坚

无锡商业职业技术学院

江苏无锡

214000

本文实现了实训室物联网平台数据发布系统的设计开发

在实验实训环境中配置了检测环境的温度

湿度

传感器

使用树莓派作为网关对

GPIO

口采集实训环境数据

通过

Django

web

框架设计服务器设程序实现与树莓派网关

数据通信

利用浏览器网页和微信小程序可以实时监控实训室环境的相关数据

保障正常的工作环境.

键词

物联网

MQTT;

树莓派

传感器

微信小程序

中图分类号

TP391.44

TN929.

5

文献标识码

A

文章编号

1003-9767

2020

22-114-03

Design

and

Implementation

System

Based

of

on

Practical

Internet

Training

of

Things

Environment

Platform

Monitoring

XU

Hu,

ZHOU

Zhijian

(Wuxi

Vocational

Inst

ute

of

Commerce,

Wuxi

Jiangsu

214000,

China)

Abstract

This

paper

realizes

the

design

and

development

of

the

data

release

system

of

the

Internet

of

things

platform

in

the

training

room,

and

configures

the

temperature

and

humidity

sensors

to

detect

the

environment

in

the

experimental

training

environment,

Raspberry

pie

is

used

as

the

gateway

to

collect

training

environment

data

from

GPIO

port.

Through

Django

web

framework,

the

server

is

designed

to

realize

data

communication

with

raspberry

pie

gateway.

The

relevant

data

of

training

room

environment

can

be

monitored

in

real

time

by

using

browser

web

page

and

wechat

applet

to

ensure

normal

working

environment.

Keywords:

Internet

of

Things;

MQTT;

Raspberry

pie;

sensor;

WeChat

applet

0

引言

或网页端发送指令给网关树莓派

控制空调的运行状态

目前

众多高校为了满足各专业教学的需求

建设了大

而达到控制环境状态数据的目的

减少实训环境异常对实验

量实验实训室

21

以笔者所在单位为例

每个教学部门都拥

实训设备产生的影响

实验实训物联网平台的整体架构如图

有多个机房和专业实验实训室

寒暑假过后

实训设备或多

1

所示

或少存在电路问题或网络通讯问题

主要存在以下问题

①天

气异常

极端气候增多

不通风造成实验实训环境异常

备接口氧化

②假期期间

实验实训场所无人值守

设备仪

器关闭

再加上暑假期间的湿度高

对实验仪器设备产生了

一定的影响

在开学初开机故障频频发生

1

系统设计

1

实验实讽物联网平台的整体架构

针对以上问题设计实验实训环境物联网平台

该系统包

使用树莓派连接温湿度传感器

负责采集数据

使用一

3

个部分

分别为终端传感设备

中间网关设备

后端服

个发光二极管模拟空调的运行状态

WEB

网页和微信小程序

务器

终端温湿度传感器与中间网关采用树莓派设备

后端

无法直接与网关树莓派进行数据通信

所以树莓派将采集到

发布控制平台

树莓派结合温湿度传感器对实训实验环境数

的环境数据发布到

mqtt

服务器上供相关的客户端订阅

如图

据定时进行采集

管理人员通过微信小程序客户端或

WEB

2

所示

微信小程序订阅

mqtt

服务器的主题

,当接收数据后,

端实时了解实训实验环境数据

并根据实际情况通过小程序

实时显示在界面上

作者简介

许浒

1981

,

江苏建湖县人

本科

讲师

研究方向

计算机网络

114

信息与电

2020

年第

22

China

Computer

&

Communication

H

获件打茨与疝用

首先连接

MQTT

服务器

订阅主题

setData

(

该主题的

内容由小程序提供)

根据传过来的信息

调用

led_on

或者

led_off

方法

改变发光二级管的工作状态

下面加粗的代码

2

软硬件结构图

即订阅主题

on

message

方法负责处理主题内的信息

示例

代码如下

2

系统实现

系统实现主要完成

3

部分

①树莓派采集数据并发布到

def

on_message(client,

userdata,

msg):

MQTT

服务器;

②微信小程序

/Django

服务器端订阅

MQTT

if(==

J

setData'

):

服务器数据

③创建

MQTT

服务器(可以使用云服务厂商提

status

=

(

'utt8'

)

供的服务

也可以自行搭建)

if(status=='

on

,

):

2.1

温湿度模块设计

_on()

环境监测采用温湿度模块

DHT11

传感器,

有较好的可

else:

靠性和稳定性

。在温湿度数据采集过程中一定要严格遵守数

_off()

据时序

获取数据后要进行校验避免数据出错

否则将无法

正确读取温湿度数据

client

=

(protocol=3)

import

as

GPIO

me_pw_set(

"admin"

,

"password

)

def

getdhtQ:

client,

onconnect

=

onconnect

age

=

onmessage

#

按时序读取传感器信息

校验后返回温度和湿度

t(host=

192.168.31.150^^

,

port

=

61613,

keepalive=60)

return

temperature+temperature_point/10.0,humidity

(l)

本机读取的数据如下

温度是

31.8

湿度是

91,

ibe(

setData

)

取时间为

2020

7

12

0,

如图

3

所示

client,

loopfore

ver()

|

pi@raspberrypi:

*

2.4

温湿度数据发布模块

文件

(F)

编辑

(E)

查看

(V)

捜索⑸终端

(T)

帮助

(H)

该模块主要将温湿度数据发布到对应主题

(

pi@raspberrypi

'

$

python

Wsd

.

py

getData

)

上,

(31.8,

91)

小程序读取该主题内容

,渲染到小程序界面上

导入编写的

3

脚本读取温湿度

温湿度模块和发光二极管模块

示例代码如下

2.2

发光二极管模块

import

as

mqtt

发光二极管模块用于设置发光二极管的开与关

并能读

import

time

取开关状态。

导入模块

gpiozero,

设定好

GPIO

引脚信息,

import

sys

控制二极管的开与关

。定义

3

个方法

分别用来点亮

关闭

#导入编写的温湿度模块

和获取状态

示例代码如下

import

wsd

from

gpiozero

import

LED

#

导入编写的发光二极管模块

from

time

import

sleep

import

led

led

=

LED(24)

#

创建

mqtt

客户端

def

led_on():

client

=

(protocol=3)

()

#

设置用户名和密码

def

led_off():

me_pw_set(

''admin"

,

"password")

()

#

连接

mqtt

服务器

def

get_status():

t(host=

192.168.31.150^^

,

port

=

61613,

return

lit

keepalive=60)

while

True:

2.3

空调控制模块

try:

空调控制模块用于模拟空调的开与关

主要接收小程序

t,

h

=

_dht()

发送的开关指令

进而控制发光二极管的工作状态来模拟空

status

=

str(led.

get_status())

.

Io

wer()

调的工作状态

#

设置要发布的数据

115

腴件什茨与恚用

信慝与电脑

China

Computer

&

Communication

2020

年第

22

data

=

{

wddata

+str(t)+

sddata

♦•

WeChat

13:

+str(h)+

status'

+str(status)+

}

我的腹

TT

56

34*

(B

1

>

模拟器

・•・

©

#

将数据发布到

getData

主题中

供其他客户端

订阅

client.

publish(topic=^^

getData

payload=data,

26.1

93

qos=0)

设音卫

]

[

]

[

gsaw

]

I

设蔺下孩

#

延时

10

即每

10

秒发布一次数据

设备曰志

2020/07/16

13:48:29:

接收到温度数据

26.1,

湿滾数摇

93

(lO)

2020/07/16

13:47:36:

接收到温度数据

26.3,

惡数据

93

2020/07/16

13

47;25:

接收到温度数据

26/

舷数据:

93

except

RuntimeError:

5

利用小程序监控温湿度

(O)

3

结语

2.5

服务器端和微信小程序功能实现

本文介绍了基于物联网平台的实验实训环境数据监控

服务器端既要实现与网关树莓派之间的通信

还要提供

控系统的设计与实现

后续还可以对出入控制等相关应用作

可视化

Web

界面的人机接口。

利用

Django

框架实现

Web

后续开发

该系统能够通过

mqtt

协议传输数据和指令

,利

环境数据的可视化

利用微信小程序实现手机端环境数据的

用可视化方式展示环境数据

为管理人员管理提供依据

可视化

如图

4

5

所示

服务器端主要通过

mqtt

协议与

后续可以在预警机制上实现多元化进一步设计

满足更多的

树莓派网通信

使用

hbmqtt

模块实现数据和指令的传输

管理需求

目前

实验通信平台搭建在自搭的服务器上

微信小程序功能实现主要通过

websocket

连接

mqtt

讯连接也是自己维护的

简单的内部网络应用肯定不存在问

务器

为了提高效率

设计过程中借助

github

上的

mqttjs

但通信实际上都是基于互联网的

出于稳定性和安全性

文件连接

mqtt

服务器

与上面的

mqtt

客户端类似

在小程

的考虑

可以选择成熟的物联网平台(比如阿里云或者腾

序中同样完成连接

订阅

发布等功能

连接使用的方法是

讯云

)。

connect,

订阅使用的方法是

subscribe

,

发布使用的方法是

publish,

处理订阅的消息方法是

message

o

开空调和关空调

按钮的实质是在

setData

主题中发布控制信息

该信息会被

订阅的客户端处理

,然后控制发光二极管的亮与暗

参考文献

当日温湿度

[1]

刘雄飞

聂伟

陈浩

等•基于云计算平台的室内环境

监测系统设计与实现

[J].

传感器与微系统

,2019,38

:92

95.

50

----------------------------------------------------------------------------------------------------------------------------------------

[2]

孙占鹏

李佳

欧文.多传感器室内环境监测系统

[J].

30----------------------------------------------------------------------------------------------------------------------------------------

传感器与微系统

,2017(1):87-90.

20

_

j

_

j

~

3

4

~~

5

~

6

~

7

~

8

9

~~

10

11

12

13

14

15

16

17

18

19

20

21

21

[3]

李忠成.基于无线传感器网络的环境监测系统研究与

(%)

4

利用

Web

监控温湿度

设计

[J].

计算机测量与控制

,2008,16(7):929-931,958.

116


本文标签: 数据 环境 实训 实验 温湿度