基于FPGA的石油測井控制系統(tǒng)
摘要:針對石油測井儀器須將地下傳感器發(fā)送的不同數(shù)量級信號進(jìn)行識別并恢復(fù)原始數(shù)值,從而方便地面分析地下情況,本文介紹了一種基于FPGA和DSP的石油測井控制系統(tǒng)的軟硬件設(shè)計(jì)與實(shí)現(xiàn)的新方法,采用FPGA芯片EP1C6T144C8進(jìn)行主要時(shí)序控制,DSP做算法運(yùn)算,不依靠GPIO而用數(shù)據(jù)總線來控制放大模式位。調(diào)試以及現(xiàn)場試驗(yàn)結(jié)果表明,該系統(tǒng)能夠準(zhǔn)確的實(shí)現(xiàn)對整支測井儀器的控制,并且恢復(fù)原始數(shù)據(jù)。
關(guān)鍵詞:EP1C6T144C8;數(shù)據(jù)總線;FPGA;DSP;GPIO
隨著測井技術(shù)的日益發(fā)展,針對地質(zhì)構(gòu)造的復(fù)雜性,以及傳感器采集信號數(shù)量級的差異,對測井儀器實(shí)時(shí)性,可靠性以及運(yùn)算速度要求的不斷提高,為了能夠?qū)崟r(shí)準(zhǔn)確的實(shí)現(xiàn)整只測井儀器的控制以及原始數(shù)據(jù)的恢復(fù),本研究利用FPGA和DSP為主要芯片設(shè)計(jì)完成了測井控制系統(tǒng)。本研究采用數(shù)據(jù)總線和地址總線共同傳輸放大倍數(shù)狀態(tài)位,從而節(jié)省了DSP有限的外部接口,經(jīng)驗(yàn)證該方法穩(wěn)定性的實(shí)現(xiàn)了數(shù)據(jù)的恢復(fù)和硬件的簡化。
1 方案設(shè)計(jì)
兼顧本系統(tǒng)的處理速度以及功耗與擴(kuò)展需要,本系統(tǒng)采用ALTERA公司的Cyclone系列EP1C6T144C8型FPGA作為本系統(tǒng)的主要邏輯控制器,該芯片完全可以適合測井系統(tǒng)的處理速度,功耗和擴(kuò)展性完全滿足系統(tǒng)需要。
針對石油測井儀器采集端采集的數(shù)據(jù)有不同的放大倍數(shù),F(xiàn)PGA和DSP數(shù)據(jù)處理端要根據(jù)不同的放大倍數(shù)恢復(fù)原始數(shù)據(jù),由于FPGA的GPIO接口有限,EP1C6T144C8有70個(gè)I/O,DSP芯片TMS320F28335地址線20根,數(shù)據(jù)總線16根,片選信號3個(gè),寫和讀使能3個(gè),XREADY信號1個(gè),XCLO CKOUT時(shí)鐘1個(gè),F(xiàn)PGA要產(chǎn)生的控制信號16個(gè),跑馬燈信號6個(gè),加起來還剩4個(gè)I/O,即用于放大倍數(shù)位的I/O不夠,為了達(dá)到采集速率要求和簡化電路要求,故采用數(shù)據(jù)總線和地址總線共同傳輸放大倍數(shù)狀態(tài)位,從而節(jié)省了DSP有限的外部接口,以至于可是完全放棄GPIO接口的應(yīng)用。
2 系統(tǒng)硬件設(shè)計(jì)
整個(gè)系統(tǒng)以FPGA為邏輯時(shí)序控制芯片,DSP為算法運(yùn)算芯片,主要有3個(gè)模塊組成,包括DSP和FPGA模塊,電源模塊,CAN收發(fā)模塊。系統(tǒng)詳細(xì)構(gòu)成如圖1所示。
2.1 控制信號硬件設(shè)計(jì)
系統(tǒng)由FPGA產(chǎn)生測井儀器的控制信號,包括掃描模式信號,復(fù)位信號,采集時(shí)鐘信號,三電平控制信號等??刂菩盘栍布O(shè)計(jì)如圖2所示。
其中多路開關(guān)芯片為HI1—5051,該芯片有+15 V和-15 V電平,通過control3和control4來控制多路開關(guān)的開和關(guān),從而輸出所需要的三電平,實(shí)現(xiàn)命令字的發(fā)送。放大器由兩個(gè)三極管2N2222組成,由control1和control2控制基極的輸入,從而控制開斷,生成所需要的updata go信號,同時(shí)updatago也承載著由接口輸入的數(shù)據(jù),連著三極管的集電極,經(jīng)過比較器LM111,輸入到FPGA進(jìn)行處理。
2.2 放大倍數(shù)運(yùn)算硬件設(shè)計(jì)
系統(tǒng)由DSP進(jìn)行算術(shù)運(yùn)算,由FPGA將數(shù)據(jù)傳入DSP,計(jì)算出測井儀器不同數(shù)據(jù)的放大倍數(shù),并發(fā)送到FPGA,由FPGA按一定時(shí)鐘發(fā)送到下一短節(jié)進(jìn)行識別,從而控制測井儀器的精確動(dòng)作。原電路由DSP產(chǎn)生不同的放大倍數(shù),分由GPIO的邏輯1或0來發(fā)送到FPGA,根據(jù)不同的GPIO口定義不同的放大倍數(shù)然后完成下發(fā)。當(dāng)放大倍數(shù)過多時(shí),F(xiàn)PGA的GPIO口就不夠用了,為了減少GPIO口資源的浪費(fèi),本系統(tǒng)采用直接由數(shù)據(jù)總線發(fā)送,這樣既減少了資源浪費(fèi),又提高了發(fā)送效率。
放大倍數(shù)運(yùn)算硬件設(shè)計(jì)如圖3所示。
其中寫RAM中存放數(shù)據(jù),RAM用的是雙端口RAM,由數(shù)據(jù)總線,地址總線,寫使能,讀使能和寫時(shí)鐘,讀時(shí)鐘等信號組成。讀RAM中存放由DSP運(yùn)算得出的放大倍數(shù),通過片選信號和讀、寫使能信號控制數(shù)據(jù)的傳輸。本系統(tǒng)中/xzcs6控制寫片選,即由FPGA寫入DSP的數(shù)據(jù)存在/xz cs6片選的存儲(chǔ)映射區(qū)域。/xzcs7控制讀片選,即DSP下傳的放大倍數(shù)存放在DSP中由/xzcs7片選的存儲(chǔ)映射區(qū)域。
2.3 CAN總線硬件設(shè)計(jì)
在C28X DSP忠使用的增強(qiáng)型控制器區(qū)域網(wǎng)絡(luò)(eCAN)模塊與現(xiàn)行的CAN2.0標(biāo)準(zhǔn)兼容。它可使用已制定的協(xié)議在存在電子噪聲的環(huán)境中與其他控制器進(jìn)行串行通信。借助32個(gè)完全可配置的郵箱和事件標(biāo)志(time-stamping)特性,eCAN模塊提供了一種具有通用性和魯棒性的串行通信接口。
系統(tǒng)除了計(jì)算放大倍數(shù),還要將由井底傳過來的數(shù)據(jù)上傳到地面計(jì)算機(jī)進(jìn)行地況估計(jì),該系統(tǒng)用CAN總線傳輸數(shù)據(jù),CAN總線硬件設(shè)計(jì)如圖4所示。
該系統(tǒng)CAN傳輸速率為800K,由三電平的命令字決定傳輸數(shù)據(jù)模式。
3 系統(tǒng)軟件實(shí)現(xiàn)
3.1 DSP軟件實(shí)現(xiàn)
DSP把FPGA寫過來的數(shù)據(jù)進(jìn)行分析,然后判斷出數(shù)據(jù)實(shí)際放大倍數(shù),進(jìn)行還原,然后再將放大倍數(shù)發(fā)送到FPGA,具體步驟如下:
1)根據(jù)數(shù)據(jù)的放大倍數(shù)位,判斷數(shù)據(jù)實(shí)際數(shù)值,將6個(gè)極板數(shù)據(jù)進(jìn)行還原平均,算得平均值;
2)與門限比較,得出具體放大倍數(shù),并寫入到XZCS7片選映射存儲(chǔ)區(qū)域內(nèi);
3)將傳感器數(shù)據(jù)通過CAN發(fā)送到上位機(jī);
這樣就將放大倍數(shù)存起來,當(dāng)WE和XZCS7同時(shí)使能時(shí),按FPGA的讀時(shí)鐘通過數(shù)據(jù)總線寫入到FPGA中。這樣就省去了不同放大倍數(shù)由不同的GPIO控制的麻煩。
3.2 FPGA軟件實(shí)現(xiàn)
經(jīng)調(diào)試,系統(tǒng)控制和數(shù)據(jù)傳輸都完美實(shí)現(xiàn),現(xiàn)只將放大倍數(shù)的形成時(shí)序?qū)懗觯鐖D5所示。
寫使能信號WE和片選信號XZCS7共同決定放大倍數(shù)是否從DSP發(fā)送到FPGA,其中DADDR是地址,由于FPGA還要將放大倍數(shù)發(fā)送到位移位存儲(chǔ)總線寄存器CD4094中所存,其中D味鎖存端,START為CD4094的數(shù)據(jù)輸入,即放大倍數(shù),CLK為鎖存時(shí)鐘。
4 系統(tǒng)驗(yàn)證與結(jié)論
整支儀器組裝完成后,進(jìn)行聯(lián)調(diào),不同的傳感器和不同的放大倍數(shù),該系統(tǒng)都完整的精確的將數(shù)據(jù)恢復(fù)出來,并且傳到上位機(jī),上位機(jī)結(jié)果如圖6所示。
數(shù)據(jù)首位表示不同的放大倍數(shù),其中2表示放大2倍,RawView為原始數(shù)據(jù)。2E66代表4 V,與試驗(yàn)所加電壓完美對應(yīng)。對每個(gè)放大倍數(shù)都做了試驗(yàn),結(jié)果令人欣喜。
5 結(jié)束語
文中闡述了由FPGA和DSP采用數(shù)據(jù)總線傳輸放大倍數(shù)的方法,實(shí)現(xiàn)了石油測井系統(tǒng)放大倍數(shù)的發(fā)送和原始數(shù)據(jù)的恢復(fù)。
評論