版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p> 課程名稱 機(jī)械原理、 機(jī)械設(shè)計</p><p> 課題名稱 函數(shù)機(jī)構(gòu)的設(shè)計</p><p><b> 一、課程設(shè)計的任務(wù)</b></p><p> 設(shè)計的鉸鏈四桿機(jī)構(gòu)兩連架桿對應(yīng)角位移關(guān)系近似實現(xiàn)函數(shù):</p><p> y=lg(x) (1≤x≤2)</p><
2、;p> 要求:設(shè)計計算對應(yīng)三個結(jié)點(三對角位移、)的鉸鏈四桿機(jī)構(gòu)。</p><p> 繪表、統(tǒng)計同組同學(xué)的計算結(jié)果,并計算對應(yīng)每個主動角時的從動角的實際角位移,計算擬合誤差SUM。</p><p> 分析如何利用擬合誤差法確定同一組同學(xué)中的最佳設(shè)計方案。</p><p> 編制用計算機(jī)設(shè)計計算和優(yōu)化時的程序框圖。</p><p>
3、;<b> 設(shè)計數(shù)據(jù)分配:</b></p><p><b> 二、課程設(shè)計的內(nèi)容</b></p><p><b> 1、求、對應(yīng)關(guān)系:</b></p><p> 設(shè)計鉸鏈四桿機(jī)構(gòu)來實現(xiàn)給定函數(shù)時,首要的問題是要按一定的比例關(guān)系,把給定函數(shù)y=f(x)轉(zhuǎn)化成兩連架桿對應(yīng)的角位移關(guān)系函數(shù)=(),其
4、中—主動桿角位移;—從動桿角位移。</p><p> 設(shè)給定函數(shù)y=f(x)的自變量變化范圍為≤x≤,對應(yīng)函數(shù)y=f(x)的變化范圍為≤y≤。并假定對應(yīng)自變量x的指定區(qū)間[,],主動構(gòu)件和從動構(gòu)件的轉(zhuǎn)角區(qū)間分別為[,],[,]。</p><p> 則由上可知:=1,=2 對應(yīng)函數(shù)y=f(x)的變化范圍為:0≤y≤lg2,則=0,=lg2</p><p> 計算
5、自變量x與主動角比例因子—,得:</p><p> =(—)/(—)=(195—80)/(2—1)=115</p><p> 計算函數(shù)值y與從動角的比例因子—,得:</p><p> =(—)/(—)=(110—20)/lg2=90/lg2</p><p> 自變量x值可按下式選取:</p><p> =(+
6、)/2+(—)/2cos[(2i—1)/2n×180] i=1,2,3…n</p><p> n為要求精確實現(xiàn)的結(jié)點數(shù)目。(因為已知,這里?。簄=8,求解—)將計算得的代入函數(shù)y=f(x)可求得函數(shù)值f()。計算結(jié)果如下:</p><p> =1.0096 f()=4.149×</p><p> =1.0843
7、 f()=0.0351</p><p> =1.2222 f()=0.0871</p><p> =1.4025 f()=0.1469</p><p> =1.5975 f()=0.2034</p><p> =1.7778 f()=0.2499</p>&l
8、t;p> =1.9157 f()=0.2823</p><p> =1.9904 f()=0.2989</p><p> 因而對應(yīng)(,),可求得</p><p><b> =+(—)</b></p><p> =+[f()—f()] i=1,2,3…n(這里取:n
9、=8) 計算結(jié)果如下:</p><p> ≈81.10° ≈21.24°</p><p> ≈89.70° ≈30.49°</p><p> ≈105.55° ≈46.04°</p><p> ≈126.29° ≈6
10、3.92°</p><p> ≈148.71° ≈80.81°</p><p> ≈169.45° ≈94.71°</p><p> ≈185.31° ≈104.40°</p><p> ≈193.90° ≈109.
11、36°</p><p> 2、根據(jù)兩連架桿的對應(yīng)角位移設(shè)計四桿機(jī)構(gòu):</p><p> 如果,給定,則鉸鏈四桿機(jī)構(gòu)最多能精確實現(xiàn)兩連架桿三組對應(yīng)角位置,得</p><p> cos=cos+cos(—)+</p><p> cos()=cos()+cos(—)+</p><p> cos()=cos
12、()+cos(—)+</p><p> 由以上三個線性方程組可解出,,。由,,即可得各構(gòu)件的相對長度m,n,p。其中,=n,=n/p,=(++1—)/2p</p><p> 再根據(jù)實際需要選定構(gòu)件AB的長度a后,其他構(gòu)件的長度便可確定。</p><p> 將上述方程組變成如下的形式:</p><p> cos+cos(—)+1
13、5;—cos=0</p><p> cos()+cos(—)+1×—cos()=0</p><p> cos()+cos(—)+1×—cos()=0</p><p> 令cos=A1,cos()=A2,cos()=A3,cos(—)=B1,cos(—)=B2,cos(—)=B3,1=C1,1=C2,1=C3,—cos=D1,—cos()=D
14、2,—cos()=D3,則計算,,的程序如下所示:</p><p><b> 程序1:</b></p><p> #include<stdio.h></p><p> #include<math.h></p><p> float fun_x(float a1,float a2,float
15、 a3,float b1,float b2,float b3,int c1,int c2,int c3,float d1,float d2,float d3)</p><p><b> {</b></p><p><b> float x;</b></p><p> x=-((b1*c2*d3-b1*c3*d2-b2
16、*c1*d3+b2*c3*d1+b3*c1*d2-b3*c2*d1)/(a1*b2*c3-a1*b3*c2-a2*b1*c3+a2*b3*c1+a3*b1*c2-a3*b2*c1));</p><p> return (x);</p><p><b> }</b></p><p> void main()</p><p
17、><b> {</b></p><p> float A1;float A2;float A3;float B1;float B2;float B3;int C1;int C2;int C3;float D1;float D2;float D3;</p><p><b> float X;</b></p><p&g
18、t; printf("input A1 A2 A3 B1 B2 B3 C1 C2 C3 D1 D2 D3 : ");</p><p> scanf("%f%f%f%f%f%f%d%d%d%f%f%f",&A1,&A2,&A3,&B1,&B2,&B3,&C1,&C2,&C3,&D1,&
19、D2,&D3);</p><p> X=fun_x(A1,A2,A3,B1,B2,B3,C1,C2,C3,D1,D2,D3);</p><p> printf("the X=%f\n",X);</p><p><b> }</b></p><p> 其中,程序運(yùn)行的結(jié)果X=</p
20、><p><b> 程序2:</b></p><p> #include<stdio.h></p><p> #include<math.h></p><p> float fun_y(float a1,float a2,float a3,float b1,float b2,float b3,
21、int c1,int c2,int c3,float d1,float d2,float d3)</p><p><b> {</b></p><p><b> float y;</b></p><p> y=((a1*c2*d3-a1*c3*d2-a2*c1*d3+a2*c3*d1+a3*c1*d2-a3*c2*d
22、1)/(a1*b2*c3-a1*b3*c2-a2*b1*c3+a2*b3*c1+a3*b1*c2-a3*b2*c1));</p><p> return (y);</p><p><b> }</b></p><p> void main()</p><p><b> {</b></p
23、><p> float A1;float A2;float A3;float B1;float B2;float B3;int C1;int C2;int C3;float D1;float D2;float D3;</p><p><b> float Y;</b></p><p> printf("input A1 A2 A3
24、B1 B2 B3 C1 C2 C3 D1 D2 D3 : ");</p><p> scanf("%f%f%f%f%f%f%d%d%d%f%f%f",&A1,&A2,&A3,&B1,&B2,&B3,&C1,&C2,&C3,&D1,&D2,&D3);</p><p>
25、; Y=fun_y(A1,A2,A3,B1,B2,B3,C1,C2,C3,D1,D2,D3);</p><p> printf("the Y=%f\n",Y);</p><p><b> }</b></p><p> 其中,程序運(yùn)行的結(jié)果Y=</p><p><b> 程序3:&l
26、t;/b></p><p> #include<stdio.h></p><p> #include<math.h></p><p> float fun_z(float a1,float a2,float a3,float b1,float b2,float b3,int c1,int c2,int c3,float d1,fl
27、oat d2,float d3)</p><p><b> {</b></p><p><b> float z;</b></p><p> z=-((a1*b2*d3-a1*b3*d2-a2*b1*d3+a2*b3*d1+a3*b1*d2-a3*b2*d1)/(a1*b2*c3-a1*b3*c2-a2*b1*c3+
28、a2*b3*c1+a3*b1*c2-a3*b2*c1));</p><p> return (z);</p><p><b> }</b></p><p> void main()</p><p><b> {</b></p><p> float A1;float
29、 A2;float A3;float B1;float B2;float B3;int C1;int C2;int C3;float D1;float D2;float D3;</p><p><b> float Z;</b></p><p> printf("input A1 A2 A3 B1 B2 B3 C1 C2 C3 D1 D2 D3 : &q
30、uot;);</p><p> scanf("%f%f%f%f%f%f%d%d%d%f%f%f",&A1,&A2,&A3,&B1,&B2,&B3,&C1,&C2,&C3,&D1,&D2,&D3);</p><p> Z=fun_z(A1,A2,A3,B1,B2,B3,C1
31、,C2,C3,D1,D2,D3);</p><p> printf("the Z=%f\n",Z);</p><p><b> }</b></p><p> 其中,程序運(yùn)行的結(jié)果Z=</p><p> 9對角位移,任取其中3對角位移,就能列出一個關(guān)于,,的線性方程組,就能得到一個對應(yīng)的機(jī)構(gòu)尺寸
32、方案。利用以上程序,可以分別計算出,,的具體數(shù)值。其中,A1是第一個方程中前的系數(shù),A2是第二個方程中前的系數(shù),A3是第三個方程中前的系數(shù);B1—D3的含義可由上面的例子仿照得出。</p><p> 現(xiàn)將計算結(jié)果統(tǒng)計如下:</p><p> 第一位同學(xué)的計算結(jié)果:</p><p> 第二位同學(xué)的計算結(jié)果:</p><p> 第三位同學(xué)
33、的計算結(jié)果:</p><p> 第四位同學(xué)的計算結(jié)果:</p><p><b> 3、計算實際角位移</b></p><p> 根據(jù)計算所得,,,將主動角位移代入下式</p><p> cos=cos+cos(—)+ 即可求得實際角位移。</p><p> 令 f()=—cos+
34、cos+cos(—)+ 求,使得f()=0(參考牛頓切線法)。</p><p> 計算實際角位移的程序如下所示:</p><p><b> 程序0:</b></p><p> #include<stdio.h></p><p> #include<math.h></p>&
35、lt;p> #define EPS 1e-3</p><p> #define PI 3.1415926</p><p> void main()</p><p><b> {</b></p><p> double x,d;</p><p> printf("inpu
36、t initial root:\n");</p><p> scanf("%lf",&x);</p><p><b> do</b></p><p><b> {</b></p><p> d=-((-cos(80*PI/180)+*cos(x)+ *c
37、os(x-80*PI/180)+ )/(-*sin(x)- *sin(x-80*PI/180))); </p><p><b> x+=d;</b></p><p> } while(fabs(d)>EPS);</p><p> printf("x=%f\n",x);</p><p>&l
38、t;b> }</b></p><p> 程序0的功能是求,其中=80°;注意:在程序計算之前,需要將,,的具體數(shù)值代入程序?qū)?yīng)的位置,否則運(yùn)行時程序會報錯!!!</p><p><b> 程序1:</b></p><p> #include<stdio.h></p><p>
39、; #include<math.h></p><p> #define EPS 1e-3</p><p> #define PI 3.1415926</p><p> void main()</p><p><b> {</b></p><p> double x,d;&l
40、t;/p><p> printf("input initial root:\n");</p><p> scanf("%lf",&x);</p><p><b> do</b></p><p><b> {</b></p><p
41、> d=-((-cos(81.10*PI/180)+ *cos(x)+ *cos(x-81.10*PI/180)+ )/(-*sin(x)- *sin(x-81.10*PI/180)));</p><p><b> x+=d;</b></p><p> } while(fabs(d)>EPS);</p><p> print
42、f("x=%f\n",x);</p><p><b> }</b></p><p> 程序1的功能是求,其中=81.10°;注意:在程序計算之前,需要將,,的具體數(shù)值代入程序?qū)?yīng)的位置。</p><p><b> 程序2:</b></p><p> #inclu
43、de<stdio.h></p><p> #include<math.h></p><p> #define EPS 1e-3</p><p> #define PI 3.1415926</p><p> void main()</p><p><b> {</b>
44、;</p><p> double x,d;</p><p> printf("input initial root:\n");</p><p> scanf("%lf",&x);</p><p><b> do</b></p><p>&l
45、t;b> {</b></p><p> d=-((-cos(89.70*PI/180)+ *cos(x)+ *cos(x-89.70*PI/180)+ )/(-*sin(x)- *sin(x-89.70*PI/180)));</p><p><b> x+=d;</b></p><p> } while(fabs(d)
46、>EPS);</p><p> printf("x=%f\n",x);</p><p><b> }</b></p><p> 程序2的功能是求,其中=89.70°;注意:在程序計算之前,需要將,,的具體數(shù)值代入程序?qū)?yīng)的位置。</p><p><b> 程序3:&l
47、t;/b></p><p> #include<stdio.h></p><p> #include<math.h></p><p> #define EPS 1e-3</p><p> #define PI 3.1415926</p><p> void main()</
48、p><p><b> {</b></p><p> double x,d;</p><p> printf("input initial root:\n");</p><p> scanf("%lf",&x);</p><p><b>
49、 do</b></p><p><b> {</b></p><p> d=-((-cos(105.55*PI/180)+ *cos(x)+ *cos(x-105.55*PI/180)+ )/(-*sin(x)- *sin(x-105.55*PI/180)));</p><p><b> x+=d;</b&g
50、t;</p><p> } while(fabs(d)>EPS);</p><p> printf("x=%f\n",x);</p><p><b> }</b></p><p> 程序3的功能是求,其中=105.55°;注意:在程序計算之前,需要將,,的具體數(shù)值代入程序?qū)?yīng)的
51、位置。</p><p><b> 程序4:</b></p><p> #include<stdio.h></p><p> #include<math.h></p><p> #define EPS 1e-3</p><p> #define PI 3.14159
52、26</p><p> void main()</p><p><b> {</b></p><p> double x,d;</p><p> printf("input initial root:\n");</p><p> scanf("%lf&quo
53、t;,&x);</p><p><b> do</b></p><p><b> {</b></p><p> d=-((-cos(126.29*PI/180)+ *cos(x)+ *cos(x-126.29*PI/180)+ )/(-*sin(x)- *sin(x-126.29*PI/180)));<
54、/p><p><b> x+=d;</b></p><p> } while(fabs(d)>EPS);</p><p> printf("x=%f\n",x);</p><p><b> }</b></p><p> 程序4的功能是求,其中=
55、126.29°;注意:在程序計算之前,需要將,,的具體數(shù)值代入程序?qū)?yīng)的位置。</p><p><b> 程序5:</b></p><p> #include<stdio.h></p><p> #include<math.h></p><p> #define EPS 1e-
56、3</p><p> #define PI 3.1415926</p><p> void main()</p><p><b> {</b></p><p> double x,d;</p><p> printf("input initial root:\n");
57、</p><p> scanf("%lf",&x);</p><p><b> do</b></p><p><b> {</b></p><p> d=-((-cos(148.71*PI/180)+ *cos(x)+ *cos(x-148.71*PI/180)+
58、 )/(-*sin(x)- *sin(x-148.71*PI/180)));</p><p><b> x+=d;</b></p><p> } while(fabs(d)>EPS);</p><p> printf("x=%f\n",x);</p><p><b> }<
59、;/b></p><p> 程序5的功能是求,其中=148.71°;注意:在程序計算之前,需要將,,的具體數(shù)值代入程序?qū)?yīng)的位置。</p><p><b> 程序6:</b></p><p> #include<stdio.h></p><p> #include<math.h&
60、gt;</p><p> #define EPS 1e-3</p><p> #define PI 3.1415926</p><p> void main()</p><p><b> {</b></p><p> double x,d;</p><p> p
61、rintf("input initial root:\n");</p><p> scanf("%lf",&x);</p><p><b> do</b></p><p><b> {</b></p><p> d=-((-cos(169.45
62、*PI/180)+ *cos(x)+ *cos(x-169.45*PI/180)+ )/(-*sin(x)- *sin(x-169.45*PI/180)));</p><p><b> x+=d;</b></p><p> } while(fabs(d)>EPS);</p><p> printf("x=%f\n"
63、;,x);</p><p><b> }</b></p><p> 程序6的功能是求,其中=169.45°;注意:在程序計算之前,需要將,,的具體數(shù)值代入程序?qū)?yīng)的位置。</p><p><b> 程序7:</b></p><p> #include<stdio.h>&
64、lt;/p><p> #include<math.h></p><p> #define EPS 1e-3</p><p> #define PI 3.1415926</p><p> void main()</p><p><b> {</b></p><p
65、> double x,d;</p><p> printf("input initial root:\n");</p><p> scanf("%lf",&x);</p><p><b> do</b></p><p><b> {</b&g
66、t;</p><p> d=-((-cos(185.31*PI/180)+ *cos(x)+ *cos(x-185.31*PI/180)+ )/(-*sin(x)- *sin(x-185.31*PI/180)));</p><p><b> x+=d;</b></p><p> } while(fabs(d)>EPS);</p
67、><p> printf("x=%f\n",x);</p><p><b> }</b></p><p> 程序7的功能是求,其中=185.31°;注意:在程序計算之前,需要將,,的具體數(shù)值代入程序?qū)?yīng)的位置。</p><p><b> 程序8:</b></p
68、><p> #include<stdio.h></p><p> #include<math.h></p><p> #define EPS 1e-3</p><p> #define PI 3.1415926</p><p> void main()</p><p&g
69、t;<b> {</b></p><p> double x,d;</p><p> printf("input initial root:\n");</p><p> scanf("%lf",&x);</p><p><b> do</b>
70、</p><p><b> {</b></p><p> d=-((-cos(193.90*PI/180)+ *cos(x)+ *cos(x-193.90*PI/180)+ )/(-*sin(x)- *sin(x-193.90*PI/180)));</p><p><b> x+=d;</b></p>
71、<p> } while(fabs(d)>EPS);</p><p> printf("x=%f\n",x);</p><p><b> }</b></p><p> 程序8的功能是求,其中=193.90°;注意:在程序計算之前,需要將,,的具體數(shù)值代入程序?qū)?yīng)的位置。</p>
72、<p><b> 4、求擬合誤差</b></p><p><b> sum===</b></p><p> 這里,n=8,表示共有9對對應(yīng)角位移。9對角位移,任取其中3對角位移,就能得到一個對應(yīng)的機(jī)構(gòu)尺寸方案,這樣按照排列組合理論,設(shè)計方案有N=84種,sum最小者為最優(yōu)方案。</p><p> 計算擬
73、合誤差sum的程序如下所示:</p><p> #include<stdio.h></p><p> #include<math.h></p><p> void main()</p><p><b> {</b></p><p> double x0,x1,x2
74、,x3,x4,x5,x6,x7,x8;</p><p> double y0,y1,y2,y3,y4,y5,y6,y7,y8;</p><p> double sum=0;</p><p> printf("input x0 x1 x2 x3 x4 x5 x6 x7 x8: ");</p><p> scanf(&
75、quot;%lf%lf%lf%lf%lf%lf%lf%lf%lf",&x0,&x1,&x2,&x3,&x4,&x5,&x6,&x7,&x8);</p><p> printf("input y0 y1 y2 y3 y4 y5 y6 y7 y8: ");</p><p> scanf(&
76、quot;%lf%lf%lf%lf%lf%lf%lf%lf%lf",&y0,&y1,&y2,&y3,&y4,&y5,&y6,&y7,&y8);</p><p> sum=sum+((x0-y0)*(x0-y0)+(x1-y1)*(x1-y1)+(x2-y2)*(x2-y2)+(x3-y3)*(x3-y3)+(x4-y4)*(x4-
77、y4)+(x5-y5)*(x5-y5)+(x6-y6)*(x6-y6)+(x7-y7)*(x7-y7)+(x8-y8)*(x8-y8));</p><p> printf("the sum=%lf\n",sum);</p><p><b> }</b></p><p> 其中,x[i]對應(yīng)的就是的值,y[i]對應(yīng)的就是
78、的值。(注意:是弧度值)</p><p><b> 5、結(jié)論</b></p><p> 經(jīng)過上述過程的計算和討論,最優(yōu)方案可能有兩種。第一種方案對應(yīng)的3對角位移是(,)、(,)、(,),求得的,,值分別為:1.728,-2.588,-0.1570。第二種方案對應(yīng)的3對角位移是(,)、(,)、(,),求得的,,值分別為:1.7290,-2.5890,-0.1566。
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 匯編課程設(shè)計--函數(shù)調(diào)用
- 函數(shù)發(fā)生器的設(shè)計課程設(shè)計
- 課程設(shè)計---函數(shù)發(fā)生器的設(shè)計
- 課程設(shè)計--函數(shù)發(fā)生器的設(shè)計
- 課程設(shè)計--函數(shù)信號發(fā)生器的設(shè)計
- 函數(shù)發(fā)生器的課程設(shè)計
- 牛頭刨床課程設(shè)計---牛頭刨床機(jī)構(gòu)的課程設(shè)計
- 課程設(shè)計--函數(shù)發(fā)生器
- 函數(shù)發(fā)生器課程設(shè)計
- 函數(shù)發(fā)生器 課程設(shè)計
- 課程設(shè)計——函數(shù)發(fā)生器
- 函數(shù)發(fā)生器課程設(shè)計
- vc++庫函數(shù)課程設(shè)計
- 函數(shù)發(fā)生器課程設(shè)計
- 課程設(shè)計---轎車轉(zhuǎn)向機(jī)構(gòu)設(shè)計
- 機(jī)械原理課程設(shè)計---機(jī)構(gòu)設(shè)計
- 課程設(shè)計--受電弓機(jī)構(gòu)設(shè)計
- 電子課程設(shè)計---函數(shù)信號發(fā)生器的設(shè)計
- eda課程設(shè)計---函數(shù)信號發(fā)生器的設(shè)計
- 模電課程設(shè)計---函數(shù)發(fā)生器的設(shè)計
評論
0/150
提交評論