《電子技術應用》
您所在的位置:首頁 > 其他 > 設計應用 > CEBus家庭網絡管理器的設計與實現
CEBus家庭網絡管理器的設計與實現
王修暉 吳明光
摘要: 在介紹了家庭網絡(HomeNet)發展概況以及消費總線(Consumer Electronic Bus)和公共應用語言(Common Application Language-)的基礎上,詳細描述了基于CEBus的家庭網絡管理器的硬件接口和軟件設計與實現,重點在于管理器的軟件設計。
Abstract:
Key words :

    摘  要: 在介紹了家庭網絡(HomeNet)發展概況以及消費總線(Consumer Electronic Bus)和公共應用語言(Common Application Language-)的基礎上,詳細描述了基于CEBus的家庭網絡管理器的硬件接口和軟件設計與實現,重點在于管理器的軟件設計。 

    關鍵詞: CEBus  家庭網絡  用戶界面  個性化定制

 1 家庭網絡概況 

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

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

2 CEBus和CAL簡介 

    消費總線(CEBus)是美國電氣工業協會(EIA)的消費電子小組制定的家用消費產品的網絡通訊標準,它描述了一種家庭電子產品之間的通訊方法,通過CEBUS協議可以實現家庭網絡。CEBus采用了簡化的OSI模型,分為物理層、數據鏈路層、網絡層和應用層。CEBus是一個完全面向報文分組(packet)的對等網絡,使用載波偵聽多重訪問和沖突檢測與沖突分辨協議(CSMA/CDCR)。 

    CEBus在應用層定義了一種面向對象的、嚴格的設備描述語言CAL(Common Application Language EIA721),簡稱公共應用語言[1],其內容涵蓋了家庭中可能擁有的家電。公共應用語言采用了面向對象的方法,把任意一個家電設備按照功能分解成幾個預定義的對象模型。在面向對象的編程語言中,一個對象由數據和操作這些數據的函數組成。在消費總線中,這些對象也由數據(稱為實例變量)和操作(稱為方法)組成,不同的設備可以采用相同的對象,用相同的方法操作,但是控制結果隨設備的不同而有不同的意義。 

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

 

 

3 基于CEBus的家庭網絡總體結構 

    由浙江大學系統工程研究所和合作伙伴聯合開發的基于CEBus的家庭網絡結構框架如圖2所示。 

 

 

    從網絡結構不難發現,獨立的、分散的、單體測量裝置是構成CEBus分布式網絡的節點,因此CEBus家庭網絡是一種典型的對等(peer to peer)模型結構。CEBus摒棄了傳統的控制中心的概念,任一網絡節點的失效都不會引起系統的癱瘓,換言之,系統具備高度自治的優良特性。 

    用戶對設備有多種操作方式:通過計算機上的家庭網絡管理器實現對所有設備的操作和設定;用自定義控制面板上按鈕的功能,實現對其它設備的控制;用PDA等手持設備控制設備;用語音控制模塊實現語音控制;可以在遠程與嵌入式的家庭網關連接,從而實現遠程操作。但最方便、最直觀地實現所有家電的監視和控制,還是要使用可定制界面的家庭網絡管理器。 

