新聞中心

EEPW首頁 > 消費(fèi)電子 > 設(shè)計應(yīng)用 > 面向?qū)ο蟮乃{(lán)牙分布式智能家居網(wǎng)絡(luò)

面向?qū)ο蟮乃{(lán)牙分布式智能家居網(wǎng)絡(luò)

作者:沈陽建筑大學(xué) 張家瑞 吳成東 馬斌 高治軍 時間:2004-12-10 來源:電子產(chǎn)品世界 收藏

2004年7月B版

摘  要: 本文分析了分布式藍(lán)牙家居網(wǎng)絡(luò)特點,提出了建立面向?qū)ο蟮乃{(lán)牙分布式的解決方案,針對該方案建立了面向?qū)ο蟮乃{(lán)牙通信模型,并對其在中的應(yīng)用進(jìn)行了分析,展望了面向?qū)ο蟮乃{(lán)牙分布式的發(fā)展前景。

關(guān)鍵詞: 藍(lán)牙技術(shù);智能家居;分布式控制;面向?qū)ο?;協(xié)議;模型

引言

  隨著通信技術(shù)、網(wǎng)絡(luò)技術(shù)、控制技術(shù)和人工智能技術(shù)的發(fā)展,人們對家居環(huán)境的舒適程度和智能化程度要求也越來越高,智能網(wǎng)絡(luò)不可阻擋的進(jìn)入了家庭。近幾年,隨著無線網(wǎng)絡(luò)研究在全世界范圍內(nèi)的興起,對無線智能家居網(wǎng)絡(luò)的研究已經(jīng)成為新的研究熱點。智能家居網(wǎng)絡(luò)是指在家庭內(nèi)部通過一定的傳輸介質(zhì)將各種電氣設(shè)備和電氣子系統(tǒng)連接起來,采用統(tǒng)一的通信協(xié)議,對內(nèi)實現(xiàn)資源共享,對外通過網(wǎng)關(guān)與外部網(wǎng)互連進(jìn)行信息交換的局域網(wǎng)。

  藍(lán)牙技術(shù)是由藍(lán)牙SIG(Special Interest Group)聯(lián)合制定的近距離無線通信技術(shù)標(biāo)準(zhǔn),其目的是實現(xiàn)最高數(shù)據(jù)傳輸速率1Mb/s(有效數(shù)據(jù)傳輸速率是721kb/s)、最大傳輸距離為10米(增加功率后可傳輸100米)的無線通信。1998年5月,愛立信、諾基亞、東芝、IBM和英特爾等五家著名廠商在聯(lián)合開展短程無線通信技術(shù)的標(biāo)準(zhǔn)化活動時提出了藍(lán)牙技術(shù)(Bluetooth),其宗旨是提供一種短距離、低成本的無線傳輸應(yīng)用技術(shù)。藍(lán)牙技術(shù)具有以下幾個特點:工作于2.4GHz的ISM(工業(yè)、科學(xué)、醫(yī)學(xué)頻段)頻段,無需申請頻率許可證;采用1600hop/s的快速跳頻技術(shù);采用正向糾錯編碼(FEC)技術(shù);采用FM調(diào)制方式,設(shè)備簡單;支持點到點、點到多點通信;協(xié)議體系完備,充分支持現(xiàn)有高層協(xié)議;設(shè)備體積小,便于攜帶或移動,成本低廉?;谒{(lán)牙技術(shù)的家居智能網(wǎng)絡(luò)是用近距離的無線通信技術(shù)取代線纜,構(gòu)建智能化的無線家居網(wǎng)絡(luò)。本文針對分布式藍(lán)牙智能家居網(wǎng)絡(luò)特點,研究了面向?qū)ο蟮男畔⑻幚砑夹g(shù)應(yīng)用于分布式藍(lán)牙智能家居網(wǎng)絡(luò)技術(shù)問題,構(gòu)建了藍(lán)牙通信控制器的面向?qū)ο蟮耐ㄐ拍P?,并對該模型進(jìn)行了應(yīng)用研究。

  藍(lán)牙家居網(wǎng)絡(luò)使藍(lán)牙網(wǎng)絡(luò)家電、藍(lán)牙通信控制器和其它嵌入藍(lán)牙模塊的設(shè)備,利用無線方式連在一起,使之相互通信;同時,利用具有路由功能的藍(lán)牙家庭網(wǎng)關(guān)和外部網(wǎng)絡(luò)相連,構(gòu)成家庭式網(wǎng)絡(luò)系統(tǒng)或家庭局域網(wǎng),提供集中的或異地的音頻、視頻通信、計算機(jī)控制和管理等,使信息在家庭內(nèi)以及與外部之間充分流通和共享。藍(lán)牙分布式智能家居網(wǎng)絡(luò)是沿用工業(yè)控制方案,將控制功能下放到相當(dāng)于工業(yè)控制中下位機(jī)的藍(lán)牙通信控制器上,實現(xiàn)分散控制、集中管理的模式,其體系結(jié)構(gòu)如圖1所示。

  藍(lán)牙家庭網(wǎng)關(guān):對下連接家庭藍(lán)牙通信控制器,并通過線纜和局域網(wǎng)、電話網(wǎng)連接,將家居網(wǎng)信息通過INTERNET和電話上傳管理中心和戶主。

  藍(lán)牙通信控制器:與藍(lán)牙設(shè)備通信,監(jiān)控設(shè)備狀態(tài),并與其它藍(lán)牙通信控制器交流協(xié)調(diào),對其下位設(shè)備進(jìn)行控制。執(zhí)行網(wǎng)關(guān)發(fā)送的命令,并將藍(lán)牙設(shè)備相關(guān)信息上傳。

  藍(lán)牙設(shè)備:藍(lán)牙設(shè)備是指內(nèi)嵌藍(lán)牙模塊的家居設(shè)備,如藍(lán)牙空調(diào)等。它們和藍(lán)牙通信控制器進(jìn)行信息交流并接受其控制,也可以和其它藍(lán)牙設(shè)備通信。

  盡管分布式系統(tǒng)有很多優(yōu)點,但是在藍(lán)牙分布式智能家居網(wǎng)絡(luò)中由于藍(lán)牙技術(shù)和信息處理技術(shù)的局限,其缺點也是不可忽視的。其表現(xiàn)如下:由于每臺藍(lán)牙設(shè)備最多同時只能和7臺設(shè)備保持連接,而藍(lán)牙通信控制器需要和較多的設(shè)備交互,如果想和更多的設(shè)備協(xié)調(diào),需要工作模式的轉(zhuǎn)換,影響處理效率,甚至導(dǎo)致通信失?。挥捎谕辉O(shè)備可能接受很多信息,如果微處理器對信息采用排隊處理,時間延遲將增加;在藍(lán)牙分布式智能家居網(wǎng)絡(luò)中,藍(lán)牙通信控制器之間、藍(lán)牙通信控制器和藍(lán)牙設(shè)備之間、藍(lán)牙設(shè)備都有信息傳遞,造成串?dāng)_,同時通信路數(shù)越多,串?dāng)_越大,通信距離和傳輸速率都隨之降低。藍(lán)牙分布式智能家居網(wǎng)絡(luò)系統(tǒng)的通信機(jī)制和信息處理機(jī)制是影響系統(tǒng)性能的重要因素,因此,本文提出將面向?qū)ο蠹夹g(shù)應(yīng)用于藍(lán)牙分布式智能家居網(wǎng)絡(luò)系統(tǒng)方案,有助于解決上述問題,提高系統(tǒng)效能。

