金華職業技術學院機電工程學院 浙江 金華 321000
隨著社會的進步和網絡技術飛速發展,人民生活水平有了很大提高,對舒適智能的家居環境提出了更高的要求,其中,對家庭中電燈的遠程遙控的需求非常迫切。在燈控這個領域中,市面上大部分的無線燈控開關都是使用遙控器進行控制的,而普通的紅外遙控器存在許多使用上的弊端。因此,本設計對此進行了技術上的改良,使用WiFi模塊進行燈光的開關控制,得到了更好的效果,實現了真正的遠程遙控。
首先,本設計的思路是通過WIFI模塊實現單片機同外部網絡的信息連接,當手機APP發送特定的開燈或關燈協議報文給WIFI模塊時,WIFI模塊接收到信息后,向單片機發送相應的控制命令信號,單片機收到控制命令后,驅動相應的I/O端口,進而使繼電器斷開或閉合,實現家用燈具的無線開關控制(圖1)。

(1)主控制器模塊。主控制器模塊是由STC89C52芯片為核心的最小系統組成,STC89C52芯片在單芯片上,擁有靈巧的8位CPU和在系統可編程Flash,使得STC89C52在嵌入式控制應用系統中的得到了廣泛應用。本設計使用TXD和RXD引腳實現與WIFI模塊的串口通信,從而實現主控制器和WIFI模塊的交互;其他I/O引腳主要用于連接繼電器控制信號,可以實現多路電燈的遠程開關遙控。
(2)WIFI模塊。WIFI模塊選擇了樂鑫公司的基于串行接口的ESP8266芯片,該芯片內置了32位的CPU,能夠獨立運行,也可以作為從機搭載于其他主機MCU運行,可以廣泛應用于智能家居、工業無線控制、無線傳感器等領域。ESP8266模塊能夠實現用戶串口數據到無線網絡之間的交換。有2種使用方案:一是直接使用內部自帶的處理器,對芯片進行二次開發,通過I/O口控制設備,例如繼電器、傳感器等,此方案節省成本,但開發難度較大;二是ESP8266模塊外接單片機,而其僅用來完成網絡相關的任務,使用AT命令操作,通過串口和外接的單片機通信,此方案開發快,性能穩定,但成本相對較高。本裝置選用了第二種方案來實現主控CPU和外界的通信。
(3)繼電器驅動模塊??刂葡到y通過繼電器的方式實現開關的通斷控制。繼電器通過PNP型三極管驅動,當超過設定時,單片機會由高電平跳變成低電平,三極管導通繼電器吸合,繼電器起開關作用,可以驅動負載。圖3為單個繼電器驅動電路,單片機P2.0引腳輸出一個低電平時,PNP型三極管9012導通,電流從+5V電源經線圈再經9012回到GND形成回路,此時繼電器線圈得電吸合,與線圈并聯的LED燈點亮,2.2K分壓電阻保證LED的3V工作電壓,二極管用于消除繼電器吸合時產生的瞬間反相電動勢,接線端子CON2可外接負載電源線,驅動負載的通斷相當于一個智能開關。
該裝置的軟件主要由兩部分組成,其一為STC89C52的單片機程序,二為手機APP程序。接下來分別進行介紹。
(1)單片機程序。單片機程序主要實現的是ESP8266的初始化、外部通信數據的處理、串口收發控制。首先是WIFI模塊的初始化,主要是設置WIFI的工作模式,ESP8266支持soft AP模式、station模式、soft AP+station共存模式三種模式,本文采用Soft AP模式,即無線接入點模式,ESP8266模塊發射一個WIFI熱點,將手機或電腦等終端設備接入熱點,組建一個局域網。STC89C51單片機通過AT指令對ESP8266進行是初始化配置。
配置指令為:
AT+CWMODE=2,設置Soft AP模式。
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模塊。
(2)手機APP調試程序。在本項目中并沒有專門開發燈光控制APP,采用的是通用的遠程串口調試APP。該APP程序為網絡調試助手安卓版。網絡調試助手集成了TCP/UDP客戶端服務器,服務器端支持透明傳輸方式、自動反饋方式和手動發送方式。采用TCP客戶端模式,通過配置IP地址和COM端口號實現APP與ESP8266通信。
完成硬件設計與軟件設計后,先將電路通過STC核心開發板與控制繼電器搭建出來,通過ST-LINK將程序燒寫進去,就可以進行測試了。
通過調試發現,在網絡調試助手上發送“OPENLAMP1”,可以接通相應的繼電器模塊;反之,發送“CLOSELAMP1”,可以斷開相應的繼電器模塊。另外,通過ESP8266與串口的連接進行信息打印,也可以正常的接收信息及發送信息到網絡調試助手相應的端口。
總之,采用ESP8266模塊為通信模塊、采用STC89C52為核心控制模塊的無線燈控開關實現了既定的功能要求,可以滿足實際燈光控制需要。