沈陽工業大學化工過程自動化學院 孫 鐸 佟維妍 張佳楠 王余杰 王 建
基于MSP430和Zigbee的RFID讀寫設備
沈陽工業大學化工過程自動化學院 孫 鐸 佟維妍 張佳楠 王余杰 王 建
本文提出了一種基于RFID和Zigbee的讀寫設備的設計方案。介紹了系統的總體結構及工作過程,簡述了基于MSP430和Zigbee的RFID讀寫設備的軟硬件設計。該系統的實施將大大提高管理效率,具有一定的應用價值。
RFID讀寫設備;Zigbee;MSP430
RFID是一種非接觸式自動識別技術,它通過無線射頻方式,實現對RFID標簽的信息獲取。RFID技術可同時識別多個高速運動的標簽,其工作可靠性高、保密性強、方便快捷[1]。
ZigBee技術是一種具有低復雜度、近距離、低成本等特點的雙向無線通訊技術[2]。主要應用于功耗低、低傳輸率且近距離的各種電子設備之間數據的傳輸,也適用于典型的間歇性、周期性數據和低反應時間數據的傳輸[3]。ZigBee作為一種新興起的短距離無線通信國際標準協議,在通信產品中的應用得到了快速發展,進入大規模的商業生產和應用時期。
基于物聯網的先進思想,提出一種基于MSP430和Zigbee的RFID讀寫設備,將ZigBee技術和RFID技術相結合,以MSP430F149單片機為系統控制器,利用ZigBee無線傳感器網絡的無線自組網原理實現了手持移動式RFID讀寫端和PC機接收端的遠程無線通信,無需布線,可根據具體的情況隨時隨地將RFID讀寫端連入網絡,網絡管理容易,能夠迅速采集多個電子標簽信息,提高了組網的數據傳輸的可靠性、安全性和便捷性,滿足物聯網的發展要求。
RFID讀寫設備是利用射頻技術(RFID)讀/寫電子標簽信息的設備,可將上位PC機的讀寫命令傳送到電子標簽,同時進行數據加密,將電子標簽返回的數據解密后送到上位PC機或通過LCD顯示[4]。
RFID讀寫設備包括手持移動式RFID讀寫端和PC機接收端兩部分,如圖1。工作時,管理員啟動手持移動式RFID讀寫端,當工作區域內有電子標簽時,RFID讀寫端自動讀取該標簽的相關信息,實時地將數據通過ZigBee無線傳感器網絡發送至PC機接收端,PC機接收端通過RS232串行通信與PC上位機進行通訊連接,將現場數據傳輸至上位機管理系統進行數據管理[5]。

圖1 RFID讀寫設備結構示意圖
手持移動式RFID讀寫端采用電池供電方式,主要由MCU、RFID讀卡模塊、讀寫端ZigBee模塊、LCD顯示模塊、鍵盤電路、電源模塊等構成。
MCU采用了超低功耗的16位單片機MSP430F149,其采用了精簡指令集(RISC)結構,只有簡潔的27條指令,運算速度快。片上集成了豐富的外設,如12位模數轉換器、看門狗、SPI等。MSP430適應工業級的運行環境,更適合應用于使用電池供電的儀器儀表類產品中,如圖2所示。本設計的軟件采用高效的MSP430系列的C語言編寫,軟件的開發選擇了IAR 5.5開發環境。利用IAR 5.5軟件可直接通過單片機的JTAG接口下載程序或讀取單片機內數據。在MSP430F149中存儲RFID中間件程序和ZigBee通訊程序,起著連接底層設備的作用,實現數據傳輸和處理、實時數據的采集功能。

圖2 手持移動式RFID讀寫端MCU原理圖
RFID讀寫卡芯片選用了低電壓、低功耗、小尺寸非接觸式讀寫基站芯片RC522,通過10Mbit/s的SPI方式與手持移動式RFID讀寫端MCU通信。

