《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 其他 > 設(shè)計(jì)應(yīng)用 > CEBus家庭網(wǎng)絡(luò)管理器的設(shè)計(jì)與實(shí)現(xiàn)
CEBus家庭網(wǎng)絡(luò)管理器的設(shè)計(jì)與實(shí)現(xiàn)
王修暉 吳明光
摘要: 在介紹了家庭網(wǎng)絡(luò)(HomeNet)發(fā)展概況以及消費(fèi)總線(Consumer Electronic Bus)和公共應(yīng)用語言(Common Application Language-)的基礎(chǔ)上,詳細(xì)描述了基于CEBus的家庭網(wǎng)絡(luò)管理器的硬件接口和軟件設(shè)計(jì)與實(shí)現(xiàn),重點(diǎn)在于管理器的軟件設(shè)計(jì),。
Abstract:
Key words :

    摘  要: 在介紹了家庭網(wǎng)絡(luò)(HomeNet)發(fā)展概況以及消費(fèi)總線(Consumer Electronic Bus)和公共應(yīng)用語言(Common Application Language-)的基礎(chǔ)上,詳細(xì)描述了基于CEBus的家庭網(wǎng)絡(luò)管理器的硬件接口和軟件設(shè)計(jì)與實(shí)現(xiàn),重點(diǎn)在于管理器的軟件設(shè)計(jì),。 

    關(guān)鍵詞: CEBus  家庭網(wǎng)絡(luò)  用戶界面  個(gè)性化定制

 1 家庭網(wǎng)絡(luò)概況 

    國外家庭網(wǎng)絡(luò)(總線)的概念始于20世紀(jì)70年代,。開始時(shí)各公司自定標(biāo)準(zhǔn),各自為政,不同公司的產(chǎn)品互不兼容,導(dǎo)致市場(chǎng)的開拓和技術(shù)的進(jìn)步極為緩慢。近十年來,遵循統(tǒng)一標(biāo)準(zhǔn)已成為業(yè)內(nèi)的共識(shí),。目前,國際上公認(rèn)的有影響的家庭網(wǎng)絡(luò)標(biāo)準(zhǔn)有:美國標(biāo)準(zhǔn)X10,、日本標(biāo)準(zhǔn)家庭總線(HomeBus)、歐洲標(biāo)準(zhǔn)安裝總線(EIB),、澳洲奇勝(Clipsal)公司的C-BUS等,它們都各有側(cè)重,有的總線僅僅限于燈光控制,。1984年,美國電氣工業(yè)協(xié)會(huì)的消費(fèi)電器小組開始著手制定家電互聯(lián)規(guī)范,并于1992年發(fā)布CEBus規(guī)范(EIA600),即消費(fèi)總線[1][2]。1994年,成立了消費(fèi)工業(yè)委員會(huì),專門負(fù)責(zé)消費(fèi)總線的有關(guān)事宜,。CEBus得到了IBM,、Honeywell、Microsoft,、Intellon,、Demosys、Lucent,、Philips,、Siements、XLSynergy等國際著名公司的支持,。1999年2月,Demosys公司在美國加州展示基于CEBus的“Demosys墻”,以展示CEBus即插即用的互操作性能,。來自6個(gè)不同公司的幾十個(gè)產(chǎn)品安裝在展示墻上,通過電源線通訊,這些產(chǎn)品構(gòu)成協(xié)調(diào)一致的智能系統(tǒng),每個(gè)產(chǎn)品都能夠自動(dòng)尋找到它應(yīng)該控制的相應(yīng)產(chǎn)品。由于遵循了統(tǒng)一的CEBus標(biāo)準(zhǔn),不同廠家的產(chǎn)品達(dá)到了互聯(lián)互操,、即插即用的完美境界,最大限度地滿足了家庭網(wǎng)絡(luò)用戶對(duì)易用性的苛刻要求,。 

    國內(nèi)家庭網(wǎng)絡(luò)尚處于啟蒙狀態(tài):方正的卓越Z系列、海信的海景二代,、海爾的e家庭和網(wǎng)絡(luò)家電,、TCL的家庭信息顯示器(HID)以及初露端倪的聯(lián)想.home等等。這些有益的嘗試,盡管為用戶描述了一幅智能家居的美好前景,但是由于缺乏統(tǒng)一的標(biāo)準(zhǔn),、規(guī)范和接口協(xié)議,在更多意義上還只能算是一種概念性產(chǎn)品,。 

