基于ESP8266的智能开关控制系统设计

基于ESP8266的智能开关控制系统设计


2024年4月11日发(作者:台湾最新消息)

ELECTRONICS WORLD

技术交流

基于ESP8266的智能开关控制系统设计

南京科技职业学院 电气与控制学院 薛 翔 王 琰

随着网络技术的迅猛发展,WIFI技术得到了广泛的应用。

WIFI是一种可以将个人电脑、手持设备等终端以无线方式进行互连

的技术,为用户提供了无线的宽带互联网访问。本文介绍了如何通

过ESP8266芯片和STC单片机实现家用电器开关的无线远程控制,

提出了一种基于ESP8266的智能开关控制系统方案,并从硬件和软

件两个层面论述了系统方案的可行性。

1 系统总体设计

本系统主要由WIFI模块和MCU模块两部分组成,通过WIFI模

块ESP8266将单片机MCU链接上外网,由手机App发送信息WIFI模

块接收到信息后,再向MCU发送信号,MCU经过对信息的处理,

通过继电器的方式实现家电的通断控制或者灯的开关控制,形成了

一个控制通信网络。硬件电路主要有STC89C51芯片、DHT11温湿

度传感器采集电路、LCD液晶显示电路、继电器驱动电路、WIFI

模块以及稳压电路等组成。系统的总体设计框图如图1所示。WIFI

模块收发通讯数据,MCU完成数据的采集和外设的驱动。用户使

用手机APP将系统的WIFI模块连接到指定的路由器后,通过UART

串口传送和接收MCU的相关指令信息,继电器接负载并通过WIFI

控制其通断。

图2 ESP8266-12接口及电源电路

图3 继电器驱动电路

图1 系统总体框图

2 硬件设计

2.1 MCU模块

MCU模块由以STC89C51芯片为核心的最小系统组成,

STC89C51芯片在单芯片上,拥有灵巧的8位CPU和在系统可编程

Flash,使得STC89C51在嵌入式控制应用系统中的得到了广泛应

用。本设计使用TXD和RXD引脚实现与WIFI模块的串口通信,其

他I/O引脚主要用于连接继电器控制信号、温湿度传感器输出信号

以及LCD液晶显示数据及控制等信号。

2.2 WIFI模块

WIFI模块选择乐鑫公司的基于UART接口的ESP8266-12芯片,

该芯片内置32位CPU,能够独立运行,也可以作为从机搭载于其他

主机MCU运行,可以广泛应用于智能家居、工业无线控制、无线

传感器等领域。

ESP8266模块能够实现用户串口数据到无线网络之间的交换。

有2种使用方案:一是直接使用内部自带的处理器,对芯片进行二

次开发,通过I/O口控制设备,例如继电器、传感器等,此方案节

省成本,但开发难度较大;二是ESP8266模块外接单片机,而其仅

用来完成网络相关的任务,使用AT命令操作,通过串口和外接的

单片机通信,此方案开发快,性能稳定,但成本相对较高。本文选

用第二种方案。

图2为ESP8266-12与单片机串口通信接口及电源电路,TXD和

RXD分别接单片机的P3.0和P3.1。ESP8266-12的9和11脚通过1K上

拉电阻接3.3V电源。采用AMS1117 稳压芯片将5V电源转换成3.3V

直流电压,给WIFI和继电器模块供电。二极管IN4148反向截止起

到保护电路的作用。拨动开关S1正常运行时接通TXD接收模块发送

的数据,下载程序时用S1断开WIFI模块,以防数据干扰。

2.3 继电器驱动模块

控制系统通过继电器的方式实现开关的通断控制。继电器通过

PNP型三极管驱动,当阀值超过设定时,单片机会由高电平跳变成

低电平,三极管导通继电器吸合,继电器起开关作用,可以驱动负

基金项目: 院级“百名人才培养工程”项目资助、院级科研项目基于互联网+的治疗仪控制器设计(NHKY-2016-14)。

147

ELECTRONICS WORLD

技术交流

载。图3为单个继电器驱动电路,单片机P2.0引脚输出一个低电平

时,PNP型三极管9012导通,电流从+5V电源经线圈再经9012回到

GND形成回路,此时继电器线圈得电吸合,与线圈并联的LED灯点

亮,2.2K分压电阻保证LED的3V工作电压,二极管用于消除继电

器吸合时产生的瞬间反相电动势,接线端子CON2可外接负载电源

线,驱动负载的通断相当于一个智能开关。

2.4 DHT11温湿度采集模块

采用DHT11温湿度传感器用于检测室内温湿度并发送给单片机

进行处理和显示,DHT11与STC89C51单片机连接相对简单。如图

4所示,DHT11为 4 针单排引脚封装。单片机的P2.7口用来发收串

