《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計應(yīng)用 > 基于SIP家庭網(wǎng)關(guān)和Web Service的智能家居系統(tǒng)
基于SIP家庭網(wǎng)關(guān)和Web Service的智能家居系統(tǒng)
佟曉霞, 侯 文
摘要: 提出了一種將SIP家庭網(wǎng)關(guān)技術(shù)和Web Service技術(shù)相結(jié)合的智能家居系統(tǒng)的設(shè)計和實現(xiàn)方案,詳細(xì)介紹了系統(tǒng)各功能模塊,給出了在PDA上調(diào)用基于SIP家庭網(wǎng)關(guān)的Web服務(wù)來監(jiān)控家中各電器狀態(tài)的實現(xiàn)結(jié)果。該技術(shù)可以向用戶提供智能家居管理、遠(yuǎn)程監(jiān)控等具體服務(wù)。
Abstract:
Key words :

  摘 要: 提出了一種將SIP家庭網(wǎng)關(guān)技術(shù)和Web Service技術(shù)相結(jié)合的智能家居系統(tǒng)的設(shè)計和實現(xiàn)方案,詳細(xì)介紹了系統(tǒng)各功能模塊,給出了在PDA上調(diào)用基于SIP家庭網(wǎng)關(guān)的Web服務(wù)來監(jiān)控家中各電器狀態(tài)的實現(xiàn)結(jié)果。該技術(shù)可以向用戶提供智能家居管理、遠(yuǎn)程監(jiān)控等具體服務(wù)。
  關(guān)鍵詞: 家庭網(wǎng)關(guān); SIP協(xié)議; Web Service

 

  隨著家庭網(wǎng)絡(luò)化的興起,如何設(shè)計一種集家電管理、協(xié)議轉(zhuǎn)換和家庭網(wǎng)絡(luò)監(jiān)控為一體的家庭網(wǎng)關(guān),實現(xiàn)家用電器的網(wǎng)絡(luò)化、智能化和遠(yuǎn)程控制,已成為當(dāng)前研究的熱點。
  在目前的智能家庭解決方案中,主要是基于家庭網(wǎng)關(guān)技術(shù)來實現(xiàn)用戶對家用電器的智能監(jiān)控和管理[1-3]。但是,目前基于家庭網(wǎng)關(guān)的智能家庭解決方案存在以下問題,首先是服務(wù)信息的發(fā)布,即如何讓用戶方便地獲得家庭網(wǎng)關(guān)所提供的各項服務(wù)的信息;其次是如何簡化用戶對服務(wù)信息的處理操作,讓用戶方便地處理服務(wù)信息;最后是如何對家庭網(wǎng)關(guān)所提供的各項服務(wù)進行管理。Web Service技術(shù)的出現(xiàn)解決了這些問題。
  本文提出了一種將SIP家庭網(wǎng)關(guān)和Web Service技術(shù)相結(jié)合的智能家居監(jiān)控解決方案,通過將家庭網(wǎng)關(guān)對智能家電的管理和控制功能包裝成Web Service,在Web Service中心處發(fā)布以供用戶使用,可實現(xiàn)用戶在任何時間、任何地點對家中狀況的動態(tài)監(jiān)控和管理。同時,利用Web Service中心對各種Web的服務(wù)管理能力實現(xiàn)對各服務(wù)提供商SP所提供的各種服務(wù)的管理,包括:智能家庭相關(guān)服務(wù)的綜合管理;通過在Web Service中心引入鑒權(quán)和計費模塊,便于移動網(wǎng)絡(luò)運營商、各服務(wù)提供商SP對移動用戶的收費和管理。
