劉 萍,胡 杰
(長江大學(xué),湖北 荊州 434023)
隨著物質(zhì)的豐富和生活水平的提高,居家環(huán)境的智能監(jiān)控已逐漸成為人們追逐的目標(biāo)。ZigBee作為近幾年發(fā)展起來的一種短距離無線通信技術(shù),具有低復(fù)雜度、低功耗、低成本及可自組網(wǎng)等特點(diǎn),克服了傳統(tǒng)有線通信方式接入過程繁瑣、建設(shè)和維護(hù)成本高、系統(tǒng)可擴(kuò)展性差等缺點(diǎn),對智能家居的普及和推廣提出了一種新的解決方案。本文基于ZigBee無線傳感器網(wǎng)絡(luò)設(shè)計了一個智能家居的室內(nèi)通信系統(tǒng),通過S3C6410微處理器為核心的嵌入式平臺接入Internet網(wǎng),可實現(xiàn)用戶對家庭智能設(shè)備的遠(yuǎn)程監(jiān)控。
圖1 智能家居室內(nèi)通信系統(tǒng)
(1)系統(tǒng)總體結(jié)構(gòu)。本系統(tǒng)由兩部分組成:網(wǎng)絡(luò)中心和終端節(jié)點(diǎn),采用星形拓?fù)浣Y(jié)構(gòu)。其中,網(wǎng)絡(luò)中心包括ZigBee協(xié)調(diào)器和ARM嵌入式平臺,控制整個家庭無線網(wǎng)絡(luò)的通信,并將終端節(jié)點(diǎn)的數(shù)據(jù)打包發(fā)送到互聯(lián)網(wǎng)服務(wù)器。服務(wù)器監(jiān)聽端口數(shù)據(jù),并向網(wǎng)站發(fā)布終端節(jié)點(diǎn)的信息,以實現(xiàn)通過網(wǎng)頁進(jìn)行智能照明、安防報警、門窗和家電的控制等功能。
終端節(jié)點(diǎn)由ZigBee無線收發(fā)模塊和傳感器或控制模塊等終端設(shè)備組成。傳感器有4類:溫濕度傳感器、光敏傳感器、熱釋紅外傳感器、廣譜氣體傳感器等。控制模塊有3種:步進(jìn)電機(jī)、繼電器和紅外控制模塊等。系統(tǒng)總體結(jié)構(gòu)如圖1所示。
(2)通信節(jié)點(diǎn)硬件設(shè)計。系統(tǒng)無線通信模塊采用TI公司的CC2430F128芯片。該芯片以強(qiáng)大的集成開發(fā)環(huán)境為支持,內(nèi)部線路的交互式調(diào)試遵從IDE的IAR環(huán)境,支持2.4GHz的IEEE802.15.4協(xié)議,在單個芯片上整合了ZigBee射頻前端、內(nèi)存和微控制器。片上集成高性能8051內(nèi)核、128 KB可編程閃存和8KB的RAM、ADC、USART等,支持ZigBee協(xié)議棧。圖2是溫濕度采集節(jié)點(diǎn)的硬件連接圖。其中,CC2430F128的P0_0腳作為溫濕度傳感器DHT11的數(shù)據(jù)輸入腳。DHT11數(shù)字溫濕度傳感器是一款含有已校準(zhǔn)數(shù)字信號輸出的溫濕度復(fù)合傳感器,它應(yīng)用專用的數(shù)字模塊采集技術(shù)和溫濕度傳感器技術(shù),確保產(chǎn)品具有極高的可靠性與卓越的長期穩(wěn)定性。
協(xié)調(diào)器除了與終端節(jié)點(diǎn)通信外,還通過串口與S3C6410進(jìn)行通信。在串口收發(fā)時設(shè)置為位置1,即P0_2為RXD,P0_3為TXD。S3C6410使用串口2。
圖2 溫濕度采集節(jié)點(diǎn)
本系統(tǒng)的終端監(jiān)控節(jié)點(diǎn)不多,為簡化軟件設(shè)計,采用預(yù)先分配ID號、以應(yīng)答的方式進(jìn)行工作:監(jiān)控節(jié)點(diǎn)先處于接收信號狀態(tài),主節(jié)點(diǎn)(ZigBee協(xié)調(diào)器)以廣播的形式發(fā)送請求信號。當(dāng)監(jiān)控節(jié)點(diǎn)收到主節(jié)點(diǎn)發(fā)出的信號后,先判斷是否為前導(dǎo)碼(0xAA),若不是則重新接收。若是則進(jìn)入解碼狀態(tài),并將解碼的ID號與自己的ID號進(jìn)行匹配。若不匹配則停止解碼并重新配置相關(guān)寄存器進(jìn)行初始化,重新接收。若匹配,則繼續(xù)解析,遇到結(jié)束符后進(jìn)行相應(yīng)處理。如果是控制節(jié)點(diǎn),則根據(jù)接收到的信息執(zhí)行相關(guān)控制操作。若是監(jiān)測節(jié)點(diǎn),則按照傳感器的相關(guān)協(xié)議進(jìn)行數(shù)據(jù)采集、處理及封裝,避開爭議區(qū)后開始應(yīng)答,將傳感器檢測到的數(shù)據(jù)發(fā)送給主節(jié)點(diǎn)。終端節(jié)點(diǎn)的收發(fā)程序如圖4、圖5所示。
5 監(jiān)控節(jié)點(diǎn)信號發(fā)送流程
圖4 監(jiān)控節(jié)點(diǎn)信號接收流程圖
(1)通訊協(xié)議設(shè)計。本系統(tǒng)采用星形網(wǎng)絡(luò)結(jié)構(gòu)、一對多的通信方式。系統(tǒng)為協(xié)調(diào)器和各同類終端節(jié)點(diǎn)分別分配一個唯一的ID,協(xié)調(diào)器在可靠的通信范圍內(nèi)以輪詢的方式與終端節(jié)點(diǎn)通信,通信協(xié)議的格式定義如下:
協(xié)調(diào)器通信協(xié)議終端節(jié)點(diǎn)返回數(shù)據(jù)格式
前導(dǎo)碼:0xAA,占1個字節(jié)。測試表明,外界噪聲不易產(chǎn)生這種有規(guī)律的信號。
ID號:占1個字節(jié),系統(tǒng)設(shè)計的終端監(jiān)控節(jié)點(diǎn)數(shù)總共為50個。
控制信息:協(xié)調(diào)器發(fā)出,占1字節(jié)。請求傳感器節(jié)點(diǎn)返回測試數(shù)據(jù)或控制節(jié)點(diǎn)動作。
返回數(shù)據(jù)信息:傳感器節(jié)點(diǎn)返回數(shù)據(jù),占8個字節(jié)。本系統(tǒng)規(guī)定監(jiān)測節(jié)點(diǎn)返回信息的最大長度為8字節(jié),若監(jiān)測節(jié)點(diǎn)返回數(shù)據(jù)少于8個字節(jié),則不足字節(jié)用0x6E填充。
結(jié)束符:協(xié)調(diào)器發(fā)出,占1個字節(jié),本系統(tǒng)規(guī)定結(jié)束符為0xBB。
校驗碼:傳感器節(jié)點(diǎn)返回數(shù)據(jù),校驗碼=ID號^返回數(shù)據(jù)信息。
(2)超時退出機(jī)制和延時退避的通信策略。系統(tǒng)采用順序輪詢的同步機(jī)制實現(xiàn)協(xié)調(diào)器與各終端節(jié)點(diǎn)的通信,為了避免因某節(jié)點(diǎn)的損壞(或移走)而導(dǎo)致協(xié)調(diào)器的長時間等待,本系統(tǒng)采用了超時退出機(jī)制:若節(jié)點(diǎn)不存在或損壞不能反饋信息時,協(xié)調(diào)器并不長時間等待應(yīng)答,而是超過一定時間后繼續(xù)訪問下個節(jié)點(diǎn)。
上述同步機(jī)制可以保證同步,但避免不了相同功能節(jié)點(diǎn)(如廚房多個廣譜氣體傳感器,系統(tǒng)為其分配相同ID號)的通信碰撞。針對這種情況,本系統(tǒng)采用時延退避的通信策略:同功能節(jié)點(diǎn)按物理位置分配一個備用序號。當(dāng)主節(jié)點(diǎn)掃描詢問到監(jiān)測節(jié)點(diǎn)時,該節(jié)點(diǎn)并不立即應(yīng)答。而是按照節(jié)點(diǎn)備用序號n延時nΔt時刻后再進(jìn)行應(yīng)答,如果有同功能節(jié)點(diǎn)應(yīng)答后,在該序號之后的備用節(jié)點(diǎn)m測得當(dāng)前節(jié)點(diǎn)通信結(jié)束后,延時(m-n)Δt再進(jìn)行應(yīng)答。
基于CC2430無線收發(fā)模塊設(shè)計了一個智能家居室內(nèi)通信系統(tǒng),配合S3C6410嵌入式處理平臺構(gòu)成的無線網(wǎng)關(guān),可實現(xiàn)用戶通過Internet網(wǎng)或GPRS對家庭智能設(shè)備的遠(yuǎn)程監(jiān)控。經(jīng)測試,整個系統(tǒng)運(yùn)行穩(wěn)定,無線收發(fā)模塊在室內(nèi)隔墻的通信距離可達(dá)15m左右,誤碼率小于2%,完全滿足一般家庭智能家居的組網(wǎng)要求?;诒鞠到y(tǒng)的模型,在第七屆“博創(chuàng)杯”全國大學(xué)生嵌入式設(shè)計大賽中實現(xiàn)了Internet網(wǎng)和GPRS網(wǎng)的遠(yuǎn)程控制,獲得三等獎。本系統(tǒng)通用性、擴(kuò)展性強(qiáng),適合各種短距離、低速率、低遲延場合無線自組通信,對于傳輸距離較遠(yuǎn)的場合,可通過多跳路由、采用樹形網(wǎng)絡(luò)或網(wǎng)狀網(wǎng)絡(luò)的方式實現(xiàn)。
[1]王權(quán)平,王莉.ZigBee技術(shù)及其應(yīng)用[J].現(xiàn)代電信科技,2004,(1).
[2]陳和平,陳志杰,錢岑,李勐.基于ZigBee的機(jī)房監(jiān)控系統(tǒng)[J].電子設(shè)計工程,2010.
[3]朱琨,焦毅,余強(qiáng),吳白鋒.無線傳感器網(wǎng)絡(luò)時鐘同步技術(shù)研究[J].2006,35,(2).