利用無線傳感器節(jié)點技術(shù),結(jié)合FPGA 嵌入式平臺,本文設(shè)計一種智能家居控制器。該系統(tǒng)可以根據(jù)需要進行現(xiàn)場編程,利用硬件描述語言實現(xiàn)。完成數(shù)據(jù)驗證、分析、處理、發(fā)送和保存,并通過接口傳送至終端處理設(shè)備或通過INTERNET 查看現(xiàn)場信息,從而提高家居控制器的覆蓋面和靈活性。在某小區(qū)經(jīng)試用系統(tǒng)工作正常,完全能夠達到用戶需要,具有較好的應(yīng)用價值。
1 引言
智能家居通常定義為利用嵌入式技術(shù)、網(wǎng)絡(luò)技術(shù)和綜合布線技術(shù), 通過家居控制器將與生活有關(guān)的各種子系統(tǒng)有機結(jié)合的系統(tǒng)。智能家居一般要求有三大功能單元: 兼容性強的智能家居控制器; 家庭布線系統(tǒng)設(shè)計; 家居網(wǎng)絡(luò)構(gòu)建; 在智能家居控制器的控制下,具有網(wǎng)絡(luò)信息終端主動發(fā)布、獲取和處理信息等功能, 通過相應(yīng)的控制單元和執(zhí)行機構(gòu), 實現(xiàn)對家居網(wǎng)絡(luò)上家庭設(shè)備的控制和監(jiān)測, 實現(xiàn)家居系統(tǒng)的網(wǎng)絡(luò)化、智能化和遠(yuǎn)程控制。
智能家居控制器可以運行于服務(wù)器, 也可以運行在基于FPGA 的嵌入式系統(tǒng)上?;诋?dāng)前發(fā)達的網(wǎng)絡(luò)資源、覆蓋范圍大的無線信號及終端設(shè)備功能的拓展,可以迅速的根據(jù)終端設(shè)備反饋的信息作出判斷, 同時通過控制器分析數(shù)據(jù), 并根據(jù)預(yù)設(shè)條件執(zhí)行報警、記錄、分析等動作。本文構(gòu)建了一種實時并行的嵌入式智能家居控制器, 該系統(tǒng)可以根據(jù)需要進行現(xiàn)場編程,利用硬件描述語言實現(xiàn)。完成數(shù)據(jù)驗證、分析、處理、發(fā)送和保存, 并通過接口傳送至終端處理設(shè)備或通過INTERNET 查看現(xiàn)場信息,從而提高家居控制器的覆蓋面和靈活性。
2 嵌入式智能家居控制器系統(tǒng)原理
嵌入式智能家居控制器主要由Spartan-3A DSPFPGA 處理器、TMS320DM365 數(shù)字媒體處理器、無線傳感器節(jié)點、檢測傳感器、接口模塊、終端設(shè)備以及客戶端構(gòu)成。由傳感器采集并檢測區(qū)域內(nèi)數(shù)據(jù)信息,交由AC / DC 進行數(shù)據(jù)轉(zhuǎn)換;控制器負(fù)責(zé)傳感器節(jié)點的總體操作, 處理本身采集的數(shù)據(jù)以及由其他節(jié)點發(fā)來的數(shù)據(jù)或控制信息; 射頻模塊負(fù)責(zé)該節(jié)點與其他節(jié)點之間的無線通信, 相互交換由匯聚節(jié)點或其他上層發(fā)來的控制信息和收發(fā)所采集的數(shù)據(jù); 外掛電源模塊供電??蛻舳税ü潭ūO(jiān)控端、移動監(jiān)控端,可提供Web 服務(wù)和手機短信提示模式。
圖1 智能家居控制器系統(tǒng)結(jié)構(gòu)框圖
3 硬件電路設(shè)計
3.1 視頻信號采集電路設(shè)計
采用Spartan-3A DSP FPGA處理器、TMS320DM365數(shù)字媒體處理器配合構(gòu)建可以同時進行4 路H.264 編碼的嵌入式設(shè)計。Spartan-3A DSP FPGA作為主處理器,除負(fù)責(zé)完成音頻編碼、遠(yuǎn)程控制以及用戶交互控制等一些基本的管理與控制外,還負(fù)責(zé)嵌入式操作系統(tǒng)的運行, 可以完成安防、人體行為、等多項智能視頻分析。TMS320DM365 數(shù)字媒體處理器作為協(xié)處理器負(fù)責(zé)視頻編碼算法, 兩個處理器之間通過高速同步串行接口通訊, 視頻信號首先進入數(shù)字媒體處理器, 采集編碼后的碼流發(fā)送到Spartan-3A DSP FPGA 處理器,然后通過軟體處理器分析和解碼后送至客戶端, 并提供可編程的, 更為復(fù)雜的符合客戶需要的實時報警處理邏輯。通過節(jié)點的動態(tài)選擇數(shù)據(jù)發(fā)送節(jié)點, 并在數(shù)據(jù)發(fā)送節(jié)點間合理分配數(shù)據(jù), 實現(xiàn)高質(zhì)量的媒體數(shù)據(jù)傳輸。
3.2 接口電路設(shè)計
EXP 是專門針對FPGA 平臺而開發(fā)的開放接口,主要使用High-Speed DAC EXP接口和High-Speed ADC EXP接口,Spartan-3A DSP 中的增強型DSP48A Slice使其成為實現(xiàn)數(shù)字化前端處理的理想方案。數(shù)字上變頻器(DUC)由兩個多相插值FIR 濾波器、一個CIC濾波器和一個峰均比衰減塊組成,可以在Spartan-3A DSP FPGA中實現(xiàn)。輸出側(cè)驅(qū)動EXP 模塊上的高速內(nèi)插 DAC,進而驅(qū)動RF 功率放大器進行傳輸。在接收側(cè), 可用500 MSPS 的ADC 對IF 信號直接取樣,并將該信號傳送到FPGA 進行數(shù)字下變頻(DDC)支持千兆速率的數(shù)據(jù)傳輸, 在本次設(shè)計中結(jié)合控制器需要器接口電路設(shè)計主要是:
⑴ 提供84 個用戶I/O,接收來自紅外入侵探測器、門磁窗磁、門鈴門禁和多種檢測傳感器的安防警示系統(tǒng)的信號, 為系統(tǒng)報警提供依據(jù); 輸出控制信號, 實現(xiàn)聲光控制和報警控制;也可接受DVI、VGA、S-Video、組合視頻、數(shù)碼相機攝像頭和音頻輸入, 并產(chǎn)生D V I 、VGA、LCD 面板和音頻輸出。
⑵ 通過RS232 總線接口接入多功能集中/ 遠(yuǎn)傳自動抄表系統(tǒng), 可直接與數(shù)據(jù)采集器相連接, 實現(xiàn)對4 路基表輸出的脈沖信號實時采集、自動處理和數(shù)據(jù)保存。
⑶ 通過USB 接口接入優(yōu)盤, 提供數(shù)據(jù)存儲功能、功能擴展預(yù)留;以ISPll61A1 為核心,提供2 路下行端口,1 路上行端口,遵循USBv2.O 規(guī)范。
⑷ 設(shè)置面板20 鍵鍵盤接口,用戶通過鍵盤或遙控器操作選擇相應(yīng)功能;
⑸ 市話接口: 串接在外線和普通電話之間, 接入市話網(wǎng), 接收電話控制指令, 可自動撥打預(yù)設(shè)電話報警, 亦可直接與110 聯(lián)網(wǎng)報警。
3.3 無線傳感器節(jié)點Imote2
Imote2 是一款先進的無線傳感器節(jié)點平臺。它集成低功耗的PXA271 XScale CPU 和兼容IEEE 802.15.4 的射頻芯片。該處理器可工作于低電壓(0.85V)低頻率(13MHz)模式,可進行低功耗操作。Imote2 使用動態(tài)電壓調(diào)節(jié)技術(shù),頻率范圍可從13MHz 達到416MHz。處理器支持幾種不同的低功耗模式, 如睡眠和深度睡眠模式。提供多種I/O,能夠靈活的支持不同種類的傳感器、A/Ds、射頻器等。I/O 設(shè)備包括:I2C,2 個同步串口(SPI)其中一個連至射頻器,3 個高速UARTs,GPIOs,SDIO,USB Client 和USB Host,AC97 和I2S 音頻編碼接口,1 個紅外接口,PWM,1 個攝像頭接口和1 個高速總線(Mobile Scaleable Link)。處理器還包括多個定時器和1 個時鐘。PXA271 包括1 個幫助提高處理多媒體能力的無線MMX 協(xié)處理器。此外,Imote2 還增加了30條新(DSP)媒體處理器指令,支持隊列及視頻操作,并兼容Intel MMX 和SSE integer 指令。
3.4 客戶端組成
家庭客戶端分為有線模塊和無線模塊, 無線模塊可以通過不同傳感器檢測信號的變化, 有線傳感器輸人可與TTL、集電極開路、開關(guān)型電路的前端探測器相連,與CPU 通過光耦隔離,增加抗干擾性和保護FPGA 輸入端口。探測感應(yīng)信號通過Imote2 I/O 端口送至無線傳感器節(jié)點平臺。收發(fā)出的編碼信號經(jīng)無線接收模塊解碼后傳送給Spartan-3A DSP FPGA 軟體處理器核心,信息處理后報送數(shù)據(jù), 可通過有線接口電路輸出到固定監(jiān)控端,與PC 機連接,提供Web 服務(wù),并可觸發(fā)室內(nèi)報警電路; 或通過接口將數(shù)據(jù)傳送到移動監(jiān)控端提供手機監(jiān)控播放模式。
3.5 節(jié)點程序設(shè)計
圖2 節(jié)點為主程序框圖。它描述了通用模塊設(shè)計的基本流程, 根據(jù)讀入跳線的狀態(tài)和讀入存儲器中設(shè)定的狀態(tài), 決定本模塊的作用及本模塊的工作方式。選定了工作方式以后,重新進行各自的初始化,主要包括I/O端口的配置、RS232 中斷的設(shè)置、驗收濾波器的設(shè)置、總線工作方式設(shè)置、定時器方式設(shè)置、波特率設(shè)置以及相關(guān)設(shè)置。在完成初始化設(shè)置后, 就可以回到工作狀態(tài), 進入各自的主循環(huán)。
圖2 節(jié)點主程序框圖
利用底層覆蓋網(wǎng)提供的拓?fù)渚S護、資源定位等通信服務(wù)的基礎(chǔ)上, 動態(tài)選擇數(shù)據(jù)發(fā)送節(jié)點, 并在數(shù)據(jù)發(fā)送節(jié)點間合理分配數(shù)據(jù), 實現(xiàn)高質(zhì)量數(shù)據(jù)傳輸。
3.6 系統(tǒng)總體框圖設(shè)計
圖3 智能家居控制系統(tǒng)總圖
4 軟件系統(tǒng)設(shè)計
4.1 程序結(jié)構(gòu)圖
家庭控制器終端軟件采用面向?qū)ο蟮亩噙M程、多線程的程序結(jié)構(gòu)以及并行設(shè)計模式。本系統(tǒng)對智能家居的控制、監(jiān)測可通過遠(yuǎn)程或本地兩種操作方式, 在遠(yuǎn)程控制方式中, 不需使用本地操作界面, 為了提高系統(tǒng)運行效率, 將程序分為用戶應(yīng)用程序和系統(tǒng)應(yīng)用程序。
圖4 家具控制器程序結(jié)構(gòu)圖
4.2 設(shè)計方法
采用自頂向下的設(shè)計流程, 從系統(tǒng)級設(shè)計開始, 劃分為若干個二級單元, 然后再把各個二級單元劃分為下一層次的基本單元, 一直下去, 直到能夠使用基本模塊或者IP 核[4]直接實現(xiàn)為止,如圖5 所示??梢杂行У厥崂碓O(shè)計層次, 方便地查看某一層次模塊的源代碼以修改錯誤。
圖5 自頂向下的FPGA 設(shè)計開發(fā)流程
4.3 軟件流程
從數(shù)據(jù)節(jié)點采集的數(shù)據(jù)通過EXP 接口送至Spartan-3A DSP FPGA 軟體處理器分析、處理、分離和發(fā)送數(shù)據(jù), 實現(xiàn)數(shù)據(jù)的及時轉(zhuǎn)換與存儲, 建立高速數(shù)據(jù)轉(zhuǎn)換模式, 其主控流程圖和數(shù)據(jù)線程處理分別為圖6和圖7 :
圖6 主線程控制流程圖
5 結(jié)束語
利用FPGA 的并行結(jié)構(gòu),結(jié)合無線傳感器節(jié)點的空間構(gòu)建,建立基于Spartan-3A DSP 的智能家居控制器系統(tǒng)可以高速實時處理、分析、顯示監(jiān)控對象, 設(shè)備結(jié)構(gòu)簡單、節(jié)點動態(tài)分布、傳輸信號穩(wěn)定。通過EXP端口和無線傳感器節(jié)點平臺定義可以設(shè)置不同的IO 點滿足最大范圍的家居控制要求。在某小區(qū)經(jīng)試用系統(tǒng)工作正常, 完全能夠達到用戶需要。
圖7 數(shù)據(jù)線程處理流程圖
評論
查看更多