資源描述:
《利用matlab的圖形用戶界面設(shè)計交互式演示實驗》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、第24卷第1期赤峰學(xué)院學(xué)報(自然科學(xué)版)Vol.24No.12008年1月JournalofChifengUniversity(NaturalScienceEdition)Jan.2008利用MATLAB的圖形用戶界面設(shè)計交互式演示實驗孫福玉(赤峰學(xué)院物理與電子信息工程系,內(nèi)蒙古赤峰024000)摘要:利用MATLAB的GUI功能設(shè)計了振動合成、通電圓環(huán)磁場兩個交互式演示實驗.通過對GUI開發(fā)環(huán)境中回調(diào)函數(shù)的設(shè)計,展示了方便靈活的數(shù)據(jù)輸入和結(jié)果圖形輸出效果.關(guān)鍵詞:圖形用戶界面;交互式;回調(diào)函數(shù)中圖分類號:O4-39文獻標(biāo)識碼:A文章編號:1673-260X(2008)01A-00
2、71-041引言x=A1cos(n1)!t+"1)(1)[1]許多文章基于硬件設(shè)計了數(shù)據(jù)的采集接口,y=A2cos(n2#+$2)(2)本文采用MATLAB的GUI設(shè)計交互式演示實驗其中A1,A2代表振動的振幅,n1ω1,n2ω2為振顯示數(shù)據(jù)輸入和結(jié)果圖形輸出效果.MATLAB具有動的頻率,n1,n2為整數(shù),φ1,φ2為初相.由(1)、(2)強大的數(shù)據(jù)處理功能,特別是其圖形顯示功能.近式消去時間t得:年來在各個自然科學(xué)領(lǐng)域的應(yīng)用越來越廣.使用圖-1ynxn22cos()-cos()=%2-&1(3)形用戶界面GUI開發(fā)環(huán)境可以方便地創(chuàng)建GUI應(yīng)AnAn2111用程序,圖形用戶界面開
3、發(fā)環(huán)境根據(jù)用戶設(shè)計的當(dāng)n1=n2時有:GUI布局,自動生成一個M文件的框架,用戶使用-1y-1xcos()-cos()=’2-(1(4)AA這一框架編制自己的應(yīng)用程序,在自動生成的M21文件中采用了有效的方法管理對象句柄執(zhí)行調(diào)用代入公式:-1-1-1函數(shù)等工作,同時為調(diào)用函數(shù)自動添加子函數(shù),以22cosx-cosy=cos"xy+!(1-x)(1-y)#(5)[2]利于擴大應(yīng)用范圍.可得:2實驗設(shè)計22xy2xy+-cos()-*)=sin(+-,)(6)2.1振動合成的GUI設(shè)計22AA2121AA1211當(dāng)兩個互相垂直分振動(信號)的頻率成簡單可見,只有當(dāng)n1=n2時,即兩分振
4、動的頻率相整數(shù)比時,它們合成運動的軌跡是穩(wěn)定閉合的曲等時,利薩如圖形的形狀才取決于兩個分振動的[3]線,稱為利薩如圖形,許多教材指出:利薩如圖形振幅、頻率和初相差.否則,利薩如圖形的形狀應(yīng)取的形狀取決于兩個分振動的振幅、頻率和初相差.決于兩個分振動的振幅、頻率和初相.實際上,利薩如圖形的形狀應(yīng)取決于兩個分振動按照下述方法既可以實現(xiàn)交互式操作,可以[4]的振幅、頻率和初相.這一點在教材中亦沒有明確改變兩個分振動的振幅、頻率、初位相,觀看利薩表述.如圖形的形狀,證實上述結(jié)論.下面通過公式推導(dǎo)和MATLAB的GUI功能(1)啟動MATLAB,點擊文件(file)菜單,選中設(shè)計交互式演示實
5、驗分別給予證明.GUI選項,打開布局編輯器;兩個互相垂直的諧振動分量為:基金項目:赤峰學(xué)院科學(xué)研究基金資助(ZRYB200608)·71·(2)拖放所需控件,包括兩個坐標(biāo)軸控件、一個按鈕控件、六個可編輯文本框及八個靜態(tài)文本框,到工作區(qū),使用幾何位置排列工具對這些控件的位置進行調(diào)整;(3)雙擊所選控件,編輯其屬性,主要有font-name,fontsize,fontweight,string,tag等屬性;(4)運行程序,在自動生成的M文件中添加[5]start按鈕控件的回調(diào)函數(shù)(Callback)如下:圖1振動合成的GUI窗口%---Executesonbuttonpressins
6、tart.∞"Ir2l+1110functionstart_Callback(hObject,eventdata,handles)Br(r,!)-!()P2l+1(0)P2+1(cos#),(ra)2rl=0rsionofMATLAB∞)I1r2l+1110%handlesstructurewithhandlesanduserda
7、ta(seeB’(r,()=-2r!2l+1(a)P2l+1(0)P2l+1(cos*),(ra)l=0a1=str2double(get(handles.a1,'string'));(7)a2=str2double(get(handles.a2,'string'));運行程序,根據(jù)(7)式在自動生成的M文件中f