基于RFID車輛信息交換系統(tǒng)的射頻模塊設(shè)計
引言
基于無線射頻識別技術(shù)(RFID)的車路信息交換系統(tǒng)可利用射頻識別技術(shù)對車輛的位置信息進(jìn)行采集和相關(guān)電子收費等操作。該系統(tǒng)可分為前端信息采集、數(shù)據(jù)處理中心、終端服務(wù)等幾個模塊。其中RFID是一種非接觸的自動識別技術(shù),其原理是利用射頻信號和空間(電感或電磁耦合)傳輸特性來實現(xiàn)對被識別物體的自動識別。本文通過對射頻信號網(wǎng)絡(luò)傳輸進(jìn)行精確設(shè)計,可以提高系統(tǒng)的精準(zhǔn)率和效率。
1射頻模塊的系統(tǒng)設(shè)計
目前,超高頻段的典型應(yīng)用頻率為433MHz、869MHz和915MHz(902~928MHz),微波段的典型應(yīng)用頻率為2.45GHz和5.8GHz。目前的主流系統(tǒng)一般都采取915MHz、2.45GHz和5.8GHz,因此,本文在頻率的選擇上,綜合考慮到系統(tǒng)實現(xiàn)的難易程度和系統(tǒng)對通信質(zhì)量的要求,并根據(jù)具體應(yīng)用,選用915MHz和5.8GHz作為閱讀工作頻率。工作時序方式采用RTF方式,供電方式采用無源電子標(biāo)簽。事實上,實際應(yīng)用中的讀寫器大多只適合單機工作,不適合組網(wǎng),不便于集中控制,因而不能應(yīng)用到多點高密度數(shù)據(jù)采集場合。而基于RS485標(biāo)準(zhǔn)并利用超高頻RFID讀寫器構(gòu)建的數(shù)據(jù)采集網(wǎng)絡(luò),由于其遵循IS018000—6B協(xié)議的電子標(biāo)簽數(shù)據(jù),因而可以很好地解決多點高密度數(shù)據(jù)采集的難題。
本設(shè)計的網(wǎng)絡(luò)節(jié)點數(shù)目可以根據(jù)具體應(yīng)用場合靈活設(shè)置,最多可以拓展至256個數(shù)據(jù)采集節(jié)點。節(jié)點終端設(shè)備還配置有USB接口、LCD顯示、聲光提示、時鐘模塊等,也可以脫機使用;而作為通用的RFID讀寫器,可完成讀、寫標(biāo)簽、記錄操作時間等功能。該系統(tǒng)選用的RS485器件MAX1483可以使網(wǎng)絡(luò)節(jié)點數(shù)最大達(dá)到256個。其系統(tǒng)方案框圖如圖1所示。
1.1讀寫器硬件設(shè)計
本系統(tǒng)設(shè)計的重點在于節(jié)點終端設(shè)備的設(shè)計,即超高頻RFID讀寫器的設(shè)計。讀寫器的主要功能是發(fā)出詢問信號,選擇能量場內(nèi)的應(yīng)答器,建立數(shù)據(jù)通信鏈路并對應(yīng)答器進(jìn)行讀寫操作。超高頻RFID讀寫器的數(shù)據(jù)采集距離較遠(yuǎn),可達(dá)到1~30m,通過軟件設(shè)置射頻收發(fā)模塊增益大小可以控制讀寫距離,以便靈活地滿足實際要求。讀寫器硬件按照不同的功能可劃分為主控模塊、射頻收發(fā)模塊、電源模塊、數(shù)據(jù)存儲模塊、接口部分、時鐘模塊、LCD顯示模塊、聲光提示模塊及調(diào)試電路等,其具體的讀寫器硬件模塊框圖如圖2所示。
圖2讀寫器硬件模塊框圖
1.2軟件設(shè)計
本系統(tǒng)的軟件設(shè)計包括上位機軟件和下位機軟件兩部分。上位機軟件主要針對計算機平臺,可采用C++語言編寫,主要用于控制節(jié)點終端設(shè)備和接收節(jié)點終端設(shè)備發(fā)送數(shù)據(jù),以及進(jìn)一步的處理??紤]到網(wǎng)絡(luò)的規(guī)模最大為256節(jié)點,上位機采用輪詢方式控制各個節(jié)點終端設(shè)備,以維持整個網(wǎng)絡(luò)的正常運行。
控制節(jié)點終端設(shè)備的命令主要有:
(1)發(fā)送數(shù)據(jù)命令:下位機接收到該命令的響應(yīng)是發(fā)送采集到的數(shù)據(jù),即緩存在數(shù)據(jù)存儲模塊中的數(shù)據(jù);
(2)寫標(biāo)簽命令:下位機接收到該命令的響應(yīng)是向感應(yīng)區(qū)內(nèi)的標(biāo)簽寫入新的數(shù)據(jù);
(3)時間設(shè)置命令:該命令可在下位機中根據(jù)參數(shù)更新DS1302的數(shù)據(jù);
(4)設(shè)置功率命令:用于設(shè)置射頻收發(fā)模塊的發(fā)射功率,以調(diào)節(jié)讀寫標(biāo)簽的距離;
(5)寫分機號命令:該命令為單機命令,可為每個節(jié)點終端設(shè)備寫入一個唯一的分機號,以便區(qū)別不同的終端設(shè)備。
下位機軟件設(shè)計主要針對單片機平臺,可采用C語言編寫,主要是各功能模塊的驅(qū)動程序,如射頻模塊的控制、數(shù)據(jù)存儲模塊的數(shù)據(jù)讀寫、時鐘模塊的輸出、LCD顯示模塊的數(shù)據(jù)顯示程序、USB接口驅(qū)動程序等。圖3所示是下位機軟件流程圖。
2通信協(xié)議設(shè)計
通信協(xié)議是網(wǎng)絡(luò)正常工作必不可少的,主要是對計算機和節(jié)點終端設(shè)備間通信幀格式進(jìn)行具體的規(guī)范與統(tǒng)一,例如確定幀長度、命令字意義、參數(shù)長度、幀起始標(biāo)志、結(jié)束標(biāo)志等。本設(shè)計中的具體幀格式規(guī)定為每幀數(shù)據(jù)23字節(jié),其中起始位1字節(jié),固定為Oxaa;分機號1字節(jié),可設(shè)置范圍為0?255;命令1字節(jié),包括5個命令:OxOf、Ox2f、Ox4f、Ox8f、Oxaf,依次為發(fā)送數(shù)據(jù)命令、寫數(shù)據(jù)命令、時間設(shè)置命令、功率設(shè)置命令、寫分機號;數(shù)據(jù)17字節(jié),包括標(biāo)簽數(shù)據(jù)12字節(jié)和時間數(shù)據(jù)5字節(jié);CRE校驗采用CRC-16,共2字節(jié),是起始位到數(shù)據(jù)位之間所有數(shù)據(jù)的CRC校驗值;停止位1字節(jié),固定為Ox55。
圖3下位機軟件流程圖
本系統(tǒng)通過RS485總線實現(xiàn)上位機與下位機之間的通信。計算機根據(jù)分機號選擇不同節(jié)點的終端設(shè)備,選擇命令代碼可實現(xiàn)各命令和數(shù)據(jù)部分的操作響應(yīng)(“0”標(biāo)識操作失敗,“1”標(biāo)識操作成功)、相關(guān)參數(shù)(如時間設(shè)置命令中的時間參數(shù))或返回具體數(shù)據(jù)(如標(biāo)簽數(shù)據(jù)和時間數(shù)據(jù))。
3數(shù)據(jù)的完整性設(shè)計
在數(shù)據(jù)的傳輸中,不管是閱讀器和電子標(biāo)簽之間的無線通信,還是閱讀器與應(yīng)用系統(tǒng)之間的通信,都難免會遇到干擾而使數(shù)據(jù)發(fā)生改變,這是在通信中極不愿意但又無法避免的情況,為此,數(shù)據(jù)的接收方都必須對接收的數(shù)據(jù)進(jìn)行檢驗,以用來識別傳輸錯誤。一般的校驗有奇偶校驗法、縱向冗余校驗(LRC)法和循環(huán)冗余碼校驗(CRC)法。
奇偶校驗法和LRC法由于其算法都比較簡單,所以只能校驗很小的數(shù)據(jù)塊,而且對同一數(shù)據(jù)塊內(nèi)的字節(jié)順序的互換,它們是無法檢驗出來的,因此,本文對數(shù)據(jù)塊采用的校驗法為CRC法。CRC法原來用于磁盤驅(qū)動器中的數(shù)據(jù)校驗,能夠以很大的可靠性識別傳輸錯誤,但不能校正錯誤。CRC法的計算是一種循環(huán)過程。所以,CRC的計算包括了要計算其CRC值的數(shù)據(jù)字節(jié)以及前面數(shù)據(jù)字節(jié)的CRC值,數(shù)據(jù)塊中每一個被校驗過的字節(jié)都用來計算整個數(shù)據(jù)塊的CRC值。
當(dāng)一數(shù)據(jù)塊被傳輸時,發(fā)送方計算數(shù)據(jù)的CRC值,并將 此值附在數(shù)據(jù)塊后一起傳輸,接收方則計算接收數(shù)據(jù)(包括 附加的CRC字節(jié))的CRC值,然后判斷結(jié)果是否為零。如 果為零,說明數(shù)據(jù)無誤,否則,說明數(shù)據(jù)傳輸發(fā)生錯誤。
4結(jié)論
由于RFID車輛信息交換系統(tǒng)中的射頻模塊設(shè)計是其最 基本的部分,設(shè)計時不僅要采集精準(zhǔn)的交通信息,而且還要 將控制中心的信息傳給車輛,因此,此模塊不僅要進(jìn)行軟硬件 的基本設(shè)計,還要考慮交通信息的巨大信息量與快速性,同時 還要進(jìn)行標(biāo)簽的防碰撞設(shè)計。