基于A(yíng)RM及GPRS的智能家居系統的實(shí)現
主要介紹了一種基于嵌入式處理器ARM平臺以及GPRS網(wǎng)絡(luò )通信技術(shù)的智能家居系統。
本文引用地址:http://dyxdggzs.com/article/78873.htm該系統核心部分主要包括住宅小區的家居安防監控,圖像監控以及遠程抄表的實(shí)現。利用當前較為成熟的GPRS技術(shù)實(shí)現對住宅小區用戶(hù)進(jìn)行集中的安防監控與管理。給出了系統的功能和結構以及硬件原理框圖和軟件設計思路。
引言
近年來(lái),隨著(zhù)網(wǎng)絡(luò )通訊技術(shù),電子技術(shù),計算機技術(shù)的迅猛發(fā)展,人們對生活質(zhì)量提出了更高的要求,現代化的家居環(huán)境也備受人們的關(guān)注。目前,國內的智能家居系統主要集中在對單個(gè)住宅分散的子系統的控制上,這些子系統功能上比較單一,很難實(shí)現信息共享,不便于進(jìn)行集中管理。本文針對目前國內智能家居系統的局限性,提出一種基于GPRS無(wú)線(xiàn)技術(shù)的智能家居系統,不僅能對小區多個(gè)住宅內的安全狀況進(jìn)行實(shí)時(shí)監控,還實(shí)現了“三表”(即水表、電表、燃氣表)的遠程抄送。
1.GPRS技術(shù)簡(jiǎn)介
GPRS(General Packet Radio Service),即通用無(wú)線(xiàn)分組業(yè)務(wù),是一種基于GSM系統的無(wú)線(xiàn)分組交換技術(shù),面向用戶(hù)提供移動(dòng)分組的IP或者X.25連接。與GSM電路交換數據相比,GPRS在數
據業(yè)務(wù)的承載和支持上具有非常明顯的優(yōu)勢:資源共享,頻帶利用率高,用戶(hù)只有在進(jìn)行數據傳輸時(shí)才占有系統資源;數據傳輸率高,GPRS采用分組交換技術(shù),每個(gè)用戶(hù)能同時(shí)占用多個(gè)無(wú)線(xiàn)信道,同一無(wú)線(xiàn)信道又可由多個(gè)用戶(hù)共享。理論上,GPRS最高傳輸率可達171.2kbit/s;支持X.25協(xié)議和IP協(xié)議,可與現有的數據網(wǎng)絡(luò )進(jìn)行互通互連;用戶(hù)永遠在線(xiàn)且按流量、時(shí)間計費,通信成本低。由此可見(jiàn),將GPRS技術(shù)應用于智能家居系統的數據傳輸是最理想的選擇。
2.系統功能及總體結構設計
2.1系統實(shí)現的功能
該系統主要是針對普通住宅小區家庭用戶(hù)而設計的,它可以對小區內用戶(hù)住宅內安全狀況進(jìn)行集中監控和管理,同時(shí)還實(shí)現了門(mén)禁及抄表功能。用戶(hù)可以根據自己需要進(jìn)行監控狀態(tài)、監控參數的設置。系統實(shí)現了以下功能:
(1)家居安防監控:當小偷闖入住宅或者有火災、燃氣泄漏等危急事件發(fā)生時(shí),監控終端能實(shí)時(shí)地監測到險情,向監控中心發(fā)送告警信息,監控中心則以GSM短信的方式通知戶(hù)主。
(2)家居安全狀況遠程實(shí)時(shí)監控與查詢(xún):主人離家在外,可通過(guò)發(fā)送手機短信的方式來(lái)查詢(xún)家中安全狀況信息。
(3)現場(chǎng)圖像抓拍功能:在設防狀態(tài)下,當紅外傳感器或者門(mén)磁觸發(fā)告警時(shí),系統將啟動(dòng)圖像抓拍器,對現場(chǎng)進(jìn)行拍攝,所拍攝的圖像通過(guò)GPRS網(wǎng)絡(luò )發(fā)送到監控中心的主機上進(jìn)行備份。用戶(hù)也可以通過(guò)發(fā)送送機短信的方式來(lái)啟動(dòng)圖像抓拍的功能。
(4)“三表”遠程自動(dòng)抄送與門(mén)禁功能:可以定時(shí)或主動(dòng)讀取用戶(hù)家中的水表、電表、煤氣表的用量,并根據相應價(jià)格計算費用。當有刷卡開(kāi)門(mén)事件時(shí),判斷卡合法則允許進(jìn)入。
2.2系統總體結構
智能家居系統由監控終端,GSM短信收發(fā)模塊,監控主機三部分組成。監控終端硬件采用ARM7平臺,軟件采用嵌入式實(shí)時(shí)操作系統VxWorks。監控主機是一臺運行監控管理軟件的PC機,一般置于小區的物業(yè)管理中心。圖1是整個(gè)系統架構圖。

