基于ARM-Linux平臺(tái)及GPRS技術(shù)的家庭智能控制系統(tǒng)設(shè)計(jì)
摘 要: 主要介紹了一種基于嵌入式系統(tǒng)的ARM-Linux 平臺(tái)及GPRS 技術(shù)的家庭智能控制系統(tǒng)。采用ZigBee技術(shù)組建家庭無線網(wǎng)絡(luò),實(shí)現(xiàn)ARM 控制器與各家庭智能模塊的無線連接;戶主通過手機(jī)利用GPRS網(wǎng)絡(luò)對(duì)ARM 控制器發(fā)送控制命令,ARM 控制器通過ZigBee 模塊對(duì)各家庭智能模塊進(jìn)行無線控制,從而實(shí)現(xiàn)對(duì)整個(gè)家庭智能系統(tǒng)的遠(yuǎn)程控制。
隨著生活節(jié)奏的不斷加快,人們希望即使在工作或外出時(shí)也能及時(shí)了解家中的情況并控制家中的各種設(shè)備。各種無線通信技術(shù)的不斷發(fā)展,使家庭智能系統(tǒng)的遠(yuǎn)程控制成為一種現(xiàn)實(shí)。本文結(jié)合ARM9 處理器功能強(qiáng)大、GPRS 技術(shù)永遠(yuǎn)在線,接入范圍廣,功耗低以及ZigBee 無線組網(wǎng)技術(shù)等優(yōu)點(diǎn),設(shè)計(jì)實(shí)現(xiàn)了一種基于嵌入式系統(tǒng)的無線家庭智能控制系統(tǒng)。
1 系統(tǒng)體系結(jié)構(gòu)及主要功能
系統(tǒng)主要由家庭智能控制模塊、圖像處理單元、ARM 中央控制平臺(tái)、ZigBee 無線傳輸、GPRS 無線通信和以太網(wǎng)通信等部分組成,其體系結(jié)構(gòu)如圖1 所示。
圖1 系統(tǒng)體系結(jié)構(gòu)
其中家庭智能控制模塊主要包括家電控制模塊、窗簾控制模塊、燈光控制模塊及安防控制模塊。各控制模塊通過ZigBee 模塊與ARM 中央控制平臺(tái)實(shí)現(xiàn)無線連接,組成一個(gè)星型家庭無線智能控制網(wǎng)絡(luò)。同時(shí)ARM 中央控制平臺(tái)連接一個(gè)USB 攝像頭,實(shí)現(xiàn)對(duì)家庭環(huán)境的實(shí)時(shí)監(jiān)視。ARM 控制器通過GPRS 和以太網(wǎng)實(shí)現(xiàn)與外部遠(yuǎn)程連接。即使出門在外,也可以實(shí)現(xiàn)對(duì)家庭智能系統(tǒng)的遠(yuǎn)程控制。比如上班時(shí),戶主可以通過電腦或手機(jī)觀察家中的情況;在回家的路上就可以通過手機(jī)打開空調(diào)和熱水器,開啟窗簾或燈具等。當(dāng)探測(cè)到有非法人員入侵或發(fā)生火災(zāi)等緊急情況時(shí),ARM 控制器就會(huì)通過短信向戶主發(fā)出報(bào)警信息,同時(shí)控制攝像來捕捉視頻圖像,然后進(jìn)行圖像處理并將數(shù)據(jù)通過以太網(wǎng)傳給PC 機(jī),或通過GPRS 以彩信形式傳到戶主手機(jī)。
2 系統(tǒng)硬件設(shè)計(jì)
本系統(tǒng)硬件電路框圖如圖2 所示,主要由ARM9控制器,電源及復(fù)位模塊,觸摸屏顯示模塊,USB 攝像頭,以太網(wǎng)接口模塊,GPRS 模塊,ZigBee 無線收發(fā)模塊,各家庭控制模塊等組成。
圖2 系統(tǒng)硬件電路框圖。
2.1 ARM 中央控制模塊
ARM 中央控制模塊由ARM9 控制器、FLASH、SDRAM、電源及復(fù)位模塊、LCD 觸摸屏及相關(guān)外圍電路組成。系統(tǒng)選用SAMSUNG 的基于ARM920T 內(nèi)核的16/32 位RISC 處理器S3C2440 作為控制器。
S3C2440 處理器功能強(qiáng)大、性價(jià)比高、功耗低,除具有一般嵌入式芯片所具有的總線、SDRAM 控制器以外,還具有豐富的擴(kuò)展功能接口,內(nèi)部集成了TFT/STN LCD 和觸摸屏控制器、SD MMC 存儲(chǔ)卡接口和攝像頭接口等大量的功能模塊,便于構(gòu)建外圍電路,視頻處理能力非常強(qiáng)。系統(tǒng)采用64M 的NAND 型Flash K29F2808 來存放系統(tǒng)啟動(dòng)代碼、內(nèi)核代碼及根文件系統(tǒng);SDRAM 選用2 片HY57V561620CTP-H 構(gòu)成容量為64MB 高速動(dòng)態(tài)隨機(jī)存儲(chǔ)器。
2.2 ZigBee 模塊
為了滿足家庭智能系統(tǒng)簡(jiǎn)潔、方便的要求,系統(tǒng)采用ZigBee 無線通信技術(shù)組建家庭網(wǎng)絡(luò)。ZigBee 是一種新興的短距離、低功耗、低數(shù)據(jù)速率、低成本的雙向無線通信技術(shù)。ZigBee 模塊采用支持IEEE802.15.4 協(xié)議,技術(shù)成熟的CC2430 芯片。經(jīng)測(cè)試,室內(nèi)有效傳輸距離為30~40m,完全能夠覆蓋普通家庭環(huán)境。下面從抗干擾及功耗兩方面闡述本設(shè)計(jì)的可行性。
2.2.1 Zigbee 抗干擾性能分析
ZigBee 技術(shù)的抗干擾特性主要是指抗同頻干擾。
IEEE802.15.4 標(biāo)準(zhǔn)中提供了很多抗干擾機(jī)制[2],比如:空閑信道評(píng)估,動(dòng)態(tài)信道選擇,信道算法等。實(shí)驗(yàn)證明,正確選擇信道,增大頻偏,ZigBee 與Wi-Fi可以近距離(小于2m)共存;藍(lán)牙采用調(diào)頻技術(shù),對(duì)ZigBee 的干擾很小,兩者能很好的共存;WirelessUSB可以根據(jù)干擾環(huán)境自動(dòng)變換信道,因此完全可以同ZigBee 共存;此外,為了減小無繩電話(2.4GHz)對(duì)ZigBee 的干擾,設(shè)計(jì)中ZigBee 設(shè)備放置在離客廳中心較遠(yuǎn)的地方,使干擾源盡量遠(yuǎn)離ZigBee 網(wǎng)絡(luò),經(jīng)測(cè)試可行;當(dāng)微波爐與ZigBee 設(shè)備距離大于1m 時(shí),干擾則可以忽略不計(jì)。因此ZigBee 在2.4GHz 頻段能可靠地與Wi-Fi、藍(lán)牙、WirelessUSB 以及家用無繩電話和微波爐共存。
2.2.2 Zigbee 功耗分析
ZigBee 模塊支持多種工作模式,包括運(yùn)行(發(fā)送與接收)、空閑和休眠等。通過監(jiān)測(cè)傳感器節(jié)點(diǎn)的正常工作,發(fā)現(xiàn)節(jié)點(diǎn)大部分時(shí)間處于空閑狀態(tài)。而空閑模式的功率消耗與運(yùn)行模式大體相同,收發(fā)模塊長(zhǎng)期處于空閑模式會(huì)消耗大量能量。因此,當(dāng)節(jié)點(diǎn)空閑時(shí)應(yīng)使其處于休眠狀態(tài)。當(dāng)需要節(jié)點(diǎn)工作時(shí),通過外部中斷或定時(shí)中斷將其喚醒,進(jìn)入運(yùn)行狀態(tài)。本設(shè)計(jì)經(jīng)測(cè)試,系統(tǒng)運(yùn)行一個(gè)月后,電池電壓變化輕微,實(shí)際應(yīng)用中兩節(jié)普通5 號(hào)干電池使用壽命超過一年。
2.3 GPRS 模塊
GPRS(General Packet Radio Service),即通用分組無線服務(wù)技術(shù),是一種以GSM 為基礎(chǔ)的數(shù)據(jù)傳輸技術(shù)。GPRS 采用分組交換技術(shù),支持資源共享,頻帶利用率高,數(shù)據(jù)傳輸率高。GPRS 最高傳輸率可達(dá)171.2kbit/s,支持X.25 協(xié)議和IP 協(xié)議;用戶永遠(yuǎn)在線且按流量、時(shí)間計(jì)費(fèi),通信成本低。因此,將GPRS技術(shù)應(yīng)用于家庭智能控制系統(tǒng)的無線數(shù)據(jù)傳輸是最佳選擇。
GPRS 模塊主要功能是通過GPRS 網(wǎng)絡(luò)實(shí)現(xiàn)ARM控制器與戶主手機(jī)之間的數(shù)據(jù)交換。經(jīng)過性能與成本的綜合考慮,系統(tǒng)選用西門子公司的MC55 GPRS 模塊。
MC55 集成了完整的射頻電路和GPRS 基帶處理器,提供了完整的GSM 和GPRS 無線接口;支持?jǐn)?shù)據(jù)、語音、短消息和傳真等多種通信方式,采用TCP/IP 網(wǎng)絡(luò)協(xié)議進(jìn)行通信,GPRS 數(shù)據(jù)包最高可達(dá)1.5K;GPRS 模塊與ARM 控制器采用AT 指令集通過串口進(jìn)行數(shù)據(jù)通信。
圖3 ARM 控制器與GPRS 模塊連接圖。
如圖3 所示,系統(tǒng)采用SP3238 芯片實(shí)現(xiàn)電平轉(zhuǎn)換,S3C2440 通過UART1 控制MC55,通過GPRS網(wǎng)絡(luò)采用短信或撥打電話的方式與用戶手機(jī)進(jìn)行通信來實(shí)現(xiàn)對(duì)家庭智能系統(tǒng)的遠(yuǎn)程控制。
3 系統(tǒng)軟件設(shè)計(jì)
軟件部分的設(shè)計(jì)主要是基于ARM-Linux,與其他嵌入式操作系統(tǒng)相比,Linux 操作系統(tǒng)具有完整的TCP/IP 協(xié)議,良好的穩(wěn)定性和實(shí)時(shí)性,很好的滿足了家庭智能控制系統(tǒng)對(duì)系統(tǒng)可靠性的要求;此外,Linux易于移植裁減、內(nèi)核小、效率高、源代碼開放并有眾多的開發(fā)者,為系統(tǒng)的開發(fā)提供了良好的技術(shù)支持。
系統(tǒng)開發(fā)首先要建立交叉編譯環(huán)境,然后引導(dǎo)bootloader,移植操作系統(tǒng),裝載文件系統(tǒng),開發(fā)圖形界面,最后編寫應(yīng)用程序。Bootloader 主要實(shí)現(xiàn)系統(tǒng)的快速引導(dǎo),將Linux 內(nèi)核加載到內(nèi)存,并進(jìn)行內(nèi)核初始化。Linux2.6 內(nèi)核具有強(qiáng)大的進(jìn)程、中斷、內(nèi)存和設(shè)備管理,支持各種文件系統(tǒng)。
系統(tǒng)主程序流程如圖4 所示,主程序由一系列用來實(shí)現(xiàn)相應(yīng)功能的子程序組成,主要包括ZigBee 無線通信程序、各智能模塊控制程序、GPRS 無線通信程序、圖像采集壓縮程序、和以太網(wǎng)通訊程序等。限于篇幅,這里主要闡述GPRS 無線通信的實(shí)現(xiàn)。
圖4 系統(tǒng)主程序流程。
GPRS 模塊程序設(shè)計(jì)主要用AT 指令編寫,結(jié)合一些主要函數(shù)來實(shí)現(xiàn)GPRS 模塊各項(xiàng)功能,包括GPRS模塊初始化、GPRS 網(wǎng)絡(luò)參數(shù)配置、AT 命令的收發(fā)、短信收發(fā)、撥打電話和發(fā)送彩信等。
3.1 GPRS 模塊的初始化
系統(tǒng)啟動(dòng)之后,通過調(diào)用gprs_init()函數(shù)實(shí)現(xiàn)基本的初始化工作,包括串口初始化,MC55 的狀態(tài)設(shè)置等。通過調(diào)用char gprs_getkey()函數(shù)獲取鍵盤輸入值。
3.2 AT 命令的接受和發(fā)送
GPRS 模塊通過UART1 與S3C2440 進(jìn)行通訊,S3C2440 通過串口發(fā)送AT 命令到GPRS 模塊并讀取GPRS 模塊的輸入。S3C2440 通過調(diào)用int send_gprs_cmd(int fd,char*send_buf)函數(shù)發(fā)送AT 命令到GPRS 模塊中,并通過int read_gprs_datas(intfd,char*rcv_buf)函數(shù)讀取GPRS 模塊的數(shù)據(jù)。如果通信成功返回GPRS_OK,否則返回GPRS_ERR.
3.3 短信的收發(fā)及彩信的發(fā)送
GPRS 模塊向戶主手機(jī)發(fā)送的短信是設(shè)定好的,模塊初始化時(shí)短信的內(nèi)容、服務(wù)中心號(hào)碼及目標(biāo)手機(jī)號(hào)碼都已設(shè)置完畢,出現(xiàn)緊急情況時(shí),系統(tǒng)只需調(diào)用AT 指令即可完成短信的收發(fā)。AT+CMGS=n,發(fā)送長(zhǎng)度為n的一條短信;命令發(fā)出后,GPRS 模塊回送">",處理器收到提示符即將短信內(nèi)容發(fā)給GPRS 模塊,發(fā)送成功返回" OK ", 否則返回" ERR ".接收短信由AT+CMCR=Index>CR>指令來實(shí)現(xiàn),然后處理器再根據(jù)收到的短信指令去控制各家庭智能模塊。
彩信的功能主要是當(dāng)家庭出現(xiàn)緊急情況時(shí),將攝像頭的截圖以彩信形式發(fā)送到用戶手機(jī)。其功能函數(shù)如下:
intmms_send(char*fro,char*to,char*subj,char*cont,char*img, long len)
參數(shù)fro 為模塊SIM 卡號(hào)碼;to 為戶主手機(jī)號(hào)碼;subj 為彩信標(biāo)題;cont 為彩信的文字信息;img 為圖片的地址指針;len 為圖片字節(jié)數(shù)。發(fā)送成功返回MMS_OK,否則返回MMS_ERR.
4 結(jié)語
本文介紹了一種基于ARM 與GPRS的家庭智能控制系統(tǒng),給出了詳細(xì)的系統(tǒng)架構(gòu)方案,從軟、硬件兩方面闡述了設(shè)計(jì)思路和實(shí)現(xiàn)方法。系統(tǒng)采用GPRS 技術(shù)實(shí)現(xiàn)了家庭智能系統(tǒng)的遠(yuǎn)程控制;采用ZigBee 技術(shù)組建家庭無線網(wǎng)絡(luò),很好的解決了主控制器與各家庭控制模塊之間的通信問題,避免了繁瑣的布線;有很好的實(shí)際運(yùn)用價(jià)值,是未來家庭智能系統(tǒng)發(fā)展的一個(gè)趨勢(shì)。
評(píng)論