楊 琳,李 媛,王 咪,喬成芳,陳 俊
(1.商洛學院 電子信息與電氣工程學院,商洛726000;2.西安工程大學 電子信息學院,西安710048;3.商洛學院 化學工程與現(xiàn)代材料學院,商洛726000;4.山陽中學,山陽726400)
伴隨著社會的進步和科技的發(fā)展,家電的智能化已經(jīng)成為科技化社會生活的重要發(fā)展趨勢之一。家電智能化離不開智能插座的應用。 國外市場上出現(xiàn)的定時智能插座[1]、計量型智能插座[2],以及具備無線通信、 存儲和計算能力的手持設備等智能產(chǎn)品,較早地被少部分外國人所使用,但由于受當時技術發(fā)展的限制,產(chǎn)品功能較為單一,很難實現(xiàn)網(wǎng)絡化和智能化, 所以并不能被大多數(shù)外國人接受。因此這類智能產(chǎn)品在國內使用得也很少[3-5]。
近幾年來智能家居在國內外都得到了飛躍式的發(fā)展[6-9]。 在當今社會,無線路由器及智能手機、平板電腦等手持設備己經(jīng)得到了廣泛的普及,WiFi[10]覆蓋范圍更廣,傳輸速率更快,更重要的是WiFi 直接與互聯(lián)網(wǎng)連接,不再需要通過網(wǎng)關實現(xiàn)與互聯(lián)網(wǎng)的通信,無線WiFi 成為辦公室、餐廳、酒店、商場等公眾場合的必要設備[11-12]。 將智能插座與Wifi 網(wǎng)絡相結合,成為當今社會一個主流方向[13-14]。 在此所設計的智能插座通過WiFi 與智能手機、 平板電腦等移動終端連接, 從而實現(xiàn)Web 對智能家居機器人、家用電器等設備的智能控制。
該系統(tǒng)包括主芯片、電源模塊、WiFi 模塊、按鍵模塊、繼電器模塊和顯示模塊等6 個部分,系統(tǒng)架構如圖1 所示。

圖1 系統(tǒng)架構框圖Fig.1 Block diagram of system architecture
其中,主芯片選用STC89C52RC,采用7805 穩(wěn)壓模塊供電,采用WiFi 模塊實現(xiàn)無線互聯(lián),采用LCD1602模塊實現(xiàn)數(shù)據(jù)顯示,采用繼電器模塊完成開關功能。
STC89C52RC 型單片機芯片及其外圍電路如圖2 所示,其封裝方式為DIP。 當系統(tǒng)收到相應的信號時,單片機芯片就會根據(jù)接收到的信號指令做出相應的反應,達到所需目的。
1)復位電路 單片機在啟動時和在重新調整之后,都需要先復位以使得MCU 恢復。 在此,電路的復位方式為手動復位,可以便捷高效地實現(xiàn)按鍵復位。 復位電路如圖3 所示。

圖2 STC89C52RC 外圍電路Fig.2 Peripheral circuit of STC89C52RC

圖3 復位電路Fig.3 Reset circuit
2)時鐘電路 由于51 系列的單片機沒有自己的內部系統(tǒng)時鐘, 需要使用其19 引腳(XTAL1)與18 引腳(XTAL2)2 個特定為時鐘準備的電路來制作1 個時鐘。 所設計的時鐘電路如圖4 所示。

圖4 時鐘電路Fig.4 Clock circuit
時鐘產(chǎn)生一組固定的振蕩波形,單片機內部的定時器和中斷在該節(jié)拍下有效地工作,使整個工作有序進行, 提高了編程的效果和軟件的執(zhí)行速度。晶振的頻率決定著產(chǎn)生波形的頻率, 晶振頻率越大,整個電路的一個周期產(chǎn)生的波就越多,波特率就越高。 在此,由于對時間的要求不很高,一般采用6 MHz 的晶振就可以滿足上傳數(shù)據(jù)和計時的要求。
在此選用ESP8266 模塊作為WiFi 模塊。 所使用的UART 接口的無線WiFi 網(wǎng)絡模塊,不僅安全,而且可以方便地修改和設置密碼,也可以通過開發(fā)的App 修改密碼,使用安全、方便。ESP-12 與單片機的串口通信引腳圖如圖5 所示。

