新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于ARM11和RFID技術(shù)的智能物流管理

基于ARM11和RFID技術(shù)的智能物流管理

作者: 時間:2016-10-22 來源:網(wǎng)絡(luò) 收藏

摘要:企業(yè)信息化建設(shè)的成敗,取決于完備和真實的數(shù)據(jù)自動識別技術(shù),就是利用計算機系統(tǒng),進行信息化數(shù)據(jù)自動采集的一種信息技術(shù)。無線射頻識別技術(shù),是自動識別技術(shù)的一種高級形式具有獨特的技術(shù)優(yōu)勢。近年來成為業(yè)界關(guān)注的焦點,在物流和供應(yīng)鏈管理中的應(yīng)用得到空前,應(yīng)用效果日益彰顯,成為物流和供應(yīng)鏈管理發(fā)展的巨大推動力。本設(shè)計選擇11當下主流的MCU,結(jié)合RFID技術(shù),采用固定式RFID的讀卡器來采集信息,由串口發(fā)送至11為核心的數(shù)據(jù)處理終端進行處理,以簡便的方式實現(xiàn)了物流系統(tǒng)中對貨品的出入庫操作。

本文引用地址:http://m.butianyuan.cn/article/201610/309285.htm

關(guān)鍵詞:RFID;;;

物流在整個企業(yè)的供應(yīng)鏈中占有非常重要的比重。通過RFID的批量識別,實現(xiàn)物流的出庫,入庫,和分揀流程。通過GPS定位系統(tǒng),實時獲取車輛在途信息。通過服務(wù)器和數(shù)據(jù)中心的實時數(shù)據(jù)分析和報表功能,可能掌握企業(yè)資源的動態(tài)變化。系統(tǒng)大幅提升整個供應(yīng)鏈的效率。

1 系統(tǒng)方案

在本設(shè)計中采用固定式RFID的讀卡器來采集信息,由串口發(fā)送至ARM11為核心的數(shù)據(jù)處理終端進行處理。因此該系統(tǒng)分為兩個部分。

第一部分:RFID電子標簽信息的采集,主要是選擇固定式的讀卡器來識別RFID標簽信息并發(fā)向終端;

第二部分:數(shù)據(jù)采集,該部分以ARM11為核心處理器的數(shù)據(jù)處理終端,在終端上搭載Linux操作系統(tǒng),并安裝有數(shù)據(jù)庫SQLite和QT/E來進行數(shù)據(jù)的采集和存儲。

2 實現(xiàn)模塊

本系統(tǒng)的實現(xiàn)依賴于以下4個功能模塊:1)RFID信息的采集;2)串口數(shù)據(jù)的實時讀取;3)SQLite數(shù)據(jù)的操作;4)Qt/E用戶界面的設(shè)計。

2.1 RFID電子信息的采集

2.1.1 RFID電子標簽

RFID電子標簽分為被動標簽(Passive tags)和主動標簽(Aetlve tags)兩種。主動標簽自身帶有電池供電,讀/寫距離較遠,同時體積較大,與被動標簽相比成本更高,也稱為有源標簽。被動標簽由閱讀器產(chǎn)生的磁場中獲得工作所需的能量,成本很低并具有很長的使用壽命,比主動標簽更小也更輕,讀寫距離則較近,也稱為無源標簽。一般來說,無源標簽是取代條形碼標簽的主要發(fā)展方向,有源標簽因為其長距離識別的優(yōu)勢,主要應(yīng)用于大型的高速運動物體的標識識別之上。如機動車的跟蹤和識別、動物或人類身份的跟蹤和識別。

下面主要是以無源標簽為例介紹其原理和性能的。

RFID電子標簽由天線和專用芯片組成,天線是存塑料片基上鍍上的銅膜線圈,在塑料基片上還嵌有體積非常小的集成電路芯片,在這個集成電路芯片中有高速的射頻接口,控制單元,EEPROM 3個模塊組成。如圖1所示。

基于ARM11和RFID技術(shù)的智能物流管理

2.1.2 電子標簽識別系統(tǒng)

一個真正的RFID電子標簽識別系統(tǒng)至少應(yīng)包含電子標簽、閱讀器、數(shù)據(jù)處理和存儲的設(shè)備以及系統(tǒng)軟件。通常閱讀器與電腦相連,所讀取的標簽信息被傳送到電腦上進行下一步處理。閱讀器通過天線發(fā)送出一定頻率的射頻信號,當標簽進入這一定頻率的射頻信號磁場時產(chǎn)生感應(yīng)電流從而獲得電能,產(chǎn)生電壓供給電子標簽內(nèi)集成電路工作,并通過自身的RFID電子標簽天線發(fā)送出自身編碼等信息,由閱讀器接收天線接收讀取并解碼后送至電腦主機進行相關(guān)處理。

2.1.3 射頻讀卡模塊

本設(shè)計采用的讀卡器是TX125系列射頻讀卡模塊。TX125系列非接觸IC卡射頻讀卡模塊采用125K射頻基站。當有卡靠近模塊時,模塊會以韋根或UART方式輸出ID卡卡號,用戶僅需簡單的讀取即可。該讀卡模塊完全支持EM、TEMIC、TK及其兼容卡片的操作。

數(shù)據(jù)格式:6字節(jié)數(shù)據(jù),高位在前,格式為5字節(jié)數(shù)據(jù)+1字節(jié)校驗和(異或和)。例如:卡號數(shù)據(jù)為0B00D5FOC7,則輸出為0x0B 0x00 0xD5 0xF0 0xC7 0xE9(校驗和計算:0x0B^0x00^0xD5^0xF0^0xC7=0xE9)。第一個字節(jié)0x0B一般是廠家碼。中間4個字節(jié)0x00 0xD5 0xF0 0xC7是卡片的序列號。一般卡片上印刷的都是10進制碼。例如:001402807213 61639。上面的數(shù)據(jù)可以通過轉(zhuǎn)換得到。轉(zhuǎn)換方式如下:將中間4個字節(jié)卡號0x00D5F0C7轉(zhuǎn)換為十進制,即得001402807;將卡號的第二字節(jié)0xD5轉(zhuǎn)換為十進制,即得213,將卡號的最后兩字節(jié)0xF0C7轉(zhuǎn)換為十進制,即得61639。

在串口方式下,可工作存主動與被動模式。主動模式:當有卡進入該射頻區(qū)域內(nèi)時,主動發(fā)出以上格式的卡號數(shù)據(jù)。被動模式:CLK的下降沿觸發(fā)卡號的輸出,格式為以上數(shù)據(jù)格式。操作方法為:在準備讀取卡號之前,打開串口中斷并啟動超時定時器(80 ms),將一直保持高電平的CLK置低電平,產(chǎn)生下降沿并一直保持低電平,等待卡號數(shù)據(jù)接收,若接收到卡號后存儲待用,若在等待過程中無數(shù)據(jù)接收,且超時定時器已經(jīng)溢出,則表示本次讀取卡號失敗;無論成功與失敗最后都將CLK重新置高電平,進入待機以便下一次讀取卡號。

串口通訊協(xié)議,就是讀卡模塊以何種格式把讀取到的卡號發(fā)送出來。TX125支持韋根接口和串口兩種協(xié)議。UART接口一幀的數(shù)據(jù)格式為:1個起始位、8個數(shù)據(jù)位、無奇偶校驗位、1個停止位。波特率可選擇9 600 bps或者19 200 bps。在本設(shè)計中連接6 410網(wǎng)關(guān)設(shè)備的/dev/tty SAC1串口設(shè)備,選擇設(shè)置波特率為9 600。

采用多線程的方式等待RFID刷寫讀卡器,主要函數(shù):pthread_create (th_kb,NULL,KeyBoardPthread,0);pthread_creat (rf_ rev,NULL,RFIDRevPthread,0)。建立兩個線程,第一個是以鍵盤輸入的方式讀寫RFID信息,第二個線程的功能是監(jiān)控串口/dev/ttySAC1中的信息,已實現(xiàn)實時的捕捉刷寫RFID標簽信息。

2.2 串口數(shù)據(jù)的實時讀取

在linux操作系統(tǒng)中,對外設(shè)的訪問往往都是使用open()函數(shù),以打開文件的方式讀取數(shù)據(jù)。在本設(shè)計中對串口數(shù)據(jù)的瀆取也正是通過open()函數(shù)打開/dev/ttySAC1這一串口驅(qū)動文件,獲取由讀卡器發(fā)送給ARM11主核心板的數(shù)據(jù),實現(xiàn)函數(shù)為open(/dev/ttySAC1,O_RDWR | O_NOCTTY),標志位為O_RDWR | O_NOCTTY,意義是系統(tǒng)以可讀寫的方式打開文件,如果欲打開的文件為終端設(shè)備時,則不會將該終端當成進程控制終端。

在打開串口文件之前,我們要對串口進行相應(yīng)的設(shè)置,具體步驟有以下幾步:串口屬性的設(shè)置,保存原先串口配置,激活選項,設(shè)置波特率,設(shè)置字符大小,設(shè)置校驗,設(shè)置停止位,設(shè)置最少字符與等待時間,清楚串口緩沖,激活配置。設(shè)置由以下結(jié)構(gòu)體實現(xiàn):

基于ARM11和RFID技術(shù)的智能物流管理

成功打開驅(qū)動文件后,需要做的就是使用read()函數(shù)來讀出讀卡器發(fā)送的信號,以判別貨品的類型,將其信息準確的存入到數(shù)據(jù)庫。 Read()函數(shù)的函數(shù)原型為read(int fd,void*huf,size_t count),read()實現(xiàn)的功能是從參數(shù)fd所指的文件傳送count個字節(jié)到buf指針所指的內(nèi)存中。讀出的數(shù)據(jù)將存入buf中,作為識別RFID標簽的依據(jù)。

2.3 SQLite對數(shù)據(jù)的管理

在嵌入式設(shè)備上使用的數(shù)據(jù)庫有很多,比如MySQL。本設(shè)計選擇的是更為簡便的數(shù)據(jù)庫SQLite。本設(shè)計中建立的是一個物流商品信息的數(shù)據(jù)庫系統(tǒng),包含的信息有:商品的名字(char型),商品的ID號(char型)以及商品的價格(int型)。這些信息都將被存放在table merchan dise中。

當代表商品的RFID標簽第一次刷寫讀卡器的時候,系統(tǒng)將根據(jù)它的標簽標號,唯一確定它的商品名、商品ID號以及價格,并把這些消息一次性寫入到表merchandise中。已經(jīng)存入庫中的商品RFID標簽再次刷寫讀卡器的時候,將作為該商品的出庫操作,系統(tǒng)將自動的刪除該商品在數(shù)據(jù)庫中的信息。

存數(shù)據(jù)的管理部分,充分利用SQLite提供的便捷有效的API函數(shù):sqlite3_open(),sqlite3_exec()和sqlite3_close()等,打開和操作數(shù)據(jù)庫文件。

在商品的整個入庫、出庫的操作中,數(shù)據(jù)的錄入和刪除將是由系統(tǒng)自動完成,免去了人為的操作,大大提高了倉庫管理的效率,減少了人力資源。

2.4 Qt/E用戶界面的設(shè)計

QT/E即Qt Embedded是挪威Trolletch公司的圖形化界面開發(fā)工具。Qt的嵌入式版本,擁有較高的運行效率,而且整體采用面向?qū)ο缶幊蹋瑩碛辛己玫捏w系架構(gòu)和編程模式。在系統(tǒng)設(shè)計時,為了使管理人員更好地管理倉庫物品的信息,在開發(fā)板上配備了一個4.2寸的觸摸屏,來提供良好的UI界面,以便觀察數(shù)據(jù)庫內(nèi)的存貨信息。

在本設(shè)計中,選擇QT來開發(fā)UI界面。在主界面中,加入了一個Table View控件,用來綁定SQLite數(shù)據(jù)庫文件rfid_sqlite.db。在開發(fā)過程中,添加頭文件“QSqlDatabase”,這是Qt用來連接數(shù)據(jù)庫所必備的頭文件,該頭文件下包含了很多的函數(shù)來操作數(shù)據(jù)庫,將數(shù)據(jù)信息呈現(xiàn)給用戶。語句QSqlDatabase db=QSqlDatabase::addDatabase(“QSQLITE”),指明了Qt所需要連接的數(shù)據(jù)庫類型為SQLite,接著再通過db.setDatabaseName(“rfid_sqlite.db”)來打開鏈接系統(tǒng)所需要的數(shù)據(jù)庫,默認路徑為當前文件夾,顯示結(jié)果如圖2所示。

基于ARM11和RFID技術(shù)的智能物流管理

3 實現(xiàn)功能

本設(shè)計的目的是通過RFID的批量識別,實現(xiàn)物流的出庫、入庫和分揀流程。通過服務(wù)器和數(shù)據(jù)中心的文時數(shù)據(jù)分析和報表功能,掌握企業(yè)資源的動態(tài)變化。本系統(tǒng)中選擇使用固定式的低頻率的讀卡器,來實現(xiàn)商品信息的錄入與刪除,模擬了四種不同的商品:A,B,C,D,對應(yīng)相應(yīng)的商品ID。商品入庫的時候,依此把RFID標簽放在讀卡器上進行刷寫,終端部分通過對串口/dev/ttyrSAC1的實時監(jiān)測,當數(shù)據(jù)刷寫的時候,在RFID標簽ID鑒別的函數(shù)體內(nèi),以ID號為判別依據(jù),調(diào)用數(shù)據(jù)庫操作文件sqlite.c中定義好的函數(shù)體sqliteDB_opt_add(char*na me,char*id,int price)錄入商品信息;在商品出庫時,再次刷寫需要出入庫的RFID標簽,系統(tǒng)將自動識別該商品的刷寫次數(shù),來鑒別其操作方式是出庫還是入庫。當判斷出是第二次刷寫時,將調(diào)用函數(shù)體sqliteDB_opt_delete_by_id(char*id),從數(shù)據(jù)庫中刪除該商品的信息,以達到數(shù)據(jù)出庫的操作。標簽的首次刷寫視為商品的入庫,第二次刷寫視為出庫操作,這一信息的錄入與刪除,用戶可以從UI界面的Table View控件內(nèi)實時觀察到。

4 結(jié)論

本設(shè)計以ARM11微處理器為核心,結(jié)合了Linux操作系統(tǒng)和TX125系列射頻讀卡模塊實現(xiàn)了的貨品管理系統(tǒng)。重點實現(xiàn)了在嵌入式設(shè)備系統(tǒng)中進行數(shù)據(jù)庫的開發(fā)以及UI用戶界面等的開發(fā)和移植。經(jīng)實驗證明,該系統(tǒng)實現(xiàn)了物品出庫和入庫的管理功能,方便實用。充分凸顯了RFID技術(shù)在當下有著較強的實用性,更體現(xiàn)了嵌入式系統(tǒng)給日常生活帶來了的極大便利,為物流行業(yè)帶了很大的收效。本設(shè)計還有很多需要繼續(xù)完善的地方,如要給每個物品加上GPS定位,以實現(xiàn)客戶和物流公司對物品流向的監(jiān)測。



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