1 SIP
  SIP(Session Internet Protocol)是一種應(yīng)用層控制信令協(xié)議,用于創(chuàng)建、修改和結(jié)束與一個或多個參與者的會話。這些會話可以包括Internet多媒體會議、遠(yuǎn)程學(xué)習(xí)、Internet電話呼叫以及多媒體公布。起初SIP被作為建立互聯(lián)網(wǎng)會議、電話、多媒體和其他類型的通信會議可選擇的協(xié)議提出,之后,也被用于新型的通信服務(wù),如即時短消息和應(yīng)用級的跨網(wǎng)絡(luò)移動通信(包括無線通信)及跨用戶設(shè)備的通信。SIP借鑒了HTTP的設(shè)計思想和體系結(jié)構(gòu),使用了許多HTTP的消息類型和報頭域,用實體頭(內(nèi)容類型描述)標(biāo)識信息流的內(nèi)容,并且考慮了認(rèn)證授權(quán),所使用的認(rèn)證授權(quán)方法類似于Web中所使用的認(rèn)證授權(quán)方法。
  SIP協(xié)議基于文本,工作在應(yīng)用層,可以建立、修改或結(jié)束一個或幾個參與者的會議,包括Internet多媒體會議、Internet電話呼叫以及多媒體公布。會議中的成員可以通過多點傳送(multicast)方式或單點傳送(unicast mesh) 方式,甚至兩者混合的方式進行通信。以現(xiàn)有的Internet為基礎(chǔ)來構(gòu)架IP電話業(yè)務(wù)網(wǎng), 因此SIP有著與H.323完全不同的設(shè)計思想。H.323域時,為了在局域網(wǎng)上提供無QoS多媒體通信,很大程度也借鑒了其他協(xié)議:如ISDN上的H.320、B-IS-DN上的H.321、PSIN上的H.324等,由于H.323最早為單個LAN的應(yīng)用考慮的,在WAN(特別是存在大量H.323域時)上尋址、用戶定位和環(huán)路檢測方面較欠缺。SIP是一個分散式的協(xié)議,它將網(wǎng)絡(luò)設(shè)備的復(fù)雜性推向網(wǎng)絡(luò)邊緣,使核心網(wǎng)絡(luò)仍是一個“Best Effort”的傳送通道。與以前應(yīng)用較廣泛的H.323標(biāo)準(zhǔn)相比,SIP具有更高的功能性和增長潛力,許多標(biāo)準(zhǔn)化住址和團體已經(jīng)聲明或正在考慮對SIP的支持。Microsoft Messenger采用了SIP協(xié)議,而不是之前Microsoft NetMeeting所采用的H.323協(xié)議。
  目前業(yè)界對SIP的支持越來越廣泛。全球大的運營商都轉(zhuǎn)向支持SIP方式,在北美和歐洲,多數(shù)新的方案都選用SIP ,國內(nèi)的服務(wù)商在考慮組建新網(wǎng)絡(luò)時,也開始采用SIP。SIP可以提供PC機作為一個軟客戶的方式入網(wǎng);可以通過IP電話,終端識別器的方式,也可以通過網(wǎng)關(guān)的方式入網(wǎng);還可以提供多媒體服務(wù)IP電話、呼叫中心等個性化服務(wù)。
2 Web Service
  Web Service是建立在開放的Internet基礎(chǔ)上的新型分布式計算模型,是在現(xiàn)有Web技術(shù)和設(shè)施的基礎(chǔ)上通過制定新的協(xié)議和標(biāo)準(zhǔn)、提出新的技術(shù)來實現(xiàn)的。利用Web Service技術(shù),能夠創(chuàng)建出可供任何人從任何地方使用的功能非常強大的應(yīng)用程序,它極大地拓展了應(yīng)用程序的功能,并實現(xiàn)了軟件的動態(tài)提供。Web Service的優(yōu)勢在于它不像傳統(tǒng)的組件技術(shù)那樣依賴特定的對象模型協(xié)議,而是通過利用通用的Internet協(xié)議(如HTTP協(xié)議)和數(shù)據(jù)格式(如XML)來實現(xiàn)對服務(wù)的訪問。Web Service的請求者只要遵從Web Service接口的定義,即可以基于任何平臺、使用任何編程語言發(fā)送和接收信息。
  Web Service采用SOA(Service-Oriented Architecture)模型作為體系結(jié)構(gòu),如圖1所示。

  Web Service工作流程如下:
  (1) 服務(wù)提供者所能提供的服務(wù)接口用WSDL(Web Service描述語言)和WSFL(Web Service流語言)描述出來。
  (2) 服務(wù)中介者使用UDDI注冊服務(wù)接口,并接受服務(wù)請求者的查詢。
  (3) 服務(wù)請求者通過使用UDDI在服務(wù)中介者處查詢,得到所需服務(wù)接口的描述文件,然后綁定到這些服務(wù),最終完成服務(wù)調(diào)用。服務(wù)參與者之間的三種操作都采用簡單對象訪問協(xié)議(SOAP)完成。