面向?qū)ο蠹夹g(shù)

  面向?qū)ο蠹夹g(shù)是一種面向數(shù)據(jù)流,并集模塊化、數(shù)據(jù)抽象、信息隱藏和消息傳遞等諸多優(yōu)點于一體,既適合于系統(tǒng)分析又適合于程序設(shè)計的工程技術(shù)。近幾年來,面向?qū)ο蠹夹g(shù)無論是在理論上還是實踐上都在飛速地發(fā)展。面向?qū)ο蠹夹g(shù)中最重要的就是“對象”的概念。這種“對象”具有一定的屬性和方法,這里的屬性指對象本身的各種特性參數(shù)。一個具體的對象可以有許多的屬性和方法,面向?qū)ο蠹夹g(shù)的重要特點就是對象的封裝性,對于外界而言,并不需要知道對象有哪些屬性,也不需要知道對象本身的方法是如何實現(xiàn)的,而只需要調(diào)用對象所提供的方法來完成特定的功能。面向?qū)ο蠹夹g(shù)有以下的優(yōu)點:維護(hù)簡單,模塊化是面向?qū)ο缶幊讨械囊粋€特征,實體被表示為類和同一名字空間中具有相同功能的類,可以在名字空間中添加一個類而不會影響該名字空間的其它成員;可擴(kuò)充性,面向?qū)ο缶幊虖谋举|(zhì)上支持?jǐn)U充性,如果有一個具有某種功能的類,就可以很快地擴(kuò)充這個類,創(chuàng)建一個具有擴(kuò)充的功能的類;代碼重用,由于功能是被封裝在類中的,并且類是作為一個獨立實體而存在的,提供一個類庫就比較簡單了。

  藍(lán)牙分布式智能家居網(wǎng)絡(luò)中,信息交互和控制中心是藍(lán)牙通信控制器。將面向?qū)ο蠹夹g(shù)應(yīng)用于藍(lán)牙分布式智能家居網(wǎng)絡(luò),就是在設(shè)計藍(lán)牙通信控制器時,將程序中的對象與外部的應(yīng)用對象實體相對應(yīng),通過建立程序?qū)ο笈c外部世界對象之間的對應(yīng)關(guān)系以及程序中的函數(shù)與外部世界的過程之間的對應(yīng)關(guān)系,可以為開發(fā)者提供方便的開發(fā)途徑。面向?qū)ο蠹夹g(shù)與分布式家居網(wǎng)絡(luò)系統(tǒng)的結(jié)合點就是端口對象通信模型。

  在端口對象通信機(jī)制里,其通信的基本單位是端口對象PO(Port Object)。一個典型的PO對象如圖2所示。

  端口是端口對象之間信息交流的通道,按其功能可以分為三種類型: 即變量輸入輸出端口,它是端口對象間交換操作所需數(shù)據(jù)信息的接口;參數(shù)輸入輸出端口,它是端口對象間交換參數(shù)配置的接口,是系統(tǒng)動態(tài)重構(gòu)的基礎(chǔ)。消息輸入輸出端口,它是一個特殊的端口,是端口對象之間相互調(diào)用有關(guān)操作的接口。端口對象在本質(zhì)上是一個消息處理機(jī),它對由消息輸入端口輸入的消息作出響應(yīng),即調(diào)用相關(guān)操作,同時又可通過消息輸出端口輸出相應(yīng)的消息以調(diào)用其它端口對象的操作。一個端口對象有多個內(nèi)部狀態(tài)和操作,其操作的調(diào)用遵循消息驅(qū)動的原則。但相對于其它對象而言,只有其外部端口是可見的。每個端口對象均屬于某一個特定的端口對象類,該類中所有對象均具有相同的內(nèi)部運(yùn)行框架。端口對象支持繼承機(jī)制,即子類可以繼承父類的所有屬性和操作,同時還可以有自己特有的屬性和操作。

  在藍(lán)牙分布式智能家居網(wǎng)絡(luò)中,藍(lán)牙通信控制器是具有藍(lán)牙功能的處理器,它采用單任務(wù)多線程并發(fā)執(zhí)行模型,即單個應(yīng)用程序可以劃分為幾個獨立的任務(wù),每個處理器上分配一個任務(wù),但每個任務(wù)可以按照需要創(chuàng)建多個線程,分布在多個處理器上的多個線程相互作用,共同完成某一應(yīng)用。線程之間通過共享對象進(jìn)行通信。共享對象可以被任意藍(lán)牙通信控制器上的線程訪問,對該對象的訪問(不包括對該對象的本地訪問)稱為模塊間連接;而模型中的局部對象只能由本地藍(lán)牙通信控制器上的線程訪問,對局部對象的訪問(包括對共享對象的本地訪問)稱為模塊內(nèi)連接。只有發(fā)生模塊間連接時,藍(lán)牙通信控制器之間才相互通信,從而減小了空中通信量。對于模塊內(nèi)連接,由于各模塊支持并行處理,大大增加了處理效率。

  藍(lán)牙通信控制器是藍(lán)牙分布式智能家居網(wǎng)絡(luò)的核心,針對上述端口對象通信模型,通過藍(lán)牙通信控制器來實現(xiàn)通信。藍(lán)牙通信控制器之間通信模型如圖3所示。

  面向?qū)ο蟮乃{(lán)牙通信控制器主要由3層組成:硬件層,協(xié)議層,應(yīng)用層。硬件層主要完成一些依賴于硬件的功能,包括無線信號收發(fā)、編解碼等功能。端口對象通信機(jī)制將系統(tǒng)的硬件細(xì)節(jié)與上層的核心部分相隔離,當(dāng)系統(tǒng)底層的硬件發(fā)生變化的時候,只需更改底層的硬件驅(qū)動,增強(qiáng)了系統(tǒng)的可移植性。協(xié)議層遵循藍(lán)牙核心協(xié)議和藍(lán)牙分布式智能家居網(wǎng)絡(luò)所對應(yīng)的協(xié)議子集(包括OBEX等)參考模型標(biāo)準(zhǔn)。應(yīng)用層是實現(xiàn)分布式的關(guān)鍵。基于端口對象的通信機(jī)制在該層實現(xiàn)。

  應(yīng)用層主要由端口對象管理器、對象列表、過程接口、本地過程調(diào)用和遠(yuǎn)程過程調(diào)用模塊組成。其結(jié)構(gòu)如圖4所示。端口對象管理器的任務(wù)是完成對端口對象的創(chuàng)建、刪除、定位等管理工作,并為系統(tǒng)提供名字服務(wù)。過程接口是用戶過程與應(yīng)用層的接口,無論用戶的過程調(diào)用是遠(yuǎn)程的或是本地的,對于用戶來說是相同的。對調(diào)用的區(qū)分由過程接口來完成。它首先訪問對象列表判斷調(diào)用的類型,再將該過程調(diào)用送到不同的過程調(diào)用模塊去處理。本地過程調(diào)用模塊處理模塊內(nèi)連接,它直接將本地調(diào)用轉(zhuǎn)由本地執(zhí)行并返回結(jié)果;只有那些模塊間連接才由遠(yuǎn)程調(diào)用模塊負(fù)責(zé)。遠(yuǎn)程調(diào)用模塊負(fù)責(zé)將消息包裝,與協(xié)議層進(jìn)行通信。

  在藍(lán)牙通信控制器中,每個端口對象都有自己的名字和身份識別碼(ID號),通過名字或ID都可以查詢到該端口對象的相應(yīng)信息。在系統(tǒng)初始化的時候,在每個藍(lán)牙通信控制器上都由端口對象管理器建立端口對象列表,該列表包括局部對象列表和共享對象列表。對象列表保存了所有對象的名字和ID號的映射關(guān)系及其狀態(tài)。對象的狀態(tài)由系統(tǒng)動態(tài)更新。為了維護(hù)數(shù)據(jù)的一致性,在共享對象創(chuàng)建、刪除和更新時,藍(lán)牙通信控制器必須廣播該消息,以使共享對象表保持一致。在藍(lán)牙通信控制器中,無論是本地對象還是遠(yuǎn)程對象,都通過統(tǒng)一的過程接口來訪問。過程接口通過查找對象表可以得到對象的ID號,通過ID號可以定位該對象的位置。若該對象位于本地,則過程接口將該進(jìn)程傳至本地過程調(diào)用模塊,由該模塊直接調(diào)用相應(yīng)過程,并將結(jié)果通過過程接口返回用戶調(diào)用。若該對象為遠(yuǎn)程對象,過程接口將該進(jìn)程傳至遠(yuǎn)程過程調(diào)用模塊,由遠(yuǎn)程過程調(diào)用模塊將相關(guān)參數(shù)包裝,發(fā)送到遠(yuǎn)程藍(lán)牙通信控制器,然后掛起等待遠(yuǎn)程藍(lán)牙通信控制器的應(yīng)答;遠(yuǎn)程藍(lán)牙通信控制器在接收到請求后,通過協(xié)議層將消息上傳至位于遠(yuǎn)程藍(lán)牙通信控制器內(nèi)的遠(yuǎn)程過程調(diào)用模塊,將消息解包后,由遠(yuǎn)程模塊的過程接口調(diào)用位于遠(yuǎn)程模塊上的本地過程,處理完成后再將結(jié)果打包后回傳給請求結(jié)點。請求結(jié)點在收到消息后,返回給調(diào)用進(jìn)程就可以結(jié)束掛起狀態(tài),繼續(xù)執(zhí)行了。在運(yùn)行過程中,對象的狀態(tài)需動態(tài)更新,這樣雖然會增加額外的通信開銷,但是在共享對象狀態(tài)需要頻繁訪問時,系統(tǒng)只需訪問本地對象列表中的共享對象狀態(tài)即可,無需發(fā)起通信過程。

結(jié)語

  自上世紀(jì)末藍(lán)牙技術(shù)面世以來,藍(lán)牙技術(shù)的研究和藍(lán)牙產(chǎn)品的開發(fā)引起了全世界的關(guān)注。將藍(lán)牙技術(shù)應(yīng)用于智能家居網(wǎng)絡(luò)的研究也日漸興起,由于家居設(shè)備安裝的隨機(jī)性,分布式藍(lán)牙家居網(wǎng)絡(luò)解決了藍(lán)牙家居設(shè)備上網(wǎng)的“即插即用”問題。然而,由于藍(lán)牙技術(shù)和分布式處理的一些固有特性,影響了分布式藍(lán)牙智能家居網(wǎng)絡(luò)的數(shù)據(jù)傳輸、處理速率和安全性。本文針對這些問題,將面向?qū)ο蠹夹g(shù)應(yīng)用于分布式藍(lán)牙智能家居網(wǎng)絡(luò)的核心—藍(lán)牙通信控制器,建立了通信及處理機(jī)制模型,分析表明該方案解決了分布式藍(lán)牙智能家居網(wǎng)絡(luò)的處理速率和安全問題,這將有助于推進(jìn)分布式藍(lán)牙智能家居網(wǎng)絡(luò)的進(jìn)一步發(fā)展。■

