黃夢妍 夏璐
湖南師范大學(xué) 湖南 410081
信息家電(Information Appliance, IA)是利用計算機(jī)、數(shù)字通信和電子技術(shù)與傳統(tǒng)家電相結(jié)合的新型產(chǎn)品,是為滿足現(xiàn)代家庭需要而設(shè)計的新型家用電器。信息家電的基本特征是與網(wǎng)絡(luò)(主要指互聯(lián)網(wǎng))相連并具有一些具體功能。
本文的研究內(nèi)容主要是:通過嵌入式面向?qū)ο髷?shù)據(jù)庫、網(wǎng)絡(luò)技術(shù)以及信息家電接口定義語言IAIDL這些技術(shù),設(shè)計一個能夠在智能家居中管理和控制所有信息家電的、可以直接與用戶交互的可視化嵌入式智能設(shè)備——信息家電萬能遙控器。
智能家居系統(tǒng)中的設(shè)備都具有不同的種類和功能,即使是同種類同功能也有不同品牌之分。如果每臺家電都用自己獨特的“語言”與其他家電和用戶交流,則整個系統(tǒng)需要多個不同的解釋模塊來分別理解不同的“語言”,大大增大了系統(tǒng)復(fù)雜性,造成不必要的系統(tǒng)開支。因此,我們需要一個統(tǒng)一的、抽象的語言對所有設(shè)備來進(jìn)行設(shè)備定義和功能描述。這樣整個系統(tǒng)建立在同一個語言平臺上,實現(xiàn)對信息家電的控制也就不是難題了。從而,我們引出信息家電接口定義語言IAIDL。信息家電接口定義語言(Information Appliance Interface Definition Language, IAIDL)是一種用來定義家庭網(wǎng)絡(luò)中信息家電屬性與功能的描述語言。
通過IAIDL語言的運用,當(dāng)一種按照信息家電描述語言格式定義的新信息家電設(shè)備接入系統(tǒng)時,該設(shè)備能夠自動地向家庭網(wǎng)關(guān)進(jìn)行注冊,所有在線的遠(yuǎn)程信息家電遙控器能自動發(fā)現(xiàn)新信息家電設(shè)備的功能接口,從而實現(xiàn)新信息家電設(shè)備的動態(tài)接入。
如圖 1,為了實現(xiàn)家電之間的相互協(xié)作,各個信息家電(IA)向其他家電和用戶通過 IAIDL 文檔宣告自己所具有的功能和屬性,該IAIDL文檔通過IAIDL 編譯器之后將中間文檔存儲到網(wǎng)關(guān)(SERVER)上,以提供給萬能遙控器(CONTROLLER)進(jìn)行訪問從而實現(xiàn)對各個家電的控制。
圖1 信息家電系統(tǒng)體系結(jié)構(gòu)圖
可擴(kuò)展標(biāo)記語言(Extensible Markup Language, XML),是一種標(biāo)記電子文件的標(biāo)記語言,它標(biāo)記計算機(jī)所能理解的信息符號,通過此種標(biāo)記,計算機(jī)之間可以處理包含各種信息的文檔。XML的優(yōu)勢是,它既可以表示文檔的內(nèi)容,也可以表示文檔的結(jié)構(gòu)。XML的前身是SGML,尤其適合在Web傳輸中使用。
XML的設(shè)計目標(biāo),強(qiáng)調(diào)在互聯(lián)網(wǎng)上的簡單性,普遍性和實用性。雖然某些應(yīng)用軟件同樣支持其它的數(shù)據(jù)交換格式,但不久后他們都將支持XML,也就是說程序可以更容易的與Windows、Mac OS, Linux以及其他平臺下產(chǎn)生的信息結(jié)合,然后可以很容易加載 XML數(shù)據(jù)到程序中并分析他,并以XML格式輸出結(jié)果。我們前面介紹到IAIDL 的功能是家電用來宣告自己所具有的功能和屬性,以便萬能遙控器可以訪問和控制,符合 IAIDL語言的功能(即惟一的描述和標(biāo)識信息家電)。因此用XML 文檔來表示IAIDL是合適的。
我們分析,IAIDL文檔的一般規(guī)范格式為:
…… //信息家電屬性列表
…… //信息家電操作列表
…… //多個不同的action 節(jié)點
對以上標(biāo)準(zhǔn)的具體分析如下:
對于屬性列表,以電視為例,用XML描述家電的屬性如下:
其中,各個信息家電都具有如下屬性:
家電類型(id):家電類型惟一標(biāo)識,如:洗衣機(jī)還是電視。
家電類型名稱(name):注明設(shè)備的英文名稱。
生產(chǎn)廠商(manufacture):注明生產(chǎn)廠商的名稱。
家電型號(model):每一臺家電的惟一標(biāo)識。
對于操作列表,以電視機(jī)換臺的操作為例:
在 XML文件中增加一個
在操作列表中:
操作名稱(operationname):注明該操作的種類。
操作類型(operationtype):操作在操作界面上顯示的類型,比如:開/關(guān),用單選按鈕進(jìn)行選擇;設(shè)置頻道則是在文本框中輸入數(shù)值來獲取頻道。
當(dāng)前狀態(tài)(operationcurrent):家電的當(dāng)前狀態(tài),為操作值中合法的一個狀態(tài)。
操作值(operationvalue):用戶所想修改成的新狀態(tài)值,如:設(shè)置為用戶希望的頻道數(shù)。
操作的默認(rèn)值(operationdefault):操作失敗時操作的默認(rèn)值。
在智能家居系統(tǒng)中,我們考慮萬能遙控應(yīng)該具有的特點:(1)便攜性。在居家生活中,人們普遍習(xí)慣了攜帶方便,造型小而簡潔的遙控器。這就要求新型的萬能遙控器也應(yīng)該是一個便攜、無線的小型遙控裝置。(2)簡易性。萬能遙控器的圖形用戶界面若過于專業(yè)性或是繁雜,會直接影響到用戶的對信息家電的態(tài)度,從而某一程度上決定著信息家電市場的進(jìn)一步發(fā)展和擴(kuò)大。
萬能遙控器對信息家電設(shè)備的控制功能的實現(xiàn)需要家庭網(wǎng)關(guān)和信息家電設(shè)備的密切配合。其事務(wù)流程圖如圖2所示。當(dāng)用戶萬能遙控的用戶界面中進(jìn)行某項操作之后,萬能遙控器會解釋該操作的具體含義,并且向家庭網(wǎng)關(guān)發(fā)送服務(wù)請求;在接收和初步解釋服務(wù)請求數(shù)據(jù)后,家庭網(wǎng)關(guān)該數(shù)據(jù)包轉(zhuǎn)發(fā)至相對應(yīng)的具體家電;信息家電在解析該數(shù)據(jù)包后,調(diào)用相關(guān)模塊完成相應(yīng)的具體動作,再將操作結(jié)果打包,發(fā)送給家庭網(wǎng)關(guān);家庭網(wǎng)關(guān)收到操作結(jié)果數(shù)據(jù)包更新其數(shù)據(jù)庫內(nèi)相應(yīng)數(shù)據(jù),并將結(jié)果轉(zhuǎn)發(fā)回給萬能遙控器;最后,萬能遙控器根據(jù)操作結(jié)果刷新用戶界面。
考慮到萬能遙控器的靈活性,我們采用動態(tài)界面生成。我們的萬能遙控器的圖形用戶界面在水平方向上為定長,在垂直方向上可自動調(diào)整長度,即一個面積不定的矩形區(qū)域,用來放置控件(設(shè)界面的水平長度為 X(像素),垂直高度為Y(像素))。界面初始大小為物理顯示屏的 1/4(若物理顯示屏大小為 a*b(像素),則 x=1/2a,y=1/2b);當(dāng)界面中的控件由于家電設(shè)備或操作的增多而逐漸增多時,若當(dāng)前界面無法繼續(xù)生成控件,則保證水平方向上不變時在垂直方向上拉長界面。同時生成滾動條,方便用戶瀏覽整個界面。我們進(jìn)一步將整個界面按 1/2X*y/2n(像素)大小劃為 n個更小的矩形區(qū)域,作為放置控件的基本單元(稱為“行”,算法中將每一“行”抽象成為一個“行對象”,用特定的數(shù)據(jù)結(jié)構(gòu)表示),以達(dá)到我們的設(shè)計目標(biāo)。從而,整個界面就劃分成了若干行。在生成界面時,每動態(tài)生成一個控件,則有序的在用戶界面中增加一行,整個界面在控件生成完畢后刷新顯示。
圖2 萬能遙控查詢功能流程圖
信息家電的興起為萬能遙控用戶界面的優(yōu)化提供了一個新的,突破性的機(jī)會。用戶界面和可用性的融合產(chǎn)生的萬能遙控器將成為信息家電的關(guān)鍵組成部分。本課題的研究結(jié)合了XML、嵌入式面向?qū)ο髷?shù)據(jù)庫技術(shù),為用戶遠(yuǎn)程訪問和控制信息家電提供了基礎(chǔ)。
本文的主要研究結(jié)果有:(1)使用了統(tǒng)一的語言——信息家電接口定義語言IAIDL對信息家電進(jìn)行功能描述。(2)采用XML 表示描述信息家電接口定義語言(IAIDL)文檔,并制定了文檔格式規(guī)范。(3)運用界面動態(tài)生成技術(shù)對信息家電萬能遙控器用戶界面進(jìn)行了設(shè)計,在PC機(jī)上進(jìn)行了模擬。當(dāng)然,由于各方面原因,本文還有需要進(jìn)一步探討、改進(jìn)的地方,如:遠(yuǎn)程認(rèn)證機(jī)制有可能將整個信息家電系統(tǒng)曝露于黑客的視線內(nèi),所以智能家居系統(tǒng)的安全認(rèn)證機(jī)制應(yīng)該是將來的一個研究方向。
[1] Wen-Gong Shieh, Jian-Min Wang, Wen-Bing Horng,.Secure remote control model for information appliances, .ntelligence and Security Informatics,2008. IEEE International Conference.2008.
[2] 陽麗君,劉宏.信息家電接口定義語言(IAIDL)的研究[J].計算機(jī)與現(xiàn)代化[J]. 2007.
[3] JOHN WILEY. Latest Technology in Automation Home Control[M].Silent Servant.Inc.2003.
[4] 張志偉.家庭網(wǎng)絡(luò)和信息家電[J].計算機(jī)工程與應(yīng)用.2002.
[5] 彭華,劉宏,蔡城.萬能遙控器的帶約束動態(tài)界面布局的研究[J].微計算機(jī)信息.2008.