基于MQTT协议的智能开关系统的设计
来源:用户上传
作者:王亚东
摘要:随着物联网的普及,每个人的家里或多或少都有智能家电,而且近年来市场规模和需求量在不断扩大,在这样的大趋势下,设计一套智能开关系统,意在帮助人们管理家中电器。智能开关系统由3个部分组成:硬件设备端、软件控制端、云服务器端。本设计可以检测当前环境数值(温度、湿度、光照强度),通过检测到的数值来控制相应的控制器进行开关操作,并且可以在OLED屏幕上看到环境信息。本设计具有快捷、方便等优点,更加有效地控制开关。利用ESP8266 WiFi模块、消息队列遥测传输协议(即MQTT协议),结合目前流行的云服务器、Micropython编程语言、Tkinter桌面程序编程,通过系统测试完成了此智能开关系统的设计,实现了通过电脑端来远程控制开关。
关键词:智能开关系统 MQTT协议 控制器 云服务器 远程控制
Research on Hidden Dangers and Countermeasures of Internet of Things
WANG Yadong
(Heilongjiang Institute of Technology, College of Computer Science and Technology, Harbin,Heilongjiang Province, 150050 China)
Abstract:With the popularity of the Internet of things, everyone has smart appliances at home more or less, and the market scale and demand are expanding in recent years. Under such a general trend, a set of intelligent switching system is designed to help people manage home appliances.The intelligent switch system based on mqtt protocol is divided into three parts: hardware device end,software control end and cloud server end.The system can detect the current environmental values (temperature,humidity,light intensity),through the detected values can control the corresponding controller switch operation,and can see the environmental information on the OLED screen.This design has the advantages of fast, convenient,more effective control switch.Using esp8266 WiFi module, Message Queuing Telemetry Transport protocol(MQTT protocol),combined with the current popular cloud server,Micropython programming language, Tkinter desktop program programming, the design of the intelligent switch system is completed through system testing, and the remote control switch is realized through the computer.
Key Words: Intelligentswitch system;Message Queuing TelemetryTransport;Controller;
Cloudserver;Remote control
物联网是物物互联的网络,又称为泛在网,即无所不在的网络。物联网是在IP互联的基础上,又融入了各种信息采集传感器,从而形成万物互联。随着物联网的广泛应用,智能家居已逐渐从实验室进入到了人们的日常生活中[1],运而生的智能家居技术也日益成熟[2]。智能开关系统是一个典型的物联网应用系统,包括智能开关的传感层、网络层、应用层3个层面的技术和原理。系统的传感层使用ESP8266 WiFi模块为核心的控制节点,网络层使用ESP8266连接WiFi并使用MQTT协议通信, 应用层使用Tkinter开发的应用服务程序,通过程序的形式展示设备和环境信息,控制系统操作。
1 常用技术简介
1.1 ESP8266
ESP8266 WiFi模块通常是指基于乐鑫公司的ESP8266芯片的WiFi解决方案,是一款其内部集成了WiFi 模块、数据透传以及串口AT指令控制等功能的一款低成本、低功耗串口WiFi模块。
1.2 MQTT协议
MQTT协议即消息队列遥测传输协议,是一种基于发布/订阅(publish/subscribe)模式的“轻量级”通信协议,由于MQTT是一种开销较低、带宽很小的即时通信协议,所以在物联网应用系统中有较广泛的应用前景。MQTT协议需要实现客户端和服务器端的信息交互,在通信过程中,MQTT协议中主要有3种身份:发布者(Publish)、代理(Broker)(服务器)、订阅者(Subscribe)。消息的发布者和订阅者都是客户端,消息代理是服务器。在本设计中ESP8266模块和租赁的阿里云服务器同时充当MQTT服务器和MQTT客户端的两种角色,用来实现两者的双向数据通信。
nlc202206241554
转载注明来源:https://www.xzbu.com/1/view-15434563.htm