歡迎您訪問鄭州興邦電子股份有限公司官方網(wǎng)站!
阿里巴巴誠信通企業(yè)
全國咨詢熱線:40000-63966
興邦電子,中國水控機(jī)第一品牌

聯(lián)系興邦電子

全國咨詢熱線:40000-63966

售后:0371-55132951/55132952

工廠:河南省 鄭州市 高新區(qū)蓮花街電子電器產(chǎn)業(yè)園

符合ISO/IEC 18000-6C標(biāo)準(zhǔn)的UHF RFID讀寫器設(shè)計(jì)

文章出處:http://m.compasssalessolutions.com 作者:林曦, 王敬超, 張春   人氣: 發(fā)表時(shí)間:2011年10月16日

[文章內(nèi)容簡介]:在超高頻段, ISO/ IEC 18000-6 標(biāo)準(zhǔn)中6B 多用于交通領(lǐng)域, 而6C 主要用于物流、生產(chǎn)管理和供應(yīng)鏈管理領(lǐng)域。分析了ISO/ IEC 18000-6 C 標(biāo)準(zhǔn), 基于此標(biāo)準(zhǔn)設(shè)計(jì)了一種超高頻射頻識別讀寫器。詳細(xì)闡述了讀寫器的軟硬件設(shè)計(jì), 其中硬件設(shè)計(jì)主要包括射頻發(fā)送電路、射頻接收電路和數(shù)字基帶處理電路。讀寫器軟件設(shè)計(jì)中敘述了整體設(shè)計(jì)結(jié)構(gòu)、基于概率、槽計(jì)數(shù)器的防沖突算法、發(fā)送接收鏈路的數(shù)據(jù)編解碼設(shè)計(jì)、16 bit CRC 校驗(yàn)以及讀寫器對標(biāo)簽操作命令流程。

  引言

  RFID (radio frequency identification) 是指以識別或數(shù)據(jù)交換為目的, 利用感應(yīng)、無線電波或微波進(jìn)行非接觸雙向通信的自動識別技術(shù), 利用這種技術(shù)可以實(shí)現(xiàn)對所有物理對象的追蹤和管理。RFID 有著廣泛的應(yīng)用, 尤其可以對企業(yè)的供應(yīng)鏈進(jìn)行高效的管理 。

  2006 年EPC Gen2 納入ISO/ IEC 18000-6 標(biāo)準(zhǔn),稱為ISO/ IEC 18000-6C。在超高頻(UHF) 頻段,ISO/ IEC 18000-6 標(biāo)準(zhǔn)中B 類多用于交通領(lǐng)域, 而C類主要用于物流、生產(chǎn)管理和供應(yīng)鏈管理領(lǐng)域。但C 類標(biāo)簽的速度高、價(jià)格低, 生產(chǎn)銷售的數(shù)量遠(yuǎn)遠(yuǎn)超過B 類, 有逐步替代B 類的趨勢, 成為目前RFID 研究的熱點(diǎn)。

  本文介紹了一種符合ISO/ IEC 18000-6C 標(biāo)準(zhǔn)的讀卡器設(shè)計(jì)。射頻前端模塊采用零中頻收發(fā)結(jié)構(gòu),數(shù)字基帶處理模塊在單片機(jī)系統(tǒng)上實(shí)現(xiàn), 并通過UART 和USB 與計(jì)算機(jī)(主機(jī)) 進(jìn)行通信。所設(shè)計(jì)的讀寫器完成測試后實(shí)現(xiàn)了產(chǎn)品化。

  1  ISO/ IEC 18000 協(xié)議

  1、1  ISO/ IEC 18000-6C 協(xié)議簡介

  ISO/ IEC 18000-6C 在數(shù)據(jù)傳輸時(shí), 規(guī)定先傳輸高字節(jié), 其前向鏈路的調(diào)制方式都是ASK, 采用PIE 編碼, 防沖突算法使用基于概率、分槽算法;其后向鏈路是通過反向散射調(diào)制技術(shù)來實(shí)現(xiàn)傳送數(shù)據(jù), 可以選擇FM0 編碼或者密勒編碼。為防止在讀寫器獲取標(biāo)簽信息的過程中, 把敏感數(shù)據(jù)擴(kuò)散出去, 6C 標(biāo)準(zhǔn)采用了相對簡單的加密算法, 該算法僅對讀寫器傳送到標(biāo)簽的數(shù)據(jù)信息進(jìn)行加密, 標(biāo)簽傳送到讀寫器的數(shù)據(jù)信息不進(jìn)行加密, 其實(shí)現(xiàn)過程是讀寫器首先從標(biāo)簽獲得一個(gè)16 bit寬隨機(jī)數(shù), 然后將要傳送的16 bit寬數(shù)據(jù)與該隨機(jī)數(shù)進(jìn)行模2 和計(jì)算得到密文, 最后標(biāo)簽解密獲得讀寫器發(fā)送的原始數(shù)據(jù)。

  ISO/ IEC 18000-6C 標(biāo)準(zhǔn)具備多次寫入能力, 并增加了部分存儲空間用于存儲用戶的附加數(shù)據(jù); 允許加入安全與訪問控制、傳感器網(wǎng)絡(luò)和Ad Hoc 網(wǎng)絡(luò)等功能支持; 具有隨時(shí)更新標(biāo)簽內(nèi)容的能力, 保證標(biāo)簽始終保存最新信息, 其鏈路頻率范圍可以在40~640 kHz 內(nèi)調(diào)整。在本文的設(shè)計(jì)中, 考慮到模擬前端的解調(diào)能力, 采用了50 kb/ s 的傳輸速率,后向鏈路采用FM0 編碼。

  1、2  ISO/ IEC 18000-6C 防沖突機(jī)制

  詢問機(jī)采用圖所示的三個(gè)基本操作管理標(biāo)簽群。每個(gè)操作均由一個(gè)或一個(gè)以上的命令組成。三個(gè)基本定義[3 ]如下。


