文獻標識碼: A
文章編號: 0258-7998(2014)09-0114-04
智能家居的概念自提出以來,,近幾十年得到了迅速的發(fā)展,。由于軟硬件技術的限制,智能家居的研究有一定的時間局限性,。
隨著社會的發(fā)展,,生活水平不斷提高,人們在追求舒適化的基礎上開始追求智能家居的可視化和人性化[1],,這就為智能家居人機交互方案[2]提出了更高的要求,,用戶友好互動型的人機界面已經(jīng)呼之欲出。因此,,可與用戶友好互動的三維虛擬現(xiàn)實[3-4]技術找到了市場應用前景,。
本文借助Flash 3D引擎,使用ActionScript 3.0語言構建三維虛擬場景,,并通過Web實現(xiàn)三維界面與家居設備的遠程監(jiān)測與實時控制,,從而在家居智能化的前提下,實現(xiàn)了人機交互的人性化和互動性,,提高了用戶的沉浸感和漫游感,。
1 系統(tǒng)構建
1.1 系統(tǒng)整體構架
隨著智能家居的發(fā)展,市面上出現(xiàn)了許多智能家居系統(tǒng)構建方案[5-6],。本文提出的系統(tǒng)構架如圖1所示,。
此系統(tǒng)構架采用4層獨立分層模式,分別為客戶端層,、服務器層,、智能終端層和家居設備層。其中,用戶的遠程操作通過Web的HTTP/TCP協(xié)議傳送到服務器,;服務器響應請求并向智能終端發(fā)送命令,;安裝在家里的智能終端接收并分析該命令,通過無線網(wǎng)絡直接控制家居設備來響應各項指令,;家居設備執(zhí)行命令后,,又將數(shù)據(jù)反饋給智能終端,智能終端再通過服務器反饋給用戶端,,從而實現(xiàn)遠程操作,。
1.2 系統(tǒng)各模塊的設計
1.2.1 智能終端
系統(tǒng)中的室內智能終端是智能家居的核心設備。家庭安裝的所有傳感器模塊和電器控制模塊都是通過與智能終端進行通信來完成各自的功能,,并且服務器也通過與智能終端通信,,實現(xiàn)設置、監(jiān)測各傳感器模塊和控制各種電器的功能,。智能終端硬件主要由主板,、液晶屏、攝像頭,、無線模塊,、麥克風、揚聲器等組成,。
1.2.2 無線網(wǎng)絡模塊
本系統(tǒng)通過智能終端內設的無線接發(fā)模塊與各電器實現(xiàn)無線通信,具體布局如圖2所示,。安裝在室內的智能終端通過無線局域網(wǎng)將從Web網(wǎng)絡接收到的信息傳遞給各個用電模塊和傳感器,,傳感器也通過無線傳輸設備將檢測到的數(shù)據(jù)反饋到智能終端。室內無線局域網(wǎng)絡可以減少室內布線帶來的成本問題與維護問題,,同時也使系統(tǒng)構架更加簡單,、靈活,易于系統(tǒng)的擴展和改進,,便于現(xiàn)有家居安裝,。
1.2.3 傳感器模塊
本智能家居控制系統(tǒng)涉及大量的信息采集,如室內環(huán)境參數(shù),、安防傳感器狀態(tài)等,,這些狀態(tài)都要通過無線方式上傳到智能終端。因此,,本系統(tǒng)配備了各式各樣的無線傳感器模塊,,用于采集家居的各種信息,并實時上傳到智能終端,。
2 基于Web的三維虛擬實現(xiàn)方案
2.1 3D平臺的搭建
為了搭建3D平臺,,需通過三維設計軟件構造出3D虛擬場景中的各種實體。隨著三維軟件功能的擴展,三維設計已經(jīng)變得越來越容易,,現(xiàn)在比較流行的三維軟件有Pro/E,、Solidworks、3DS Max等,。由于3D模型不能直接嵌入到Web中,,因此,必須要將繪制的3D模型導入到Flash引擎中并由Flash來完成對模型的控制,。目前市場上存在的如Away3D ,、Sandy3D等各種3D Flash開源軟件,基本上都具備相當強大的支持三維界面的功能,。將由Flash 引擎處理后的三維界面導出后嵌入所設計的Web 網(wǎng)站,,就實現(xiàn)了整個3D 平臺從實體創(chuàng)建、設計調控到網(wǎng)絡使用的搭建過程,,如圖3所示,。
2.1.1 3DS Max設計三維模型
本系統(tǒng)使用3DS Max軟件構建家居實體,并導出其.obj格式,,這將是所需要的標準格式,。另外,還可以利用軟件具有的貼圖功能,,將家庭實物的平面圖粘貼在三維模型表面,,以提高虛擬實體與家居物體的相似度,進一步提高虛擬現(xiàn)實的效果,。
考慮到Flash軟件的性能限制,,三維模型的大小是必須要注意的問題。房間的三維模型設計圖如圖4所示,。當智能家居的各個虛擬實體畫好后,,構架三維場景的基本材料就全部準備好了。
2.1.2 Flash對三維界面的支持
這里選用Flash 11.0來支持3D平臺的構建與展示,。Flash 11自帶的stage 3D API 大大提高了其處理三維場景的能力,,并使三維開發(fā)變得更加簡單易行。本設計基于Flash Builder開發(fā)平臺,,利用ActionScript 腳本語言實現(xiàn)對三維模型的配置和控制,,將各個分散的三維模型整合成一個完整的虛擬現(xiàn)實的家居場景,使用戶可以通過操縱鍵盤和鼠標在三維虛擬實景中漫游,。經(jīng)Flash 平臺開發(fā)后的三維虛擬實景局部如圖5所示,。
2.2 三維場景的Web嵌入與數(shù)據(jù)通信
經(jīng)過Flash處理過的三維場景只是具備了在Flash 平臺進行演示的功能,必須將此產(chǎn)品發(fā)布到網(wǎng)上后,,用戶才能直接訪問,。這里利用J2EE技術創(chuàng)建一個三維家居的網(wǎng)站,,并采用B/S(Browse/Server)模式作為網(wǎng)站的整體構架。
在本系統(tǒng)的構架中,,用戶通過瀏覽器向分布在網(wǎng)絡上的許多服務器發(fā)出請求,,服務器對請求進行處理,將Flash處理后的三維家居界面返回到瀏覽器,。B/S結構簡化了客戶機的工作,,客戶機只需配置少量的客戶端軟件,服務器將擔負更多的工作,,對數(shù)據(jù)庫的訪問和應用程序的執(zhí)行將在服務器上完成,。這些都極大地方便了系統(tǒng)的推廣和維護。通過得到.swf文件,,將此文件配置在服務器支持的Web工程中,,并將此鏈接到網(wǎng)站服務器支持的一個JSP頁面,用戶登錄網(wǎng)站后,,此JSP頁面便會呈現(xiàn)出設計好的三維虛擬場景,。
用戶能夠通過對三維虛擬場景實現(xiàn)對家居實景的控制,這其中不僅涉及復雜的軟硬件搭配,,更重要的是系統(tǒng)包含的相當復雜的數(shù)據(jù)通信過程,。系統(tǒng)基于Web的數(shù)據(jù)通信過程如圖6所示。
用戶打開瀏覽器登錄智能家居網(wǎng)站之后,,下載智能家居swf插件,,插件通過與服務器通信獲取XML信息,然后家庭3D場景和實物庫配置成智能家居虛擬場景,。用戶能夠在虛擬場景中漫游,,得到對真實家庭場景真切的身心體驗。同時,,如果用戶對家電實施操作, Web網(wǎng)頁上就會彈出對話框,,然后通過HTTP協(xié)議向服務器請求數(shù)據(jù),,服務器通過控制單元獲取用戶請求的XML信息,再通過無線方式控制家電,,完成用戶的操作,。
家電完成操作后,反饋給智能終端,,智能終端再將信息反饋給服務器,,服務器實時更新數(shù)據(jù),這些數(shù)據(jù)就會被下載到客戶端,,這樣,,用戶就能在客戶端看到家電的變化。以空調為例,空調XML文件的配置信息如圖7所示,。
由于XML語言具有自描述,、可擴展、便于存儲和傳輸?shù)葍?yōu)點,,因此采用XML文件來配置家居的各項屬性,,其中定義了家居設備的唯一性標識id、三維空間位置position3d,、三維文件上傳路徑path3d,、電壓voltage、電流current等,。
3 實驗驗證
利用實驗室搭建好的硬件平臺對此系統(tǒng)進行演示實驗,,分別對實驗室的空調、白熾燈,、窗簾及熱水器等電器設備進行實驗驗證,,取得了很好的效果。這里以空調和白熾燈的控制為例進行說明,。登錄系統(tǒng)后,,系統(tǒng)開始運行,檢測到被控白熾燈未打開,,所以燈泡以常色顯示,。在三維虛擬場景中單擊燈泡控制按鈕并選擇開燈,隨著繼電器的閉合,,實驗室的燈泡打開,,并改變數(shù)據(jù)庫里的XML有關燈泡的狀態(tài)信息。三維場景檢測到燈泡狀態(tài)的改變后將虛擬場景中的燈泡“打開”,,并以紅色高光顯示,。同樣,空調的控制過程如圖8所示,。在三維場景中單擊空調,,在空調的控制按鈕中設置好空調的各項參數(shù),單擊確定后系統(tǒng)將根據(jù)各項參數(shù)通過Web服務器更改數(shù)據(jù)庫里有關空調的配置文件,。智能終端檢測到空調配置信息的改變,,模擬空調的遙控器發(fā)出紅外信號從而控制空調做出相應的動作。安裝在空調扇葉旁邊的傳感器檢測到扇葉的運動,,將采集扇葉擺動角度的數(shù)據(jù),,并更新數(shù)據(jù)庫里的信息。三維場景里的空調檢測到葉片角度的改變,,將角度數(shù)據(jù)作為參數(shù)傳遞給控制空調葉片擺動的函數(shù),,扇葉就會隨著實際物體的開合而運動,,使用戶恍若身臨其境。
本文提出的基于Web的智能家居系統(tǒng)和三維人機交互方案在實現(xiàn)家居智能化這一前提條件下,,利用虛擬現(xiàn)實技術人性化地創(chuàng)建了三維人機交互界面,,提高了用戶的沉浸感和現(xiàn)實感,增強了人機互動,,為智能家居行業(yè)的發(fā)展提出了一個新的思路,。同時為方便用戶使用,本文提出了一個能夠快速布局三維虛擬場景的方案,,使系統(tǒng)的擴展性和柔性得到了大大提高,,為虛擬場景的二次開發(fā)奠定了良好的基礎。
參考文獻
[1] HOSSAIN S K A,,RAHMAN A S M M,,El SADDIK A.Bridging the gap between virtual and real with second life client in a virtual home automation system[C].Electrical and Computer Engineering(CCECE),2011 24th Canadian Conference on,,IEEE,,2011:001212-001217.
[2] 張斌,饒培倫.智能家居人機交互績效的實驗分析——界面智能程度及任務認知模式的影響[J].工業(yè)工程與管理,,2007,,12(3):99-103.
[3] Hu Wenshan,Liu Guoping,,Zhou Hong.Web-based 3D control laboratory for remote real time experimentation[J].Industrial Electronics,,IEEE Transactions on,2013,,60(10):4673-4682.
[4] 林志勇,,孟令奎,趙春宇.基于多智能主體的網(wǎng)絡虛擬現(xiàn)實系統(tǒng)體系結構[J].武漢大學學報(信息科學版),,2007,,32(4):340-342.
[5] MURPHY S.甜蜜的智能家居[J].電子技術應用,2012,,38(3):9-10.
[6] 楊利平,,龔衛(wèi)國,李偉紅,,等.基于網(wǎng)絡技術的遠程智能家居系統(tǒng)[J].儀器儀表學報,2004,,25(3):308-311.