基于matlab的4連桿機(jī)構(gòu)設(shè)計(jì)_第1頁(yè)
基于matlab的4連桿機(jī)構(gòu)設(shè)計(jì)_第2頁(yè)
基于matlab的4連桿機(jī)構(gòu)設(shè)計(jì)_第3頁(yè)
基于matlab的4連桿機(jī)構(gòu)設(shè)計(jì)_第4頁(yè)
基于matlab的4連桿機(jī)構(gòu)設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩20頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、目    錄 1  平面連桿機(jī)構(gòu)的運(yùn)動(dòng)分析11.2 機(jī)構(gòu)的工作原理11.3 機(jī)構(gòu)的數(shù)學(xué)模型的建立1建立機(jī)構(gòu)的閉環(huán)矢量位置方程.1求解方法.22  基于MATLAB程序設(shè)計(jì)42.1 程序流程圖42.2  M文件編寫62.3 程序運(yùn)行結(jié)果輸出73  基于MATLAB圖形界面設(shè)計(jì)113.1界面設(shè)計(jì)113.2代碼設(shè)計(jì)124  小結(jié)17參考文獻(xiàn) 181  平面連桿機(jī)構(gòu)的運(yùn)動(dòng)分析1.1 機(jī)構(gòu)運(yùn)動(dòng)分析的任務(wù)、目的和方法曲柄搖桿機(jī)構(gòu)是平面連桿機(jī)構(gòu)中最基本的由轉(zhuǎn)動(dòng)副組成的四桿機(jī)構(gòu),它可以用來(lái)實(shí)現(xiàn)轉(zhuǎn)動(dòng)和擺動(dòng)之間運(yùn)動(dòng)

2、形式的轉(zhuǎn)換或傳遞動(dòng)力。對(duì)四桿機(jī)構(gòu)進(jìn)行運(yùn)動(dòng)分析的意義是:在機(jī)構(gòu)尺寸參數(shù)已知的情況下,假定主動(dòng)件(曲柄)做勻速轉(zhuǎn)動(dòng),撇開力的作用,僅從運(yùn)動(dòng)幾何關(guān)系上分析從動(dòng)件(連桿、搖桿)的角位移、角速度、角加速度等運(yùn)動(dòng)參數(shù)的變化情況。還可以根據(jù)機(jī)構(gòu)閉環(huán)矢量方程計(jì)算從動(dòng)件的位移偏差。上述這些內(nèi)容,無(wú)論是設(shè)計(jì)新的機(jī)械,還是為了了解現(xiàn)有機(jī)械的運(yùn)動(dòng)性能,都是十分必要的,而且它還是研究機(jī)械運(yùn)動(dòng)性能和動(dòng)力性能提供必要的依據(jù)。機(jī)構(gòu)運(yùn)動(dòng)分析的方法很多,主要有圖解法和解析法。當(dāng)需要簡(jiǎn)捷直觀地了解機(jī)構(gòu)的某個(gè)或某幾個(gè)位置的運(yùn)動(dòng)特性時(shí),采用圖解法比較方便,而且精度也能滿足實(shí)際問(wèn)題的要求。而當(dāng)需要精確地知道或要了解機(jī)構(gòu)在整個(gè)運(yùn)動(dòng)循環(huán)過(guò)程

3、中的運(yùn)動(dòng)特性時(shí),采用解析法并借助計(jì)算機(jī),不僅可獲得很高的計(jì)算精度及一系列位置的分析結(jié)果,并能繪制機(jī)構(gòu)相應(yīng)的運(yùn)動(dòng)線圖,同時(shí)還可以把機(jī)構(gòu)分析和機(jī)構(gòu)綜合問(wèn)題聯(lián)系起來(lái),以便于機(jī)構(gòu)的優(yōu)化設(shè)計(jì)。1.2 機(jī)構(gòu)的工作原理    在平面四桿機(jī)構(gòu)中,其具有曲柄的條件為:a.各桿的長(zhǎng)度應(yīng)滿足桿長(zhǎng)條件,即:最短桿長(zhǎng)度+最長(zhǎng)桿長(zhǎng)度其余兩桿長(zhǎng)度之和。     b.組成該周轉(zhuǎn)副的兩桿中必有一桿為最短桿,且其最短桿為連架桿或機(jī)架(當(dāng)最短桿為連架桿時(shí),四桿機(jī)構(gòu)為曲柄搖桿機(jī)構(gòu);當(dāng)最短桿為機(jī)架時(shí),則為雙曲柄機(jī)構(gòu))。在如下圖1所示的曲柄搖桿機(jī)構(gòu)中,構(gòu)件AB為曲柄,

