郭芷妍,胡立夫,史佳偉,劉雨珊
(沈陽航空航天大學 自動化學院,遼寧沈陽,110036)
隨著移動網絡技術和無線數據傳輸技術的不斷發(fā)展,智能家居逐漸火熱起來,便捷了人們的生活。但隨之而來也出現了如家用電器過載、內部線路老化引發(fā)大量火災的問題,而插座作為根本的多通道配電組件能夠實現家用電器的間接控制。因此本文提出了基于單片機的多功能插座設計方案,用戶能夠通過Android 手機控制插座,以此間接控制家用電器的供電開關或定時開關電源,對于能源的有效利用有著重要意義。而且,當插座檢測到相連家用電器的電壓或電流超出安全范圍,或插座內部器件檢測到溫度超過安全范圍時,會自動停止供電,同時蜂鳴器報警,避免發(fā)生火災。
基于單片機的多功能插座設計以STC15F2K60S2 芯片作為下位機的控制核心,通過CS5463 電能計量傳感器對電壓、電流、功率和溫度等物理數據實行采集,通過時鐘模塊實時讀取時間數據,采用藍牙無線通信技術實現數據的傳輸,繼電器模塊控制電源的開關。單片機將不同模塊的數據結合并處理和顯示,達到無線控制,插座保護,蜂鳴器報警等功能。多功能插座硬件整體結構圖如圖1所示。軟件部分由單片機軟件和Android 手機APK 軟件組成,軟件程序由不同的子函數共同搭建,通過調用合理地結合在一起,實現各個功能。
圖1 多功能插座硬件整體結構圖
多功能插座的硬件電路部分包括微控制器模塊、顯示模塊、傳感器模塊、無線通信模塊、報警模塊、繼電器模塊和電源模塊共八個模塊。
STC15F2K60S2 微控制器引腳與傳統(tǒng)8051 單片機的最小應用系統(tǒng)兼容。本設計中,由于OLED 采用I2C 通信方式,因此利用它自帶的普通I/O 口定義為I2C 通信協(xié)議中的兩條總線。STC15F2K60S2 微控制器內部帶有IRC 時鐘,通過下載軟件時調節(jié)晶振頻率的方法選定內部IRC 時鐘頻率。STC15F2K60S2 單片機最小系統(tǒng)電路圖如圖2 所示。
圖2 STC15F2K60S2 最小系統(tǒng)電路圖
本設計顯示器選用OLED 12864。在多功能插座使用時,難免會有大的加速度動作,這種情況下,相比LCD 顯示屏,OLED12864 顯示屏的抗震性能更優(yōu)越。而且即使陽光直射,顏色也不會顯弱。OLED12864 與STC15F2K60S2 的連接電路圖如圖3 所示。
圖3 OLED12864 與STC15F2K60S2 的連接電路圖
本設計采用CS5463 傳感器模塊,它通過SPI 通信協(xié)議直接輸出數字量的參數信息,使用方法簡單,靈敏度高且功率損耗低。CS5463功率測量芯片由兩個24 位高速ADC、1 個電能轉換頻率器、1 個計算功率器、一個串行接口組成。它能夠測量高精度的瞬時電壓、電流以及功率,自帶溫度傳感器,可以實行系統(tǒng)校準。CS5463與STC15F2K60S2 的連接電路圖如圖4所示。
圖4 CS5463B 傳感器模塊與STC15F2K60S2 的連接電路圖
本設計的無線數據傳輸器選用HC06,其模塊采用Blue2.0 技術,支持主從模式。本設計采用從機模式,通過AT 命令修改HC06 模塊通訊波特率,波特率范圍為1200~1382400。通過微控制器串口通信功能,TXD 端口連接P3.0 口引腳,藍牙發(fā)送數據,微控制器接收。RXD 端口連接P3.1 口引腳,藍牙接收數據,微控制器發(fā)送。其與STC15F2K60S2的連接電路圖如圖5 所示。
圖5 HC06 與STC15F2K60S2 的連接電路圖
本設計報警電路選擇使用蜂鳴器實行聲報警。因為蜂鳴器發(fā)聲需較大的電流,須通過一個三極管電路實現電流的放大,然后微控制器對三極管基極輸出高低電平來控制完成聲報警。當檢測到電壓、電流和溫度超過安全范圍時,單片機管腳置低電平,蜂鳴器報警。三極管基級串行一個電阻與P2.4 口引腳相連,為控制器輸出高低電平控制報警。其與STC15F2K60S2 的連接電路圖如圖6 所示。
圖6 蜂鳴器與STC15F2K60S2 的連接電路圖
繼電器電路采用繼電器和發(fā)光二極管。三極管基極串行一個電阻與P3.5 口引腳相連,繼電器導通或關閉受微控制器輸出高低電平控制。LED 端口與P1.6 口引腳相連,微控制器輸出高低電平控制二極管亮滅。其與STC15F2K60S2的連接電路圖如圖7 所示。當繼電器模塊接上電源時,電源和地之間的D3 發(fā)光二極管發(fā)光,模塊電源接通。
圖7 繼電器與STC15F2K60S2 的連接電路圖
本設計電源模塊采用PM01。PM01 模塊為AC-DC 隔離開關電源,輸出穩(wěn)定5V 電壓功耗低,功耗低,綠色環(huán)保,空載損耗<0.1W。+Vo 與VCC 口相連,-Vo 與GND 相連,給單片機提供電源。其與STC15F2K60S2 的連接電路圖如圖8 所示。
圖8 PM01 與STC15F2K60S2 的連接電路圖
多功能插座的軟件設計包含微控制器程序編寫、Android 編程軟件的介紹和Android 手機軟件編寫,選擇使用采用自低向上,逐步整合的設計方法。
本設計必要讀取多個物理量數據,包含功率、電壓、電流和溫度信號,微控制器通過利用模擬SPI 通信協(xié)議從傳感器CS5463 電能計量模塊中讀取數據,再通過OLED 顯示屏顯示。DS1302 時鐘模塊,第一次使用時首先關閉寫保護,向其寫入實時時鐘數據,然后打開寫保護,防止初始時間數據改變,再讀取DS1302 時鐘信息并顯示。報警模塊,通過比較所讀取信息和閾值大小,進行報警,并關閉繼電器。在主程序外有一個串口通信中斷,它會查看上位機是否發(fā)送信息,接收信息后,單片機直接控制繼電器開關,或者定時控制繼電器開關。微控制器程序結構框圖如圖9 所示。
圖9 微控制器程序結構框圖
本設計選用了一款國內安卓軟件E4A 易安卓,它是基于安卓系統(tǒng)下的應用程序開發(fā)的編程語言。易安卓軟件界面簡練,操作便捷,功能強大,提供的安卓APP 代碼編寫語言通過簡單的學習便可以使用。易安卓軟件界面如圖10 所示,代碼編程區(qū)如圖11 所示。
圖10 E4A 軟件界面圖
圖11 代碼編程區(qū)圖
本設計中Android 手機發(fā)送數據、微控制器令串口接收數據均通過藍牙模塊進行。用戶通過設計界面按鈕先實現與藍牙相關函數間的連接,再進行數據傳輸,從而控制單片機系統(tǒng),Android 手機程序結構框圖如圖12所示,由主窗口函數、搜索藍牙設備子函數、連接藍牙設備子函數、直接控制子函數和定時設置子函數構成。
圖12 Android 手機程序結構框圖
首先進行單片機系統(tǒng)上電,觀察到電源模塊和3.3 V 降壓模塊指示燈發(fā)光。接著OLED12864 模塊在系統(tǒng)啟動完成后,會循環(huán)顯示電能、時間和溫度信息。插上試驗電器,觀察電壓、電流和功率變化。藍牙HC06 模塊安裝后,其燈光一直閃爍,當與上位機連接成功時,燈光停止閃爍,保持常亮狀態(tài)。繼電器模塊的控制指示燈和插座指示燈最初為熄滅狀態(tài),當上位機發(fā)送數據使繼電器導通時,這兩盞指示燈均發(fā)光。蜂鳴器模塊在比較電能、溫度信息和閾值后,超出安全范圍時發(fā)出報警聲,并關閉繼電器模塊,熄滅兩盞指示燈。單片機系統(tǒng)調試結果圖如圖13 所示。
圖13 單片機系統(tǒng)聯合調試時的結果圖
單片機系統(tǒng)聯合調試后,開始上位機與單片機的結合調節(jié)。點擊多功能插座APP,若未啟動藍牙,界面會彈出是否啟動藍牙的選擇框,點擊確定后,藍牙啟動,點擊搜索設備按鈕,列表會出現附近藍牙設備名稱,點擊需要連接藍牙設備,若連接成功,左上角會顯示已連接該設備,其右側按鈕會變?yōu)椤皵嚅_連接”。本插座系統(tǒng)藍牙名稱:Socket,密碼:8888,當初次連接設備時,需要輸入密碼。然后點擊按鈕直接控制下位機,觀察插座指示燈是否點亮或者熄滅,點亮即繼電器導通。點擊設置時間,選擇定時時間;點擊開關按鈕,確定定時開關。再點擊發(fā)送按鈕,發(fā)送定時信息,觀察達到定時時間時,插座指示燈是否點亮或者熄滅。多功能插座系統(tǒng)調試結果圖如圖14 所示。
圖14 多功能插座系統(tǒng)聯合調試時結果圖
本文設計的基于單片機的多功能插座,可以對功率、電壓、電流和溫度信號實時收集監(jiān)測,OLED 顯示屏進行顯示。當監(jiān)測值超過安全范圍時,會停止插座供電。同時,用戶可以通過手機藍牙對插座進行控制,以此間接控制家用電器的供電開關或者定時開關電源,解決了由于過載、線路老化導致的安全隱患,實現了能源的有效利用,作為智能家居產品研發(fā)的伴隨產物,對智能家居的發(fā)展也有著重要的意義。