時間:2008-07-23 09:25:00來源:ronggang
使用串口進行讀寫操作時,還需注意的一點就是對串口數據校驗方式屬性(Parity)的設置,如果該設置與下位機軟件不匹配,將造成讀寫錯誤而又難以查找原因。
4.2 GUI界面中activx控件的使用
在MATLAB的GUIDE中所提供的基本控件非常少,難以滿足本系統的需要。因此本系統調用系統中的Activex控件FlexArray、FlexGrid實現了數據在表格中的顯示,調用axes控件實現了數據圖形繪制。
本程序中用到的控件(包括Activex控件),在其創建及屬性設置過程中,使用了全程序法、GUIDE屬性法和兩者相結合的方法。全程序法是只借助MATLAB提供的句柄功能創建及設置控件。而GUIDE屬性法類似VB的設計風格,容易上手,但是這種方法使得m文件過于依賴fig文件。兩者結合的方法使得設計更加靈活。下面以GUIDE屬性法和全程序法相結合的方法創建、調用FlexArray控件為例,講解本系統中的數據顯示部分。基本控件的操作比較簡單,在此不進行詳述。
FlexArray控件的全稱是,該控件的文件即C:\WINDOWS\System32\VSFLEX3.OCX,如果本機上沒有的話,可以到網上下載,或到其他機子上復制,然后使用regsvr32.exe注冊即可。做好這些準備工作之后,點擊GUI左側的工具箱中的Activex按鈕后,在設計區拖拉,彈出"Select an Activex Control"對話框,對話框中的"Activex Control List"列表框列出了在當前計算機上注冊的所有Activex控件,在該列表框中選中 控件,單擊"Create"按鈕,該控件便在GUI的空白編輯區被創建。
創建成功后,GUI自動為該控件生成的句柄做為圖形窗口句柄handles的成員被存儲,對于第N個被創建的Activex控件,其句柄為handles.activexN,以后借用該句柄就可以通過函數來調用對應的Activex控件。控件的屬性設置可以通過雙擊控件或者右鍵菜單打開屬性設置窗口來進行,也可以通過在m文件中通過set命令設定。通過get可以獲取Activex控件的屬性。
要讀取或設定FlexArray控件表格中某單元格的內容時,首先通過handles.activexl.row=i;handles.activexl.col=j;語句指向目標單元格,然后通過fa=get(handles.activexl,′text′);fa=str2num(fa);語句將目標單元格中的內容轉換為數值賦給變量fa.通過set命令設置目標單元格中的內容,也可以設置固定欄標題,只是注意對于行固定欄的行號是0,列固定欄的列號是0。
4.3濾波處理及圖形繪制
如果使用采集到的傳感器輸出數據直接計算井眼姿態,將會造成較大的誤差。主要原因是:(1)在鉆進中,由于鉆進環境惡劣,振動和旋轉都會對傳感器輸出造成較大影響;(2)電路本身的電氣噪聲,對采集數據存在一定的影響。
在消除旋轉對實驗數據的影響后,再借助MATLAB語言實現濾波功能,具體實現流程如下:根據實驗數據,在MATLAB的FDAtool工具箱中設計濾波器,濾波效果與實際情況吻合后,將該濾波器的傳遞函數使用MATLAB語言實現,添加到"數據處理"功能按鈕對應的程序中,完成數據處理的全部功能。
將濾波前后的數據借助axeS控件繪圖顯示,可以看到數據處理前后對真實井眼姿態描述的差異。
5 應用實例
本系統已經應用于智能旋轉導向系統的室內實驗,圖3是在室內直井鉆井平臺上進行模擬鉆井實驗的鉆進過程中,利用本軟件進行操作的截圖。該圖較好地展示了該軟件的功能:數據、命令的雙向傳輸及顯示、數據的后續處理功能。圖中曲線顯示區域黑線代表的是采集到的y軸重量加速度的數值GY,紅線代表的是經過數據處理后的GY,不難發現,后者的波動范圍明顯縮小,曲線更為光滑。然后利用處理過的三軸加速度數值,對鉆井工具的空間姿態角進行計算,能夠得到與實際情況較為吻合的空間姿態,為礦井的鉆進中空間姿態的準確測量,提供了一個可供借鑒和參考的方法,能夠使鉆井過程中減少停鉆次數,為提高鉆井效率和鉆井安全增加了保證。

標簽:
上一篇:國內變頻器的市場狀況與營銷策略
傳動網版權與免責聲明:凡本網注明[來源:傳動網]的所有文字、圖片、音視和視頻文件,版權均為傳動網(www.cdcst56.com)獨家所有。如需轉載請與0755-82949061聯系。任何媒體、網站或個人轉載使用時須注明來源“傳動網”,違反者本網將追究其法律責任。
本網轉載并注明其他來源的稿件,均來自互聯網或業內投稿人士,版權屬于原版權人。轉載請保留稿件來源及作者,禁止擅自篡改,違者自負版權法律責任。
產品新聞
更多>2025-12-10
2025-11-20
2025-11-10
2025-11-10
2025-11-07
2025-10-31