一種基于DSP的張力、深度、速度測量系統(tǒng)
摘 要:本系統(tǒng)用于油田測井過程中,對電纜所受的張力、油井的深度及電纜下井速度等參數(shù)的測量。重點闡述了系統(tǒng)結(jié)構(gòu)及工作原理。同時,對測力傳感器、測深編碼器、系統(tǒng)硬件電路設(shè)計及軟件流程也做了介紹。該系統(tǒng)精度高、體積小、工作穩(wěn)定。既能實時測量所測參數(shù),又兼具“黑匣子”功能,能對數(shù)據(jù)進行24小時以內(nèi)的記錄,為事故分析提供可靠的依據(jù),具有較高的工程應用價值??捎门c所有測負荷,測長度,測速度的場合。
關(guān)鍵詞:應變傳感器,光電編碼器,DSP,CPLD,I2C總線
1 引言
在油田測井過程中,地面操作人員需要知道油井的深度、電纜下井速度及電纜所承載的負荷。只有及時準確地掌握這些數(shù)據(jù),才能使測井工作順利進行,以保證測井過程安全可靠。因此,我們開發(fā)了基于DSP的張力、深度、速度測量系統(tǒng)。該系統(tǒng)準確度高,可靠性強,處理速度快,是地面操作人員理想的監(jiān)測工具。
2應變傳感器及光電編碼器
2.1 應變傳感器
電纜所受張力使應變傳感器產(chǎn)生機械變形,傳感器將機械變形轉(zhuǎn)化為電信號輸出,從而測得張力。
.工作電壓:直流12V
.輸出范圍:0~12mV
.輸出靈敏度:1mv/v
2.2 光電編碼器
將光電編碼器的轉(zhuǎn)軸同軸地固定在周長已知的量輪的圓心上,當量輪轉(zhuǎn)動時編碼器同步轉(zhuǎn)動并輸出脈沖信號。這樣,一定的長度便對應一定數(shù)量的脈沖信號,通過計算脈沖信號便可換算出深度值。對單位時間的深度值采樣便得到速度值。
.工作電壓:直流5V
.工作電流:40mA
.脈沖類型:兩路正交的脈沖信號,通過邏輯電路可完成對光電編碼器轉(zhuǎn)動方向的識別和對深度脈沖的輸出。
3系統(tǒng)結(jié)構(gòu)及工作原理
將應變傳感器產(chǎn)生的毫伏信號輸入到放大器進行放大,然后送入A/D轉(zhuǎn)換器進行模數(shù)轉(zhuǎn)換,轉(zhuǎn)換成處二進制序列后送入DSP處理。為保證A/D轉(zhuǎn)換的可靠性,采用V/F器件LM331實現(xiàn)模數(shù)轉(zhuǎn)換,將電壓信號轉(zhuǎn)換為頻率信號。此器件可靠性高,占用資源少。
由光電編碼器產(chǎn)生的兩路正交信號輸入到CPLD,經(jīng)處理后,產(chǎn)生兩路信號。一路為辨向脈沖,用于識別光電編碼器的轉(zhuǎn)動方向。另一路為計數(shù)脈沖,用于完成深度參數(shù)的換算。兩路脈沖均輸入到DSP。見圖1。
圖1 系統(tǒng)硬件實現(xiàn)框圖
4核心硬件電路設(shè)計
4.1 TMS320VC33處理器
該芯片為TI公司推出的32位浮點高性能數(shù)字信號處理器。指令周期分為13ns和17ns兩種,單周期完成32位整數(shù)、40位浮點乘法運算。片內(nèi)34K 32bitSRAM,分為2個16K和2個2K 的塊,塊上集成一個DMA通道,一個同步串口,兩個32bit的定時器;總存儲空間為 16M 32bits, 程序、數(shù)據(jù)及I/O空間均包含在其中,可根據(jù)不同的要求劃分地址空間;具有程序引導功能,系統(tǒng)復位后,可將程序從慢速的外部存儲器中裝載到快速的片內(nèi)RAM中運行;支持IEEE Std 1149.1(JTAG)標準;0.18-µm工藝,1.8V核心電壓,3.2VI/O電壓;低功耗(200mW@150MFLOPS)。該芯片結(jié)合了浮點運算和定點運算的長處,具有很高的運算精度和很快的運算速度,適用于快速處理的場合。
4.2 高精度實時時鐘/日歷SD2001E
本系統(tǒng)要求對測試數(shù)據(jù)進行24小時以內(nèi)的實時記錄(即“黑匣子”功能),因此選用具有I2C總線接口的實時時鐘器件SD2001E,用以記錄測量參數(shù)、操作人員的姓名及具體操作時間(年、月、日、時),作為問題分析的資料。該器件可提供32k bits及100億次擦寫次數(shù)的非易失性SRAM;內(nèi)部集成了晶振、電池及電源管理電路,在系統(tǒng)掉電時能保證該芯片正常工作,時鐘走時時間為10年以上;I2C總線接口(包括實時時鐘部分和SRAM部分);內(nèi)置高精度晶振,精度< 5ppm, 即一個月內(nèi),走時誤差不超過13秒(25C);年、月、日、星期、時、分、秒的BCD碼輸入/輸出;自動日歷到2099年(包括閏年自動換算功能)。
4.3 SST39VF320存儲器
該芯片為CMOS多用途 FLASH器件,2M 16容量,是理想的大容量存儲器。可滿足本測量系統(tǒng)中24小時以內(nèi)數(shù)據(jù)記錄的要求,記錄的內(nèi)容為張力、深度、速度的測量值。該器件提供2.7-3.6V的工作電壓;超可靠性,10萬次擦寫次數(shù),永久數(shù)據(jù)保存;低功耗,有效電流9mA,備用電流3µA,自動低功耗模式3µA;70ns及90ns的快速讀取時間;地址及數(shù)據(jù)鎖存功能;2KWord 扇區(qū)擦寫能力及32KWord塊擦寫能力;快速擦寫及字編程能力;兼容CMOS I/O口。
4.4 串行E2PROM AT24C512
該芯片為64k字節(jié)的串行E2PROM,具有I2C總線接口。測量數(shù)據(jù)存于其中,當系統(tǒng)掉電時數(shù)據(jù)不會丟失,給操作人員帶來很大的方便。該器件擦寫次數(shù)有限,工作可中先將數(shù)據(jù)寫入SD2001E片內(nèi)的NVRAM,當NVRAM寫滿后再將數(shù)據(jù)傳送到AT24C512中,這樣可大大降低其刷新次數(shù),從而延長了使用壽命。
4.5 中文圖文液晶顯示模塊OCMJ4X8C
OCMJ4X8C為具有串/并接口且內(nèi)部含有中文字庫的液晶顯示模塊,具有較強的控制顯示功能;液晶顯示點陣為128 64,可顯示4行,每行8個漢字;具有2Mbits的中文字型CGROM,該字型ROM中含有8192個16 16點陣中文字型庫,可方便地顯示漢字;具有16kbit的16 8點陣的ASCⅡ字符庫,可可方便地顯示英文字符和其他常用字符;提供了一個64 256點的GDRM繪圖區(qū)域,可方便地構(gòu)造圖形;提供了4組16 16點陣的造字空間,可方便地造文字;能實現(xiàn)漢字、ASCⅡ碼 、點陣圖形、自選字形的同屏顯示。
通過采用此液晶顯示模塊,實現(xiàn)了友好的中文圖形及數(shù)字人機界面。
4.6 微型漢字打印機
本系統(tǒng)采用MP-A(D)16-8型打印機,該打印機帶有2k字節(jié)的數(shù)據(jù)緩沖區(qū)及漢字字庫,具有較快的打印漢字和圖形的速度;具有豐富的文字修飾功能和方便的接口;帶有16 16點陣與12 12點陣及國標一二級漢字庫;可方便地打印漢字和德文、法文、英文、日文等文字;可打印全部ASCⅡ字符、數(shù)學符號、專用符號、自選符號、點陣曲線及條碼等;能同行打印16 16、12 12、8 16、16 8、8 8、6 12點陣漢字或5 7、6 8、8 12、8 16點陣ASCⅡ字符。
5系統(tǒng)軟件設(shè)計
5.1 主流程介紹
程序流程見圖2,本流程為系統(tǒng)的主流程。程序由匯編語言編程,采用模塊化程序設(shè)計,調(diào)用某一模塊時執(zhí)行其相應的功能,便于修改和維護。設(shè)置兩個檢測單元,主循環(huán)中檢測此單元的內(nèi)容是否發(fā)生變化,若有變化,說明系統(tǒng)有異常,重新進行初始化設(shè)置。軟件中,采用冗余技術(shù)及看門狗技術(shù),確保程序正確執(zhí)行。外部中斷1完成鍵盤管理任務(wù),當有鍵按下時,申請外部中斷1中斷,執(zhí)行鍵盤監(jiān)控程序;深度脈沖經(jīng)整形后輸入到外部中斷0,進行脈沖記數(shù)。此時,由I/O口判斷辨向脈沖的電平。規(guī)定低電平時編碼器為正轉(zhuǎn),高電平時編碼器為反轉(zhuǎn)。正轉(zhuǎn)時執(zhí)行加法程序,反轉(zhuǎn)時執(zhí)行減法程序。張力信號經(jīng)V/F變換后,轉(zhuǎn)換為頻率信號送入計數(shù)器1,完成張力信號的計算。定時器0產(chǎn)生系統(tǒng)的時鐘信號 ,設(shè)定其為最高中斷優(yōu)先級。
圖2 軟件實現(xiàn)主流程
圖3 鍵盤管理流程1
圖4 鍵盤管理流程2
圖5 鍵盤管理流程3
圖6 鍵盤管理流程4
5.2 鍵盤監(jiān)控流程介紹
圖3~圖7為系統(tǒng)鍵盤管理流程圖,鍵盤管理芯片為8279,由外部中斷1完成鍵盤操作程序。該系統(tǒng)共有16個鍵,6個功能鍵,10 個數(shù)字鍵。其中,每個功能鍵均為雙功能復合鍵,各鍵分別為:K1/K2;角度/打印、記錄模式;張力報警/張力增量報警;深度報警/即時深度;當量/速度報警;清零/恢復。K1/K2鍵為系統(tǒng)的入口鍵,只有先按此鍵,才能進入鍵盤操作,其鍵值為28H,由標志位K的值來判斷是上檔鍵功能還是下檔鍵功能。位K為1時為上檔鍵功能,位K為0時為下檔鍵功能,系統(tǒng)初始化時標志位K清零。 K1模式為上檔鍵功能,對應角度、張力報警、深度報警、當量及清零,鍵值分別為29H、30H、31H、38H及39H。K2模式為下檔鍵功能,對應打印及記錄模式、張力增量報警、即時深度、速度報警及恢復, 鍵值分別為39H、40H、41H、48H及49H。反復按壓K1/K2鍵,鍵盤功能在K1模式及K2模式之間來回切換。數(shù)字鍵1、2、3、4、5、6、7、8、9及0的鍵值分別為01H、09H、11H、19H、21H、00H、08H、10H、18H及20H。鍵盤中斷程序流程見圖3~圖7。
圖7 鍵盤管理流程5
5.3 深度脈沖采樣及張力信號采樣流程介紹
由編碼器產(chǎn)生的兩路正交脈沖信號經(jīng)CPLD處理后產(chǎn)生辨向脈沖及計數(shù)脈沖,分別輸入到TMS320VC33處理器的I/O口和外部中斷0,完成對編碼器旋轉(zhuǎn)方向的判別和對深度脈沖的累計,見圖8。
圖8 外部中斷0中斷服務(wù)程序流程
定時器0作為系統(tǒng)的公共時鐘,產(chǎn)生張力A/D時鐘及速度采樣時鐘。記數(shù)器1記錄由張力模擬信號經(jīng)A/D轉(zhuǎn)換后產(chǎn)生的數(shù)字信號。定時器0的初始值對應的時間為A/D轉(zhuǎn)換器的采樣時間,該定時器啟動后做減計數(shù),減為0后產(chǎn)生中斷信號。系統(tǒng)轉(zhuǎn)入中斷服務(wù)子程序,定時器0重新賦予初值,讀取記數(shù)器1的數(shù)值到數(shù)據(jù)緩沖區(qū),見圖9。
圖9 定時器T0中斷服務(wù)程序
6結(jié)束語
該測量系統(tǒng)經(jīng)過多次現(xiàn)場使用,測量準確、工作穩(wěn)定。能可靠地記錄下24小時以內(nèi)的實時測量數(shù)據(jù),順利實現(xiàn)“黑匣子”功能,為用戶查找事故原因提供了可靠依據(jù),受到用戶的好評。
參考文獻
[1]蘇濤主編,《DSP使用技術(shù)》,西安電子科技大學出版社
[2]曾繁泰主編,《VHDL程序設(shè)計》, 清華大學出版社
[3]宋萬杰主編,《CPLD技術(shù)及其應用》,西安電子科技大學出版社
[4]楊振江主編,《A/D、D/A轉(zhuǎn)換器接口技術(shù)實用線路》,西安電子科技大學出版社
評論