2007年6月13日 星期三

動畫已上傳

之前因為未搞清楚動畫如何上傳

所以各作業的動畫皆未附上

現已補上

在各作業處

歡迎指教

2007年6月12日 星期二

第十三次作業

第一題

試設計一組複式齒輪,使其轉速比為125(請說明思考步驟及結果)。

ans:

因為轉速比最好是在10以下,所以我先將125開根號

(125)^1/2=11.18 → 超過10,所以我將125取其平方根

(125)^1/3=5 → 在十以內,因此我取其為轉速比

若最小齒輪取齒數=10;

所以我可以取齒數序分別為10:50; 10:50; 10:50

構成一組複式齒輪組

因為開立方出來的值為整數,所以理論上沒有誤差值




第二題

請指出本學期中你自己最感得意的一次作業(請說明其原因,且該作業必須在自己的部落格內)

ans:
這一學期下來,最令我滿意的ㄧ次作業是第十二次

並不是因為所花的時間最多(第五次作業花的時間最多,從早上八點到晚上十二點,扣掉吃飯與休息時間,約花了十二小時)

主要是因為這次作業的最後一題

製作此題的動畫,雖然可運用老師已做好的move2_gear.m 直接輸入參數即得動畫

不過若是運用draw_gear.m的程式來修改的話,

則必須花上ㄧ些工夫

而我就是採用後者

晚上在總圖地下自習室花了不少時間

尤其是要將兩個齒輪對上的部分

更是讓我傷透腦筋

雖然最後發現其實很簡單

有點惱自己為什麼這麼不聰明

不過最後看到齒輪在自己眼前順暢的轉動還是很有成就感

2007年6月6日 星期三

第十二次作業

我是劉昶志

我5/31有來上課

第一題

一組標準全齒輪齒輪之徑節為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 =

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 吋

又改代入

徑節=8

齒輪齒數為30及48

工作壓力角為25度

由matlab執行程式後可得以下資料
>> [c_ratio, c_length,ad,pc,pb,r2,r3,ag]=contact_ratio(4,30,48,25)

c_ratio =

1.5028


c_length =

1.0697


ad =

0.2500


pc =

0.7854


pb =

0.7118


r2 =

7.5000


r3 =

12


ag =

9.1921 8.8419 18.0340
5.7450 5.5262 11.2712


其中

接觸比= 1.5028
接觸長度=1.0697吋

第二題

兩齒輪之節圓、基圓直徑各為如何?請列式計算其結果。

第一齒輪節圓直徑為 30/8 = 3.75

第二齒輪節圓直徑為 48/8= 6

第一齒輪基圓直徑為3.75 * cos (20) = 3.523

第二齒輪基圓直徑為6 * cos(20) = 5.638吋



第三題

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


(N2^2+2*N2*N3)sin^2(壓力角) > = 4

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

代入數值

442.18 > 176

606.41 > 124

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


第四題

可否利用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

[coord,theta,rp,rb]=tooth(Dp,N,phi);
coords=[];i=0;
while i < range
coord1=rotate2D(coord,-i-n*theta/3,x0,y0);
coords=[coords;coord1];
i=i+theta;
end
plot(coords(:,1),coords(:,2));hold on;
[coord]=bushing(rp/8,x0,y0);
plot(coord(:,1),coord(:,2),'b-');
[coord]=bushing(-rp,x0,y0);
plot(coord(:,1),coord(:,2),'r:');
[coord]=bushing(-rb,x0,y0);
plot(coord(:,1),coord(:,2),'b:');

%下面為第二齒輪的部份

[coord,theta,rp2,rb]=tooth(Dp,N2,phi);
coords=[];i=0;
while i < range
coord1=rotate2D(coord,-i+n*theta/3+180+theta/2,x0+rp+rp2,y0);

%“-i+n*theta/3+180+theta/2”是為了使齒輪卡緊

coords=[coords;coord1];
i=i+theta;
end
plot(coords(:,1),coords(:,2));hold on;
[coord]=bushing(rp2/8,x0+rp+rp2,y0);
plot(coord(:,1),coord(:,2),'b-');
[coord]=bushing(-rp2,x0+rp+rp2,y0);
plot(coord(:,1),coord(:,2),'r:');
[coord]=bushing(-rb,x0+rp+rp2,y0);
plot(coord(:,1),coord(:,2),'b:');

