基于PIC16F877單片機的井下壓力測量技術(shù)研究
摘要:描述了以PIC16F877單片機為主控制器的壓力檢測系統(tǒng),它主要以惰性氣體作為壓力傳遞介質(zhì),在地面完成井口氣體壓力的測量,然后通過井口壓力的大小推算井下測壓深度處壓力大小。詳細敘述了系統(tǒng)設(shè)計原理與軟硬件的實現(xiàn)方法,整個系統(tǒng)包含數(shù)據(jù)采集、數(shù)據(jù)處理、數(shù)據(jù)存儲和數(shù)據(jù)顯示等。經(jīng)過室內(nèi)試驗和現(xiàn)場試驗驗證,這種壓力檢測系統(tǒng)具有精度高、穩(wěn)定性好、實時性強等優(yōu)點,可滿足測量現(xiàn)場環(huán)境的要求。
關(guān)鍵詞:PIC16F877;測壓;數(shù)據(jù)采集;實時顯示
目前,我國油井主要采用的是電子式井下壓力測量系統(tǒng),由于電子壓力傳感器長期工作在高溫環(huán)境中,所以存在漂移問題,而且可靠性不高。同時這種儀器大多數(shù)將采集的數(shù)據(jù)存儲在存儲器中,缺乏實時性測量的要求。而本文所介紹的井下壓力采集系統(tǒng)是一種新型的壓力測量系統(tǒng),其主要是以惰性氣體作為壓力傳遞介質(zhì),在地面完成對井口氣體壓力的測量,然后通過井口壓力的大小推算井下測壓點處壓力大小。其主要特點是所有的測量都在地面上進行,避免了井下復雜環(huán)境對測量結(jié)果造成的影響,同時也滿足了系統(tǒng)的實時性要求。
1 井下壓力測量系統(tǒng)工作原理
井下測壓系統(tǒng)的基本原理是帕斯卡定理。整個套管設(shè)備在測壓時被下放到井下測壓點處,地面可以通過壓力泵向傳壓筒內(nèi)充放氣體,為維持井液與高壓氣體接觸的氣液面平衡,傳壓筒里面的氣體要定期進行補充。根據(jù)帕斯卡定理,傳壓筒內(nèi)氣體的壓力等于井液的壓力,將信號采集到PIC16F877中,在PIC16F877中根據(jù)相應的算法計算出井內(nèi)的壓力值,并進行存儲、實時顯示和數(shù)據(jù)回放。
2 硬件電路設(shè)計
壓力檢測系統(tǒng)主要由以下幾部分組成,分別為數(shù)據(jù)采集電路、數(shù)據(jù)存儲電路、數(shù)據(jù)顯示以及數(shù)據(jù)回放。數(shù)據(jù)采集電路主要使用PIC16F 877單片機對壓力數(shù)據(jù)進行實時采集數(shù)據(jù),存儲電路使用型號FLASH存儲芯片;數(shù)據(jù)顯示使用的是智能顯示器;數(shù)據(jù)回放采用RS-232串行接口,將存儲在flash芯片中的數(shù)據(jù)回放到計算機中。圖1為壓力檢測硬件電路的設(shè)計框圖。
2.1 壓力傳感器的選取
壓力的測量一直以來受到壓力傳感器技術(shù)的制約,其測量的準確程度取決于壓力傳感器的技術(shù)指標,根據(jù)壓力檢測系統(tǒng)的設(shè)計要求,最后決定選用德國HeLM公司生產(chǎn)的HM10高精度壓阻式壓力傳感器,此傳感器采用了最堅固可靠的壓力敏感元件,特別適合于野外的壓力測量。 HM10主要的性能指標如下:
1)工作溫度:-40~85℃
2)沖 擊:100 g,11 ms
3)振 動:10 gRMS.20~2 000 Hz條件下無變化
4)壓力量程:-0.1 MPa~0~10 kPa…70 MPa
2.2 壓力采集電路設(shè)計
壓力檢測系統(tǒng)的數(shù)據(jù)采集主要是通過單片機PIC16F877來完成。壓力檢測系統(tǒng)設(shè)計中有一項要求就是精度要達到0.1%FS,且采集最小間隔為1 s,鑒于這兩個要求,在數(shù)據(jù)采集電路設(shè)計時選用精度很高的多通道24位芯片ADS1226,具有100SPS的數(shù)據(jù)采集率,符合最小1 s的數(shù)據(jù)采集間隔。
圖2為壓力采集電路的連接圖,其中,P3.0、P3.1、P3.2、P3.3為單片機的I/O接口,分別與ADS1226的START、SCLK、DOUT、MUX引腳相連。其中P3.0控制著ADS1226的啟動信號,當P3.0輸出高電平時,ADS1226開始進行數(shù)模轉(zhuǎn)換,當P3.2輸入低電平時A/D轉(zhuǎn)換完成,轉(zhuǎn)換完的數(shù)據(jù)信號隨著SCLK傳輸?shù)絇IC16F877單片機內(nèi)。由于壓力傳感器HM10輸出的是4~20 mA的電流信號,而ADS1226是一個電壓采集芯片,在此處選用了型號為ISO-A4-P3-04的電流轉(zhuǎn)電壓芯片。ISO-A4-P3-04把4~20 mA的電流信號轉(zhuǎn)換成了0~5 V的電壓信號。
2.3 數(shù)據(jù)存儲電路設(shè)計
井下數(shù)據(jù)測量期間可能會有大量的原始數(shù)據(jù),這些數(shù)據(jù)對油井狀況的評估是一份寶貴的資料,因此測量系統(tǒng)在設(shè)計時要考慮數(shù)據(jù)的存儲。本系統(tǒng)選用的是大容量Flash存儲器。該器件采用三星公司的CMOS浮置門技術(shù)和與非存儲結(jié)構(gòu),存儲容量為64M×8位,除此之外還有2 048k×8位的空閑存儲區(qū)。對528字節(jié)一頁的寫操作所需時間典型值是200 μs,而對16 k字節(jié)一塊的擦除操作典型值也僅需2 ms。每一頁中的數(shù)據(jù)讀出速度也很快,平均每個字節(jié)只需50 ns,已經(jīng)與一般的SRAM相當。8位I/O端口采用地址、數(shù)據(jù)和命令復用的方法。這樣既可減少引腳數(shù),還可使接口電路簡潔。片內(nèi)的寫控制器能自動執(zhí)行寫操作和擦除功能,包括必要的脈沖產(chǎn)生,內(nèi)部校驗等,完全不用外部微控制器考慮,簡化了器件的編程控制難度。如圖3為單片機PIC16F877與Flash存儲器的接口連接圖。單片機的P5.0~P5.7管腳與Flash的8為I/O口相連。
2.4 數(shù)據(jù)顯示電路設(shè)計
壓力檢測系統(tǒng)采用了彩色智能顯示液晶屏,該系列顯示器采用集成化CPU,內(nèi)置一級漢字庫(二級字庫可選),采用標準指令集,通過RS232C接口或打印機并行口接收控制命令和數(shù)據(jù)。同時為了提高通訊速度,顯示器內(nèi)設(shè)置了一個256字節(jié)的輸入緩沖區(qū)。在發(fā)送數(shù)據(jù)前應先檢查DTR(液晶顯示器上串口名稱)信號,若DTR為高電平(TTL),表示緩沖區(qū)滿,要等到DTR信號變?yōu)榈碗娖?TTL)后再發(fā)送數(shù)據(jù)。即DTR為低電平(TTL)時發(fā)送數(shù)據(jù),DTR為高電平(TTL)時停止數(shù)據(jù)發(fā)送。如果每組的數(shù)據(jù)量少于256字節(jié),同時每組之間又有足夠的間隔,則不需要判斷DTR位信號也可連續(xù)發(fā)送。
壓力檢測系統(tǒng)在處理器與液晶屏通信時采用的是串口的形式,把PIC16F877的P4.6管腳當作通用I/O口直接與液晶屏的串行接口向連接,標準的RS-232在進行通信時只需要發(fā)送、接收和地線(GND)3個管腳即可,因此液晶顯示器與處理器的連接十分簡單。但是由于PIC16F877管腳能承受的電平最大5.5 V,而串行接口的電平是TTL電平,所以在連接這兩個器件時必須添加一個電平轉(zhuǎn)換芯片MAX3232,具體的連接方式如圖4所示,圖中YJ-RXD是液晶屏的串行接收接口,P4.6為PIC16F877的發(fā)送端口,MAX3232起到了一個電壓轉(zhuǎn)換的作用。數(shù)據(jù)回放主要指的是將存儲在FLASH存儲芯片中的數(shù)據(jù)回放到PC機上,PC機接收數(shù)據(jù)采用的是串口RS-232,通過MAX3232進行連接,如圖4所示,這里不再敘述。
3 軟件設(shè)計
本系統(tǒng)軟件設(shè)計主要是單片機系統(tǒng)軟件設(shè)計。PIC16F877的內(nèi)核CPU結(jié)構(gòu)是按照精簡指令集和高透明指令的宗旨來設(shè)計的,因此單片機開發(fā)采用專門用于PIC16F877系列單片機而設(shè)計集成開發(fā)環(huán)境,編程采用C語言。PIC16F877作為主CPU。PIC16F877在系統(tǒng)中主要負責壓力數(shù)據(jù)的采集、系統(tǒng)的啟動、采集數(shù)據(jù)的處理、數(shù)據(jù)的顯示和上位機數(shù)據(jù)的回放等。其軟件的主程序流程圖如圖5所示。
在整個壓力采集系統(tǒng)中,通過PIC16F877單片機來控制啟動A/D轉(zhuǎn)換,單片機共采集12個數(shù)據(jù),去掉最大與最小的數(shù)據(jù),取平均值,作為一個井口壓力值。在根據(jù)相應的算法,通過進口壓力值計算出測點壓力和油層壓力,再把這3個數(shù)據(jù)進行存儲和顯示。
4 結(jié)束語
本文設(shè)計的壓力檢測系統(tǒng)通過了現(xiàn)場實驗的測試,系統(tǒng)穩(wěn)定可靠,采集了大量的數(shù)據(jù),通過改變測試條件驗證了測得壓力值的準確性,由于要長期實時監(jiān)測井下壓力,F(xiàn)lash存儲器可以存儲10天的數(shù)據(jù),所以該系統(tǒng)連續(xù)工作10天后要對數(shù)據(jù)進行回訪,并存儲在計算機上,以便后續(xù)參考。井下壓力檢測系統(tǒng)是通過測量井口壓力來推算井底壓力的方法來實現(xiàn)壓力測量的,這就避免了井下的復雜環(huán)境,從而減少了環(huán)境對測量的影響。同時使用液晶屏將測量數(shù)據(jù)進行實時的顯示,滿足了實時性測量的要求。