胡长鹏,马海霞,林思敏,李中兴,黄国健
(1. 上海品研测控技术有限公司, 上海 201109;2. 华南理工大学广州学院电气工程学院, 广州 510800;3. 广东机电职业技术学院, 广州 510515)
随着新技术的不断涌现和生活水平的快速提高,人们开始追求科技含量高和品质卓越的产品体验。智能家居系统提供了一个更加便捷、舒适的人机信息交互平台,让消费者对家中所有电器的控制指令传达更加方便、迅速,不仅提高了人们的生活条件以及起居环境,而且更有助于消费者合理地安排时间、节约资源。插座是人们日常生活中随处可见的基本开关电器,其功能及种类也很多。许多研究设计人员提出了各种各样的设计思路,并成功进行了试验。文献[1]讨论了WiFi在智能家居系统中的应用;文献[2]针对传统插座的不便和现代化智能家居的要求,设计了一款兼具可移动、远程控制基于无线网络的智能插座系统,阐述了智能插座的设计思路,对系统的硬件和软件设计进行了说明,并对智能插座系统进行了测试;文献[3]通过与传统节电插座的节能方式进行对比,研究了节能的目的及意义,分析了智能节能插座的特点,对智能型节电插座进行了分析、对比和研究,将Zigbee技术引入智能节电插座系统中,能够实时地监控用户电能的使用情况,适当减少电能的消耗,提高电能的利用率;文献[4-7]研究了无线通信技术在插座控制中的应用;文献[8-9]论述了智能控制技术的应用现状;文献[10-11]介绍了单片机在低成本小型家用电器中的应用。综上所述,一些新型插座的设计虽能够解决某些实际问题,但是成本太高、无法远程控制等问题依旧普遍存在,无法被大众所接受并广泛使用。为此,设计一款能够使用手机进行控制的智能节电插座势在必行。通过无线网络来实现远程控制智能插座的通电状态,并限制插座的功率,避免因长时间超负荷工作而引起危险。即使用户不在家中,也可以通过手机APP 对智能插座进行远程控制,避免引起火灾,造成不必要的经济损失。近年来,无线WiFi 技术发展迅速,已经融入到了市民生活的各个方面,给人们的生活带来了极大的方便。WiFi 通信与其他蓝牙、红外、GSM 等通讯方式相比有其优越的性能,如表1所示。
表1 当前的智能插座控制模式比较
基于此,本文设计了一款能够实现以WiFi 为通讯方式,51单片机控制继电器通断电功能的智能型节电插座。
1.1.1 主控芯片选择
本文的主控芯片选用STC89C51单片机,是美国STC公司推出的一种51 内核的单片机,是目前业内较常用的一款MCU。片内含有Flash 程序存储器、AD 转换模块、UART 通信模块、SPI通信模块、SRAM存储器、PWM等。相较于嵌入式和AVR系列的MCU来说,虽然其功能不够强大,并且反应速度也不够快,但是其具有应用成本低、简单易懂以及功能齐全等优势,且完全符合本系统的设计需求。
1.1.2 WiFi模块的选择
本设计选择ESP8266 作为无线WiFi 模块的核心,其是乐鑫信息技术推出的一款串口转无线模芯片,内部自带固件,用户操作简单,无需编写时序信号。选用ESP8266 作为核心元件,需要的外围元器件有1 个无源晶振、10 个电阻电容电感和1 个Flash,电路结构非常简洁。ESP8266 模块核心处理器在较小尺寸内便封装集成了业界领先的TENSILICA L106,是一款超低功耗的32 位微型MCU,带有16 位的精简模式,主频支持80 MHz 和160 MHz 两种频率,支持RTOS,集成了WiFi MAC/BB/RF/PA/LNA,板内载天线,相比于其他WiFi 模块,具有应用方便、成本低和重量轻等特点,而且此模块还有配套的控制APP,非常适合智能插座的远程控制。基于WiFi 的智能插座总体方案如图1所示。使用手机APP 作为WiFi 信号的发射端,对插座进行远程控制,WiFi 信号模块接收到命令后, 将命令传达STC89C51 单片机,单片机发出命令,驱动继电器动作, 从而控制插座的通断。WiFi 模块、STC89C51RC 单片机系统和继电器模块都由USB接口供电。
图1 总体方案
硬件电路主要包括单片机最小系统设计、电源模块(其中需要5 V电源、3.3 V稳压电源)、主控制模块、无线WiFi模块和继电器模块。ESP8266 模块是基于串口通讯的WiFi 无线网络模块,能够实现用户串口数据到无线网络之间的数据交换。通过串口无线WiFi 模块,可以将串口设备直接接入无线网络。该模块使用ASC II 码可以与手机直接进行通信,首先手机将编码变为ASC II 码并进行发射,UART-WiFi 模块接收ASC II 码并产生中断给单片机。此外,该WiFi 模块可以像普通路由器一样,通过终端设置和修改密码,也可以通过配置软件进行修改和设置,安全性较高。
由于ESP8266无线模块的工作电源是3.3 V,而USB供电接口供电为5 V,所以本设计采用电源转换芯片ASM1117-3.3 V进行电压变换,使得ESP8266 无线模块能够正常运行。硬件电路设计如图2所示。
图2 硬件电路
单片机最小系统主要由电源、STC89C51、晶振电路和复位电路组成。晶振震荡频率为11.0592 MHz。单片机能正常运行的必备条件是接通电源和拥有晶振等电路,此最小系统可作为本设计系统的主控部分,通过对其进行A/D 扩展、存储器扩展等,使单片机完成较复杂的功能。如图3所示。
图3 单片机最小系统原理
1.3.1 复位电路
复位操作可以完成单片机片内电路的初始化,清理所有的寄存器, 使单片机从一种确定的状态开始运行。 当ST8C9C51 单片机的复位引脚RST 出现5 ms 以上的高电平时,单片机就完成了复位操作。如果RST 持续为高电平,则单片机就处于循环复位状态而违法执行程序。因此要求复位后能够及时脱离复位状态。电路图如图4所示。
图4 复位电路
1.3.2 晶振电路
晶振振荡器,在单片机系统中晶振的作用非常大,其结合单片机内部的电路,产生单片机所必须的时钟频率,单片机一切指令的执行都是建立在这个基础上,晶振提供的时钟频率越高,则单片机的运行速度也就越快。电路图如图5所示。
图5 晶振电路
WiFi 模块电路选用ESP8266 模组作为主元器件,需要的外围元器件有1 个无源晶振、10 个电阻电容电感、1 个Flash。电路如图6所示。
图6 WIFI模块电路
继电器的驱动采用电流从E 极流入的三极管,三极管在高电平时截止,在电路中起到开关的作用。LED1 和继电器是并联的关系,其工作过电压是3 V,而电路接入的电压是5 V,所以在LED1处串联了电阻R8 对电路进行分压,使其可以正常工作。继电器模块电路工作过程是:当PNP 的引脚输入低电平时,三极管导通,LED1发光,同时继电器通电吸合,电流流到接地点形成回路。电路图如图7所示。
图7 继电器电路
本设计使用的编译软件是Keil μvision4,是一款基于Windows的开发平台,包含一个高效的编译器、项目管理器和MAKE 工具。μvision4 支持所有的Keil C51 工具,包括C 编译器、宏汇编器、连接定位器和日标代码到HEX的转换器。
为了方便后期调试和维护,本设计根据系统需要将各种功能分别封装成多个相互独立的子函数。主函数在需要时,会对指定的子函数进行调用,这样使得程序有良好的层次性。根据此设计理念,本设计最终选择的编辑语言是C 语言。C 语言是一门结构化、层次分明、按模块化方式组织程序的通用程序设计语言,具有可移植性强、运行速度快、易于进行后期调试及维护等特点。C 语言能以简易的方式编译并处理低级存储器,是少有的仅产生少量的机器语言并且不需要任何运行环境支持便能运行的高效程序设计语言。尽管C 语言提供了许多低级处理的功能,但仍然保持着跨平台的特性,以一个标准规格写出的C 语言程序可在包括一些类似嵌入式处理器以及超级计算机等作业平台的许多计算机平台上进行编译。主程序流程如图8所示。
图8 主程序流程
单片机首先串口初始化,设置波特率。接着向WiFi模块发送AT 指令,使WiFi 模块与手机的WiFi 热点相连接,并在手机上创建好连接服务。手机再通过控制APP向WiFi模块发送无线的控制指令,单片机在接收到WiFi模块从串口传来的数据后,进入中断函数来执行接收数据的模式。接收到的控制指令存储在寄存器中,单片机在寄存器中读取接收到的控制指令,根据接收到的指令控制继电器的通断。
搭建实物如图9 所示。烧录好程序后,首先打开手机热点, 然后打开ESP8266 配套APP, 连接IP地 址103.212.33.134。发送通讯指令fs% xw0293%A1,系统接收到指令后,继电器吸合,插座通电,如图9(a)所示,发送通讯指令fs% xw0293%A3,系统接收到指令后,继电器断开,插座断电,如图9(b)所示。
图9 实物测试
本文设计了一种基于WiFi 无线通讯的智能插座,用STC89C51单片机对控制继电器进行控制,从而实现对插座的远程通断操作。采用低成本的51系列单片机,降低了插座的成本。通过串口WiFi 模块,传统的串口设备就能接入无线网络。此WiFi模块可以通过终端像普通路由器一样设置和修改密码,也可以通过配置软件进行修改和设置,安全性较高。通过手机APP 发送指令,操作简单、便捷。硬件电路具有设计简单、布线合理、实物可操作性强的特点,并能达到实现所需功能的需求。
在本设计实现的基础上通过改进设计及软件,就可以拓展定时通断电量使用情况统计、电压或电流异常检测报警等新功能。