李 頎,周 維,薛宇航,何艷麗
(陜西科技大學電氣與信息工程學院,西安710021)
鉆井和修井使用的各類鉆具是開發和維護油井正常運行的生命線[1]。鉆具的及時跟蹤和有效管理對安全鉆井和高效生產起著至關重要的作用。傳統的油田鉆具巡檢是以紙質記錄為主的人工巡檢模式。從產品入庫、倉儲、發料、修理、報廢等環節,都要反復多次的數量清點、標記辨認和人工記錄等煩瑣工作,巡檢人員需隨身攜帶大量表格,后期需要人工將巡檢數據錄入計算機系統,巡檢效率低,并且以紙張為載體的數據記錄不靈活,巡檢內容有任何改變都需要新印制表格,造成極大浪費,同時缺乏有效的監督。所以這種紙質的記錄巡檢模式不利于鉆具資源得到合理利用,不利于發現失效的鉆具,難以適應鉆井市場快速的發展需要[2]。目前,油田鉆具管理采取基于二維條形碼巡檢的方法,二維條形碼的優點是成本低,抗干擾能力較強。但是二維條形碼的缺陷是條碼讀取時只能一次一個,讀條碼時需要光線,存儲資料的容量小,條碼資料不可更新,需要靠人工讀取有人為疏失的可能,最重要的是當條碼污損將無法獲取,移動讀取有所限制。
針對這些情況,提出基于RFID的油田鉆具巡檢手持設備的開發,該手持設備將嵌入式技術、RFID技術和GPRS技術相結合完成對鉆具數據采集和傳輸,從而實現對鉆具的有效跟蹤和管理。
油田鉆具巡檢系統由RFID手持設備和服務器組成,巡檢系統示意圖如圖1所示。手持設備用來識別鉆具上的電子標簽的身份信息,通過GPRS網絡與巡檢系統服務器聯網,將現場巡檢的數據發送到巡檢系統數據庫中,由服務器進行存儲并分析鉆具信息,將分析結果返回到RFID手持設備上,由巡檢人員核查設備,解決問題并及時更新數據,將更新的數據再通過RFID手持設備和GPRS網絡發送到服務器中儲存。該系統可以保證用戶及時查詢任意鉆具的相關信息(如:鉆具名稱、生產單位、規格、失效時間、失效井號、鋼級、失效井深、生產編號、失效鉆具在組合中的位置、修復情況、是否進行過檢查試驗、使用單位、失效編碼、失效時轉速扭距、累計使用時間等),使鉆具在整個壽命期使用歷史盡詳,準確跟蹤鉆具信息,防止失效鉆具的使用。
RFID手持設備具有文件存儲功能,當2 G/3 G等無線網路信號弱或者沒有信號導致無法登陸互聯網時備用,將掃描的編碼信息暫時存儲在RFID手持設備上,待能通過互聯網登陸鉆具失效計算機輔助分析系統時,再將編碼信息導入,或者直接通過串口通訊方式導入油田鉆具信息。

圖1 油田鉆具巡檢系統示意圖
其中,RFID手持設備是由射頻識別模塊、中央處理模塊、液晶顯示模塊、數據存儲模塊、GPRS通信模塊和電源模塊等組成。RFID手持設備結構框圖如圖2所示。

