平面四桿機(jī)構(gòu)Matlab仿真及優(yōu)化設(shè)計帶開題報告.zip,平面,機(jī)構(gòu),Matlab,仿真,優(yōu)化,設(shè)計,開題,報告
附錄 1:外文翻譯
2015年第三屆國際最新計算趨勢會議(ICRTC-2015)
動平衡四桿機(jī)構(gòu)的形狀優(yōu)化
機(jī)械工程系 馬拉維亞國家技術(shù)研究所 齋浦爾 302017,印度
摘 要
本文提出了一種求解動態(tài)平衡平面四桿機(jī)構(gòu)的連桿形狀的優(yōu)化方法。通過優(yōu)化各連桿的質(zhì)量分布, 最大限度地減少了在慣性作用下產(chǎn)生的振動力和振動力矩。然后用三次B 樣條曲線得出連桿形狀, 并提出優(yōu)化方案,將連桿中產(chǎn)生的慣性量百分比誤差降到最低, 將 B 樣條曲線的控制點作為設(shè)計變量。通過將該方法應(yīng)用到文獻(xiàn)中的一個數(shù)值問題中, 證明了該算法的有效性。
關(guān)鍵詞:動平衡; 等效系統(tǒng); 四桿機(jī)構(gòu); 遺傳算法; 形狀優(yōu)化
1 介紹
四桿機(jī)構(gòu)是機(jī)器最常使用的機(jī)構(gòu)。當(dāng)機(jī)器高速運行時,這些機(jī)構(gòu)將力和力矩傳遞到地面,這些所有機(jī)構(gòu)運動環(huán)節(jié)的慣性力及力矩的矢量和,被定義為振動力和振動力矩。由于這些力和力矩產(chǎn)生的振動、磨損和噪聲, 使機(jī)構(gòu)的動態(tài)性能受到不利影響, 文獻(xiàn)[1-3] 中提出了幾種減少它們的方法,通過質(zhì)量再分配[4]或增加配重[5]使移動連桿的質(zhì)心保持不變,從而實現(xiàn)機(jī)構(gòu)的完全力平衡。
力的完全平衡增加了連桿各桿的振動力矩,驅(qū)動力矩和承受力[6]。使用慣性或磁盤配重[7]和復(fù)制結(jié)構(gòu)[8]的方式,振動時刻會隨著力的完全平衡而減少。然而,這些方法并不是首選,因為它們增加了機(jī)構(gòu)的復(fù)雜性和質(zhì)量。通過優(yōu)化[9-11],研究出了一些其他方法來最小化振動力和振動力矩。該方法根據(jù)連桿的質(zhì)量和相應(yīng)的轉(zhuǎn)動慣量,找到連桿質(zhì)量的最佳分配方案,以減少振動力和振動力矩。將機(jī)構(gòu)平衡問題表示為多目標(biāo)優(yōu)化問題,并考慮適當(dāng)?shù)脑O(shè)計約束[12-13],采用粒子群優(yōu)化(PSO)和遺傳算法(GA)等技術(shù)來進(jìn)行優(yōu)化。
解決找到與平衡機(jī)構(gòu)相對應(yīng)的最佳連桿形狀的方案很少。采用小單元疊加法, 將連桿形狀考慮為幾個小矩形元素的集合[14]。連桿形狀的優(yōu)化問題是利用給定外力所產(chǎn)生 的外部變化來制定目標(biāo)函數(shù)的,并將所有連桿的最大容量和最大體積作為約束函數(shù)[15]。采用三次貝塞爾曲線[16]的拓?fù)鋬?yōu)化方法生成相應(yīng)機(jī)構(gòu)的形狀。但是, 在這些方法中不
考慮機(jī)構(gòu)的動態(tài)平衡,此外,這些方法還需要初始形狀或設(shè)計域才能開始運算。
本文提出的平面四桿機(jī)構(gòu)平衡的優(yōu)化問題公式,機(jī)構(gòu)的剛性連接被表示為動態(tài)等價的點質(zhì)量系統(tǒng), 稱為等效系統(tǒng) [11、17]。該問題作為一種多目標(biāo)優(yōu)化問題,利用遺傳算法求解,目的就是將振動力和振動化力矩最小化。對于平衡機(jī)構(gòu)所產(chǎn)生的最小慣性慣量, 為了保持其與平衡機(jī)構(gòu)相同,連桿形狀的慣性特性被看作是約束,利用三次 B 樣條曲線描述出機(jī)構(gòu)連桿的形狀。將通過 B 樣條曲線的控制點作為設(shè)計變量, 把得到連桿慣性值的百分比誤差的最小化作為目標(biāo)函數(shù)。
本文的結(jié)構(gòu)如下。第2節(jié)給出了機(jī)構(gòu)的振動力和振動力矩的定義。連桿形狀的形成過程在第3節(jié)中給出。動態(tài)平衡和形狀形成的優(yōu)化問題在第4節(jié)中闡述。在第5節(jié)中,使用所提出的方法來解決數(shù)值實例。最后,在第6節(jié)給出結(jié)論。
2 振動力和振動的時刻
1 0 03
圖1 表示了一個平面四桿機(jī)構(gòu),其中固定連桿與運動連桿分離, 為了表明反作用力。振動力被定義為所有慣性力矢量和的反作用力,而振動力矩則是慣性力矩與作用在慣性力矩固定點的所有力矩的反作用力。一旦確定了所有的連接處的反作用力,就可以得到連接點 1 振動力和連接點 1 處的振動力矩[11]:
fsh
= -( f
01 + f03
) 和 nsh
= -(ne + a f )
(1)
在等式(1)中,f01和f03分別是作用在連桿上的反作用力#1和#3。在關(guān)節(jié)#1施加的主動轉(zhuǎn)矩由en1表示,而a0表示從O1到O4的矢量。
圖1 四桿機(jī)構(gòu)從框架分離
3 鏈接形狀的形成
使用參數(shù)閉合三次B樣條曲線來合成連桿形狀,在曲線內(nèi)插入或近似一組n + 1個控制點, P0,P1,...,Pn [18],并在方程(2)中:
n
P(u) = ? Pi Ni,k (u), 0 £ u £ umax
i=0
(2)
在等式(2)中,參數(shù)k,Ni,k(u)和u分別定義為曲線的程度,B樣條混合函數(shù)和參數(shù)集。 曲線第i段任意一點的坐標(biāo)為:
x (u) = a1xi-1 + a2 xi + a3 xi+1 + a4 xi+2
(3)
i 6
y (u) = a1 yi-1 + a2 yi + a3 yi+1 + a4 yi+2
(4)
i 6
當(dāng):
1
a = -u3 + 3u2i - 3ui2 + i3
2
a = 3u3 + u2 (3 - 9i) + u(-3 + 9i2 - 6i) - 3i3 + 3i2 + 3i +1
3
a = -3u3 + u2 (-6 + 9i) + u(-9i2 +12i) + 3i3 - 6i2 + 4
4
a = u3 + u2 (3 - 3i) + u(3 + 3i2 - 6i) - i3 + 3i2 - 3i + 4
(3)
(4)
(5)
(6)
在方程(3-4)中,(xi-1,yi-1),(xi,yi)等分別是點Pi-1,Pi等的坐標(biāo)。利用格林定理計算了用閉合的三次B樣條曲線合成的形狀的慣性特性[19],由n個三次B 樣條曲線片段組成閉合曲線,關(guān)于質(zhì)心軸(Ixx,Iyy,Izz)的面積A,質(zhì)心(x,y)和區(qū)域轉(zhuǎn)動慣量,計算如下:
n ui
A = ?òu
xi (u) yi '(u)du
(7)
i=1
i-1
x = - 1 ?n
ui y 2 (u)x '(u)du; y = 1 n
ò
i i
?
u
i x 2 (u) y '(u)du
ò
i i
u
u
(10-11)
2Ai
i=1
i-1
2Ai
i=1
i-1
1 n ui 3 1 n ui 3
Ixx = -
?òu
yi (u)xi '(u)du; I yy =
?òu
xi (u) yi '(u)du; Izz = Ixx + I yy
(12-14)
3 i=1 i-1
3 i=1 i-1
xi '(u) 和 yi '(u) 是w、r、t的一階導(dǎo)數(shù),分別在方程(9-13),由下式給出:
x '(u) = b1xi-1 + b2 xi + b3 xi+1 + b4 xi+2
(15)
i 6
y '(u) = b1 yi-1 + b2 yi + b3 yi+1 + b4 yi+2
(16)
i 6
當(dāng):
1
b = -3u2 + 6ui - 3i2
(17)
2
b = 9u2 + 2u(3 - 9i) - 3 + 9i2 - 6i
3
b = -9u2 + 2u(-6 + 9i) - 9i2 +12i
4
b = 3u2 + 2u(3 - 3i) + 3 + 3i2 - 6i
(18)
(19)
(20)
對于等式(9-14)中所定義的幾何特性,閉合曲線形狀所表示的連桿質(zhì)量和轉(zhuǎn)動慣量計算如下:
m = Atp
I = Izztp
其中t和ρ分別表示連桿的厚度和材料密度。
4 優(yōu)化問題的制定
4.1 動態(tài)平衡
(21)
(22)
為了平面四桿機(jī)構(gòu)的動態(tài)平衡,使用等質(zhì)點質(zhì)量系統(tǒng)的概念,制定了優(yōu)化方案以最小化振動力和振動力矩。這些連桿被系統(tǒng)地轉(zhuǎn)換成三個等質(zhì)量的點質(zhì)量系統(tǒng),并將點質(zhì)量參數(shù)作為設(shè)計變量。點質(zhì)量由三個參數(shù)確定,因此每個連桿的設(shè)計變量的9矢量xi被定義為:
i i1
i1
i1
x = é?m l q
m l q
m l q
ù?T
i=1,2,3 (23)
i 2
i 2
i 2
i3
i3
i3
其中mij是第i個連桿的第j個點質(zhì)量,lij和θij是它在形狀范圍內(nèi)固定支架的極坐標(biāo)。因此,該機(jī)構(gòu)的設(shè)計矢量x由下式給出:
x = é?xT
xT xT ù?T
(24)
1 2 3
考慮到振動力的大小,fsh,rms和振動力矩的RMS值,nsh,rms,定義在方程(1), 優(yōu)化方案規(guī)定為力和力矩的加權(quán)和:
最小化Z = w1 fsh,rms + w2nsh,rms
(25)
i,min
ij i,max
i,min
ij ij
滿足m £ ?m £ m ; I £ ?m l 2 i=1,2,3 j=1,2,3 (26)
j j
其中w1和w2分別是用于分配重力給振動力和振動力矩的加權(quán)因子。
4.2 機(jī)構(gòu)連桿的形狀優(yōu)化
在得到優(yōu)化機(jī)構(gòu)連桿的慣性參數(shù)之后,就會制定一個優(yōu)化方案來找到本節(jié)中所描述的連桿形狀。將三次B樣條曲線控制點的笛卡爾坐標(biāo)作為設(shè)計變量,如圖2所示。連接起點Oi至Oi + 1之間的連接長度被分成相等部分。為保持對稱形狀使得慣性積零,以y坐標(biāo)點為設(shè)計變量。連桿延伸以外的坐標(biāo)原點Oi和Oi + 1由右端的P0,P1,Pn-1和左端的Pn/2-1,Pn/2,Pn/2 + 1控制。在右端,P0的x坐標(biāo),P1和Pn-1的y坐標(biāo)被選擇作為設(shè)計變量,并且在左端進(jìn)行相同的處理。最后,在本文中,設(shè)計向量被定義為:
yn/2-1 xn/2 yn/2+1 yn-1 ù?
T
x = é?x0 y1
目標(biāo)函數(shù)的制定是為了最小化連桿慣量值中的百分比誤差,如下所示:
(I * - I )
(27)
I
o
最小化 Z = i i *100
i
(28)
滿足m = m*; x = *
= y*
i=1,2,3 (29)
i i i
xi ; yi i
這里帶有上標(biāo)'*'的參數(shù)表示上一節(jié)(4.1)中獲得的最優(yōu)參數(shù),下標(biāo)'i'用于機(jī)構(gòu)的第i個連接。
5.數(shù)值例子
圖1所示的平面四桿機(jī)構(gòu)[12]的數(shù)值問題是使用本節(jié)提出的方法解決的(表1)。 由于振動力和振動力矩具有不同的單位,因此這些量需要無量綱化以將它們添加到單個目標(biāo)函數(shù)中。為此, 對傳動鏈的參數(shù)進(jìn)行了無量綱化, 即連桿 #1。為了減少問題的維度, 在九個變量中,mij,lij,θij,對于j=1,2,3,對于如圖3中定義的第i個連接點, 選擇五個參數(shù)為:
qi1 = 0;qi 2 = 2p / 3;qi3 = 4p / 3和li 2 = li3 = li1
其他四個點質(zhì)量參數(shù),即mi1,mi2,mi3,li1被引入優(yōu)化方案??紤]到
(30)
mi,min=0.25mi,mi,max=5mi,Ii,min=0.25Ii,對于第i個鏈路,使用MATLAB的遺傳算法和直接搜索工具箱中的“ga”函數(shù)求解方程(25)-(26)中解釋的優(yōu)化問題。上標(biāo)“o”代表原始機(jī)構(gòu)的參數(shù)。表2和圖4給出了原始值與振動力和振動力矩的最佳值的比較。遺傳算法的應(yīng)用讓振動力的值和振動力矩的值分別減少了約50%和68%,平衡機(jī)構(gòu)的相應(yīng)最佳參數(shù)如表1所示。
圖2 封閉的三次B樣條曲線代表連桿形狀及其控制點
表1 平面四桿機(jī)構(gòu)的參數(shù)
圖3(a)剛性連接 圖3(b)點質(zhì)量
圖3 將剛性連接轉(zhuǎn)換為點質(zhì)量的等效系統(tǒng)表2 標(biāo)準(zhǔn)和優(yōu)化機(jī)制的動態(tài)量的RMS值
圖4 完整周期的振動力和振動力矩的變化
接下來,形式優(yōu)化問題在公式(28)-(29)用遺傳算法和MATLAB的直接搜索工具箱中的“ga”函數(shù)求解。 三次B樣條曲線的最終連接形狀如圖5所示:
——————初始機(jī)構(gòu)
優(yōu)化的機(jī)構(gòu)
圖5 對應(yīng)于平衡機(jī)構(gòu)的初始和優(yōu)化鏈路形狀
文中所提出的方法不需要任何預(yù)定義的形狀或設(shè)計域作為初始條件。最終慣性值的百分比誤差在±5%之內(nèi)。平衡機(jī)構(gòu)的連桿所產(chǎn)生的應(yīng)力可以在外部載荷下最薄弱的部位進(jìn)行計算。
6 結(jié)論
本文提出了一種平面四桿機(jī)構(gòu)動平衡和形狀形成的優(yōu)化方法。對于動態(tài)平衡,機(jī)構(gòu)的剛性環(huán)節(jié)可由點質(zhì)量等效系統(tǒng)的表示。以點質(zhì)量參數(shù)為設(shè)計變量, 優(yōu)化了連桿質(zhì)量分布, 最大限度地減少了振動力和震動力矩。利用遺傳算法作為求解器, 實現(xiàn)了振動力和震動力矩分別減少了50%和68%。然后將平衡機(jī)構(gòu)的連桿形狀建模為立方B樣條曲線。對B 樣條曲線的邊界進(jìn)行優(yōu)化, 使連桿質(zhì)量和慣性達(dá)到優(yōu)化值。為此,控制點充當(dāng)設(shè)計變量, 約束條件被定義為保持生成的連桿參數(shù)與平衡機(jī)構(gòu)參數(shù)相同。本文提出的方法很簡單, 也可以應(yīng)用于多環(huán)平面和空間機(jī)構(gòu)。
附錄 2:外文原文
一、選題依據(jù)
1.論文(設(shè)計)題目
平面四桿機(jī)構(gòu) Matlab 仿真及優(yōu)化設(shè)計
2.研究領(lǐng)域
Matlab 仿真
3.論文(設(shè)計)工作的理論意義和應(yīng)用價值
計算機(jī)仿真是在研究系統(tǒng)過程中根據(jù)相似原理,利用計算機(jī)來逼真模擬研究對象。運動學(xué)仿真是指利用計算機(jī)仿真軟件包求解機(jī)構(gòu)在所記時間域內(nèi)的運動學(xué)方程, 以此確定機(jī)構(gòu)在連續(xù)運動過程中各個構(gòu)件的速度和加速度。而 Matlab 軟件具有系統(tǒng)建模方便直觀、仿真功能強(qiáng)大等特點,能為機(jī)械系統(tǒng)的建模仿真提供一個強(qiáng)大而方便的工具。使用 Matlab 軟件的 Simulink 仿真工具用于機(jī)械工程中機(jī)構(gòu)的運動學(xué)仿真, 簡單,直觀,只需通過 M 文件編寫運動學(xué)方程,設(shè)定特殊時刻為初始值就可以得到任意時刻的位置、速度、加速度的值,并可以觀察它們在運動周期內(nèi)的變化。通過基于 Matlab 的強(qiáng)大的矩陣運算能力,還可以方便得到三者之間的關(guān)系,這是一般解析方法所不及的。
本設(shè)計以 Matlab 軟件的 Simulink 軟件包為研究平臺,以連桿機(jī)構(gòu)為研究對象, 通過建立閉環(huán)矢量方程,以牛頓力學(xué)為基礎(chǔ)列出動力學(xué)方程,通過已知的幾何特性, 利用 Matlab 軟件數(shù)值計算能力和 Simulink 仿真模塊來實現(xiàn)系統(tǒng)的建模仿真。通過對機(jī)構(gòu)中各構(gòu)件進(jìn)行受力分析,得到動力學(xué)的數(shù)學(xué)模型,再加上機(jī)構(gòu)運動的運動參數(shù), 建立動力學(xué)仿真模型,得到機(jī)構(gòu)運動的反力和力矩,避免了復(fù)雜的數(shù)學(xué)解析運算,并保證了計算精度。通過已知的幾何特性,利用 Matlab 軟件數(shù)值計算能力和 Simulink 仿真模塊來實現(xiàn)系統(tǒng)的建模仿真。
4.目前研究的概況和發(fā)展趨勢
連桿機(jī)構(gòu)是一種常用的傳動機(jī)構(gòu),是機(jī)械傳動中必不可少的部件,廣泛應(yīng)用于懸掛系統(tǒng)、工程機(jī)械工作裝置等各種機(jī)械裝置中。但是,在連桿機(jī)構(gòu)的設(shè)計過程中需要大量的數(shù)據(jù)計算,僅靠人工計算非常繁瑣而且容易出錯,并且難以達(dá)到所要求的設(shè)計精度,同時在設(shè)計過程中無法完成讀設(shè)計機(jī)構(gòu)的性能分析和動態(tài)模擬仿真。就目前情況而言,Matlab 已經(jīng)不再是“矩陣實驗室”,而成為國際上最流行的科學(xué)與工程計算的軟件工具,以及一種具有廣泛應(yīng)用前景的全新的計算機(jī)高級編程語言,它在國內(nèi)外高校和科研部門正扮演著越來越重要的角色,功能也越來越強(qiáng)大,不斷適應(yīng)新的要求提出新的解決辦法??梢灶A(yù)見,在科學(xué)運算和科學(xué)繪圖領(lǐng)域,Matlab 語言將長期保持其獨一無二的地位,使用 Matlab 可以很好地對機(jī)械系統(tǒng)進(jìn)行分析,為連桿機(jī)構(gòu)的建模仿真提供一個強(qiáng)大而方便的工具。
二、論文(設(shè)計)研究的內(nèi)容
1.重點解決的問題
以 Matlab 軟件的 Simulink 軟件包為研究平臺,以連桿機(jī)構(gòu)為研究對象,通過建立閉環(huán)矢量方程,以牛頓力學(xué)為基礎(chǔ)列出動力學(xué)方程,通過已知的幾何特性,利用
Matlab 軟件數(shù)值計算能力和 Simulink 仿真模塊來實現(xiàn)系統(tǒng)的建模仿真。通過對機(jī)構(gòu)中各構(gòu)件進(jìn)行受力分析,得到動力學(xué)的數(shù)學(xué)模型,再加上機(jī)構(gòu)運動的運動參數(shù),建立動力學(xué)仿真模型,得到機(jī)構(gòu)運動的反力和力矩。通過已知的幾何特性,利用 Matlab 軟件數(shù)值計算能力和 Simulink 仿真模塊來實現(xiàn)系統(tǒng)的建模仿真。
2.擬開展研究的幾個主要方面(論文寫作大綱或設(shè)計思路)
(1)連桿機(jī)構(gòu)的運動學(xué)分析:建立機(jī)構(gòu)的閉環(huán)矢量方程;
(2)改寫為矩陣形式:通過推導(dǎo),將各矢量方程聯(lián)立,在坐標(biāo)系中建立相應(yīng)的矩陣數(shù)學(xué)模型;
(3)編寫M函數(shù)文件求解方程:將編寫的M函數(shù)文件嵌入到Simulink模型中,得到仿真模型;
(4)連桿機(jī)構(gòu)的Matlab仿真運算:將參數(shù)代入程序后,計算得到機(jī)構(gòu)運動參數(shù), 得出仿真結(jié)果。
3.本論文(設(shè)計)預(yù)期取得的成果
課題基于 Matlab 為研究平臺,以連桿機(jī)構(gòu)為研究對象,進(jìn)行機(jī)械傳動機(jī)構(gòu)的運動學(xué)性能分析,建立運動學(xué)數(shù)學(xué)模型,選擇適當(dāng)?shù)挠嬎惴椒?,編制相?yīng)的程序,求解運動學(xué)方程,以圖形的形式顯示出該機(jī)構(gòu)在真實系統(tǒng)條件下的運動學(xué)特性,具體體現(xiàn)在以下幾點:
(1)連桿機(jī)構(gòu)的閉環(huán)矢量方程;
(2)M 文件;
(3)Simulink 仿真模型;
(4)連桿機(jī)構(gòu)運動學(xué) Matlab 仿真曲線圖;
(5)設(shè)計說明書。
三、論文(設(shè)計)工作安排
1.擬采用的主要研究方法(技術(shù)路線或設(shè)計參數(shù));
以四桿機(jī)構(gòu)綜合分析理論為核心,利用 MATLAB 軟件開發(fā)了平面四桿機(jī)構(gòu)綜合與分析系統(tǒng)。充分利用 MATLAB 強(qiáng)大的計算功能和出色的數(shù)據(jù)可視化功能,完成了四桿剛體導(dǎo)引、軌跡發(fā)生及函數(shù)發(fā)生機(jī)構(gòu)綜合與分析軟件的設(shè)計。
2.論文(設(shè)計)進(jìn)度計劃
第 1 周:收集研究方向相關(guān)資料、研究資料;
第 2 周:閱讀參考文獻(xiàn),確定研究內(nèi)容;
第 3 周:撰寫開題報告,擬訂總體設(shè)計方案;
第 4 周:完善、修改開題報告,完成外文翻譯;
第 5 周:進(jìn)行畢業(yè)設(shè)計總體規(guī)劃,設(shè)計總體實施方案;
第 6 周:根據(jù)機(jī)構(gòu)分類,建立閉環(huán)矢量方程;
第 7 周:對閉環(huán)矢量方程進(jìn)行求導(dǎo)和求解;
第 8 周:連桿軌跡、速度、加速度求解;
第 9 周:連桿軌跡、速度、加速度分析;
第 10 周:對機(jī)構(gòu)數(shù)據(jù)變曲點、曲率極大極小點進(jìn)行分析; 第 11 周:建立機(jī)構(gòu)數(shù)據(jù)的數(shù)據(jù)庫,編寫 M 文件;
第 12 周:對程序進(jìn)行調(diào)試,撰寫設(shè)計說明書;
第 13 周:完善設(shè)計內(nèi)容及設(shè)計說明書,準(zhǔn)備畢業(yè)設(shè)計答辯;
第 14 周:按指導(dǎo)教師及評閱教師的意見修改設(shè)計說明書,進(jìn)行畢業(yè)設(shè)計答辯。
四、需要閱讀的參考文獻(xiàn)
[1] 范恒彥,陳長秀. 一種支撐用鉸鏈四桿機(jī)構(gòu)的設(shè)計[J]. 陜西國防工業(yè)職業(yè)技術(shù)學(xué)院學(xué)報. 2015(04)
[2] 王琦,何仁. 采用改進(jìn)差分進(jìn)化算法的四桿機(jī)構(gòu)軌跡優(yōu)化[J]. 機(jī)械設(shè)計與制造. 2017(09)
[3] 徐春濤,廉哲滿. 基于矯正解的經(jīng)過預(yù)定三位置的四桿機(jī)構(gòu)設(shè)計[J]. 延邊大學(xué)學(xué)報(自然科學(xué)版). 2012(01)
[4] 桑中和. 四桿機(jī)構(gòu)設(shè)計的一種解析法(二)[J]. 阜新礦業(yè)學(xué)院學(xué)報. 1986(02)
[5] L.O. 巴克頓, 羅良玲. 四桿機(jī)構(gòu)的簡易分析法[J]. 南昌大學(xué)學(xué)報( 工科版). 1980(03)
[6] 覃金昌,林遠(yuǎn)艷,張寶磊. 工程四桿機(jī)構(gòu)焊接桿上 F 點的 Simulink/SimMechanics
軌跡仿真分析[J]. 科技信息. 2013(15)
[7] 張建,谷裕. 談四桿機(jī)構(gòu)教學(xué)中學(xué)生創(chuàng)新能力的培養(yǎng)[J]. 職業(yè)教育研究. 2010(11)
[8] 陳曉軍,朱云開. 基于遺傳模擬退火算法的四桿機(jī)構(gòu)優(yōu)化設(shè)計[J]. 機(jī)械工程與自動化. 2009(03)
[9] 張威, 王輝. 微分進(jìn)化應(yīng)用于四桿機(jī)構(gòu)綜合時的人工干預(yù)[J]. 機(jī)床與液壓. 2009(07)
[10] 趙云龍,劉俊標(biāo),韓立. 雙復(fù)合平行四桿機(jī)構(gòu)的研究[J]. 航空精密制造技術(shù). 2007(04)
[11] 劉龍,黎炯宏. 基于 MATLAB 的平面四連桿機(jī)構(gòu)運動仿真[J]. 機(jī)電工程技術(shù). 2011(04)
[12] 任澤凱. 基于 MATLAB 和 ADAMS 的四連桿機(jī)構(gòu)運動仿真[J]. 裝備機(jī)械. 2016(03)
[13] 徐梓斌, 閔劍青. MATLAB 的四桿機(jī)構(gòu)運動學(xué)仿真方法[J]. 林業(yè)機(jī)械與木工設(shè)備. 2007(05)
[14] 周凌. 基于 Matlab 的四桿機(jī)構(gòu)的運動學(xué)動力學(xué)仿真[J]. 高職教育. 2011(11)
[15] 王筱華. 四桿機(jī)構(gòu)位移分析及連桿曲線繪制[N]. 大連輕工業(yè)學(xué)院學(xué)報. 1999(04)
[16] 褚金奎,王立鼎,吳琛. 四桿機(jī)構(gòu)軌跡特性與機(jī)構(gòu)尺寸型關(guān)系研究[J]. 中國科 E
輯 工程科學(xué) 材料科學(xué). 2004(07)
[17] 鄭立斌, 陳全園, 胡志平. 四連桿機(jī)構(gòu)運動仿真設(shè)計[N]. 景德鎮(zhèn)高專學(xué)報. 2007(04)
[18] Kailash Chaudhary,Himanshu Chaudhary. Shape optimization of dynamically balanced planar four-bar mechanism[R]. 3rd International Conference on Recent Trends in Computing 2015. 2015(05)
[19] Ahmet Yildiz,Osman Kopmaz,Sevda Telli Cetin. Dynamic modeling and analysis of a four-bar mechanism coupled with a CVT for obtaining variable input speeds?[J]. Journal of Mechanical Science and Technology. 2015(03)
[20] Van De Sande,Werner W.P.J. , Aarts, Ronald G.K.M. ,Brouwer, Dannis M. System behaviour of a multiple overconstrained compliant four-bar mechanism[J]. engineering village. 2017(12)
附:文獻(xiàn)綜述或報告
文獻(xiàn)綜述
一、連桿機(jī)構(gòu)的發(fā)展概述
在過去的幾十年里,國內(nèi)外的一些學(xué)者對連桿機(jī)構(gòu)分析和綜合的研究已取得了令人矚目的成就。
對于連桿機(jī)構(gòu)分析,提出了以單開鏈為單元的理論與方法,以拓?fù)涮卣鳛榛A(chǔ)的新機(jī)構(gòu)組成原理,揭示了機(jī)構(gòu)特征與動力學(xué)方程、運動學(xué)方程之間的聯(lián)系,創(chuàng)立了一套數(shù)學(xué)模型。連桿機(jī)構(gòu)綜合取得成就有:
(1)提出了綜合桿組的概念,創(chuàng)立了連桿機(jī)構(gòu)按速度、位置、加速度等運動參數(shù)綜合進(jìn)行分析的理論和方法。(2)將計算機(jī)技術(shù)應(yīng)用到連桿機(jī)構(gòu)綜合,建立了傳動特征和導(dǎo)引特性的數(shù)據(jù)庫,有利于提高求解精度和設(shè)計速度。(3)提出了基于局部的軌跡的特征,實現(xiàn)整個機(jī)構(gòu)的軌跡,提高軌跡機(jī)構(gòu)求解的精度和設(shè)計速度。(4)提出了機(jī)架桿方向結(jié)構(gòu)誤差與從動桿桿長機(jī)構(gòu)誤差的概念,并通過改進(jìn)遺傳算法,完成軌跡機(jī)構(gòu)和函數(shù)生成機(jī)構(gòu)的優(yōu)化。20 世紀(jì)中期,開始將計算機(jī)技術(shù)應(yīng)用到連桿機(jī)構(gòu)綜合。對于鉸鏈四桿機(jī)構(gòu)綜合的幾何方法,一些學(xué)者將其公式化,超越方程組和求解代數(shù)方程組可以在計算機(jī)上進(jìn)行,從而獲得綜合機(jī)構(gòu)有關(guān)的參數(shù),首次實現(xiàn)將計算機(jī)實現(xiàn)應(yīng)用到四桿機(jī)構(gòu)再現(xiàn)函數(shù)的最優(yōu)綜合中。60 年代后,位移矩陣法也被應(yīng)用到機(jī)構(gòu)綜合中, 通過解超越方程組和非線性方程組,求綜合機(jī)構(gòu)的有關(guān)參數(shù)。
在過去的幾百年中,連桿機(jī)構(gòu)的理論研究取得了巨大的成績。18 世紀(jì)后期,機(jī)械工程學(xué)科在第一次工業(yè)革命后迅速的發(fā)展起來了,機(jī)構(gòu)學(xué)也成了一門獨立的新學(xué)科。連桿機(jī)構(gòu)早在 13 世紀(jì)前期就已經(jīng)得到了廣泛應(yīng)用,四桿機(jī)構(gòu)是最簡單也是最早出現(xiàn)的一種機(jī)構(gòu)。早在 18 世紀(jì),著名發(fā)明家瓦特就對連桿機(jī)構(gòu)進(jìn)行了研究。1784 年,瓦特將四桿機(jī)構(gòu)應(yīng)用到他發(fā)明的蒸汽機(jī)里,為活塞提供近似直線運動。瓦特將連桿機(jī)構(gòu)應(yīng)用到蒸汽機(jī)多年之后,連桿機(jī)構(gòu)并沒有得到快速的發(fā)展,一方面是由于缺乏其運動特性方面的理論基礎(chǔ)。與連桿機(jī)構(gòu)相關(guān)的一些文獻(xiàn)在 19 世紀(jì) 80 年代后才相繼出現(xiàn)。
19 世紀(jì)之后,對連桿機(jī)構(gòu)研究貢獻(xiàn)最大的是德國機(jī)構(gòu)學(xué)學(xué)派,其研究成果處于世界遙遙領(lǐng)先地位。第二次世界大戰(zhàn)之后,由于計算機(jī)技術(shù)的快速發(fā)展,使連桿機(jī)構(gòu)在生產(chǎn)中的應(yīng)用有了新突破,開辟了許多新分支。四桿機(jī)構(gòu)是連桿機(jī)構(gòu)最基本的形式,雖然目前對四桿機(jī)構(gòu)已進(jìn)行了很多的研究,但是在運動學(xué)和動力學(xué)方面,四桿機(jī)構(gòu)仍待進(jìn)一步發(fā)展。對于五桿機(jī)構(gòu),尤其是五桿以上的多桿多自由度機(jī)構(gòu),仍待進(jìn)一步研究。四桿機(jī)構(gòu)雖應(yīng)用廣泛,形式簡單,但僅僅能實現(xiàn)簡單的功能。隨著機(jī)械手、機(jī)械自動化機(jī)器人的發(fā)展,在機(jī)構(gòu)運動和動力特性方面,人們有了更高的要求,國際上也十分注重這方面的研究。
隨著計算機(jī)技術(shù)的飛速發(fā)展和科學(xué)技術(shù)的進(jìn)步,也促進(jìn)了機(jī)械工程學(xué)的快速發(fā)展。連桿機(jī)構(gòu)將朝著多桿機(jī)構(gòu)方向和多學(xué)科之間的相會融合和滲透方向發(fā)展。未來連桿機(jī)構(gòu)研究的對象將會是由機(jī)構(gòu)、控制系統(tǒng)和原動機(jī)結(jié)合成的整個機(jī)構(gòu)系統(tǒng),通過對整個機(jī)構(gòu)系統(tǒng)的研究,揭示其運動學(xué)、動力學(xué)特征以及其對動力分配的影響,從而改進(jìn)機(jī)構(gòu)的性能和創(chuàng)造出具有新用途的機(jī)構(gòu),這將是未來連桿機(jī)構(gòu)發(fā)展的趨勢。
二、Matlab 的發(fā)展及優(yōu)點概述
在 70 年代中期,Cleve Moler 博士和其同事在美國國家科學(xué)基金的資助下開發(fā)了調(diào)用 EISPACK 和 LINPACK 的 FORTRAN 子程序庫。EISPACK 是特征值求解的 FOETRAN 程序庫,LINPACK 是解線性方程的程序庫。在當(dāng)時,這兩個程序庫代表矩陣運算的最高水平。到 70 年代后期,身為美國 New Mexico 大學(xué)計算機(jī)系系主任的 Cleve Moler, 在給學(xué)生講授線性代數(shù)課程時,想教學(xué)生使用 EISPACK 和 LINPACK 程序庫,但他發(fā)現(xiàn)
學(xué)生用 FORTRAN 編寫接口程序很費時間,為了讓學(xué)生方便的調(diào)用 EISPACK 和 LINPACK, 利用業(yè)余時間為學(xué)生編寫 EISPACK 和 LINPACK 的接口程序。Cleve Moler 給這個接口程序取名為 Matlab,取名 Matlab(MATrix LABoratory),即 Matrix 和 Laboratory 的組合。在以后的數(shù)年里,Matlab 在多所大學(xué)里作為教學(xué)輔助軟件使用,并作為面向大眾的免費軟件廣為流傳。1983 年春天,Cleve Moler 到 Standford 大學(xué)講學(xué),Matlab 深深地吸引了工程師 John Little。John Little 敏銳地覺察到 Matlab 在工程領(lǐng)域的廣闊前景。于是,他和 Cleve Moler、Steve Bangert 一起,由 Steve Bangert 主持開發(fā)編譯解釋程序,Steve Kleiman 完成圖形功能的設(shè)計,John Little 和 Cleve Moler 主持開發(fā)了各類數(shù)學(xué)分分析的子模塊,撰寫用戶指南和大部分的 M 文件。這樣用 C 語言開發(fā)了第二代 Matlab 專業(yè)版,也是 Matlab 第一個商用版,同時賦予了它數(shù)值計算和數(shù)據(jù)圖示化的功能。自從第一版發(fā)行以來,已有眾多的科技工作者加入到 Matlab 的開發(fā)隊伍中,并為形成今天約 Matlab 系統(tǒng)做出了巨大的貢獻(xiàn)。1984 年,Cleve Moler和 John Little 成立了 Math Works 公司,發(fā)行了 Matlab 第 1 版(DoS 版本 1.0)。正式把 Matlab 推向市場。Matlab 的第一個商業(yè)化的版本是同年推出的是 3.0 的 DOS 版本。并繼續(xù)進(jìn)行 Matlab 的研究和開發(fā),逐步將其發(fā)展成為一個集數(shù)值處理、圖形處理、圖像處理、符號計算、文字處理、數(shù)學(xué)建模、實時控制、動態(tài)仿真、信號處理為一體的數(shù)學(xué)應(yīng)用軟件。Matlab 以商品形式出現(xiàn)后,僅短短幾年,就以其良好的開放性和運行的可靠性,使原先控制領(lǐng)域里的封閉式軟件包(如英國的 UMIST,瑞典的 LUND 和 SIMNON,德國的 KEDDC)紛紛淘汰,而改以 Matlab 為平臺加以重建。九十年代初期,在國際上 30 幾個數(shù)學(xué)類科技應(yīng)用軟件中,Matlab 在數(shù)值計算方面獨占鰲頭,而
Mathematica 和 Maple 則分居符號計算軟件的前兩名。
MathCAD 因其提供計算、圖形、文字處理的統(tǒng)一環(huán)境而深受中學(xué)生歡迎。Matlab 已經(jīng)成為國際控制界公認(rèn)的標(biāo)準(zhǔn)計算軟件。1992 年,MathWorks 公司于推出了 4.0 版本。1993 年,MathWorks 公司推出了 Matlab 4.1 版。也是在這年(1993 年)MathWorks 公司從加拿大滑鐵盧大學(xué)購得 Maple 的使用權(quán),以 Maple 為“引擎”開發(fā)了 Symbolic Math Toolbox 1.0。MathWorks 公司此舉加快結(jié)束了國際上數(shù)值計算、符號計算孰優(yōu)孰劣的長期爭論,促成了兩種計算的互補(bǔ)發(fā)展新時代。
Matlab 的主要特點有:(1)高效的數(shù)值計算及符號計算功能,能使用戶從繁雜的數(shù)學(xué)運算分析中解脫出來;(2)具有完備的圖形處理功能,實現(xiàn)計算結(jié)果和編程的可視化;(3)友好的用戶界面及接近數(shù)學(xué)表達(dá)式的自然化語言,使學(xué)者易于學(xué)習(xí)和掌握;
(4)功能豐富的應(yīng)用工具箱(如信號處理工具箱、通信工具箱等),為用戶提供了大量方便實用的處理工具。Matlab 語言是一種非常強(qiáng)大的工程計算語言,提供了非常豐富的 Matlab 優(yōu)化工具箱。其優(yōu)化工具箱有許多常用的優(yōu)化算法,廣泛應(yīng)用于線性規(guī)劃、二次規(guī)劃、非線性優(yōu)化、最小二乘法問題、非線性方程求解、多目標(biāo)決策等問題,其函數(shù)表達(dá)簡潔,優(yōu)化算法選擇靈活,參數(shù)設(shè)置自由,相比于其它很多成熟的優(yōu)化程序具有明顯的優(yōu)越性。
三、連桿機(jī)構(gòu)運動學(xué)的 Matlab 分析概述
連桿機(jī)構(gòu)由于其結(jié)構(gòu)簡單,可承受載荷大,連桿曲線具有多樣性等特性,它在眾多領(lǐng)域都有著廣泛的運用。機(jī)構(gòu)運動學(xué)仿真就是根據(jù)給定的原動件運動規(guī)律,求出機(jī)構(gòu)中其它構(gòu)件的運動參數(shù)。機(jī)構(gòu)運動分析的方法分為圖解法、解析法和實驗法三種, 解析法將機(jī)構(gòu)問題抽象為數(shù)學(xué)問題,將機(jī)構(gòu)運動參數(shù)和結(jié)構(gòu)參數(shù)之間的關(guān)系用數(shù)學(xué)解析式來描述,便于推理和對機(jī)構(gòu)在整個運動過程中任意位置的運動性能進(jìn)行深入分析, 分析精度也較高。隨著計算機(jī)技術(shù)和數(shù)值方法的發(fā)展。解析法運算冗繁的問題得以解決,并體現(xiàn)出運算速度快、計算精度高的顯著優(yōu)勢,因此解析法得到越來越廣泛的應(yīng)用。無論是分析現(xiàn)有機(jī)構(gòu)工作性能,還是優(yōu)化新機(jī)械,仿真都是十分重要的。通過仿真可以確定某些構(gòu)件運動所需的空間,校驗它們運動是否干涉,而且運動軌跡仿真動畫
則更為形象直觀,速度分析可以確定機(jī)構(gòu)從動件的速度是否合乎要求,加速度分析可以為慣性力計算提供數(shù)據(jù)。因此,運動學(xué)分析既是機(jī)構(gòu)綜合的基礎(chǔ),又是力分析的基礎(chǔ)。
同時,Matlab 具有強(qiáng)大的運算分析功能,具有集科學(xué)計算、程序設(shè)計和可視化于一體的高度集成化軟件環(huán)境,是目前國際上公認(rèn)的最優(yōu)秀的計算分析軟件之一,被廣泛應(yīng)用于自動控制、信號處理、機(jī)械設(shè)計、流體力學(xué)和數(shù)理統(tǒng)計等工程領(lǐng)域。通過運算分析,Matlab 可以從眾多的設(shè)計方案中尋找最佳途徑,獲取最優(yōu)結(jié)果,大大提高了設(shè)計水平和質(zhì)量。四連桿機(jī)構(gòu)的解析法同樣可以用 Matlab 的計算工具來求值,并結(jié)合 Matlab 的可視化手段,把各點的計算值擬合成曲線,得到連桿機(jī)構(gòu)的運動仿真軌跡。Matlab 軟件中的 Simulink 仿真工具用于機(jī)械工程中機(jī)構(gòu)的運動學(xué)仿真,簡單, 直觀。只需通過 M 文件編寫運動學(xué)方程,設(shè)定特殊時刻為初始值就可以得到任意時刻的位置、速度、加速度的值,并可以觀察它們在運動周期內(nèi)的變化。通過基于 Matlab 的強(qiáng)大的矩陣運算能力,還可以方便得到三者之間的關(guān)系,這是一般解析方法所不及的。以 Matlab 軟件的 Simulink 軟件包為研究平臺,以平面四桿機(jī)構(gòu)為研究對象,通過建立閉環(huán)矢量方程,以牛頓力學(xué)為基礎(chǔ)列出動力學(xué)方程,通過已知的幾何特性,利用 Matlab 軟件數(shù)值計算能力和 Simulink 仿真模塊來實現(xiàn)系統(tǒng)的建模仿真。通過對機(jī)構(gòu)中各構(gòu)件進(jìn)行受力分析,得到動力學(xué)的數(shù)學(xué)模型,再加上機(jī)構(gòu)運動的運動參數(shù),建立動力學(xué)仿真模型,得到機(jī)構(gòu)運動的反力和力矩,避免了復(fù)雜的數(shù)學(xué)解析運算,并保證了計算精度。通過已知的幾何特性,利用 Matlab 軟件數(shù)值計算能力和 Simulink 仿真模塊來實現(xiàn)系統(tǒng)的建模仿真。
我們以連桿機(jī)構(gòu)為研究對象,應(yīng)用了基于 Matlab 的 Simulink 對平面連桿機(jī)構(gòu)以及空間連桿機(jī)構(gòu)的運動學(xué)和動力學(xué)仿真方法。仿真模擬使計算更為簡單,并以曲線圖的形式顯示出在曲柄勻速運動條件下,各參數(shù)的隨時間變化的特性。這不僅可以保證系統(tǒng)方案的可行性,還可以提高機(jī)械設(shè)計的效率,為機(jī)構(gòu)設(shè)計提供了新的方法,具有很強(qiáng)的實際工程應(yīng)用意義。
總之,機(jī)構(gòu)仿真是實現(xiàn)機(jī)構(gòu)優(yōu)化設(shè)計的重要方法,特別是對于復(fù)雜機(jī)構(gòu)系統(tǒng),這一方法更加顯示出其優(yōu)越性,而 Matlab 可很好地對機(jī)械系統(tǒng)進(jìn)行分析,為機(jī)械系統(tǒng)的建模仿真提供一個強(qiáng)大而方便的工具。
平面四桿機(jī)構(gòu) MATLAB 仿真及優(yōu)化設(shè)計
摘 要
在研究機(jī)構(gòu)學(xué)時,由于需要處理大量的數(shù)據(jù),并且處理過程繁瑣容易出錯,所以需要研究人員找到一種可以直接處理矩陣運算的通用方法,在研究大量的實際問題后,人們發(fā)現(xiàn),大多數(shù)的實例都可構(gòu)造成矩陣方程來進(jìn)行運算,MATLAB 恰好具備這一運算特性,能夠滿足人們在機(jī)構(gòu)學(xué)研究中的要求。
本設(shè)計選取平面四桿機(jī)構(gòu)作為研究對象,首先對其進(jìn)行運動學(xué)和動力學(xué)的分析,在此基礎(chǔ)上,建立相應(yīng)的數(shù)學(xué)模型,選擇 MATLAB 作為研究工具,建立 Simulink 仿真模型, 對平面四桿機(jī)構(gòu)的運動學(xué)特性進(jìn)行研究。再使用 MATLAB 自身的 GUI 功能,設(shè)計出一個平面四桿機(jī)構(gòu)的運動學(xué)分析交互式界面,使得用戶只需要輸入相應(yīng)的參數(shù),即可得到相應(yīng)的分析結(jié)果。最后再根據(jù)所有的仿真分析結(jié)果進(jìn)行優(yōu)化設(shè)計,得到四桿機(jī)構(gòu)參數(shù)的最優(yōu)設(shè)計參數(shù)。
該方法對平面四桿機(jī)構(gòu)的仿真設(shè)計及優(yōu)化處理提供了一種新的解決方案,對平面四桿機(jī)構(gòu)的設(shè)計和優(yōu)化提供了一定的幫助,不僅提高了效率和準(zhǔn)確性,而且對解決其他類似的問題也具有一定的參考價值。
關(guān)鍵詞:機(jī)構(gòu)學(xué);平面四桿機(jī)構(gòu);MATLAB;仿真分析;優(yōu)化設(shè)計
I
ABSTRACT
In the mechanism research,there is a large amount of data which needs to be processed, and the process is so cumbersome and error-prone. So researchers need to find a general method that can handle matrix operations directly. After researching many practical problems, people found that most of the examples can be constructed as matrix equations for operation.
MATLAB has this feature that can meet people's demands in institutional research.
This design chooses a planar four-link mechanism as a research object. First, analyze the kinematics and dynamics, and then, establish a mathematical model. Selecting MATLAB as a research tool and establishing a Simulink simulation model to research the kinematics of the planar four-link mechanism. Then use MATLAB's own function to design a kinematics analysis interactive interface of a planar four-link mechanism. User should only enter the corresponding parameters, you can get the corresponding analysis results. Finally, according to the results of all simulation analysis, the optimal design parameters of the four-link mechanism are obtained.
This method provides a new solution for the simulation design and optimization of the planar four-link mechanism. It has given a hand to the design and optimization of the planar four-link mechanism, which not only improves the efficiency and accuracy, but also has certain reference value for solving other similar problems..
Keyword:Institutional;Planar four-link mechanism;MATLAB;Motion Analysis; Optimized design
II
目 錄
摘 要 I
ABSTRACT II
1 緒論 1
1.1 課題背景 1
1.2 國內(nèi)外研究現(xiàn)狀和發(fā)展 1
1.3 課題主要任務(wù) 3
2 平面四桿機(jī)構(gòu)的運動學(xué)分析 4
2.1 概述 4
2.2 實例分析 4
3 基于 MATLAB 的運動分析及程序設(shè)計 8
3.1 MATLAB 概述 8
3.2 M 文件編寫 8
3.3 基于 MATLAB 的 Simulink 模型的建立 10
3.4 程序運行結(jié)果 12
4 曲柄滑塊機(jī)構(gòu)的 GUI 設(shè)計 15
4.1 GUI 概述 15
4.2 問題概況 15
4.3 數(shù)學(xué)分析 16
4.4 界面設(shè)計 17
4.5 主要代碼設(shè)計流程 19
4.6 界面結(jié)果展示 21
5 平面四桿機(jī)構(gòu)的優(yōu)化設(shè)計 22
5.1 四桿的優(yōu)化設(shè)計方法 22
5.2 建立數(shù)學(xué)模型 22
5.3 實例計算 24
6 結(jié) 論 26
參 考 文 獻(xiàn) 27
附錄 1:外文翻譯 28
附錄 2:外文原文 36
附錄 3:主要程序代碼 45
致 謝 49
I
平面四桿機(jī)構(gòu)MATLAB 仿真及優(yōu)化設(shè)計
1 緒論
1.1 課題背景
隨著科技的進(jìn)步和計算機(jī)技術(shù)的飛速發(fā)展,機(jī)械工程學(xué)的發(fā)展也在加速。連桿機(jī)構(gòu)中多桿機(jī)構(gòu)方向和多學(xué)科兩個方面,未來會相互融合、相互滲透。在機(jī)構(gòu)、控制系統(tǒng)和原動機(jī)結(jié)合成的整個機(jī)構(gòu)系統(tǒng)中,通過對整個機(jī)構(gòu)系統(tǒng)的研究,從分析運動學(xué)、動力學(xué)特征以及其對動力分配的影響,到改進(jìn)對機(jī)構(gòu)的性能的改造和發(fā)展機(jī)構(gòu)的新用途[15],這將是連桿機(jī)構(gòu)未來發(fā)展趨勢。
連桿機(jī)構(gòu)由于其簡單的結(jié)構(gòu),較大的可承受載荷,多樣性的連桿曲線等特性,廣泛的應(yīng)用于眾多領(lǐng)域。機(jī)構(gòu)運動學(xué)仿真就是根據(jù)給定的原動件的運動規(guī)律,得出機(jī)構(gòu)中其余構(gòu)件的運動參數(shù)[13]。無論是分析現(xiàn)有機(jī)構(gòu)的工作性能,還是優(yōu)化新機(jī)械機(jī)構(gòu),仿真都是十分重要的。通過仿真能夠形象直觀的看出機(jī)構(gòu)的運動軌跡、所需要的空間以及是否干涉,同時速度分析可以確定機(jī)構(gòu)從動件的速度是否符合要求,加速度分析可以提供慣性力計算的數(shù)據(jù)[13]。
研究該課題的目的在于找到一個通用的方法,用以研究平面四桿機(jī)構(gòu),將平面四桿機(jī)構(gòu)的運動學(xué)特性用圖表、曲線的方式直觀明了的表示出來,優(yōu)化平面四桿機(jī)構(gòu)的設(shè)計流程,減少設(shè)計時間的同時提高設(shè)計精度,結(jié)合當(dāng)下的科學(xué)技術(shù),使用計算機(jī)軟件進(jìn)行輔助設(shè)計,具有很強(qiáng)的優(yōu)越性。
1.2 國內(nèi)外研究現(xiàn)狀和發(fā)展
近幾十年來,國內(nèi)外的一些學(xué)者和研究機(jī)構(gòu)對連桿機(jī)構(gòu)的分析和綜合研究已取得了顯著的成績。
對于連桿機(jī)構(gòu)分析,提出了以單開鏈為單元的理論與方法,以拓?fù)涮卣鳛榛A(chǔ)的新機(jī)構(gòu)組成原理,為了揭示機(jī)構(gòu)特征與動力學(xué)方程、運動學(xué)方程之間的聯(lián)系,創(chuàng)立了一套數(shù)學(xué)模型。連桿機(jī)構(gòu)取得的成就有:
(1)提出了一套綜合桿組的概念,創(chuàng)立了連桿機(jī)構(gòu)通過速度、位置、加速度等運動參數(shù)綜合分析的理論和方法;(2)在連桿機(jī)構(gòu)的綜合研究中引入了計算機(jī)技術(shù),建立了傳動特征和導(dǎo)引特性的數(shù)據(jù)庫,并通過局部軌跡特征的建立,提高了設(shè)計精度、加快了設(shè)計速度;(3)提出了機(jī)架桿方向結(jié)構(gòu)誤差與從動桿桿長機(jī)構(gòu)誤差的概念,并通過改進(jìn)遺傳算法,完成軌跡機(jī)構(gòu)和函數(shù)生成機(jī)構(gòu)的優(yōu)化。20 世紀(jì)中期,開始將計算機(jī)技術(shù)應(yīng)用到連桿機(jī)構(gòu)的綜合研究中[15]。對于鉸鏈四桿機(jī)構(gòu)綜合的幾何方法,一些學(xué)者將其公式化,首次實現(xiàn)將計算機(jī)應(yīng)用到四桿機(jī)構(gòu)相應(yīng)函數(shù)的最優(yōu)組合中,將超越方程組和代數(shù)方程組的求解放在計算機(jī)上進(jìn)行,從而獲得機(jī)構(gòu)有關(guān)的參數(shù)。60 年代后,位移矩陣法也
- 49 -
被應(yīng)用到機(jī)構(gòu)的綜合求解中,同樣是通過求解超越方程組和非線性方程組,得到綜合機(jī)構(gòu)的有關(guān)參數(shù)。
關(guān)于連桿機(jī)構(gòu)的理論,科學(xué)家在過去幾百年的研究過程中已經(jīng)取得了巨大的成績。在 18 世紀(jì)后期,第一次工業(yè)革命的發(fā)展浪潮中,機(jī)械工程學(xué)科也得到了快速的發(fā)展。因
此機(jī)構(gòu)學(xué)也成了一門獨立的新學(xué)科。在 13 世紀(jì)前期,人們就已經(jīng)開始廣泛應(yīng)用連桿機(jī)構(gòu)理論[15]。而出現(xiàn)得最早、結(jié)構(gòu)最簡單、應(yīng)用最廣泛的一種機(jī)構(gòu)就是四桿機(jī)構(gòu)。在連桿機(jī)構(gòu)研究的研究中,最早開始是 18 世紀(jì)的科學(xué)家瓦特。早在 1784 年的時候,在瓦特發(fā)明的蒸汽機(jī)里,他就應(yīng)用了四桿機(jī)構(gòu),其目的是為活塞提供近似直線運動。然而,就算瓦特將這項技術(shù)應(yīng)用到蒸汽機(jī)里,連桿機(jī)構(gòu)也并沒有得到快速的發(fā)展。主要原因是缺乏相關(guān)文獻(xiàn)來記載其運動特性方面研究的理論基礎(chǔ),然而,與連桿機(jī)構(gòu)理論相關(guān)的記載一直未曾出現(xiàn),直到在 19 世紀(jì) 80 年代后才有相關(guān)文獻(xiàn)出現(xiàn)。19 世紀(jì)之后,各機(jī)構(gòu)開始重視連桿機(jī)構(gòu)的研究,德國機(jī)構(gòu)學(xué)學(xué)派是最重視這項研究,且貢獻(xiàn)最大的學(xué)派,其研究成果在世界上也處于領(lǐng)先狀態(tài)。第二次世界大戰(zhàn)之后,在計算機(jī)技術(shù)騰飛的同時,連桿機(jī)構(gòu)也在生產(chǎn)中得到應(yīng)用,開拓了許多研究領(lǐng)域,有了新的突破。在機(jī)構(gòu)學(xué)的研究中,四桿機(jī)構(gòu)作為連桿機(jī)構(gòu)中最基本的形式,雖然在其他方面的研究有了突破,但在運動學(xué)和動力學(xué)方面四桿機(jī)構(gòu)的研究還需努力。對于五桿機(jī)構(gòu)及其以上的多桿多自由度機(jī)構(gòu),我們的研究還遠(yuǎn)遠(yuǎn)不夠。平面四桿機(jī)構(gòu)由于簡單,所以僅僅能實現(xiàn)簡單的功能,但隨著機(jī)械手、機(jī)械自動化機(jī)器人的發(fā)展,在機(jī)構(gòu)運動和動力特性方面,人們有了更高的要求,國際上也十分注重這方面的研究。
MATLAB 的出現(xiàn)極大的幫助了機(jī)構(gòu)學(xué)的研究,MATLAB 能夠快速而精確的運算復(fù)雜函
數(shù),同時 MATLAB 內(nèi)部有很多簡潔方便且實用的工具箱,能夠為機(jī)構(gòu)的分析和仿真提供相當(dāng)大的便利,軟件支持多種語言的擴(kuò)展、語法簡單、門檻低、使用方便,這樣就為機(jī)構(gòu)學(xué)的研究提供了一個很好的環(huán)境。
MATLAB 軟件具有系統(tǒng)建模方便直觀、仿真功能強(qiáng)大等特點,能為機(jī)械系統(tǒng)的建模仿真提供一個強(qiáng)大而方便的工具。使用 MATLAB 軟件的 Simulink 仿真工具用于機(jī)械工程中機(jī)構(gòu)的運動學(xué)仿真,簡單,直觀,只需通過 M 文件編寫運動學(xué)方程,設(shè)定特殊時刻為初始值就可以得到任意時刻的位置、速度、加速度的值,并可以觀察它們在運動周期內(nèi)的變化。通過基于 MATLAB 的強(qiáng)大的矩陣運算能力,還可以方便得到三者之間的關(guān)系,這是一般解析方法所不及的[14]。就目前情況而言,MATLAB 已經(jīng)不再是“矩陣實驗室”,而成為國際上最流行的科學(xué)與工程計算的軟件工具,以及一種具有廣泛應(yīng)用前景的全新的計算機(jī)高級編程語言,它在國內(nèi)外高校和科研部門正扮演著越來越重要的角色,功能也越來越強(qiáng)大,不斷適應(yīng)新的要求提出新的解決辦法[13]??梢灶A(yù)見,在科學(xué)運算和科學(xué)繪
圖領(lǐng)域,MATLAB 語言將長期保持其獨一無二的地位,使用 MATLAB 可以很好地對機(jī)械系統(tǒng)進(jìn)行分析,為連桿機(jī)構(gòu)的建模仿真提供一個強(qiáng)大而方便的工具。
1.3 課題主要任務(wù)
本課題的主要研究內(nèi)容是平面四桿機(jī)構(gòu)的運動學(xué)仿真分析及優(yōu)化設(shè)計,其主要任務(wù)如下:
(1)機(jī)構(gòu)運動的數(shù)學(xué)模型的建立。建立數(shù)學(xué)模型的過程其實就是對機(jī)構(gòu)進(jìn)行詳細(xì)分析的過程,如角速度的分析,加速度的分析等,建立矩陣模型,用數(shù)學(xué)方法求出其他所需的值;
(2)使用 MATLAB 進(jìn)行 M 文件的編寫。根據(jù)數(shù)學(xué)模型編寫出相應(yīng)的 M 文件,用于實際問題的解決;
(3) Simulink 仿真模型的建立。使用 Simulink 進(jìn)行仿真,能夠快速準(zhǔn)確的顯示出速度隨時間的圖像、加速度隨時間的圖像等;
(4) GUI 人機(jī)交互界面的設(shè)計。做出一個簡潔直觀的界面、同時實現(xiàn)人機(jī)的友好交互,用戶可根據(jù)自己的實際需求輸入不同的參數(shù),從而得到相應(yīng)的圖像;
(5)將仿真得出的圖像進(jìn)行分析。根據(jù)前面工作所得到的參數(shù)數(shù)據(jù),結(jié)合實際情況分析,對平面四桿機(jī)構(gòu)的優(yōu)化提出意見。
2 平面四桿機(jī)構(gòu)的運動學(xué)分析
2.1 概述
平面四桿機(jī)構(gòu)的連接形式一般為低副連接,一般由四個剛性構(gòu)件組成,四個剛性構(gòu)件均在同一平面內(nèi)運動。
平面四桿機(jī)構(gòu)是機(jī)械學(xué)科中的最常見的一種機(jī)構(gòu),在各種機(jī)器設(shè)備中有大量的應(yīng)用, 而鉸鏈四桿機(jī)構(gòu)作為平面四桿機(jī)構(gòu)中具有代表性的一種,它是平面四桿機(jī)構(gòu)的基本形式, 其他類型的四桿機(jī)構(gòu)都可以看作是鉸鏈四桿機(jī)構(gòu)的衍生形式。對于四桿機(jī)構(gòu)的各桿,如 表 2.1 所示:
表 2.1 四桿機(jī)構(gòu)各桿的定義
連架桿
與機(jī)架直接相連
連桿
不與機(jī)架連接
曲柄
能夠 360°回轉(zhuǎn)
搖桿
只能在某一角度范圍內(nèi)往復(fù)擺動
根據(jù)主動桿是否可以作為曲柄,可將鉸鏈四桿機(jī)構(gòu)分為三類:1)曲柄搖桿機(jī)構(gòu);2) 雙曲柄機(jī)構(gòu);3)雙搖桿機(jī)構(gòu)。
由于平面四桿機(jī)構(gòu)有很多類型,因此我們不一一研究,只選取了兩個具有代表性的機(jī)構(gòu),即鉸鏈四桿機(jī)構(gòu)和曲柄滑塊機(jī)構(gòu)作為研究對象。
2.2 實例分析
設(shè)定一個平面四桿機(jī)構(gòu),取左側(cè)固定機(jī)架與連桿相交的端點作為坐標(biāo)原點,建立一個平面直角坐標(biāo)系。
取固定機(jī)架為連桿 1,順時針方向依次為連桿 2、連桿 3、連桿 4,連桿長度分別為
r1、r2、r3 和 r4。規(guī)定各連桿和 x 軸正方向之間的夾角為θ(連桿角度),四桿機(jī)構(gòu)的矢量圖如圖 2.1 所示:
圖 2.1 四連桿機(jī)構(gòu)矢量圖
四個連桿角度分別為q1 、q2 、q3 和q4 ,其中q1 =0°。
設(shè)定四連桿的基本條件為: r1 =100mm; r2 =30mm; r3 =80mm; r4 =60mm。我們可以由圖得到一個矢量方程 R2 + R3 = R1 + R4
2.2.1 求解角速度w3 、w4 和加速度a3 、a4 的數(shù)學(xué)分析
(2.1)
為了方便將矢量方程求導(dǎo),首先需要將矢量方程分別沿 x 方向和 y 方向分解,得到兩個標(biāo)量表達(dá)式,即:
r2 cosq2 + r3 cosq3 = r1 cosq1 + r4 cosq4 r2 sinq2 + r3 sinq3 = r1 sinq1 + r4 sinq4 式中,q1 恒為零。
對式(2.2)和式(2.3)求時間倒數(shù),有:
-w2sinq2 -w3sinq3 = -w4r4sinq4
4
w2cosq2 + w3cosq3 = w r4cosq4
式中, w 為q 對時間的一階導(dǎo)數(shù)。
(2.2)
(2.3)
(2.4)
(2.5)
由于式(2.4)和式(2.5)確定了一種關(guān)系,用來制約平面四桿機(jī)構(gòu)中三個可動連桿間的相對轉(zhuǎn)動速率,在本例中,假定連桿 2 與一臺電動機(jī)相連,該電動機(jī)能夠提足夠大的驅(qū)動力使連桿 2 以 6000r/min 的速度勻速轉(zhuǎn)動,此時w2 為機(jī)構(gòu)的輸入。對式(2.4) 和式(2.5)進(jìn)行整理,得:
-w3r3sinq3 + w4r4sinq4 = w2r2sinq2
w3r3cosq3 -w4r4cosq4 = -w2r2cosq2
化為矩陣形式為:
(2.6)
(2.7)
? -r3 sinq3
r4 sinq4
? ?w3 ? = ?w2r2 sinq2 ?
? r cosq -r cosq ÷ ?w ÷ ? -w r cosq ÷
è 3 3 4 4 ? è 4 ? è
2 2 2 ?
(2.8)
對式(2.2)和式(2.3)求二階導(dǎo)數(shù),也就是對式(2.6)和式(2.7)再進(jìn)行求導(dǎo), 整理,轉(zhuǎn)化成矩陣形式,可得:
-r3 sinq3
r4 sinq4
é r cosq
-r cosq
ù éa
ù = é
2 2 3 3
4 4 ù
a3
r2a2 sinq2 +w2r cosq2 +w2r cosq3 -w2r cosq4
? 3 3 4 4 ? ? 4 ? ? -r2a2 cosq2 +w2r sinq2 +w2r sinq3 -w2r sinq4
(2.9)
2.2.2 求解位置q3 和q4 的數(shù)學(xué)分析:
2 2 3 3
4 4 ?
當(dāng) t=0 時,假定q2 =0,利用牛頓-辛普森方法求解位置方程的精確值。假設(shè)這兩個方程包含兩個未知量,這個問題可以表示為:
f1 (x1, x2 ) = 0
f2 (x1, x2 ) = 0
(2.10)
(2.11)
假設(shè)估計值為 X i ,精確值為 X i ,精確值與估計值之間的差值為Dxi 。用等式表達(dá)為:
f1 (x1 + Dx1, x2 + Dx2 ) = 0
f2 (x1 + Dx1, x2 + Dx2 ) = 0
運用泰勒公式將式(2.12)等號左邊的部分展開,為:
(2.12)
(2.13)
f (x , x
) = f (x , x ) +
Dx
+ Dx
+ é高階項ù
(2.14)
1 1 2 1 1 2
x1 ,x2
1 2 ? ?
同理將式(2.11)展開,與式(2.14)合并,忽略不計高階項,得到:
ì? f
( x ,x
)= f
( x , x
)+d f1 Dx + d f1 Dx
1 1 2 1 1 2
í
d x1
x1 ,x2
1 d x2
x1 ,x2 2
f ( x ,x
)= f
( x ,x
)+d f2 Dx +d f2 Dx
?? 2 1 2 2 1 2
d x1
x1 ,x2
1 d x2
x1 ,x2 2
(2.15)
轉(zhuǎn)化為矩陣形式為:
? d f1
d f1 ?
(f1 ( x1 ,x2 ) )+ ? d x1
x1 ,x2
d x2
x1 ,x2
÷ (Dx1
)= (0 )
f2 ( x1 ,x2 )
? d f2
d f2 ÷
Dx2 0
(2.16)
è d x1
x1 ,x2
d x2
x1 ,x2 ?
式(2.16)中給出了估計值與精確值之間差值的計算方法,為求Dxi ,將式轉(zhuǎn)化為:
? d f1
d f1 ?-1
(Dx1
)= ? d x1
x1 ,x2
d x2
x1 ,x2 ÷
(- f1 ( x1 ,x2 ) )
Dx2
? d f2
d f2 ÷
- f2 ( x1 ,x2 )
(2.17)
è d x1
x1 ,x2
d x2
x1 ,x2 ?
對于四連桿機(jī)構(gòu),可以將式(2.2)和式(2.3)轉(zhuǎn)化為:
f1(q3 ,q4 ) = r2cosq2 + r3cosq3 - r1 - r4cosq4 f1(q3 ,q4 ) = r2 sinq2 + r3 sinq3 - r4 sinq4 由于:
q3 = q3 + Dq3
q4 = q4 + Dq4
Dq4
r3 cosq3
-r4 cosq4
- f2 (q3 ,q4 )
(2.22)
所以有:
(2.18)
(2.19)
(2.20)
(2.21)
3 3 3 3 3 1 3 4
(Dq
)= (-r sinq
r sinq )-1 (- f (q
,q ) )
3 基于 MATLAB 的運動分析及程序設(shè)計
3.1 MATLAB 概述
MATLAB 作為一款在全球內(nèi)廣泛使用的數(shù)學(xué)軟件,因其強(qiáng)大的功能和巨大的實用性, 受到了越來越多人的青睞。
MATLAB 的中文翻譯為矩陣實驗室。顧名思義,MATLAB 基于矩陣運算,只需要函數(shù)便可實現(xiàn)相關(guān)的功能,這是一個高科技的計算環(huán)境,主體為一個易于操作使用的視窗環(huán)境,但是能在這個環(huán)境下實現(xiàn)很多強(qiáng)大的功能,MATLAB 具有強(qiáng)大的圖像繪制和仿真能力,為許多需要進(jìn)行復(fù)雜函數(shù)運算或建模仿真的眾多科學(xué)領(lǐng)域提供了一種全面而精確的解 決方案,代表了當(dāng)今國際科學(xué)計算軟件的先進(jìn)水平。
MATLAB 的基本數(shù)據(jù)單位是矩陣,所以可以完成函數(shù)繪制、矩陣運算、創(chuàng)建人機(jī)界面等功能,并且在工程、信號、金融、分析等多個領(lǐng)域都得到了較為廣泛的應(yīng)用。再者,
MATLAB 的指令表達(dá)方式與工程中的常用表達(dá)方式也十分相似,增加了自己的兼容性,降低了使用的門檻,特別是對于非計算機(jī)專業(yè)的人來講,簡單易上手,這使得 MATLAB 在高校和研究機(jī)構(gòu)間受到了很大的歡迎。
MATLAB 的 特 點 : 1)能夠高效快速的處理數(shù)值和符號運算,使用戶大大的減輕了復(fù)雜數(shù)值運算的工作
強(qiáng)度;
2)圖形處理功能完善,計算結(jié)果和編程過程可視;
3)界面友好,無論是學(xué)習(xí)者還是用戶,都易于學(xué)習(xí)和掌握;
4)應(yīng)用工具箱豐富實用,用戶能夠自由選擇所需的處理工具。
3.2 M 文件編寫
當(dāng) ω2 和連桿 2 的所有位置已知時,式(2.8)可以用來求解ω3 和ω4。將ω2 視為仿真的輸入,可以用數(shù)值積分從速度中計算出θ2、θ3、θ4。因為ω3 和ω4 兩個速度是從閉環(huán)矢量方程式中求得的,所以編寫一個 sigansudu.m 的 M 文件來儲存該函數(shù),文件的內(nèi)容如下:
function x=sigansudu (u) r=[100 30 80 60];
% r 為四連桿的各連桿長度
a=[-r(3)*sin(u(3)) r(4)*sin(u(4));
r(3)*cos(u(3)) -r(4)*cos(u(4))];
b=[u(1)*r(2)*sin(u(2));-u(1)*r(2)*cos(u(2))];
x=a\b;
% x 為計算所得的ω3 和ω4 的值
編寫 M 文件來求解θ3 和θ4,這是一個函數(shù)文件,文件命名為 weizhi.m,程序代碼為:
function x=weizhi(th)
%此函數(shù)有三個輸入值,分別為q2 、q3 、q4 ,兩個輸出值為q3 和q4 的精確值
th2=th(1);
% th2 為θ2 的初始值
th3cs=th(2);
% th3cs 為θ3 的初始估計值
th4cs=th(3);
% th4cs 為θ4 的初始估計值
r=[100 30 80 60];
%四連桿的各個桿的長度e=1.0e-6;
%e 為循環(huán)終止條件,當(dāng)計算的差值即 f 向量的模小于 e 時即停止循環(huán)
f=[r(3)*cos(th3cs)-r(4)*cos(th4cs)+r(2)*cos(th2)-r(1)
r(3)*sin(th3cs)-r(4)*sin(th4cs)+r(2)*sin(th2)]; while norm(f)>e;
J=[-r(3)*sin(th3cs) r(4)*sin(th4cs);
r(3)*cos(th3cs) -r(4)*cos(th4cs)]; d=inv(J)*(-1.0*f);
th3cs=th3cs+d(1); th4cs=th4cs+d(2);
f=[r(3)*cos(th3cs)-r(4)*cos(th4cs)+r(2)*cos(th2)-r(1)
r(3)*sin(th3cs)-r(4)*sin(th4cs)+r(2)*sin(th2)]; norm(f);
end; th3=th3cs; th4=th4cs; x=[th3,th4];
編寫 M 文件,求出α3 和α4 的值
function x=jiasudu(u)
% x 為計算所得的α3 和α4 的值
% u(1)為α2 的初始值
% u(2)為ω2 的初始值
% u(3)為ω3 的初始值
% u(4)為ω4 的初始值
% u(5)為θ2 的初始值;
% u(6)為θ3 的初始值
% u(7)為θ4 的初始值r1=100;
r2=30; r3=80; r4=60;
% r1,r2,r3,r4 分別為四連桿的各桿長度a=[-r3*sin(u(6)) r4*sin(u(7));
r3*cos(u(6)) -r4*cos(u(7))]; b=[r2*u(1)*sin(u(5))+r2*u(2)^2*cos(u(5))+r3*u(3)^2*cos(u(6))-r4*u(4)^2*
cos(u(7));
-r2*u(1)*cos(u(5))+r2*u(2)^2*sin(u(5))+r3*u(3)^2*sin(u(6))-r4*u(4)^2*sin(u( 7))];
x=a\b;
3.3 基于 MATLAB 的 Simulink 模型的建立
將文件 sigansudu.m 嵌入到 Simulink 仿真系統(tǒng)中的 function 塊中,在 Simulink 圖形方式中,總共包含 3 個積分模塊,1 個常量模塊,1 個 demuk 模塊,1 個 simout 模塊和 2 個 muk 模塊。
把各個模塊連接起來,得到相應(yīng)的 Smulink 仿真模型,如圖 3.1 所示:
圖 3.1 求解w3 和w4 的 Simulink 仿真模型
對于四連桿機(jī)構(gòu),仍取連桿 2 的初始速度為 6000r/min、加速度為-15rad/s2勻加速運動的情況為例進(jìn)行運動學(xué)仿真,畫出仿真框圖如圖 3.2 所示。該模型總共包含 6 個積分模塊:1 個 demux 模塊、1 個常量模塊、1 個 simout 模塊、1 個 function 模塊和 2 個
mux 模塊。將 jiasudu.m 文件嵌入到 function 模塊中,常量模塊中設(shè)定常量值為-15。
圖 3.2 四連桿機(jī)構(gòu)運動學(xué)仿真 Simulink 模型
在該模型中,仍假定q2 =0,由之前的 M 文件可以得到w3 、w4 、q3 和q4 精確的初始值,也就是各積分器的初始條件,如表 3.1 所示:
表 3.1 勻加速仿真的初始條件
積分器
初始條件
q2 / rad
0
q3 / rad
0.76879354899197
q4 / rad
1.68712997846865
w2 / (rad / s)
628
w3 / (rad / s)
-294.375000000012
w4 / (rad / s)
-274.75000000226
3.4 程序運行結(jié)果
在得出所有積分器的初始條件后,我們將精確數(shù)值輸入到相應(yīng)的積分器其中,然后點擊“run”按鈕,進(jìn)行仿真。
在文件 sigansudu.slx 中,
輸入以下 MATLAB 命令,查看連桿 3 和連桿 4 的速度隨時間變化的圖像plot(tout,simout(:,3),tout,simout(:,4));
xlabel('時間(s)');
ylabel('角速度(rad/s)');
連桿 3 和連桿 4 的速度隨時間變化的圖像如圖 3.3 所示:
圖 3.3 四連桿機(jī)構(gòu)連桿 3 和連桿 4 的角速度圖像
在文件 jiasudu.slx 中
輸入以下 MATLAB 命令,查看連桿 3 和連桿 4 的角加速度隨時間變化的圖像plot(tout,simout(:,6),tout,simout(:,7));
xlabel('時間(s)');
ylabel('角加速度(rad/s)');
連桿 3 和連桿 4 的角加速度隨時間變化的圖像如圖 3.4 所示:
圖 3.4 四連桿機(jī)構(gòu)中連桿 3 和連桿 4 的角加速度隨時間變化的曲線
在文件 jiasudu.slx 中
輸入以下 MATLAB 命令,查看連桿 3 和連桿 4 的角速度隨時間變化的圖像plot(tout,simout(:,2),tout,simout(:,4));
xlabel('時間(s)');
ylabel('角速度(rad/s)');
連桿 3 和連桿 4 的角速度隨時間變化的圖像如圖 3.5 所示:
圖 3.5 四連桿機(jī)構(gòu)中連桿 3 和連桿 4 的角速度仿真結(jié)果
在文件 jiasudu.slx 中
輸入以下 MATLAB 命令,查看連桿 3 和連桿 4 的位置隨時間變化的圖像plot(tout,simout(:,3),tout,simout(:,5)); xlabel('時間(s)');
ylabel('位置(rad)');
連桿 3 和連桿 4 的位置隨時間變化的圖像如圖 3.6 所示:
圖 3.6 四連桿機(jī)構(gòu)中連桿 3 和連桿 4 的位置隨時間變化的曲線
4 曲柄滑塊機(jī)構(gòu)的 GUI 設(shè)計
4.1 GUI 概述
GUI 又稱圖形用戶界面,是一個人機(jī)交互界面,用戶可通過鼠標(biāo)、鍵盤等輸入設(shè)備來控制界面中的輸入框、按鈕等控件,從而完成選擇、調(diào)用、打開、啟動等命令和一些其他日常的任務(wù)。GUI 界面是一個標(biāo)準(zhǔn)化的界面,所有控件的操作方式都是固定不變的, 但是 GUI 界面可以滿足不同的情況,不再單一的運算某一種函數(shù),而是用戶根據(jù)不同的情況、來設(shè)定不同的輸入值,從而得到不同的結(jié)果。同時,GUI 界面輸出的結(jié)果大多可用圖形來表示,這樣就更加的直觀方便,具備很多其余界面無法媲美的功能,這是很多界面所比擬不了的。
GUI 界面的市場前景廣闊,由于 GUI 界面能給產(chǎn)品帶來很高的附加值,很多公司或機(jī)構(gòu)都在從事 GUI 的研究和設(shè)計,這對 GUI 的發(fā)展來說無疑是一個利好。在當(dāng)今社會, 計算機(jī)快速發(fā)展的主要成就之一就是 GUI 的廣泛應(yīng)用,對于一般用戶來講,GUI 的出現(xiàn)大大的方便了他們的使用,不需要進(jìn)行復(fù)雜繁瑣的操作,而是通過使用不同的控件,如菜單、按鈕等方式來進(jìn)行操作,降低了使用門檻,更加快捷、更加輕松,同時還能得到更為準(zhǔn)確的結(jié)果。
4.2 問題概況
曲柄滑塊機(jī)構(gòu)如圖 4.1 所示,OA=l1,AB=l2,曲柄 OA 以勻角速度ω轉(zhuǎn)動,并帶動連桿 AB 做平面運動,滑塊 B 沿水平方向運動,分析并模擬該機(jī)構(gòu)的運動:
圖 4.1 曲柄滑塊機(jī)構(gòu)運動學(xué)示意圖
4.3 數(shù)學(xué)分析
如圖 4.1 所示,規(guī)定φ為 OA 與 x 軸正方向的夾角,θ為 AB 與 x 軸正方向的夾角。以 AB 為研究對象,以 A 為基點、B 為動點,運用剛體平面運動的基點法進(jìn)行分析,其速度分解如圖 4.2 所示:
圖 4.2 剛體平面運動速度分解圖
根據(jù)基點法的速度合成定理有:
VB = VA +VBA
其中,VA = l1w ,VBA = l2q ,將式(4.1)向 x,y 方向投影并化簡得:
(4.1)
{
q = l1 cosf w
l2 cosq
VB =l2q sinq -l1w sinf
(4.2)
將式(4.2)對時間求導(dǎo)并化簡得:
q = l1 cosf sinqqw -l1 sinf cosqw2
{ l2 cos2 q
aB =
l1w
cos2 q
(cosfq -cosq cos(f -q )w )
(4.3)
設(shè) y1 = f ,y2 = f ,y3 = q ,y4 = q ,y5 = xB ,y6 = xB ,定義矩陣 y = [y1, y2 , y3 , y4 , y5 , y6 ]來分別保存這 6 個運動變量在各個時間點上的取值。這時我們選擇 ode 函數(shù)來求解 y 這個運動變量,首先需要求出 y 的微分形式和初值,根據(jù)式(4.3),y 的微分方程組如下:
? dt
2
ì dy1 = y
?
? dt
? dy2 = 0
?
? dt
? dy3 = y
? 4
(4.4)
dy l
í
? ?4 = ?1 (cos y sin y w y
- l sin y cos y w2 )
2 3
? dt l
?
cos2 y
1 3 4 1 1 3
? dy5 = y
? dt
?
? dy6 =
6
l1w
( y cos y - cos y cos( y - y )w )
3
?? dt
cos2 y
4 1 3 1 3
設(shè)初始時φ=0,θ=π,則可推導(dǎo)出 X
= l + l ,f = w ,q =- l1 w ,V = 0 ,則有
l
B 1 2 B
2
運動變量初值 y = é0,w,p , - l1 w, l
+ l , 0ù 。根據(jù)式(4.4),編寫出 ode 函數(shù)如圖 4.3 所
0 ê
? l2
示:
1 2 ú
?
圖4.3 ode函數(shù)程序
并將該文件保存為f7.m文件。
4.4 界面設(shè)計
設(shè)計 GUI 人機(jī)交互界面,我們可以大致的分為兩個步驟:
○ 1 人機(jī)交互界面的外觀設(shè)計。按照界面的需求,通過添加不同控件,如文本框、按鈕、按鈕組和對話框等控件,設(shè)計出一個簡潔大方、使用方便的人機(jī)交互界面。同時明確該交互界面的功能,即在交互界面上的操作會得到相應(yīng)怎樣的結(jié)果。
○ 2 交互界面的完成。在這一部分,用戶將根據(jù)在第一階段所確定的界面不同控件的
不同功能,為了達(dá)到界面的預(yù)期效果,編寫出能夠?qū)崿F(xiàn)相應(yīng)功能的函數(shù)代碼,確保這個圖形界面能實現(xiàn)預(yù)定的功能。
根據(jù)式(4.4)可知 OA=l1、AB=l2 和 OA 桿的角速度ω三個變量為運動參數(shù),在 GUI 界面左上的輸入?yún)^(qū)域設(shè)置 4 個編輯框分別來接受 l、a 和ω這 3 個運動參數(shù)和模擬時間。轉(zhuǎn)角φ在整個運動過程中單調(diào)遞增,所以設(shè)置了時間 t、φ為查詢條件。
進(jìn)入 GUI 界面初始環(huán)境,添加 13 個編輯文本框,12 個靜態(tài)文本框、6 個按鈕、3 個坐標(biāo)軸和 1 個分組控件,同時創(chuàng)建 Open、Print、Close 三個菜單。
在將所有所需的控件都添加到界面中后,拖動它們到相應(yīng)的位置,在調(diào)整好位置之后,設(shè)置各控件的屬性。最后的界面效果如圖 4.4 所示:
圖 4.4 用戶界面設(shè)計
“曲線”按鈕回調(diào)函數(shù):
設(shè)置 axes2 的 x 軸、y 軸分別為
(時間/s)、(位移(m)、速度(m/s)、加速度(m/s2))
在 axes2 上畫 B 點位移、速度、加速度曲線
、
4.5 主要代碼設(shè)計流程
為了滿足 GUI 的使用需要,在完成界面設(shè)計的基礎(chǔ)上,將相應(yīng)的代碼輸入到各自的回調(diào)函數(shù)中,可將主要控件的代碼設(shè)計歸納為下圖所示:
“計算”按鈕設(shè)計流程: “曲線”按鈕設(shè)計流程:
設(shè)置全局變量
申明全局變量
設(shè)置“曲線”、“動畫”、“保存數(shù)據(jù)”按鈕不可用
在 axes1 上畫 seta 角、角速度、角加速度曲線
將相關(guān)運動參數(shù)讀入變量
l1、l2 和 omega
設(shè)置 axes1 的 x 軸、y 軸分別為
(時間/s)、(轉(zhuǎn)角(rad)、角速度
(rad/s)、角加速度(rad/s2))
將模擬時間賦給 tfinal
標(biāo)記三條曲線為“seta 角”、“seta 角速度”、“seta 角加速度”
設(shè)置“曲線”、“動畫”、
“保存數(shù)據(jù)”按鈕可用
標(biāo)記三條曲線為“B 點位移”、“B 點速度”、“B 點加速度”
以時間為條件進(jìn)行查詢
設(shè)置“phi=”所對應(yīng)的編輯框為可用
設(shè)置“phi=”所對應(yīng)的編輯框為不可用
模擬機(jī)構(gòu)運動
設(shè)置時間查詢所對應(yīng)的編輯框為可用
設(shè)置模擬各桿運動的句柄
選擇了 dx1 單選框時(以時間為查詢對象),設(shè)置 f=1
設(shè)置模擬各點運動的句柄
“動畫”按鈕設(shè)計流程: 分組控件設(shè)計流程:
申明全局變量
申明全局變量
設(shè)定橫、縱坐標(biāo)軸的范圍
取得被選擇對象的 Tag 屬性值
選擇了 dx2 單選框時(以 phi 為查詢對象),設(shè)置 f=2
“查詢”按鈕設(shè)計流程:
申明全局變量
設(shè)置時間查詢所對應(yīng)的編輯框為不可用
計算線型差值的兩個系數(shù)
m,n
以φ為條件進(jìn)行查詢
計算線型差值的兩個系數(shù)
m,n
4.6 界面結(jié)果展示
在第一部分 OA 編輯框內(nèi)輸入 1、AB 編輯框內(nèi)輸入 3、角速度編輯框內(nèi)輸入 0.5,最后在模擬時間編輯框內(nèi)輸入 60,依次點擊按鈕計算、曲線和動畫,之后再查詢條件框內(nèi)輸入相應(yīng)的查詢條件,得到的仿真和查詢結(jié)果如圖 4.5 所示:
圖 4.5 用戶界面運行結(jié)果示意
在該 GUI 界面中,能夠十分清晰明了的看見θ角的各項參數(shù)和 B 點各項參數(shù)的變化情況,并且能夠通過查詢某一時刻的φ值,得到該時刻各項參數(shù)的瞬時值,有曲線圖的同時還有機(jī)構(gòu)運動的仿真動畫,十分的直觀方便,使用者可根據(jù)自己的不同需要進(jìn)行設(shè)計和仿真。
在 Simulink 仿真圖和 GUI 界面中,我們能發(fā)現(xiàn)相同的一點,就是兩種仿真形式, 都能夠直觀的看到各桿的運動參數(shù),無論是哪一種方法,都很方便,都能夠為四桿的仿真分析提供一個很好的辦法。
5 平面四桿機(jī)構(gòu)的優(yōu)化設(shè)計
5.1 四桿的優(yōu)化設(shè)計方法
機(jī)構(gòu)的優(yōu)化,就是在給定的機(jī)構(gòu)學(xué)、運動學(xué)、動力學(xué)的要求下,在滿足結(jié)構(gòu)設(shè)計要求的前提下,將其他因素的限制在一個合理的范圍內(nèi),并建立某種設(shè)計準(zhǔn)則(目標(biāo)函數(shù)),不斷調(diào)整設(shè)計參數(shù),進(jìn)行優(yōu)化計算,獲得最佳的設(shè)計方案。對于平面四桿機(jī)構(gòu)來講,優(yōu)化的基本問題是在設(shè)定好目標(biāo)函數(shù)的前提下,根據(jù)實際情況增加相應(yīng)的約束條件,最后再進(jìn)行優(yōu)化計算,目的是找到最優(yōu)的設(shè)計參數(shù),其步驟如圖 5.1 所示:
如不滿足, 跳回第一步
圖 5.1 優(yōu)化設(shè)計步驟
在進(jìn)行設(shè)計的時候,大多數(shù)的實際工程問題都可以用數(shù)學(xué)公式來建模描述,三個主要考慮的因素為設(shè)計變量、目標(biāo)函數(shù)和約束條件。也就是為了使得目標(biāo)函數(shù)能夠達(dá)到設(shè)計人員的要求,給機(jī)構(gòu)一些約束條件,從而再去尋找合適的設(shè)計變量值。
5.2 建立數(shù)學(xué)模型
首先,應(yīng)確定設(shè)計變量,在鉸鏈四桿機(jī)構(gòu)各桿長度不知道的情況下,由于機(jī)構(gòu)運動規(guī)律不變,所以設(shè)主動件 l1 的長度為 1,其余桿長便為 l1 的倍數(shù),這樣的目的是使桿長能夠按比例分布計算,簡化了計算和編程。
我們設(shè)定桿 1 即 l1 的初始角度為j0 ,桿 2 即 l2 的初始角度為φ0,分析可得:
? 0
ìj = arccos (l1 +l2 )2 +l42 -l32
2(l1 +l2 )l4
í (l +l )2 +l 2 -l 2
??f0 =arccos
1 2 4 3
2l3l4
(5.1)
從式子可以看出,設(shè)計變量只有 l2、l3 和 l4。故將該設(shè)計變量改寫為:
X = [x1; x2 ; x3 ] = [l2 ;l3;l4 ]
(5.2)
在進(jìn)行目標(biāo)函數(shù)的建立時,設(shè)計目標(biāo)定為追求從動件實際輸入角度系列值與期望實現(xiàn)函數(shù)的平方偏差之和最小,即:
n
2
min f ( X ) = ?(fEi -fi )
i=0
(5.3)
其中:n 將輸出角度等分,fEi 為期望輸出角度,fi 為實際輸出角度,分析兩個不同的輸出角度,我們可以得出一個關(guān)系式:
= {
f
p -ai -bi (0
收藏