3 智能家居系統(tǒng)的設(shè)計
3.1 整體方案

  在該系統(tǒng)的設(shè)計過程中通過引入SIP家庭網(wǎng)關(guān)技術(shù)和Web Service技術(shù),移動用戶利用手機或PDA等移動設(shè)備,通過查詢Web Service中心可遠(yuǎn)程地獲得家中各智能家電的狀態(tài),實現(xiàn)對智能家電的遠(yuǎn)程控制,同時Web Service中心的計費和鑒權(quán)模塊可實現(xiàn)對用戶身份的認(rèn)證和計費。
  本系統(tǒng)由三個功能模塊組成:SIP家庭網(wǎng)關(guān)功能模塊、Web Service中心功能模塊和用戶控制終端功能模塊,如圖2所示。

 


  本系統(tǒng)中SIP家庭網(wǎng)關(guān)完成內(nèi)外異構(gòu)網(wǎng)絡(luò)的協(xié)議解釋、轉(zhuǎn)換、分發(fā)等工作,并監(jiān)視、控制各節(jié)點的工作,對各個智能家電的控制服務(wù)包裝成SIP Web Service后在Web Service中心發(fā)布以供用戶使用。Web Service中心對各服務(wù)提供商SP所提供的Web服務(wù)進行發(fā)布和管理,同時對使用Web服務(wù)的移動用戶進行鑒權(quán)和計費。移動用戶通過各種移動終端如手機、PDA等接入Internet,通過查詢UDDI注冊中心,即可得到所需服務(wù)的WSDL文件,最后通過遠(yuǎn)程調(diào)用的方式使用Web服務(wù),查看家中電器狀態(tài)并對其進行控制。
3.2 系統(tǒng)模塊設(shè)計
  系統(tǒng)各功能區(qū)域的模塊設(shè)計如圖3所示。

 


  (1)SIP家庭網(wǎng)關(guān)模塊設(shè)計
  SIP家庭網(wǎng)關(guān)負(fù)責(zé)對家中各智能家電的管理,并與Web Service中心進行通信,將家庭網(wǎng)關(guān)所提供的服務(wù)在Web Service中心處發(fā)布。SIP協(xié)議包含兩類組件:服務(wù)代理和網(wǎng)絡(luò)服務(wù)器。服務(wù)代理擔(dān)任著信息編譯碼和沖突檢測等工作;移動用戶終端和家庭網(wǎng)關(guān)進行統(tǒng)一格式的通信,對于移動終端發(fā)來的信息,服務(wù)代理分析信息包得出信息含義。網(wǎng)絡(luò)服務(wù)器主要為用戶代理提供注冊、認(rèn)證和路由等服務(wù),它又分為代理服務(wù)器、重定位服務(wù)器和注冊服務(wù)器。
  (2) Web Service中心模塊設(shè)計
  Web Service中心模塊主要包括用戶數(shù)據(jù)庫子模塊、UDDI注冊中心子模塊、Web服務(wù)處理子模塊和用戶計費子模塊。其中用戶數(shù)據(jù)庫子模塊負(fù)責(zé)對使用Web Service的用戶的認(rèn)證;UDDI注冊中心子模塊負(fù)責(zé)發(fā)布Web Service及處理用戶對Web Service的查詢請求;Web服務(wù)處理子模塊負(fù)責(zé)對用戶調(diào)用Web服務(wù)的請求進行處理,調(diào)用SIP家庭網(wǎng)關(guān)側(cè)的SIP Web Service,并將服務(wù)調(diào)用結(jié)果返回給移動終端;計費子模塊負(fù)責(zé)對移動用戶進行計費。
  (3) 用戶控制終端模塊設(shè)計
  移動終端為用戶監(jiān)控家庭智能應(yīng)用終端的通用遙控器,與家庭網(wǎng)關(guān)、Web Sercice中心進行雙向通信。移動終端攜帶方便,帶觸摸屏,具有良好的用戶界面,操作簡單。一個終端在手,用戶可以控制網(wǎng)絡(luò)中的所有節(jié)點,功能強大且性能穩(wěn)定。終端的功能由安全登錄、設(shè)備監(jiān)控組成。
  安全登錄:啟動PDA后,移動終端生成用戶登陸頁面。用戶登錄子模塊完成用戶在調(diào)用SIP Web Service前,向Web Service中心提交身份認(rèn)證的功能。終端采用異用戶異權(quán)限機制,不同的用戶(管理員、客人、一般用戶)具有不同的安全等級和操作權(quán)限。若登錄失敗,終端將反饋給用戶警告頁面,連續(xù)三次失敗,終端將自動關(guān)閉;登錄成功,則根據(jù)不同等級的用戶,終端生成不同控制頁面,控制頁面包含著Web服務(wù)查詢功能、消費服務(wù)操作、可以控制的設(shè)備以及設(shè)備對應(yīng)的操作。
  設(shè)備監(jiān)控:登錄成功后,用戶進入家庭控制頁面。用戶通過Web服務(wù)查詢子模塊完成用戶向UDDI注冊中心查詢所需Web服務(wù)的WSDL文件的功能。消費服務(wù)模塊根據(jù)用戶從Web Service中心處得到的Web服務(wù)的WSDL文件,以遠(yuǎn)程調(diào)用的方式使用SIP Web Service。
