Google+ 機動學論壇(TALKING MECHANISMS): 第九次作業如果...

2007年5月17日 星期四

第九次作業如果...


第九次作業如果遇到以下情況,或許可以參考看看以下解決方法:
b94611001 歐陽太閒
以MATLAB 6.5+Windows XP為平臺

1.sldlink出不來:
由於以下程式碼在6.5中無法正常運作,注解起來即可(7.0尚未測試)
%f=@(num,ndg);
%round(num*10^ndg)/10^ndg; %取整數
%arg=f(arg,5);

2.sld_angle_limits結果怪怪的:
桿2為驅動桿時,程式跑出的結果顯然不符,檢查sld_angle_limits程式碼後發現其中缺少了r3≧r4≧0,r3+r4≧r2(即講義7.4.2)之情況
故在其中加入以下程式碼

elseif r3+r4>=r2 & r3>=0 & r3>=r4
Qstart=asin((r4-r3)/r2)
Qstop=pi- asin((r4-r3)/r2)

3.drawsldpaths螢幕會花掉:
由於程式在Matlab6.5下繪制alphapatch會導致畫面混亂,故修改程式,
去除在本分析中用不到的延伸部分,即:

patch('xdata',real(para(1:3)),'ydata',imag(para(1:3)),...
'facecolor','r','facealpha',0.6,'marker','o');hold on;
plot(para(2),'bo');

一點淺見,請各路高手指正