<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 設(shè)計應(yīng)用 > 基于RFID古樹名木管理三維信息系統(tǒng)的設(shè)計與實現(xiàn)

          基于RFID古樹名木管理三維信息系統(tǒng)的設(shè)計與實現(xiàn)

          作者: 時間:2014-06-17 來源:網(wǎng)絡(luò) 收藏

          古樹名木是個基因庫,是歷史的見證,是研究自然史的重要資料,是一種吉祥的象征。它不可再生,也不可永生。因此,研究保護古樹名木、管理古樹名木信息具有重要意義?,F(xiàn)階段我國多以手動檔案管理、信息記錄的方式管理古樹名木,費時費力,共享化低,成本高,建檔項目不全,對于各類數(shù)據(jù)不能進行高效的查詢以及實時的更新[1].新型的管理手段不斷推動古樹名木信息管理的發(fā)展。射頻識別RFID(Radio Frequency Identification)技術(shù)是一項利用射頻信號通過空間耦合(交變磁場或電磁場)實現(xiàn)無接觸信息傳遞并通過所傳遞的信息達到識別目的的技術(shù)。它是一種非接觸性自動識別技術(shù),能夠用在各種惡劣環(huán)境中,無需人為干預(yù),通過射頻信號即可自動識別目標(biāo)對象并獲取相關(guān)數(shù)據(jù)。隨著近幾年物聯(lián)網(wǎng)技術(shù)的迅速發(fā)展,射頻識別技術(shù)被廣泛應(yīng)用在各個領(lǐng)域,如門禁控制、包裹識別追蹤、文檔追蹤管理、產(chǎn)品防偽、高速公路收費系統(tǒng)等[2-4].本文以RFID、物聯(lián)網(wǎng)等關(guān)鍵技術(shù)為支撐,在古樹名木三維管理信息系統(tǒng)[5]基礎(chǔ)上,采用便攜式數(shù)據(jù)處理器、PC端等組件設(shè)計出基于RFID的古樹名木三維管理信息系統(tǒng),采用信息更新聯(lián)動機制,實現(xiàn)數(shù)據(jù)的信息化管理和跟蹤保護。相對于人工手動建檔,系統(tǒng)更加智能化,極大地減少工作量,外業(yè)工作者可以實時地查詢了解古樹的基本信息。而在三維平臺上以360°全景播放、圖片瀏覽的方式使用戶更了解古樹名木的生長環(huán)境。

          1系統(tǒng)業(yè)務(wù)功能

          系統(tǒng)采用三層在移動終端、、客戶端之間實現(xiàn)三方通信。移動終端實現(xiàn)信息采集、遠程數(shù)據(jù)查詢、添加、修改等功能;端主要處理移動終端的數(shù)據(jù)請求以及客戶端的授權(quán)請求;客戶端軟件實現(xiàn)360°全景播放、圖片瀏覽、歷史追蹤、信息管理的功能,其業(yè)務(wù)功能如圖1所示。



          2系統(tǒng)體系結(jié)構(gòu)


          根據(jù)業(yè)務(wù)功能需求,將系統(tǒng)總體結(jié)構(gòu)劃分為數(shù)據(jù)層、網(wǎng)絡(luò)傳輸層、應(yīng)用層。系統(tǒng)體系結(jié)構(gòu)如圖2所示。

          3相關(guān)技術(shù)

          3.1信息采集

          系統(tǒng)根據(jù)GPS定位數(shù)據(jù)(NMEA0183協(xié)議),選擇解析GPGGA幀結(jié)構(gòu)數(shù)據(jù),判斷數(shù)據(jù)有效時,提取經(jīng)度、緯度、大地水準(zhǔn)面高度,定位數(shù)據(jù)精確到十分位,并轉(zhuǎn)化為度分秒式。

          系統(tǒng)中RFID讀寫模塊在EPC存儲器中讀寫電子標(biāo)簽ID,標(biāo)簽長度不超過12 B;在用戶存儲器(USER)中讀寫古樹名木編號(古樹信息的唯一標(biāo)識)。古樹名木編號字符串可以是文字、純數(shù)字、字母,也可以是混合形式的。判斷輸入的古樹名木編號字符串是否為純數(shù)字形式,結(jié)果為假時用CnEnCStringToHexUnicodeCString()函數(shù)將字符轉(zhuǎn)換成十六進制,一個字符(無論中文還是英文)對應(yīng)2 B,即4個十六進制數(shù)據(jù)。利用UCHAR類型的uWriteBHData[]變量存儲十六進制的字符,每兩個字節(jié)寫入一次,直至所有字節(jié)全部寫入標(biāo)簽。根據(jù)讀地址長度,讀出電子標(biāo)簽上存儲的十六進制字符,每4個十六進制為一個字符,利用HexUnicodeCStringToCnEnCString()函數(shù)讀出存儲的所有字符,一個地址長度代表讀取1個字符。結(jié)果為真時則不需要進行十六進制轉(zhuǎn)換,直接寫入與讀取,以減少存儲消耗,此時一個地址長度代表讀取4個數(shù)字。福州園林局的古樹名木編碼有時以中英文為開頭,如“閩A”,這樣的設(shè)計能很好地解決編號是中英文的情況。

          3.2古樹信息管理

          進入古樹名木信息管理模塊時,系統(tǒng)將自動傳入GPS定位信息與RFID綁定信息?;赪inCE平臺上的數(shù)據(jù)庫API函數(shù)接口,系統(tǒng)通過設(shè)計古樹信息編輯對話框?qū)崿F(xiàn)對古樹信息的相關(guān)編輯操作,主要包括對信息的查詢、修改、添加等功能。信息的查詢主要分為本機查詢和遠程查詢兩種方式。本機查詢主要查詢手持端數(shù)據(jù)庫信息,而遠程查詢主要顯示服務(wù)器上的數(shù)據(jù)庫信息,此時若本機數(shù)據(jù)庫中沒有此遠程信息,則保存該信息。信息添加功能主要增添新采集的數(shù)據(jù)信息,從而保證數(shù)據(jù)的不斷更新。同時,用戶還可以對數(shù)據(jù)庫中的信息進行動態(tài)修改;根據(jù)園林局野外采集信息定義古樹名木數(shù)據(jù)庫表結(jié)構(gòu)體(REC_TREE);遍歷本機數(shù)據(jù)庫,判斷每一條記錄的編號屬性值(strTreeNo)是否等于RFID模塊從標(biāo)簽上讀取的編號(m_strBianHao)。移動終端數(shù)據(jù)庫設(shè)計流程如圖3所示。



          3.3信息更新聯(lián)動機制

          移動終端基于UDP發(fā)送信息添加、修改操作的請求,應(yīng)用服務(wù)器根據(jù)請求對數(shù)據(jù)庫服務(wù)器作出處理,并啟動聯(lián)動機制,反饋信息給移動終端的同時將聯(lián)動數(shù)據(jù)傳輸給客戶端。信息更新聯(lián)動機制實現(xiàn)了移動終端、服務(wù)器端、客戶端之間的三方通信,保證數(shù)據(jù)的一致性。

          (1)首先自定義移動終端與服務(wù)器端間的基本數(shù)據(jù)格式:“ID$OPType$TreeID$Data#”,字段之間用“$”間隔,結(jié)束標(biāo)志為“#”。

          說明:

          ID:手持機編號(巡檢員編號)。

          OPType:數(shù)據(jù)操作類型

          01:遠程古樹信息查詢;

          02:古樹信息添加;

          03:古樹信息修改;

          06:古樹信息批量上傳。

          TreeID:數(shù)據(jù)庫存儲字段、編號等。

          Data格式:“字段名@屬性值@字段名@屬性值”。

          包頭、包尾、自定義數(shù)據(jù)構(gòu)成了UDP傳輸數(shù)據(jù)包結(jié)構(gòu)。服務(wù)器端開啟接收線程(RecvThread),利用recvfrom()函數(shù)接收數(shù)據(jù)包、HandlePackage()函數(shù)處理數(shù)據(jù)包。通過驗證包頭、包尾、包長度的正確性,在OnUdpCERecv回調(diào)函數(shù)中解析所有字段,根據(jù)數(shù)據(jù)操作類型對服務(wù)器數(shù)據(jù)庫作出相應(yīng)操作,通過sendto()函數(shù)反饋給移動終端。

          (2)服務(wù)器端與客戶端間傳輸數(shù)據(jù)用于授權(quán)訪問與傳輸自定義信息。將來自移動終端的聯(lián)動數(shù)據(jù)作為strMessage發(fā)送給客戶端??蛻舳藙t采用編碼方式,將“樹種”屬性值對應(yīng)的編碼與模型庫中的模型綁定。若移動終端請求添加新信息,則軟件平臺中將自動在三維地形上添加編碼對應(yīng)的三維幾何樹木模型;若移動終端請求修改信息,則客戶端將生成新的數(shù)據(jù)表,用以追蹤古樹名木的歷史位置。

          采用多線程處理技術(shù)創(chuàng)建監(jiān)聽套接字,開啟接收線程(ProcRecvHandle)解析授權(quán)文件。若接收的自定義信息是“Need access”,則進行模塊匹配,判斷授權(quán)文件是否過期,客戶端數(shù)量是否超過授權(quán)最大數(shù)量限制,授權(quán)成功則利用AddClient()函數(shù)將客戶端實例信息添加到list中,并向list中的客戶端IP發(fā)送“Accept”信息告知授權(quán)成功。若接收的自定義信息是“HeartBeat”,則向客戶端發(fā)送“Alive”信息告知心跳連接正常。若接收的自定義信息是“Close”,則將客戶端實例信息從list中去除。

          4系統(tǒng)的實現(xiàn)與應(yīng)用

          4.1系統(tǒng)實現(xiàn)

          系統(tǒng)在Visual Studio 2008開發(fā)環(huán)境下,基于WinCE平臺、Windows平臺,集成GPS定位技術(shù)、RFID射頻識別技術(shù)、網(wǎng)絡(luò)傳輸技術(shù),利用WinCE自帶數(shù)據(jù)庫API、SQL Server數(shù)據(jù)庫管理技術(shù),實現(xiàn)了基于RFID的古樹名木管理三維信息系統(tǒng)。

          4.2系統(tǒng)應(yīng)用

          (1)野外信息采集

          本文選擇福州市長汀村長壽宮的古榕,古樹編號為“閩A00057”,保護等級為二級,如圖4(a)所示;將電子標(biāo)簽綁定在古樹名木上,如圖4(b)所示。

          首先登陸系統(tǒng)并設(shè)置公網(wǎng)IP地址,打開主界面,如圖5(a)所示。在樹根處開啟GPS定位模塊接收GPGGA信息,當(dāng)數(shù)據(jù)狀態(tài)有效時獲取原始經(jīng)度、緯度、海拔信息并轉(zhuǎn)換為度分秒形式。開啟RFID讀寫模塊讀取電子標(biāo)簽ID,寫入編號“閩A00057”,再一次讀取編號信息確保編號寫入成功。選擇傳輸網(wǎng)絡(luò)(GPRS/WiFi),進入古樹信息管理模塊,通過該模塊發(fā)送聯(lián)動數(shù)據(jù)給服務(wù)器,



          (2)三維信息管理

          服務(wù)器端處理并反饋移動終端的請求,同時客戶端也會收到數(shù)據(jù)庫數(shù)據(jù)更新的提示信息。利用LOD技術(shù)選擇簡單的方式來表達要渲染的模型。當(dāng)觀察者距離模型較遠時,利用billboard技術(shù)實時繪制二維圖像,如圖6中綠色小樹圖標(biāo)所示;當(dāng)觀察者越靠近模型,模型繪制越精細(xì)。對于新增記錄,圖6中行政區(qū)劃面板將自動識別其所屬的行政區(qū),并在地圖顯示面板添加閃爍圖標(biāo),標(biāo)識新記錄在二維平面上的地理位置。古樹名木移植復(fù)壯會導(dǎo)致地理位置坐標(biāo)發(fā)生變化,可以查詢某編號的古樹名木的歷史移植情況。同時系統(tǒng)支持照片、360°全景形式展示古樹名木及其周邊的信息

          本文設(shè)計的基于RFID古樹名木管理三維信息系統(tǒng)充分利用了具有在極端環(huán)境下動態(tài)快速更改標(biāo)簽數(shù)據(jù)的特點,以及移動終端自帶的數(shù)據(jù)庫,實現(xiàn)了數(shù)據(jù)的遠程查詢、更新功能,拓展了信息更新聯(lián)動機制,實現(xiàn)三方通信及三維平臺上信息可視化,使得系統(tǒng)除了能實現(xiàn)信息與稀有古樹名木的唯一綁定、統(tǒng)一管理外,還能實時繪制三維古樹名木幾何模型及其生長環(huán)境。這種數(shù)據(jù)驅(qū)動的方式更有利于古樹名木三維信息的管理。

          本文引用地址:http://www.ex-cimer.com/article/259408.htm


          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();