向大芳1,,侯文欣1,,蔡嘉敏2
(1. 廣東松山職業(yè)技術(shù)學(xué)院,廣東 韶關(guān),,512126;2. 名游網(wǎng)絡(luò)科技有限公司,,廣東 深圳 518067)
摘要:傳統(tǒng)LED燈集群控制系統(tǒng)采用列表清單實(shí)現(xiàn),有諸多缺陷。采用地圖和地圖標(biāo)記結(jié)合的視圖表現(xiàn)手法,,克服現(xiàn)有技術(shù)的缺點(diǎn)與不足,,研究LED燈在虛擬顯示終端中動態(tài)定位與自動尋址的地圖顯示方法,克服現(xiàn)有LED燈產(chǎn)品控制的地域限制,、功能限制以及集群控制場合下個體識別困難等問題,,結(jié)合距離定位技術(shù),提供一種通過地圖對LED燈直接定位尋址的便利功能,。實(shí)驗(yàn)結(jié)果表明,,該設(shè)計使用戶可以通過地圖上的標(biāo)識對相應(yīng)的實(shí)際地理位置上的LED燈進(jìn)行精確定位控制。
關(guān)鍵詞:動態(tài)定位,;虛擬地圖,;LED
中圖分類號:TP302.1文獻(xiàn)標(biāo)識碼:ADOI: 10.19358/j.issn.16747720.2016.24.004
引用格式:向大芳,侯文欣,,蔡嘉敏. LED燈在虛擬顯示終端中動態(tài)定位與自動尋址的研究與設(shè)計[J].微型機(jī)與應(yīng)用,,2016,35(24):1215,18.
0引言
科學(xué)技術(shù)的進(jìn)步以及新照明技術(shù)的出現(xiàn),對城市景觀及辦公照明的技術(shù)性和藝術(shù)性要求越來越高,。特別是國家提出“綠色照明工程”之后,,新型的照明光源LED(發(fā)光二極管)發(fā)光產(chǎn)品以節(jié)能、壽命長,、應(yīng)用廣泛,、控制靈活、色彩絢麗,、綠色環(huán)保等特點(diǎn)在照明和裝飾領(lǐng)域逐漸受到大家關(guān)注[13],。長期以來,LED燈的控制一直采用物理開關(guān)的形式,,在距離和操作上缺乏靈活性,。近期新興的云控、智能家居的概念采用互聯(lián)網(wǎng)通信技術(shù),,在家電上安裝WiFi模塊,,在其之間構(gòu)建網(wǎng)絡(luò),有利于通過監(jiān)測來檢查故障,,使得遠(yuǎn)程控制成為可能,,但是該類應(yīng)用普遍把每一種類的家電單獨(dú)看作一個獨(dú)立的個體,以識別名來區(qū)分不同家電,,大多應(yīng)用于小型場所,。當(dāng)該類應(yīng)用面向整個建筑物的LED燈集群控制的時候,難以區(qū)分個體,,管理不便。
1發(fā)展現(xiàn)狀
物聯(lián)網(wǎng)是新一代信息技術(shù)的重要組成部分,,也是“信息化”時代的重要發(fā)展階段[45],。隨著物聯(lián)網(wǎng)概念的普及,,消費(fèi)者對生活環(huán)境的體驗(yàn)指數(shù)要求不斷提高,智能家居這類新興行業(yè)備受關(guān)注,。隨著現(xiàn)今軟件技術(shù)和硬件技術(shù)的成熟,,使之從概念逐漸走向現(xiàn)實(shí)。智能家居帶給消費(fèi)者一種更優(yōu)質(zhì)的設(shè)備交互體驗(yàn),,但從目前上市的智能家居產(chǎn)業(yè)來看,,該類產(chǎn)品面向的消費(fèi)對象都集中于小型家庭、個體用戶等,,所管理的家居產(chǎn)品數(shù)量少,,無法應(yīng)對企業(yè)應(yīng)用規(guī)模級別的應(yīng)用環(huán)境,而解決該問題的技術(shù)難點(diǎn)在于在大規(guī)模的智能家居產(chǎn)品應(yīng)用場合下,,消費(fèi)者如何對每個個體的云控產(chǎn)品作出識別和單一控制[68],。以一個小型家庭為例,消費(fèi)者A購買了兩款智能家居產(chǎn)品,,那么消費(fèi)者A會分別為這兩款智能家居產(chǎn)品命名來區(qū)分它們,,當(dāng)消費(fèi)者A所使用產(chǎn)品擴(kuò)展到一定規(guī)模的時候,消費(fèi)者A需要面對的任務(wù)是為這如此大規(guī)模的設(shè)備作出識別標(biāo)記,,這是挑戰(zhàn)消費(fèi)者記憶力和耐性的問題,。
2動態(tài)定位與自動尋址的設(shè)計思路
為克服現(xiàn)有LED燈產(chǎn)品控制的地域限制、功能限制以及集群控制場合下個體識別困難等問題,,實(shí)現(xiàn)LED燈在顯示終端(如顯示器,、移動設(shè)備等)上的虛擬地圖中的顯示,涉及的關(guān)鍵問題是如何解決LED燈的動態(tài)定位以及自動尋址,。
研究方案以虛擬仿真方式提供可視化的LED集群遠(yuǎn)程控制系統(tǒng),。在該方案中,首先對LED燈所在的房間進(jìn)行虛擬化得到房間平面布局圖,在此基礎(chǔ)上對房間平面布局圖進(jìn)行網(wǎng)格劃分,,然后建立房間建筑輪廓圖的坐標(biāo)參考系并換算量化每個LED燈坐標(biāo)位置,,最后在給定的坐標(biāo)上繪制LED燈。結(jié)合距離定位技術(shù),,通過虛擬地圖對LED燈直接定位尋址,,使用戶可以通過地圖上的標(biāo)識對相應(yīng)的實(shí)際地理位置上的LED燈進(jìn)行精確定位控制。
3虛擬樓層房間平面布局
采集每一層樓的實(shí)際平面尺寸數(shù)據(jù),,由于是二維虛擬地圖,,因此不需要采集高度。根據(jù)采集的數(shù)據(jù)繪制等比例的樓層房間平面布局圖,,樓層房間平面布局圖以獨(dú)立文件的形式存儲在數(shù)據(jù)庫中的子庫(樓層房間平面布局圖片庫)中,,文件名與樓層編號一一對應(yīng),包含room_a、room_b,、room_c三個不同規(guī)格房間的等比例樓層房間平面布局圖,,如圖1所示。
4網(wǎng)格劃分樓層房間平面布局圖
在樓層房間布局圖上劃分網(wǎng)格,,每個房間看作由多個網(wǎng)格拼接而成,,如圖2所示。劃分的網(wǎng)格越多,,拼接出來的房間區(qū)域就越能模擬一些不規(guī)則的房間輪廓,,根據(jù)房間輪廓來劃分網(wǎng)格的區(qū)域所屬,存儲各個房間區(qū)域內(nèi)的所有網(wǎng)格數(shù)據(jù),,用以區(qū)分不同的房間,。
實(shí)際上,,任何不規(guī)則的房間輪廓都可以通過分配網(wǎng)格來描述,,一個三角形的房間可以看作是以高度依次遞減的長方形組成,而長方形則由多個網(wǎng)格組成,。網(wǎng)格劃分得精細(xì)度越高,,則描述出來的三角形輪廓的房間邊緣越平滑,誤差越少,,但同時用于存儲這些信息的網(wǎng)絡(luò)數(shù)據(jù)量也會越大,。如圖3所示,圖中左邊的圖形對應(yīng)的網(wǎng)格密度低,,圖中右邊的圖像對應(yīng)的網(wǎng)格密度高,,左右對比可以得出,網(wǎng)格密度高的房間邊緣比網(wǎng)格密度低的房間邊緣更平滑,,同時誤差也會更小,。
5換算LED燈的坐標(biāo)
采集LED燈的物理數(shù)據(jù)包括狀態(tài)、類型以及坐標(biāo)位置信息,,其中狀態(tài)包括打開,、關(guān)閉和故障等,類型包括落地?zé)艉蜅l形燈等,,坐標(biāo)位置信息可以是(x軸,,y軸)的形式,也可以是(曲徑,,弧度)的形式,。將采集到的LED燈的物理狀態(tài)數(shù)據(jù)存入數(shù)據(jù)庫中。
在樓層房間平面布局圖上建立樓層房間平面布局圖的坐標(biāo)參考系,,從數(shù)據(jù)庫中獲取LED燈信息,,以距離定位的方式記錄每個LED燈相對于樓層房間平面布局圖參照點(diǎn)的坐標(biāo)位置,,并將這些數(shù)據(jù)存儲于數(shù)據(jù)庫中。這些坐標(biāo)位置信息將被用于在樓層房間平面布局圖上動態(tài)繪制LED燈,。
6繪制LED燈
繪制LED燈時,,在房間地圖的z軸(垂直延伸到顯示區(qū)的軸)上繪制一個虛擬繪圖區(qū),,之后以單個LED燈為單位,,根據(jù)LED的類型選擇不同的填充圖案,生成浮動層,。根據(jù)從數(shù)據(jù)庫獲取的LED燈坐標(biāo)等信息,,通過LED燈信息資源的相對位置信息與頁面房間地圖實(shí)際顯示大小換算出該浮動層相對于頁面房間地圖的位置。設(shè)置浮動層的偏移距離,,并把浮動層添加到虛擬繪圖區(qū)內(nèi),。
假設(shè)房間平面圖顯示區(qū)域是600×400(像素),通過服務(wù)器從數(shù)據(jù)庫中獲取到的LED燈信息如圖4所示,。
LED_A 類型:落地?zé)?,坐?biāo)信息:x=229, y=149
LED_B 類型:條形燈,坐標(biāo)信息:x=341, y=237
繪制虛擬繪圖區(qū)的方式是建立一個與房間平面圖等大的div(圖層),,記為paint_div,, position(位置)設(shè)置為relative(相對),使該虛擬繪圖層div與房間平面圖重疊,,zindex(zindex 屬性設(shè)置元素的堆疊順序)在房間平面圖之上,。
圖6LED燈集群控制系統(tǒng)流程圖接下來就可以把生成的LED燈的浮動層添加到虛擬繪圖區(qū)了。以LED_A為例,,創(chuàng)建一個代表LED_A燈的浮動層div,,position設(shè)置為absolute(絕對),添加到上述虛擬繪圖區(qū)paint_div內(nèi),,則該LED_A燈浮動層div的位置將會相對于虛擬繪圖區(qū)paint_div,, 把left(浮動層左邊緣到虛擬繪圖區(qū)左邊緣的距離)和top(浮動層上邊緣到虛擬繪圖區(qū)上邊緣的距離)分別設(shè)置為LED燈坐標(biāo)信息里的x和y, background(背景)設(shè)置為LED燈類型相應(yīng)的圖標(biāo),,由此把LED燈的位置反饋在房間平面圖上,,如圖5所示。
如果實(shí)際需要顯示的區(qū)間大小為300×200(像素)(縮放50%),,則先把房間平面圖根據(jù)顯示區(qū)間縮放顯示,,并建立一個與該顯示區(qū)間等大的虛擬繪圖層使其重疊與房間平面圖的上方,然后將LED燈信息進(jìn)行等比例換算后繪制到虛擬繪圖層上,。以LED_A為例,,創(chuàng)建一個固定大小的LED燈浮動層像素區(qū)域(如默認(rèn)值為40×40,則縮放后為20×20),,把該像素區(qū)域添加到虛擬繪圖層上,,根據(jù)x=229,,y=149,設(shè)置像素區(qū)域以左上角為原點(diǎn),,偏移量算法為實(shí)際偏移量-該軸實(shí)際繪圖長度/2,,則向下偏移為(149-20/2)=139像素,向右偏移量為(229-20/2)=219像素,。
7LED燈集群控制系統(tǒng)的設(shè)計
LED燈集群控制系統(tǒng)的流程如圖6所示,。系統(tǒng)采用MVC模式設(shè)計,系統(tǒng)先期采集并存儲樓層房間平面布局圖和LED燈信息,。
用戶首先查看房間布局,,從系統(tǒng)數(shù)據(jù)庫中獲取樓層房間平面布局圖,然后系統(tǒng)建立與上述樓層房間平面布局圖大小相等的網(wǎng)格圖,,在該網(wǎng)格圖中存儲各個房間區(qū)域內(nèi)的不規(guī)則房間輪廓所對應(yīng)的網(wǎng)格數(shù)據(jù),,用以描述同一樓層的各個房間區(qū)域。在房間的建筑輪廓圖上建立房間建筑輪廓圖的坐標(biāo)參考系,,根據(jù)從數(shù)據(jù)庫中獲取的LED燈信息以距離定位的方式換算每個LED燈相對于房間建筑輪廓圖參照點(diǎn)的坐標(biāo),,完成坐標(biāo)換算后將這些數(shù)據(jù)持久化到系統(tǒng)數(shù)據(jù)庫中。在虛擬地圖的繪制階段,,系統(tǒng)加載房間的建筑輪廓圖,,并在其上繪制一個虛擬繪圖區(qū),根據(jù)不同LED類型對應(yīng)的不同的填充圖案生成浮動層,;而后從數(shù)據(jù)庫獲取LED燈的坐標(biāo)位置,,根據(jù)LED燈信息資源的相對位置信息與頁面房間地圖實(shí)際顯示大小換算出該浮動層相對于頁面房間地圖的位置;最后根據(jù)縮放比例設(shè)置浮動層的偏移距離,,并把浮動層添加到虛擬繪圖區(qū)域內(nèi),。系統(tǒng)繪制LED過程中的時序如圖7所示。
繪制完成后,,系統(tǒng)在樓層房間平面布局圖上監(jiān)聽點(diǎn)擊事件的功能,,當(dāng)鼠標(biāo)點(diǎn)擊樓層房間平面布局圖時,捕獲鼠標(biāo)事件發(fā)生處相對于樓層房間平面布局圖的相對位置,,分析點(diǎn)擊處所屬網(wǎng)格的屬主以確認(rèn)該點(diǎn)擊操作所點(diǎn)擊的區(qū)域,,同時在該區(qū)域上增加各種房間操作事件以及LED燈位置移動功能,用戶可以通過鼠標(biāo)點(diǎn)擊單個LED燈或用鼠標(biāo)框選多個LED燈來對選中的LED燈進(jìn)行移動,,系統(tǒng)會自動計算位置移動后的LED燈坐標(biāo)位置信息并更新數(shù)據(jù)庫,。
8結(jié)論
采用地圖標(biāo)記定位到云控產(chǎn)品的方式克服了現(xiàn)有LED燈產(chǎn)品控制的地域限制、功能限制及集群控制場合下個體識別困難等問題,,結(jié)合距離定位技術(shù),,使用戶可以通過地圖上的標(biāo)識對相應(yīng)的實(shí)際地理位置上的LED燈進(jìn)行精確定位控制。該方式拋棄了傳統(tǒng)的列表清單,,采用地圖和地圖標(biāo)記結(jié)合的視圖表現(xiàn)手法,,較原始的列表清單更適用于大規(guī)模圖7LED繪制過程時序圖
數(shù)據(jù)的描述,,避免大數(shù)據(jù)下的列表分頁切換,優(yōu)化用戶體驗(yàn),。通過預(yù)先儲存的地圖資源和云控產(chǎn)品的地理描述數(shù)據(jù),,能夠準(zhǔn)確地在地圖資源上繪制出各個云控產(chǎn)品的位置。在這種地圖呈現(xiàn)的方式下,,地圖上的標(biāo)記可以更直觀地反饋出其與現(xiàn)實(shí)中物理個體的對照聯(lián)系,,用戶無需再為個體識別和維護(hù)投入更多的工作量,所有地圖上的云控產(chǎn)品標(biāo)記均由系統(tǒng)自動生成,、維護(hù),。只需要在初次使用的時候初始化地圖資源,在地圖上調(diào)整位置數(shù)據(jù),,儲存到數(shù)據(jù)庫中,系統(tǒng)根據(jù)該地理數(shù)據(jù)信息在地理資源上描繪出地圖標(biāo)記,,用戶只需要根據(jù)地圖上的標(biāo)記就能夠快速方便地尋址到需要控制的目標(biāo)單元,。同時采用地圖和地圖標(biāo)記結(jié)合的視圖表現(xiàn)手法,可以提高故障反饋效率,,當(dāng)產(chǎn)品發(fā)生故障時能夠從地圖定位到故障產(chǎn)品所在的位置,。該方式為實(shí)現(xiàn)LED燈產(chǎn)品的無線集群控制提供有益幫助,便于實(shí)現(xiàn)對LED燈工作狀態(tài)的監(jiān)控和高效的管理功能,,具有很好的工業(yè)應(yīng)用前景,。
參考文獻(xiàn)
[1] 鐘秋波.基于NIOS軟核的LED景觀燈控制系統(tǒng)設(shè)計[D].哈爾濱:哈爾濱理工大學(xué),2006.
?。?] 周曉波,,郭順生.基于OpenGL的燈光仿真系統(tǒng)[J].計算機(jī)仿真,2004,21(1):9395.