再寫出主程式

for m=1:360;

clf

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

pause(0.02)

end

可做出以下動畫

2007年5月30日 星期三

第十一次作業 第三題

第三題

你能讓此凸輪迴轉嗎?

ans:
可以,只要將function pincam稍作修改

以下是可轉動的function pincam5,由正上方固定的紅色桿

可清晰看出在凸輪旋轉時,桿位置的變化


function [x,y]=pincam5(cth,r0,s,e,L,range,pattern,cw)
%Find the pin type cam with an offsect e
%Inputs:
% cth:angle of cam, degrees
% r0:radius of base circle
% e:offset
% s:stroke
% L:length of pin
% cw:rotation direction of cam(-counterclockwise,+clockwise
%pattern = denote the type of motion used(a 3 element-row matrix)
% 1:uniform 2:parabolic 3:simple harmonic 4: cycloidal
% 5:polynomial motion
% example [4 3]
%range =the degrees the specific motion starts, eg.[90 180 240]
% Example: [x y]=pincam([10 60],5,2,1,10,[90 180 240],[4 3],-1)
figure(1);
n=0;
for mm=1:10:360;
n=n+1;
m=mm*pi/180;
clf;
th=cth*pi/180;
s0=sqrt(r0*r0-e*e);
for i=1:length(cth)
t=th(i)*cw;
A=[cos(t-m) -sin(t-m);sin(t-m) cos(t-m)];
[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));
%line(X(1,2:3),X(2,2:3),'linewidth',3,'color','red')
end
[yw,yyw,yyyw]=dwell(cth,range,pattern)
y1=yw*s+r0;
y2=yw*s+r0+L;
line([0 0],[y1(n) y2(n)],'linewidth',3,'color','red')
hold on;
plot([0 x],[0 y],'ro',x,y,'k-')
axis ([-50 50 -50 50])
pause(0.05)
end

所繪出的動畫如下

第十ㄧ次作業 第二題

第二題

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

ans:
由function pincam可得此題運動圖形

1.假設衝程為20

pincam(1:10:360,15,20,0,10,[100 200 260],[2 1],-1)


2.假設衝程為20,偏致量為5

pincam(1:10:360,15,20,5,10,[100 200 260],[2 1],-1)

第十ㄧ次作業 第一題

第ㄧ題

某凸輪開始時先在0-100°區間滯留,然後提升後在200至260°區間滯留,其高度(衝程)為5公分,
其餘l由260°至360°則為返程。升程採用等加速度運動,返程之運動型式自定。設刻度區間為10°,
試繪出其高度、速度及加速度與凸輪迴轉角度間之關係。

ans:

依照function plot_Dwell,再帶入本題題目所給的條件,由於反成的運動型是自由,
所以我們可得以下五個運動關係圖

1.返程為等速度運動

plot_dwell(0:10:360,5,[2 1],[100 200 260])



2.返程為拋物線運動〈等加速度運動〉

plot_dwell(0:10:360,5,[2 2],[100 200 260])



3.返程為簡諧運動

plot_dwell(0:10:360,5,[2 3],[100 200 260])



4.返程為擺線運動

plot_dwell(0:10:360,5,[2 4],[100 200 260])



5.返程為多項式運動

plot_dwell(0:10:360,5,[2 5],[100 200 260])

2007年5月22日 星期二

第十次作業第一題


由運動學的定理可知

若將整個運動平面視為一負數平面

則P點的速度=iωX*exp(iωt+iθ)

P點的加速度=-ω*ω*Xexp(iωt+iθ)


若使M有ㄧ速度V及一加速度a

則在t秒時,

P點的速度=v+at+iωX*exp(iωt+iθ)

P點的加速度=a-ω*ω*Xexp(iωt+iθ)


以上面的結論推論四連桿的運動情形

因為一號桿的運動速度為零

所以M點的速度也為零

若以二號桿驅動

則二號桿的兩端P Q兩點相對於M的運動關係

應與上面的結論同