摘要:本文利用S3C6410主控板、STM32、wifi模塊、GSM模塊及多種移動終端設計一個智能家居系統,使分立的設備通過無線和有線網絡組成一個相互聯系、協同操作的整體,實現家居環境監視、防盜自動報警、燈具自動控制、燃氣泄漏遠程報警等功能,使用效果良好。 隨著科學技術的發展和人們生活水平的提高,人們對家居的安全、舒適、便利等方面要求也逐步提高,現代家居向著高度智能化、人性化的智能家居方向發展。智能家居又稱智能住宅,它是融合了自動化控制系統、計算機網絡系統和網絡通訊技術于一體的網絡化智能化的家居控制系統。智能家居作為一個新生產業,市場消費潛力巨大。本文以三星公司S3C6410處理器為核心,利用S3C6410主控板、STM32、wifi模塊、GSM模塊及多種移動終端設計一個智能家居系統,使分立的設備通過無線和有線介質構成一個整體,實現了家居環境監視、防盜自動報警、燈具自動控制、燃氣泄漏遠程報警等功能,使家居更安全、更舒適、更方便。 1 系統整體方案 智能家居系統總體結構如圖1所示,包括4個子系統:數據采集與自動控制系統、數據監控系統、攝像頭監控系統和遠程報警系統。其中,數據采集子節點通過無線傳感模塊NRF24L01將數據發送到集中處理節點,進行相關自動控制任務,集中處理節點的數據通過RS232發送到S3C6410主控板進行數據的處理;使用wifi模塊建立局域網,將數據發送到局域網的安卓移動終端;使用GSM模塊將報警信號發送到移動終端,同時將攝像頭安裝在S3C6410主控板上,使用路由器建立局域網,可在終端上打開瀏覽器,監視攝像頭。 1.1 數據采集與自動控制系統 數據采集與自動控制原理如圖2所示。數據采集與自動控制系統對家居環境主要參數(溫濕度、自然環境光照狀態、燃氣狀態,紅外感應狀態)進行采集和自動控制,此系統包含3個采集和自控節點。溫濕度通過溫濕度傳感器DHT11進行采集,自然光照狀態通過光敏電阻電路進行檢測,燃氣狀態通過煙霧傳感器模塊進行檢測,樓梯口情況通過紅外感應傳感器進行檢測;系統有3個節點,節點1包括室內溫濕度采集,樓梯口情況檢測與樓梯燈自動開關控制,廚房煙霧狀態檢測與廚房排氣扇自動開關控制;節點2有浴室的煙霧狀態檢測與排氣扇的自動控制;節點3包括室外溫濕度的采集,自然光照狀態的檢測與院子燈的自動開關控制。數據采集集中處理節點(無線傳感器模塊NRF24L01)收集分立節點數據,在集中節點上裝有一個液晶顯示屏來顯示采集到的溫濕度等數據,同時通過串口發送到S3C6410主控板。 1.2 數據監視系統 系統的數據監視有兩類終端,分別是主控板顯示屏和移動安卓終端。數據監視原理如圖3所示。S3C6410利用串口接收來自數據采集系統的數據,并進行相應處理。主控板上安裝液晶顯示屏,用來顯示采集對象的圖標和數據;顯示屏的應用程序采用QT開發工具C++開發語言進行開發,使用Linux系統進行調用。主控板上安裝wifi模塊,通過此模塊建立wifi局域網;移動安卓終端裝載有安卓系統,監視應用程序利用Eclipse開發工具用java語言進行設計;監視數據從wifi模塊向外傳送,在局域網范圍內,只要連接上建立的局域網絡就可進行數據的監視。 1.3 攝像頭監視系統 攝像頭可在很多設備進行監視,只要此設備裝有瀏覽器即可。攝像頭監視方案如圖4所示。攝像頭安裝在主控板上,利用程序進行驅動;這里利用網線或無線路由建立的局域網進行攝像頭數據的傳送;可在電腦上連上網線對攝像頭進行監視,也可連接路由建立的局域網進行監視,同時可在移動終端上連接路由建立的局域網進行監視。多終端監視,方便靈活實用。 1.4 遠程報警系統 燃氣是家居安全的一大隱患,這里利用GSM模塊和移動終端建立燃氣遠程報警系統,方案如圖5所示。當燃氣出現泄漏時,觸發GSM模塊動作,遠程通知用戶及時處理。 2 系統硬件設計 基于S3C6410的智能家居系統由采集自控系統,多終端監視系統構成;所有的節點通過有線介質和無線網絡構成一個整體;主控板采用S3C6410配用板和核心板;硬件的主要設計在數據采集部分,數據采集使用STM32處理器,再加上外圍的傳感器、控制電路組成。 2.1 家居溫濕度硬件設計 溫濕度采集模塊的核心是溫濕度的采集,采用集成溫濕度傳感器DHT11,要注意DHT11輸出的數字量是串行數據,有特定的數據格式,需要用STM32的通用IO口來“模擬”這個串行口與DHT11進行通信。 2.2 紅外狀態硬件設計 紅外感應系統包括熱釋電人體紅外模塊電路和自動開燈模塊電路。熱釋電人體紅外模塊電路采用RE200B型的熱釋電人體紅外探測頭,利用專門的高性能傳感信號處理集成電路BISS0001對RE200B的信號進行處理,然后將信號傳到STM32進行處理。 2.3 自然光照狀態硬件設計 家居的自然光照狀態數據采集和自控系統包括光明電阻探測電路、自動開燈電路兩部分。光照狀態探測器選用光敏電阻傳感器,當光照值達不到設定的要求時,其阻值迅速變大,從而傳感器電路輸出信號,自動控制開燈電路。光敏電阻采集到的信號經過過零比較器后連接到STM32,由STM32進行處理。 2.4 燃氣泄漏狀態硬件設計 家居燃氣泄漏系統包括燃氣泄漏探測器電路、自動開關排氣扇控制模塊電路兩部分。燃氣泄漏探測器選用MQ-7型氣敏傳感器,當元件接觸還原性氣體時,其電導率隨氣體濃度的增加而迅速升高;可用于可燃性氣體的檢測。燃氣泄漏探測器硬件電路如圖6所示,MQ-7采集到的信號經過過零比較器后連接到STM32,由STM32進行處理。 3 系統軟件設計 軟件系統包括數據采集和自控、主控板監控和安卓監控等三部分。采集數據和自控部分在KEIL平臺利用C語言進行設計;主控板監控部分利用QT平臺用C++進行設計;安卓監控部分利用Eclipse開發工具用java語言進行設計;這些軟件系統實現采集、控制、傳送、顯示的功能。 3.1 采集數據和自控系統軟件設計 家居采集數據部分對溫濕度、紅外感應狀態、自然光照狀態、燃氣狀態進行周期性采集;自控部分包括院子燈、排氣扇、樓梯燈的實時自動控制。軟件統一使用keil開發工具用C語言進行設計。數據采集和自控任務流程圖如圖7所示。 3.2 主控板監控系統軟件設計 主控板周期性接收來自數據采集部分的數據,并進行顯示、控制、傳送任務,這些任務通過軟件來完成。軟件使用QT平臺用C++高級語言進行設計,并用Linux系統進行調用。系統會自動傳送數據并在液晶屏上顯示,同時會根據數據進行顯示圖標的變化,若燃氣發生泄漏還會進行聲音報警。 3.3 安卓監控軟件設計 安卓終端通過連接wifi局域網絡,接收來自主控板傳送的數據;軟件設計利用Eclipse開發工具用java語言進行設計;可以利用軟件將接收到的數據顯示在安卓設備顯示屏上,若燃氣發生了泄漏還會進行聲音報警。 4 系統設計注意事項 系統設計時需注意以下問題:1)在使用STM32時,因為使用的IO口較多,軟件配置IO口要特別注意正確配置它的模式。2)因為使用的IO口較多,程序處理部分也較多,要特別注意檢查,避免多個功能重疊使用同一個IO口。3)使用無線收發模塊NRF24L01時,寫接收通道地址,P0和P1通道是40位地址,但P2-P5只有8位地址,其高32位地址與P1通道相同,因此只要寫一個字節地址就可。4)切記在配置NRF24L01無線收發器時發送和接受的模式不能搞混,與收發頻率要設置相同。5)配置內核要耐心和細心,否則容易出問題。6)STM32是一款小管腳較多的貼片芯片,焊芯片時要特別注意。7)各傳感器在使用前都要調整它的靈敏度,否則會出現測試不了的情況。 5 結束語 課題應用S3C6410主控板、STM32、wifi模塊、GSM模塊、各種移動終端等設計一個智能家居系統,使分立的設備通過無線和有線介質組成一個整體,使之擁有家居環境監視,多終端攝像頭監視,燈具自動控制,燃氣泄漏遠程報警等豐富功能,真正讓用戶感到家居的安全、舒適和便利。 |