圖2 RFID手持設備結構框圖
S3C2440A是三星公司推出的一款32 bit ARM9微處理器,它的工作范圍為-40℃ ~+85℃,其寬溫的特點特備適合工業領域,除了提供常用接口外,還具有以太網控制器接口,USB HOST,USB OTG接口(可配置成Device),SD/MMC接口,UART接口,I2C接口,CAN總線接口,I2S接口,ADC/DAC接口,特別是集成LCD控制器接口,尤其是支持24 bit真彩色TFT面板。S3C2440A處理器完全可以滿足油田鉆具巡檢系統的需要,豐富的外設接口資源為將來系統的功能的實現和擴展提供了方便。
油田鉆具巡檢系統的射頻識別模塊采用了RFID技術即射頻識別技術,這是非接觸式的自動識別技術,它通過射頻識別信號自動識別目標對象并獲得相關數據,識別距離可以達到幾十厘米到幾米,具有可以同時讀取多個標簽的資料,不需要光線可以讀取,存儲資料的容量大,電子資料可以反復被覆寫,智慧型標簽可以很薄且隱藏在包裝內仍可獲取資料,在嚴酷、惡劣的環境下仍可以讀取,可進行高速移動讀取的優點。
該系統的模塊主要由RFID芯片MF RC522、晶振、功率放大電路和天線組成,通信距離可以達到0.1 m。MF RC522是由 NXP公司生產的用于13.56 MHz非接觸式通信中高度集成讀卡IC系列中的一員,不僅兼容14443A/MIFARF標準,還具備低電壓(3.3 V)、低功耗(休眠電流<LMA)、低成本、尺寸小等優點,適用于手持讀寫設備,并且工作溫度范圍為-30℃~+85℃,適合于油田工作環境。MF RC522分為模擬部分和數字部分。模擬部分負責對射頻卡的發送接收操作,數字部分則通過串口和中央控制模塊S3C2440A通信。13.56 MHz晶振負責給MF RC522提供能量載波,天線則主要由LC低通濾波器和LC諧振電路組成。MF RC522與S3C2440A接口電路如圖3所示。
本系統中的GPRS模塊采用SIMCom公司推出的一款新型無線模塊-SIM900A.它屬于雙頻GSM/GPRS模塊,完全采用SMT封裝形式,同時采用了功能強大的ARM926EJ-S芯片處理器。SIM900A性能穩定,外觀小巧,性價比高,采用省電技術設計,在SLEEP模式下最低功耗只有 1.0 mA。另外,SIM900A的尺寸大小為24 mm×24 mm×3 mm。能適用于M2M應用中的各類設計需求,尤其適用于緊湊型產品設計。
S3C2440A內部提供了2路 UART接口,而SIM900A也為外界的連接提供了UART串口,因此只需要將GPRS模塊的UART口直接和S3C2440A的UART口對應引腳相連即可。而GPRS模塊支持1.8 V/3.0 V的SIM卡供電,SIM卡作為GPRS網絡的一個載體,提供GPRS網絡的注冊和連接。根據SIM卡的類型自動選擇輸出電壓,如圖4所示為SIM900A模塊與S3C2440A及SIM卡的連接關系。

圖3 MF RC522與S3C2440A接口電路

圖4 SIM900A與S3C2440A及SIM卡的連接關系
嵌入式手持終端經過PPP撥號進入GPRS網絡,得到移動 IP地址。后臺數據庫主動接入Internet網絡并保持Socket監聽狀態,手持終端建立Socket,然后向后臺數據庫發起連接申請,這樣在保持Socket連接的狀態下,就可以實現手持終端和數據庫的通信。對于GPRS通信模塊的驅動問題,實際上就是如何通過串口給GPRS模塊發AT指令進行控制的問題。所謂AT指令集是從TE或DTE向TA或DCE發送的。通過TA、TE發送AT指令來控制MS的功能,AT指令集的基本格式:AT+命令字符及相關設置參數。其主要指令集如下:
(1)AT+CGDCONT:設置PDP上下文。
這條命令的典型用法如下:AT+CGDCONT=I,"IP","CMNET"。
(2)AT*E2IPA:激活IP命令,該指令允許激活模塊的IP程序段。
(3)AT*E2IPO:IP連接/打開命令(建立TCP連接)。
(4)命令返回模式
在線模式,如果釋放DTR信號,SIM900A就會從在線模式轉換到命令模式,此時還是會繼續保持之前建立的連接。在SIM900A進入命令模式后,可以通過串口發送AT命令執行其他的操作。
(5)在線返回模式
當執行完AT指令后,可以使用ATO指令來重新返回到在線模式。如果原來的連接沒有中斷的話,則可以繼續傳輸數據。
(6)關閉連接
如果系統中斷了當前連接,SIM900A會返回到命令模式,并通過串口返回字符串“NO CARRIER”。也可以AT指令實現IP連接的關閉。
(7)釋放IP
當完成數據傳輸后,用戶可以使用AT*E2IPA=0,l來釋放之前分配給SIM900A的IP地址。
具體AT指令還可以通過如下一個函數實現:


在此手持設備上已移植好的開發板提供的版本號為2.6.31的嵌入式linux內核,選用交叉編譯環境arm-linux-gcc 4.1.2在redhat9下進行編譯運行在該手持設備上的驅動程序。在嵌入式linux內核中已對LCD模塊驅動、SD卡模塊驅動和GPRS模塊驅動有很好的支持。主要對其中一些管腳進行相關的修改,然后在redhat9終端下輸入“make menuconfig”對各模塊驅動選中,然后通過交叉編譯,就能生成該手持設備識別的驅動。由于MF RC522要作為一個全新的設備添加到linux內核中,所以在這本文主要介紹RFID驅動的實現、編譯和加載過程。
首先根據硬件引腳連接情況和引腳要實現的功能定義rfid_table[]和 rfid_cfg_table[]兩個數組。其次,將在裸機上實現的RFID功能函數如:RFID初始化、尋卡、防碰撞、讀寫卡等函數移植過來。為了實現用戶對該設備的訪問需要定義struct file_operations結構體。

