Android終端及FPGA控制的智能家居系統(tǒng)
針對智能家居的應(yīng)用需要和智能手機(jī)的日益普及,設(shè)計(jì)并實(shí)現(xiàn)了一個(gè)以Android手機(jī)作為遙控終端及FPGA為主控中心的智能家居系統(tǒng),該系統(tǒng)利用藍(lán)牙進(jìn)行通信,應(yīng)用多種傳感器,實(shí)現(xiàn)視頻監(jiān)控、學(xué)習(xí)型紅外遙控、溫濕度采集、振動(dòng)檢測以及GSM遠(yuǎn)程報(bào)警等功能,從而滿足用戶的需求并達(dá)到一種智能控制的效果。該系統(tǒng)使用方便、操作簡單、易于擴(kuò)展。
本文引用地址:http://www.ex-cimer.com/article/271874.htm智能家居是以住宅為平臺(tái),利用通信技術(shù)、自動(dòng)控制技術(shù)等新技術(shù),將各種家電安防設(shè)施進(jìn)行集成,組成住宅設(shè)施管理系統(tǒng),造就一個(gè)安全便利舒適環(huán)保的家居生活環(huán)境。近年隨計(jì)算機(jī)技術(shù)、通信技術(shù)和網(wǎng)絡(luò)技術(shù)的發(fā)展,智能家居逐漸成為未來家居生活的發(fā)展方向。
在智能家居的控制系統(tǒng)中,控制終端是其核心設(shè)備,目前主要有以下幾種方案:第一種是采用鍵盤、LCD顯示器和紅外遙控器等設(shè)備對各種家用設(shè)備進(jìn)行控制,這種方式需要對終端的軟件和硬件分別進(jìn)行設(shè)計(jì),因而設(shè)計(jì)復(fù)雜且成本高。第二種是采用PC作為控制終端,使用這種方式的缺陷是只能在固定的位置進(jìn)行控制。第三種是采用智能手機(jī)作為控制終端,通過WiFi、藍(lán)牙、GSM等無線網(wǎng)絡(luò)對家居系統(tǒng)進(jìn)行控制,此方案使用方便、快捷。
隨著Android智能終端日益普及,其作為控制終端將成為未來智能家居系統(tǒng)發(fā)展的趨勢。本系統(tǒng)以Android智能設(shè)備作為遙控終端,以FPGA作為主控中心處理器,通過藍(lán)牙與手機(jī)端進(jìn)行通信并對數(shù)據(jù)進(jìn)行處理,實(shí)現(xiàn)視頻監(jiān)控、紅外遙控、溫濕度檢測、振動(dòng)檢測、GSM遠(yuǎn)程報(bào)警等功能。FPGA內(nèi)部資源豐富,接口方便,還可實(shí)現(xiàn)臉部識(shí)別、指紋識(shí)別等功能。
1系統(tǒng)結(jié)構(gòu)
系統(tǒng)結(jié)構(gòu)框圖如圖1所示,首先在Android平臺(tái)下開發(fā)一個(gè)應(yīng)用程序,數(shù)據(jù)通過藍(lán)牙發(fā)送給主控中心,當(dāng)FPGA接收處理完數(shù)據(jù)后通過串口給相應(yīng)的功能模塊發(fā)送指令,各功能模塊執(zhí)行相應(yīng)任務(wù)后也會(huì)將數(shù)據(jù)通過主控中心返回給智能終端并顯示,其中采用串口通信可讓通信方式多樣化,如485總線、藍(lán)牙模塊、WiFi模塊、ZigBee模塊等都可用串口進(jìn)行收發(fā)數(shù)據(jù)。這種結(jié)構(gòu)使得用戶只需用手機(jī)、平板電腦等Android終端就能任意控制各種家用設(shè)備并實(shí)時(shí)掌握周圍的環(huán)境情況,使用非常簡單快捷。
圖1系統(tǒng)結(jié)構(gòu)框圖
2主控中心FPGA設(shè)計(jì)
本系統(tǒng)采用FPGA作為中間控制部分的處理器主要基于以下兩點(diǎn)考慮,首先整個(gè)系統(tǒng)中用到多個(gè)串口,普通單片機(jī)內(nèi)部不超過3個(gè)串口,而FPGA可以根據(jù)需求搭建多個(gè)UART接口;其次FPGA可以采用平行以及流水線處理,可以完成視頻數(shù)據(jù)采集、VGA接口輸出等高速處理,還可完成臉部識(shí)別、指紋識(shí)別等復(fù)雜運(yùn)算。設(shè)計(jì)中采用的FPGA芯片型號是Altera公司CycloneII系列EP2C8Q208C8,在QuartusII平臺(tái)下用Verilog語言進(jìn)行開發(fā)。
2.1 UART模塊的設(shè)計(jì)
由于FPGA與各功能模塊均利用串口進(jìn)行通信,因此需要搭建多個(gè)UART接口,對數(shù)據(jù)進(jìn)行傳輸和處理。UART通信模塊主要由波特率產(chǎn)生模塊、發(fā)送模塊和接收模塊三部分組成,其中波特率產(chǎn)生模塊是將50MHz的主時(shí)鐘經(jīng)過多次分頻后為UART的收發(fā)模塊提供特定的波特率。
FPGA中的每個(gè)UART都被例化成一個(gè)子模塊,各模塊間通過輸出輸入接口進(jìn)行數(shù)據(jù)的交互,此外還有一個(gè)控制模塊,用于控制每個(gè)串口的發(fā)送和接收。
2.2視頻監(jiān)控的設(shè)計(jì)
視頻監(jiān)控是家庭防盜系統(tǒng)中必不可少的部分,本系統(tǒng)通過OV7670攝像頭獲取視頻信息,用FPGA進(jìn)行數(shù)據(jù)的采集和存儲(chǔ),最后通過VGA接口用顯示器顯示出來。框架如圖2所示。
圖2視頻監(jiān)控框架圖
OV7670是OmmVision公司生產(chǎn)的CMOS攝像頭,通過SCCB總線控制,圖像最高達(dá)到30幀/s.FPGA先構(gòu)建一個(gè)配置模塊,用SCCB總線對OV7670進(jìn)行初始化設(shè)置并使其開始工作,其中的SCCB總線本質(zhì)為簡化了的I2C總線。
配置成功后,F(xiàn)PGA將接收RGB565格式的數(shù)據(jù),即第一個(gè)字節(jié)的前5位表示紅色,第一字節(jié)的后3位和第二字節(jié)前3位表示綠色,第二字節(jié)后5位表示藍(lán)色。數(shù)據(jù)通過SDRAM控制模塊存進(jìn)外部SDRAM中,SDRAM的主要作用是把圖像數(shù)據(jù)以30幀/s的速率進(jìn)行緩存,然后再以60幀/s的速率讀出。從SDRAM讀出的數(shù)據(jù)將通過VGA控制模塊轉(zhuǎn)換為VGA協(xié)議輸出,最后通過一個(gè)三路10位高速視頻DAC芯片ADV7123進(jìn)行D/A轉(zhuǎn)換后顯示在顯示器上,進(jìn)行實(shí)時(shí)的監(jiān)控。
除了可實(shí)時(shí)監(jiān)控外,當(dāng)系統(tǒng)觸發(fā)警報(bào)信息后可以對視頻信息存儲(chǔ)到外接Flash中,由于Flash的容量以及讀寫速度有限,不能將所有視頻數(shù)據(jù)保存下來,因此采樣間斷性存儲(chǔ)的方法,即以圖片的形式將現(xiàn)場的情況保存下來,這種方式既能減少Flash的容量,又可以較好地保存現(xiàn)場的信息。
紅外遙控器相關(guān)文章:紅外遙控器原理萬能遙控器相關(guān)文章:萬能遙控器代碼
fpga相關(guān)文章:fpga是什么
評論