2007年6月16日 星期六

作業十二

B94611003

一.
(1)

一組標準全齒輪齒輪之徑節為8(亦可使用自設值),齒數分別為30T與48T,其工作壓力角為20度(可為14.5或25度,自選)。
試求其接觸線長度,與接觸比。

由老師製作的程式 contact_ratio
代入
徑節=8

齒輪齒數為30及48

工作壓力角為20度
由matlab執行程式後可得以下資料
[c_ratio, c_length,ad,pc,pb,r2,r3,ag]=contact_ratio(8,30,48,20)

>> [c_ratio, c_length,ad,pc,pb,r2,r3,ag]=contact_ratio(8,30,48,20)
c_ratio = 1.7005
c_length = 0.6275
ad = 0.1250
pc = 0.3927
pb = 0.3690
r2 = 3.7500
r3 = 6
ag =
10.4850 9.9211 20.4061
6.5532 6.2007 12.7538

其中
接觸比=1.7005
接觸長度= 0.6275 吋

(2)

兩齒輪之節圓、基圓直徑各為如何?請列式計算其結果。
第一齒輪節圓直徑為 30/8 = 3.75
第二齒輪節圓直徑為 48/8= 6
第一齒輪基圓直徑為3.75 * cos (20) = 3.523
第二齒輪基圓直徑為6 * cos(20) = 5.638吋


(3)

此組齒輪是否會產生干涉現象?試列式證明之。


(N2^2+2*N2*N3)sin^2(壓力角) > = 4
(N3^2+2*N3*N2)sin^2(壓力角) > = 4(1+N2)
代入數值

442.18 > 176
606.41 > 124

所以整個接合的過程皆不會有干涉發生

(4)

可否利用draw_gear.m繪出其接合情形,並繪出其動畫效果。
將draw_gear.m的程式稍作修改
加入第二齒輪的齒數參數 N2 ,以及旋轉角度參數 n

function [coords]=draw_gear(Dp,N,N2,phi,range,x0,y0,n)
% [coords]=draw_gear(Dp,N,phi,range,x0,y0)
% To draw a whole gear
% Inputs:
% Dp: Diametrical pitch
% N: no of teeth in a gear
% N2: no of teeth in second gear
% phi: pressure angle, degrees
% range: the section range to be drawn
% x0,y0: the location of the gear center
% Example [coords]=draw_gear(10,15,20,360,0,0)
% rotate direction

for m=1:360;
clf

[coords1]=draw_gear2(8,30,48,20,360,1,0,m)

pause(0.02)

end

作業十一

B94611003

一.
某凸輪開始時先在0-100∘區間滯留,然後提升後在200至260∘區間滯留,其高度(衝程)為5公分,其餘l由260∘至360∘則為返程。升

程採用等加速度運動,返程之運動型式自定。設刻度區間為10∘,試繪出其高度、速度及加速度與凸輪迴轉角度間之關係。

@設ψ凸輪之迴轉角度,

ψ=100-200∘為升程,轉折點為150∘,起點100∘,令θ = ψ-100,β = 100及h = 5代入公式,可得升程之第一段(θ=100-200∘)

y(θ)=2h(θ/β)²=2(5)[(ψ-100)/100]²

升程之第二段(θ=150-200∘)則仍以ψ-100=θ,β=100及h=5代入公式