行数据,即data数据口。DATA 用于微处理器与 DHT11之间的通讯

和同步,采用单总线串行数据格式,一次通讯时间4ms左右。上拉电阻

10K起到信号稳定的作用。传感器的电源端口Pin1和Pin4分别接单

片机的VDD和GND端。传感器的第三脚悬浮放置。

图4 DHT11接口电路

图5 LCD接口电路

2.5 LCD1602液晶显示电路

LCD1602能够同时显示16x02即32个字符,采用LCD1602液晶

显示器显示网络连接情况、室内温湿度值以及开关状态等信息,

LCD与单片机接口连接如图5所示。1脚接地,2脚接+5v电源,3脚

为液晶显示器对比度调整端,通过一个10K电位器调整对比度。4

脚RS接P2.7用于寄存器的选择。5脚R/W接P2.6用于读写信号的控

制,6脚EN为使能端接P2.5用于液晶模块的使能控制。7~14脚即

D0~D7为8位双向数据线接P0口,用于数据的读写。

2.6 智能手机APP

智能手机APP为网络调试助手安卓版。网络调试助手集成了

TCP/UDP客户端服务器,服务器端支持透明传输方式、自动反馈方

式和手动发送方式。采用TCP客户端模式,通过配置IP地址和COM

端口号实现APP与ESP8266通信。

3 软件设计

采用ESP8266实现远程控制基本流程:ESP8266进行初始

化,将手机连上ESP8266的WIFI,然后再通过手机端发送指令,

ESP8266接收到命令发给单片机,单片机根据执行相应的操作。

STC单片机每2秒钟从DHT11温湿度传感器中读入温度和湿度,在

液晶屏上显示并通过ESP8266将采集的温湿度数据发送到手机APP

显示。控制流程如图6所示。

3.1 主程序设计

控制系统软件部分主要分为WIFI配置与通信、温湿度读取、继

电器驱动、LCD液晶显示四部分。系统上电后进入初始化阶段读取

系统参数,温湿度传感模块启用,APP配网设置后,ESP8266配网

148

成功直连数据服务器,传送相应的控制指令到MCU驱动继电器动

作,同时实时回传数据到服务器,APP可以即时查看相关的数据。

主程序流程如图7所示。

3.2 WIFI初始化

设置WIFI 的工作模式,ESP8266 支持softAP 模式、station 模

式、softAP+station 共存模式三种模式。本文采用SoftAP模式,即

无线接入点模式,ESP8266发射一个WIFI热

点将手机或电脑等终端设备接入热点组建一个局域网。STC89C51单

片机通过AT指令对ESP8266进行是初始化配置。

配置指令为:

AT+CWMODE=2,设置SoftAP模式。

AT+CWSAP=“NAME”,“password”,设置WIFI名称和密码。

AT+CIPSTART=“TCP”,“ X1.X2.X3.X4”,9999;让模块连上

服务器X1.X2.X3.X4 为IP 地址,9999为端口。

AT+CWJAP=“ssid”,“pwd”;连接路由器,在程序中输入路

由器名称ssid和密码pwd;此时,WIFI 模块就必须重启,发送指令

“AT+RST”给WIFI 模块。

图6 控制流程 图7 主程序流程图

3.3 关键函数设计

void main() ;//主函数,完成系统初始化,温湿度读取调用和

显示,开关的WIFI控制。

void uart_RX(void) interrupt 4;//串口中断处理函数,如果串口

接收到数据,执行相应的操作,控制继电器的动作,直到收到下一

个数据指令。

void Timer0 (void) interrupt 1 using 0;//定时中断函数,单片机

每2秒钟从DHT11温湿度传感器中读入温度和湿度,用于MCU与

DHT11的通讯。

void Uart_init( );// 单片机串口初始化函数,波特率9600,设

置T0和T1工作方式,允许串口接收数据,开中断,启动定时器。

T0用于定时器,T1用于波特率发生器。

uchar DHT11(void);// 温湿度读取子程序,采用单总线数据格式。

void LCDdisplay();// 液晶显示子函数,包括初始化、写指

令、写数据、显示字符串和数据等。

4 结语

本文设计了一种基于ESP8266 WIFI芯片的智能开关系统,以

STC单片机为主控制器,从软件和硬件两个层面论述了该方案的可

行性。在该系统基础之上,还可以增设家用电器定时开关、灯光的

自动调节等其他智能控制功能。通过后期的不断改进和完善,该控

制器的功能将更加多样化,市场前景也会更加广阔。

作者简介:

薛翔(1996—),男 ,汉族,南京科技职业学院,专业:机电一

体化技术。

王琰(1980—),女, 汉族,硕士研究生,讲师,研究方向:机

电控制技术。


发布者:admin,转转请注明出处:http://www.yc00.com/xitong/1712770224a2118904.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信