圖1 系統架構
系統工作時(shí),監控終端循環(huán)檢測安裝在室內的門(mén)磁、紅外、煙霧、燃氣監測等傳感器,當檢測到有異常情況發(fā)生時(shí),終端控制警笛發(fā)出告警聲音,提醒戶(hù)主及物業(yè)管理人員有險情發(fā)生并采取防范措施。另外,監控終端還通過(guò)GPRS網(wǎng)絡(luò )向監控中心發(fā)送告警信息。當終端檢測到門(mén)磁或紅外告警時(shí),將啟動(dòng)圖像抓拍器,對用戶(hù)室內現場(chǎng)進(jìn)行連續拍照,拍攝到的圖像終端先進(jìn)行緩存,再通過(guò)GPRS網(wǎng)絡(luò )發(fā)送至監控主機,監控主機將圖像以文件的形式進(jìn)行備份。
監控終端還循環(huán)接收監控主機下發(fā)的數據請求命令,終端對這些命令進(jìn)行解析。如果是查詢(xún)傳感器及門(mén)磁狀態(tài),監控終端對相應傳感器的狀態(tài)進(jìn)行檢測,向監控主機返回傳感器的狀態(tài)信息;如果是查詢(xún)水表、電表或者煤氣表的用量命令,監控終端根據“三表”的RS-485協(xié)議,構造查詢(xún)幀命令,發(fā)送相應的查詢(xún)命令,將“三表”返回的數據按照系統的通信協(xié)議打包,通過(guò)終端上內置的GPRS模塊發(fā)送到監控主機。監控主機接收到終端發(fā)送的數據后,先對數據幀進(jìn)行解析。若是告警信息,則監控主機將根據不同的告警播放相應的告警提示音,提醒管理員作出處理。當有告警發(fā)生時(shí),監控主機通過(guò)RS232接口輸出AT指令,控制外置GMS模塊向系統預先設置好的住宅主人的手機號碼發(fā)送告警短信,通知戶(hù)主家中有警情發(fā)生。同時(shí),監控主機還將把告警事件以日志的形式記錄下來(lái),以便事后對告警信息進(jìn)行查詢(xún);當接收到的數據幀是抄表命令返回的數據時(shí),主機將把數據寫(xiě)入到系統數據庫。同時(shí),在顯示界面上彈出一個(gè)新窗口,顯示戶(hù)主信息、查詢(xún)時(shí)間、表的用量、相應費用等信息。
3.系統硬件設計
監控終端的原理圖如圖2所示。

