一、研究背景及設計方案
RFID是射頻識別技術(RadioFrequencyIdentification)的英文縮寫,射頻識別技術是一種非接觸式的自動識別技術,它使用射頻電磁波通過空間耦合(交變磁場或電磁場)在閱讀器和要進行識別、分類和跟蹤的移動物品(物品上附著有RFID標簽)之間實現無接觸信息傳遞并通過所傳遞的信息達到識別目的的技術。RFID是一種自動識別和數據捕獲技術,可以提供無人看管的自動監視與報告作業。
RFID閱讀器的工作原理如下:閱讀器通過天線發送出一定頻率的射頻信號,當標簽進入磁場時產生感應電流從而獲得能量,發送出自身編碼和相關信息被讀取器讀取并解碼后送回到計算機中進行有關處理,。識別工作無須人工干預,可工作于各種惡劣環境。高性能的RFID讀寫器可以同時識別多個物體。
在工業生產線RFID系統中,由于生產線現場的工作環境復雜,各類電磁干擾源非常多,采集點的數量多,而通常的RFID讀寫器,由于采用單片機為主控制器,運算能力弱,本地不具備數據分析和存儲能力,不具備較強的抗*力,對后臺系統數據處理能力要求較高,而在工業生產線上,如果直接將所有采集點(通常多達數百點)所讀取的信息直接傳回服務器,由于要在服務器上進行繁重的數據分析和干擾排除,過大的數據量和計算量很容易造成服務器端的信息堵塞,進而影響系統的穩定性。所以現有的解決方案往往直接使用價格昂貴的工業PC機完成前端工作,但這樣無疑大大增加了總體的部署成本。本系統的設計思路見圖(1)通過功能強大的RFID嵌入式終端,直接在本地完成復雜的標簽讀取,數據糾錯,干擾排除,信息提取和數據保存等工作,僅將有效信息通過網絡傳輸給后臺服務器,這樣就大大降低網絡通信的開銷,降低了服務器的資源占用,從而提高了系統整體的運行效率,提高了穩定性,增加了業務的靈活性。
圖(1)RFID技術應用于生產線總體示意
二、系統的總體硬件設計
為了達到設計功能和環境需求,本系統底板采用了PCB6層設計,機殼加裝了電磁屏蔽網,另外專門配備了PCMCIA接口用來外接RFID讀寫模塊,采用的主要元件如下:
①微處理器(MPU):針對終端需要高速運算和數據庫操作的需要,并考慮到系統外圍設備的需求情況,本系統采用ARM9核的SAMSUNGS3C2410處理器。zui高主頻可達203MHz。
②SDRAM存儲部分采用兩顆Hynix公司的HY57V561620CT內存,大小為32M。
③FLASH存儲器采用SAMSUNG公司的K9F1208UOMNandFlash,大小為64M。
④RFID閱讀器模塊:采用了WJ公司的MPR6000系列產品,PCMCIA接口。
⑤網絡通信模塊:采用了Realtek8039芯片,支持10M/100M網絡通信。
三、系統的軟件系統介紹
系統的軟件部分主要由Linux基本系統、RFID標簽識別解析模塊、嵌入式數據庫操作模塊、網絡通信等模組成,軟件模塊關系如圖(2),下面簡單介紹一下各模塊的功能和主要函數。
圖(2)軟件系統流程
①Linux基本系統
由于Linux成本低,代碼開放,穩定性高,多線程,支持USB、Flash等多種外設,底層支持TCP/IP網絡,故本系統將其移植到ARM9上作為操作系統,內核版本號為2.4.1。由于文件系統涉及數據庫文檔保存,故采用了YAFFS文件系統,另外就是針對本系統采用的外設和功能對Linux內核作了相應裁減,以降低其內存占用。提高速度。
②RFID標簽識別解析模塊
在設計中采用了WJ公司PCMCIA接口的RFID讀寫器模塊MPR6000,該模塊通過UART-over-PCBUS總線與嵌入式主機進行數據通信,其通信的特點如下:遵循命令-回復的通信模式,首先由系統向RFID讀寫模塊發命令幀,讀寫模塊在識別到通信包頭的時候讀取命令字,并進行CRC糾錯,如果錯誤的話則忽略該幀,有效地話則執行相關指令,并將讀取的標簽信息及結果編成返回數據幀傳給系統,系統收到通信幀時也同樣進行包頭識別和CRC糾錯,如正確的話就進行解包并取得標簽相關信息。
命令包的格式如下

命令幀范例樣本如下:01000D11001E011830182EB769CC通過解包后表示如下內容:從一號天線,以1E的功率,讀取過濾碼(即標簽前幾位的ID號)為30182EB7的RFIDEPCClass0標簽,幀長度為0D,CRC糾錯碼為69CC。
返回幀的格式如下