2 CEBus和CAL簡(jiǎn)介 

    消費(fèi)總線(CEBus)是美國電氣工業(yè)協(xié)會(huì)(EIA)的消費(fèi)電子小組制定的家用消費(fèi)產(chǎn)品的網(wǎng)絡(luò)通訊標(biāo)準(zhǔn),它描述了一種家庭電子產(chǎn)品之間的通訊方法,通過CEBUS協(xié)議可以實(shí)現(xiàn)家庭網(wǎng)絡(luò),。CEBus采用了簡(jiǎn)化的OSI模型,分為物理層、數(shù)據(jù)鏈路層,、網(wǎng)絡(luò)層和應(yīng)用層,。CEBus是一個(gè)完全面向報(bào)文分組(packet)的對(duì)等網(wǎng)絡(luò),使用載波偵聽多重訪問和沖突檢測(cè)與沖突分辨協(xié)議(CSMA/CDCR)。 

    CEBus在應(yīng)用層定義了一種面向?qū)ο蟮?、?yán)格的設(shè)備描述語言CAL(Common Application Language EIA721),簡(jiǎn)稱公共應(yīng)用語言[1],其內(nèi)容涵蓋了家庭中可能擁有的家電,。公共應(yīng)用語言采用了面向?qū)ο蟮姆椒?把任意一個(gè)家電設(shè)備按照功能分解成幾個(gè)預(yù)定義的對(duì)象模型。在面向?qū)ο蟮木幊陶Z言中,一個(gè)對(duì)象由數(shù)據(jù)和操作這些數(shù)據(jù)的函數(shù)組成,。在消費(fèi)總線中,這些對(duì)象也由數(shù)據(jù)(稱為實(shí)例變量)和操作(稱為方法)組成,不同的設(shè)備可以采用相同的對(duì)象,用相同的方法操作,但是控制結(jié)果隨設(shè)備的不同而有不同的意義,。 

    CAL用一種層次關(guān)系描述設(shè)備的功能。如圖1所示,。一個(gè)設(shè)備可以分成幾個(gè)上下文,它們代表了這個(gè)設(shè)備按照功能分的子系統(tǒng),。上下文又被分為幾個(gè)對(duì)象,每個(gè)對(duì)象代表了上下文中的一種控制功能,對(duì)象分為若干類,每一類代表一種共有的功能。CAL預(yù)定義了27個(gè)對(duì)象模型[1],。例如,類號(hào)為07的對(duì)象是模擬控制對(duì)象(Analog Control Object),它可以用來代表音量控制,、溫度調(diào)節(jié)或調(diào)光器。一個(gè)對(duì)象的具體功能完全由他所屬的上下文決定,。每個(gè)對(duì)象包含一定數(shù)量的實(shí)例變量,。每個(gè)對(duì)象都能夠解釋執(zhí)行方法,更新實(shí)例變量,并完成實(shí)際操作。 

 

 