4、則B點(diǎn)應(yīng)能通過(guò)曲柄與連桿兩次共線的位置。            1.3 機(jī)構(gòu)的數(shù)學(xué)模型的建立建立機(jī)構(gòu)的閉環(huán)矢量位置方程    在用矢量法建立機(jī)構(gòu)的位置方程時(shí),需將構(gòu)件用矢量來(lái)表示,并作出機(jī)構(gòu)的封閉矢量多邊形。如圖1所示,先建立一直角坐標(biāo)系。設(shè)各構(gòu)件的長(zhǎng)度分別為L(zhǎng)1 、L2 、L3 、L4 ,其方位角為 、 、 、 。以各桿矢量組成一個(gè)封閉矢量多邊形,即ABCDA。其個(gè)矢量之和必等于零。即:     

5、0;                                                 

6、0;   式1式1為圖1所示四桿機(jī)構(gòu)的封閉矢量位置方程式。對(duì)于一個(gè)特定的四桿機(jī)構(gòu),其各構(gòu)件的長(zhǎng)度和原動(dòng)件2的運(yùn)動(dòng)規(guī)律,即 為已知,而 =0,故由此矢量方程可求得未知方位角 、 。角位移方程的分量形式為:                               

7、60;      式2閉環(huán)矢量方程分量形式對(duì)時(shí)間求一階導(dǎo)數(shù)(角速度方程)為:                                   式3其矩陣形式為:     

8、60;                          式4聯(lián)立式3兩公式可求得:                     &#

9、160;                   式5                                

10、60;         式6閉環(huán)矢量方程分量形式對(duì)時(shí)間求二階導(dǎo)數(shù)(角加速度方程)矩陣形式為:                          式7由式7可求得加速度:       

11、0;                       式8                             

12、;   式9注:式1式9中,Li(i=1,2,3,4)分別表示機(jī)架1、曲柄2、連桿3、搖桿4的長(zhǎng)度; (i=1,2,3,4)是各桿與x軸的正向夾角,逆時(shí)針為正,順時(shí)針為負(fù),單位為 rad; 是各桿的角速度, ,單位為 rad/s; 為各桿的角加速度,單位為 。求解方法(1)求導(dǎo)中應(yīng)用了下列公式:                       

13、0;                       式10(2)在角位移方程分量形式(式2)中,由于假定機(jī)架為參考系,矢量1與x軸重合, =0,則有非線性超越方程組:                  

14、           式11可以借助牛頓-辛普森數(shù)值解法或Matlab自帶的fsolve函數(shù)求出連桿3的角位移和搖桿4的角位移。(3)求解具有n個(gè)未知量 (i=1,2,n)的線性方程組:                          &

15、#160;                     式12式中,系列矩陣 是一個(gè) 階方陣:                          

16、0;                              式13的逆矩陣為 ;常數(shù)項(xiàng)b是一個(gè)n維矢量:                 

17、;                                          式14因此,線性方程組解的矢量為:      

18、;                                               式15式11是求解連桿3和搖桿4角速度和角加

19、速度的依據(jù)。  基于MATLAB程序設(shè)計(jì)MATLAB 是Mathworks 公司推出的交互式計(jì)算分析軟件,具有強(qiáng)大的運(yùn)算分析功能,具有集科學(xué)計(jì)算、程序設(shè)計(jì)和可視化于一體的高度集成化軟件環(huán)境,是目前國(guó)際上公認(rèn)的最優(yōu)秀的計(jì)算分析軟件之一,被廣泛應(yīng)用于自動(dòng)控制、信號(hào)處理、機(jī)械設(shè)計(jì)、流體力學(xué)和數(shù)理統(tǒng)計(jì)等工程領(lǐng)域。通過(guò)運(yùn)算分析,MATLAB 可以從眾多的設(shè)計(jì)方案中尋找最佳途徑,獲取最優(yōu)結(jié)果,大大提高了設(shè)計(jì)水平和質(zhì)量。四連桿機(jī)構(gòu)的解析法同樣可以用MATLAB 的計(jì)算工具來(lái)求值,并結(jié)合MATLAB 的可視化手段,把各點(diǎn)的計(jì)算值擬合成曲線,得到四連桿機(jī)構(gòu)的運(yùn)動(dòng)仿真軌跡。 2.1 程序流程圖

