孫洪騫 朱陳海 董嘉良 楊功德
摘要:隨著人們對物質生活的需求也不斷提高,許多的智能產品孕育而生,以STM32智能家居為代表的高科技產品極大的方便了我們的生活,讓我們的生活向著簡單、方便、快捷的方向發展。
關鍵詞:STM32;智能家居;控制系統
1 智能家居控制系統的整體設計
本文介紹的智能家居系統設計上主要依靠STM32單片機為主要控制模塊,它具備接收和發送數據的雙重身份,通過網絡通信、自動控制等一系列技術來實現對家居的控制。該智能家居控制系統具體設計流程為:首先利用用戶的手機連接家里的WiFi,通過WiFi將接收到的DHT11測試的周圍環境的溫濕度數值,然后用戶手機設置閾值將其發送到STM32單片機,STM32接收到數據后就會在LCD上顯示出來。這時,只要到了用戶設定的時間,智能家居控制系統就能指揮電器、門禁系統按設定要求開始工作。
2 智能家居控制系統的硬件設計
由許多的子系統共同協調配合完成信息的采集、交換,用戶依靠互聯網絡就可以同時對家里的電器、門禁開關等系統遙控指揮,如果系統出現了問題還能及時的進行處理,以實現用戶對家用設備的遠程控制為目的。系統的紅外遙控模式能夠有效的監控家中的電器以及窗戶、窗簾等,隨時可以安全、可靠的通過RF射頻實現遙控電器以及照明。它主要以STM32為核心,運用WiFi模塊和其他幾種模塊發送數據,DHT11測試周圍環境的溫濕度數值,通過手機模塊設置閾值然后輸送到STM32上面,最后LCD液晶顯示屏上就會實時出現測試的溫濕度和發送到用戶手機上的閾值。
3 智能家居控制系統的軟件設計
主要包括電腦端對智能家電的詳細設置,以及能體現出手機便捷性對家電基本控制需求的Android客戶端應用程序。其主要軟件設計流程如圖1所示。系統任務的實現由兩個不同的線程實現:網絡通信用的NetStream程序和本地數據處理的程序。
(1)本地數據處理程序。根據任務又分為以下兩部分:用戶操作響應部分,視頻流數據處理部分。前者主要負責采集用戶對上位機軟件按下的按鈕、輸入的命令等數據,并將這些采集到的數據進行運算和處理,得到結果后再進行加密并編碼,最后加載到網絡流上,自動通過網絡發送到下位機。后者則是智能家居安防監控功能的承載,上位機的軟件定時器產生一定時間間隔的溢出中斷后,通過TCP連接到路由器,賬號和密碼驗證無誤后,即可獲取監控攝像頭每一幀JPEG格式的圖像信息,經過處理,可將這些JPEG圖像信息合成24幀每秒顯示在上位機界面上,由于人眼的視覺暫留效益(Persistence of vision),這些連續的圖像可以被看成是達到了流暢的視頻效果。
(2)NetStream部分則主要是解決上位機與下位機通信的問題。本系統采用一種SSL加密的TCP/IP協議。SSL又叫“安全套接層(Secure Sockets Layer)協議”,是一種在客戶端和服務器端之間建立安全通道的協議,充分保證了系統通信過程的安全。
(3)STM32接收端軟件設計。主要設計流程是單片機通過ESP8266網絡模塊實現對TCP/IP協議族的ARP、IP、ICMP、TCP、UDP、DHCP協議按次序進行指定配置。
4 智能家居控制系統的模塊設計
(1)12V電機驅動的電動窗戶、窗簾的模塊。它的設計原理采用TSL230B這個電子元件,利用元件感知所處環境的光源強弱來仔細測試得出結論的模塊設計方式。
(2)紅外遙控模塊。主要是針對電視、空調以及電扇進行的遠程紅外監控采用的紅外遙控模塊,先安裝紅外發送器,對家里的電氣設置編碼,遠程發送電氣設置編碼,通過philipsRC-5Protoeol的PPM或NEC-Protocol的PWM去除上面的編碼,再安放一個紅外接收器,就可以解碼家里電氣的遙控信號,從而實現對家里的電視、空調以及電扇的遠程遙控。因此,在紅外遙控模塊的設計里用戶可以通過自行設置界面來轉換適合自家的監控模式。
(3)市電220V電器電器控制模塊。這個模塊的設計控制的是家里的電冰箱、電燈等電氣設備,它適用的遙控電路編碼主要有CS5211、CS5212兩種。設計中兩種電路編碼必須配套的使用才能保證模塊的正常運行, 首先STM32電氣元件遠程監控CS5211專用電路,用RF射頻發射無線編碼信號,同時電氣插座的另外一端插入CS5212,通過模塊里的繼電器開關插座電路對220V電器設備實現遠程遙控。