3 基于CEBus的家庭網(wǎng)絡(luò)總體結(jié)構(gòu) 

    由浙江大學(xué)系統(tǒng)工程研究所和合作伙伴聯(lián)合開發(fā)的基于CEBus的家庭網(wǎng)絡(luò)結(jié)構(gòu)框架如圖2所示,。 

 

 

    從網(wǎng)絡(luò)結(jié)構(gòu)不難發(fā)現(xiàn),獨(dú)立的,、分散的、單體測(cè)量裝置是構(gòu)成CEBus分布式網(wǎng)絡(luò)的節(jié)點(diǎn),因此CEBus家庭網(wǎng)絡(luò)是一種典型的對(duì)等(peer to peer)模型結(jié)構(gòu),。CEBus摒棄了傳統(tǒng)的控制中心的概念,任一網(wǎng)絡(luò)節(jié)點(diǎn)的失效都不會(huì)引起系統(tǒng)的癱瘓,換言之,系統(tǒng)具備高度自治的優(yōu)良特性,。 

    用戶對(duì)設(shè)備有多種操作方式:通過計(jì)算機(jī)上的家庭網(wǎng)絡(luò)管理器實(shí)現(xiàn)對(duì)所有設(shè)備的操作和設(shè)定;用自定義控制面板上按鈕的功能,實(shí)現(xiàn)對(duì)其它設(shè)備的控制;用PDA等手持設(shè)備控制設(shè)備;用語音控制模塊實(shí)現(xiàn)語音控制;可以在遠(yuǎn)程與嵌入式的家庭網(wǎng)關(guān)連接,從而實(shí)現(xiàn)遠(yuǎn)程操作。但最方便,、最直觀地實(shí)現(xiàn)所有家電的監(jiān)視和控制,還是要使用可定制界面的家庭網(wǎng)絡(luò)管理器,。 

4 家庭網(wǎng)絡(luò)管理器的硬件接口 

    家庭網(wǎng)絡(luò)管理器是通過一個(gè)CEBus適配器和家庭網(wǎng)絡(luò)實(shí)現(xiàn)數(shù)據(jù)通訊的。家庭網(wǎng)絡(luò)管理器硬件結(jié)構(gòu)如圖3所示,。通過CEBus適配器,管理器維護(hù)一個(gè)實(shí)時(shí)數(shù)據(jù)庫來實(shí)現(xiàn)設(shè)備信息的更新和保存,。借助于一個(gè)內(nèi)置的定時(shí)器,管理器每隔三分鐘啟動(dòng)一個(gè)后臺(tái)線程,自動(dòng)從家庭網(wǎng)絡(luò)上面讀取新的設(shè)備信息,來更新數(shù)據(jù)庫和用戶界面。另外,當(dāng)用戶按下刷新按鈕時(shí),系統(tǒng)也會(huì)啟動(dòng)刷新線程,來更新數(shù)據(jù)庫和用戶界面,。 

 

 

    家庭網(wǎng)絡(luò)管理器通過下述方法實(shí)現(xiàn)設(shè)備信息的更新: 

    (1)發(fā)送廣播消息,獲取所有設(shè)備的地址,。然后根據(jù)設(shè)備個(gè)數(shù)在用戶數(shù)據(jù)庫的設(shè)備表中增加新記錄,并且將獲得的設(shè)備系統(tǒng)地址和單元地址[1][2]保存到新記錄的sys_addr和unit_addr字段中。 

    (2)根據(jù)設(shè)備表中每一條記錄對(duì)應(yīng)的系統(tǒng)地址和單元地址,發(fā)送命令獲取上下文列表實(shí)例變量(Context_List)[1][2]的值,。然后根據(jù)上下文的個(gè)數(shù)在上下文表中增加新記錄,同時(shí)將讀取到的各個(gè)上下文的序號(hào)和類號(hào)保存到新生成的上下文記錄相應(yīng)的字段中,。 

    (3)根據(jù)上下文表中的每一條記錄對(duì)應(yīng)的上下文序號(hào)和類號(hào),發(fā)送命令獲取對(duì)象列表實(shí)例變量(Object_List)[1][2]的值。然后根據(jù)對(duì)象的個(gè)數(shù)在對(duì)象表中增加新記錄,同時(shí)將讀取到的對(duì)象序號(hào)和類號(hào)保存到新生成的對(duì)象記錄相應(yīng)的字段中,。 

    (4)根據(jù)對(duì)象表中的每一條記錄的對(duì)象類號(hào)在標(biāo)準(zhǔn)CEBus數(shù)據(jù)庫中查找所有預(yù)定義的實(shí)例變量,并且為每一個(gè)預(yù)定義實(shí)例變量在實(shí)例變量表中增加新記錄,寫入新記錄的name,、label,、type字段的值。然后逐個(gè)發(fā)送命令讀取實(shí)例變量的值,并且將讀取到的值保存到實(shí)例變量表中,。 

