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