圖5 ESP-12 與單片機接線圖Fig.5 Connection diagram between ESP-12 and MCU
選用SRS-05VDC-SL 型繼電器。 它不僅可以控制其他電路,而且也能被控制,常被用于工業(yè)自動控制電路之中。 其實質上是一種用過電流來控制的自動開關,在日常使用中處于關閉狀態(tài),當電流激勵到來時開關閉合,因此在控制電路中具有電路保護和自動調節(jié)等功能。 該繼電器在此主要起開關閉合與斷開的作用。使用手機可以通過連接無線WiFi向單片機芯片發(fā)送信號, 以控制繼電器的工作狀態(tài)。 繼電器的驅動電路如圖6 所示。
顯示模塊內部包括主顯示屏LED 顯示模塊、控制器以及段選擇器。
LCD 顯示屏是一種液晶模塊,超薄輕巧。 實現(xiàn)振蕩和幀的輸出是通過列驅動器的控制來接收信號, 再通過交流掃描驅動信號進行相應的處理,得到所需的信號數(shù)據(jù)。
控制器在接收到來自STC89C52 單片機的信號之后,控制LED 模塊進行顯示。 其內置的CGROM,CGRAM 和DDRAM 等字符儲存信息早在內部儲存好, 然后再由控制器的控制器信號進行讀寫操作,如圖7 所示。

圖6 繼電器驅動電路Fig.6 Driving circuit diagram of relay

圖7 內部電路框圖Fig.7 Block diagram of internal circuit

圖8 主程序流程Fig.8 Flow chart of main program
軟件設計主要分為主函數(shù)模塊設計、驅動電路以及其子程序設計、顯示模塊子程序設計、按鍵模塊設計等5 個模塊的設計。 軟件的設計必須與硬件的設計一一對應,按照模塊化的設計思路,利于日后對軟件的更改與優(yōu)化,增強程序的可移植性。主程序流程如圖8 所示。
1602 顯示流程如圖9 所示。其顯示操作軟件控制流程如下:①初始化,使得所用的引腳和內部儲存都處于最初的狀態(tài); ②讀取來自單片機的信號,其主要功能包括讀取輸入高低字節(jié)的狀態(tài)字;③寫狀態(tài),輸入不同的指令代碼,然后高脈沖輸出;④讀數(shù)據(jù),對輸入不同的高狀態(tài)數(shù)據(jù)進行讀取;⑤寫數(shù)據(jù),輸入不同的數(shù)據(jù),高脈沖輸出然后顯示。
所設計的插座開關通過與繼電器相連接,繼電器驅動控制插座的開關,進而利用手機App 操作達到控制插座開關的功能,這樣就能很方便地操作。插座開關的設計流程如圖10 所示。

圖9 1602 顯示流程Fig.9 Flow chart of 1602

圖10 插座開關流程Fig.10 Flow chart of socket switch
設計了基于WiFi 物聯(lián)網(wǎng)的智能家電插座,采用STC89C52RC 低功耗單片機作為主控芯片,結合無線WiFi,LCD1602 液晶屏顯示、繼電器控制開關及手機接收和發(fā)送等外圍的功能模塊電路構成系統(tǒng)的硬件電路,用C 語言進行軟件編程,實現(xiàn)了通過手機控制各個模塊等基本功能以及顯示、掉電保存及無線等功能。 該插座具有成本低廉、穩(wěn)定可靠、易于開發(fā)、操作簡單方便等優(yōu)點,可應用于住宅、辦公室等場所,保密性強,靈活性高。