返回幀范例樣本如下:010011010130182EB72000000000000074F6
通過解包后表示如下內容:讀取到一個96bit的EPC標簽,標簽ID為30182EB72000000000000000,讀取操作完成,數據幀長度為11,CRC糾錯碼為74F6。
針對通信幀的特點設計的Linux平臺驅動軟件由以下幾個主要的子函數組成:
1、unsignedshortCalculateBlockCRC16(intlen,unsignedchar*pBuf);進行CRC計算和驗證
2、intAppendCRC(void*pBuf,unsignedshortCRC);將算出的CRC值添加到請求包位置
3、intUartSend(void*pBuf,intuart_num);將算出的CRC及命令字發送到串口
4、intUartRead(unsignedchar*pBuf,intuart_num);從的串口讀入返回的數據包
5、intCRCcheck(unsignedchar*pBuf,unsignedshortCRC);比對得到的CRC與數據包是否正確
6、intProcessTag(unsignedchar*pBuf,unsignedcharTags[]);
處理得到的返回楨,分離出讀取到的條碼編號,并存入數組進行暫存,為下一步數據庫存取做好準備除以上子函數外,還有其它相應的函數來進行剔除干擾數據包,處理異常等工作,經本模塊處理后,已經可以確保可以過濾絕大多部分的干擾信息了,這樣處理完的數據就可以直接進行數據庫記錄和通過網絡傳輸給后臺數據庫了。
③嵌入式數據庫操作模塊
嵌入式數據庫是整個系統的重要組成部分,在本系統中采用了開源的小型嵌入式數據庫SQLite,支持SQL92標準數據庫操作語句和事務,其工作流程如下:當讀取到條碼時,本模塊將條碼號、讀取時間、條碼內容、采集點編號,操作狀態等信息寫入本地數據庫,從而實現采集數據的本地初步存儲,數據庫在此列舉幾個主要的子函數如下:
1、intQuery_Init(string*p_command,struct*p_DB_Status,inttype);選擇基本的SQL操作符符號和初始值設置,為執行數據庫操作做好準備。
2、intQuery_Exec(intdb,string*p_command,void(*p_fuction)(*str),(void*)&res);選擇數據庫,根據SQL操作符進行數據庫操作,并將返回數據通過p_function函數處理。
3、intQuery_CallBack(void*p_data,intnum,char**value,char**column);將數據庫操作返回的數據列表暫存到數組中,以待下一步處理。
除以上函數外,還預留了相應的接口用來完成前端數據庫和后臺數據庫的同步,經測試,平均插入一條數據的時間<=0.01秒,滿足了系統的即時性上的需求。
④網絡通信模塊
本系統的特色就是通過嵌入式Linux操作系統的網絡底層支持,以多種網絡傳輸途徑,將數據和后臺數據服務器進行數據傳輸。在本系統的網絡部分設計中,在局域網內利用Linux系統的提供的TCP/IP協議支持,在編程中采用了動態與服務器建立連接的方法,在讀取到RFID芯片并解碼出有效信息的時候,向服務器相應端口發送相應的Socket請求信息,服務器端接受到請求后建立連接并新建Socket端口來和終端進行通信;只有在讀取數據的時候數據庫和終端間才產生數據傳輸和占用服務器端資源,從而降低了網絡占有率和服務器端的負荷,通信部分終端客戶端部分的主要子函數如下:
1、intNet_Init(struct*p_net_Status,inttype);初始化通信,根據選擇通信的類型建立和服務器端的網絡連接,取得服務器基本信息,并建立Socket連接。
2、intNet_Send(string*p_data,intlen,structsockaddr*p_addr);發送大小字符串到連結的服務器端口。
3、intNet_Receive(string*p_buffer,intlen,structsockaddr*p_addr);從服務器接受數據(主要是接受指令)到緩沖區內。
由于Linux底層提供了TCP支持,可以保證通信的可靠性,大大降低了編程復雜度,所以只要經過簡單的對Socket函數進行了封裝來實現數據網絡傳輸,配合服務器端程序即可將標簽信息保存到后臺的主數據庫中,并由后臺服務器根據通信內容進行數據保存,發送控制命令等操作。
四、結論
本文中描述的嵌入式RFID終端讀取器,在冰箱生產線中進行了實用,基本滿足了生產線RFID系統對前端RFID標簽數據采集、處理、通信方面的要求,在功能上和穩定性方面已經能夠替代現有的工業PC,因為采用了免費的開源Linux操作系統和開源數據庫Sqlite,大大降低了總體成本,對在生產線上進行RFID讀寫終端的大量部署非常有利。
本文作者創新點:通過設計使用功能強大的RFID嵌入式讀寫終端,將抗干擾、信息提取、日志保存等功能在終端進行本地處理,從而大大降低了網絡通訊負擔和后臺服務器占用,滿足了生產線上的工作環境和需求。(來源:IT168)
穆格MOOG伺服閥多少錢
美國ROSS閥門多少錢
VSVA系列FESTO閥多少錢
費斯托FESTO接頭多少錢
日本SMC執行器哪家好
日本SMC接頭多少錢
型號:PFMB7501-04-A-A德國巴魯夫BALLUFF傳感器報價
美國ROSS電磁閥哪家好