4 移動終端調(diào)用SIP Web Service的實現(xiàn)
  在本系統(tǒng)的實現(xiàn)過程中,SIP家庭網(wǎng)關(guān)和Web Service中心均由PC機來模擬,移動終端由PDA來模擬。
  在移動終端上調(diào)用Web Service有兩種方法:一種是使用Enhydra組織的kSOAP API,通過建立能獨立處理SOAP消息的J2ME移動終端,生成SOAP請求并將請求直接發(fā)送到Web服務(wù)環(huán)境,進而調(diào)用Web Service,該方法不使用代理;另一種方法采用代理方式,移動終端通過一個代理Stub與Web Service進行交互,本系統(tǒng)中實現(xiàn)移動終端上調(diào)用SIP Web Service采用了代理方式。
  開發(fā)時使用了SUN公司提供的WTK(Wireless Toolkit)中的Stub生成器來生成本地Stub的Java代碼,該Java代碼稱為代理的組件。J2ME客戶程序?qū)⒄{(diào)用SIP Web Service所需的全部信息發(fā)送給該組件,該組件將這些信息封裝為SOAP請求后發(fā)送到Web Service中心并等待應(yīng)答。代理組件從Web Service中心收到SOAP應(yīng)答后即從SOAP消息中提取出結(jié)果信息并將其呈現(xiàn)給J2ME客戶端。在代碼的實現(xiàn)中使用了用于J2ME設(shè)備上調(diào)用Web Service功能的可選包JSR172,整個系統(tǒng)流程如圖4所示。


  本文將SIP家庭網(wǎng)關(guān)技術(shù)和Web Service技術(shù)融合到智能家庭系統(tǒng)解決方案中,較好的解決了傳統(tǒng)的單獨基于家庭網(wǎng)關(guān)的智能家庭系統(tǒng)存在的缺陷。標(biāo)準(zhǔn)SIP協(xié)議的使用,既解決了當(dāng)前家電設(shè)備所存在的管理、命名和移動等一系列問題,也使遠(yuǎn)程控制程序設(shè)計者不必關(guān)心家庭網(wǎng)關(guān)的實現(xiàn)細(xì)節(jié)。通過在PC機及PDA上的測試表明,該系統(tǒng)不僅能滿足用戶隨時隨地對家電狀況的監(jiān)控,同時也實現(xiàn)了Web Service中心對家庭網(wǎng)關(guān)提供的各項服務(wù)信息的管理以及對用戶的計費。


參考文獻
[1] 周游,方濱,王普.基于ZigBee技術(shù)的智能家居無線網(wǎng)絡(luò)系統(tǒng)[J].電子技術(shù)應(yīng)用,2005,32(9):37-40.
[2] 嚴(yán)麗平,曾輝,宋凱.嵌入式智能家庭網(wǎng)關(guān)的設(shè)計與實現(xiàn)[J].微計算機信息,2005,35:14-16.
[3] 方海玉,陳章龍,涂時亮.基于nRF2401的智能家居無線網(wǎng)絡(luò)節(jié)點設(shè)計[J].微型電腦應(yīng)用,2007,14(1):12-15.
[4] 馬忠梅,籍順心. 單片機的C語言應(yīng)用程序設(shè)計[M].北京:北京航空航天大學(xué)出版社,1999.
[5] SCHMIDT D, LEVINE D, MUNGEE S. The design and performance of real-time object request brokers[J].
 Computer Communications Journal,April 1998,21(4).


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