基于GPRS與ZigBee的智能家居設(shè)計(jì)
基于GPRS和ZigBee技術(shù)的智能家居解決方案采用以單戶家庭為單元的通信控制模式,在每一個(gè)家庭中都安裝一個(gè)主控中心(負(fù)責(zé)用戶控制信號(hào)及家電反饋信息的接收和轉(zhuǎn)發(fā)),及若干個(gè)與家電設(shè)備相連的分控終端(控制該家庭的所有電器)。主控和分控裝置由家庭總線相連,家庭總線采用ZigBee無(wú)線通信方式。此裝置便于家庭獨(dú)自管理,安全性、可靠性高。
1 概述
1.1 無(wú)線數(shù)傳模塊MC35i
GPRS通信模塊采用西門(mén)子公司的無(wú)線數(shù)據(jù)傳輸模塊MC35i,支持?jǐn)?shù)據(jù)、短信、語(yǔ)音和傳真業(yè)務(wù)。MC35i是新一代GSM/GPRS雙模模塊,完全兼容上一代的MC35、TC35i;采用緊湊型設(shè)計(jì),為用戶提供了簡(jiǎn)單、內(nèi)嵌式的無(wú)線GPRS連接。MC35i的GPRS永久在線功能提供了最快的數(shù)據(jù)傳輸速率。
1.2 IP_Linkl270模塊
ZigBee無(wú)線網(wǎng)絡(luò)通信模塊采用赫利訊的IP_Link1270模塊。ZigBee(IEEE802.15.4)技術(shù)是最近發(fā)展起來(lái)的一種近距離、低功耗、低數(shù)據(jù)率、低成本的雙向短距離無(wú)線通信技術(shù),被業(yè)界認(rèn)為是最有可能應(yīng)用在工控場(chǎng)合的無(wú)線方式。Helicomm公司推出的IP_Linkl270是ZigBee的開(kāi)發(fā)工具和產(chǎn)品,包含符合802.15.4標(biāo)準(zhǔn)的2.4 GHz射頻組件、低功耗的8位微控制器、ZigBee網(wǎng)絡(luò)軟件和全波長(zhǎng)天線,每次接力通信都能在75 m范圍內(nèi)提供250kbps的速率;支持最新的RS232 mesh透明串行模式,能在網(wǎng)狀或多次跳接(multihop/無(wú)線網(wǎng)絡(luò)內(nèi)支持串行數(shù)據(jù)路由,速率最高可達(dá)38.4 kbps。IP_Linkl270是完全符合IEEE802.1 5.4標(biāo)準(zhǔn)與ZigBee規(guī)范的2.4 GHz無(wú)線收發(fā)模塊,射頻部分使用Freescale的MCl3191/13192/13193芯片,MCU使用的是Freescale公司的MC9S08GT60芯片。
2 系統(tǒng)結(jié)構(gòu)和工作原理
2.1 系統(tǒng)結(jié)構(gòu)和功能
系統(tǒng)通過(guò)GSM手機(jī)發(fā)送短信命令來(lái)讀取三表的數(shù)據(jù),并對(duì)室內(nèi)電燈進(jìn)行控制。分控中心可以檢測(cè)外中斷,當(dāng)有外中斷產(chǎn)生時(shí),分控中心的蜂鳴器發(fā)出響聲,這時(shí)分控中心會(huì)主動(dòng)向用戶發(fā)送短信來(lái)提示用戶室內(nèi)有異常。
系統(tǒng)由主控中心與分控終端兩部分組成,如圖1所示。主控中心主要由GPRS模塊通過(guò)USB與PC機(jī)連接,ZigBee模塊IP_Linkl270通過(guò)串口與PC機(jī)連接。GPRS通信模塊采用西門(mén)子公司的MC35i,負(fù)責(zé)收發(fā)短信的命令;ZigBee無(wú)線通信模塊采用赫立訊公司的TP_Link1270,負(fù)責(zé)控制分控中心的設(shè)備,來(lái)讀取三表的數(shù)值與控制室內(nèi)燈的開(kāi)關(guān)。
分控終端主要由赫立訊公司的IP_Linkl270、新茂公司的SM5964A單片機(jī)、天馬的128×64點(diǎn)陣的LCD液晶顯示模塊組成。LCD用于數(shù)字的電表、水表、氣表值的顯示;單片機(jī)上的鍵盤(pán)可以改變?nèi)淼闹担ㄟ^(guò)單片機(jī)上的串口來(lái)控制IP_Linkl270數(shù)據(jù)的收發(fā),把三表值和室內(nèi)燈的開(kāi)關(guān)狀態(tài)返回到主控中心。
系統(tǒng)的主要控制流程如下:
?、儆捎脩羰謾C(jī)發(fā)命令給MC35i模塊,MC35i收到命令后,解釋該命令。解釋完命令后發(fā)給主控中心的IP_Linkl270,由該模塊把命令發(fā)給相應(yīng)的分控終端設(shè)備,分控終端設(shè)備收到命令后作出相應(yīng)的動(dòng)作。
?、诜挚亟K端收到命令后,一是作出相應(yīng)的動(dòng)作后向上層作出應(yīng)答,二是把上層需要的數(shù)據(jù)通過(guò)IP_Linkl270傳給主控中心。主控中心把收到的分控終端信息,通過(guò)MC35i以短信形式發(fā)送到用戶手機(jī)上。
該系統(tǒng)主要實(shí)現(xiàn)的功能如下:
?、偻ㄟ^(guò)GPRS模塊收發(fā)短信,控制室內(nèi)的三表和電燈開(kāi)關(guān)。如果有盜竊,則可以報(bào)警并以短信的形式報(bào)告給房主。
?、谕ㄟ^(guò)發(fā)送wat、gas、ele(水,氣,電)3條短信給主控中心,主控中心把這3個(gè)命令通過(guò)主控制中心的IP_Link1270發(fā)送給分控中心的IP_Linkl270。分控中心收到該命令后,把當(dāng)前的三表的值,通過(guò)分控中心的IP_Linkl270發(fā)送給主控中心,主控中心把收到的三表的值打包并通過(guò)短信的形式發(fā)給主機(jī)。
?、弁ㄟ^(guò)發(fā)送L11、L2l、L31打開(kāi)室內(nèi)不同的三盞燈。
?、芡ㄟ^(guò)發(fā)送L10、L20、L30關(guān)閉室內(nèi)不同的三盞燈。
?、萃ㄟ^(guò)發(fā)送L1?、L2?、L3?來(lái)查詢這三盞燈的開(kāi)關(guān)狀態(tài)。
當(dāng)有人入室盜竊時(shí),報(bào)警器就會(huì)報(bào)警,通過(guò)單片機(jī)的外中斷,把報(bào)警信息主動(dòng)發(fā)送給房主。
2.2 硬件設(shè)計(jì)原理
主控中心、分控中心硬件設(shè)計(jì)原理分別如圖2和圖3所示。
MC35i有40個(gè)引腳,其中RXD、TXD必須與ZigBee的RX、TX平行相連進(jìn)行數(shù)據(jù)的收發(fā),CCIN(24)、CCRST(25)、CCIO(26)、CCCLK(27)、CCVCC(28)引腳分別與SIM卡的8、2、7、3和1相連.分別表示SIM卡是否置入、SIM卡復(fù)位、SIM卡數(shù)據(jù)、SIM卡時(shí)鐘、SIM卡電源。
分控中心SM5964A的第1l、lO腳TXD、RXD與ZigBee的第5、4腳TX、RX連接進(jìn)行數(shù)據(jù)通信,第P10、P11、P12、P13、P14、P15、P16、P17引腳與鍵盤(pán)連接,通過(guò)程序控制鍵盤(pán)的操作。
2.3 MC35i與IP_Linkl270的軟件調(diào)試設(shè)計(jì)
2.3.1 MC35i軟件調(diào)試設(shè)計(jì)
在熟悉AT指令集的基礎(chǔ)上,實(shí)現(xiàn)對(duì)MC35i與PC機(jī)之間通信的調(diào)試、電路的調(diào)試、短信的收發(fā)和查看MC35i發(fā)送與接收數(shù)據(jù)的格式。這里的上位機(jī)程序是用VB編寫(xiě)的串口收發(fā)程序。
VB語(yǔ)言中MSComm控件是一個(gè)串口通信的專用控件。下面是上位機(jī)串日程序的主要代碼——響應(yīng)的Oncomm事件(這里是以二進(jìn)制數(shù)接收的):
2.3.2 IP_Linkl270的通信
下位機(jī)主要負(fù)責(zé)對(duì)主控中心的IP_Linkl270發(fā)過(guò)來(lái)的數(shù)據(jù)進(jìn)行解碼,解碼后再對(duì)用戶所有的數(shù)據(jù)或要執(zhí)行的指令進(jìn)行處理;或者當(dāng)單片機(jī)產(chǎn)生中斷時(shí),主動(dòng)地向用戶發(fā)送信息。
下位機(jī)的主要功能是通過(guò)串口采用AT指令集對(duì)IP_Linkl270發(fā)送的數(shù)據(jù)進(jìn)行收發(fā),并對(duì)收到的數(shù)據(jù)進(jìn)行解碼。分控中心的IP_Linkl270處理數(shù)據(jù)流程如圖4所示。
下面是判斷是否要讀取水表的數(shù)據(jù),打包水表值,并發(fā)送的程序:
評(píng)論