讀卡器/ 標(biāo)簽操作和標(biāo)簽狀態(tài)

  (1) 選擇: 讀寫器選擇標(biāo)簽群以便于盤存和訪問的過程。詢問機(jī)可以用一個(gè)或一個(gè)以上的選擇命令在盤存之前選擇特定的標(biāo)簽群。
  (2) 盤存: 詢問機(jī)識別標(biāo)簽的過程。詢問機(jī)在四個(gè)通話的其中一個(gè)通話中傳輸查詢命令, 開始一個(gè)盤存周期, 一個(gè)或一個(gè)以上的標(biāo)簽可以應(yīng)答, 詢問機(jī)檢查某個(gè)標(biāo)簽應(yīng)答, 請求該標(biāo)簽發(fā)出PC、EPC和CRC216。
  (3) 訪問: 詢問機(jī)與各標(biāo)簽交易(讀取或?qū)懭霕?biāo)簽) 的過程。訪問前必須要對標(biāo)簽進(jìn)行識別, 訪問由多個(gè)命令組成, 其中有些命令執(zhí)行R ≥T 鏈的一次活頁加密。

  為解決防沖突算法問題, 標(biāo)簽內(nèi)應(yīng)具有一個(gè)16 位的隨機(jī)數(shù)發(fā)生器。查詢命令含有槽計(jì)數(shù)器參數(shù)Q。收到查詢命令后, 參與標(biāo)簽應(yīng)在(0 , 2Q - 1)范圍內(nèi)挑選一個(gè)隨機(jī)數(shù)值, 并應(yīng)將該數(shù)值載入其計(jì)數(shù)器, 挑選零數(shù)值的標(biāo)簽應(yīng)轉(zhuǎn)換成應(yīng)答狀態(tài), 并立即應(yīng)答; 挑選非零數(shù)值的標(biāo)簽應(yīng)轉(zhuǎn)換成仲裁狀態(tài),并等待發(fā)出查詢調(diào)整或查詢命令。

  若多個(gè)標(biāo)簽應(yīng)答但讀卡機(jī)通過檢測和解決波形一級的沖突, 可以解決其中一個(gè)標(biāo)簽發(fā)來的16 bit密鑰, 未解決的標(biāo)簽收到錯(cuò)誤的16 bit 密鑰, 并返回仲裁狀態(tài), 不反向散射其PC、EPC 和CRC216。發(fā)出查詢命令啟動一個(gè)盤存周期后, 詢問機(jī)一般要發(fā)出一個(gè)或一個(gè)以上的查詢調(diào)整或重復(fù)查詢命令。查詢調(diào)整命令重復(fù)以前的查詢命令, 可以令Q 增值或減值, 但不將新的標(biāo)簽引入該盤存周期內(nèi)。重復(fù)查詢以前的查詢命令, 參數(shù)不變, 也不將新的標(biāo)簽引入該盤存周期。處于仲裁或應(yīng)答狀態(tài)的收到查詢調(diào)整命令的標(biāo)簽首先調(diào)整Q (增值、減值或保持不變) , 然后在(0 , 2Q - 1) 挑選一個(gè)隨機(jī)數(shù)值, 將該數(shù)值載到槽計(jì)數(shù)器內(nèi)。挑選零數(shù)值的標(biāo)簽應(yīng)轉(zhuǎn)換到應(yīng)答狀態(tài)并立即應(yīng)答; 挑選非零數(shù)值的標(biāo)簽應(yīng)轉(zhuǎn)換到仲裁狀態(tài), 并等待下次命令。
  2  讀寫器的硬件設(shè)計(jì)

  采用直接射頻調(diào)制的發(fā)射機(jī)和零中頻結(jié)構(gòu)的接收機(jī)實(shí)現(xiàn)讀寫器的射頻前端, 發(fā)送和接收通路隔離采用多天線技術(shù)。頻率綜合器產(chǎn)生所需要的射頻信號, 經(jīng)過功分器得到兩路載波信號, 分別用于發(fā)送和接收通路。發(fā)送通路采用OOK調(diào)制, 基帶信號通過開關(guān)通斷控制載波是否經(jīng)過功放, 并由天線發(fā)送; 接收通路中接收信號先經(jīng)過功、放大等操作, 然后分別送到混頻器和兩路正交的載波信號進(jìn)行混頻, 對混頻之后的信號經(jīng)過濾波、放大、電平比較等操作, 恢復(fù)出數(shù)字基帶信號。相干解調(diào)采用正交I 和Q 兩路接收信號, 由于兩路接收信號相差90°相位, 無論接收信號和混頻信號相位差是多少, 總有一路能解調(diào)出有用信號, 避免了盲點(diǎn)的出現(xiàn)。

  讀寫器的數(shù)字基帶處理模塊主要包括一個(gè)單片機(jī)、兩個(gè)轉(zhuǎn)換芯片、外部接口以及蜂鳴器。單片機(jī)為PHILIPS 公司的P89LPC932A1 , 采用了高性能處理器結(jié)構(gòu), 指令執(zhí)行只需2~4 個(gè)時(shí)鐘周期, 6 倍于標(biāo)準(zhǔn)80C51 , 具有512B 片內(nèi)附RAM, 8KB FLASH程序存儲器以及增強(qiáng)型UART[4 ] 。外部時(shí)鐘頻率為12 MHz。該數(shù)字模塊主要完成協(xié)議指令處理、防沖突算法以及通信數(shù)據(jù)的編解碼和校驗(yàn)。

  3  讀寫器的軟件設(shè)計(jì)

  3、1  數(shù)字基帶的整體設(shè)計(jì)


  讀寫器數(shù)字基帶整體結(jié)構(gòu)包括指令譯碼模塊、串口通信模塊、數(shù)據(jù)編解碼模塊以及返回?cái)?shù)據(jù)處理模塊。

  讀寫器是在計(jì)算機(jī)(主機(jī)) 監(jiān)控之下進(jìn)行工作, 兩者之間形成主從通信模式。讀寫器接收到主機(jī)發(fā)來的指令, 由譯碼模塊確定讀寫器的具體操作。操作分為兩大類, 一類是對讀寫器操作。包括讀版本信息、設(shè)置工作頻率模式(固定頻率和跳變頻率) 和IAP 軟件升級等, 處理完成后將信息通過UART 返回給主機(jī); 另一類是對標(biāo)簽操作, 其中包括防沖突讀卡號、讀標(biāo)簽和寫標(biāo)簽等, 該操作指令通過PIE 編碼器發(fā)送后, 等待回波。返回?cái)?shù)據(jù)通過FM0 解碼器后進(jìn)入回波處理模塊, 數(shù)據(jù)正確則通過UART 返回給主機(jī)。

  3、2  防沖突算法的實(shí)現(xiàn)

  根據(jù)ISO/ IEC 18000-6C 防沖突算法, 針對讀寫器特定的應(yīng)用要求, 完成防沖突讀卡號。首先讀寫器發(fā)送選擇指令, 場區(qū)內(nèi)符合條件的標(biāo)簽返回就緒狀態(tài); 接著發(fā)送查詢指令開啟新盤存周期, 符合條件的標(biāo)簽進(jìn)入仲裁狀態(tài); 經(jīng)過多次查詢系列指令后, 計(jì)數(shù)器槽變?yōu)? 的標(biāo)簽進(jìn)入應(yīng)答狀態(tài)并返回16 bit密鑰, 讀寫器解碼正確后, 用其特有16 bit密鑰對其進(jìn)行讀寫操作, 其他標(biāo)簽返回就緒狀態(tài), 不再進(jìn)行防沖突過程, 繼續(xù)讀卡; 讀卡完成后, 已讀取標(biāo)簽退出盤存周期, 對剩下的標(biāo)簽進(jìn)行防沖突讀卡; 如果連續(xù)5 次沒有回波相應(yīng), 則認(rèn)為場區(qū)無卡, 結(jié)束防沖突讀卡。

  3、3  發(fā)送鏈路PIE 編碼器設(shè)計(jì)

  如圖所示, 發(fā)送R ≥T 鏈路應(yīng)采用PIE 編碼。Tari 為詢問機(jī)對標(biāo)簽發(fā)信的基準(zhǔn)時(shí)間間隔, 是數(shù)據(jù)0 的持續(xù)時(shí)間。