把驅動編譯成內核模塊,驅動編寫完之后需要進行Makefile文件的編寫。Makefile文件內容如下:


在終端linux-2.6.31/driver/char目錄下輸入make,編譯成功后如圖所示1生成“mymodule.ko”。編譯完成后在串口終端下通過“rz”命令將“mymodule.ko”加載到手持設備中,加載成功后如圖5所示。

圖5 ko文件編譯成功圖

圖6 手持終端驅動加載成功圖
為了實現用戶對該手持設備操作的靈活性,因此,本文對該手持設備RFID讀取應用程序進行了開發。
RFID用戶應用程序時采用Qt4.5.3版本進行開發。首先下載qt-x11-opensource-src-4.5.3.tar和qt-embedded-linux-opensource-src-4.5.3.tar安裝包,然后在redhat9下對這兩個安裝包進行解壓安裝,安裝成功后需要在redhat9終端下輸入命令“vi/etc/profile”對編譯環境進行配置。通過命令“source/etc/profile”使命令生效。本文采用Qt4 Designer開發工具進行應用程序的開發其步驟如下:①創建和初始化子部件;②設置子部件布局;③設置Tab鍵次序(不是必須);④建立信號與插槽的連接。
Qt4 Designer將界面設計組織成.ui的文件:①通過designer設計并保存工程為**.ui文件保存到一個文件夾內部;②通過uic-or rfid.ui ui_rfid.h命令生成ui_rfid.h庫文件;③編寫一個main.cpp文件;④編寫rfid.cpp和rfid.h文件;⑤使用qmake工具生成.pro工程文件 qmake-project;⑥生成makefile文件qmake;⑦編譯make。編譯生成的界面如圖7所示。

圖7 編譯生成的Qt用戶界面
由于Qt程序具有一次編寫處處編譯的特點,在這本文最后更改為qt-embedded-linux編譯環境對Qt應用程序進行編譯生成運行在開發板的可執行程序。
本文基于RFID的油田鉆具巡檢手持終端采用RFID免接觸自動識別技術,利用GPRS無線傳輸技術實現對每根鉆具的有效跟蹤。實驗結果表明,提出的鉆具巡檢手持終端能準確完成對鉆具數據的采集和傳輸,通信可靠,與傳統巡檢模式相比更加準確有效,對于即將報廢的鉆具提出預警,有效防止失效
鉆具給鉆井作業帶來的安全問題和經濟損失,實現鉆具跨地域的有效管理,極大促進油田安全生產。
[1]李鶴林,李平全,馮耀榮.石油鉆柱失效分析及預防[M].北京:石油工業出版社,1999.
[2]王運梅,李琛,馬建民.基于RFID技術開發的油田鉆具數字化管理系統[J].石油礦場機械,2007,36(7):71-74.
[3]劉偉峰,莊奕琪,唐龍飛.一種全新的無源超高頻標簽芯片架構設計[J].西安電子科技大學學報,2010,37(6):1092-1099.
[4]田景賀,范玉順,朱云龍.基于RFID的煙草物流分揀系統設計[J].儀器儀表學報,2006,27(6):1873-1880.
[5]孫紅,任杰.全新理念的倉庫管理模型設計[J].儀器儀表學報,2006,27(6):2542-2543.
[6]田景賀,朱云龍,南琳,張磊.基于RFID數據采集的自動化倉庫管理系統[J].儀器儀表學報,2007,28(4):542-546.
[7]王海玲,胡琨元,朱云龍.基于ARM9+Linux的RFID智能終端設計[J].微計算機信息,2008,24(11):19-21.
[8]程明,鄧小祥.基于ARM的RFID數據移動終端系統的設計[J].計算機與應用化學,2011,28(7):907-910.
[9]翟鴻雁.RFID與傳感器網絡集成方法研究[J].現代計算機,2011,33(2):22-23.
[10]楊陽,胡耀光,周玉偈.基于ARM的RFID數據采集模塊設計[J].信息化技術,2011,12(4):41-44.
[11]王爽,沈繼偉.安全PRESENT加密算法的硬件實現[J].科技傳播,2011,22(6):174-177.