2007年3月24日 星期六

機動學 作業三

作業三 b94611042 王志豪

p3.1
手臂、手肘與關節之對應位置與軌跡
程式如下:
for n=25:5:50
th1=acosd((n.^2+26.2^2+29.2^2-33.6^2)./(2*sqrt(n.^2+26.2^2)*29.2))
L=sqrt(n.^2+26.2^2)
th2=180-atand(X/28.2)-th1
Y=sind(th2)*29.2
X=cosd(th2)*29.2+26.2
linkshape ([26.2,0],[X,Y])
linkshape ([0,n],[X,Y])
end
(2)
約莫50公分
(3)
由於考慮到肩膀的寬度,所以最大伸長量大約是手臂手肘的總長微傾個角度後,所得之的最大垂直高度,然後用Matlab大約就可以計算出來,並描繪其軌跡.
當然,最基本的假設自然是要根植於手是只能與頭在同一平面上做轉動,不可以自由地做三維的轉動.

p3.2
(1)旋轉對
旋轉隊又稱R型對,是平面低對最常用的方式.而這種對偶僅僅只能做迴轉,不能平移,只有一個自由度,日常生活常見的例子,有門閂.軸承.插梢.
1.門閂
最基本的門閂
各式門閂
2.軸承
常見的軸承
拆開看單一的軸承
3.插梢
各式插梢
用於滅火器的插梢
(2)高對與低對運動結
1.低對活動結
二行程汽油機工作原理(活塞)
齒輪(螺旋對)
2.高對運動結
滾珠軸承的介紹
滾珠軸承

href="http://www.kotec.com.tw/" >滾柱傳動減速機

德國FEV展出以滾柱軸承為主軸承的引擎
型式閉合結或外力閉合結
1. 型式閉合結
腳踏車的連桿系統
車子的多連桿系統
2.外力閉合結
單凸輪軸引擎
凸輪離合器

p3.3
(1)
人與圓圈結合的轉動軌跡圖
(2)
同上
程式如下:
hold on;
H='請輸入你的身高,單位是用公分:';
W=input(H); %輸入值
W;
x1=[0 W*cos(atan(0.5))/2]; %繪人
y1=[0 W*sin(atan(0.5))/2];
line(x1,y1)
x2=[0 -W*cos(atan(0.5))/2];
y2=[0 W*sin(atan(0.5))/2];
line(x2,y2)
x3=[-2*W/12 2*W/12 2*W/12 -2*W/12 -2*W/12];
y3=[2*W/12 2*W/12 6*W/12 6*W/12 2*W/12];
line(x3,y3)
x4=[0 0];
y4=[2*W/12 -2*W/12];
line(x4,y4)
x5=[0 W/4];
y5=[-2*W/12 -5*W/12];
line(x5,y5)
x6=[0 -W/4];
y6=[-2*W/12 -5*W/12];
line(x6,y6)
for n=1:1:12;
x11=x3*cosd(30*n)+y3*sind(30*n);
y11=-x3*sind(30*n)+y3*cosd(30*n);
x12= x11+((pi*n/6)*(W/2));
line(x12,y11)
x13=x1*cosd(30*n)+y1*sind(30*n);
y13=-x1*sind(30*n)+y1*cosd(30*n);
x14= x13+((pi*n/6)*(W/2));
line(x14,y13)
x15=x2*cosd(30*n)+y2*sind(30*n);
y15=-x2*sind(30*n)+y2*cosd(30*n);
x16= x15+((pi*n/6)*(W/2));
line(x16,y15)
x17=x4*cosd(30*n)+y4*sind(30*n);
y17=-x4*sind(30*n)+y4*cosd(30*n);
x18= x17+((pi*n/6)*(W/2));
line(x18,y17)
x19=x5*cosd(30*n)+y5*sind(30*n);
y19=-x5*sind(30*n)+y5*cosd(30*n);
x20= x19+((pi*n/6)*(W/2));
line(x20,y19)
x21=x6*cosd(30*n)+y6*sind(30*n);
y21=-x6*sind(30*n)+y6*cosd(30*n);
x22= x21+((pi*n/6)*(W/2));
line(x22,y21)

axis equal; %將水平與垂直座標之單位設為一致

end
for i=1:1:360;
x0=(W/2)*cos(i);
y0=(W/2)*sin(i);
line(x0,y0)
hold on;
end; %畫圓
for n=1:1:12;
for i=1:1:360
x0=(W/2)*cos(i)+(pi/6)*(W/2)*n;
y0=(W/2)*sin(i);
line(x0,y0)
end; %每30度轉一次
end;

沒有留言: