新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于嵌入式 RFID 中間件的標(biāo)簽數(shù)據(jù)處理

基于嵌入式 RFID 中間件的標(biāo)簽數(shù)據(jù)處理

作者: 時間:2010-01-11 來源:網(wǎng)絡(luò) 收藏

 (1) type_i 和type_j 為不同編碼方式;

 (2) type_i 和type_j 編碼方式相同,但是字段field_i_1 和field_j_1 取值不沖突;

 (3) type_i 和type_j 編碼方式相同而且前面對應(yīng)k-1 個字段都是固定值且相等,但是field_i_k 和field_j_k 取值不沖突;

 對應(yīng)字段 field_i_k 和field_j_k 滿足下面任一規(guī)則時不沖突。

 (1) field_i_k 和field_j_k 都為固定值且不相同;

 (2) field_i_k 和field_j_k 一個是固定值,另一個是區(qū)間low-high,固定值不包含在區(qū)間中;

 (3) field_i_k 和field_j_k 都是區(qū)間值而且沒有重疊。

 groupPattern 無重疊,即可進行分組操作。分組時URI 命令明確指出頭部分,查詢時直接使用SELECT 操作。其他4 個字段,因為格式可選(確定的數(shù)值/部分值[low-high]/所有值*/分組X),所以要對各個字段逐個判斷其格式類型,對不同格式分別生成SQL 語句,將各部分生成的SQL 語句匯總到一句中。例如分組命令urn:epc:pat:sgtin-96:0.X.*.[20000-90000],最終產(chǎn)生SQL 操作語句為:

 CREATE VIEW viewGroup AS SELECT * FROM tableURI WHERE Header=’sgtin-96’AND

 Filter = 0 AND Serial BETWEEN 20000 AND 90000 GROUP BY Company。

 3.5 提交數(shù)據(jù)報表

 每個 EventCycle(向客戶端提供報表的時間間隔,客戶端定義ECSpec 時設(shè)置)結(jié)束時根據(jù)Time 字段,選取生成視圖中當(dāng)前EventCycle 的數(shù)據(jù)封裝成XML 數(shù)據(jù)報表發(fā)送給客戶端。相應(yīng)操作語句為:

 //time2 = 當(dāng)前時間,time1 = time2 - EventCycle

 sql = sqlite3_mprintf(“SELECT * FROM viewGroup WHERE Time BETWEEN %d AND %d”,

 time1, time2);

 3.6 刪除過期數(shù)據(jù)

 為了使能長期穩(wěn)定工作,必須定期刪除過期數(shù)據(jù)。過期數(shù)據(jù)包括多次插入數(shù)據(jù)庫的重復(fù)URI 以及過濾和分組產(chǎn)生的臨時視圖。對重復(fù)產(chǎn)生的URI 數(shù)據(jù),只保留最新記錄。數(shù)據(jù)表table URI 總記錄條數(shù)大于某個值時調(diào)用數(shù)據(jù)備份程序,將表中的數(shù)據(jù)存貯到另一個目錄下,供用戶進一步處理。EventCycle 結(jié)束時刪除相應(yīng)視圖。

 4 結(jié)束語

 經(jīng)編譯運行測試,該系統(tǒng)體積非常小,除去 SQLite 動態(tài)庫不足1MB。兼容不同類型閱讀器,穩(wěn)定可靠,速度高??蛻舳耸褂眠^濾和分組命令能非常方便地訂閱所需數(shù)據(jù)。SQLite 憑借輕型,易于移植,免費開源的優(yōu)點,除了可以作為 的數(shù)據(jù)庫,還可廣泛用于其它領(lǐng)域,比如家庭網(wǎng)關(guān),POS 終端、智能手機和遠(yuǎn)程監(jiān)控系統(tǒng)等。


linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

上一頁 1 2 3 4 下一頁

評論


相關(guān)推薦

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

關(guān)閉