当前位置:首页 > 物联网 > 《物联网技术》杂志
[导读]摘 要:基于ESP8266无线WiFi模块,并结合Android智能移动终端,文中设计了一款可通过无线网络实现开、关灯的照明控制系统。

引 言

随着网络技术、软件技术、控制技术的发展,智能化应用技术得到了不断进步。智能照明就是一种典型的智能化应用。随着社会需求的不断变化,传统的照明控制方式由于需要使用者近距离操作照明设备开关,给使用者带来诸多不便,因此已无法满足人们日益增长的需求。人们更希望通过现在广泛应用的WiFi无线网络,利用随身携带的手机、平板电脑等移动终端来对家用电灯等照明设备进行开关操作。本文基于这项需求,设计了一款在 WiFi 环境下可使用智能手机等移动终端设备进行开关灯操作的照明控制系统。

1 系统总体设计

本系统的设计主要包含WiFi 局域网接入节点、WiFi 灯光控制节点和移动终端软件设计。其中 WiFi 通信部分由ESP8266 模块实现。ESP8266 采用乐鑫智能互联平台提供的ESP8266 无线WiFi 模块,拥有高性能无线 SOC,使无线平台的开发设计变得实用、方便。ESP8266 为系统提供了一个完整且自成体系的WiFi 网络解决方案,能够独立运行、处理相关指令。作为控制系统的主要芯片,ESP8266 还具有透明传输功能,可通过无线网络接收数据,却不修改数据,直接传送到下一端,使得接收方接到数据内容和长度一致的数据,在传输过程中保证了数据的准确性 [1]。ESP8266 模块可配置成Station( 客户端)、AP( 接入节点)、Station + AP 三种模式, 即ESP8266 模块可作为一个设备(Client)连接区域网内的路由,也可设置成一个路由(Sever),既作为局域网里的 Client 同时又是其他Client 的Sever。系统的总体工作过程如图 1 所示。

(1) WiFi局域网接入节点。接入节点是控制信号进行传输的载体,接入节点使各系统之间建立稳定、良好的信道。本文将一个ESP8266模块设置为AP工作模式,作为局域网的接入节点。

(2) WiFi灯光控制节点。该节点主要由ESP8266模块构成。本文将每一个控制灯的ESP8266模块设置为Station工作模式,用以接受用户的目标指令,并向所控灯传输开、关控制信号。

(3) 移动终端软件。基于 Eclipse软件环境进行Android 应用软件的开发,该软件在用户使用过程中相当于照明灯的遥控器。

基于WiFi的照明控制系统设计与实现

2 WiFi接入节点的实现

通过串口调试助手等软件工具向ESP8266 模块发送AT指令,将模块设置为 AP 工作模式。具体分为如下几步:

(1) 发送命令 AT+RST使模块重新启动,等待模块响应 OK后,再进行下一步设置。

(2) 指令AT+CWMODE=<MODE>用 于 设置ESP8266模块的工作模式,其中MODE=1表示Station模式; MODE=2 表示AP模式;MODE=3表示AP兼Station模式。此处,需要发送命令AT+CWMODE=2 将模块设置为AP 模式。等待模块响应OK 之后,再发送命令AT+RST 使得模块重启后设置生效。等待模块再次响 应OK后,模块的AP模式已经开启,然后进行下一步设置。

(3) 指 令 AT+CWSAP=<SSID>,<PWD>,<CHL>,<ECN> 用于设置AP 模式下的参数,其中SSID 为字符串参数, 用于表示接入点的名称;PWD 为字符串参数,用于表示密码, 密码限制在 64 字节以内;CHL 表示通道号,ECN 的取值及功能见表 1 所列。

基于WiFi的照明控制系统设计与实现

发送命令 AT+CWSAP= LampControl,123456,11,0,待模块响应 OK 后,就可在手机、平板电脑或计算机中通过无线网卡连接到接入节点,之后再进行下一步设置。

(4) 指令 AT+ CIPMUX=MODE用于启动连接,其中, MODE=0 为单路连接模式;MODE=1为多路连接模式。指令AT+CIPSERVER=MODE,PORT用于设置服务器,其中MODE=0为关闭服务器模式;MODE=1为开启服务器模式, PORT为端口号,缺省值为 333。只有在开启多连接模式时才能开启服务器模式。

发送命令 AT+CIPMUX=1 ,待模块响应 OK后再发送命令 AT+CIPSERVER=1,8080 ,待模块再次响应 OK 后就可通过网络调试助手在 TCP Client 模式下添加 IP: 192.168.4.1(模块默认 IP),端口 8080。至此,WiFi 接入节点已设置成功。

6 WiFi灯控节点的实现

通过串口调试助手等软件工具,向ESP8266 模块发送AT 指令,将模块设置为 Station工作模式。

(1) 发送命令 AT+RST使得模块重新启动,待模块响应 OK之后,进行下一步设置。

(2) 发 送 命令 AT+CWMODE=1, 将 模 块设 置 为Station模式。待模块响应 OK后,再发送命令 AT+RST 使得模块重启后设置生效。当模块再次响应 OK,则模块的Station模式已经开启,可发送命令 AT+CWLAP查看当前可用的网络接入点。

(3) 指令 AT+CWJAP=<SSID>,<PWD> 用于加入网络,其中SSID为要加入的网络名称,PWD为密码。

发送命令AT+CWJAP=LampControl , 123456 连接到网络中。待模块响应OK后,发送命令AT+CIFSR 可查看本机的IP地址,若能查看到IP地址则表示本节点已经正确和AP节点相连。

(4) 发送命令 AT+CIPMUX=1打开多路连接。

(5) 指令 AT+CIPSTART=<ID>,<TYPE>,<ADDR>,<PORT> 用于建立 TCP连接或注册 UDP端口号,其中 ID 为 0~4的连接编号,TYPE为字符串参数,设为 TCP时表示建立 TCP连接, 设为 UDP时表示建立UDP连接, ADDR为字符串参数,表示远程服务器的IP 地址,PORT为远程服务器的端口号。

发送命令 AT+CIPSTART=0, TCP , 192.168.4.1 ,8080 建立灯控节点和接入节点之间的TCP 连接。待响应 OK后则表示连接成功。

(6) 指令 AT+CIPSEND=<ID>,<LENGTH> 用于向指定ID 发送指定长度的数据。模块收到此命令后先换行返回> ,然后开始接收串口数据,当数据长度满足LENGTH 时发送数据,如果数据发送成功则返回 SEND OK 。

发送命令 AT+CIPSEND=0,8 并发送数据 12345678给接入节点。

4 Android移动终端软件设计

使用Android SDK、JDK、ADT、Eclipse 等工具开发手机客户端控制软件[2]。手机客户端控制软件的界面设计主要使用ToggleButton 控件或 RadioButton 控件以方便用户对灯进行开关操作。为控件添加事件响应,当用户操作软件时,将开、关灯的信息发送给WiFi 接入节点 [3]。核心代码如下:

Socket socket = new Socker("192.168.4.1",8080); 

OutputStream os = socket.getOutputStream();

 os.write("LampOn");

os.close(); socket.close();

5 系统测试

连通灯的控制电源,将灯控节点接入预定的WiFi 网络, 将手机也接入同一WiFi 网络,操作手机中的控制软件,成功实现对灯的开、关操作。

6 结 语

本文设计了一种在 WiFi 环境下,可在装有 Android 系统的移动终端上通过软件操作,实现对灯的开关操作的无线照明控制系统。文中详细介绍了系统设计思路、实现方法,并通过测试证明了系统的有效性。


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