衡友躍 宮紀明 況莉莉
(淮北職業(yè)技術(shù)學(xué)院計算機系,安徽 淮北 235000)
基于UPnP的家庭網(wǎng)絡(luò)照明設(shè)備的研究與設(shè)計
衡友躍 宮紀明 況莉莉
(淮北職業(yè)技術(shù)學(xué)院計算機系,安徽 淮北 235000)
由于越來越多的嵌入式設(shè)備的出現(xiàn)和家庭網(wǎng)絡(luò)的發(fā)展,實現(xiàn)家庭網(wǎng)絡(luò)中的各種嵌入式設(shè)備互聯(lián)互通已經(jīng)成為人們的迫切需求?,F(xiàn)今世界各著名設(shè)備廠商紛紛提出了各自的新技術(shù)和解決方案,其中,微軟提出的UPnP技術(shù)最有發(fā)展前途,得到了最廣泛的支持,是當(dāng)今各國研究的熱點。本文在分析UPnP協(xié)議棧、UPnP的基本組件及工作流程的基礎(chǔ)上,給出了基于UPnP的家庭網(wǎng)絡(luò)照明設(shè)備的詳細設(shè)計方案,實驗證明組網(wǎng)方便,易于控制。
UPnP;家庭網(wǎng)絡(luò);照明設(shè)備
通用即插即用 (UPnP)是一種用于PC機和智能設(shè)備(或儀器)的常見對等網(wǎng)絡(luò)連接的體系結(jié)構(gòu),尤其是在家庭中。UPnP以Internet標準和技術(shù)(例如TCP/IP、HTTP和 XML)為基礎(chǔ),使這樣的設(shè)備彼此可自動連接和協(xié)同工作,從而使網(wǎng)絡(luò)(尤其是家庭網(wǎng)絡(luò))對更多的人成為可能[1]。
UPnP定義了設(shè)備之間、設(shè)備和控制點、控制點之間通訊的協(xié)議。讓來自不同公司的設(shè)備非常方便的就可以在一起工作。UPnP設(shè)備協(xié)議棧如圖1所示:
圖1 UPnP協(xié)議棧
UPnP網(wǎng)絡(luò)的基本組件包括服務(wù)、設(shè)備和控制點。其組件圖如圖2所示:
圖2 UPnP組件圖
3.1 設(shè)備
UPnP網(wǎng)絡(luò)中定義的設(shè)備具有很廣泛的含義,各種各樣的家電、電腦外設(shè)、智能設(shè)備、無線設(shè)備、個人電腦等等都可以成為其中一員。一個UPnP設(shè)備可以是多個服務(wù)的載體和多個子設(shè)備的嵌套集[2]。例如一臺打印機有提供打印這樣的服務(wù),屬于設(shè)備。
3.2 服務(wù)(service)
在UPnP網(wǎng)絡(luò)中,最小的控制單元就是服務(wù)。服務(wù)描述的是設(shè)備在不同的情況下的活動和設(shè)備的狀態(tài)[3]。例如,路由服務(wù)可以表述為路由變化(狀態(tài)變化)、當(dāng)前的路由(路由的狀態(tài))以及設(shè)置路由和讀取路由兩個活動,通過這兩個活動,你就可以控制服務(wù)。
3.3 控制點(Control Point)
在UPnP網(wǎng)絡(luò)中,控制點指的是可以發(fā)現(xiàn)并控制其它設(shè)備的控制設(shè)備。在UPnP網(wǎng)絡(luò)中,設(shè)備可以和控制點合并。也就是說,同一個設(shè)備,可以同時具有控制點和設(shè)備的功能的功能,即可以作為作為控制點發(fā)現(xiàn)和控制其它設(shè)備,也可以作為設(shè)備提供服務(wù)。
UPnP工作流程如圖3所示[4]。
圖3 工程流程圖
尋址,控制點跟設(shè)備都先取得IP地址才能做之后的溝通。發(fā)現(xiàn),控制點尋找整個網(wǎng)絡(luò)上的UPnP設(shè)備,而設(shè)備同時也要宣告他本身的存在。描述,控制點取得設(shè)備的描述,這包括設(shè)備提供什么樣的服務(wù)??刂疲刂泣c發(fā)出動作信號給設(shè)備。事件,控制點監(jiān)聽設(shè)備的狀態(tài),當(dāng)狀態(tài)改變時做出相應(yīng)的處理動作。展示,控制點利用HTML界面來控制設(shè)備和監(jiān)看設(shè)備狀態(tài)。
5.1 light設(shè)備中class Overview
圖4是創(chuàng)建一個基于UPnP的light設(shè)備時用到的相關(guān)類。
圖4 類圖
5.2 light的設(shè)備描述編寫
一般來說,設(shè)備描述都是基于UPnP論壇上己定義的模板,這些標準化的模板提供一系列基本的服務(wù)和預(yù)定義的設(shè)備類型,廠商可以在其中作出自己的擴充[5]。部分內(nèi)容如下:
5.3 初始化 light設(shè)備
創(chuàng)建一個基于UPnP的light設(shè)備,根據(jù)根設(shè)備的描述文件創(chuàng)建一個設(shè)備實例化的類。創(chuàng)建的這個設(shè)備為根設(shè)備,只有根設(shè)備用start()方法可以被設(shè)備激活。下面是初始化設(shè)備的關(guān)鍵代碼:
5.4 通知
啟動一個light設(shè)備時,設(shè)備自動通過SSDP(simple service Discovery Protocol):alive 被宣 告已經(jīng)進入網(wǎng)絡(luò),當(dāng)設(shè)備用stop()方法停止使用時,通過SSDP:byebye通知,如圖5所示。
圖5 通知
5.5 light service
通過正在使用的設(shè)備的服務(wù)ID使用getService()可以找到一個服務(wù),也可以通過服務(wù)的名字找到服務(wù)的action和狀態(tài)變量。設(shè)備或服務(wù)都可以通過getAction()獲得action,通過getStateariable()可以獲得狀態(tài)變量,下面代碼是通過light設(shè)備名字獲得服務(wù)的action和服務(wù)的狀態(tài)變量。
5.6 light的控制實現(xiàn)
從控制點接受控制事件的動作,設(shè)備需要執(zhí)行ActionListener接口,監(jiān)聽器必須執(zhí)行一個actionControlReceived(),它有action和參數(shù)列表。輸入的參數(shù)列表是從控制點傳遞的值,在輸出參數(shù)時設(shè)置一些響應(yīng)的值,且當(dāng)請求可用時返回一個true值。相反當(dāng)請求不可用時,返回一個false。下面是部分關(guān)鍵代碼。
5.7 light展示部分的實現(xiàn)
通過以上幾個步驟,基于UPnP家庭照明設(shè)備的設(shè)計基本上就實現(xiàn)了,為獲得展示頁面,light控制點提交一個超文本傳輸協(xié)議請求到展示頁面網(wǎng)址,light設(shè)備返回一個結(jié)果頁面。
論文系統(tǒng)地研究了UPnP的協(xié)議棧、基本組件及實現(xiàn)流程,并結(jié)合light控制點和設(shè)備實現(xiàn)家庭照明的控制,從規(guī)范描述和設(shè)備開發(fā)兩個方面深入研究UPnP的實現(xiàn)技術(shù),實驗證明該方案組網(wǎng)方便、易于控制。
[1]UPnP Forum,About UPnP[EB].http://www.UPnP.org.
[2]楊宗凱,雷嘉,余江.數(shù)字家庭網(wǎng)關(guān)UPnP模塊的設(shè)計與實現(xiàn)[J].計算機工程與科學(xué),2007,(5).
[3]肖繼民.基于UPnP的家庭網(wǎng)絡(luò)技術(shù)及實現(xiàn)研究[D].南京:南京郵電大學(xué),2007.
[4]沈彬斌.UPnP中間件技術(shù)在數(shù)字家庭網(wǎng)絡(luò)中的應(yīng)用研究[D].成都:電子科技大學(xué),2006.
[5]李平均,申健.基于UPnP的AV體系結(jié)構(gòu)的設(shè)計與實現(xiàn)[J].計算機工程與設(shè)計,2007,28(14):3521-3522.
THE RESEARCH AND DESIGN ON HOME METWORK IN LIGHTING DEVICE BASED ON UPNP
HENG You-yue GONG Ji-ming KUANG Li-li
(The Department of computer,Huaibei Vocational and Technical College,Huaibei Anhui 235000)
with the development of more and more embedded device and home network,it is an urgent need to realize all kinds of interconnection and interworking during the home network.New technologies and solutions have been put forward by almost each famous device manufacturers in the world.Especially,UPnP is the most promising put forward by Microsoft,which has gotten the widest support.At the same time,UPnP is the hot spot in the search area all over the world.This essay has supplied detailed scheme about lighting device in the home network on the basis of the analysis of protocol stack,basic component as well as the work flow on UPnP.Besides,experiment has proved that networking is more convenient and easier to control.
UPnP;home network;lighting device
TP399
A
1672-2868(2012)03-0077-04
2012-3-21
安徽省高校優(yōu)秀青年人才基金項目(項目編號:2012SQRL254)
衡友躍(1979-),男,安徽鳳陽人?;幢甭殬I(yè)技術(shù)學(xué)院計算機系工程師,講師,碩士研究生,研究方向:嵌入式系統(tǒng)工程。
責(zé)任編輯:宏 彬