基于RFID和Android的林木調(diào)查系統(tǒng)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
引言
RFID (Radio Frequency Identification)即射頻識(shí)別技術(shù), 又稱無線射頻識(shí)別,是一種通信技術(shù),可通過無線電訊號(hào)識(shí)別 特定目標(biāo)、讀寫相關(guān)數(shù)據(jù),而無需識(shí)別系統(tǒng)與特定目標(biāo)之間建 立機(jī)械或光學(xué)接觸。
RFID技術(shù)可以廣泛應(yīng)用于針對(duì)林木查驗(yàn)以及生物多樣性 保護(hù)工作的外業(yè)調(diào)查、統(tǒng)計(jì)、保護(hù)、存檔備案等方面,例如: 各類資源清查,林業(yè)專題調(diào)查,種子園母樹林調(diào)查、優(yōu)良及 原生樹種種源保護(hù),古樹名木、重要觀賞林木保護(hù)等。
1系統(tǒng)分析
在林業(yè)信息化進(jìn)程不斷加速及林業(yè)物聯(lián)網(wǎng)應(yīng)用研究快速 發(fā)展的背景下,本文以各類資源清查、林業(yè)專題調(diào)查、樹種保護(hù)、 科學(xué)研究等具體業(yè)務(wù)為應(yīng)用依托,將Android技術(shù)和RFID技 術(shù)結(jié)合應(yīng)用于森林資源調(diào)查,實(shí)現(xiàn)了林木調(diào)查系統(tǒng)的設(shè)計(jì)與 研發(fā)。該系統(tǒng)主要由電子標(biāo)簽、服務(wù)器、野外采集系統(tǒng)組成, 其主要應(yīng)用表現(xiàn)為立木定位調(diào)查、立木復(fù)位調(diào)查等。將該系統(tǒng) 用于立木定位調(diào)查的基本流程:首先是將嵌入式立木標(biāo)簽在 同一高度、同一方位以打孔等方式嵌入立木;然后通過RFID 手持掃描終端獲得該立木的ID,并對(duì)該立木采集的相關(guān)信息 進(jìn)行記錄;最后將立木信息通過Android終端的內(nèi)置MySQL 數(shù)據(jù)庫保存到存儲(chǔ)卡或者借助Wi-Fi、3G網(wǎng)絡(luò)等保存到遠(yuǎn)程 服務(wù)器的數(shù)據(jù)庫。
將該系統(tǒng)用于立木復(fù)位調(diào)查的基本流程:一是通過 RFID手持掃描終端獲得該立木的ID,并將其發(fā)送到遠(yuǎn)程服 務(wù)器;二是用遠(yuǎn)程服務(wù)器獲得手持終端傳送的ID號(hào),并將該 立木的歷史調(diào)查數(shù)據(jù)發(fā)送到手持終端;對(duì)于沒有網(wǎng)絡(luò)支持的復(fù) 位調(diào)查,可將歷史數(shù)據(jù)拷貝到SD存儲(chǔ)卡,根據(jù)掃描ID從存 儲(chǔ)卡返回歷史調(diào)查信息;三是對(duì)該立木信息的重新采集,并 在手持終端對(duì)其采集數(shù)據(jù)進(jìn)行修改記錄,然后選擇保存到本 機(jī)或發(fā)送到遠(yuǎn)程服務(wù)器。
2系統(tǒng)設(shè)計(jì)
2.1系統(tǒng)總體設(shè)計(jì)
本系統(tǒng)主要由電子標(biāo)簽、野外采集系統(tǒng)、服務(wù)器端組 成。電子標(biāo)簽作為立木的唯一標(biāo)示,包括低頻嵌入式立木標(biāo) 簽和高頻可讀寫立木標(biāo)簽:低頻嵌入式立木標(biāo)簽適用于可以 進(jìn)行鉆孔嵌入的目標(biāo)對(duì)象中;高頻可讀寫立木標(biāo)簽適用于需 實(shí)時(shí)讀寫目標(biāo)信息及不宜鉆孔嵌入的目標(biāo)對(duì)象中。野外采集 系統(tǒng)主要用于立木調(diào)查數(shù)據(jù)的采集與記錄,包括采集終端和 數(shù)據(jù)采集軟件:采集終端可以選擇加載有RFID掃描模塊的 Android智能終端,也可以是具備藍(lán)牙功能的RFID手持掃碼 機(jī)與Android智能終端的組合,其中由RFID掃碼機(jī)讀取標(biāo) 簽ID并通過藍(lán)牙將其發(fā)送至Android智能終端;數(shù)據(jù)采集軟 件需根據(jù)具體業(yè)務(wù)的要求進(jìn)行設(shè)計(jì)與開發(fā),并安裝在Android 智能終端上使用。服務(wù)器端,數(shù)據(jù)庫用于立木調(diào)查信息的存 儲(chǔ)與更新,數(shù)據(jù)庫管理系統(tǒng)用于服務(wù)器端數(shù)據(jù)庫的管理維護(hù), WebService負(fù)責(zé)服務(wù)器數(shù)據(jù)庫與野外采集終端的信息交互等。 圖1所示為系統(tǒng)的總體框架圖。
選擇低頻嵌入式立木標(biāo)簽,以林木調(diào)查應(yīng)用為例,介紹其在實(shí)際工作中的具體應(yīng)用流程,在野外采集工作中,用戶 需根據(jù)Android終端的網(wǎng)絡(luò)連接情況,選擇數(shù)據(jù)采集的存儲(chǔ) 方式,有網(wǎng)絡(luò)支持的情況下可選擇本機(jī)存儲(chǔ)或遠(yuǎn)程數(shù)據(jù)庫存 儲(chǔ),無網(wǎng)絡(luò)連接只能選擇本機(jī)存儲(chǔ)。定位調(diào)查時(shí),首先使用 手持掃碼機(jī)掃描獲得標(biāo)簽ID,并通過其藍(lán)牙功能將其發(fā)送到Android智能終端數(shù)據(jù)采集軟件相應(yīng)的ID輸入框,或者選擇 加載RFID掃描模塊的Android手持終端掃描獲取標(biāo)簽ID, 并通過串口讀數(shù)據(jù)將其寫入數(shù)據(jù)采集軟件相應(yīng)的ID輸入框; 然后進(jìn)行該立木其它采集信息的輸入、記錄;最后將記錄數(shù) 據(jù)保存到本機(jī)存儲(chǔ)卡或者通過WebService保存到遠(yuǎn)程服務(wù) 器。復(fù)位調(diào)查時(shí),Android終端在網(wǎng)絡(luò)支持環(huán)境下會(huì)將獲取的 ID號(hào)通過WebService發(fā)送到遠(yuǎn)程服務(wù)器,同時(shí)遠(yuǎn)程服務(wù)器 根據(jù)ID將該立木的歷史調(diào)查數(shù)據(jù)反饋給Android終端,用戶 可以根據(jù)當(dāng)前立木調(diào)查情況對(duì)記錄進(jìn)行修改,并將其保存到 本機(jī)或遠(yuǎn)程數(shù)據(jù)庫(后文均以加載有RFID模塊的Android手 持終端為例進(jìn)行相關(guān)設(shè)計(jì)及應(yīng)用的介紹)圖2所示為該應(yīng)用 的具體實(shí)現(xiàn)流程。
2.2數(shù)據(jù)庫設(shè)計(jì)
數(shù)據(jù)庫設(shè)計(jì)是指對(duì)于一個(gè)給定的應(yīng)用環(huán)境,構(gòu)造(設(shè)計(jì)) 優(yōu)化的數(shù)據(jù)庫邏輯模式和物理結(jié)構(gòu),并據(jù)此建立數(shù)據(jù)庫及其 應(yīng)用系統(tǒng),使之能夠有效地存儲(chǔ)和管理數(shù)據(jù),滿足各種用戶 的應(yīng)用需求叫數(shù)據(jù)庫設(shè)計(jì)步驟包括,需求分析、概念設(shè)計(jì)、 邏輯設(shè)計(jì)、物理結(jié)構(gòu)設(shè)計(jì)、實(shí)施、運(yùn)行和維護(hù)六個(gè)階段,數(shù) 據(jù)庫設(shè)計(jì)的目標(biāo)是為用戶和各種應(yīng)用系統(tǒng)提供一個(gè)信息基礎(chǔ) 設(shè)施和高效的運(yùn)行環(huán)境叫一個(gè)好的數(shù)據(jù)庫設(shè)計(jì),可以提高 應(yīng)用系統(tǒng)的運(yùn)行效率,降低后期數(shù)據(jù)庫維護(hù)的成本。
針對(duì)不同的業(yè)務(wù)應(yīng)用,所涉及的數(shù)據(jù)各有不同,但其數(shù) 據(jù)庫設(shè)計(jì)的思路、方法基本相同,本文以資源清查中數(shù)據(jù)形 式最簡單的一類調(diào)查為例(后文的相關(guān)設(shè)計(jì)均以一類調(diào)查為 例),基于E-R模型的數(shù)據(jù)庫設(shè)計(jì)方法,介紹針對(duì)一類調(diào)查數(shù) 據(jù)采集軟件的數(shù)據(jù)庫設(shè)計(jì)。一類調(diào)查的采集數(shù)據(jù)主要包括樣 地因子和樣木因子[8],其中,樣木因子主要為每木檢尺數(shù)據(jù), 包括樣木ID、樹高、胸徑、冠幅、樹種、位置等;樣地因子 包括樣地ID、樣地編號(hào)、行政編號(hào)、樣地類別、樣地長度、 樣地寬度、縱坐標(biāo)、橫坐標(biāo)、造林時(shí)間、郁閉度、土壤類型、 土壤質(zhì)地、草本覆蓋度等。調(diào)查中包括多個(gè)樣地,而一個(gè)樣 地內(nèi)又包含多個(gè)樣木,但一個(gè)樣木只能隸屬于一個(gè)樣地,因此, 兩者之間就存在了一對(duì)多的關(guān)系,且它們之間通過樣木因子表 “樣地ID”屬性作為外鍵關(guān)聯(lián)。一類調(diào)查數(shù)據(jù)采集軟件的數(shù)據(jù) 庫設(shè)計(jì)E-R圖如圖3所示。
2.3功能設(shè)計(jì)
2.3.1終端功能設(shè)計(jì)
根據(jù)立木調(diào)查野外采集系統(tǒng)的應(yīng)用流程設(shè)計(jì),將其存儲(chǔ) 功能劃分為本機(jī)SD卡存儲(chǔ)和遠(yuǎn)程服務(wù)器存儲(chǔ)兩種方式。本 機(jī)存儲(chǔ)是利用Android內(nèi)嵌的開源數(shù)據(jù)庫SQLite實(shí)現(xiàn),通過 對(duì)一系列數(shù)據(jù)庫操作將其采集數(shù)據(jù)以*.db的形式保存到SD卡, 用戶可通過數(shù)據(jù)線或讀卡器將采集數(shù)據(jù)導(dǎo)入電腦,并將其導(dǎo)入 服務(wù)器的數(shù)據(jù)庫;遠(yuǎn)程服務(wù)器存儲(chǔ)是利用Web Service技術(shù)[6], 通過Wi-Fi或者3G網(wǎng)絡(luò),將采集數(shù)據(jù)直接保存到遠(yuǎn)程數(shù)據(jù) 庫,其中對(duì)遠(yuǎn)程數(shù)據(jù)庫進(jìn)行操作,首先需要進(jìn)行遠(yuǎn)程用戶驗(yàn) 證,為保證用戶信息的安全,本系統(tǒng)在驗(yàn)證時(shí)采用了 BASE64 加密算法對(duì)用戶名、密碼進(jìn)行加密,并在服務(wù)器端進(jìn)行相應(yīng)的 算法解密。
森林資源一類調(diào)查的主要采集數(shù)據(jù)為樣地信息和樣木信 息,因此,將野外采集系統(tǒng)設(shè)計(jì)為樣地因子記錄和樣木因子 記錄兩大功能。這兩大功能在實(shí)際應(yīng)用中是相輔的,進(jìn)行樣木 調(diào)查記錄之前,系統(tǒng)首先要檢查數(shù)據(jù)庫樣地因子表中是否存 在樣地記錄信息,不存在則提示首先添加樣地,存在則返回 查詢得到的樣地ID列表;樣木調(diào)查過程中,用戶可以根據(jù)樣 地代碼列表選擇相對(duì)應(yīng)的樣地,這樣就保證了數(shù)據(jù)庫中樣木 因子記錄表與樣地因子記錄表的關(guān)聯(lián),從而減少數(shù)據(jù)庫中的 數(shù)據(jù)冗余,降低數(shù)據(jù)庫維護(hù)的成本與難度。系統(tǒng)樣木因子記 錄功能的具體實(shí)現(xiàn)流程如圖4所示。
2.3.2服務(wù)器端功能設(shè)計(jì)
服務(wù)器端,主要是Web服務(wù)的功能設(shè)計(jì),包括用戶驗(yàn)證、 樣地代碼查詢、樣地檢查、添加樣地、樣木檢查、添加樣木等。
Web服務(wù)的用戶驗(yàn)證功能用于智能終端的遠(yuǎn)程存儲(chǔ),它首先 對(duì)得到的用戶名、密碼進(jìn)行BASE64算法解密并根據(jù)用戶信 息庫對(duì)其進(jìn)行驗(yàn)證并給出相應(yīng)的錯(cuò)誤輸入反饋機(jī)制,以便用戶 更好的理解自己的輸入錯(cuò)誤。樣地檢查、樣木檢查功能用于檢 查待記錄樣地及樣木是否已經(jīng)記錄,并存在于數(shù)據(jù)庫中,避 免用戶在野外調(diào)查中重復(fù)調(diào)查、重復(fù)添加,并減少其對(duì)數(shù)據(jù)庫 后期維護(hù)造成的麻煩。樣地代碼查詢功能,是將獲得的樣地 代碼以列表形式返回給用戶,供用戶在樣木調(diào)查時(shí)選擇,使得 樣木因子記錄表和樣地因子記錄表之間不缺失任何一條記錄 的關(guān)聯(lián)。添加樣地、添加樣木則供用戶進(jìn)行樣地調(diào)查數(shù)據(jù)及樣 木調(diào)查數(shù)據(jù)的遠(yuǎn)程存儲(chǔ)。
3系統(tǒng)實(shí)現(xiàn)
3.1開發(fā)及運(yùn)行環(huán)境
手持終端:選用MT35W-NL-LF智能終端,是一款具有GPS定位模塊、RFID讀寫模塊以及通訊模塊的Android終 端,主機(jī)操作系統(tǒng)為Android2.3.7 ;使用Eclipse開發(fā)工具,由 KSoap框架及Java語言編程實(shí)現(xiàn)。
服務(wù)器端:Windows Server 2003 操作系統(tǒng);Microsoft
SQL Server2005 和 Tomcat 6.0 的支撐環(huán)境;使用 My Eclipse 開發(fā)工具的xfire框架,由Java語言編程實(shí)現(xiàn)。
3.2主要技術(shù)實(shí)現(xiàn)
立木標(biāo)簽ID的獲取是通過串口讀數(shù)據(jù)來實(shí)現(xiàn)的,對(duì)于 選擇Android終端加載的LFRFID模塊,當(dāng)其電源打開時(shí), 只要有標(biāo)簽處在其有效范圍內(nèi)便會(huì)自動(dòng)從串口返回標(biāo)簽號(hào), 我們需要做的是不斷讀取串口來獲得內(nèi)容。通過Android的 Handler機(jī)制來解析和發(fā)送串口獲取的內(nèi)容。
本系統(tǒng)中,遠(yuǎn)程存儲(chǔ)是由Web Service技術(shù)實(shí)現(xiàn)對(duì)遠(yuǎn)程 數(shù)據(jù)庫的檢索、存儲(chǔ)等操作。Web Service是一種通過URL 標(biāo)識(shí)的軟件應(yīng)用程序,其接口及其綁定形式可以通過XML標(biāo) 準(zhǔn)來定義、描述和查找,并能通過XML消息及Internet協(xié)議 與其他程序進(jìn)行直接交互,簡單地說,一個(gè)Web Service就 是一個(gè)能夠使用XML消息通過網(wǎng)絡(luò)來訪問的接口,這個(gè)接口 描述了一組可以訪問的操作叫
3.3功能實(shí)現(xiàn)
服務(wù)器端的主要功能實(shí)現(xiàn)為Web服務(wù)的設(shè)計(jì)與實(shí)現(xiàn),其 主要是對(duì)服務(wù)器端數(shù)據(jù)庫的操作,主要目的是服務(wù)于Android 終端的數(shù)據(jù)采集軟件,其功能作用也由Android終端來體現(xiàn)。 接下來重點(diǎn)介紹Android智能終端數(shù)據(jù)采集軟件的功能實(shí)現(xiàn)。 林木調(diào)查數(shù)據(jù)采集系統(tǒng)的首頁如圖5所示。
由系統(tǒng)首頁可以看到,本系統(tǒng)主要提供兩種存儲(chǔ)方式: 本機(jī)存儲(chǔ)和遠(yuǎn)程存儲(chǔ)。本機(jī)存儲(chǔ)是將調(diào)查記錄數(shù)據(jù)由Android 內(nèi)嵌的SQLite數(shù)據(jù)庫存儲(chǔ)到SD卡,在進(jìn)入本機(jī)存儲(chǔ)前,系 統(tǒng)首先檢查終端是否已安裝SD卡,未安裝則不會(huì)進(jìn)入本機(jī) 存儲(chǔ),并給出相應(yīng)的提示;遠(yuǎn)程存儲(chǔ)是將調(diào)查記錄數(shù)據(jù)通過 Wi-Fi或3G移動(dòng)網(wǎng)絡(luò)存儲(chǔ)到遠(yuǎn)程服務(wù)器,在進(jìn)入遠(yuǎn)程存儲(chǔ)前, 首先需要進(jìn)行遠(yuǎn)程用戶驗(yàn)證,只有通過驗(yàn)證的用戶才可以進(jìn) 行遠(yuǎn)程存儲(chǔ)操作。遠(yuǎn)程登錄服務(wù)器的頁面如圖6所示。
一類調(diào)查中的數(shù)據(jù)采集主要為樣地信息和樣木信息。根 據(jù)業(yè)務(wù)應(yīng)用,將野外采集系統(tǒng)的主要功能設(shè)計(jì)為:樣地因子 記錄表和林木調(diào)查記錄表。樣地因子記錄表用于樣地采集信 息的記錄,其中樣地代碼不允許重復(fù),樣地編號(hào)不允許空, 橫、縱坐標(biāo)統(tǒng)一規(guī)定為記錄樣地西南角的位置,樣地調(diào)查記 錄界面如圖7所示。林木調(diào)查記錄表用于樣木調(diào)查信息的記 錄,進(jìn)入該頁面前,系統(tǒng)首先檢索樣地?cái)?shù)據(jù)庫,查詢得到樣 地代碼列表供用戶選擇,查詢庫中無樣地代碼時(shí),會(huì)提示首先 添加樣地;林木調(diào)查記錄界面的編號(hào)即為嵌入立木的電子標(biāo) 簽ID,其通過對(duì)LFRFID加載模塊的串口讀數(shù)據(jù)獲得,且在添加時(shí),該編號(hào)不允許空,也不允許重復(fù),樣木調(diào)查記錄界面 如圖8所示。
4結(jié)語
本文所設(shè)計(jì)的林木調(diào)查系統(tǒng)可應(yīng)用于各類資源清查、業(yè)專題調(diào)查、種子園母樹林、優(yōu)良及原生樹種種源保護(hù)林、 科學(xué)研究與試驗(yàn)林木、重點(diǎn)保護(hù)林木、古樹名木、重要觀賞 林木、重要綠化林木、保護(hù)區(qū)保護(hù)對(duì)象樹種等需要長期研究 或重點(diǎn)保護(hù),并進(jìn)行不定期調(diào)查的業(yè)務(wù)。這種無紙化采集、管 理系統(tǒng),不但減少了傳統(tǒng)工作模式“外業(yè)記錄、內(nèi)業(yè)整理”而 引起的錯(cuò)誤,更是提高了調(diào)查工作的效率及調(diào)查數(shù)據(jù)的可研 究價(jià)值。將RFID技術(shù)和Android技術(shù)結(jié)合應(yīng)用于林業(yè)調(diào)查, 不只是物聯(lián)網(wǎng)技術(shù)應(yīng)用范圍的一個(gè)擴(kuò)展,更是林業(yè)信息化的 一個(gè)重要表現(xiàn),使林業(yè)信息化由內(nèi)業(yè)數(shù)據(jù)管理走向外業(yè)資源調(diào) 查,隨著計(jì)算機(jī)、物聯(lián)網(wǎng)技術(shù)的發(fā)展及林業(yè)信息化的不斷需求, 相信RFID技術(shù)和Android技術(shù)在保護(hù)區(qū)野外巡護(hù)、森林旅游、 森林火災(zāi)、位置服務(wù)等更多業(yè)務(wù)應(yīng)用中將有較好的發(fā)展前景。