4 家庭網絡管理器的硬件接口 

    家庭網絡管理器是通過一個CEBus適配器和家庭網絡實現數據通訊的。家庭網絡管理器硬件結構如圖3所示。通過CEBus適配器,管理器維護一個實時數據庫來實現設備信息的更新和保存。借助于一個內置的定時器,管理器每隔三分鐘啟動一個后臺線程,自動從家庭網絡上面讀取新的設備信息,來更新數據庫和用戶界面。另外,當用戶按下刷新按鈕時,系統也會啟動刷新線程,來更新數據庫和用戶界面。 

 

 

    家庭網絡管理器通過下述方法實現設備信息的更新: 

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

    (2)根據設備表中每一條記錄對應的系統地址和單元地址,發送命令獲取上下文列表實例變量(Context_List)[1][2]的值。然后根據上下文的個數在上下文表中增加新記錄,同時將讀取到的各個上下文的序號和類號保存到新生成的上下文記錄相應的字段中。 

    (3)根據上下文表中的每一條記錄對應的上下文序號和類號,發送命令獲取對象列表實例變量(Object_List)[1][2]的值。然后根據對象的個數在對象表中增加新記錄,同時將讀取到的對象序號和類號保存到新生成的對象記錄相應的字段中。 

    (4)根據對象表中的每一條記錄的對象類號在標準CEBus數據庫中查找所有預定義的實例變量,并且為每一個預定義實例變量在實例變量表中增加新記錄,寫入新記錄的name、label、type字段的值。然后逐個發送命令讀取實例變量的值,并且將讀取到的值保存到實例變量表中。 

5 家庭網絡管理器的軟件設計與實現 

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

5.1 虛擬設備顯示界面 

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

 

 

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

 

 

    值得一提的是,當用戶改變了設備狀態的時候,首先更新用戶數據庫的信息,然后,通過數據庫的更新事件來實現家庭網絡上實際設備的狀態控制,而不是直接對每一個狀態更新事件單獨編寫程序。這樣一方面可以提高代碼的重用率和可調試性,更為重要的是可以大大增強程序的模塊化水平,從而提高程序的可維護性。 

5.2 定制設備顯示界面 

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

    定制設備顯示界面正是為了解決這個問題。定制設備顯示界面可以實現設備顯示面板的個性化定制,用戶可以通過選擇預定義的對象界面模型來定制由系統自動生成的缺省控制面板,從而生成個性化的設備顯示面板。如圖5中(b)圖所示,通過簡單的定制,啟動按鈕換成了熟悉的電源開關,而風速對象換成了形象化的垂直調節桿,從而實現整個設備控制面板的個性化定制。 

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

參考文獻 

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 鄭 奕,樂嘉錦.以數據庫為核心——工控組態軟件的設計與實現[J]. 蘭州大學學報,1999;35(8) 

6 馬 茜,蓋 剛,張勇.面向對象的軟件設計基礎[M].北京科海培訓中心,1992 

7 王盛青,胡正華,田忠和.Delphi高級技術在工業監控軟件中的應用.微計算機與應用,1997;(3) 

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

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

10 王 荃,金海東,李福中.工控組態軟件實時數據庫系統的設計與實現.化工自動化及儀表,2000;40(3)

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 亚洲激情综合 | 97久久人人做人人爽人人澡 | 国产综合成人亚洲区 | 中文字幕丝袜在线56页 | 国产成人一区免费观看 | 国产 字幕 制服 中文 在线 | 在线一区三区四区产品动漫 | 日韩精品免费一区二区 | 放一个特别黄的录像 | 精品国产不卡一区二区三区 | 亚洲欧洲尹人香蕉综合 | 亚洲国产成人久久综合区 | 夜夜尻 | 好紧好湿好黄的视频 | 久久精品九九亚洲精品天堂 | 日本国内一区二区三区 | 日批视频免费看 | 精品国产成a人在线观看 | 久久第一页 | 中文字幕在线观看第一页 | 天天做天天爱夜夜爽 | 在线观看深夜观看网站免费 | 亚洲欧美在线观看 | 久久精品国产精品青草不卡 | 男人和女人日皮的视频 | 久久久久一区二区三区 | 欧美日韩色视频在线观看 | 久久久婷 | 可以免费观看一级毛片黄a 可以免费观看的一级毛片 可以免费观看的黄色网址 可以看的黄色网址 | 色综合久久88色综合天天提莫 | 三级国产精品一区二区 | 人人精品 | 在线免费黄网 | 草草线在成人免费视频 | 窝窝人体色www | 天天做夜夜做久久做狠狠 | 欧类av怡春院 | 国产一区二区三区日韩 | 涩涩综合 | 日韩在线免费视频 | 韩日一区二区三区 |