<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          關(guān) 閉

          新聞中心

          EEPW首頁 > 工控自動化 > 設(shè)計(jì)應(yīng)用 > 基于MATLAB GUI的鉆井工具姿態(tài)采集處理系統(tǒng)

          基于MATLAB GUI的鉆井工具姿態(tài)采集處理系統(tǒng)

          作者:丁旭東,周靜,李炳建 時(shí)間:2008-07-18 來源:電子測試 收藏

            4.2 界面中activx控件的使用

          本文引用地址:http://www.ex-cimer.com/article/85907.htm

            在DE中所提供的基本控件非常少,難以滿足本系統(tǒng)的需要。因此本系統(tǒng)調(diào)用系統(tǒng)中的Activex控件FlexArray、FlexGrid實(shí)現(xiàn)了數(shù)據(jù)在表格中的顯示,調(diào)用axes控件實(shí)現(xiàn)了數(shù)據(jù)圖形繪制。

            本程序中用到的控件(包括Activex控件),在其創(chuàng)建及屬性設(shè)置過程中,使用了全程序法、DE屬性法和兩者相結(jié)合的方法。全程序法是只借助提供的句柄功能創(chuàng)建及設(shè)置控件。而GUIDE屬性法類似VB的設(shè)計(jì)風(fēng)格,容易上手,但是這種方法使得m文件過于依賴fig文件。兩者結(jié)合的方法使得設(shè)計(jì)更加靈活。下面以GUIDE屬性法和全程序法相結(jié)合的方法創(chuàng)建、調(diào)用FlexArray控件為例,講解本系統(tǒng)中的數(shù)據(jù)顯示部分?;究丶牟僮鞅容^簡單,在此不進(jìn)行詳述。

            FlexArray控件的全稱是,該控件的文件即C:\WINDOWS\System32\VSFLEX3.OCX,如果本機(jī)上沒有的話,可以到網(wǎng)上下載,或到其他機(jī)子上復(fù)制,然后使用regsvr32.exe注冊即可。做好這些準(zhǔn)備工作之后,點(diǎn)擊GUI左側(cè)的工具箱中的Activex按鈕后,在設(shè)計(jì)區(qū)拖拉,彈出"Select an Activex Control"對話框,對話框中的"Activex Control List"列表框列出了在當(dāng)前計(jì)算機(jī)上注冊的所有Activex控件,在該列表框中選中 控件,單擊"Create"按鈕,該控件便在GUI的空白編輯區(qū)被創(chuàng)建。

            創(chuàng)建成功后,GUI自動為該控件生成的句柄做為圖形窗口句柄handles的成員被存儲,對于第N個(gè)被創(chuàng)建的Activex控件,其句柄為handles.activexN,以后借用該句柄就可以通過函數(shù)來調(diào)用對應(yīng)的Activex控件??丶膶傩栽O(shè)置可以通過雙擊控件或者右鍵菜單打開屬性設(shè)置窗口來進(jìn)行,也可以通過在m文件中通過set命令設(shè)定。通過get可以獲取Activex控件的屬性。

            要讀取或設(shè)定FlexArray控件表格中某單元格的內(nèi)容時(shí),首先通過handles.activexl.row=i;handles.activexl.col=j;語句指向目標(biāo)單元格,然后通過fa=get(handles.activexl,′text′);fa=str2num(fa);語句將目標(biāo)單元格中的內(nèi)容轉(zhuǎn)換為數(shù)值賦給變量fa.通過set命令設(shè)置目標(biāo)單元格中的內(nèi)容,也可以設(shè)置固定欄標(biāo)題,只是注意對于行固定欄的行號是0,列固定欄的列號是0。

            4.3濾波處理及圖形繪制

            如果使用采集到的傳感器輸出數(shù)據(jù)直接計(jì)算井眼姿態(tài),將會造成較大的誤差。主要原因是:(1)在鉆進(jìn)中,由于鉆進(jìn)環(huán)境惡劣,振動和旋轉(zhuǎn)都會對傳感器輸出造成較大影響;(2)電路本身的電氣噪聲,對采集數(shù)據(jù)存在一定的影響。

            在消除旋轉(zhuǎn)對實(shí)驗(yàn)數(shù)據(jù)的影響后,再借助語言實(shí)現(xiàn)濾波功能,具體實(shí)現(xiàn)流程如下:根據(jù)實(shí)驗(yàn)數(shù)據(jù),在MATLAB的FDAtool工具箱中設(shè)計(jì)濾波器,濾波效果與實(shí)際情況吻合后,將該濾波器的傳遞函數(shù)使用MATLAB語言實(shí)現(xiàn),添加到"數(shù)據(jù)處理"功能按鈕對應(yīng)的程序中,完成數(shù)據(jù)處理的全部功能。

            將濾波前后的數(shù)據(jù)借助axeS控件繪圖顯示,可以看到數(shù)據(jù)處理前后對真實(shí)井眼姿態(tài)描述的差異。

            5應(yīng)用實(shí)例

            本系統(tǒng)已經(jīng)應(yīng)用于智能旋轉(zhuǎn)導(dǎo)向系統(tǒng)的室內(nèi)實(shí)驗(yàn),圖3是在室內(nèi)直井鉆井平臺上進(jìn)行模擬鉆井實(shí)驗(yàn)的鉆進(jìn)過程中,利用本軟件進(jìn)行操作的截圖。該圖較好地展示了該軟件的功能:數(shù)據(jù)、命令的雙向傳輸及顯示、數(shù)據(jù)的后續(xù)處理功能。圖中曲線顯示區(qū)域黑線代表的是采集到的y軸重量加速度的數(shù)值GY,紅線代表的是經(jīng)過數(shù)據(jù)處理后的GY,不難發(fā)現(xiàn),后者的波動范圍明顯縮小,曲線更為光滑。然后利用處理過的三軸加速度數(shù)值,對鉆井工具的空間姿態(tài)角進(jìn)行計(jì)算,能夠得到與實(shí)際情況較為吻合的空間姿態(tài),為礦井的鉆進(jìn)中空間姿態(tài)的準(zhǔn)確,提供了一個(gè)可供借鑒和參考的方法,能夠使鉆井過程中減少停鉆次數(shù),為提高鉆井效率和鉆井安全增加了保證。

           

            6結(jié)論

            具有數(shù)據(jù)處理、串口操作控制功能和Activex控件合理調(diào)用功能的上位機(jī)軟件,再加上高性能片上系統(tǒng)C8051F060作為主芯片的井下電路,兩者組成了模擬鉆井姿態(tài)系統(tǒng),在115200的串口波特率下,實(shí)現(xiàn)了對多路井下信號的采集、處理,從實(shí)驗(yàn)結(jié)果來看,井斜角、工具面角等空間角度的計(jì)算結(jié)果與實(shí)際情況較為符合,完全適用于鉆井工具的空間姿態(tài)應(yīng)用。強(qiáng)大的數(shù)據(jù)處理功能,再加上人機(jī)操作界面,這使得MATLAB在工業(yè)現(xiàn)場監(jiān)控方面將獲得更廣闊的應(yīng)用。 


          上一頁 1 2 下一頁

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();