y(θ)=h[1-2(1-θ/β)²]=(5)[1-2(1-{ψ-100}/100]²

返程之區間為260∘至360∘,轉折點為(260+360)/2=310∘,而β=360-260=100∘。設ψ-260=θ,代入返程一段的位移公式則第一區段(

θ=260-310∘):

y(θ)=h[1-2(θ/β)²]=(5)[1-2({ψ-260}/100]²


返程第二段之區間為310至360度,其轉折點與β均與第上列相同,代入返程二段的位移公式,可以得到:

y(θ)=2h[1-(θ/β)²]=2(5)[1-({ψ-260}/100]²


利用電腦程式運算升程與返程

計算升程
theta=100:10:200;
for i=1:length(theta)
[ss(i), vv(i), aa(i)]=parabol_cam(theta(i),100,100,1,5,0);
end;

計算返程
theta=260:10:360;
for i=1:length(theta)
[ss(i), vv(i), aa(i)]=parabol_cam(theta(i),260,100,-1,5,0);
end;




















二.
設凸輪之半徑為15公分,以順時針方向旋轉,其從動件為梢型,垂直接觸,長為10公分
從動件之運動係依照第二項之運動型式。試繪出此凸輪之工作曲線。

@
以function [x,y]=pincam(cth,r0,s,e,L,range,pattern,cw)
為基礎,淘汰不可處理的範圍直接使用pincam.m,依照上題的分析acccam.m計算結果,可得此凸輪之工作曲線‧
s :衝程
r0:為桿長
e :偏置量
L :桿長
range 也使用[100 200 260]
pattern代入[2 1]
cw 是凸輪轉動方向逆時鐘使用-1
偏至量為零
[x y]=pincam([0:10:360],15,5,0,10,[100 200 260],[2 1],-1)




















三.
你能讓此凸輪迴轉嗎?

@依照原設定資料和pincam函式繪製如下

在裡面多加入一迴圈

function [x,y]=pincam(cth,r0,s,e,L,range,pattern,cw)
for m=0:12:360
clf
ctheta=cth+m
figure(1);
clf;
th=ctheta*pi/180;
s0=sqrt(r0*r0-e*e);
for i=1:length(ctheta)
t=th(i)*cw;
A=[cos(t) -sin(t);sin(t) cos(t)];
[ym,yy,yyy]=dwell(cth(i),range,pattern);
x0=s0+ym*s;
Sx=[0 x0 x0+L;e e e];
X=A\Sx;
x(i)=X(1,2);y(i)=X(2,2);
line(X(1,1:2),X(2,1:2));
end
hold on;
plot([0 x],[0 y],'ro',x,y,'k-')
axis equal
axis ([-25 25 -25 30])
pause(0.02)
end

這樣座標軸每格12作一次紀錄
固定座標系統也會比較容易觀察
動畫繪製方程式

作業十

B94611003
@ 請思考速度與加速度的問題,當一桿以某特定點M等角速度迴轉時,其端點P之速度方向如何?其加速度方向如何?若該特定點M復以等速水平運動,則同一端點P 之速度與加速度方向會變為如何?若M點同時也有加速度,則點P會有何變化?若以此推理四連桿的運動,則點P與Q之速度與加速度方向會與桿一(固定桿)之兩 端點之關係如何?與我們前面的作業分析結果有無共通之處?(參看第六章之四連桿機構之運動分析)

加速度就是速度的變化率,假想一捷運進站減速,其速度表會以某個頻率變化,加速度可以顯示此頻率,

當一桿以某特定點M等角速度迴轉時,其端點P之速度方向在桿之垂直方向上。

與速度和離心力方向垂直概念類似,加速度的方向為向著另一端點 如有角加速度,則加速度方向為加速度與向心力的合力方向。

如M點等速移動,則依據相對運動,p點的速度向量要加上M點的速度向量,加完就是新的方向,加速度的方向則可以用為分的方式求出極接近兩點間的速度改變量,求出加速度的值和量
當p點在M點等速時的運動有M點移動方向的分率,則P點的加速度要用向心向量加上M向量在P方向上的分率。

若M也有加速度,就很有趣了P點所加的M速度向量隨時間而改變,加速度所要加成的M向量在P方向上的分率也隨時間而改變,就要知道當下的速度是多少..才能算出P的速度和方向 知道當下的加速度 才能算p加速度的值和量,基本上速度同向的話加分率 加速度同向的話也是加上分率

點P與Q跟之前的四連桿有許多相同之處,因在其原理中連接桿的前接點被前一個連桿控制著隨著前連桿而擺動,所以第二連桿的點會隨自己的前端點不同而有不同的擺動狀況如同前面幾個問題,設有一運動之曲柄滑塊連桿組合,設滑塊之偏置量為零,且在水平方向移動,試以此機構之曲桿長度及角度,以及連桿長

設連桿長: l
角速度: ω(rad/s)

則速度: ωl(m/s)
法線加速度: lω^2 (m/s^2)

設M等速移動: V(m/s)
P點的速度為 V + w X l , 其中 w X l為w和 l之外積
M點速度不影響該桿之角加速度

設M點加速移動: a(m/s^2)
P點的速度=v+at+iωl*exp(iωt+iθ)
P點的加速度=a-ω*ω*l exp(iωt+iθ)


@結桿之長度為輸入項,利用matlab寫出一程式計算在不同曲柄角度時,六點瞬心之對應位置。可順便探討六點瞬心與曲柄角間之關係。

偏置量為零就為零吧 這樣可以是同三連桿 然後滑塊在水平方向移動

輸入
slider_draw(8,8,0)


function slider_draw(R,L,e)

ang=linspace(0,360,100);
[d,theta3]=slider_solve(ang,R,L,e,1)
x=R*cosd(ang);
y=R*sind(ang);
for n=1:100
link_plot([0,x(n),d(n)],[0,y(n),e],2);
line([d(n)-3,d(n)+3,d(n)+3,d(n)-3,d(n)-3],[e-2,e-2,e+2,e+2,e-2]);
hold on
plot(0,0,'ro')
plot(x(n),y(n),'ro')
plot(d(n),e,'ro')
plot([0,0],[0,e-d(n)*(y(n)-e)/(x(n)-d(n))],'ro:')
plot([x(n),0],[y(n),e-d(n)*(y(n)-e)/(x(n)-d(n))],'ro:')
plot([x(n),d(n)],[y(n),y(n)*d(n)/x(n)],'ro:')
plot([d(n),d(n)],[0,y(n)*d(n)/x(n)],'ro:')
axis equal
axis ([-45 45 -30 30]);
pause(0.000001)
clf
end

作業九

B94611003

5/3 全程上課

一.
請就教科書中第四章第五節之偏置機構作另類分析,分析過程可採你所知的方式(包括講義中所列的方法)。運動中分以曲桿驅動及滑塊驅動的方式,並說明運動的 界限或範圍。設此機構之曲桿長Rcm , 連桿Lcm,滑塊之偏置量為10cm等數據作分析。其中,R=10+(學號末二碼),L=R+5 。


偏置機構主要建立在四連桿結構上,
因為偏置結構的其中一個運動結採用滑塊形式。
ㄧ般運動結雖只能傳遞一個自由度,
但還可在二維空間作動,
滑塊的作動比較特殊,
他必須在一個平面上,
與接地節點不太ㄧ樣,
它不必ㄧ定在地面的直線上運動,
我們可以給定空間中任何一個平滑直線代表滑塊的運動方向,

曲桿為固定桿旁之桿,之後的題目會討論到以此桿作動將如何導引四連桿機構作動,
偏置機構定義將連桿四垂直固定桿與滑塊運動方向,
也就是滑塊的運動方向與固定桿平行,
當連桿四也就是搖桿長度為零,
則固定桿直接作用於滑塊上,
滑塊也將在圓心作動,
以此為主要的軸心出發寫這道題目,
分析過程使用到很多角度的計算

曲桿R = 10 + 3 = 13 (cm)
連桿L = 13 + 5 = 18 (cm)
偏置量代表第四桿長 = 10 (cm)

有偏置量之四連桿其滑塊動作不在圓心,
所以可以想見偏置量的計算感覺

我的偏置量與 e = 10cm相當
曲桿不能完成360度的迴轉
利用slider_limit() 可以計算出衝程和界限距離













利用slider_solve()
輸入曲桿 連桿 連桿與水平線的夾角 偏置量
可以計算出任意曲桿角度之對應連結桿角度及水平距離

再利用slider_draw() 可做出動畫

function slider_draw(R,L,e)
theta1=slider_limit(R,L,e)
theta2=asind((L-e)/R)+180
ang=linspace(theta1,theta2,100);
d=slider_solve(ang,R,L,e,1)

x=R*cosd(ang)
y=R*sind(ang)
for n=1:100
line([0,x(n),d(n)],[0,y(n),e])
line([d(n)-3,d(n)+3,d(n)+3,d(n)-3,d(n)-3],[e-2,e-2,e+2,e+2,e-2])
axis equal
axis ([-120 120 -120 120])
pause(0.01)
clf
end
ang=linspace(theta2,180-theta1,100);
d=slider_solve(ang,R,L,e,-1)
x=R*cosd(ang)
y=R*sind(ang)
for n=1:100
line([0,x(n),d(n)],[0,y(n),e])
line([d(n)-3,d(n)+3,d(n)+3,d(n)-3,d(n)-3],[e-2,e-2,e+2,e+2,e-2])
axis equal
axis ([-120 120 -120 120])
pause(0.01)
clf
end

作業八

B94611003

一.
設桿2角度theta2=45度時,求各點之位置、速度與加速度為何?

本題採用講義上之f4bar函式
分析出四連趕各桿位置,速度,加速度,然後取值

以下為函式的內容:

function [data,form] = f4bar(r,theta1,theta2,td2,tdd2,mode,linkdrive)
%輸入參數為
%r= [r1 r2 r3 r4]: 各桿之長度
%theta1= 桿一之水平角度
%theta2= 驅動桿(可為桿2或3)之水平角度
%td2= 驅動桿之角速度(rad/sec)
%tdd2= 驅動桿之角加速度(rad/sec^2)
%mode= +1 or -1 組合模數,負值表閉合型;正值表分支型
%linkdrive = 0表示驅動桿為第二桿; 1表示驅動桿為第三桿
if nargin<7,linkdrive=0;end mode="1;end" data="zeros(4,6);" linkdrive="=" r="[r(1)" rr="r.*r;d2g=" t1="theta(1);tx=" s1="sin(t1);c1=" sx="sin(tx);cx=" a="2*r(1)*r(4)*c1-2*r(2)*r(4)*cx;" c="rr(1)+rr(2)+rr(4)-rr(3)-2*r(1)*r(2)*(c1*cx+s1*sx);" b="2*r(1)*r(4)*s1-2*r(2)*r(4)*sx;" pos="B*B-C*C+A*A;">=0,
form=1;
% Check for the denominator equal to zero
if abs(C-A)>=1e-5
t4=2*atan((-B+mode*sqrt(pos))/(C-A));
s4=sin(t4);c4=cos(t4);
t3=atan2((r(1)*s1+r(4)*s4-r(2)*sx),(r(1)*c1+r(4)*c4-r(2)*cx));
s3=sin(t3);c3=cos(t3);
else
% If the denominator is zero, compute theta(3) first
A=-2*r(1)*r(3)*c1+2*r(2)*r(3)*cx;
B=-2*r(1)*r(3)*s1+2*r(2)*r(3)*sx;
C=rr(1)+rr(2)+rr(3)-rr(4)-2*r(1)*r(2)*(c1*cx+s1*sx);
pos=B*B-C*C+A*A;
if pos>=0,
t3=2*atan((-B-mode*sqrt(pos))/(C-A));
s3=sin(t3); c3=cos(t3);
t4=atan2((-r(1)*s1+r(3)*s3+r(2)*sx),...
(-r(1)*c1+r(3)*c3+r(2)*cx));
s4=sin(t4);c4=cos(t4);
end
end
theta(3)=t3;theta(4)=t4;
%velocity calculation
td(2)=td2;
AM=[-r(3)*s3, r(4)*s4; -r(3)*c3, r(4)*c4];
BM=[r(2)*td(2)*sx;r(2)*td(2)*cx];
CM=AM\BM;
td(3)=CM(1);td(4)=CM(2);

%acceleration calculation

tdd(2)=tdd2;
BM=[r(2)*tdd(2)*sx+r(2)*td(2)*td(2)*cx+r(3)*td(3)*td(3)*c3-...
r(4)*td(4)*td(4)*c4;r(2)*tdd(2)*cx-r(2)*td(2)*td(2)*sx-...
r(3)*td(3)*td(3)*s3+r(4)*td(4)*td(4)*s4];
CM=AM\BM;
tdd(3)=CM(1);tdd(4)=CM(2);
%store results in array data
% coordinates of P and Q
if linkdrive==1,
c2=c3;c3=cx;s2=s3;s3=sx;
r(2:3)=[r(3) r(2)];theta(2:3)=[theta(3) theta(2)];
td(2:3)=[td(3) td(2)];tdd(2:3)=[tdd(3) tdd(2)];
else
c2=cx;s2=sx;
end
for j=1:4,
data(j,1:4)=[r(j)*exp(i*theta(j)) theta(j)/d2g td(j) tdd(j)] ;
end % position vectors
data(1,5)=r(2)*td(2)*exp(i*theta(2));%velocity for point Q
data(2,5)=r(4)*td(4)*exp(i*theta(4));%velocity for point P
data(3,5)=r(2)*(i*tdd(2)-td(2)*td(2))*exp(i*theta(2));%acc of Q
data(4,5)=r(4)*(i*tdd(4)-td(4)*td(4))*exp(i*theta(4));%acc of P
data(1,6)=data(2,1);%position of Q, again
data(2,6)=data(1,1)+data(4,1);% position of P

%find the accelerations
else
form=0;
if linkdrive==1,
r=[r(1) r(3) r(2) r(4)];
for j=1:4, data(j,1)=r(j).*exp(i*theta(j));end % positions
end
end



%給定條件執行程式
>> [data,form]=f4bar([4 3 3 5],0,45,10,0,-1,0)

data =

1.0e+003 *

Columns 1 through 5

0.0040 0 0 0 0.0212 + 0.0212i
0.0021 + 0.0021i 0.0450 0.0100 0 0.0041 - 0.0245i
0.0011 + 0.0028i 0.0695 -0.0163 0.4914 -0.2121 - 0.2121i
-0.0008 + 0.0049i 0.0995 -0.0050 0.3836 -1.8712 - 0.4391i

Column 6

0.0021 + 0.0021i
0.0032 + 0.0049i
0
0

function dyad_draw([4 3 3 5],[0 45 69 99],[0 10 16.3 5],[0 0 491.4 383.6])

%column1: 各桿之位置向量(複數型式)
%column2: 各桿之水平夾角
%column3: 各桿之角速度
%column4: 各桿之角加速度
%column5-1: Q點之速度
%column5-2: P點之速度
%column5-3: Q點之加速度
%column5-4: P點之加速度
%column6-1: Q點之位置向量
%column6-2: P點之位置向量

form =

1

%form=1 表示此四連桿可構成,若為0 則表不行


由程式結果得到
O點位置: 0 + 0i
Q點位置: 0.0021 + 0.0021i
P點位置: 0.0032 + 0.0049i
R點位置: 0.0040 + 0i(同桿一)


>> abs(data(:,5))

ans =

1.0e+003 *

0.0300
0.0248
0.3000
1.9220

又對column5取絕對值後
Q點速度為0.03
P點速度為0.0248
R點和O點速度為0(因桿1為固定桿)
(速度單位為: 長度/時間)

同理
Q點加速度為0.3
p點加速度為1.9220
R點和O點加速度為0
(加速度為: 長度/時間^2)

第一桿:0.0040
第二桿:0.0021 + 0.0021i
第三桿:0.0011 + 0.0028i
第四桿:-0.0008 + 0.0049i
速度如下:
第一桿:0(rad/s)
第二桿:10.0000(rad/s)
第三桿:16.2681(rad/s)
第四桿:4.9677(rad/s)
加速度:
第一桿:0(rad/s*s)
第二桿:0(rad/s*s)
第三桿:491.4428(rad/s*s)
第四桿:383.6120(rad/s*s)

二.
繪出此四連桿之相關位置及標明各點之速度方向及大小(以程式為之)。

本題使用講義上function drawlinks函式
繪出給定條件drawlinks([4 3 3 5],0,45,1,0)之四連桿

以下為函式內容:
function [values]=drawlinks(r,th1,th2,mode,linkdrive)
%function drawlinks(r,th1,th2,mode,linkdrive)
%draw the positions of four-bar links
%call f4bar funcion
%r: row vector for four links
%th1: frame angle
%th2: crank angle or couple angle
%mode: assembly mode
%linkdrive: 0 for crank, 1 for coupler
%clf;
if nargin<5,linkdrive=0;end mode="1;end" rr="values(:,1);" rx="real(rr(:,1));rx(4)=" ry="imag(rr(:,1));ry(4)=" b="=" linkdrive="=">> axis([-1 5 -1 5]);
axis equal;
drawlinks([4 3 3 5],0,45,-1,0)
%在顯示畫面上標明三點速度方向及大小
gtext ('速度方向0.0212 + 0.0212i 大小0.03)
gtext ('速度方向0.0041 - 0.0245i 大小0.0248)
gtext ('速度方向0 + 0 大小0')
gtext ('速度方向0 + 0 大小0')


ans =

Columns 1 through 5

4.0000 0 0 0 0
2.1213 + 2.1213i 45.0000 0 0 0
1.0513 + 2.8098i 69.4856 0 0 0
-0.8274 + 4.9311i 99.5246 0 0 0

Column 6

2.1213 + 2.1213i
3.1726 + 4.9311i
0
0

%Q速度方向0.0212 + 0.0212i 大小0.03
%P速度方向0.0041 - 0.0245i 大小0.0248
%R及0速度方向0 + 0 大小0

三.
當桿2迴轉時,求出此組四連桿之限制角度,並繪出其位置(以程式為之)。

老師第六章講義function drawlimits在角度限制上的運用下
求出當桿2迴轉時,此組四連桿之限制角度
再運用fb_angle_limits求之

function [theta]=deadangle(r,mode)
% Finding the max. and min. angles of link 4.
% Input: r: linkage matrix.
% Output:theta:angles of link 2 & link 4.
% Examples:
rr=r.*r;d2g=pi/180;if nargin<2,mode=1;end ph1="acos(((r(2)-r(3))^2-rr(1)-rr(4))/(2*r(1)*r(4)));" ph2="acos(((r(2)+r(3))^2-rr(1)-rr(4))/(2*r(1)*r(4)));" th1="acos((rr(1)+rr(2)-(r(3)+r(4))^2)/(2*r(1)*r(2)));" th2="acos((rr(1)+rr(2)-(r(3)-r(4))^2)/(2*r(1)*r(2)));" th1="0;end" th2="2*pi;end">th2,temp=th1;th1=th2;th2=temp;end
if th1==pi&th2==2*pi,th1=0;end
if th1==0&th2==pi,th2=2*pi;end
if th1==0&th2==0,th2=2*pi;end
if ~isreal(ph1),ph1=0;end
if ~isreal(ph2),ph2=2*pi;end
if ph1>ph2,temp=ph1;ph1=ph2;ph2=temp;end
if ph1==0&ph2==0,ph2=2*pi;end
theta=[th1,th2;ph1,ph2]/d2g;


將theta=deadangle([4 3 3 5])執行後
可以得到:
theta =

0 28.9550
0 97.1808

上死點:















四.

這三個角度是無法繪製出來的,因theta2只能介於28.9550與97.1808之間,

三個角度都超過死點,所以東西出不來。















五.

需要用到下列函式(drawlinkscg.m)

function [values]=drawlinks(r,th1,th2,mode,linkdrive)
if nargin<5,linkdrive=0;end
if nargin<4,mode=1;end
[values b]=f4bar(r,th1,th2,0,0,mode,linkdrive);
rr=values(:,1);
rr(3,1)=rr(1,1)+rr(4,1);
rx=real(rr(:,1));rx(4)=0;
ry=imag(rr(:,1));ry(4)=0;
if b==1
plot([0 rx(1)],[0 ry(1)],'k-','LineWidth',4);
hold on;
if linkdrive==0
plot([0 rx(2)],[0 ry(2)],'b-','LineWidth',1.5);
plot([rx(2) rx(3)],[ry(2) ry(3)],'r-','LineWidth',2);
else
plot([0 rx(2)],[0 ry(2)],'r-','LineWidth',2);
plot([rx(2) rx(3)],[ry(2) ry(3)],'b-','LineWidth',1.5);
end
plot([rx(1) rx(3)],[ry(1) ry(3)],'g-','LineWidth',1.5);
plot(rx,ry,'bo');
text(0,0,' O');text(rx(1),ry(1),' R');
text(rx(2),ry(2),' P');text(rx(3),ry(3),' Q');
else
fprintf('Combination of links fail at degrees %6.1f\n',th2);
end
title('Hit Ctrl+C to stop');
axis([-5 5 -5 5]);
grid on

以主程式來呼叫
閉合型
for t=1:6
for i=29:331
clf;drawlinkscg([4 3 3 5],0,i,-1,0);
pause(0.0000001);
end;for i=29:331
clf;drawlinkscg([4 3 3 5],0,360-i,-1,0);
pause(0.0000001);
end;

分支型
for t=1:6
for i=29:331
clf;drawlinkscg([4 3 3 5],0,i,1,0);
pause(0.0000001);
end;for i=29:331
clf;drawlinkscg([4 3 3 5],0,360-i,1,0);
pause(0.0000001);
end;

作業七

B94611003

一.
第一秒


















第二秒:



















第三秒:



















第四秒:



















第五秒:




















二.

第一桿的
(1)速度 : http://homepage.ntu.edu.tw/~b94611003/7/1v.jpg
(2)加速度 : http://homepage.ntu.edu.tw/~b94611003/7/1a.jpg

第二桿的
(1)速度 : http://homepage.ntu.edu.tw/~b94611003/7/2v.jpg
(2)加速度 : http://homepage.ntu.edu.tw/~b94611003/7/2a.jpg

第三桿的
(1)速度 : http://homepage.ntu.edu.tw/~b94611003/7/3v.jpg
(2)加速度 : http://homepage.ntu.edu.tw/~b94611003/7/3a.jpg


三.

動畫: http://homepage.ntu.edu.tw/~b94611003/7/flash.html


本次作業的函式:

function dyad_run(rho,theta,td,tdd,time)
set(gca,'xlim',[0 100],'ylim',[0 100],...
'NextPlot','replace','Visible','off')
tdT=td;
thetaT=theta;
thetaTEMP=theta;
mov = avifile('walk.avi')
for n=1:length(time)
for p=1:length(rho)
tdT(p)=td(p)+tdd(p)*(n-1);
thetaT(p)=theta(p)+td(p)*(n-1)+0.5*tdd(p)*(n-1)^2;
end
[v,a]=dyad_draw(rho,thetaT,tdT,tdd)
if n > 1
for q=1:length(rho)
vv(q,n-1)=v(q);
aa(q,n-1)=a(q);
end
end
pause(1)
F = getframe(gca);
mov = addframe(mov,F);
end
mov = close(mov);

作業六

B94611003

一.
(1)
總共有12個連桿 14個節點

圖:




















(2)
 M=3*(N-J-1)+F
 N=12 J=15 
 F為12個旋轉結+1個滑動結+2個滑槽
 F=12*1+1*1+2*2=17
 M=-12+17=5 自由度為5

(3)
函式為
gruebler(12,[12 1 2])
自由度為5

(4)
滑槽因有轉動與滑動兩動作,計算自由度要多2。
滑塊因會與地面產生滑動,使之多出了一滑動結。


二.

圖:

















(1)
c,e,f為球節,自由度3
a,b為旋轉節,自由度1
d為圓柱節,自由度2

(2)
 m=6(N-J-1)+F=6(6-6-1)+13
 m=7 其自由度為7
(3)
 函式為
 gruebler(6,[2 0 0 3 1])
 自由度為7
(4)
 本題是有惰性自由度的,經觀察,4號桿與6號桿可以自轉,因此本題的惰性自由度為2,總自由度為7-2=5
 惰性自由度對系統的影響為總自由度的減少,因為可以自轉的軸在決定系統外型時,其自轉角度並不影響系統之外型。


三.
(1)
 在一四連桿組中,最短桿與最長桿之和小於其他兩桿之和時,則至少有一桿為可旋轉桿。稱為葛拉索第一類型
 相對的,最短桿與最長桿之和大於其他兩桿之和時,所有的活動連桿必為搖桿(三搖桿機構),為葛拉索第二類型

(2)
 第一組中,7+4=6+5,屬葛拉索第三類桿,或稱中立連桿組
 函式如下
grashof(1,[7 4 6 5])
ans =Neutral Linkage

 第二組中,8+3.6>5.1+4.1,屬於葛拉索第二類桿
 函式如下
grashof(1,[8 3.6 5.1 4.1])
ans =Non-Grashof Linkage

 第三組中,6.6+3.1<5.4+4.7,屬葛拉索第一類桿
 至少有一桿為曲柄,其接地桿鄰近最短桿,故為曲柄搖桿型
 函式
grashof(1,[5.4 3.1 6.6 4.7])
ans =Crank-Rocker Linkage

(3)
 觀察以上三組數據,僅第二組四連桿為非葛拉索型,若要將其改成葛拉索型機構,可考慮將最長桿火最短桿減短,或將第二和第三長的連桿長度增加,以達成葛拉索機構最長與 最短之和小於另外兩桿之和的要求。