沈華剛 呂剛磊




摘 要:本文首先介紹了基于ESP8266串口WiFi的智能插座的設計思路,然后分析其整體結構,之后對其軟硬件進行詳細介紹,其中,硬件系統包括數據采集、Arduino UNO控制器和繼電器模塊;軟件系統包括數據庫、系統管理模塊、系統的登錄模塊、系統的前臺顯示模塊,以資借鑒。
關鍵詞:智能插座;ESP8266串口WiFi;硬件;軟件
Abstract: This paper first introduced the design idea of intelligent socket based on ESP8266 serial WiFi, then analysed its overall structure, and then introduced its software and hardware in detail. The hardware system includes data acquisition, Arduino UNO controller and relay module; the software system includes database, system management module, system login module, system front-end display module. The author hope this study can provide reference for other scholars.
Keywords: intelligent socket;ESP8266 serial WiFi;hardware;software
1 基于ESP8266串口WiFi的智能插座的設計思路
智能插座是實現智能家居的關鍵部件,對推動智能家居的實現具有重要作用。本文設計基于ESP8266串口WiFi的智能插座的思路如下。首先通過溫度傳感器把溫度信號通過WiFi模塊傳遞給網頁,如果溫度過高,則說明家庭可能存在火災隱患,系統將通過郵件的方式把信息傳遞給用戶,第一時間告訴用戶家里存在火災情況。同時,Arduino UNO單片機處理器將通過繼電器模塊切斷對插座的供電。如果用戶想通過遠程控制插座的通斷,可以點擊網頁上的開、關超鏈接,點擊超鏈接時,信息通過網頁傳遞給單片機,單片機通過繼電器控制插座[1]。
2 基于ESP8266串口WiFi的智能插座整體結構
本文設計的基于ESP8266串口WiFi的智能插座包括硬件系統和軟件系統,硬件系統包括數據采集、Arduino UNO控制器和繼電器模塊;軟件系統包括數據庫、系統管理模塊、系統的登錄模塊、系統的前臺顯示模塊。用戶登錄系統后可以查看智能插座的溫度,包括智能插座實時溫度的顯示、智能插座目前的狀態和系統管理。系統管理分為數據庫備份、數據庫還原、管理員密碼更改、管理員退出系統四部分功能[2]。
3 硬件系統
基于ESP8266串口WiFi的智能插座的硬件系統如圖1所示,主要包括Arduino UNO單片機控制器模塊、串口WiFi信號傳輸模塊、電壓穩定模塊、繼電器模塊、LED顯示屏模塊、溫度傳感器模塊,如圖1所示。
3.1 Arduino UNO單片機控制器模塊
Arduino單片機是一種簡單易學的集成電路,其擁有13個數字接口,5個模擬接口,還有電源、地接口;可以接收數字信號和模擬信號;可以應用于許多有趣的、實用的電子產品制作,如萬年歷、3D打印機、澆花器、電子防盜器等。當前,全世界許多電子產品愛好者,不斷利用Arduino制作新的產品。在使用傳統的單片機時,需要使用者對單片機的內部硬件結構有一定的了解;而在使用Arduino單片機時,只需要使用者專注于程序的編寫即可。同時,Arduino單片機還提供了許多已經編寫好的接口,程序員調用這些接口就可以較好地控制步進電機、傳感器等外圍電路。此外,Arduino單片機擁有簡單易學的IDE,使用起來很方便。
3.2 ESP8266串口WiFi信號傳輸模塊
由于ESP8266串口WiFi體積小、價格便宜,因而,被廣泛應用于移動設備聯網和物聯網技術領域。其支持AT語言,可以將固件燒寫進ESP8266中。燒寫固件時需要購買USB轉TLL轉接器,USB轉TLL轉接器與ESP8266 WiFi的連接關系為:3.3V電源連接ESP8266的REST、CH_PD和VCC,串口TTL的RXD、TXD連接ESP8266的TXD、RXD,串口TTL的GND接地。GPIO0默認高電平為工作模式(不接線懸空)。利用ESP8266flash.exe軟件對ESP8266串口WiFi刷固件,如果GPIO0管腳接了低電平就是下載模式,下載模式用于給ESP8266 WiFi模塊刷固件。ESP8266 WiFi模塊其余的管腳可以不接。利用串口助手軟件和AT指令調試ESP8266的WiFi功能,使ESP8266利用用戶名和賬號聯網,聯網時波特率設置為115200。
3.3 溫度傳感器模塊
本次所設計的智能插座的溫度傳感器采用的是LM35溫度傳感器。LM35是一種廣泛使用的溫度傳感器,采用內部補償,精度高,可以達到±0.5℃,節能環保,芯片自身幾乎沒有散熱問題,工作電壓為4~30V。溫度傳感器需要一個管腳接5V高電位,一個管腳接地,一個管腳接Arduino的模擬接口,關鍵技術在于如何將讀取的模擬值轉換為實際溫度。本次設計將讀取到的模擬值va*0.0048828125*100就得到實際溫度。根據溫度的高低,判斷周圍環境是否存在危險,是否存在火災。當火災發生時,PHP使用PHPMailer郵件類發送郵件給用戶。
3.4 繼電器模塊
本文設計的智能插座的繼電器模塊使用5V電源控制220V高壓開關,高電平觸發,繼電器模塊和Arduino電路板連接的關系是:繼電器的VCC、GND連接Arduino的8管腳和GND,繼電器的IN1、IN2連接插座。繼電器實際上只是電動開關,Arduino控制繼電器,繼電器控制插座。本次設計使用的繼電器模塊在斷開和打開時都有LED指示燈指示,當用戶點擊網頁上的關閉按鈕關閉智能插座時,PHP將網絡將信號傳遞給Arduino,Arduino接收到需要關閉智能插座的信號后,使8管腳處于低電平,繼電器就會關閉,此時智能插座不會通電;同樣,當用戶點擊網頁上的打開按鈕打開智能插座時,PHP將信號傳遞給Arduino,Arduino使8管腳處于高電平,智能插座通電。
4 軟件系統
4.1 數據庫
該系統的數據庫采用MySQL數據庫,admin數據庫管理員表如表1所示。其中Id為Int類型,自動增加,Usename、Pwd用來儲存管理員賬號與密碼。
4.2 系統管理模塊
當以管理員的身份輸入正確的賬號、密碼、驗證碼進入后臺管理系統時,系統將彈出如圖2所示的頁面。管理員可以對系統的數據進行備份、還原操作,也可以對自己的密碼進行修改,也可以點擊退出系統超鏈接,安全退出系統,系統會使管理員登錄的session置空[3]。
當點擊修改管理員密碼超鏈接時,彈出的界面如圖2所示,頁面列出了兩個已經添加的管理員賬號。頁面中包含密碼列表和添加密碼兩個超鏈接,同時還包含翻頁功能,包含總記錄數、當前頁和總頁數、首頁、上一頁、下一頁、尾頁、頁碼跳轉框。點擊刪除超鏈接時,可以刪除當前的管理員密碼,點擊修改超鏈接時,可以修改對應的管理員密碼[4]。
4.3 系統顯示模塊
系統顯示頁面如圖3所示。圖3顯示了智能插座開關狀態、當前周圍環境溫度。用戶可通過在網頁上輸入通電的時間遠程控制家用電器的通電時間,如手機充電一定時間后由單片機控制繼電器自動關閉智能插座;用戶也可以通過點擊開、關超鏈接即時控制智能插座的通電狀態[5]。
5 結語
本文系統介紹了基于ESP8266串口WiFi的智能插座關鍵技術的實現,重點介紹了系統的設計思路、及其軟、硬件系統。
參考文獻:
[1]劉奧川,詹琳.智能插座的設計[J].電腦知識與技術,2016(6):177-178.
[2]薛靈芝.基于WIFI的智能插座[J].傳播力研究,2018(29):252.
[3]李文彬.基于WiFi的智能插座系統設計[J].物聯網技術,2018(5):70-74.
[4]郭劍鵬,仲志丹,丁英杰,等.基于Arduino單片機的智能小車避障設計[J].科學技術創新,2018(13):61-62.
[5]許鵬,劉昕瑀,包武.基于Arduino的智能家居燈控系統設計[J].電子制作,2018(1):29-32.