5 家庭網(wǎng)絡(luò)管理器的軟件設(shè)計(jì)與實(shí)現(xiàn) 

    這套軟件主要包括兩個(gè)功能界面:虛擬設(shè)備顯示界面,、定制設(shè)備顯示界面。 

5.1 虛擬設(shè)備顯示界面 

    在第2節(jié)介紹CAL語言時(shí)已經(jīng)提到,CAL預(yù)定義了27個(gè)對(duì)象模型,。筆者給每個(gè)對(duì)象都編寫了多種界面模型,例如圖4中,(a),、(b)是對(duì)象模型二元開關(guān)(Binary Switch)的兩種界面模型;(c)、(d),、(e)是對(duì)象模型多路元開關(guān)(Multi_state Switch)的三種界面模型。這樣就可以用軟件形象地表達(dá)每一種對(duì)象了,。 

 

 

    對(duì)于普通用戶來說,虛擬設(shè)備顯示界面是最常用到的功能界面,。當(dāng)切換到這個(gè)界面時(shí),根據(jù)用戶選擇的設(shè)備標(biāo)識(shí)號(hào),從用戶數(shù)據(jù)庫讀入信息,根據(jù)組成設(shè)備對(duì)象的類型號(hào),動(dòng)態(tài)地恢復(fù)成為一個(gè)虛擬的設(shè)備控制面板,從而用戶可以對(duì)家電進(jìn)行形象化的監(jiān)視和操作。如圖5(a)所示,這是當(dāng)空調(diào)動(dòng)態(tài)顯示時(shí)的虛擬設(shè)備面板,。管理器讀取到的四個(gè)需要顯示的對(duì)象:啟動(dòng)(二路開關(guān)),、工作模式(多路開關(guān))、風(fēng)速(多路開關(guān)),、溫度設(shè)定(模擬開關(guān)),根據(jù)四個(gè)對(duì)象的類型號(hào),取得相應(yīng)的缺省對(duì)象界面模型,從而組合成空調(diào)的虛擬控制面板,。 

 

 

    值得一提的是,當(dāng)用戶改變了設(shè)備狀態(tài)的時(shí)候,首先更新用戶數(shù)據(jù)庫的信息,然后,通過數(shù)據(jù)庫的更新事件來實(shí)現(xiàn)家庭網(wǎng)絡(luò)上實(shí)際設(shè)備的狀態(tài)控制,而不是直接對(duì)每一個(gè)狀態(tài)更新事件單獨(dú)編寫程序。這樣一方面可以提高代碼的重用率和可調(diào)試性,更為重要的是可以大大增強(qiáng)程序的模塊化水平,從而提高程序的可維護(hù)性,。 

