余國
摘要:對傳統(tǒng)機(jī)械開關(guān)插座的改進(jìn),實(shí)現(xiàn)遠(yuǎn)程控制,從而去控制插座上的相關(guān)電器設(shè)備。本文介紹了一種Wi-Fi控制的智能插座,采用STM8S系列單片機(jī)作為主控,結(jié)合ESP8266無線模塊與電腦手機(jī)等終端設(shè)備上的上位機(jī)軟件進(jìn)行交互,實(shí)現(xiàn)控制和狀態(tài)的獲取。本文主要針對該產(chǎn)品的硬件和軟件設(shè)計(jì)方案進(jìn)行了簡單地介紹。
關(guān)鍵詞:STM8;ESP8266;Wi-Fi模塊;單片機(jī);Socket類
0 引言
近幾年,隨著互聯(lián)網(wǎng)的快速發(fā)展和人們對生活品質(zhì)不斷追求,出現(xiàn)了一個(gè)較為新穎的名詞——智能家居。所謂智能家居,我們可以從字面上來理解,即對所有家居設(shè)備進(jìn)行智能化的控制管理。
本文介紹一種智能插座,能在電腦上位機(jī)界面或智能手機(jī)上對插座的通斷進(jìn)行控制和通斷狀態(tài)的獲取。這樣我們只需要將電器設(shè)備的電源插頭插在插座上就可以實(shí)現(xiàn)智能控制了,就不需要花更多的時(shí)間和成本去對現(xiàn)有的電器設(shè)備的電路進(jìn)行改裝了,實(shí)現(xiàn)了智能控制的通用性。無線控制方案有多種,考慮到智能手機(jī)和Wi-Fi的普及,本文主要采用Wi-Fi控制方案。
1 硬件設(shè)計(jì)
本設(shè)計(jì)主要針對在同一個(gè)Wi-Fi網(wǎng)絡(luò)環(huán)境下,通過上位機(jī)軟件實(shí)現(xiàn)對插座的遠(yuǎn)程開關(guān)控制和手動(dòng)開關(guān)控制相結(jié)合的方式,并實(shí)時(shí)地將插座的開關(guān)狀態(tài)反饋到上位機(jī)軟件界面進(jìn)行顯示,實(shí)現(xiàn)人機(jī)交互。系統(tǒng)框圖如圖1所示:
1.1 主控芯片
采用STM8S103F2單片機(jī)作為主控,一則為了節(jié)約成本,二則是因?yàn)镾TM8S系列單片機(jī)有眾多優(yōu)點(diǎn)(如UART、內(nèi)部看門狗、AD、低功耗、E2PROM等),以便于以后對產(chǎn)品的升級改造。
1.2 Wi-Fi模塊
Wi-Fi我采用的是ESP8266系列模塊,該模塊可以實(shí)現(xiàn)串口透傳、PWM調(diào)控、GPIO控制等功能,并且支持STA/AP/STA+AP三種工作模式,可以通過互聯(lián)網(wǎng)控制,利用終端設(shè)備就可以進(jìn)行無線控制,該模塊主要是通過AT指令集將Wi-Fi數(shù)據(jù)轉(zhuǎn)換成UART數(shù)據(jù)與主控進(jìn)行數(shù)據(jù)交換,使用起來非常方便。
1.3 ID設(shè)置模塊
考慮到若有多個(gè)插座共存的情況,我采用8位拔碼開關(guān)進(jìn)行設(shè)備ID號的設(shè)置。與上位機(jī)進(jìn)行通訊時(shí)必須與相應(yīng)設(shè)備的ID號相對應(yīng),才能進(jìn)行控制,否則將無法進(jìn)行控制。
1.4 手動(dòng)控制模塊
在主控的其中一個(gè)IO引腳上外接獨(dú)立按鍵對輸出電路進(jìn)行控制,每次按鍵都對輸出信號進(jìn)行翻轉(zhuǎn),并利用程序進(jìn)行消抖處理,這樣就無須再附加任何模擬或數(shù)字電路,大大節(jié)約了成本,降低了開發(fā)難度。
1.5 信號指示模塊
通過一紅一綠兩個(gè)信號指示燈,對電源信號與Wi-Fi信號的狀態(tài)進(jìn)行反饋。電源接通紅燈常亮,否則不亮;當(dāng)接通電源后,若Wi-Fi已連接上,綠燈以2Hz的頻率進(jìn)行閃爍,否則不亮。
1.6 輸出控制模塊
輸出控制采用光耦隔離后再對晶闡管進(jìn)行控制的方法。這種無觸點(diǎn)式的控制較之前的繼電器控制有兩個(gè)優(yōu)點(diǎn):一是使用壽命比繼電器的使用壽命長;二是不會(huì)有電火花產(chǎn)生,使得該控制模塊在某些特殊環(huán)境下(如可燃?xì)怏w)仍然能夠正常使用。
1.7 電源模塊
采用開關(guān)電源方案將插座內(nèi)220V交流電轉(zhuǎn)換成3.3V直流電源給所有模塊進(jìn)行供電。
2 軟件設(shè)計(jì)
軟件設(shè)計(jì)主要包括兩部分:下位機(jī)軟件和上位機(jī)軟件。下位機(jī)軟件主要指單片機(jī)內(nèi)控制程序,在STVD+COSMIC環(huán)境下用C語言進(jìn)行編程,工作流程如圖2所示;而上位機(jī)軟件主要指Windows平臺和Android平臺下的應(yīng)用軟件的編程,分別采用的是C#語言和JAVA語言對Socket類進(jìn)行編程開發(fā),雖然其編程環(huán)境和編程語言不同,但其工作原理一樣,工作流程如圖3所示。
3 結(jié)束語
該設(shè)計(jì)實(shí)現(xiàn)了與現(xiàn)代化互聯(lián)網(wǎng)終端設(shè)備控制的功能,充分利用了我們生活中最常用的兩個(gè)電子設(shè)備(電腦和手機(jī)),能給人們帶來很大的方便,操作起來簡單,只要打開電腦或者手機(jī)上的軟件界面,動(dòng)動(dòng)手指即可實(shí)現(xiàn)無線控制并獲取各種電器的開關(guān)狀態(tài),更可以手動(dòng)進(jìn)行控制。如果未來Wi-Fi覆蓋到世界上任何一個(gè)角落,我相信該設(shè)計(jì)將會(huì)給有很大的成長空間。
參考文獻(xiàn):
[1] 盧林杰,秦會(huì)斌. 基于STM8S103和WIFI的智能家居照明系統(tǒng)設(shè)計(jì)[J]. 電氣自動(dòng)化. 2014(03)
[2] 邵健,魏先巍. 基于家庭WIFI網(wǎng)絡(luò)的DALI智能照明系統(tǒng)設(shè)計(jì)[J]. 通化師范學(xué)院學(xué)報(bào). 2013(08)
[3] 江燕良. 基于Android智能終端的遠(yuǎn)程控制系統(tǒng)[J]. 電子技術(shù)應(yīng)用. 2012(08)
[4] 劉寧,邱爽. 基于Java的Socket通信的實(shí)現(xiàn)[J]. 才智. 2009(16)endprint