參考文獻(xiàn)

1. 金永賢,周家慶,'基于藍(lán)牙的無線校園網(wǎng)接入模式研究',計算機(jī)科學(xué), No.8,2003.

2. 袁明等,'面向?qū)ο蠹夹g(shù)在嵌入式開發(fā)中的應(yīng)用',計算機(jī)應(yīng)用研究,No.2,2003.

3. Stephen Mak, 'A Model of Information Management for Construction Using Information Technology', Automation in Construction, No.10,2001.

4. 張利華等,'基于藍(lán)牙技術(shù)的家庭網(wǎng)絡(luò)',電子技術(shù),No.7,2002.

5.  Chiara Petrioli, Configuring BlueStars: 'Multihop Scatternet Formation for Bluetooth Networks.' IEEE Transactions on Computers, No.6,2003.

6. 謝于俊,楊士元,'分布式智能家庭網(wǎng)絡(luò)系統(tǒng)的研究',計算機(jī)工程,No.1,2002.

7.  T.Salonidis, P.Bhagwat, L.Tassiulas, and R.LaMaire,'Distributed Topology Construction of Bluetooth Personal Area Networks',Proc IEEE Infocom,Apr,2001.

藍(lán)牙技術(shù)相關(guān)文章:藍(lán)牙技術(shù)原理


評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