(武漢商學(xué)院信息工程學(xué)院 湖北 武漢 430056)
目前,在圖書(shū)館書(shū)籍管理工作中,普遍使用RFID技術(shù)實(shí)現(xiàn)對(duì)館藏書(shū)籍的管理[1]。但隨著館藏資源的不斷豐富,在圖書(shū)查找、圖書(shū)歸架的工作中,經(jīng)常會(huì)出現(xiàn)系統(tǒng)顯示書(shū)籍未借出而找不到圖書(shū)的問(wèn)題,這種情況主要是因?yàn)闀?shū)籍在歸還書(shū)架的過(guò)程中未能準(zhǔn)確放回原位造成的。針對(duì)圖書(shū)館經(jīng)常出現(xiàn)圖書(shū)被放錯(cuò)架導(dǎo)致的圖書(shū)管理困難問(wèn)題,設(shè)計(jì)了一種基于RFID技術(shù)的智能書(shū)架和書(shū)籍定位系統(tǒng)。該系統(tǒng)可以準(zhǔn)確定位書(shū)籍,方便書(shū)籍借閱和管理,圖書(shū)的位置信息可自動(dòng)更新,圖書(shū)位置信息實(shí)現(xiàn)可視化。
RFID(Radio Frequency Identification)即射頻識(shí)別,是一種自動(dòng)識(shí)別技術(shù)。RFID通過(guò)射頻信號(hào)獲取存儲(chǔ)物體標(biāo)簽內(nèi)的相關(guān)數(shù)據(jù)并識(shí)別物體[1]。RFID技術(shù)可以在不直接接觸識(shí)別對(duì)象的情況下完成對(duì)象信息的輸入和處理,并且可以實(shí)時(shí)、準(zhǔn)確地快速收集和處理對(duì)象信息[2]。RFID系統(tǒng)基本上由三部分組成:電子標(biāo)簽,讀寫(xiě)器和收發(fā)天線(xiàn)。電子標(biāo)簽通過(guò)天線(xiàn)發(fā)射射頻無(wú)線(xiàn)電波與讀寫(xiě)器交換數(shù)據(jù)。如圖1為RFID系統(tǒng)的基本組成。
圖1 RFID系統(tǒng)的基本組成
將此技術(shù)應(yīng)用于智能書(shū)架的設(shè)計(jì)中,其中RFID使用電子標(biāo)簽標(biāo)記每本圖書(shū)[3]。電子標(biāo)簽的組成包括天線(xiàn)和電子芯片,其中電子芯片儲(chǔ)存圖書(shū)的相關(guān)數(shù)據(jù)信息。電子標(biāo)簽中的天線(xiàn)發(fā)射無(wú)線(xiàn)電波將圖書(shū)的數(shù)據(jù)信息傳輸給RFID讀寫(xiě)器,讀寫(xiě)器隨后接收數(shù)據(jù)信息,并對(duì)數(shù)據(jù)進(jìn)行處理,再將關(guān)于圖書(shū)的數(shù)據(jù)信息傳輸給系統(tǒng)應(yīng)用層。
1.系統(tǒng)工作原理
首先,當(dāng)用戶(hù)對(duì)圖書(shū)進(jìn)行檢索時(shí),用戶(hù)通過(guò)系統(tǒng)訪(fǎng)問(wèn)圖書(shū)管理系統(tǒng)數(shù)據(jù)庫(kù)和圖書(shū)位置信息數(shù)據(jù)庫(kù)。位于書(shū)架上的每本圖書(shū)都粘貼有儲(chǔ)存圖書(shū)信息的電子,智能書(shū)架中的讀寫(xiě)器,將讀取的圖書(shū)位置信息數(shù)據(jù)發(fā)送給系統(tǒng)。在系統(tǒng)檢索界面顯示圖書(shū)的基本信息和位置信息。多路天線(xiàn)群組能夠有效降低漏檢、誤檢率,實(shí)現(xiàn)對(duì)圖書(shū)的精準(zhǔn)定位[4]。在智能書(shū)架設(shè)置的讀寫(xiě)器會(huì)對(duì)書(shū)架上的書(shū)實(shí)時(shí)讀取,所以對(duì)于被放錯(cuò)架的圖書(shū),系統(tǒng)管理員只需在后臺(tái)系統(tǒng)進(jìn)行直接檢索即可查找被放錯(cuò)架的圖書(shū)。
圖書(shū)定位系統(tǒng)以智能書(shū)架為主體,在書(shū)架上設(shè)置天線(xiàn)和讀寫(xiě)器。該系統(tǒng)中,讀寫(xiě)器處于一直工作的狀態(tài),書(shū)架讀寫(xiě)器可以對(duì)書(shū)架上每本圖書(shū)的電子標(biāo)簽進(jìn)行讀取,設(shè)定每30秒讀寫(xiě)器檢測(cè)一次書(shū)架,即遍歷每層的圖書(shū)信息數(shù)據(jù),將位置信息實(shí)時(shí)更新在后臺(tái)系統(tǒng)。一旦發(fā)生圖書(shū)被放錯(cuò)書(shū)架的情況,即時(shí)對(duì)其定位,將定位計(jì)算結(jié)果發(fā)送給數(shù)據(jù)庫(kù),達(dá)到對(duì)圖書(shū)的實(shí)時(shí)清點(diǎn)和實(shí)時(shí)定位的目的[5]。系統(tǒng)工作原理如圖2所示。
圖2 系統(tǒng)工作原理
該系統(tǒng)不同于傳統(tǒng)圖書(shū)館管理,傳統(tǒng)圖書(shū)館對(duì)書(shū)籍上架管理時(shí),第一次信息輸入就不再變化,而該系統(tǒng)提高了圖書(shū)上架的容錯(cuò)率,圖書(shū)的位置信息實(shí)時(shí)更新輸入在系統(tǒng)數(shù)據(jù)庫(kù),檢索系統(tǒng)可以詳細(xì)顯示被查詢(xún)圖書(shū)位于館藏地某書(shū)架某一層。因此,該設(shè)計(jì)不僅提高了圖書(shū)管理員的工作效率,而且提高了借書(shū)人員查找書(shū)籍的便捷性。
2.系統(tǒng)整體架構(gòu)
對(duì)智能書(shū)架分別從硬件系統(tǒng)和軟件系統(tǒng)兩個(gè)模塊分析設(shè)計(jì)。圖書(shū)定位系統(tǒng)根據(jù)物聯(lián)網(wǎng)三層基礎(chǔ)體系:感知層、網(wǎng)絡(luò)層、應(yīng)用層,將系統(tǒng)劃分為三個(gè)模塊:數(shù)據(jù)采集模塊、數(shù)據(jù)服務(wù)模塊和應(yīng)用服務(wù)器模塊[6]。圖3為圖書(shū)定位系統(tǒng)總體架構(gòu)。
圖3 圖書(shū)定位系統(tǒng)總體架構(gòu)
(1)數(shù)據(jù)采集模塊
圖書(shū)定位系統(tǒng)使用書(shū)架上的標(biāo)簽和讀寫(xiě)器作為硬件基礎(chǔ)單元,每本圖書(shū)都粘貼電子標(biāo)簽。標(biāo)簽中儲(chǔ)存圖書(shū)信息和位置信息,位置信息以某書(shū)架某層某單元欄的方式顯示。天線(xiàn)陣列可以采用多路復(fù)用器選擇數(shù)字信號(hào)路徑。使多路數(shù)據(jù)信息共享一路信道,通過(guò)天線(xiàn)群組切換開(kāi)關(guān)對(duì)天線(xiàn)和電子讀寫(xiě)器的連接進(jìn)行控制,便于對(duì)每個(gè)電子標(biāo)簽的信息進(jìn)行準(zhǔn)確讀取。
(2)數(shù)據(jù)服務(wù)模塊
數(shù)據(jù)服務(wù)模塊主要包括圖書(shū)管理系統(tǒng)數(shù)據(jù)庫(kù)和圖書(shū)定位數(shù)據(jù)庫(kù)。書(shū)架上設(shè)置的讀寫(xiě)器將讀取標(biāo)簽的數(shù)據(jù)信息通過(guò)天線(xiàn)傳輸給數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)中的信息有:圖書(shū)基本信息介紹、圖書(shū)的初始位置信息和當(dāng)前圖書(shū)被錯(cuò)放的書(shū)架所在位置。數(shù)據(jù)服務(wù)器對(duì)信息進(jìn)行挖掘和分析后傳輸給應(yīng)用程序?qū)印?/p>
(3)應(yīng)用服務(wù)器模塊
應(yīng)用服務(wù)器模塊以客戶(hù)端應(yīng)用程序?yàn)楸憩F(xiàn)形式,如圖書(shū)檢索系統(tǒng),通過(guò)檢索系統(tǒng)可直觀的查詢(xún)圖書(shū)當(dāng)前所在位置。管理員可以通過(guò)后臺(tái)系統(tǒng)控制書(shū)架天線(xiàn)的輻射區(qū)域,對(duì)圖書(shū)標(biāo)簽的檢測(cè)達(dá)到精準(zhǔn)控制。
硬件系統(tǒng)主要包括讀寫(xiě)器、電子標(biāo)簽、天線(xiàn)[7]。讀寫(xiě)器作為每個(gè)智能書(shū)架的主要硬件設(shè)施,實(shí)現(xiàn)對(duì)圖書(shū)電子標(biāo)簽的識(shí)別、通信與書(shū)架控制工作,通信支持TCP/IP協(xié)議。電子標(biāo)簽儲(chǔ)存每本圖書(shū)信息。天線(xiàn)群組作為對(duì)圖書(shū)標(biāo)簽的檢測(cè)單元,能夠與電子標(biāo)簽建立連接,對(duì)于不同書(shū)架的天線(xiàn)均可讀取圖書(shū)的標(biāo)簽信息,實(shí)現(xiàn)對(duì)圖書(shū)位置的實(shí)時(shí)檢測(cè)。智能書(shū)架的讀寫(xiě)器與天線(xiàn)群組射頻切換開(kāi)關(guān)連接,實(shí)現(xiàn)對(duì)數(shù)字信號(hào)的輸入和輸出。圖4為硬件系統(tǒng)設(shè)計(jì)架構(gòu)。
圖4 硬件系統(tǒng)設(shè)計(jì)架構(gòu)
軟件架構(gòu)主要包括硬件設(shè)備層、邏輯處理層和應(yīng)用程序?qū)?。硬件設(shè)備層包括硬件系統(tǒng)中所有器件單元,邏輯處理層接收由硬件設(shè)備層發(fā)來(lái)的數(shù)字信號(hào),將信號(hào)進(jìn)行數(shù)模轉(zhuǎn)換后確保數(shù)據(jù)安全無(wú)差錯(cuò),使用封裝好的定位算法對(duì)圖書(shū)的位置進(jìn)行計(jì)算,將計(jì)算得出的位置信息傳輸給應(yīng)用程序?qū)?,供用?hù)進(jìn)行訪(fǎng)問(wèn)。在應(yīng)用程序?qū)涌商峁﹫D書(shū)檢索平臺(tái),用戶(hù)可在應(yīng)用程序?qū)又袑?duì)圖書(shū)進(jìn)行圖書(shū)檢索,查詢(xún)圖書(shū)位置詳細(xì)位置信息,系統(tǒng)管理員可在后臺(tái)對(duì)數(shù)據(jù)庫(kù)進(jìn)行后臺(tái)維護(hù)和管理。如圖5為圖書(shū)定位系統(tǒng)軟件架構(gòu)。
圖5 圖書(shū)定位系統(tǒng)軟件架構(gòu)
圖書(shū)館管理系統(tǒng)數(shù)據(jù)庫(kù)儲(chǔ)存圖書(shū)基本信息,圖書(shū)定位數(shù)據(jù)庫(kù)主要儲(chǔ)存書(shū)籍的位置信息[7]。根據(jù)圖書(shū)館應(yīng)用需求,使用MySQL 5.7為后臺(tái)數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)中表的數(shù)據(jù)項(xiàng)經(jīng)查詢(xún)顯示,圖書(shū)信息字段設(shè)計(jì)表如圖6,圖書(shū)位置信息字段設(shè)計(jì)表如圖7。讀寫(xiě)器檢測(cè)錯(cuò)架的圖書(shū)時(shí),修改的圖書(shū)信息同樣參照此表。
圖6 數(shù)據(jù)庫(kù)圖書(shū)信息字段設(shè)計(jì)表
圖7 數(shù)據(jù)庫(kù)圖書(shū)位置信息字段設(shè)計(jì)表
圖書(shū)定位系統(tǒng)設(shè)置一定數(shù)量的讀寫(xiě)器和標(biāo)簽、規(guī)定參考標(biāo)簽的布局、精簡(jiǎn)算法流程等方式增加對(duì)圖書(shū)定位的精準(zhǔn)度。用戶(hù)在應(yīng)用程序?qū)釉L(fǎng)問(wèn)數(shù)據(jù)庫(kù),系統(tǒng)通過(guò)讀寫(xiě)器發(fā)射額定的射頻信號(hào)檢測(cè)電子標(biāo)簽,將檢測(cè)到的電子標(biāo)簽的信號(hào)強(qiáng)度和存儲(chǔ)信息返回給讀寫(xiě)器。此時(shí)采集接收的標(biāo)簽信號(hào)強(qiáng)度,使用基于信號(hào)強(qiáng)度的模式匹配法對(duì)圖書(shū)實(shí)現(xiàn)定位,也就是采用鄰居算法對(duì)圖書(shū)進(jìn)行位置估計(jì)。如圖8為圖書(shū)定位原理。
圖8 圖書(shū)定位原理
圖9 讀寫(xiě)器查詢(xún)錯(cuò)架圖書(shū)位置流程圖
對(duì)圖書(shū)定位的操作分為兩種情況:一種是用戶(hù)查詢(xún)未錯(cuò)架的圖書(shū)所在位置。二是讀寫(xiě)器自行檢測(cè)被放錯(cuò)架的圖書(shū)位置信息。若是用戶(hù)查詢(xún)未錯(cuò)架圖書(shū),首先是用戶(hù)發(fā)送圖書(shū)查詢(xún)請(qǐng)求,讀寫(xiě)器發(fā)送一定的射頻信號(hào)對(duì)圖書(shū)電子標(biāo)簽進(jìn)行定位,再將預(yù)測(cè)位置傳回?cái)?shù)據(jù)庫(kù),在檢索界面顯示圖書(shū)的定位信息。在讀寫(xiě)器查詢(xún)錯(cuò)架圖書(shū)信息時(shí),讀寫(xiě)器被設(shè)定為每間隔30秒即對(duì)輻射范圍內(nèi)的標(biāo)簽進(jìn)行檢測(cè),對(duì)錯(cuò)架亂架標(biāo)簽使用定位算法進(jìn)行位置估計(jì),將計(jì)算結(jié)果發(fā)送給數(shù)據(jù)庫(kù),實(shí)行數(shù)據(jù)庫(kù)更新。如圖9為讀寫(xiě)器查詢(xún)錯(cuò)架圖書(shū)位置流程圖[7]。
最近鄰居算法的算法原理如下:設(shè)定位范圍內(nèi)有u個(gè)讀寫(xiě)器,同時(shí)設(shè)置m個(gè)參考電子標(biāo)簽和n個(gè)待測(cè)電子標(biāo)簽[8]。此時(shí)讀寫(xiě)器發(fā)射檢測(cè)電子標(biāo)簽的射頻信號(hào),接收參考標(biāo)簽和待測(cè)標(biāo)簽的信號(hào)功率。設(shè)接收到的參考電子標(biāo)簽的信號(hào)強(qiáng)度矢量設(shè)為P,接收的待測(cè)電子標(biāo)簽的信號(hào)強(qiáng)度矢量設(shè)為Q。此時(shí)根據(jù)矢量距離公式可得兩個(gè)標(biāo)簽的距離表達(dá)式為:
(1)
式(1)中的Pi,Qi分別代表第i個(gè)參考電子標(biāo)簽和第i個(gè)待測(cè)電子標(biāo)簽的信號(hào)強(qiáng)度。提前設(shè)定讀寫(xiě)器每30秒進(jìn)行檢測(cè),在書(shū)架的最小圖書(shū)欄的8個(gè)拐角都設(shè)置參考標(biāo)簽,圖書(shū)所帶標(biāo)簽視為待測(cè)標(biāo)簽。由式(1)可得:
Ej=|P-Q|,j∈(1,m),P∈(1,n)
(2)
Ej表示參考標(biāo)簽與待測(cè)標(biāo)簽的距離,Ej越小則說(shuō)明兩種標(biāo)簽的距離越近。將未知位置信息的待測(cè)定標(biāo)簽坐標(biāo)表示為式(3):
(3)
式(3)中(xi,yi)表示參考標(biāo)簽的坐標(biāo),k表示設(shè)定的鄰居標(biāo)簽個(gè)數(shù)。Wi表示第i個(gè)鄰居標(biāo)簽的權(quán)重,權(quán)重的值越大,表示參考標(biāo)簽與待測(cè)標(biāo)簽之間的距離越近[9]。權(quán)重的表達(dá)公式為式(4):
(4)
本文在進(jìn)行研究過(guò)程中將鄰居標(biāo)簽分別設(shè)置在書(shū)架最小欄的8處拐角,所以設(shè)定k值為8,通過(guò)這種方式限定了檢測(cè)的最小范圍,提高了定位的精準(zhǔn)度。假設(shè)書(shū)架最小欄為一個(gè)長(zhǎng)方體,圖10表示參考標(biāo)簽和待測(cè)標(biāo)簽位置分布圖。
圖10 參考標(biāo)簽和待測(cè)標(biāo)簽位置分布圖
當(dāng)讀寫(xiě)器查詢(xún)錯(cuò)架圖書(shū)時(shí),將最近鄰居算法作為對(duì)圖書(shū)的定位算法封裝到圖書(shū)定位系統(tǒng)中,定位信息顯示書(shū)架的最小欄位置,這種方式可以提高定位的精確度,并且能夠減小定位系統(tǒng)的復(fù)雜度[10]。如圖11為定位算法流程。
圖11 定位算法流程
以同一層AB的四個(gè)相鄰邊的最小單元欄為研究對(duì)象[7],最小單元的規(guī)格為長(zhǎng)1.0m,寬為0.5m,高為1.0m。在實(shí)驗(yàn)過(guò)程中,將設(shè)置在8處拐角的標(biāo)簽視為參考標(biāo)簽,AB兩面相鄰的兩個(gè)書(shū)欄共用上下4個(gè)標(biāo)簽,具體最小單元欄參考圖10。為了將實(shí)驗(yàn)結(jié)果更直觀的表示出來(lái),將該模型做俯視平面處理,不計(jì)垂直坐標(biāo)情況。將要測(cè)試的標(biāo)簽的實(shí)際坐標(biāo)和待測(cè)標(biāo)簽的估計(jì)坐標(biāo)位置輸入到Matlab中以進(jìn)行圖形處理。待測(cè)標(biāo)簽的實(shí)際坐標(biāo)與預(yù)測(cè)坐標(biāo)如圖12所示,為待測(cè)標(biāo)簽實(shí)際坐標(biāo),(x2,y2)為待測(cè)標(biāo)簽預(yù)測(cè)坐標(biāo)。實(shí)驗(yàn)仿真結(jié)果如圖13所示。
圖12 標(biāo)簽實(shí)際坐標(biāo)與預(yù)測(cè)坐標(biāo)
圖13 實(shí)驗(yàn)仿真結(jié)果
由實(shí)驗(yàn)仿真測(cè)試結(jié)果可以看出對(duì)圖書(shū)的定位有良好的效果,為了評(píng)定這種誤差的大小,引入計(jì)算定位誤差參數(shù)值的公式(5):
(5)
其中N表示實(shí)驗(yàn)的次數(shù),x、y分別為待測(cè)標(biāo)簽實(shí)際位置橫坐標(biāo)和縱坐標(biāo),x0和y0分別為待測(cè)標(biāo)簽預(yù)測(cè)位置橫縱坐標(biāo)和縱坐標(biāo)。將實(shí)驗(yàn)結(jié)果代入式(5)中得X的值為0.034,即定位的誤差在3cm左右,在實(shí)際中可滿(mǎn)足對(duì)圖書(shū)快速查找的需求。
在圖書(shū)資源管理工作中,合理使用RFID技術(shù)實(shí)現(xiàn)對(duì)圖書(shū)的智能管理具有重大意義。本文在RFID室內(nèi)定位方法-最近鄰居算法的基礎(chǔ)上,設(shè)計(jì)了智能書(shū)架和書(shū)籍定位系統(tǒng)。將被檢索的圖書(shū)定位到最小單元欄,經(jīng)仿真模擬可實(shí)現(xiàn)對(duì)圖書(shū)的精準(zhǔn)定位,提高讀者借書(shū)的效率,降低圖書(shū)管理員的工作難度。該系統(tǒng)不僅可以為智能圖書(shū)館提供圖書(shū)智能管理提供解決方案,可以為智能貨架、實(shí)驗(yàn)器材管理等類(lèi)似問(wèn)題提供參考方案。