PIE 編碼波形圖

  根據(jù)其特點(diǎn), 編碼過程如下: 每次從讀取緩沖中取8 bit數(shù)據(jù), 循環(huán)左移, 根據(jù)移出位判斷0 或1 并利用分頻模塊進(jìn)行編碼操作, 左移8 次后, 取下一個(gè)數(shù)據(jù), 重復(fù)上述操作, 直到發(fā)送完所有數(shù)據(jù), 編碼結(jié)束。

  3、4  發(fā)送鏈路命令流程

  以對單標(biāo)簽進(jìn)行讀寫操作為例, 讀寫器首先發(fā)送選擇命令(標(biāo)簽進(jìn)入就緒狀態(tài)) , 然后發(fā)送查詢系列命令(當(dāng)槽隨機(jī)數(shù)為0 時(shí), 標(biāo)簽進(jìn)入應(yīng)答狀態(tài), 返回16 bit隨機(jī)密鑰) ; 在解碼16 bit密鑰波形后, 讀寫器發(fā)送ACK 命令(標(biāo)簽判定16 bit密鑰正確, 標(biāo)簽進(jìn)入確認(rèn)狀態(tài), 返回PC 和UII) ; 在確認(rèn)接收到PC 和UII 數(shù)據(jù)后, 讀寫器發(fā)送Req2RN 命令(如果標(biāo)簽判定16 bit密鑰正確, 進(jìn)入保護(hù)狀態(tài), 返回新密鑰) ; 讀寫器解碼新的16 bit密鑰之后, 發(fā)送讀/ 寫命令(標(biāo)簽判定16 bit密鑰正確, 標(biāo)簽保持狀態(tài), 返回讀取數(shù)據(jù)或者執(zhí)行對指定數(shù)據(jù)區(qū)寫入數(shù)據(jù)) ; 讀寫器對接收到的回波信號進(jìn)行解碼, CRC216 校驗(yàn)正確后對主機(jī)返回對應(yīng)數(shù)據(jù)(其中查詢系列命令采用前同步碼為幀頭, 其他用幀同步碼為幀頭)

  3、5  CRC16 校驗(yàn)設(shè)計(jì)

  根據(jù)ISO/ IEC 18000-6C 標(biāo)準(zhǔn)的規(guī)定, 要編碼CRC216 , 首先要用FFFFh 預(yù)先載入整個(gè)CRC 寄存器(即C [15∶0 ]) , 然后將編為輸入標(biāo)簽數(shù)據(jù)的數(shù)據(jù)位記錄下來, MSB 優(yōu)先。將所有數(shù)據(jù)位記錄下來后, C [15∶0 ]取反得到CRC216 值。要解碼CRC216 , 首先要用FFFFh 預(yù)先載入整個(gè)CRC 寄存器(C [15∶0 ]) , 然后將收到的數(shù)據(jù)和CRC25 {數(shù)據(jù), CRC216} 位記入數(shù)據(jù)位, 高字節(jié)優(yōu)先。若C [15∶0 ] = 1D0Fh , 則CRC216 解碼成功。軟件設(shè)計(jì)中, 即將16 bitCRC 寄存器根據(jù)輸入數(shù)據(jù)長度按位左移, 同時(shí)判斷輸入數(shù)據(jù)位與CRC寄存器最高位是否相異, 如果相異則將寄存器與0x1021 按位相異或。

  3、6  FM0 解碼器設(shè)計(jì)

  FM0 編碼是在1 個(gè)位窗內(nèi)采用電平變化來表示邏輯, 如果電平只在位窗的起始處翻轉(zhuǎn)則表示數(shù)據(jù)“1”; 如果電平除了在位窗的起始處翻轉(zhuǎn), 還在位窗的中間翻轉(zhuǎn)則表示為數(shù)據(jù)“0”。解碼過程: 首先讀寫器同時(shí)對I 和Q 兩路信號進(jìn)行采樣, 利用狀態(tài)機(jī)檢測返回幀頭的正確性,讀寫器根據(jù)幀頭的正確性來決定對I 或Q 路信號進(jìn)行解碼。針對FM0 編碼的特點(diǎn)可知, FM0 每個(gè)數(shù)據(jù)單元的起始處發(fā)生翻轉(zhuǎn), 由此可以根據(jù)起始處的上升沿或下降沿以及位窗中的采樣點(diǎn)來判斷出此位窗所表示的數(shù)據(jù)。設(shè)定一個(gè)位窗時(shí)間長度為T ,一種情況是位窗起始處為下降沿, 在該位窗3/ 4 T處采樣, 采樣為1 則位窗表示數(shù)據(jù)“0”, 采樣為0則位窗表示數(shù)據(jù)“1”; 另一種情況是位窗起始處為上升沿, 在該位窗3/ 4 T 處采樣, 采樣為1 則位窗表示數(shù)據(jù)“1”, 采樣為0 則位窗表示數(shù)據(jù)“0”。

  4  結(jié)語

  本文設(shè)計(jì)的讀寫器實(shí)現(xiàn)了對UHF 頻段下的ISO/ IEC 18000-6C 標(biāo)簽的防沖突讀卡號以及讀寫標(biāo)簽數(shù)據(jù)的功能。讀寫器可以在800~960 MHz 頻率范圍內(nèi)跳頻工作, 同時(shí)可以使用IAP 功能實(shí)現(xiàn)應(yīng)用中在線升級, 讀寫距離為8~10 m , 可以防沖突識別200 個(gè)卡以上, 最終實(shí)現(xiàn)了產(chǎn)品化。之后考慮到將來加入數(shù)字信號處理的需要, 在DSP 系統(tǒng)上做了對應(yīng)移植, 為研究RFID 讀寫器的SOC 設(shè)計(jì)提供了一定的參考價(jià)值。

  參考文獻(xiàn):
  [1 ] 游戰(zhàn)清,李蘇劍1 無線射頻識別技術(shù)(RFID) 理論及應(yīng)用[M]1 北京: 電子工業(yè)出版社, 2004
  [2 ] FINKENZELLER K1 射頻識別(RFID) 技術(shù)(第2 版) [M]1陳大才編譯1 北京:電子工業(yè)出版社,2001
  [3 ] ISO1800026C220042FDAM 1 :2006 (E) [ S]
  [4 ] User manual of P89LPC932A1 microcontroller [ K]

  作者簡介:
  林曦(1984 —) ,男,研究生,研究方向?yàn)槌哳lRFID 讀寫器的關(guān)鍵技術(shù)研究;
  王敬超(1982 —) ,男,研究生,從事RFID 讀寫器的系統(tǒng)設(shè)計(jì)及其小型化研究;
  張春(1972 —) ,男, 工學(xué)博士,副教授,研究方向包括數(shù)?;旌闲盘柤呻娐吩O(shè)計(jì)、嵌入式微處理器設(shè)計(jì)、數(shù)字信號處理系統(tǒng)、射頻識別等。

本文關(guān)鍵詞:RFID,讀寫器,UHF,標(biāo)準(zhǔn)
回到頂部