基于RFID的數(shù)據(jù)采集網(wǎng)絡的設計與實現(xiàn)
射頻識別技術RFID(Radio Frequency Identification)作為一種高速發(fā)展的自動識別技術具有諸多優(yōu)點:數(shù)據(jù)讀取方便快捷、識別速度快、可同時識別多目標、數(shù)據(jù)容量大、使用壽命長、應用范圍廣、標簽數(shù)據(jù)可動態(tài)修改等。因此其推廣應用越來越廣泛。但目前實際應用中的讀寫器大多只適合單機工作,不適合組網(wǎng),不便于集中控制,不能應用到多點高密度數(shù)據(jù)采集場合?;赗S485標準利用超高頻RFID讀寫器構建數(shù)據(jù)采集網(wǎng)絡,遵循IS018000-6B協(xié)議的電子標簽中的數(shù)據(jù),很好解決了多點高密度數(shù)據(jù)采集的難題。網(wǎng)絡節(jié)點數(shù)目可以根據(jù)具體應用場合靈活設置,最多可以拓展至256個數(shù)據(jù)采集節(jié)點。節(jié)點終端設備還配置有USB接口、LCD顯示、聲光提示、時鐘模塊等,也可以脫機使用,作為通用的RFID讀寫器,讀、寫標簽、記錄操作時間等。
2 整體方案設計
該系統(tǒng)借鑒計算機網(wǎng)絡中經(jīng)典的C/S架構,利用RS485總線連接整個網(wǎng)絡。其中計算機作為網(wǎng)絡服務器,節(jié)點終端設備作為客戶機。計算機向各節(jié)點終端設備發(fā)送命令控制整個網(wǎng)絡,接收采集到的數(shù)據(jù)并做進一步處理;節(jié)點終端設備主要負責采集標簽數(shù)據(jù),響應計算機的命令。系統(tǒng)選用的RS485器件MAX1483使網(wǎng)絡節(jié)點數(shù)最大可達到256個。系統(tǒng)方案框圖如圖1所示。
3 硬件電路設計
系統(tǒng)設計的重點在于節(jié)點終端設備的設計,即超高頻RFID讀寫器的設計。讀寫器的主要功能是發(fā)出詢問信號,選擇能量場內的應答器,建立數(shù)據(jù)通信鏈路并對應答器進行讀寫操作。超高頻RFID讀寫器的數(shù)據(jù)采集距離較遠,可達到1~30 m,通過軟件設置射頻收發(fā)模塊增益大小來控制讀寫距離,靈活地滿足實際要求。讀寫器硬件按照不同的功能可劃分為主控模塊、射頻收發(fā)模塊、電源模塊、數(shù)據(jù)存儲模塊、接口部分、時鐘模塊、LCD顯示模塊、聲光提示模塊及調試電路等,具體如圖2所示。
(1)主控模塊選用混合信號系統(tǒng)級器件C8051F340作為節(jié)點終端設備的主控器件,負責控制、協(xié)調各功能模塊,實現(xiàn)數(shù)據(jù)采集和命令響應。利用器件的雙串口分別控制射頻收發(fā)模塊和RS485接口器件MAX1483;自帶的USB功能控制器構成USB接口;通過I/O端口模擬I2C時序控制數(shù)據(jù)存儲器件AT24C16;通過I/O端口控制時鐘DS1302;LCD通過端口并行傳輸顯示數(shù)據(jù),外加其他I/O端口作為輔助控制:由I/O端口控制LED和蜂鳴器構成聲光提示模塊。
(2)射頻收發(fā)模塊選用RMU900超高頻讀寫模塊。該模塊通過天線解調、解碼射頻標簽發(fā)射的信號,把數(shù)據(jù)發(fā)送給主控器件實現(xiàn)數(shù)據(jù)的采集,或將命令和數(shù)據(jù)編碼、調制后經(jīng)天線發(fā)送給標簽,實現(xiàn)對標簽的寫操作。數(shù)據(jù)的傳輸通過與C8051F340的串口O相連的TX0和RX0實現(xiàn)。圖3為主控模板和射頻收發(fā)模塊原理圖。
[!--empirenews.page--](3)電源模塊 射頻模塊的功率較大。因此對于電源的要求較高,要求輸出大功率并且整個系統(tǒng)用到5 V和3.3 V兩種不同電源。所以選擇LT1085作為電源轉換器件。該器件可將5 V電壓轉換成3.3 V,最大輸出電流可達2 A。完全滿足射頻模塊和系統(tǒng)其他部分對電源的需要。
(4)數(shù)據(jù)儲存模塊存儲節(jié)點設備采集到的數(shù)據(jù),待接收到計算機的發(fā)送數(shù)據(jù)命令后再將數(shù)據(jù)轉發(fā)到計算機。I2C接口的AT24C16容量為16 Kbit,可存儲2 K字節(jié)的數(shù)據(jù)。通過主控器件I/O端口模擬I2C時序,實現(xiàn)數(shù)據(jù)的讀和寫。
(5)接口部分RS485接口采用MAX1483器件。最多可驅動256個節(jié)點,通過RJ11接口實現(xiàn)與總線的連接:USB接口使用主控器件自帶的USB控制器,具有很高的可靠性。圖4是電源模塊、數(shù)據(jù)存儲模塊、接口部分的原理圖。
(6)其他模塊1602單色液晶顯示屏,可顯示采集到的數(shù)據(jù)和操作時間或實時時間。顯示數(shù)據(jù)的傳輸采用并行傳輸?shù)姆绞?,加快了屏幕的刷新頻率。聲光提示模塊提示操作完成情況。主要通過主控器件的I/O端口控制LED閃爍和蜂鳴器的鳴笛。時鐘模塊顯示數(shù)據(jù)采集的時間或實時時間。除板載電源外還設計有備用的紐扣電池,使掉電時時鐘不丟失。調試電路實現(xiàn)在線編程,向主控器件C8051F340燒寫程序,監(jiān)測變量值的變化情況,調試程序,輔助完成軟件的編寫。圖5、圖6為上述模塊的原理電路圖。
4 軟件設計
系統(tǒng)的軟件設計包括上位機軟件和下位機軟件兩部分。上位機軟件部分主要針對計算機平臺,采用C++語言編寫.控制節(jié)點終端設備和接收節(jié)點終端設備發(fā)送的數(shù)據(jù),然后做進一步處理??紤]到網(wǎng)絡的規(guī)模最大為256節(jié)點,上位機采用輪詢方式控制各個節(jié)點終端設備,維持整個網(wǎng)絡正常運行。控制節(jié)點終端設備的命令主要有:(1)發(fā)送數(shù)據(jù)命令:下位機接收到該命令的響應是發(fā)送采集到的數(shù)據(jù),即緩存在數(shù)據(jù)存儲模塊中的數(shù)據(jù);(2)寫標簽命令:下位機接收到該命令的響應是向感應區(qū)內的標簽寫入新的數(shù)據(jù);(3)時間設置命令:下位機的響應是根據(jù)參數(shù)更新DS1302的數(shù)據(jù);(4)設置功率命令:設置射頻收發(fā)模塊的發(fā)射功率以調節(jié)讀寫標簽的距離;(5)寫分機號命令:該命令為單機命令,可為每個節(jié)點終端設備寫入一個唯一的分機號,以便區(qū)別不同的終端設備。下位機軟件設計主要針對單片機平臺,采用C語言編寫,主要是各功能模塊的驅動程序,如射頻模塊的控制、數(shù)據(jù)存儲模塊的數(shù)據(jù)讀寫、時鐘模塊的輸出、LCD顯示模塊的數(shù)據(jù)顯示程序、USB接口的驅動程序等。圖7為下位機軟件流程圖。
5 通信協(xié)議設計
通信協(xié)議是網(wǎng)絡正常工作必不可少的,主要是對計算機和節(jié)點終端設備間通信幀格式的具體規(guī)范與統(tǒng)一,例如幀長度確定、命令字意義、參數(shù)長度、幀起始標志、結束標志等。具體幀格式規(guī)定如表1所示。每幀數(shù)據(jù)有23字節(jié),其中起始位1字節(jié),固定為Oxaa;分機號1字節(jié),可設置范圍為0~255;命令1字節(jié),包括5個命令:OxOf、Ox2f、Ox4f、Ox8f、Oxaf,依次為發(fā)送數(shù)據(jù)命令、寫數(shù)據(jù)命令、時間設置命令、功率設置命令、寫分機號;數(shù)據(jù)17字節(jié),包括標簽數(shù)據(jù)12字節(jié)和時間數(shù)據(jù)5字節(jié);CRE校驗采用CRC-16,共2字節(jié),是起始位到數(shù)據(jù)位之間所有數(shù)據(jù)的CRC校驗值;停止位1字節(jié),固定為Ox55。
系統(tǒng)通過RS485總線實現(xiàn)上位機與下位機之間的通信。計算機根據(jù)分機號選擇不同節(jié)點終端設備,選擇命令代碼實現(xiàn)各命令,數(shù)據(jù)部分為操作響應代碼(“0”標識操作失敗,“1”標識操作成功)、相關參數(shù)(如時間設置命令中的時間參數(shù))或返回具體數(shù)據(jù)(如標簽數(shù)據(jù)和時間數(shù)據(jù))。
6 結束語
RFID技術以其優(yōu)勢必將在信息化建設過程中得到推廣與應用。系統(tǒng)利用RFID技術構建一種低成本、高可靠性、維護方便的數(shù)據(jù)采集網(wǎng)絡。目前該網(wǎng)絡已應用于某公司自動生產(chǎn)線中。運行狀況良好,具有廣泛的應用前景。