5.2 定制設(shè)備顯示界面 

    在上一小節(jié)已經(jīng)提到,對(duì)應(yīng)CEBus預(yù)定義的27種對(duì)象,都編寫了多種顯示模型,并且為每一種對(duì)象都指定了一個(gè)缺省顯示模型,從而系統(tǒng)會(huì)自動(dòng)生成缺省設(shè)備控制面板,。但是由于系統(tǒng)本身不具有智能,只是根據(jù)對(duì)象的類型號(hào)來選擇對(duì)象顯示模型,因而對(duì)于某個(gè)具體的設(shè)備來說,該缺省對(duì)象顯示模型可能是不恰當(dāng)甚至是不正確的,從而導(dǎo)致缺省設(shè)備顯示面板的機(jī)械性。如圖5中(a)圖所示,由于啟動(dòng)(電源按鈕)本身也是一個(gè)二路開關(guān),因此在缺省控制面板中的啟動(dòng)對(duì)象顯示為一個(gè)缺省二路開關(guān),顯得不是很直觀,。另外由于工作模式和風(fēng)速對(duì)象都是多路開關(guān)類型,從而在缺省控制面板中,都是以旋鈕開關(guān)顯示的,風(fēng)速對(duì)象不太符合人的習(xí)慣,。 

    定制設(shè)備顯示界面正是為了解決這個(gè)問題。定制設(shè)備顯示界面可以實(shí)現(xiàn)設(shè)備顯示面板的個(gè)性化定制,用戶可以通過選擇預(yù)定義的對(duì)象界面模型來定制由系統(tǒng)自動(dòng)生成的缺省控制面板,從而生成個(gè)性化的設(shè)備顯示面板,。如圖5中(b)圖所示,通過簡(jiǎn)單的定制,啟動(dòng)按鈕換成了熟悉的電源開關(guān),而風(fēng)速對(duì)象換成了形象化的垂直調(diào)節(jié)桿,從而實(shí)現(xiàn)整個(gè)設(shè)備控制面板的個(gè)性化定制,。 

    個(gè)人計(jì)算機(jī)正在成為家庭中工作、通信,、教育和娛樂的強(qiáng)大平臺(tái),。與此同時(shí),幾乎在一夜之間,Internet逐漸成為信息交流的基本方式之一。正如把戶外的信息和寬帶娛樂資源(如Internet和有線電視)高速接入的需要不斷增加一樣,在家庭里,把家電設(shè)備進(jìn)行數(shù)字化連接的需求也在迅速增長(zhǎng),。當(dāng)然可以通過局域網(wǎng)來實(shí)現(xiàn)家庭內(nèi)部的連接,然而,在家中布置一個(gè)局域網(wǎng)成本太高,布線也比較復(fù)雜,。于是,人們?cè)O(shè)計(jì)出利用現(xiàn)有的電話線或者電力線,來完成簡(jiǎn)單、高速和廉價(jià)的家庭網(wǎng)絡(luò),。家庭網(wǎng)絡(luò)的興起和推廣應(yīng)用,將會(huì)帶來一場(chǎng)家電市場(chǎng)的革命,。 

參考文獻(xiàn) 

1 CEBus Industry Coucil - CIC. EIA 600.81 Common Application Language (CAL) Specification,June 29th 1992 

2 CEBus Industry Coucil - CIC.Home Plug & Play 

3 CEBus Industry Coucil - CIC.EIA 600.82 CAL Context Description, June 29th 1992 

4 Zhou Yong. CEBus Demostration System.www.hometoys.com, 2000.6 

5 鄭 奕,樂嘉錦.以數(shù)據(jù)庫為核心——工控組態(tài)軟件的設(shè)計(jì)與實(shí)現(xiàn)[J]. 蘭州大學(xué)學(xué)報(bào),1999;35(8) 

6 馬 茜,蓋 剛,張勇.面向?qū)ο蟮能浖O(shè)計(jì)基礎(chǔ)[M].北京科海培訓(xùn)中心,1992 

7 王盛青,胡正華,田忠和.Delphi高級(jí)技術(shù)在工業(yè)監(jiān)控軟件中的應(yīng)用.微計(jì)算機(jī)與應(yīng)用,1997;(3) 

8 周蘇.軟件工程及其應(yīng)用.天津:天津科技出版社,1992. 

9 Ronald J.Norman.OBJECT_ORIENTED SYSTEMS ANALYSIS AND DESIGN.Prentice-Hall International, Inc 

10 王 荃,金海東,李福中.工控組態(tài)軟件實(shí)時(shí)數(shù)據(jù)庫系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).化工自動(dòng)化及儀表,2000;40(3)

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載,。