第一篇:基于matlab的連桿機(jī)構(gòu)設(shè)計
基于matlab的連桿機(jī)構(gòu)設(shè)計
班級:熱動1001班 姓名:何志杰 學(xué)號:201004414 1.1 機(jī)構(gòu)運(yùn)動分析的任務(wù)、目的和方法
曲柄搖桿機(jī)構(gòu)是平面連桿機(jī)構(gòu)中最基本的由轉(zhuǎn)動副組成的四桿機(jī)構(gòu),它可以用來實現(xiàn)轉(zhuǎn)動和擺動之間運(yùn)動形式的轉(zhuǎn)換或傳遞動力。
對四桿機(jī)構(gòu)進(jìn)行運(yùn)動分析的意義是:在機(jī)構(gòu)尺寸參數(shù)已知的情況下,假定主動件(曲柄)做勻速轉(zhuǎn)動,撇開力的作用,僅從運(yùn)動幾何關(guān)系上分析從動件(連桿、搖桿)的角位移、角速度、角加速度等運(yùn)動參數(shù)的變化情況。還可以根據(jù)機(jī)構(gòu)閉環(huán)矢量方程計算從動件的位移偏差。上述這些內(nèi)容,無論是設(shè)計新的機(jī)械,還是為了了解現(xiàn)有機(jī)械的運(yùn)動性能,都是十分必要的,而且它還是研究機(jī)械運(yùn)動性能和動力性能提供必要的依據(jù)。
機(jī)構(gòu)運(yùn)動分析的方法很多,主要有圖解法和解析法。當(dāng)需要簡捷直觀地了解機(jī)構(gòu)的某個或某幾個位置的運(yùn)動特性時,采用圖解法比較方便,而且精度也能滿足實際問題的要求。而當(dāng)需要精確地知道或要了解機(jī)構(gòu)在整個運(yùn)動循環(huán)過程中的運(yùn)動特性時,采用解析法并借助計算機(jī),不僅可獲得很高的計算精度及一系列位置的分析結(jié)果,并能繪制機(jī)構(gòu)相應(yīng)的運(yùn)動線圖,同時還可以把機(jī)構(gòu)分析和機(jī)構(gòu)綜合問題聯(lián)系起來,以便于機(jī)構(gòu)的優(yōu)化設(shè)計。1.2 機(jī)構(gòu)的工作原理
在平面四桿機(jī)構(gòu)中,其具有曲柄的條件為: a.各桿的長度應(yīng)滿足桿長條件,即:
最短桿長度+最長桿長度≤其余兩桿長度之和。
b.組成該周轉(zhuǎn)副的兩桿中必有一桿為最短桿,且其最短桿為連架桿或機(jī)架(當(dāng)最短桿為連架桿時,四桿機(jī)構(gòu)為曲柄搖桿機(jī)構(gòu);當(dāng)最短桿為機(jī)架時,則為雙曲柄機(jī)構(gòu))。
因此,線性方程組解的矢量為:
式15 式11是求解連桿3和搖桿4角速度和角加速度的依據(jù)。
基于MATLAB程序設(shè)計
MATLAB 是Mathworks 公司推出的交互式計算分析軟件,具有強(qiáng)大的運(yùn)算分析功能,具有集科學(xué)計算、程序設(shè)計和可視化于一體的高度集成化軟件環(huán)境,是目前國際上公認(rèn)的最優(yōu)秀的計算分析軟件之一,被廣泛應(yīng)用于自動控制、信號處理、機(jī)械設(shè)計、流體力學(xué)和數(shù)理統(tǒng)計等工程領(lǐng)域。通過運(yùn)算分析,MATLAB 可以從眾多的設(shè)計方案中尋找最佳途徑,獲取最優(yōu)結(jié)果,大大提高了設(shè)計水平和質(zhì)量。四連桿機(jī)構(gòu)的解析法同樣可以用MATLAB 的計算工具來求值,并結(jié)合MATLAB 的可視化手段,把各點的計算值擬合成曲線,得到四連桿機(jī)構(gòu)的運(yùn)動仿真軌跡。
2.1 程序流程圖
圖3 角位移線圖
圖4 角加速度線圖
圖5 角加速度線圖
基于MATLAB圖形界面設(shè)計
所謂圖形用戶界面, 簡稱為GU I(Graphic User Interface), 是指包含了各種圖形控制對象, 如圖形窗口、菜單、對話框以及文本等內(nèi)容的用戶界面。利用這些用戶界面, 用戶可以和計算機(jī)之間進(jìn)行信息交流。用戶可以通過某種方式來選擇或者激活這些圖形對象, 來運(yùn)行一些特性的M 文件。最常見的激活方式是利用鼠標(biāo)或者其它設(shè)備來點擊這些對象。對于一個用戶來說, 圖形用戶界面就是他所面對的應(yīng)用程序, 對圖形界面的操作直接影響應(yīng)用程序的應(yīng)用前途。對于以往專門用于科學(xué)計算的語言, 如FORTRAN 語言等, 編寫圖形界面的功能較弱, 因而用其開發(fā)的程序, 其界面往往不夠友好, 用戶使用起來很不方便。而目前流行的可視化語言, 對科學(xué)計算的功能又相對弱一些。MATLAB提供了非常強(qiáng)大的編寫圖形用戶界面的功能。用戶只和前臺界面下的控件發(fā)生交互,而所有運(yùn)算、繪圖等內(nèi)部操作都封裝在內(nèi)部,終端用戶不需要區(qū)追究這些復(fù)雜過程的代碼。圖形用戶界面大大提高用戶使用MATLAB程序的易用性。因此,學(xué)習(xí)MATLAB圖形用戶界面編程,即GUI程序的創(chuàng)建,是MATLAB編程用戶應(yīng)該掌握的重要一環(huán)。對于一個MATLAB 中的圖形用戶界面, 它的設(shè)計過程一般可以分為兩個部分: ①用戶界面的外觀設(shè)計。在這里, 主要是通過不同的對話框、按鈕、文本框等許多工具的使用, 設(shè)計出一個圖形用戶界面。同時也應(yīng)搞清楚這個圖形界面的功能是什么, 也即在圖形界面上的操作會引發(fā)什么樣的結(jié)果。
②圖形界面的完成。在這里, 用戶將根據(jù)在外觀設(shè)計階段所確定的圖形界面的功能, 針對各個不同的圖形對象來編寫出能夠?qū)崿F(xiàn)該功能的函數(shù)代碼, 確保這個圖形界面能夠完成所預(yù)定的功能。3.1 界面設(shè)計
首先我們新建一個GUI文件,如下圖所示:
圖6 新建GUI文件 選擇Blank GUI(Default)。
進(jìn)入GUI開發(fā)環(huán)境以后添加5個編輯文本框,8個靜態(tài)文本框,和1個下拉菜單。利用菜單編輯器,創(chuàng)建Open、Print、Close三個菜單。創(chuàng)建好GUI界面需要的各交互控件并調(diào)整好大概的位置后,設(shè)置這些控件的屬性。最后的界面效果如下圖示
圖7 界面效果 3.2 代碼設(shè)計
(1)打開M文件編輯器(M-file Edit),點擊
向下的三角圖標(biāo),可以看到各個對象的回調(diào)函數(shù)(Callback),某些對象的創(chuàng)建函數(shù)或打開函數(shù)等。通過選中相應(yīng)項就可以跳動對應(yīng)函數(shù)位置進(jìn)行程序編輯。
選中’edit_callback’選項,光標(biāo)跳到’ function edit1_Callback(hObject, eventdata, handles)’下面空白處,添加以下代碼: user_entry=str2double(get(hObject,'String'));if isnan(user_entry)errordlg('請輸入數(shù)值!','Bad Input')end
(2)打開M文件編輯器(M-file Edit),點擊
向下的三角圖標(biāo),設(shè)置下拉菜單返回函數(shù),光標(biāo)跳到’ function popupmenu1_Callback(hObject, eventdata, handles)’下面空白處。由于下拉菜單是本界面設(shè)計關(guān)鍵控件,與本設(shè)計相關(guān)的程序都放在這個返回函數(shù)下。添加代碼略。(3)打開M文件編輯器(M-file Edit),點擊 回調(diào)函數(shù)下添加以下代碼: file = uigetfile('*.fig');if ~isequal(file, 0)open(file);end 此菜單用以打開fig文件。其相應(yīng)界面如圖9所示:
向下的三角圖標(biāo),在Open菜單
圖9(4)打開M文件編輯器(M-file Edit),點擊 回調(diào)函數(shù)下添加以下代碼:
向下的三角圖標(biāo),在Print菜單printdlg(handles.figure1)%用于圖形輸出。
(5)打開M文件編輯器(M-file Edit),點擊 回調(diào)函數(shù)下添加以下代碼:
selection = questdlg(['Close ' get(handles.figure1,'Name')'?'],...['Close ' get(handles.figure1,'Name')'...'],'Yes','No','Yes');if strcmp(selection,'No')return;end delete(handles.figure1)(6)完成M文件編寫后,運(yùn)行程序進(jìn)行檢驗,單擊
圖標(biāo)或M文件工具欄的向下的三角圖標(biāo),在Close菜單圖標(biāo),在編輯欄輸入個構(gòu)件參數(shù),運(yùn)行結(jié)果如圖11:
01112-
第二篇:基于matlab的連桿機(jī)構(gòu)設(shè)計
目 錄
1平面連桿機(jī)構(gòu)的運(yùn)動分析…………………………………………………………………………1
1.2 機(jī)構(gòu)的工作原理……………………………………………………………………………………1 1.3 機(jī)構(gòu)的數(shù)學(xué)模型的建立……………………………………………………………………………1 1.3.1建立機(jī)構(gòu)的閉環(huán)矢量位置方程...................................................1 1.3.2求解方法.....................................................................2 2 基于MATLAB程序設(shè)計………………………………………………………………………………4 2.1 程序流程圖…………………………………………………………………………………………4
2.2 M文件編寫…………………………………………………………………………………………6
2.3 程序運(yùn)行結(jié)果輸出…………………………………………………………………………………7 3 基于MATLAB圖形界面設(shè)計…………………………………………………………………………11 3.1界面設(shè)計……………………………………………………………………………………………11
3.2代碼設(shè)計……………………………………………………………………………………………12 4 小結(jié)…………………………………………………………………………………………………17
參考文獻(xiàn) ………………………………………………………………………………………………18
平面連桿機(jī)構(gòu)的運(yùn)動分析
1.1 機(jī)構(gòu)運(yùn)動分析的任務(wù)、目的和方法
曲柄搖桿機(jī)構(gòu)是平面連桿機(jī)構(gòu)中最基本的由轉(zhuǎn)動副組成的四桿機(jī)構(gòu),它可以用來實現(xiàn)轉(zhuǎn)動和擺動之間運(yùn)動形式的轉(zhuǎn)換或傳遞動力。
對四桿機(jī)構(gòu)進(jìn)行運(yùn)動分析的意義是:在機(jī)構(gòu)尺寸參數(shù)已知的情況下,假定主動件(曲柄)做勻速轉(zhuǎn)動,撇開力的作用,僅從運(yùn)動幾何關(guān)系上分析從動件(連桿、搖桿)的角位移、角速度、角加速度等運(yùn)動參數(shù)的變化情況。還可以根據(jù)機(jī)構(gòu)閉環(huán)矢量方程計算從動件的位移偏差。上述這些內(nèi)容,無論是設(shè)計新的機(jī)械,還是為了了解現(xiàn)有機(jī)械的運(yùn)動性能,都是十分必要的,而且它還是研究機(jī)械運(yùn)動性能和動力性能提供必要的依據(jù)。
機(jī)構(gòu)運(yùn)動分析的方法很多,主要有圖解法和解析法。當(dāng)需要簡捷直觀地了解機(jī)構(gòu)的某個或某幾個位置的運(yùn)動特性時,采用圖解法比較方便,而且精度也能滿足實際問題的要求。而當(dāng)需要精確地知道或要了解機(jī)構(gòu)在整個運(yùn)動循環(huán)過程中的運(yùn)動特性時,采用解析法并借助計算機(jī),不僅可獲得很高的計算精度及一系列位置的分析結(jié)果,并能繪制機(jī)構(gòu)相應(yīng)的運(yùn)動線圖,同時還可以把機(jī)構(gòu)分析和機(jī)構(gòu)綜合問題聯(lián)系起來,以便于機(jī)構(gòu)的優(yōu)化設(shè)計。1.2 機(jī)構(gòu)的工作原理
在平面四桿機(jī)構(gòu)中,其具有曲柄的條件為: a.各桿的長度應(yīng)滿足桿長條件,即:
最短桿長度+最長桿長度≤其余兩桿長度之和。
b.組成該周轉(zhuǎn)副的兩桿中必有一桿為最短桿,且其最短桿為連架桿或機(jī)架(當(dāng)最短桿為連架桿時,四桿機(jī)構(gòu)為曲柄搖桿機(jī)構(gòu);當(dāng)最短桿為機(jī)架時,則為雙曲柄機(jī)構(gòu))。
在如下圖1所示的曲柄搖桿機(jī)構(gòu)中,構(gòu)件AB為曲柄,則B點應(yīng)能通過曲柄與連桿兩次共線的位置。
1.3 機(jī)構(gòu)的數(shù)學(xué)模型的建立 1.3.1建立機(jī)構(gòu)的閉環(huán)矢量位置方程
在用矢量法建立機(jī)構(gòu)的位置方程時,需將構(gòu)件用矢量來表示,并作出機(jī)構(gòu)的封閉矢量多邊形。如圖1所示,先建立一直角坐標(biāo)系。設(shè)各構(gòu)件的長度分別為L1、L2、L3、L4,其方位角為、、、。以各桿矢量組成一個封閉矢量多邊形,即ABCDA。其個矢量之和必等于零。即:
式1
式1為圖1所示四桿機(jī)構(gòu)的封閉矢量位置方程式。對于一個特定的四桿機(jī)構(gòu),其各構(gòu)件的長度和原動件2的運(yùn)動規(guī)律,即程可求得未知方位角、。
為已知,而
=0,故由此矢量方角位移方程的分量形式為:
式2
閉環(huán)矢量方程分量形式對時間求一階導(dǎo)數(shù)(角速度方程)為:
式3 其矩陣形式為:
式4 聯(lián)立式3兩公式可求得:
式5
式6
閉環(huán)矢量方程分量形式對時間求二階導(dǎo)數(shù)(角加速度方程)矩陣形式為:
式7 由式7可求得加速度:
式8
式9
注:式1~式9中,Li(i=1,2,3,4)分別表示機(jī)架
1、曲柄
2、連桿
3、搖桿4的長度;(i=1,2,3,4)是各桿與x軸的正向夾角,逆時針為正,順時針為負(fù),單位為 rad;是各桿的角速度。
,單位為 rad/s;為各桿的角加速度,單位為 1.3.2求解方法
(1)求導(dǎo)中應(yīng)用了下列公式:
式10
(2)在角位移方程分量形式(式2)中,由于假定機(jī)架為參考系,矢量1與x軸重合,=0,則有非線性超越方程組:
式11
可以借助牛頓-辛普森數(shù)值解法或Matlab自帶的fsolve函數(shù)求出連桿3的角位移和搖桿4的角位移。
(3)求解具有n個未知量(i=1,2,…,n)的線性方程組:
式12 式中,系列矩陣 是一個 階方陣:
式13 的逆矩陣為;常數(shù)項b是一個n維矢量:
式14 因此,線性方程組解的矢量為:
式15
式11是求解連桿3和搖桿4角速度和角加速度的依據(jù)。
基于MATLAB程序設(shè)計
MATLAB 是Mathworks 公司推出的交互式計算分析軟件,具有強(qiáng)大的運(yùn)算分析功能,具有集科學(xué)計算、程序設(shè)計和可視化于一體的高度集成化軟件環(huán)境,是目前國際上公認(rèn)的最優(yōu)秀的計算分析軟件之一,被廣泛應(yīng)用于自動控制、信號處理、機(jī)械設(shè)計、流體力學(xué)和數(shù)理統(tǒng)計等工程領(lǐng)域。通過運(yùn)算分析,MATLAB 可以從眾多的設(shè)計方案中尋找最佳途徑,獲取最優(yōu)結(jié)果,大大提高了設(shè)計水平和質(zhì)量。四連桿機(jī)構(gòu)的解析法同樣可以用MATLAB 的計算工具來求值,并結(jié)合MATLAB 的可視化手段,把各點的計算值擬合成曲線,得到四連桿機(jī)構(gòu)的運(yùn)動仿真軌跡。
2.1 程序流程圖
2.2 M文件編寫
首先創(chuàng)建函數(shù)FoutBarPosition,函數(shù)fsolve通過他確定。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ī)構(gòu)的運(yùn)動分析 * * * * * *' L1=304.8;L2=101.6;L3=254.0;L4=177.8;%給定已知量,各桿長L1,L2,L3,L4 th2=[0:1/6:2]*pi;%曲柄輸入角度從0至360度,步長為pi/6 th34=zeros(length(th2),2);%建立一個N行2列的零矩陣,第一列存放options=optimset('display','off');%θ_3,第二列存放θ_3
for m=1:length(th2)%建立for循環(huán),求解θ_3,θ_4
th34(m,:)=fsolve('fourbarposition',[1 1],…
%調(diào)用fsove函數(shù)求解關(guān)于θ_3,θ_4 options,th2(m),L2,L3,L4,L1);%的非線性超越方程,結(jié)果保存在th34中 end y=L2*sin(th2)+L3*sin(th34(:,1)');%連桿3的D端點Y坐標(biāo)值 x=L2*cos(th2)+L3*cos(th34(:,1)');%連桿3的D端點X坐標(biāo)值 xx=[L2*cos(th2)];%連桿3的C端點X坐標(biāo)值 yy=[L2*sin(th2)];%連桿3的C端點Y坐標(biāo)值 figure(1)plot([x;xx],[y;yy],'k',[0 L1],[0 0],… %繪制連桿3的幾個位置點 'k--^',x,y,'ko',xx,yy,'ks')title('連桿3的幾個位置點')xlabel('水平方向')ylabel('垂直方向')axis equal %XY坐標(biāo)均衡
th2=[0:2/72:2]*pi;%重新細(xì)分曲柄輸入角度θ_2,步長為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);end figure(2)plot(th2*180/pi,th34(:,1),th2*180/pi,th34(:,2))%繪制連桿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])%確定XY邊界值 grid %圖形加網(wǎng)格 xlabel('主動件轉(zhuǎn)角theta_2(度)')ylabel('從動件角位移(度)')title('角位移線圖')text(120,120,'搖桿4角位移')text(150,40,'連桿3角位移')w2=250;%設(shè)定曲柄角速度 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*L2*cos(th2(i))];w=inv(A)*B;w3(i)=w(1);w4(i)=w(2);end figure(3)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)')grid xlabel('主動件轉(zhuǎn)角theta_2(度)')ylabel('從動件角速度(radcdot s^{-1})')title('角速度線圖')for 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=[w2^2*L2*cos(th2(i))+w3(i)^2*L3*cos(th34(i,1))-w4(i)^2*L4*cos(th34(i,2));...w2^2*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);end figure(4)plot(th2*180/pi,a3,th2*180/pi,a4);%繪制角加速度線圖 axis([0 360-70000 65000])text(50,50000,'搖桿4角加速度(alpha_4)')text(220,12000,'連桿3角加速度(alpha_3)')grid xlabel('從動件角加速度')ylabel('從動件角加速度(radcdot s^{-2})')title('角加速度線圖')disp '曲柄轉(zhuǎn)角連桿轉(zhuǎn)角-搖桿轉(zhuǎn)角-連桿角速度-搖桿角速度-連桿加速度-搖桿加速度' 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)動分析 * * * * * * 曲柄轉(zhuǎn)角 連桿轉(zhuǎn)角-搖桿轉(zhuǎn)角-連桿角速度-搖桿角速度-連桿加速度-搖桿加速度
1.0e+004 *
0 0.0044 0.0097-0.0125-0.0125-0.5478 4.8458 0.0005 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 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 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.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-0.0085 0.0038 2.0566 4.9687 0.0045 0.0025 0.0091-0.0078 0.0054 1.9578 4.4918 0.0050 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.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 1.4474 2.7545 0.0070 0.0018 0.0099-0.0050 0.0113 1.3328 2.3968 0.0075 0.0017 0.0102-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.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 0.0095 0.0014 0.0112-0.0030 0.0142 0.9653 1.0035 0.0100 0.0014 0.0115-0.0027 0.0145 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 0.0149 0.9269 0.3319 0.0115 0.0013 0.0120 0.0012 0.0125 0.0012 0.0130 0.0012 0.0135 0.0012 0.0140 0.0012 0.0145 0.0012 0.0150 0.0012 0.0155 0.0012 0.0160 0.0013 0.0165 0.0013 0.0170 0.0014 0.0175 0.0015 0.0180 0.0016 0.0185 0.0018 0.0190 0.0019 0.0195 0.0021 0.0200 0.0023 0.0205 0.0025 0.0210 0.0027 0.0215 0.0029 0.0220 0.0031 0.0225 0.0033 0.0230 0.0036 0.0235 0.0038 0.0240 0.0040 0.0245 0.0042 0.0250 0.0044 0.0255 0.0046 0.0260 0.0048 0.0265 0.0050 0.0270 0.0052 0.0275 0.0054 0.0280 0.0055 0.0285 0.0056 0.0124-0.0017 0.0150 0.9485 0.1069 0.0127-0.0014 0.0150 0.9899-0.1276 0.0130-0.0010 0.0149 1.0530-0.3773 0.0133-0.0006 0.0147 1.1404-0.6481-0.0002 0.0145 1.2544-0.9455 0.0139 0.0002 0.0141 1.3967-1.2743 0.0142 0.0008 0.0136 1.5677-1.6368 0.0144 0.0013 0.0129 1.7648-2.0314 0.0147 0.0020 0.0121 1.9807-2.4495 0.0149 0.0027 0.0112 2.2018-2.8735 0.0151 0.0035 0.0101 2.4071-3.2754 0.0153 0.0044 0.0089 2.5697-3.6186 0.0155 0.0053 0.0076 2.6616-3.8650 0.0156 0.0063 0.0063 2.6609-3.9849 0.0157 0.0072 0.0049 2.5591-3.9674 0.0158 0.0080 0.0035 2.3638-3.8244 0.0159 0.0088 0.0022 2.0959-3.5866 0.0159 0.0095 0.0010 1.7823-3.2931 0.0159 0.0100-0.0001 1.4487-2.9815 0.0159 0.0105-0.0011 1.1152-2.6809 0.0159 0.0108-0.0020 0.7942-2.4103 0.0158 0.0111-0.0028 0.4916-2.1794 0.0158 0.0112-0.0035 0.2086-1.9913 0.0157 0.0112-0.0042-0.0565-1.8450 0.0156 0.0111-0.0048-0.3071-1.7375 0.0155 0.0110-0.0054-0.5475-1.6650 0.0154 0.0108-0.0060-0.7817-1.6233 0.0153 0.0104-0.0065-1.0139-1.6089 0.0151 0.0100-0.0071-1.2479-1.6181 0.0150 0.0096-0.0077-1.4868-1.6480 0.0148 0.0090-0.0082-1.7336-1.6955 0.0146 0.0084-0.0088-1.9905-1.7574 0.0145 0.0076-0.0095-2.2588-1.8304 0.0143 0.0068-0.0101-2.5391-1.9100 0.0141 0.0058-0.0108-2.8305-1.9910 0.0136 0.0290 0.0057 0.0138 0.0048-0.0115-3.1300-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-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-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.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-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 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.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 0.0044 0.0097-0.0125-0.0125-0.5478 4.8458
圖形輸出:
圖2 連桿3的幾個位置點
圖3 角位移線圖
圖4 角加速度線圖
圖5 角加速度線圖 基于MATLAB圖形界面設(shè)計
所謂圖形用戶界面, 簡稱為GU I(Graphic User Interface), 是指包含了各種圖形控制對象, 如圖形窗口、菜單、對話框以及文本等內(nèi)容的用戶界面。利用這些用戶界面, 用戶可以和計算機(jī)之間進(jìn)行信息交流。用戶可以通過某種方式來選擇或者激活這些圖形對象, 來運(yùn)行一些特性的M 文件。最常見的激活方式是利用鼠標(biāo)或者其它設(shè)備來點擊這些對象。對于一個用戶來說, 圖形用戶界面就是他所面對的應(yīng)用程序, 對圖形界面的操作直接影響應(yīng)用程序的應(yīng)用前途。對于以往專門用于科學(xué)計算的語言, 如FORTRAN 語言等, 編寫圖形界面的功能較弱, 因而用其開發(fā)的程序, 其界面往往不夠友好, 用戶使用起來很不方便。而目前流行的可視化語言, 對科學(xué)計算的功能又相對弱一些。MATLAB提供了非常強(qiáng)大的編寫圖形用戶界面的功能。用戶只和前臺界面下的控件發(fā)生交互,而所有運(yùn)算、繪圖等內(nèi)部操作都封裝在內(nèi)部,終端用戶不需要區(qū)追究這些復(fù)雜過程的代碼。圖形用戶界面大大提高用戶使用MATLAB程序的易用性。因此,學(xué)習(xí)MATLAB圖形用戶界面編程,即GUI程序的創(chuàng)建,是MATLAB編程用戶應(yīng)該掌握的重要一環(huán)。對于一個MATLAB 中的圖形用戶界面, 它的設(shè)計過程一般可以分為兩個部分: ①用戶界面的外觀設(shè)計。在這里, 主要是通過不同的對話框、按鈕、文本框等許多工具的使用, 設(shè)計出一個圖形用戶界面。同時也應(yīng)搞清楚這個圖形界面的功能是什么, 也即在圖形界面上的操作會引發(fā)什么樣的結(jié)果。②圖形界面的完成。在這里, 用戶將根據(jù)在外觀設(shè)計階段所確定的圖形界面的功能, 針對各個不同的圖形對象來編寫出能夠?qū)崿F(xiàn)該功能的函數(shù)代碼, 確保這個圖形界面能夠完成所預(yù)定的功能。3.1 界面設(shè)計
首先我們新建一個GUI文件,如下圖所示:
圖6 新建GUI文件 選擇Blank GUI(Default)。
進(jìn)入GUI開發(fā)環(huán)境以后添加5個編輯文本框,8個靜態(tài)文本框,和1個下拉菜單。利用菜單編輯器,創(chuàng)建Open、Print、Close三個菜單。創(chuàng)建好GUI界面需要的各交互控件并調(diào)整好大概的位置后,設(shè)置這些控件的屬性。最后的界面效果如下圖示:
圖7 界面效果 3.2 代碼設(shè)計
(1)打開M文件編輯器(M-file Edit),點擊
向下的三角圖標(biāo),可以看到各個對象的回調(diào)函數(shù)(Callback),某些對象的創(chuàng)建函數(shù)或打開函數(shù)等。通過選中相應(yīng)項就可以跳動對應(yīng)函數(shù)位置進(jìn)行程序編輯。
選中’edit_callback’選項,光標(biāo)跳到’ function edit1_Callback(hObject, eventdata, handles)’下面空白處,添加以下代碼: user_entry=str2double(get(hObject,'String'));if isnan(user_entry)errordlg('請輸入數(shù)值!','Bad Input')end 該語句嚴(yán)格限制編輯框內(nèi)必須輸入數(shù)值,否則出現(xiàn)錯誤對話框(如下圖所示)。同理在其他四個編輯框的回調(diào)函數(shù)下輸入相同的代碼。
圖8 錯誤對話框(2)打開M文件編輯器(M-file Edit),點擊
向下的三角圖標(biāo),設(shè)置下拉菜單返回函數(shù),光標(biāo)跳到’ function popupmenu1_Callback(hObject, eventdata, handles)’下面空白處。由于下拉菜單是本界面設(shè)計關(guān)鍵控件,與本設(shè)計相關(guān)的程序都放在這個返回函數(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]*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);end w2=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*L2*cos(th2(i))];w=inv(A)*B;w3(i)=w(1);w4(i)=w(2);end for 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=[w2^2*L2*cos(th2(i))+w3(i)^2*L3*cos(th34(i,1))-w4(i)^2*L4*cos(th34(i,2));...w2^2*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);end val=get(hObject,'Value');str=get(hObject,'String');switch str{val} case '連桿3的幾個位置點' th2=[0:1/6:2]*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);end y=L2*sin(th2)+L3*sin(th34(:,1)');x=L2*cos(th2)+L3*cos(th34(:,1)');xx=[L2*cos(th2)];yy=[L2*sin(th2)];plot([x;xx],[y;yy],'k',[0 L1],[0 0],'k--^',x,y,'ko',xx,yy,'ks')title('連桿3的幾個位置點')xlabel('水平方向')ylabel('垂直方向')axis equal grid on case '角位移線圖' plot(th2*180/pi,th34(:,1)*180/pi,th2*180/pi,th34(:,2)*180/pi)axis([0 360 0 170])grid on xlabel('主動件轉(zhuǎn)角theta_2(度)')ylabel('從動件角位移(度)')title('角位移線圖')text(120,120,'搖桿4角位移')text(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)')grid on xlabel('主動件轉(zhuǎn)角theta_2(度)')ylabel('從動件角速度(radcdot s^{-1})')title('角速度線圖')case '角加速度線圖' plot(th2*180/pi,a3,th2*180/pi,a4);axis([0 360-50000 65000])text(50,50000,'搖桿4角加速度(alpha_4)')text(220,12000,'連桿3角加速度(alpha_3)')grid on xlabel('主動件轉(zhuǎn)角theta_2(度)')ylabel('從動件角加速度(radcdot s^{-2})')title('角加速度線圖')end guidata(hObject,handles)%
其中,guidata(hObject,handles)命令用于更新句柄,當(dāng)輸入不同參數(shù)是,程序能夠做出相應(yīng)的相應(yīng)。
(3)打開M文件編輯器(M-file Edit),點擊 回調(diào)函數(shù)下添加以下代碼: file = uigetfile('*.fig');if ~isequal(file, 0)open(file);end 此菜單用以打開fig文件。其相應(yīng)界面如圖9所示:
向下的三角圖標(biāo),在Open菜單
圖9(4)打開M文件編輯器(M-file Edit),點擊 回調(diào)函數(shù)下添加以下代碼:
向下的三角圖標(biāo),在Print菜單printdlg(handles.figure1)%用于圖形輸出。(5)打開M文件編輯器(M-file Edit),點擊 回調(diào)函數(shù)下添加以下代碼:
向下的三角圖標(biāo),在Close菜單selection = questdlg(['Close ' get(handles.figure1,'Name')'?'],...['Close ' get(handles.figure1,'Name')'...'],'Yes','No','Yes');if strcmp(selection,'No')return;end delete(handles.figure1)此菜單用于關(guān)閉界面,其響應(yīng)界面如圖10所示:
圖10
(6)完成M文件編寫后,運(yùn)行程序進(jìn)行檢驗,單擊 圖標(biāo)或M文件工具欄的
圖標(biāo),在編輯欄輸入個構(gòu)件參數(shù),運(yùn)行結(jié)果如圖11:
圖11 界面運(yùn)行效果圖
分別點擊下拉菜單
小結(jié)
在本次基于MATLAB平面四桿機(jī)構(gòu)機(jī)構(gòu)的運(yùn)動分析課程設(shè)計中,不僅用到了MATLAB的m語言編程,還有GUI圖形用戶界面設(shè)計。對于課程的設(shè)計來說,m語言本身來說,功能相當(dāng)強(qiáng)大,但是由于其復(fù)雜的編程方法,讓大多數(shù)初學(xué)者望而卻步;而GUI圖形界面則正好彌補(bǔ)了它的不足,它采用的是所見即所得的編程方式,用它來做軟件的界面就如圖制作網(wǎng)頁一樣簡單明了,用它制作出來的軟件不需要太多的編程知識都可以輕松搞定;在此次課程設(shè)計中,本人盡量揚(yáng)長避短,把這些工具的優(yōu)點結(jié)合到一起,發(fā)揮其最大的作用。通過此次課程設(shè)計,不僅使我們對使我們對四桿機(jī)構(gòu)有了進(jìn)一步認(rèn)識,并且使我們認(rèn)識到計算機(jī)技術(shù)對工程應(yīng)用的重要性。本此設(shè)計凝結(jié)了團(tuán)隊合作的結(jié)晶,是我們利用三周的時間努力學(xué)
下各選項,則在繪圖區(qū)域分別顯示圖2~圖5。習(xí)、設(shè)計的成果,同時,在設(shè)計過成中得到了鄭XX老師的悉心指導(dǎo),在此表示衷心的感謝!
參考文獻(xiàn)
[1] 孫桓,陳作模.機(jī)械原理[M].7版.北京:高等教育出版社,2006.[2] 符煒.機(jī)構(gòu)設(shè)計學(xué).[M].1版.長沙:中南工業(yè)大學(xué)出版社,1995.[3] MATLAB原理與工程應(yīng)用[M].1版.北京:電子工業(yè)出版社,2002.[4] http:///pro-t2-p137-dzd.html?dk=80288644
第三篇:基于matlab的4連桿機(jī)構(gòu)設(shè)計
目 錄
1平面連桿機(jī)構(gòu)的運(yùn)動分析…………………………………………………………………………1
1.2 機(jī)構(gòu)的工作原理……………………………………………………………………………………1 1.3 機(jī)構(gòu)的數(shù)學(xué)模型的建立……………………………………………………………………………1 1.3.1建立機(jī)構(gòu)的閉環(huán)矢量位置方程...................................................1 1.3.2求解方法.....................................................................2 2 基于MATLAB程序設(shè)計………………………………………………………………………………4 2.1 程序流程圖…………………………………………………………………………………………4
2.2 M文件編寫…………………………………………………………………………………………6
2.3 程序運(yùn)行結(jié)果輸出…………………………………………………………………………………7 3 基于MATLAB圖形界面設(shè)計…………………………………………………………………………11 3.1界面設(shè)計……………………………………………………………………………………………11
3.2代碼設(shè)計……………………………………………………………………………………………12 4 小結(jié)…………………………………………………………………………………………………17
參考文獻(xiàn) ………………………………………………………………………………………………18
平面連桿機(jī)構(gòu)的運(yùn)動分析
1.1 機(jī)構(gòu)運(yùn)動分析的任務(wù)、目的和方法
曲柄搖桿機(jī)構(gòu)是平面連桿機(jī)構(gòu)中最基本的由轉(zhuǎn)動副組成的四桿機(jī)構(gòu),它可以用來實現(xiàn)轉(zhuǎn)動和擺動之間運(yùn)動形式的轉(zhuǎn)換或傳遞動力。
對四桿機(jī)構(gòu)進(jìn)行運(yùn)動分析的意義是:在機(jī)構(gòu)尺寸參數(shù)已知的情況下,假定主動件(曲柄)做勻速轉(zhuǎn)動,撇開力的作用,僅從運(yùn)動幾何關(guān)系上分析從動件(連桿、搖桿)的角位移、角速度、角加速度等運(yùn)動參數(shù)的變化情況。還可以根據(jù)機(jī)構(gòu)閉環(huán)矢量方程計算從動件的位移偏差。上述這些內(nèi)容,無論是設(shè)計新的機(jī)械,還是為了了解現(xiàn)有機(jī)械的運(yùn)動性能,都是十分必要的,而且它還是研究機(jī)械運(yùn)動性能和動力性能提供必要的依據(jù)。
機(jī)構(gòu)運(yùn)動分析的方法很多,主要有圖解法和解析法。當(dāng)需要簡捷直觀地了解機(jī)構(gòu)的某個或某幾個位置的運(yùn)動特性時,采用圖解法比較方便,而且精度也能滿足實際問題的要求。而當(dāng)需要精確地知道或要了解機(jī)構(gòu)在整個運(yùn)動循環(huán)過程中的運(yùn)動特性時,采用解析法并借助計算機(jī),不僅可獲得很高的計算精度及一系列位置的分析結(jié)果,并能繪制機(jī)構(gòu)相應(yīng)的運(yùn)動線圖,同時還可以把機(jī)構(gòu)分析和機(jī)構(gòu)綜合問題聯(lián)系起來,以便于機(jī)構(gòu)的優(yōu)化設(shè)計。1.2 機(jī)構(gòu)的工作原理
在平面四桿機(jī)構(gòu)中,其具有曲柄的條件為: a.各桿的長度應(yīng)滿足桿長條件,即:
最短桿長度+最長桿長度≤其余兩桿長度之和。
b.組成該周轉(zhuǎn)副的兩桿中必有一桿為最短桿,且其最短桿為連架桿或機(jī)架(當(dāng)最短桿為連架桿時,四桿機(jī)構(gòu)為曲柄搖桿機(jī)構(gòu);當(dāng)最短桿為機(jī)架時,則為雙曲柄機(jī)構(gòu))。
在如下圖1所示的曲柄搖桿機(jī)構(gòu)中,構(gòu)件AB為曲柄,則B點應(yīng)能通過曲柄與連桿兩次共線的位置。
1.3 機(jī)構(gòu)的數(shù)學(xué)模型的建立 1.3.1建立機(jī)構(gòu)的閉環(huán)矢量位置方程
在用矢量法建立機(jī)構(gòu)的位置方程時,需將構(gòu)件用矢量來表示,并作出機(jī)構(gòu)的封閉矢量多邊形。如圖1所示,先建立一直角坐標(biāo)系。設(shè)各構(gòu)件的長度分別為L1、L2、L3、L4,其方位角為、、、。以各桿矢量組成一個封閉矢量多邊形,即ABCDA。其個矢量之和必等于零。即:
式1
式1為圖1所示四桿機(jī)構(gòu)的封閉矢量位置方程式。對于一個特定的四桿機(jī)構(gòu),其各構(gòu)件的長度和原動件2的運(yùn)動規(guī)律,即程可求得未知方位角、。
為已知,而
=0,故由此矢量方角位移方程的分量形式為:
式2
閉環(huán)矢量方程分量形式對時間求一階導(dǎo)數(shù)(角速度方程)為:
式3 其矩陣形式為:
式4 聯(lián)立式3兩公式可求得:
式5
式6
閉環(huán)矢量方程分量形式對時間求二階導(dǎo)數(shù)(角加速度方程)矩陣形式為:
式7 由式7可求得加速度:
式8
式9
注:式1~式9中,Li(i=1,2,3,4)分別表示機(jī)架
1、曲柄
2、連桿
3、搖桿4的長度;(i=1,2,3,4)是各桿與x軸的正向夾角,逆時針為正,順時針為負(fù),單位為 rad;是各桿的角速度。
,單位為 rad/s;為各桿的角加速度,單位為 1.3.2求解方法
(1)求導(dǎo)中應(yīng)用了下列公式:
式10
(2)在角位移方程分量形式(式2)中,由于假定機(jī)架為參考系,矢量1與x軸重合,=0,則有非線性超越方程組:
式11
可以借助牛頓-辛普森數(shù)值解法或Matlab自帶的fsolve函數(shù)求出連桿3的角位移和搖桿4的角位移。
(3)求解具有n個未知量(i=1,2,…,n)的線性方程組:
式12 式中,系列矩陣 是一個 階方陣:
式13 的逆矩陣為;常數(shù)項b是一個n維矢量:
式14 因此,線性方程組解的矢量為:
式15
式11是求解連桿3和搖桿4角速度和角加速度的依據(jù)。
基于MATLAB程序設(shè)計
MATLAB 是Mathworks 公司推出的交互式計算分析軟件,具有強(qiáng)大的運(yùn)算分析功能,具有集科學(xué)計算、程序設(shè)計和可視化于一體的高度集成化軟件環(huán)境,是目前國際上公認(rèn)的最優(yōu)秀的計算分析軟件之一,被廣泛應(yīng)用于自動控制、信號處理、機(jī)械設(shè)計、流體力學(xué)和數(shù)理統(tǒng)計等工程領(lǐng)域。通過運(yùn)算分析,MATLAB 可以從眾多的設(shè)計方案中尋找最佳途徑,獲取最優(yōu)結(jié)果,大大提高了設(shè)計水平和質(zhì)量。四連桿機(jī)構(gòu)的解析法同樣可以用MATLAB 的計算工具來求值,并結(jié)合MATLAB 的可視化手段,把各點的計算值擬合成曲線,得到四連桿機(jī)構(gòu)的運(yùn)動仿真軌跡。
2.1 程序流程圖
2.2 M文件編寫
首先創(chuàng)建函數(shù)FoutBarPosition,函數(shù)fsolve通過他確定。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ī)構(gòu)的運(yùn)動分析 * * * * * *' L1=304.8;L2=101.6;L3=254.0;L4=177.8;%給定已知量,各桿長L1,L2,L3,L4 th2=[0:1/6:2]*pi;%曲柄輸入角度從0至360度,步長為pi/6 th34=zeros(length(th2),2);%建立一個N行2列的零矩陣,第一列存放options=optimset('display','off');%θ_3,第二列存放θ_3
for m=1:length(th2)%建立for循環(huán),求解θ_3,θ_4
th34(m,:)=fsolve('fourbarposition',[1 1], options,th2(m),L2,L3,L4,L1);%的非線性超越方程,結(jié)果保存在th34中 end y=L2*sin(th2)+L3*sin(th34(:,1)');%連桿3的D端點Y坐標(biāo)值 x=L2*cos(th2)+L3*cos(th34(:,1)');%連桿3的D端點X坐標(biāo)值 xx=[L2*cos(th2)];%連桿3的C端點X坐標(biāo)值 yy=[L2*sin(th2)];%連桿3的C端點Y坐標(biāo)值 figure(1)plot([x;xx],[y;yy],'k',[0 L1],[0 0], %繪制連桿3的幾個位置點 'k--^',x,y,'ko',xx,yy,'ks')title('連桿3的幾個位置點')xlabel('水平方向')ylabel('垂直方向')axis equal %XY坐標(biāo)均衡
th2=[0:2/72:2]*pi;%重新細(xì)分曲柄輸入角度θ_2,步長為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);end figure(2)plot(th2*180/pi,th34(:,1),th2*180/pi,th34(:,2))%繪制連桿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])%確定XY邊界值 grid %圖形加網(wǎng)格 xlabel('主動件轉(zhuǎn)角theta_2(度)')ylabel('從動件角位移(度)')title('角位移線圖')text(120,120,'搖桿4角位移')text(150,40,'連桿3角位移')w2=250;%設(shè)定曲柄角速度 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*L2*cos(th2(i))];w=inv(A)*B;w3(i)=w(1);w4(i)=w(2);end figure(3)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)')grid xlabel('主動件轉(zhuǎn)角theta_2(度)')ylabel('從動件角速度(radcdot s^{-1})')title('角速度線圖')for 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=[w2^2*L2*cos(th2(i))+w3(i)^2*L3*cos(th34(i,1))-w4(i)^2*L4*cos(th34(i,2));w2^2*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);end figure(4)plot(th2*180/pi,a3,th2*180/pi,a4);%繪制角加速度線圖 axis([0 360-70000 65000])text(50,50000,'搖桿4角加速度(alpha_4)')text(220,12000,'連桿3角加速度(alpha_3)')grid xlabel('從動件角加速度')ylabel('從動件角加速度(radcdot s^{-2})')title('角加速度線圖')disp '曲柄轉(zhuǎn)角連桿轉(zhuǎn)角-搖桿轉(zhuǎn)角-連桿角速度-搖桿角速度-連桿加速度-搖桿加速度' 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)動分析 * * * * * * 曲柄轉(zhuǎn)角 連桿轉(zhuǎn)角-搖桿轉(zhuǎn)角-連桿角速度-搖桿角速度-連桿加速度-搖桿加速度
1.0e+004 *
0 0.0044 0.0097-0.0125-0.0125-0.5478 4.8458 0.0005 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 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 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.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-0.0085 0.0038 2.0566 4.9687 0.0045 0.0025 0.0091-0.0078 0.0054 1.9578 4.4918 0.0050 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.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 1.4474 2.7545 0.0070 0.0018 0.0099-0.0050 0.0113 1.3328 2.3968 0.0075 0.0017 0.0102-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.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 0.0095 0.0014 0.0112-0.0030 0.0142 0.9653 1.0035 0.0100 0.0014 0.0115-0.0027 0.0145 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 0.0149 0.9269 0.3319 0.0115 0.0013 0.0124-0.0017 0.0150 0.9485 0.1069 0.0120 0.0012 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 0.0012 0.0135 0.0012 0.0140 0.0012 0.0145 0.0012 0.0150 0.0012 0.0155 0.0012 0.0160 0.0013 0.0165 0.0013 0.0170 0.0014 0.0175 0.0015 0.0180 0.0016 0.0185 0.0018 0.0190 0.0019 0.0195 0.0021 0.0200 0.0023 0.0205 0.0025 0.0210 0.0027 0.0215 0.0029 0.0220 0.0031 0.0225 0.0033 0.0230 0.0036 0.0235 0.0038 0.0240 0.0040 0.0245 0.0042 0.0250 0.0044 0.0255 0.0046 0.0260 0.0048 0.0265 0.0050 0.0270 0.0052 0.0275 0.0054 0.0280 0.0055 0.0285 0.0056 0.0290 0.0057 0.0295 0.0058 0.0300 0.0059 0.0133-0.0006 0.0147 1.1404-0.6481-0.0002 0.0145 1.2544-0.9455 0.0139 0.0002 0.0141 1.3967-1.2743 0.0142 0.0008 0.0136 1.5677-1.6368 0.0144 0.0013 0.0129 1.7648-2.0314 0.0147 0.0020 0.0121 1.9807-2.4495 0.0149 0.0027 0.0112 2.2018-2.8735 0.0151 0.0035 0.0101 2.4071-3.2754 0.0153 0.0044 0.0089 2.5697-3.6186 0.0155 0.0053 0.0076 2.6616-3.8650 0.0156 0.0063 0.0063 2.6609-3.9849 0.0157 0.0072 0.0049 2.5591-3.9674 0.0158 0.0080 0.0035 2.3638-3.8244 0.0159 0.0088 0.0022 2.0959-3.5866 0.0159 0.0095 0.0010 1.7823-3.2931 0.0159 0.0100-0.0001 1.4487-2.9815 0.0159 0.0105-0.0011 1.1152-2.6809 0.0159 0.0108-0.0020 0.7942-2.4103 0.0158 0.0111-0.0028 0.4916-2.1794 0.0158 0.0112-0.0035 0.2086-1.9913 0.0157 0.0112-0.0042-0.0565-1.8450 0.0156 0.0111-0.0048-0.3071-1.7375 0.0155 0.0110-0.0054-0.5475-1.6650 0.0154 0.0108-0.0060-0.7817-1.6233 0.0153 0.0104-0.0065-1.0139-1.6089 0.0151 0.0100-0.0071-1.2479-1.6181 0.0150 0.0096-0.0077-1.4868-1.6480 0.0148 0.0090-0.0082-1.7336-1.6955 0.0146 0.0084-0.0088-1.9905-1.7574 0.0145 0.0076-0.0095-2.2588-1.8304 0.0143 0.0068-0.0101-2.5391-1.9100 0.0141 0.0058-0.0108-2.8305-1.9910 0.0138 0.0048-0.0115-3.1300-2.0660 0.0136 0.0037-0.0122-3.4326-2.1255 0.0133 0.0024-0.0130-3.7297-2.1572 0.0136 0.0305 0.0059 0.0131 0.0011-0.0137-4.0091-2.1451 0.0310 0.0059 0.0128-0.0004-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.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-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 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.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 0.0044 0.0097-0.0125-0.0125-0.5478 4.8458
圖形輸出:
圖2 連桿3的幾個位置點
圖3 角位移線圖
圖4 角加速度線圖
圖5 角加速度線圖 基于MATLAB圖形界面設(shè)計
所謂圖形用戶界面, 簡稱為GU I(Graphic User Interface), 是指包含了各種圖形控制對象, 如圖形窗口、菜單、對話框以及文本等內(nèi)容的用戶界面。利用這些用戶界面, 用戶可以和計算機(jī)之間進(jìn)行信息交流。用戶可以通過某種方式來選擇或者激活這些圖形對象, 來運(yùn)行一些特性的M 文件。最常見的激活方式是利用鼠標(biāo)或者其它設(shè)備來點擊這些對象。對于一個用戶來說, 圖形用戶界面就是他所面對的應(yīng)用程序, 對圖形界面的操作直接影響應(yīng)用程序的應(yīng)用前途。對于以往專門用于科學(xué)計算的語言, 如FORTRAN 語言等, 編寫圖形界面的功能較弱, 因而用其開發(fā)的程序, 其界面往往不夠友好, 用戶使用起來很不方便。而目前流行的可視化語言, 對科學(xué)計算的功能又相對弱一些。MATLAB提供了非常強(qiáng)大的編寫圖形用戶界面的功能。用戶只和前臺界面下的控件發(fā)生交互,而所有運(yùn)算、繪圖等內(nèi)部操作都封裝在內(nèi)部,終端用戶不需要區(qū)追究這些復(fù)雜過程的代碼。圖形用戶界面大大提高用戶使用MATLAB程序的易用性。因此,學(xué)習(xí)MATLAB圖形用戶界面編程,即GUI程序的創(chuàng)建,是MATLAB編程用戶應(yīng)該掌握的重要一環(huán)。對于一個MATLAB 中的圖形用戶界面, 它的設(shè)計過程一般可以分為兩個部分: ①用戶界面的外觀設(shè)計。在這里, 主要是通過不同的對話框、按鈕、文本框等許多工具的使用, 設(shè)計出一個圖形用戶界面。同時也應(yīng)搞清楚這個圖形界面的功能是什么, 也即在圖形界面上的操作會引發(fā)什么樣的結(jié)果。②圖形界面的完成。在這里, 用戶將根據(jù)在外觀設(shè)計階段所確定的圖形界面的功能, 針對各個不同的圖形對象來編寫出能夠?qū)崿F(xiàn)該功能的函數(shù)代碼, 確保這個圖形界面能夠完成所預(yù)定的功能。3.1 界面設(shè)計
首先我們新建一個GUI文件,如下圖所示:
圖6 新建GUI文件 選擇Blank GUI(Default)。
進(jìn)入GUI開發(fā)環(huán)境以后添加5個編輯文本框,8個靜態(tài)文本框,和1個下拉菜單。利用菜單編輯器,創(chuàng)建Open、Print、Close三個菜單。創(chuàng)建好GUI界面需要的各交互控件并調(diào)整好大概的位置后,設(shè)置這些控件的屬性。最后的界面效果如下圖示:
圖7 界面效果 3.2 代碼設(shè)計
(1)打開M文件編輯器(M-file Edit),點擊
向下的三角圖標(biāo),可以看到各個對象的回調(diào)函數(shù)(Callback),某些對象的創(chuàng)建函數(shù)或打開函數(shù)等。通過選中相應(yīng)項就可以跳動對應(yīng)函數(shù)位置進(jìn)行程序編輯。
選中’edit_callback’選項,光標(biāo)跳到’ function edit1_Callback(hObject, eventdata, handles)’下面空白處,添加以下代碼: user_entry=str2double(get(hObject,'String'));if isnan(user_entry)errordlg('請輸入數(shù)值!','Bad Input')end 該語句嚴(yán)格限制編輯框內(nèi)必須輸入數(shù)值,否則出現(xiàn)錯誤對話框(如下圖所示)。同理在其他四個編輯框的回調(diào)函數(shù)下輸入相同的代碼。
圖8 錯誤對話框(2)打開M文件編輯器(M-file Edit),點擊
向下的三角圖標(biāo),設(shè)置下拉菜單返回函數(shù),光標(biāo)跳到’ function popupmenu1_Callback(hObject, eventdata, handles)’下面空白處。由于下拉菜單是本界面設(shè)計關(guān)鍵控件,與本設(shè)計相關(guān)的程序都放在這個返回函數(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]*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);end w2=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*L2*cos(th2(i))];w=inv(A)*B;w3(i)=w(1);w4(i)=w(2);end for 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=[w2^2*L2*cos(th2(i))+w3(i)^2*L3*cos(th34(i,1))-w4(i)^2*L4*cos(th34(i,2));...w2^2*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);end val=get(hObject,'Value');str=get(hObject,'String');switch str{val} case '連桿3的幾個位置點' th2=[0:1/6:2]*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);end y=L2*sin(th2)+L3*sin(th34(:,1)');x=L2*cos(th2)+L3*cos(th34(:,1)');xx=[L2*cos(th2)];yy=[L2*sin(th2)];plot([x;xx],[y;yy],'k',[0 L1],[0 0],'k--^',x,y,'ko',xx,yy,'ks')title('連桿3的幾個位置點')xlabel('水平方向')ylabel('垂直方向')axis equal grid on case '角位移線圖' plot(th2*180/pi,th34(:,1)*180/pi,th2*180/pi,th34(:,2)*180/pi)axis([0 360 0 170])grid on xlabel('主動件轉(zhuǎn)角theta_2(度)')ylabel('從動件角位移(度)')title('角位移線圖')text(120,120,'搖桿4角位移')text(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)')grid on xlabel('主動件轉(zhuǎn)角theta_2(度)')ylabel('從動件角速度(radcdot s^{-1})')title('角速度線圖')case '角加速度線圖' plot(th2*180/pi,a3,th2*180/pi,a4);axis([0 360-50000 65000])text(50,50000,'搖桿4角加速度(alpha_4)')text(220,12000,'連桿3角加速度(alpha_3)')grid on xlabel('主動件轉(zhuǎn)角theta_2(度)')ylabel('從動件角加速度(radcdot s^{-2})')title('角加速度線圖')end guidata(hObject,handles)%
其中,guidata(hObject,handles)命令用于更新句柄,當(dāng)輸入不同參數(shù)是,程序能夠做出相應(yīng)的相應(yīng)。
(3)打開M文件編輯器(M-file Edit),點擊 回調(diào)函數(shù)下添加以下代碼: file = uigetfile('*.fig');if ~isequal(file, 0)open(file);end 此菜單用以打開fig文件。其相應(yīng)界面如圖9所示:
向下的三角圖標(biāo),在Open菜單
圖9(4)打開M文件編輯器(M-file Edit),點擊 回調(diào)函數(shù)下添加以下代碼:
向下的三角圖標(biāo),在Print菜單printdlg(handles.figure1)%用于圖形輸出。(5)打開M文件編輯器(M-file Edit),點擊 回調(diào)函數(shù)下添加以下代碼:
向下的三角圖標(biāo),在Close菜單selection = questdlg(['Close ' get(handles.figure1,'Name')'?'],...['Close ' get(handles.figure1,'Name')'...'],'Yes','No','Yes');if strcmp(selection,'No')return;end delete(handles.figure1)此菜單用于關(guān)閉界面,其響應(yīng)界面如圖10所示:
圖10
(6)完成M文件編寫后,運(yùn)行程序進(jìn)行檢驗,單擊 圖標(biāo)或M文件工具欄的
圖標(biāo),在編輯欄輸入個構(gòu)件參數(shù),運(yùn)行結(jié)果如圖11:
圖11 界面運(yùn)行效果圖
分別點擊下拉菜單
小結(jié)
在本次基于MATLAB平面四桿機(jī)構(gòu)機(jī)構(gòu)的運(yùn)動分析課程設(shè)計中,不僅用到了MATLAB的m語言編程,還有GUI圖形用戶界面設(shè)計。對于課程的設(shè)計來說,m語言本身來說,功能相當(dāng)強(qiáng)大,但是由于其復(fù)雜的編程方法,讓大多數(shù)初學(xué)者望而卻步;而GUI圖形界面則正好彌補(bǔ)了它的不足,它采用的是所見即所得的編程方式,用它來做軟件的界面就如圖制作網(wǎng)頁一樣簡單明了,用它制作出來的軟件不需要太多的編程知識都可以輕松搞定;在此次課程設(shè)計中,本人盡量揚(yáng)長避短,把這些工具的優(yōu)點結(jié)合到一起,發(fā)揮其最大的作用。通過此次課程設(shè)計,不僅使我們對使我們對四桿機(jī)構(gòu)有了進(jìn)一步認(rèn)識,并且使我們認(rèn)識到計算機(jī)技術(shù)對工程應(yīng)用的重要性。本此設(shè)計凝結(jié)了團(tuán)隊合作的結(jié)晶,是我們利用三周的時間努力學(xué)
下各選項,則在繪圖區(qū)域分別顯示圖2~圖5。習(xí)、設(shè)計的成果,同時,在設(shè)計過成中得到了鄭XX老師的悉心指導(dǎo),在此表示衷心的感謝!
參考文獻(xiàn)
[1] 孫桓,陳作模.機(jī)械原理[M].7版.北京:高等教育出版社,2006.[2] 符煒.機(jī)構(gòu)設(shè)計學(xué).[M].1版.長沙:中南工業(yè)大學(xué)出版社,1995.[3] MATLAB原理與工程應(yīng)用[M].1版.北京:電子工業(yè)出版社,2002.[4] http:///pro-t2-p137-dzd.html?dk=80288644
首先創(chuàng)建函數(shù)FoutBarPosition,函數(shù)fsolve通過他確定。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ī)構(gòu)的運(yùn)動分析 * * * * * *' L1=304.8;L2=101.6;L3=254.0;L4=177.8;th2=[0:1/6:2]*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);
end y=L2*sin(th2)+L3*sin(th34(:,1)');
x=L2*cos(th2)+L3*cos(th34(:,1)');
xx=[L2*cos(th2)];
yy=[L2*sin(th2)];
figure(1)plot([x;xx],[y;yy],'k',[0 L1],[0 0], 'k--^',x,y,'ko',xx,yy,'ks')title('連桿3的幾個位置點')xlabel('水平方向')ylabel('垂直方向')axis equal th2=[0:2/72:2]*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);end figure(2)plot(th2*180/pi,th34(:,1),th2*180/pi,th34(:,2))
plot(th2*180/pi,th34(:,1)*180/pi, th2*180/pi,th34(:,2)*180/pi)axis([0 360 0 170])grid xlabel('主動件轉(zhuǎn)角theta_2(度)')ylabel('從動件角位移(度)')title('角位移線圖')text(120,120,'搖桿4角位移')text(150,40,'連桿3角位移')w2=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*L2*cos(th2(i))];w=inv(A)*B;w3(i)=w(1);w4(i)=w(2);end figure(3)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)')grid xlabel('主動件轉(zhuǎn)角theta_2(度)')ylabel('從動件角速度(radcdot s^{-1})')title('角速度線圖')for 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=[w2^2*L2*cos(th2(i))+w3(i)^2*L3*cos(th34(i,1))-w4(i)^2*L4*cos(th34(i,2));w2^2*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);end figure(4)plot(th2*180/pi,a3,th2*180/pi,a4);axis([0 360-70000 65000])text(50,50000,'搖桿4角加速度(alpha_4)')text(220,12000,'連桿3角加速度(alpha_3)')grid xlabel('從動件角加速度')ylabel('從動件角加速度(radcdot s^{-2})')title('角加速度線圖')disp '曲柄轉(zhuǎn)角連桿轉(zhuǎn)角-搖桿轉(zhuǎn)角-連桿角速度-搖桿角速度-連桿加速度-搖桿加速度' ydcs=[th2'*180/pi,th34(:,1)*180/pi,th34(:,2)*180/pi,w3',w4',a3',a4'];disp(ydcs)
第四篇:2021基于MATLAB Simulink的平面四連桿機(jī)構(gòu)仿真
基于MATLAB
Simulink的平面四連桿機(jī)構(gòu)仿真
基于MATLAB/Simulink的平面四連桿機(jī)構(gòu)仿真
一、題目及自由度分析
如圖1所示,該平面四桿機(jī)構(gòu)中有三根運(yùn)動的均質(zhì)鋼桿,其中有兩根鋼桿的一端與接地點連接,第三根桿就與這兩根桿剩下的端點連接起來,兩個接地點就可認(rèn)為是第四桿,機(jī)構(gòu)中相關(guān)尺寸如圖2所示。
計算結(jié)構(gòu)自由度,三個運(yùn)動桿被限制到平面內(nèi)運(yùn)動,因此每個桿都有兩個移動和一個轉(zhuǎn)動,即在考慮約束之前,自由度為:
3×(2+1)=9
但是由于每個桿都受到約束,所以并不是每個自由度都是獨立的。在二維狀態(tài)下,剛體間的連接或者剛體與接地點的連接就會增加兩個約束。這樣就會使得剛體其中一端不能夠作為獨立的自由運(yùn)動點,而是要受到鄰近剛體的約束。該題中有四個剛體--剛體或剛體—接地點的連接,這就隱含8個約束。
那么最后的自由度為9-8=1.雖然有四個轉(zhuǎn)動自由度,但是,其中三個都是非獨立的,只要確定其中一個,就可確定其余三個。
二、模型建立及參數(shù)設(shè)置
1應(yīng)用MATLAB/Simulink建立初始模型
2在初始模型的基礎(chǔ)上添加Joint
Sensor模塊
3依題意設(shè)置相關(guān)參數(shù)
⑴配置Ground模塊
由圖2可得系統(tǒng)的基本尺寸為:
①固定構(gòu)件長86.7厘米
②Ground_1表示接地點,在World
CS坐標(biāo)軸原點右邊43.3cm處
③Ground_2表示接地點,在World
CS坐標(biāo)軸原點左邊43.4cm處
④最下端的鉸處于X-Z平面內(nèi)原點以上4cm
圖5Ground_1模塊參數(shù)設(shè)置圖6Ground_2模塊參數(shù)設(shè)置
4配置Joint模塊
三個沒有接地的聯(lián)桿都是在X-Y平面內(nèi)的,所以Revolute軸必須是Z軸。
⑴依次打開Revolute參數(shù)對話框,保持默認(rèn)值,即Axis
of
rotation[x
y
z]默認(rèn)設(shè)置為[001],Reference
csys都是WORLD。
圖7Revolute坐標(biāo)設(shè)置
⑵根據(jù)連接情況依次設(shè)置Revolute參數(shù)對話框中的Connection
parameters參數(shù)
圖8Revolute模塊參數(shù)對話框Connection
parameters參數(shù)
圖9Revolute模塊參數(shù)對話框Connection
parameters參數(shù)
圖10Revolute模塊參數(shù)對話框Connection
parameters參數(shù)
圖11Revolute模塊參數(shù)對話框Connection
parameters參數(shù)5配置Body模塊
本題中Body模塊(即Bar)定位方式不是直接相對于WORLD坐標(biāo)系統(tǒng),而是采用相對坐標(biāo)形式,Bar1的CS1相對于Ground_1,Bar2的CS1相對于Bar1,以此類推。
以下為每個Body模塊的詳細(xì)參數(shù)設(shè)置,其中包括質(zhì)量(Mass)、慣性矩(Inertia)、重心坐標(biāo)原點、CS1坐標(biāo)原點、CS2坐標(biāo)原點和重心的方向。
圖12Bar1的模塊參數(shù)設(shè)置
圖13Bar2的模塊參數(shù)設(shè)置
圖14Bar3的模塊參數(shù)設(shè)置三、檢測運(yùn)動,運(yùn)行模型
圖15仿真結(jié)果動畫顯示
圖16Revolute2和Revolute3的轉(zhuǎn)角時程曲線
三、小結(jié)
目前較為主流的動力學(xué)仿真軟件是Adams,但鑒于本人對該軟件接觸較少,且MATLAB也具有該功能,故本題采用Simulink中的SimMechanics工具箱對平面四桿機(jī)構(gòu)進(jìn)行建模仿真,并利用其可視化窗口進(jìn)行系統(tǒng)運(yùn)動可視化。
通過仿真結(jié)果可以看到,使用已有的計算機(jī)仿真軟件包Matlab/Simulink來建立機(jī)構(gòu)的仿真模型,仿真求解機(jī)構(gòu)力學(xué)和運(yùn)動參數(shù),可以把用戶從復(fù)雜煩瑣的數(shù)學(xué)計算中解放出來,提高了求解速度,保證了求解精度。
第五篇:平面連桿機(jī)構(gòu)教學(xué)設(shè)計
平面連桿機(jī)構(gòu)教學(xué)設(shè)計
趙縣職教中心
翟偉波
[教材分析]平面連桿機(jī)構(gòu)能以簡單的結(jié)構(gòu)實現(xiàn)復(fù)雜的運(yùn)動規(guī)律,而且更以其獨特可靠的低副聯(lián)接形式,倍受廣大機(jī)械設(shè)計人員的矚目。其在工業(yè)、農(nóng)業(yè)、冶金、化工、紡織、食品等機(jī)械中的應(yīng)用實例不勝枚舉。如此重要的教學(xué)內(nèi)容,只有探尋一種形式新穎、方法獨特的教學(xué)方法,才能收到良好的教學(xué)效果。
[教學(xué)對象分析]
機(jī)械制造專業(yè)的學(xué)生,普遍存在機(jī)械常識匱乏與對現(xiàn)實機(jī)械現(xiàn)象的有視無睹,該現(xiàn)象嚴(yán)重阻礙了專業(yè)課教學(xué)的進(jìn)程和效果。教師在教學(xué)過程中,應(yīng)充分考慮學(xué)生的現(xiàn)實情況,采取有效措施,讓學(xué)生建立機(jī)械意識,以思維理念的變化架起理論與實踐相結(jié)合的橋梁。
[對教師的要求]
教師在熟練掌握教材的基礎(chǔ)上,善于運(yùn)用生活中饒有興趣的機(jī)械現(xiàn)象導(dǎo)入新課,巧妙地制造懸念,激發(fā)學(xué)生學(xué)習(xí)新知識的強(qiáng)烈愿望。教師要發(fā)揮主導(dǎo)作用,精心設(shè)計教學(xué)過程,為學(xué)生創(chuàng)造一個學(xué)習(xí)、發(fā)現(xiàn)、探索、創(chuàng)造的情境。教師要正確引導(dǎo)學(xué)生思維,讓學(xué)生積極主動地做到理論與實踐相結(jié)合。
一、教學(xué)目標(biāo):
知道:鉸鏈四桿機(jī)構(gòu)的組成。掌握:鉸鏈四桿機(jī)構(gòu)曲柄存在的條件。熟悉:鉸鏈四桿機(jī)構(gòu)三種基本形式的形成條件。
二、教學(xué)重點、難點: 鉸鏈四桿機(jī)構(gòu)曲柄存在的條件。鉸鏈四桿機(jī)構(gòu)三種基本形式的形成條件。
三、教學(xué)方法: 誘趣探求,思維探索。
四、教具:
投影儀和屏幕、軟質(zhì)細(xì)桿:6cm(1根)、10cm(1根)、15cm(1根)、18cm(1根)、50cm(8根)、大頭針(若干枚)、小刀(8把)
五、教學(xué)過程:
(一)提出問題、引發(fā)思維、誘趣探求 導(dǎo)入語:同學(xué)們都觀看過現(xiàn)場直播的電視節(jié)目,在這樣的節(jié)目當(dāng)中,攝影師最不想讓觀眾看到的圖像是什么?(稍頓)
學(xué)生回答:
1、質(zhì)量不好的畫面。
2、燈光不好、有陰影的畫面。
3、表演出現(xiàn) 錯誤的畫面。
(一一否定、加強(qiáng)懸念,誘發(fā)求知欲)是電視畫面中出現(xiàn)攝影架的鏡頭。攝影師要想把多角度、多層次的電視畫面呈現(xiàn)在觀眾面前,這要歸功于攝影機(jī)的驅(qū)動架。究竟驅(qū)動架采用了什么樣的結(jié)構(gòu)設(shè)計,能夠讓攝影師隨心所欲,運(yùn)動自如,訣竅就在四根小小的桿件上,下面我們來做一個模擬設(shè)計。
(二)示范操作,發(fā)展思維
[策略分析] 對于鉸鏈四桿機(jī)構(gòu)曲柄存在條件這一重要知識點的學(xué)習(xí),傳統(tǒng)的教學(xué)方法是根據(jù)三角形二邊之和大于第三邊的理論進(jìn)行不等式的數(shù)學(xué)推導(dǎo),其過程繁瑣而刻板,效果欠佳。如果利用教具演示與思維點撥相結(jié)合的教學(xué)方法,學(xué)生會在寬松的課堂氣氛中獲得非常直觀的感性知識,既突破難點,又發(fā)展了學(xué)生思維。
取出四根桿件(6cm,10cm,15cm,18cm),用大頭針組成平面連桿機(jī)構(gòu)。分別以四根桿件為機(jī)架,演示并引導(dǎo)學(xué)生觀察兩個連架桿的運(yùn)動情況.平面連桿機(jī)構(gòu)定義,類型(板書)測量四根桿件的長度并讓學(xué)生做記錄,計算最短桿與最長桿長度之和與其余兩桿長度之和的關(guān)系.引導(dǎo)學(xué)生探求曲柄存在條件 曲柄存在條件(板書).出示投影:鉸鏈四桿機(jī)構(gòu)三種基本形式:曲柄搖桿機(jī)構(gòu),雙曲柄機(jī)構(gòu),雙搖桿機(jī)構(gòu)的形成條件.(三)動手設(shè)計
深化思維
[策略分析] 該程序是“思維探索型”教學(xué)方法的中心環(huán)節(jié),學(xué)生感性認(rèn)識形成以后,要分組進(jìn)行設(shè)計。在設(shè)計過程中,充分發(fā)揮其主觀能動性,邊設(shè)計,邊思考,既鞏固了理論知識,又提高了動手能力,從而實現(xiàn)感性知識上升為理性知識,達(dá)到理論與實踐有效結(jié)合。分組:32人,4人/組,共8組,由動手能力強(qiáng)的學(xué)生擔(dān)任組長,發(fā)揮骨干作用。組長領(lǐng)取設(shè)計材料:軟質(zhì)細(xì)桿1根,大頭針若干,小刀一把。分配設(shè)計任務(wù)。
(1,2)組
曲柄搖桿機(jī)構(gòu)(3,4)組
雙曲柄機(jī)構(gòu)(5,6)組
雙搖桿機(jī)構(gòu) 最長桿+最短桿≤其余兩桿長度之和。以最短桿的相對桿為機(jī)架。
(7,8)組
雙搖桿機(jī)構(gòu):最長桿+最短桿〉其余兩桿長度之和。巡回指導(dǎo),及時解答學(xué)生疑問并糾正設(shè)計過程中的錯誤操作。每組選派一人,表述設(shè)計思路,展示設(shè)計成果。
(四)探索創(chuàng)新,升華思維
[策略分析]通過展示設(shè)計成果,學(xué)生心中普遍產(chǎn)生一種成就感,自然的心理傾向是學(xué)有所用,此時教師要善于捕捉學(xué)生心理,適時提問:究竟誰的設(shè)計成果能應(yīng)用在攝影機(jī)的驅(qū)動機(jī)構(gòu)上?課堂氣氛再度活躍,既升華學(xué)生思維,又能達(dá)到首尾呼應(yīng),探索創(chuàng)新的目的。提問:究竟誰的設(shè)計成果能應(yīng)用在攝影機(jī)的驅(qū)動機(jī)構(gòu)上?
引導(dǎo)學(xué)生進(jìn)行小組討論??偨Y(jié)發(fā)言:指出應(yīng)為雙搖桿機(jī)構(gòu)。課堂小結(jié):網(wǎng)絡(luò)知識體系。
教學(xué)反饋:自由研讀教材當(dāng)中列舉的應(yīng)用實例。布置作業(yè):P118:3、4、5、6、7、8
附:板書設(shè)計:平面連桿機(jī)構(gòu)
一、平面連桿機(jī)構(gòu)
3、基本類型 1、定義、特點
(1)曲柄搖桿機(jī)構(gòu) 2、類型
條件:
二、鉸鏈四桿機(jī)構(gòu):
(2)雙曲柄機(jī)構(gòu) 1、組成 條件: 2、曲柄存在條件
(3)雙搖桿機(jī)構(gòu)(1)
條件:(2)