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

18与电
16China  Computer  & Communication 软件打茨与龛用2020年第22期
基于物联阿平台的实训环境监控系统的设计与实现
许浒周志坚
(无锡商业职业技术学院,江苏无锡 214000 )
摘 要:本文实现了实训室物联网平台数据发布系统的设计开发,在实验实训环境中配置了检测环境的温度、湿度 传感器,使用树莓派作为网关对GPIO  口采集实训环境数据,通过Django  web 框架设计服务器设程序实现与树莓派网关 数据通信,利用浏览器网页和小程序可以实时监控实训室环境的相关数据,保障正常的工作环境.
关键词:物联网;MQTT;树莓派;传感器;小程序
中图分类号:TP391.44; TN929. 5 文献标识码:A  文章编号:1003-9767 (2020) 22-114-03
Design  and  Implementation  of  Practical  Training  Environment  Monitoring
System  Based  on  Internet  of  Things  Platform 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系统设计针对以上问题设计实验实训环境物联网平台,该系统包 含3个部分,分别为终端传感设备、中间网关设备、后端服 务器。终端温湿度传感器与中间网关采用树莓派设备,后端 发布控制平台。树莓派结合温湿度传感器对实训实验环境数 据定时进行采集,管理人员通过小程序客户端或WE
B  端实时了解实训实验环境数据,并根据实际情况通过小程序 或网页端发送指令给网关树莓派,控制空调的运行状态,从
而达到控制环境状态数据的目的,减少实训环境异常对实验 实训设备产生的影响。实验实训物联网平台的整体架构如图 1所示。
图1实验实讽物联网平台的整体架构
使用树莓派连接温湿度传感器,负责采集数据,使用一 个发光二极管模拟空调的运行状态,WEB 网页和小程序 无法直接与网关树莓派进行数据通信,所以树莓派将采集到 的环境数据发布到mqtt 服务器上供相关的客户端订阅,如图 2所示。小程序订阅mqtt 服务器的主题,当接收数据后, 实时显示在界面上。
作者简介:许浒(1981—),男,江苏建湖县人,本科,讲师。研究方向:计算机网络。
信息与电H
China Computer&Communication 获件打茨与疝用
2020年第22期
图2软硬件结构图
2系统实现
系统实现主要完成3部分:①树莓派采集数据并发布到MQTT服务器;②小程序/Django服务器端订阅MQTT 服务器数据;③创建MQTT服务器(可以使用云服务厂商提供的服务,也可以自行搭建)。
2.1温湿度模块设计
环境监测采用温湿度模块DHT11传感器,有较好的可靠性和稳定性。在温湿度数据采集过程中一定要严格遵守数据时序,获取数据后要进行校验避免数据出错,否则将无法正确读取温湿度数据。
import RPi.GPIO as GPIO
def getdhtQ:
#按时序读取传感器信息,校验后返回温度和湿度
return temperature+temperature_point/10.0,humidity
本机读取的数据如下,温度是31.8湿度是91,读取时间为2020年7月120,如图3所示。
|pi@raspberrypi:*
文件(F)编辑(E)查看(V)捜索⑸终端(T)帮助(H)
图3脚本读取温湿度
2.2发光二极管模块
发光二极管模块用于设置发光二极管的开与关,并能读取开关状态。导入模块gpiozero,设定好GPIO引脚信息,控制二极管的开与关。定义3个方法,分别用来点亮、关闭和获取状态,示例代码如下:
from gpiozero import LED
from time import sleep
led=LED(24)
def led_on():
<()
def led_off():
led.off()
def get_status():
return led.is lit
2.3空调控制模块
空调控制模块用于模拟空调的开与关,主要接收小程序发送的开关指令,进而控制发光二极管的工作状态来模拟空调的工作状态。
首先连接MQTT服务器,订阅主题setData(该主题的内容由小程序提供),根据传过来的信息,调用led_on或者led_off方法,改变发光二级管的工作状态。下面加粗的代码即订阅主题,on message方法负责处理主题内的信息。示例代码如下:
def on_message(client,userdata,msg):
pic==J setData'):
status=msg.payload.decode('utt8')
if(status=='on,):
led.led_on()
else:匀速直线运动
led.led_off()
client=mqtt.Client(protocol=3)
client.username_pw_set("admin","password”)
client,onconnect=onconnect
time.sleep(l)
client.subscribe(“setData”)
client,loopfore v er()
2.4温湿度数据发布模块
该模块主要将温湿度数据发布到对应主题(getData)上,小程序读取该主题内容,渲染到小程序界面上。导入编写的温湿度模块和发光二极管模块,示例代码如下:
import paho.mqtt.client as mqtt
import time
import sys
#导入编写的温湿度模块
import wsd
#导入编写的发光二极管模块
import led
#创建mqtt客户端
client=mqtt.Client(protocol=3)
#设置用户名和密码
client.username_pw_set(''admin","password")
#连接mqtt服务器
陈佳丽人体
while True:
try:
t,_dht()
status=_status()).Io w er()
#设置要发布的数据
腴件什茨与恚用信慝与电脑
China Computer&Communication2020年第22期
data=“{\”wddata\”:”+str(t)+”,\”sddata\”:”+str(h)+”,\”status'”:”+str(status)+”}”
#将数据发布到getData主题中,供其他客户端订阅
client.publish(topic=^^getData”,payload=data, qos=0)
#延时10秒,即每10秒发布一次数据
time.sleep(lO)
except RuntimeError:
2.5服务器端和小程序功能实现
服务器端既要实现与网关树莓派之间的通信,还要提供可视化Web界面的人机接口。利用Django框架实现Web端环境数据的可视化,利用小程序实现手机端环境数据的可视化,如图4、图5所示。服务器端主要通过mqtt协议与树莓派网通信,使用hbmqtt模块实现数据和指令的传输。
小程序功能实现主要通过websocket连接mqtt服务器,为了提高效率,设计过程中借助github上的mqttjs库文件连接mqtt服务器。与上面的mqtt客户端类似,在小程序中同样完成连接、订阅、发布等功能。连接使用的方法是connect,订阅使用的方法是subscribe,发布使用的方法是publish,处理订阅的消息方法是message o开空调和关空调按钮的实质是在setData主题中发布控制信息,该信息会被订阅的客户端处理,然后控制发光二极管的亮与暗。
当日温湿度
50----------------------------------------------------------------------------------------------------------------------------------------
30----------------------------------------------------------------------------------------------------------------------------------------
20_j_j~3—4~~5~6~7~8―9~~10111213141516171819202121
♦(%)
图4利用Web监控温湿度
湖南省国土资源厅・♦•・♦WeChat令13:5634*(B1>
我的腹TT模拟器・•・©
聾26.1聾93
设音卫][][gsaw]I设蔺下孩
设备曰志
2020/07/1613:48:29:接收到温度数据:26.1,湿滾数摇:93
2020/07/1613:47:36:接收到温度数据:26.3,;惡数据:93围棋大战
2020/07/1613:47;25:接收到温度数据:26/舷数据:93
图5利用小程序监控温湿度
3结语
本文介绍了基于物联网平台的实验实训环境数据监控控系统的设计与实现,后续还可以对出入控制等相关应用作后续开发。该系统能够通过mqtt协议传输数据和指令,利用可视化方式展示环境数据,为管理人员管理提供依据,后续可以在预警机制上实现多元化进一步设计,满足更多的管理需求。目前,实验通信平台搭建在自搭的服务器上,通讯连接也是自己维护的,简单的内部网络应用肯定不存在问题,但通信实际上都是基于互联网的,出于稳定性和安全性的考虑,可以选择成熟的物联网平台(比如阿里云或者腾讯云)。
参考文献
[1]刘雄飞,聂伟,陈浩,等•基于云计算平台的室内环境监测系统设计与实现[J].传感器与微系统,2019,38⑶:92・95.
[2]孙占鹏,李佳,欧文.多传感器室内环境监测系统[J].传感器与微系统,2017(1):87-90.
锋电能源技术有限公司
[3]李忠成.基于无线传感器网络的环境监测系统研究与设计[J].计算机测量与控制,2008,16(7):929-931,958.

本文发布于:2024-09-22 07:30:23,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/124116.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:数据   环境   实验   实训   温湿度   程序   模块   控制
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议