2007年5月9日 星期三

第八次作業


由題目可知:
有一組四連桿,其桿長分別為r=[4 3 3 5],由桿2驅動,設第一固定桿角度theta1=0度; 角速度 td2=10rad/s; 角加速度tdd2=0 rad/s^2。

▲ 問題一:設桿2角度theta2=45度時,求各點之位置、速度與加速度為何?
▲ 問題二:繪出此四連桿之相關位置及標明各點之速度方向及大小(以程式為之)。
▲ 問題三:當桿2迴轉時,求出此組四連桿之限制角度,並繪出其位置(以程式為之)。
▲ 問題四:設theta2=[0:20:360],試繪出此組四連桿之重疊影像,解釋為何有些沒有值。
▲ 問題五:若將問題三考慮在內,只在可迴轉的範圍內迴轉,請問你能讓此組四連桿作成動畫方式迴轉嗎?


P8.1

function [data,form] = f4bar(r,theta1,theta2,td2,tdd2,mode,linkdrive)
分別輸入四桿長度,桿一的角度、角速度、角加速度及桿二的角度,mode=-1(閉合),driver=0(驅動桿為第二桿)


所以,由程式f4bar可得:
>> [data,form] = f4bar([4 3 3 5],0,45,10,0,-1,0)

各連桿之位置,由複數軸表示(單位:公尺)
桿一:0.0040
桿二:0.0021 + 0.0021i
桿三:0.0011 + 0.0028i
桿四:-0.0008 + 0.0049i

各連桿之速度
>> abs(data(:,5))'
ans = 0.0300 0.0248 0.3000 1.9220

各連桿之加速度
>> abs(data(:,6))'
ans = 3.0000 5.8635 0 0




P8.2

function [values]=drawlinks(r,th1,th2,mode,linkdrive)
分別輸入四桿長度,桿一及桿二的角度,mode=-1(閉合),driver=0(驅動桿為第二桿)


所以由drawlinks程式可得:
>> [values]=drawlinks([4 3 3 5],0,45,-1,0)



黑色為第一桿,藍色為第二桿,紅色為第三桿,綠色為第四桿



P8.3

function drawlimits(r,th1,sigma,driver)
輸入四桿長,桿一角度,sigma=-1(閉合),driver=0(驅動桿為第二桿)


由drawlimits程式可求出其限制角度,並繪出其圖示
>> drawlimits([4 3 3 5],0,-1,0)
Qstart = 28.9550
Qstop = 331.0450





P8.4

>>for i=0:20:360,drawlinks([4 3 3 5],0,i,-1,0); end;



四連桿之迴轉過程,能完全迴轉的情況仍然很少,有些時候無法獲得完整一圈的迴轉。亦即依葛列夫定理四連桿之第一或第二類類型決定,前者為完整迴轉型,後者則有迴轉角度之限制,這些限制因四連桿長度決定之。

在數學上,要可以迴轉,此兩不等式之條件必須能滿足:

r1 + r2 < r3 +r4
r1 -r2 > r3 - r4

在本題中,限制角分別為29°和331°,即表示此四連桿的迴轉範圍為29°~331°,所以Combination of links fail at degrees:0.0 , 20.0 , 340.0 , 360.0



P8.5


承上題,在可迴轉的範圍讓其呈現動畫迴轉
>>for i=29:10:331,drawlinks([4 3 3 5],0,i,-1,0);
pause(1);
clf;
end;




1 則留言:

不留白老人 提到...

8.2如何得到該結果應有說明
動畫部份未利用axis[]設定,座標會變動。