高慶云 天津職業(yè)技術師范大學研究生部
【摘 要】本文主要介紹智能家居控制系統(tǒng)各部分軟硬件設計。智能終端以STM32系列單片機為核心,配置相應外圍電路,移植μC/OS-II內核,編程實現(xiàn)對家庭網絡內部其他節(jié)點的遠程控制,并移植μC/GUI以提供人機交互界面。溫度、燈光控制節(jié)點以ATMega16單片機為控制核心,實現(xiàn)對溫度和燈光亮度的數(shù)據(jù)采集,使用ZigBee通信模塊將采集數(shù)據(jù)上傳給智能終端。控制節(jié)點可根據(jù)接收的命令或自行與設定值比較,再控制執(zhí)行裝置,以達到改變室內溫度和燈光強弱的目的。
【關鍵詞】智能家居 ZigBee通信 μC/OS-II STM32單片機
【中圖分類號】TP315 【文獻標識碼】A 【文章編號】1674-4810(2013)23-0196-02
一 引言
智能家居是以住宅為平臺,利用先進的計算機技術、自動控制技術、網絡通信技術和綜合布線技術,通過統(tǒng)一的網絡總線和控制平臺將家庭的電器設備控制系統(tǒng)、燈光控制系統(tǒng)、安全控制系統(tǒng)、能源管理系統(tǒng)等子系統(tǒng)有機地結合在一起,統(tǒng)籌管理,提供兼?zhèn)浣ㄖO備、網絡通信、信息家電等設備自動化。本文設計智能終端(家庭網關)、溫度控制節(jié)點和燈光控制節(jié)點,利用具有低功耗、低成本、短時延、大網絡容量、高可靠性等特點的ZigBee無線通信技術實現(xiàn)家庭內部網絡的控制,為家居智能化提供了一種有據(jù)可循的實現(xiàn)方案。
二 系統(tǒng)總體結構
系統(tǒng)總體結構是由智能終端、溫度控制節(jié)點和燈光控制節(jié)點三部分組成的閉環(huán)控制系統(tǒng),各部分通過ZigBee無線通信模塊傳送數(shù)據(jù)。其中,溫度和燈光控制節(jié)點都具有數(shù)據(jù)采集能力,既可以將采集數(shù)據(jù)打包后上傳給智能終端,也能接收智能終端下發(fā)的執(zhí)行命令。智能終端將兩個控制節(jié)點上傳的溫度和燈光數(shù)據(jù)匯總后,與設定值進行比較,所得結果以無線方式發(fā)送給各控制節(jié)點,控制節(jié)點在接收到命令后會自行判斷是否啟動相應的執(zhí)行機構調節(jié)環(huán)境溫度和燈光亮度。智能終端還配有人機界面用以顯示采集數(shù)據(jù),同時,也為用戶設定系統(tǒng)參數(shù)提供了便利。
三 硬件平臺設計
1.智能終端的硬件電路
智能終端以意法半導體(ST)公司研發(fā)生產的32位微控制器STM32F103VBT6為核心,增加ZigBee通信模塊、SD卡、LCD控制器、觸摸屏等外圍電路,實現(xiàn)無線通信、數(shù)據(jù)存儲和人機交互等功能。
ZigBee無線通信模塊。使用單芯片(SoC)解決方案實現(xiàn)ZigBee無線通信。以TI公司生產的CC2530芯片為核心,外接32MHz和32.768KHz震蕩晶體分別為芯片提供工作主時鐘和精確定時時鐘,通過USART與MCU進行數(shù)據(jù)傳輸。這種解決方案能夠提高性能并滿足以Zigbee為基礎的2.4GHz ISM波段應用,以及對低成本、低功耗的要求。
LCD接口電路。采用標準接口TFT 型37線LCD,控制器為ILI9320。3.3V供電電壓,使用DB0-DB7、DB10-DB17共16根數(shù)據(jù)線與MCU進行通信,ILI9320的片選端、背光控制引腳、寫控制引腳均與MCU的GPIO連接,調用指令代碼實行硬件控制。
觸摸屏模塊。采用四線制電阻式觸摸屏。X+X-Y+Y-四個引腳直接與MCU的ADC接口連接,ADC將觸摸屏采集到的模擬信號量轉換為數(shù)字信號量,MCU讀取ADC的寄存器值進行處理以確定觸摸屏被按下的位置。
SD卡接口電路。如果MCU的片內Flash容量不夠大時,可使用SD卡來存儲數(shù)據(jù),通過MCU的SPI2總線與之通信,SD卡作為SPI從機。
電源模塊。系統(tǒng)供給電壓為標準5V,經AMS1117芯片降壓到3.3V后供給MCU和CC2530使用。為提高ADC轉換精度,連接獨立的外部參考電壓到MCU的VREF+引腳,提供模擬基準電源。
復位和時鐘模塊。通過在MCU的NRST引腳外接手動開關(外部復位),接低電平實現(xiàn)一次系統(tǒng)復位。
連接8MHz的石英晶體振蕩器到MCU的SOC_IN引腳,為之提供更精確的主時鐘;同時,連接32.768KHz頻率的手表晶體振蕩器至OSC32_IN引腳,為MCU的實時時鐘或其他定時功能提供一個低功耗且精確的時鐘源。
2.溫度/燈光控制節(jié)點
溫度與燈光控制節(jié)點的硬件電路設計相似。以8位單片機ATMega16為控制核心,連接若干外圍電路實現(xiàn)數(shù)據(jù)采集和對執(zhí)行裝置的控制,且均保留了手動控制。
溫度控制節(jié)點使用Dallas半導體公司生產的單線數(shù)字溫度傳感器DS18B20檢測室內溫度,并通過ZigBee無線通信模塊將采集數(shù)據(jù)發(fā)送給智能終端,再根據(jù)智能終端下發(fā)的命令控制執(zhí)行裝置(散熱器),使室溫保持在設定值范圍內恒定不變。
燈光控制節(jié)點是根據(jù)光線的強弱,來控制燈光的強度,可實現(xiàn)三個功能,軟啟動功能:開燈時,燈光由暗逐漸變亮;關燈時,燈光由亮漸漸變暗,避免亮度的突然變化沖擊視覺。燈光調節(jié)功能:可以利用本地開關來進行光線明暗的調整,也可以利用智能終端或遙控器調整。全開全關功能:整個照明系統(tǒng)可以實現(xiàn)一鍵全開和一鍵全關的功能。
使用光敏電阻實現(xiàn)燈光的采集,將阻值變化轉換為電壓變化,連接至MCU的ADC接口將模擬量轉換為數(shù)字量,發(fā)送到智能終端。MCU再根據(jù)智能終端下發(fā)的命令調整PWM占空比,輸入PT4115綠色照明LED驅動電路,控制燈光的強弱。
四 系統(tǒng)軟件設計
1.智能終端的程序設計
μC/OS-II是完全可剝奪型的實時內核,即μC/OS-II總是運行就緒條件下優(yōu)先級最高的任務;它的各種服務都以任務的形式出現(xiàn),可以管理64個任務,留給用戶的應用程序最多可有56個任務;μC/OS-II源碼絕大部分都是用ANSI C編寫,只有與微處理器硬件相關的部分使用匯編語言編寫。
智能終端的軟件設計包括一個主函數(shù)和兩個任務。在MCU主時鐘穩(wěn)定工作后,首先調用OSInit( )初始化系統(tǒng),包括初始化中斷向量和USART、使能端口時鐘、初始化LCD和SD卡;然后調用OSTaskCreateExt( )和OSTaskCreate( )創(chuàng)建AppStartTask_1和AppStartTask_2這兩個任務;最后,調用OSStart( )啟動任務。
其中,AppStartTask_1主要負責讀取ADC轉換的觸摸屏數(shù)據(jù)和Zigbee接收的采集數(shù)據(jù),并進行處理,一方面用于LCD顯示,另一方面用于決策下發(fā)的命名。AppStartTask_2首先繪制LCD顯示所需的圖形框,之后進入死循環(huán),不停判斷是否有數(shù)據(jù)要更新,當檢測到數(shù)據(jù)更新后立即刷新顯示區(qū)。還負責設定值的更新,當設定值改變后通過Zigbee無線通信模塊,轉發(fā)給溫度/燈光控制節(jié)點。
2.控制節(jié)點的程序設計
溫度/燈光控制節(jié)點不僅可以將采集數(shù)據(jù)上傳給智能終端,等待其下發(fā)的執(zhí)行命令,還可以與用戶手動設定值進行比較,從而控制執(zhí)行裝置的動作,組成獨立的閉環(huán)控制系統(tǒng)。兩個控制節(jié)點的程序設計相似。
五 結束語
本文設計的智能終端和溫度/燈光控制節(jié)點已實現(xiàn)家庭內部網絡的無線通信,可對溫度和燈光進行遠程智能控制。本設計方案還可進一步改進硬件電路和軟件系統(tǒng)的設計,以降低各模塊的電能消耗,并提高整個系統(tǒng)無線通信的可靠性。
參考文獻
[1]周洪、胡文山等.智能家居控制系統(tǒng)[M].北京:中國電力出版社,2005:2~3
[2]尚麗麗.基于ZigBee的智能家居系統(tǒng)設計[D].大連理工大學,2010
[3]范書瑞、李琦、趙燕飛.Cortex-M3嵌入式處理器原理與應用[M].北京:電子工業(yè)出版社,2011:50~58
〔責任編輯:龐遠燕〕