圖3 RFID讀卡模塊電路圖
手持移動式RFID讀寫端通過與讀寫卡芯片連接的天線和電子標簽線圈產生共振來傳遞數據,當有電子標簽處在讀寫端的有效工作范圍內時,MSP430通過RC522向電子標簽發出尋卡命令,當讀寫卡芯片的天線檢測到電子標簽的響應信號后,經過天線匹配后把接收信號傳送到讀寫卡芯片,讀寫卡芯片內部對該信號進行解調,并進行相應的解密處理,從而完成讀寫卡芯片與電子標簽的通訊,讀寫卡芯片完成和電子標簽的通訊后再將接收到的數據發送至手持移動式RFID讀寫端MCU[6],如圖3所示。
若同時有多張電子標簽在天線的工作范圍內,讀寫端將啟動防沖撞機制,依據電子標簽的序列號來選擇一張電子標簽,被選中的電子標簽再與讀寫端進行密碼校驗,確定讀寫端對電子標簽存在操作權限并且保證電子標簽的合法性,而未被選中的則仍然處在閑置狀態,等待下一次尋找命令。
防沖撞程序如下:
char PcdAntlcoll(unslgned char *str)
{
char stts;
unslgned char l,hecha=0;
unslgned lnt changdu;
unslgned char hcsj[ZHUIDA];
Qishiwei(Zhuangtai,0x08);
Xierame(Biaozhi,0x00);
Qishiwei(Xunhuan,0x80);
hcsj[0] = PLCC_ANTLCOLL1;
hcsj[1] = 0x20;
stts = Pqqsd(PCD_TRANSCELVE,hcsj,2,hcsj,&chan gdu);
lf (stts == WANHAO)
{
for (l=0; l<4; l++)
{
*(str+l) = hcsj[l];
hecha ^= hcsj[l];
}
lf (hecha != hcsj[l])
{stts = CHUOWU; }
}
Shezhimas(Xunhuan,0x80);
return stts;
}
PC機接收端主要由MCU、接收端ZigBee模塊、電平轉換模塊、電源模塊等構成。
手持移動式RFID讀寫端和PC機接收端的ZigBee模塊選用符合2.4GHz IEEE802.15.4標準的射頻收發器CC2420。CC2420支持數據傳輸率高達250kbps,通過SPI接口進行編程配置,如圖4所示。PC機接收端ZigBee模塊可同時與多個手持移動式RFID讀寫端ZigBee模塊之間進行數據傳輸。

圖4 ZigBee收發模塊電路圖

圖5 PC機接收端電平轉換模塊電路圖
接收數據并判斷程序如下:
if(CC2420_RxPacket())
{
CC2420_ReadRXFIFO();
CC2420_SetRxMode();
if(CC2420_PSDU[25] == 1)
{
LED1_1;LED2_0;BELL_0;delay_ms(50);LED1_0;LED2 _0;BELL_1; CC2420_PSDU[25] = 0;
}
if(CC2420_PSDU[25] == 2)
{
LED1_0;LED2_1;BELL_0;delay_ms(50);LED1_0;LED2 _0;BELL_1; CC2420_PSDU[25] = 0;
}
SCLK_OFF();CSN_ON();CC2420_ Command(CMD_SFLUSHRX);
}
在本設備中,PC機與PC機接收端采用近距離的串行通信,采用RS232實現。MSP430單片機串口的輸入輸出均為TTL低電平,PC機的RS232接口采用RS232標準的EIA電平,故選用MAX232CSE芯片實現這兩種電平之間的轉化,如圖5所示。
本文主要研究的是基于MSP430和ZigBee的RFID讀寫設備的設計。采用MSP430F149單片機微處理器與RFID模塊或芯片構建RFID讀寫器,實現對RFID標簽的信號采集、顯示及傳輸等功能。該設備網絡適應能力強,可根據具體的情況隨時隨地將RFID讀寫設備連入網絡,網絡管理容易。
[1]駱波濤,馬文清,李沛東.基于RFID的實驗室設備管理系統的設計與實現[J].軟件導刊:教育技術,2011(08):84-86.
[2]王占領.淺析無線通訊技術中近距離通訊技術的發展[J].科技創新與應用,2014(10):31.
[3]劉建杰,梁高紅,等.數字化系統在盤古梁油田的建設及應用[J].中國科技博覽,2012,14.
[4]蔣武洲.RFID應用系統通過Web服務傳輸數據的研究與實現[J].計算機工程與設計,2007(13):3126-3129.
[5]佟維妍,等.基于ZigBee的RFID讀寫設備:中國,ZL20 1320707110.2[P].2014-04-30.
[6]朱炳瑞,裴煥斗,劉春力.基于RFID的單片機系統設計[J].電子世界,2013(01):129-130.
孫鐸(1994—),男,遼寧錦州人,大學本科,現就讀于沈陽工業大學化工過程自動化學院電氣工程系測控技術與儀器專業。
佟維妍(1981—),女,遼寧遼陽人,碩士,講師,研究方向:智能控制理論及其應用。
遼寧省教育廳科學研究一般項目(項目編號:L2015394);2015年遼寧省教育廳大學生創新創業訓練計劃項目。