圖2 終端原理圖
終端硬件采用的是嵌入式硬件平臺,CPU選用三星公司的基于A(yíng)RM7TDMI內核的S3C440X微處理器,該處理器是三星公司專(zhuān)為PDA和一般應用開(kāi)發(fā)提供的高性?xún)r(jià)比和高性能的解決方案。經(jīng)過(guò)性能與成本的綜合考慮,GPRS模塊選用明基公司的 M22模塊。該模塊可工作在三種頻率下:900/1800/1900MHz。支持語(yǔ)音通信,具有GPRS、USSD和CSD三種數據方式及SMS和FAX功能;內嵌TCP/IP協(xié)議,軟件支持標準AT 指令并遵循3GPP 27.07/27.05規范。
S3C44B0的IO口的D口擴展了三個(gè)按鍵,它們是設防鍵、開(kāi)門(mén)鍵、消告警鍵。按下設防鍵,CPU檢測到IO口為低電平,系統進(jìn)入監控狀態(tài)。該狀態(tài)下,系統將循檢測門(mén)磁及所有已經(jīng)安裝的傳感器。由于選用的傳感器輸出電平為0V或12V,而S3C44B0的外圍接口電平為0V~3.3V,傳感器的輸出需經(jīng)光耦隔離后連接至CPU的IO引腳。采用光耦隔離還有一個(gè)作用:在雷雨天氣,傳感器輸出導線(xiàn)很容易引入雷電,導線(xiàn)上會(huì )有瞬時(shí)高壓脈沖,用光耦將傳感器的輸出與CPU的IO口隔離后,起到保護CPU的作用。當監測到開(kāi)門(mén)鍵按下,電控鎖吸合,門(mén)將打開(kāi),此時(shí)為合法開(kāi)門(mén)狀態(tài),不會(huì )產(chǎn)生告警。
如果是在監控狀態(tài)下,門(mén)被強行打開(kāi),則門(mén)磁輸出由低電平變?yōu)楦唠娖?,CPU檢測到門(mén)磁傳感器輸出高電平,產(chǎn)生告警,CPU控制GPD3口輸出低電平,觸發(fā)警鈴產(chǎn)生告警音。告警發(fā)生時(shí),CPU通過(guò)UART0發(fā)送AT指令來(lái)控制GPRS模塊,經(jīng)GPRS網(wǎng)絡(luò )向系統監控主機發(fā)送告警信息,監控主機對告警信息進(jìn)行分析處理。M22模塊與CPU采用115200bps的波特率進(jìn)行通信。它們之間的接口比較簡(jiǎn)單,只需要將接收和發(fā)送兩個(gè)引腳進(jìn)行連接??紤]到本系統運行過(guò)程中需要保存大量的事件日志,如“三表”查詢(xún)的數據、告警事件日志以及告警抓拍到的50張圖像等,系統擴展了大容量的外部存儲器HY57V641620(容量為8MB的SDRAM),SST39VF1601(2MB的FLASH)。其中SDRAM主要負責程序運行以及中間數據的保存,2MB的FLASH主要負責源程序的保存以及一些掉電需要保存的歷史數據,事件日志、圖像數據等。
圖像抓拍器的主要作用是當有盜情發(fā)生時(shí),進(jìn)行現場(chǎng)抓拍。目前在國內市場(chǎng)上已經(jīng)有很多該類(lèi)型的產(chǎn)品。我們選擇了深圳安信陽(yáng)光科技有限公司的彩眼 HRM600GJ圖像抓拍器。HRM600GJ自帶以太網(wǎng)接口。HRM600GJ在接收到S3C44B0發(fā)來(lái)的拍照命令包后進(jìn)行連續拍照,所拍攝的圖像為靜態(tài)JPEG格式圖象,解析度為320×240,圖像經(jīng)過(guò)網(wǎng)口發(fā)送給ARM處理器等待處理。由于S3C44B0片內并不帶以太網(wǎng)接口,因此必須擴展一片以太網(wǎng)接口芯片實(shí)現彩眼和 ARM處理器之間的互連。這里我們選用比較常見(jiàn)的也是性?xún)r(jià)比相對較高的RTL8019AS作為以太網(wǎng)接口芯片。
SN75LBC184是RS485驅動(dòng)芯片。我們將S3C44B0的第二個(gè)串口(UART1)擴展為系統的RS485總線(xiàn)接口。該接口是CPU與“三表”及刷卡器等設備的通信接口。CPU按照主從模式與“三表”進(jìn)行通信。CPU定義為主設備,“三表”為從設備。主從設備都有唯一的設備地址,通信時(shí),主設備向指定地址的從設備發(fā)查詢(xún)命令,從設備返回當前數據給主設備。
4.系統軟件設計
4.1終端軟件
傳統的單片機程序設計基本上都采用順序結構,實(shí)時(shí)性低且CPU對資源的利用率不高。這里,我們采用了嵌入式實(shí)時(shí)操作系統VxWorks,它是美國風(fēng)河(WindRiver)公司于1983年設計開(kāi)發(fā)的一種嵌入式實(shí)時(shí)操作系統(RTOS)。終端軟件設計包括針對系統硬件平臺進(jìn)行的操作系統的移植和在VxWorks平臺上應用程序的設計兩部分。操作系統的移植的重點(diǎn)也即難點(diǎn)是BSP(Board Support Package)的設計。VxWorks本身提供了針對許多處理器的BSP,但針對S3C44B0的BSP并未提供。在設計系統BSP時(shí),我們首先仔細研究了其中一種BSP代碼范例,了解并掌握了BSP的結構,然后在風(fēng)河公司針對ARM處理器提供給用戶(hù)的BSP模板的基礎上設計了本系統的BSP,限于篇幅,對操作系統的移植部分本文將不作闡述。
監控終端的應用程序采用模塊化的設計思想。由于VxWorks支持多任務(wù),我們將每個(gè)功能模塊以一個(gè)任務(wù)來(lái)實(shí)現。從時(shí)間上看,各個(gè)任務(wù)處于并行運行的狀態(tài),極大地提高了系統對事件響應的速度,有效地提高了CPU對資源的利用率。終端應用程序包含五個(gè)任務(wù),分別是:消息處理任務(wù)、傳感器檢測任務(wù)、GPRS通信任務(wù)、RS485總線(xiàn)設備通信任務(wù)、按鍵檢測及處理任務(wù)。除消息處理任務(wù)以外,其它五個(gè)任務(wù)優(yōu)先級相同。VxWorks中任務(wù)優(yōu)先級從0到255,0為最高優(yōu)先級,255為最低優(yōu)先級。我們將消息處理任務(wù)優(yōu)先級設定為90,其它四個(gè)任務(wù)優(yōu)先級都設定為100。這樣可使消息處理任務(wù)盡快的處理其它任務(wù)發(fā)送來(lái)的消息,提高系統對外部事件的響應速度。下面分別對各個(gè)任務(wù)所實(shí)現的功能進(jìn)行簡(jiǎn)要的介紹。
(1)消息處理任務(wù)
該任務(wù)循環(huán)檢測自己的消息隊列,當有其它任務(wù)發(fā)送來(lái)的消息時(shí),讀取消息,對消息進(jìn)行解析,確定事件類(lèi)型,然后調用事件相應的處理函數進(jìn)行處理。本系統定義了多種事件類(lèi)型,主要有如下幾種事件:傳感器告警事件、設置終端參數事件、傳感器狀態(tài)請求事件、刷卡開(kāi)門(mén)事件、水表數據查詢(xún)事件、電表數據查詢(xún)事件、煤氣表數據查詢(xún)事件和按鍵設置事件。
(2)傳感器檢測任務(wù)
在任務(wù)運行的時(shí)間片內,首先判斷系統當前所的處狀態(tài),如果系統處于設防狀態(tài),那么CPU將對室內所有已安裝傳感器進(jìn)行循環(huán)檢測。如果系統工作在撤防狀態(tài)下,那么只對煙霧、煤氣傳感器進(jìn)行檢測。當任務(wù)檢測到某一傳感器的輸出達到系統設定的告警閾值時(shí),將向消息處理任務(wù)的消息隊列發(fā)送一條傳感器告警消息,消息中包含傳感器通道編號。
(3)GPRS通
信任務(wù)此任務(wù)完成GPRS模塊的初始化、終端與監控中心建立連接以及數據通信功能。
(4)RS485總線(xiàn)設備通信任務(wù)
任務(wù)完成“三表”數據的讀取以及用戶(hù)刷卡檢測功能。
(5)按鍵檢測及處理任務(wù)
該任務(wù)完成對終端上三個(gè)功能鍵的掃描。當其中某個(gè)按鍵被按下時(shí),CPU檢測到鍵值,向消息處理任務(wù)發(fā)送消息,消息任務(wù)將調用相應的處理函數進(jìn)行處理。
4.3監控中心軟件
監控中心軟件采用Borland C++ Builder 6.0開(kāi)發(fā)。它使用WinSock控件接收和發(fā)送數據。中心軟件采用模塊化的設計思想,分別實(shí)現系統參數設置、操作員權限管理、用戶(hù)管理、告警事件處理、數據庫的維護以及數據打印和系統幫助等功能。
5.結束語(yǔ)
本系統實(shí)現了對住宅小區內多用戶(hù)室內安全狀況的集中監控與管理,還實(shí)現了對用戶(hù)家中的水表、電表、煤氣表的遠程無(wú)線(xiàn)抄送。該系統在實(shí)用性、可靠性以及成本等方面取得了較為滿(mǎn)意的效果。目前,本系統已經(jīng)完成最后調試,即將進(jìn)入現場(chǎng)試運行。由于系統在硬件設計上充分考慮到了不同的應用場(chǎng)合,留有較大的擴展空間,因此相信該系統將會(huì )有較為廣闊的應用前景。
參考文獻
[1]鐘章隊、蔣文怡、李紅君等.GPRS通用分組無(wú)線(xiàn)業(yè)務(wù),人民郵電出版社。2001.12.
[2]王慶剛,楊佃福. GPRS技術(shù)在嵌入式系統中的應用[J]. 微計算機信息,2005,21-5:69-70.
[3]Samsung Electronics. Samsung S3C44B0 RISC microprocessor Reference.
[4] BenQ Corporate. M22 GSM/GPRS module datesheet.2005.6.
評論