20、                            2.2  M文件編寫首先創(chuàng)建函數(shù)FoutBarPosition,函數(shù)fsolve通過(guò)他確定 。function t=fourbarposition(th,th2,L2,L3,L4,L1)t=L2*cos(th2)+L3*cos(th(1)-L4*cos(th(2)

21、-L1;L2*sin(th2)+L3*sin(th(1)-L4*sin(th(2);主程序如下:disp ' * * * * * * 平面四桿機(jī)構(gòu)的運(yùn)動(dòng)分析 * * * * * *'L1=304.8;L2=101.6;L3=254.0;L4=177.8;                  %給定已知量,各桿長(zhǎng)L1,L2,L3,L4th2=0:1/6:2*pi;    &#

22、160;                                %曲柄輸入角度從0至360度,步長(zhǎng)為pi/6th34=zeros(length(th2),2);           

23、                 %建立一個(gè)N行2列的零矩陣,第一列存放options=optimset('display','off');                    %_3,第二列存放_(tái)3for m=1:length(th2

24、)                                   %建立for循環(huán),求解_3,_4th34(m,:)=fsolve('fourbarposition',1 1, options,th2(m),L2,L3,L4,L1); &

25、#160;                        %的非線性超越方程,結(jié)果保存在th34中endy=L2*sin(th2)+L3*sin(th34(:,1)');                 

26、0;   %連桿3的D端點(diǎn)Y坐標(biāo)值x=L2*cos(th2)+L3*cos(th34(:,1)');                     %連桿3的D端點(diǎn)X坐標(biāo)值xx=L2*cos(th2);                &#

27、160;                    %連桿3的C端點(diǎn)X坐標(biāo)值               yy=L2*sin(th2);           

28、60;                         %連桿3的C端點(diǎn)Y坐標(biāo)值figure(1)plot(x;xx,y;yy,'k',0 L1,0 0,                %繪制連桿3的幾個(gè)

29、位置點(diǎn)'k-',x,y,'ko',xx,yy,'ks')title('連桿3的幾個(gè)位置點(diǎn)')xlabel('水平方向')ylabel('垂直方向')axis equal                            

30、                %XY坐標(biāo)均衡th2=0:2/72:2*pi;                               

31、     %重新細(xì)分曲柄輸入角度_2,步長(zhǎng)為5度th34=zeros(length(th2),2);options=optimset('display','off');for m=1:length(th2)th34(m,:)=fsolve('fourbarposition',1 1,options,th2(m),L2,L3,L4,L1);endfigure(2)plot(th2*180/pi,th34(:,1),th2*180/pi,th34(:,2)    

32、0; %繪制連桿3的角位移關(guān)于曲柄2的角位移圖plot(th2*180/pi,th34(:,1)*180/pi, th2*180/pi,th34(:,2)*180/pi)                   %繪制搖桿4的角位移關(guān)于曲柄2的角位移圖axis(0 360 0 170)          

33、;                         %確定XY邊界值grid                       

34、;                           %圖形加網(wǎng)格xlabel('主動(dòng)件轉(zhuǎn)角theta_2(度)')ylabel('從動(dòng)件角位移(度)')title('角位移線圖')text(120,120,'搖桿4角位移')text(150,40,'連桿

35、3角位移')w2=250;                                               %設(shè)定曲柄角速度f(wàn)or

36、 i=1:length(th2)A=-L3*sin(th34(i,1) L4*sin(th34(i,2); L3*cos(th34(i,1) -L4*cos(th34(i,2);B=w2*L2*sin(th2(i); -w2*L2*cos(th2(i);w=inv(A)*B;w3(i)=w(1);w4(i)=w(2);endfigure(3)plot(th2*180/pi,w3,th2*180/pi,w4);               

37、;      %繪制角速度線圖axis(0 360 -175 200)                                         

38、;          text(50,160,'搖桿4角速度(omega_4)')text(220,130,'連桿3角速度(omega_3)')gridxlabel('主動(dòng)件轉(zhuǎn)角theta_2(度)')ylabel('從動(dòng)件角速度(radcdot s-1)')title('角速度線圖')for i=1:length(th2)C=-L3*sin(th34(i,1) L4*sin(th34(i,2);L3*cos(th3

39、4(i,1) -L4*cos(th34(i,2);D=w22*L2*cos(th2(i)+w3(i)2*L3*cos(th34(i,1)-w4(i)2*L4*cos(th34(i,2); w22*L2*sin(th2(i)+w3(i)2*L3*sin(th34(i,1)-w4(i)2*L4*sin(th34(i,2);a=inv(C)*D;a3(i)=a(1);a4(i)=a(2);endfigure(4)plot(th2*180/pi,a3,th2*180/pi,a4);          &

40、#160;          %繪制角加速度線圖axis(0 360 -70000 65000)text(50,50000,'搖桿4角加速度(alpha_4)')text(220,12000,'連桿3角加速度(alpha_3)')gridxlabel('從動(dòng)件角加速度')ylabel('從動(dòng)件角加速度(radcdot s-2)')title('角加速度線圖')disp '曲柄轉(zhuǎn)角連桿轉(zhuǎn)角-搖桿轉(zhuǎn)角-連桿角速度-搖桿角速

41、度-連桿加速度-搖桿加速度'     ydcs=th2'*180/pi,th34(:,1)*180/pi,th34(:,2)*180/pi,w3',w4',a3',a4'disp(ydcs)  2.3 程序運(yùn)行結(jié)果輸出>>                  * * * * * * 平面四桿機(jī)構(gòu)的運(yùn)動(dòng)

42、分析 * * * * * *曲柄轉(zhuǎn)角 連桿轉(zhuǎn)角-搖桿轉(zhuǎn)角-連桿角速度-搖桿角速度-連桿加速度-搖桿加速度  1.0e+004 *          0    0.0044    0.0097   -0.0125   -0.0125   -0.5478    4.8458    0.0005  

43、60; 0.0042    0.0094   -0.0126   -0.0107    0.2300    5.5630    0.0010    0.0039    0.0092   -0.0124   -0.0086    0.8946    6.0520 

44、0;  0.0015    0.0037    0.0091   -0.0119   -0.0065    1.4143    6.2982    0.0020    0.0034    0.0090   -0.0114   -0.0043    1.7801 

45、;   6.3174    0.0025    0.0032    0.0089   -0.0107   -0.0021    2.0027    6.1467    0.0030    0.0030    0.0089   -0.0100    0

46、.0000    2.1046    5.8339    0.0035    0.0028    0.0089   -0.0093    0.0020    2.1134    5.4272    0.0040    0.0026    0.0090

47、   -0.0085    0.0038    2.0566    4.9687    0.0045    0.0025    0.0091   -0.0078    0.0054    1.9578    4.4918    0.0050 

48、0;  0.0023    0.0092   -0.0072    0.0069    1.8356    4.0198    0.0055    0.0022    0.0093   -0.0065    0.0082    1.7040    3

49、.5680    0.0060    0.0021    0.0095   -0.0060    0.0094    1.5725    3.1450    0.0065    0.0019    0.0097   -0.0055    0.0104 

50、;   1.4474    2.7545    0.0070    0.0018    0.0099   -0.0050    0.0113    1.3328    2.3968    0.0075    0.0017    0.0102 

51、0; -0.0045    0.0121    1.2307    2.0702    0.0080    0.0017    0.0104   -0.0041    0.0128    1.1425    1.7716    0.0085    0

52、.0016    0.0107   -0.0037    0.0134    1.0687    1.4971    0.0090    0.0015    0.0110   -0.0034    0.0138    1.0095    1.2426 

53、;   0.0095    0.0014    0.0112   -0.0030    0.0142    0.9653    1.0035    0.0100    0.0014    0.0115   -0.0027    0.0145  

54、60; 0.9364    0.7752    0.0105    0.0013    0.0118   -0.0024    0.0148    0.9232    0.5530    0.0110    0.0013    0.0121   -0.0020

55、    0.0149    0.9269    0.3319    0.0115    0.0013    0.0124   -0.0017    0.0150    0.9485    0.1069    0.0120    0.0012 

56、;   0.0127   -0.0014    0.0150    0.9899   -0.1276    0.0125    0.0012    0.0130   -0.0010    0.0149    1.0530   -0.3773    0.0130

57、    0.0012    0.0133   -0.0006    0.0147    1.1404   -0.6481    0.0135    0.0012    0.0136   -0.0002    0.0145    1.2544   -0

58、.9455    0.0140    0.0012    0.0139    0.0002    0.0141    1.3967   -1.2743    0.0145    0.0012    0.0142    0.0008    0.0136

59、    1.5677   -1.6368    0.0150    0.0012    0.0144    0.0013    0.0129    1.7648   -2.0314    0.0155    0.0012    0.0147 

60、0;  0.0020    0.0121    1.9807   -2.4495    0.0160    0.0013    0.0149    0.0027    0.0112    2.2018   -2.8735    0.0165    0

61、.0013    0.0151    0.0035    0.0101    2.4071   -3.2754    0.0170    0.0014    0.0153    0.0044    0.0089    2.5697   -3.6186 

62、;   0.0175    0.0015    0.0155    0.0053    0.0076    2.6616   -3.8650    0.0180    0.0016    0.0156    0.0063    0.0063 

63、0;  2.6609   -3.9849    0.0185    0.0018    0.0157    0.0072    0.0049    2.5591   -3.9674    0.0190    0.0019    0.0158    0

64、.0080    0.0035    2.3638   -3.8244    0.0195    0.0021    0.0159    0.0088    0.0022    2.0959   -3.5866    0.0200    0.0023 

65、;   0.0159    0.0095    0.0010    1.7823   -3.2931    0.0205    0.0025    0.0159    0.0100   -0.0001    1.4487   -2.9815    0

66、.0210    0.0027    0.0159    0.0105   -0.0011    1.1152   -2.6809    0.0215    0.0029    0.0159    0.0108   -0.0020    0.7942 

67、0; -2.4103    0.0220    0.0031    0.0158    0.0111   -0.0028    0.4916   -2.1794    0.0225    0.0033    0.0158    0.0112   -0.0035 

68、;   0.2086   -1.9913    0.0230    0.0036    0.0157    0.0112   -0.0042   -0.0565   -1.8450    0.0235    0.0038    0.0156    0.0111

69、   -0.0048   -0.3071   -1.7375    0.0240    0.0040    0.0155    0.0110   -0.0054   -0.5475   -1.6650    0.0245    0.0042    0.0154 

70、;   0.0108   -0.0060   -0.7817   -1.6233    0.0250    0.0044    0.0153    0.0104   -0.0065   -1.0139   -1.6089    0.0255    0.0046 

71、0;  0.0151    0.0100   -0.0071   -1.2479   -1.6181    0.0260    0.0048    0.0150    0.0096   -0.0077   -1.4868   -1.6480    0.0265  

72、60; 0.0050    0.0148    0.0090   -0.0082   -1.7336   -1.6955    0.0270    0.0052    0.0146    0.0084   -0.0088   -1.9905   -1.7574    0

73、.0275    0.0054    0.0145    0.0076   -0.0095   -2.2588   -1.8304    0.0280    0.0055    0.0143    0.0068   -0.0101   -2.5391   -1.9100

74、    0.0285    0.0056    0.0141    0.0058   -0.0108   -2.8305   -1.9910    0.0290    0.0057    0.0138    0.0048   -0.0115   -3.1300

75、   -2.0660    0.0295    0.0058    0.0136    0.0037   -0.0122   -3.4326   -2.1255    0.0300    0.0059    0.0133    0.0024   -0.0130

76、   -3.7297   -2.1572    0.0305    0.0059    0.0131    0.0011   -0.0137   -4.0091   -2.1451    0.0310    0.0059    0.0128   -0.0004 

77、;  -0.0145   -4.2538   -2.0696    0.0315    0.0059    0.0125   -0.0019   -0.0152   -4.4419   -1.9079    0.0320    0.0058    0.0122   -0

78、.0035   -0.0158   -4.5473   -1.6352    0.0325    0.0058    0.0119   -0.0051   -0.0163   -4.5411   -1.2273    0.0330    0.0056    0.0115 

79、;  -0.0066   -0.0166   -4.3954   -0.6661    0.0335    0.0055    0.0112   -0.0081   -0.0167   -4.0889    0.0551    0.0340    0.0053  

80、60; 0.0109   -0.0095   -0.0166   -3.6129    0.9243    0.0345    0.0051    0.0105   -0.0106   -0.0161   -2.9781    1.9058    0.0350    0

81、.0049    0.0102   -0.0115   -0.0152   -2.2178    2.9395    0.0355    0.0047    0.0099   -0.0122   -0.0140   -1.3857    3.9473    0.0360

82、    0.0044    0.0097   -0.0125   -0.0125   -0.5478    4.8458  圖形輸出:                          &#

83、160;                   圖2  連桿3的幾個(gè)位置點(diǎn)                             

84、                      圖3  角位移線圖                          

85、60;                                 圖4  角加速度線圖               

86、;                                    圖5  角加速度線圖3  基于MATLAB圖形界面設(shè)計(jì)所謂圖形用戶界面, 簡(jiǎn)稱為GU I (Graphic User Interface) , 是指包含了各

87、種圖形控制對(duì)象, 如圖形窗口、菜單、對(duì)話框以及文本等內(nèi)容的用戶界面。利用這些用戶界面, 用戶可以和計(jì)算機(jī)之間進(jìn)行信息交流。用戶可以通過(guò)某種方式來(lái)選擇或者激活這些圖形對(duì)象, 來(lái)運(yùn)行一些特性的M 文件。最常見的激活方式是利用鼠標(biāo)或者其它設(shè)備來(lái)點(diǎn)擊這些對(duì)象。對(duì)于一個(gè)用戶來(lái)說(shuō), 圖形用戶界面就是他所面對(duì)的應(yīng)用程序, 對(duì)圖形界面的操作直接影響應(yīng)用程序的應(yīng)用前途。對(duì)于以往專門用于科學(xué)計(jì)算的語(yǔ)言, 如FORTRAN 語(yǔ)言等, 編寫圖形界面的功能較弱, 因而用其開發(fā)的程序, 其界面往往不夠友好, 用戶使用起來(lái)很不方便。而目前流行的可視化語(yǔ)言, 對(duì)科學(xué)計(jì)算的功能又相對(duì)弱一些。MATLAB提供了非常強(qiáng)大的編寫圖形

88、用戶界面的功能。用戶只和前臺(tái)界面下的控件發(fā)生交互,而所有運(yùn)算、繪圖等內(nèi)部操作都封裝在內(nèi)部,終端用戶不需要區(qū)追究這些復(fù)雜過(guò)程的代碼。圖形用戶界面大大提高用戶使用MATLAB程序的易用性。因此,學(xué)習(xí)MATLAB圖形用戶界面編程,即GUI程序的創(chuàng)建,是MATLAB編程用戶應(yīng)該掌握的重要一環(huán)。對(duì)于一個(gè)MATLAB 中的圖形用戶界面, 它的設(shè)計(jì)過(guò)程一般可以分為兩個(gè)部分:用戶界面的外觀設(shè)計(jì)。在這里, 主要是通過(guò)不同的對(duì)話框、按鈕、文本框等許多工具的使用, 設(shè)計(jì)出一個(gè)圖形用戶界面。同時(shí)也應(yīng)搞清楚這個(gè)圖形界面的功能是什么, 也即在圖形界面上的操作會(huì)引發(fā)什么樣的結(jié)果。圖形界面的完成。在這里, 用戶將根據(jù)在外觀設(shè)

89、計(jì)階段所確定的圖形界面的功能, 針對(duì)各個(gè)不同的圖形對(duì)象來(lái)編寫出能夠?qū)崿F(xiàn)該功能的函數(shù)代碼, 確保這個(gè)圖形界面能夠完成所預(yù)定的功能。3.1 界面設(shè)計(jì)首先我們新建一個(gè)GUI文件,如下圖所示:                                   

90、60;          圖6  新建GUI文件選擇Blank GUI(Default)。進(jìn)入GUI開發(fā)環(huán)境以后添加5個(gè)編輯文本框,8個(gè)靜態(tài)文本框,和1個(gè)下拉菜單。利用菜單編輯器,創(chuàng)建Open、Print、Close三個(gè)菜單。創(chuàng)建好GUI界面需要的各交互控件并調(diào)整好大概的位置后,設(shè)置這些控件的屬性。最后的界面效果如下圖示:              

91、0;                              圖7  界面效果3.2 代碼設(shè)計(jì)(1)打開M文件編輯器(M-file Edit),點(diǎn)擊 向下的三角圖標(biāo),可以看到各個(gè)對(duì)象的回調(diào)函數(shù)(Callback),某些對(duì)象的創(chuàng)建函數(shù)或打開函數(shù)等。通過(guò)選中相應(yīng)項(xiàng)就可以跳動(dòng)對(duì)應(yīng)函數(shù)位置進(jìn)行程序編輯。 

92、   選中edit_callback選項(xiàng),光標(biāo)跳到 function edit1_Callback(hObject, eventdata, handles)下面空白處,添加以下代碼:user_entry=str2double(get(hObject,'String');if isnan(user_entry)    errordlg('請(qǐng)輸入數(shù)值!','Bad Input')end該語(yǔ)句嚴(yán)格限制編輯框內(nèi)必須輸入數(shù)值,否則出現(xiàn)錯(cuò)誤對(duì)話框(如下圖所示)。同理在其他四個(gè)編輯框的回調(diào)函數(shù)下輸入相同的代碼。

93、                                           圖8  錯(cuò)誤對(duì)話框     

94、60;                              (2)打開M文件編輯器(M-file Edit),點(diǎn)擊 向下的三角圖標(biāo),設(shè)置下拉菜單返回函數(shù),光標(biāo)跳到 function popupmenu1_Callback(hObject, eventdata, handles)下面空白處。由于下拉菜單是

95、本界面設(shè)計(jì)關(guān)鍵控件,與本設(shè)計(jì)相關(guān)的程序都放在這個(gè)返回函數(shù)下。添加代碼如下:L1=str2double(get(handles.edit1,'String');L2=str2double(get(handles.edit2,'String');L3=str2double(get(handles.edit3,'String');L4=str2double(get(handles.edit4,'String');w2=str2double(get(handles.edit5,'String');th2=0:2/72:2*

96、pi;th34=zeros(length(th2),2);options=optimset('display','off');for m=1:length(th2)th34(m,:)=fsolve('fourbarposition',1 1,options,th2(m),L2,L3,L4,L1);endw2=250;for i=1:length(th2)A=-L3*sin(th34(i,1) L4*sin(th34(i,2); L3*cos(th34(i,1) -L4*cos(th34(i,2);B=w2*L2*sin(th2(i); -w2*L

97、2*cos(th2(i);w=inv(A)*B; w3(i)=w(1);w4(i)=w(2);endfor i=1:length(th2)C=-L3*sin(th34(i,1) L4*sin(th34(i,2);L3*cos(th34(i,1) -L4*cos(th34(i,2);D=w22*L2*cos(th2(i)+w3(i)2*L3*cos(th34(i,1)-w4(i)2*L4*cos(th34(i,2);.   w22*L2*sin(th2(i)+w3(i)2*L3*sin(th34(i,1)-w4(i)2*L4*sin(th34(i,2);a=inv(

98、C)*D;a3(i)=a(1);a4(i)=a(2);endval=get(hObject,'Value');str=get(hObject,'String');switch strvalcase '連桿3的幾個(gè)位置點(diǎn)'th2=0:1/6:2*pi;     th34=zeros(length(th2),2);     options=optimset('display','off');    

99、for m=1:length(th2)          th34(m,:)=fsolve('fourbarposition',1 1,options,th2(m),L2,L3,L4,L1);     end     y=L2*sin(th2)+L3*sin(th34(:,1)');     x=L2*cos(th2)+L3*cos(th34(:,1)')

100、;     xx=L2*cos(th2);                                           &

101、#160;                                                 &

102、#160;                        yy=L2*sin(th2);     plot(x;xx,y;yy,'k',0 L1,0 0,'k-',x,y,'ko',xx,yy,'ks')     title('

103、連桿3的幾個(gè)位置點(diǎn)')     xlabel('水平方向')     ylabel('垂直方向')     axis equal     grid oncase '角位移線圖'     plot(th2*180/pi,th34(:,1)*180/pi,th2*180/pi,th34(:,2)*180/pi)   

104、  axis(0 360 0 170)     grid  on     xlabel('主動(dòng)件轉(zhuǎn)角theta_2(度)')     ylabel('從動(dòng)件角位移(度)')     title('角位移線圖')     text(120,120,'搖桿4角位移')     t

105、ext(150,40,'連桿3角位移')case '角速度線圖'     plot(th2*180/pi,w3,th2*180/pi,w4);     axis(0 360 -175 200)     text(50,160,'搖桿4角速度(omega_4)')     text(220,130,'連桿3角速度(omega_3)')   

106、60; grid on     xlabel('主動(dòng)件轉(zhuǎn)角theta_2(度)')     ylabel('從動(dòng)件角速度(radcdot s-1)')     title('角速度線圖')case '角加速度線圖'plot(th2*180/pi,a3,th2*180/pi,a4);     axis(0 360 -50000 65000)   

107、  text(50,50000,'搖桿4角加速度(alpha_4)')     text(220,12000,'連桿3角加速度(alpha_3)')     grid on     xlabel('主動(dòng)件轉(zhuǎn)角theta_2(度)')     ylabel('從動(dòng)件角加速度(radcdot s-2)')     title(&

108、#39;角加速度線圖')endguidata(hObject,handles)% 其中,guidata(hObject,handles)命令用于更新句柄,當(dāng)輸入不同參數(shù)是,程序能夠做出相應(yīng)的相應(yīng)。    (3)打開M文件編輯器(M-file Edit),點(diǎn)擊 向下的三角圖標(biāo),在Open菜單回調(diào)函數(shù)下添加以下代碼:file = uigetfile('*.fig');if isequal(file, 0)    open(file);end此菜單用以打開fig文件。其相應(yīng)界面如圖9所示:

109、0;                                            圖9(4)打開M文件編輯器(M-file Edit),點(diǎn)擊 向下的三角圖標(biāo),在Print

110、菜單回調(diào)函數(shù)下添加以下代碼:printdlg(handles.figure1)                                         %用于圖形輸出。(5)打開M文件編輯器(

111、M-file Edit),點(diǎn)擊 向下的三角圖標(biāo),在Close菜單回調(diào)函數(shù)下添加以下代碼:selection = questdlg('Close ' get(handles.figure1,'Name') '?',.                 'Close ' get(handles.figure1,'Name') '.','Ye

112、s','No','Yes');if strcmp(selection,'No')    return;enddelete(handles.figure1)此菜單用于關(guān)閉界面,其響應(yīng)界面如圖10所示:                           &

113、#160;         圖10(6)完成M文件編寫后,運(yùn)行程序進(jìn)行檢驗(yàn),單擊 圖標(biāo)或M文件工具欄的 圖標(biāo),在編輯欄輸入個(gè)構(gòu)件參數(shù),運(yùn)行結(jié)果如圖11:                               

114、60;              圖11  界面運(yùn)行效果圖    分別點(diǎn)擊下拉菜單 下各選項(xiàng),則在繪圖區(qū)域分別顯示圖2圖5。   4  小結(jié)在本次基于MATLAB平面四桿機(jī)構(gòu)機(jī)構(gòu)的運(yùn)動(dòng)分析課程設(shè)計(jì)中,不僅用到了MATLAB的m語(yǔ)言編程,還有GUI圖形用戶界面設(shè)計(jì)。對(duì)于課程的設(shè)計(jì)來(lái)說(shuō),m語(yǔ)言本身來(lái)說(shuō),功能相當(dāng)強(qiáng)大,但是由于其復(fù)雜的編程方法,讓大多數(shù)初學(xué)者望而卻步;而GUI圖形界面則正好彌補(bǔ)

115、了它的不足,它采用的是所見即所得的編程方式,用它來(lái)做軟件的界面就如圖制作網(wǎng)頁(yè)一樣簡(jiǎn)單明了,用它制作出來(lái)的軟件不需要太多的編程知識(shí)都可以輕松搞定;在此次課程設(shè)計(jì)中,本人盡量揚(yáng)長(zhǎng)避短,把這些工具的優(yōu)點(diǎn)結(jié)合到一起,發(fā)揮其最大的作用。通過(guò)此次課程設(shè)計(jì),不僅使我們對(duì)使我們對(duì)四桿機(jī)構(gòu)有了進(jìn)一步認(rèn)識(shí),并且使我們認(rèn)識(shí)到計(jì)算機(jī)技術(shù)對(duì)工程應(yīng)用的重要性。本此設(shè)計(jì)凝結(jié)了團(tuán)隊(duì)合作的結(jié)晶,是我們利用三周的時(shí)間努力學(xué)習(xí)、設(shè)計(jì)的成果,同時(shí),在設(shè)計(jì)過(guò)成中得到了鄭XX老師的悉心指導(dǎo),在此表示衷心的感謝!      參考文獻(xiàn)  1 孫桓,陳作模.機(jī)械原理M.7版

116、.北京:高等教育出版社,2006.2 符煒.機(jī)構(gòu)設(shè)計(jì)學(xué).M.1版. 長(zhǎng)沙:中南工業(yè)大學(xué)出版社,1995.3 MATLAB原理與工程應(yīng)用M.1版.北京:電子工業(yè)出版社,2002.4 5 6 80288644首先創(chuàng)建函數(shù)FoutBarPosition,函數(shù)fsolve通過(guò)他確定 。function t=fourbarposition(th,th2,L2,L3,L4,L1)t=L2*cos(th2)+L3*cos(th(1)-L4*cos(th(2)-L1;L2*sin(th2)+L3*sin(th(1)-L4*sin(th(2);主程序如下:disp ' * * * * * * 平面四桿機(jī)

117、構(gòu)的運(yùn)動(dòng)分析 * * * * * *'L1=304.8;L2=101.6;L3=254.0;L4=177.8;                  th2=0:1/6:2*pi;                     &#

118、160;                th34=zeros(length(th2),2);                            options=optimset('disp

119、lay','off');                    for m=1:length(th2)                                   th34(m,:)=fsolve('fourbarposition',1 1, option

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論