蔡冬玲
摘 要:基于ESP8266無線WiFi模塊,并結(jié)合Android智能移動終端,文中設(shè)計(jì)了一款可通過無線網(wǎng)絡(luò)實(shí)現(xiàn)開、關(guān)燈的照明控制系統(tǒng)。
關(guān)鍵詞:WiFi;照明;控制;ESP8266;Android
中圖分類號:TP393.1 文獻(xiàn)標(biāo)識碼:A 文章編號:2095-1302(2017)06-00-02
0 引 言
隨著網(wǎng)絡(luò)技術(shù)、軟件技術(shù)、控制技術(shù)的發(fā)展,智能化應(yīng)用技術(shù)得到了不斷進(jìn)步。智能照明就是一種典型的智能化應(yīng)用。隨著社會需求的不斷變化,傳統(tǒng)的照明控制方式由于需要使用者近距離操作照明設(shè)備開關(guān),給使用者帶來諸多不便,因此已無法滿足人們?nèi)找嬖鲩L的需求。人們更希望通過現(xiàn)在廣泛應(yīng)用的WiFi無線網(wǎng)絡(luò),利用隨身攜帶的手機(jī)、平板電腦等移動終端來對家用電燈等照明設(shè)備進(jìn)行開關(guān)操作。本文基于這項(xiàng)需求,設(shè)計(jì)了一款在WiFi環(huán)境下可使用智能手機(jī)等移動終端設(shè)備進(jìn)行開關(guān)燈操作的照明控制系統(tǒng)。
1 系統(tǒng)總體設(shè)計(jì)
本系統(tǒng)的設(shè)計(jì)主要包含WiFi局域網(wǎng)接入節(jié)點(diǎn)、WiFi燈光控制節(jié)點(diǎn)和移動終端軟件設(shè)計(jì)。其中WiFi通信部分由ESP8266模塊實(shí)現(xiàn)。ESP8266采用樂鑫智能互聯(lián)平臺提供的ESP8266無線WiFi模塊,擁有高性能無線SOC,使無線平臺的開發(fā)設(shè)計(jì)變得實(shí)用、方便。ESP8266 為系統(tǒng)提供了一個完整且自成體系的WiFi網(wǎng)絡(luò)解決方案,能夠獨(dú)立運(yùn)行、處理相關(guān)指令。作為控制系統(tǒng)的主要芯片,ESP8266還具有透明傳輸功能,可通過無線網(wǎng)絡(luò)接收數(shù)據(jù),卻不修改數(shù)據(jù),直接傳送到下一端,使得接收方接到數(shù)據(jù)內(nèi)容和長度一致的數(shù)據(jù),在傳輸過程中保證了數(shù)據(jù)的準(zhǔn)確性[1]。ESP8266模塊可配置成Station(客戶端)、AP(接入節(jié)點(diǎn))、Station + AP三種模式,即ESP8266模塊可作為一個設(shè)備(Client)連接區(qū)域網(wǎng)內(nèi)的路由,也可設(shè)置成一個路由(Sever),既作為局域網(wǎng)里的Client同時又是其他Client的Sever。系統(tǒng)的總體工作過程如圖1所示。
(1)WiFi局域網(wǎng)接入節(jié)點(diǎn)。接入節(jié)點(diǎn)是控制信號進(jìn)行傳輸?shù)妮d體,接入節(jié)點(diǎn)使各系統(tǒng)之間建立穩(wěn)定、良好的信道。本文將一個ESP8266模塊設(shè)置為AP工作模式,作為局域網(wǎng)的接入節(jié)點(diǎn)。
(2)WiFi燈光控制節(jié)點(diǎn)。該節(jié)點(diǎn)主要由ESP8266 模塊構(gòu)成。本文將每一個控制燈的ESP8266模塊設(shè)置為Station工作模式,用以接受用戶的目標(biāo)指令,并向所控?zé)魝鬏旈_、關(guān)控制信號。
(3)移動終端軟件?;贓clipse軟件環(huán)境進(jìn)行Android應(yīng)用軟件的開發(fā),該軟件在用戶使用過程中相當(dāng)于照明燈的遙控器。
2 WiFi接入節(jié)點(diǎn)的實(shí)現(xiàn)
通過串口調(diào)試助手等軟件工具向ESP8266模塊發(fā)送AT指令,將模塊設(shè)置為AP工作模式。具體分為如下幾步:
(1)發(fā)送命令“AT+RST”使模塊重新啟動,等待模塊響應(yīng)“OK”后,再進(jìn)行下一步設(shè)置。
(2)指令“AT+CWMODE=
(3)指令“AT+CWSAP=
發(fā)送命令“AT+CWSAP=“LampControl”,“123456”,11,0”,待模塊響應(yīng)“OK”后,就可在手機(jī)、平板電腦或計(jì)算機(jī)中通過無線網(wǎng)卡連接到接入節(jié)點(diǎn),之后再進(jìn)行下一步設(shè)置。
(4)指令“AT+ CIPMUX=MODE”用于啟動連接,其中,MODE=0為單路連接模式;MODE=1為多路連接模式。指令“AT+CIPSERVER=MODE,PORT”用于設(shè)置服務(wù)器,其中MODE=0為關(guān)閉服務(wù)器模式;MODE=1為開啟服務(wù)器模式,PORT為端口號,缺省值為333。只有在開啟多連接模式時才能開啟服務(wù)器模式。
發(fā)送命令“AT+CIPMUX=1”,待模塊響應(yīng)“OK”后再發(fā)送命令“AT+CIPSERVER=1,8080”,待模塊再次響應(yīng)“OK”后就可通過網(wǎng)絡(luò)調(diào)試助手在“TCP Client”模式下添加“IP:192.168.4.1(模塊默認(rèn)IP),端口8080”。至此,WiFi接入節(jié)點(diǎn)已設(shè)置成功。
3 WiFi燈控節(jié)點(diǎn)的實(shí)現(xiàn)
通過串口調(diào)試助手等軟件工具,向ESP8266模塊發(fā)送AT指令,將模塊設(shè)置為Station工作模式。
(1)發(fā)送命令“AT+RST”使得模塊重新啟動,待模塊響應(yīng)“OK”之后,進(jìn)行下一步設(shè)置。
(2)發(fā)送命令“AT+CWMODE=1”,將模塊設(shè)置為Station模式。待模塊響應(yīng)“OK”后,再發(fā)送命令“AT+RST”使得模塊重啟后設(shè)置生效。當(dāng)模塊再次響應(yīng)“OK”,則模塊的Station模式已經(jīng)開啟,可發(fā)送命令“AT+CWLAP”查看當(dāng)前可用的網(wǎng)絡(luò)接入點(diǎn)。
(3)指令“AT+CWJAP=
發(fā)送命令“AT+CWJAP = ”LampControl“, ”123456“”連接到網(wǎng)絡(luò)中。待模塊響應(yīng)“OK”后,發(fā)送命令“AT+CIFSR”可查看本機(jī)的IP地址,若能查看到IP地址則表示本節(jié)點(diǎn)已經(jīng)正確和AP節(jié)點(diǎn)相連。
(4)發(fā)送命令“AT+CIPMUX=1”打開多路連接。
(5)指令“AT+CIPSTART=
發(fā)送命令“AT+CIPSTART=0,”TCP“,”192.168.4.1“,8080”建立燈控節(jié)點(diǎn)和接入節(jié)點(diǎn)之間的TCP連接。待響應(yīng) “OK”后則表示連接成功。
(6)指令“AT+CIPSEND=
發(fā)送命令“AT+CIPSEND=0,8”并發(fā)送數(shù)據(jù)“12345678”給接入節(jié)點(diǎn)。
4 Android移動終端軟件設(shè)計(jì)
使用Android SDK、JDK、ADT、Eclipse等工具開發(fā)手機(jī)客戶端控制軟件[2]。手機(jī)客戶端控制軟件的界面設(shè)計(jì)主要使用ToggleButton控件或RadioButton控件以方便用戶對燈進(jìn)行開關(guān)操作。為控件添加事件響應(yīng),當(dāng)用戶操作軟件時,將開、關(guān)燈的信息發(fā)送給WiFi接入節(jié)點(diǎn)[3]。核心代碼如下:
Socket socket = new Socker("192.168.4.1",8080);
OutputStream os = socket.getOutputStream();
os.write("LampOn");
os.close();
socket.close();
5 系統(tǒng)測試
連通燈的控制電源,將燈控節(jié)點(diǎn)接入預(yù)定的WiFi網(wǎng)絡(luò),將手機(jī)也接入同一WiFi網(wǎng)絡(luò),操作手機(jī)中的控制軟件,成功實(shí)現(xiàn)對燈的開、關(guān)操作。
6 結(jié) 語
本文設(shè)計(jì)了一種在WiFi環(huán)境下,可在裝有Android系統(tǒng)的移動終端上通過軟件操作,實(shí)現(xiàn)對燈的開關(guān)操作的無線照明控制系統(tǒng)。文中詳細(xì)介紹了系統(tǒng)設(shè)計(jì)思路、實(shí)現(xiàn)方法,并通過測試證明了系統(tǒng)的有效性。
參考文獻(xiàn)
[1]唐遠(yuǎn)鴻,李巖,李菲,等.基于WiFi環(huán)境下LED照明智能化控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].科技視界,2016(9):46-47.
[2]繆賢浩.基于WiFi的mp3音樂播放系統(tǒng)設(shè)計(jì)[J].山東工業(yè)技術(shù),2016(4):197.
[3]李剛.瘋狂Android講義[M].北京:電子工業(yè)出版社,2013.
[4]王潤民,王健.基于ZigBee的道路照明智能控制系統(tǒng)的設(shè)計(jì)[J].物聯(lián)網(wǎng)技術(shù),2014,4(12):56-58.
[5]何永玲,吳耀龍.基于WiFi和移動終端的智能照明控制系統(tǒng)設(shè)計(jì)[J].物聯(lián)網(wǎng)技術(shù),2016,6(12):102-104.
[6]梁霄霄.基于WiFi和LED照明控制系統(tǒng)的研究與實(shí)現(xiàn)[D].杭州:杭州電子科技大學(xué),2014.
[7]王立斌,段子荷,安思達(dá),等.基于WiFi的大型庫房照明控制系統(tǒng)設(shè)計(jì)[J].河北電力技術(shù),2016,35(3):19-20.
[8]王群鋒.基于無線網(wǎng)絡(luò)的智能照明系統(tǒng)研究[D].鄭州:鄭州大學(xué),2012.