機(jī)械原理課程設(shè)計(jì)zdp,機(jī)械,原理,課程設(shè)計(jì),zdp
課 程 設(shè) 計(jì) 書
機(jī)械原理課程設(shè)計(jì)
任務(wù)書
題目:連桿機(jī)構(gòu)設(shè)計(jì)B4-b
設(shè)計(jì)參數(shù)
轉(zhuǎn)角關(guān)系的期望函數(shù)
連架桿轉(zhuǎn)角范圍
計(jì)算間隔
設(shè)計(jì)計(jì)算
手工
編程
確定:a,b,c,d四桿的長度,以及在一個(gè)工作循環(huán)內(nèi)每一計(jì)算間隔的轉(zhuǎn)角偏差值
60°
85°
2°
0.5°
y=㏑x(1≦x≦2)
設(shè)計(jì)要求:
1.用解析法按計(jì)算間隔進(jìn)行設(shè)計(jì)計(jì)算;
2.繪制3號(hào)圖紙1張,包括:
(1)機(jī)構(gòu)運(yùn)動(dòng)簡圖;
(2)期望函數(shù)與機(jī)構(gòu)實(shí)現(xiàn)函數(shù)在計(jì)算點(diǎn)處的對(duì)比表;
(3)根據(jù)對(duì)比表繪制期望函數(shù)與機(jī)構(gòu)實(shí)現(xiàn)函數(shù)的位移對(duì)比圖;
3.設(shè)計(jì)說明書一份;
4.要求設(shè)計(jì)步驟清楚,計(jì)算準(zhǔn)確。說明書規(guī)范。作圖要符合國家標(biāo)。按時(shí)獨(dú)立完成任務(wù)。
目錄
第1節(jié) 平面四桿機(jī)構(gòu)設(shè)計(jì) 3
1.1連桿機(jī)構(gòu)設(shè)計(jì)的基本問題 3
1.2作圖法設(shè)計(jì)四桿機(jī)構(gòu) 3
1.3 解析法設(shè)計(jì)四桿機(jī)構(gòu) 3
第2節(jié) 設(shè)計(jì)介紹 5
2.1按預(yù)定的兩連架桿對(duì)應(yīng)位置設(shè)計(jì)原理 5
2.2 按期望函數(shù)設(shè)計(jì) 6
第3節(jié) 連桿機(jī)構(gòu)設(shè)計(jì) 8
3.1連桿機(jī)構(gòu)設(shè)計(jì) 8
3.2變量和函數(shù)與轉(zhuǎn)角之間的比例尺 8
3.3確定結(jié)點(diǎn)值 8
3.4 確定初始角、 9
3.5 桿長比m,n,l的確定 13
3.6 檢查偏差值 13
3.7 桿長的確定 13
3.8 連架桿在各位置的再現(xiàn)函數(shù)和期望函數(shù)最小差值的確定 15
總結(jié) 18
參考文獻(xiàn) 19
附錄 20
第1節(jié) 平面四桿機(jī)構(gòu)設(shè)計(jì)
1.1連桿機(jī)構(gòu)設(shè)計(jì)的基本問題
連桿機(jī)構(gòu)設(shè)計(jì)的基本問題是根據(jù)給定的要求選定機(jī)構(gòu)的型式,確定各構(gòu)件的尺寸,同時(shí)還要滿足結(jié)構(gòu)條件(如要求存在曲柄、桿長比恰當(dāng)?shù)龋?dòng)力條件(如適當(dāng)?shù)膫鲃?dòng)角等)和運(yùn)動(dòng)連續(xù)條件等。
根據(jù)機(jī)械的用途和性能要求的不同,對(duì)連桿機(jī)構(gòu)設(shè)計(jì)的要求是多種多樣的,但這些設(shè)計(jì)要求可歸納為以下三類問題:
(1)預(yù)定的連桿位置要求;
(2)滿足預(yù)定的運(yùn)動(dòng)規(guī)律要求;
(3)滿足預(yù)定的軌跡要求;
連桿設(shè)計(jì)的方法有:解析法、作圖法和實(shí)驗(yàn)法。
1.2作圖法設(shè)計(jì)四桿機(jī)構(gòu)
對(duì)于四桿機(jī)構(gòu)來說,當(dāng)其鉸鏈中心位置確定后,各桿的長度
也就確定了。用作圖法進(jìn)行設(shè)計(jì),就是利用各鉸鏈之間相對(duì)運(yùn)動(dòng)
的幾何關(guān)系,通過作圖確定各鉸鏈的位置,從而定出各桿的長度。
根據(jù)設(shè)計(jì)要求的不同分為四種情況 :
(1) 按連桿預(yù)定的位置設(shè)計(jì)四桿機(jī)構(gòu)
(2) 按兩連架桿預(yù)定的對(duì)應(yīng)角位移設(shè)計(jì)四桿機(jī)構(gòu)
(3) 按預(yù)定的軌跡設(shè)計(jì)四桿機(jī)構(gòu)
(4) 按給定的急回要求設(shè)計(jì)四桿機(jī)構(gòu)
1.3 解析法設(shè)計(jì)四桿機(jī)構(gòu)
在用解析法設(shè)計(jì)四桿機(jī)構(gòu)時(shí),首先需建立包含機(jī)構(gòu)各尺度參數(shù)和運(yùn)動(dòng)變量在內(nèi)的解析式,然后根據(jù)已知的運(yùn)動(dòng)變量求機(jī)構(gòu)的尺度參數(shù)。現(xiàn)有三種不同的設(shè)計(jì)要求,分別是:
(1) 按連桿預(yù)定的連桿位置設(shè)計(jì)四桿機(jī)構(gòu)
(2) 按預(yù)定的運(yùn)動(dòng)軌跡設(shè)計(jì)四桿機(jī)構(gòu)
(3) 按預(yù)定的運(yùn)動(dòng)規(guī)律設(shè)計(jì)四桿機(jī)構(gòu)
1) 按預(yù)定的兩連架桿對(duì)應(yīng)位置設(shè)計(jì)
2) 按期望函數(shù)設(shè)計(jì)
本次連桿機(jī)構(gòu)設(shè)計(jì)采用解析法設(shè)計(jì)四桿機(jī)構(gòu)中的按期望函數(shù)設(shè)計(jì)。下面在第2節(jié)將對(duì)期望函數(shù)設(shè)計(jì)四桿機(jī)構(gòu)的原理進(jìn)行詳細(xì)的闡述。
第2節(jié) 設(shè)計(jì)介紹
2.1按預(yù)定的兩連架桿對(duì)應(yīng)位置設(shè)計(jì)原理
如下圖所示:
設(shè)要求從動(dòng)件3與主動(dòng)件1的轉(zhuǎn)角之間滿足一系列的對(duì)應(yīng)位置關(guān)系,即=i=1, 2,… ,n其函數(shù)的運(yùn)動(dòng)變量為由設(shè)計(jì)要求知、為已知條件。有為未知。又因?yàn)闄C(jī)構(gòu)按比例放大或縮小,不會(huì)改變各機(jī)構(gòu)的相對(duì)角度關(guān)系,故設(shè)計(jì)變量應(yīng)該為各構(gòu)件的相對(duì)長度,如取d/a=1 , b/a=l c/a=m , d/a=n 。故設(shè)計(jì)變量l、m、n以及、的計(jì)量起始角、共五個(gè)。如圖所示建立坐標(biāo)系Oxy,并把各桿矢量向坐標(biāo)軸投影,可得
2-1
為消去未知角,將上式 兩端各自平方后相加,經(jīng)整理可得
令=m, =-m/n, =,則上式可簡化為:
2-2
式 2-2 中包含5個(gè)待定參數(shù)、、、、及,故四桿機(jī)構(gòu)最多可以按兩連架桿的5個(gè)對(duì)應(yīng)位置精度求解。
2.2 按期望函數(shù)設(shè)計(jì)
如上圖所示,設(shè)要求設(shè)計(jì)四桿機(jī)構(gòu)兩連架桿轉(zhuǎn)角之間實(shí)現(xiàn)的函數(shù)關(guān)系 (成為期望函數(shù)),由于連架桿機(jī)構(gòu)的待定參數(shù)較少,故一般不能準(zhǔn)確實(shí)現(xiàn)該期望函數(shù)。設(shè)實(shí)際實(shí)現(xiàn)的函數(shù)為月(成為再現(xiàn)函數(shù)),再現(xiàn)函數(shù)與期望函數(shù)一般是不一致的。設(shè)計(jì)時(shí)應(yīng)該使機(jī)構(gòu)的再現(xiàn)函數(shù)盡可能逼近所要求的期望函數(shù)。具體作法是:在給定的自變量x的變化區(qū)間到內(nèi)的某點(diǎn)上,使再現(xiàn)函數(shù)與期望函數(shù)的值相等。從幾何意義上與兩函數(shù)曲線在某些點(diǎn)相交。
這些點(diǎn)稱為插值結(jié)點(diǎn)。顯然在結(jié)點(diǎn)處:
故在插值結(jié)點(diǎn)上,再現(xiàn)函數(shù)的函數(shù)值為已知。這樣,就可以按上述方法來設(shè)計(jì)四桿機(jī)構(gòu)。這種設(shè)計(jì)方法成為插值逼近法。
在結(jié)點(diǎn)以外的其他位置,與是不相等的,其偏差為
偏差的大小與結(jié)點(diǎn)的數(shù)目及其分布情況有關(guān),增加插值結(jié)點(diǎn)的數(shù)目,有利于逼近精度的提高。但結(jié)點(diǎn)的數(shù)目最多可為5個(gè)。至于結(jié)點(diǎn)位置分布,根據(jù)函數(shù)逼近理論有
2-3
試中i=1,2, … ,3,n為插值結(jié)點(diǎn)數(shù)。
本節(jié)介紹了采用期望函數(shù)設(shè)計(jì)四桿機(jī)構(gòu)的原理。那么在第3節(jié)將
具體闡述連桿機(jī)構(gòu)的設(shè)計(jì)。
第3節(jié) 連桿機(jī)構(gòu)設(shè)計(jì)
3.1連桿機(jī)構(gòu)設(shè)計(jì)
設(shè)計(jì)參數(shù)表
轉(zhuǎn)角關(guān)系的期望函數(shù)
連架桿轉(zhuǎn)角范圍
計(jì)算間隔
設(shè)計(jì)計(jì)算
手工
編程
確定:a,b,c,d四桿的長度,以及在一個(gè)工作循環(huán)內(nèi)每一計(jì)算間隔的轉(zhuǎn)角偏差值
60°
85°
2°
0.5°
y=㏑x(1≦x≦2)
注:本次采用編程計(jì)算,計(jì)算間隔0.5°
3.2變量和函數(shù)與轉(zhuǎn)角之間的比例尺
根據(jù)已知條件y=㏑x(1≦x≦2)為鉸鏈四桿機(jī)構(gòu)近似的實(shí)現(xiàn)期望函數(shù),
設(shè)計(jì)步驟如下:
(1)根據(jù)已知條件,,可求得,。
(2)由主、從動(dòng)件的轉(zhuǎn)角范圍=60°、=85°確定自變量和函數(shù)與轉(zhuǎn)角之間的比例尺分別為:
3—1
3.3確定結(jié)點(diǎn)值
設(shè)取結(jié)點(diǎn)總數(shù)m=3,由式2-3可得各結(jié)點(diǎn)處的有關(guān)各值如表(3-1)所示。
表(3-1) 各結(jié)點(diǎn)處的有關(guān)各值
1
1.067
0.065
4.02°
7.97°
2
1.500
0.405
30.0°
49.68°
3
1.933
0.659
55.98°
80.83°
3.4 確定初始角、
通常我們用試算的方法來確定初始角、,而在本次連桿設(shè)計(jì)中將通過編程試算的方法來確定。具體思路如下:
任取、,把、取值與上面所得到的三個(gè)結(jié)點(diǎn)處的、的值代入P134式8-17
從而得到三個(gè)關(guān)于、、的方程組,求解方程組后得出、、,再令=m, =-m/n, =。然
求得后m,n,l的值。由此我們可以在機(jī)構(gòu)確定的初始值條件下找
到任意一位置的期望函數(shù)值與再現(xiàn)函數(shù)值的偏差值。當(dāng)
時(shí),則視為選取的初始、角度滿足機(jī)構(gòu)的運(yùn)動(dòng)要求。
具體程序如下:
#include
#include
#define PI 3.1415926
#define t PI/180
void main()
{
int i;
float p0,p1,p2,a0,b0,m,n,l,a5;
float A,B,C,r,s,f1,f2,k1,k2,j;
float u1=1.0/60,u2=0. 93/685,x0=1.0,y0=0.0;
float a[3],b[3],a1[6],b1[3];
FILE *p;
if((p=fopen("d:\\zdp.txt","w"))==NULL)
{
printf("can't open the file!");
exit(0);
}
a[0]=4.02;
a[1]=30;
a[2]=55.98;
b[0]=7.97;
b[1]=49.68;
b[2]=80.83;
printf("please input a0: \n");
scanf("%f",&a0);
printf("please input b0: \n");
scanf("%f",&b0);
for(i=0;i<3;i++)
{
a1[i]=cos((b[i]+b0)*t);
a1[i+3]=cos((b[i]+b0-a[i]-a0)*t);
b1[i]=cos((a[i]+a0)*t);
}
p0=((b1[0]-b1[1])*(a1[4]-a1[5])-(b1[1]-b1[2])*(a1[3]-a1[4]))/
((a1[0]-a1[1])*(a1[4]-a1[5])-(a1[1]-a1[2])*(a1[3]-a1[4]));
p1=(b1[0]-b1[1]-(a1[0]-a1[1])*p0)/(a1[3]-a1[4]);
p2=b1[0]-a1[0]*p0-a1[3]*p1;
m=p0;
n=-m/p1;
l=sqrt(m*m+n*n+1-2*n*p2);
printf("p0=%f,p1=%f,p2=%f,m=%f,n=%f,l=%f\n",p0,p1,p2,m,n,l);
fprintf(p,"p0=%f,p1=%f,p2=%f,m=%f,n=%f,l=%f\n",p0,p1,p2,m,n,l);
printf("\n");
fprintf(p,"\n");
for(i=0;i<5;i++)
{printf("please input one angle of fives(0--60): ");
scanf("%f",&a5);
printf("when the angle is %f\n",a5);
fprintf(p,"when the angle is %f\n",a5);
A=sin((a5+a0)*t);
B=cos((a5+a0)*t)-n;
C=(1+m*m+n*n-l*l)/(2*m)-n*cos((a5+a0)*t)/m;
j=x0+u1*a5;
printf("A=%f,B=%f,C=%f,j=%f\n",A,B,C,j);
s=sqrt(A*A+B*B-C*C);
f1=2*(atan((A+s)/(B+C)))/(t)-b0;
f2=2*(atan((A-s)/(B+C)))/(t)-b0;
r=(log(j)-y0)/u2;
k1=f1-r;
k2=f2-r;
printf("r=%f,s=%f,f1=%f,f2=%f,k1=%f,k2=%f\n",r,s,f1,f2,k1,k2);
fprintf(p,"r=%f,s=%f,f1=%f,f2=%f,k1=%f,k2=%f\n",r,s,f1,f2,k1,k2);
printf("\n\n");
fprintf(p,"\n\n");
}
}
結(jié)合課本P135,試取=86°,=24°時(shí):
程序運(yùn)行及其結(jié)果為:
p0=0.601242,p1=-0.461061,p2=-0.266414,m=0.601242,n=1.304040,l=1.938257
when the angle is 0.000000
r=0.000000,s=1.409598,f1=-125.595070,f2=-0.296147,k1=-125.595070,k2=-0.296147
when the angle is 4.020000
r=7.954308,s=1.538967,f1=-130.920624,f2=7.970002,k1=-138.874939,k2=0.015694
when the angle is 30.000000
r=49.732372,s=1.924767,f1=-152.252411,f2=49.680004,k1=-201.984787,k2=-0.052368
when the angle is 55.980000
r=80.838707,s=1.864505,f1=-161.643921,f2=80.830002,k1=-242.482635,k2=-0.008705
when the angle is 60.000000
r=85.018051,s=1.836746,f1=-162.288574,f2=84.909149,k1=-247.306625,k2=-0.108902
由程序運(yùn)行結(jié)果可知:當(dāng)取初始角=86°、=24°時(shí)(=k1(k2))所以所選初始角符合機(jī)構(gòu)的運(yùn)動(dòng)要求。
3.5 桿長比m,n,l的確定
由上面的程序結(jié)果可得m=0.601242, n=1.304040, l=1.938257。
3.6 檢查偏差值
對(duì)于四桿機(jī)構(gòu),其再現(xiàn)的函數(shù)值可由P134式8-16求得
3-2
式中: A=sin() ;
B=cos()-n ;
C=- ncos()/m
按期望函數(shù)所求得的從動(dòng)件轉(zhuǎn)角為
3-3
則偏差為
若偏差過大不能滿足設(shè)計(jì)要求時(shí),則應(yīng)重選計(jì)量起始角
、以及主、從動(dòng)件的轉(zhuǎn)角變化范圍、等,重新進(jìn)行設(shè)計(jì)。同樣由上面的程序運(yùn)行結(jié)果得出每一個(gè)取值都符合運(yùn)動(dòng)要求,即 :
=k1(k2)) (
3.7 桿長的確定
根據(jù)桿件之間的長度比例關(guān)系m,n,l和這樣的關(guān)系式b/a=l c/a=m d/a=n確定各桿的長度,當(dāng)選取主動(dòng)桿的長度后,其余三桿長的度隨之可以確定;在此我們假設(shè)主動(dòng)連架桿的長度為 a=50 ,則確定其余三桿的長度由下面的程序確定:
#include
#include
#include
void main()
{
float a=50,b,c,d;
float m=0.601242,n=1.304040,l=1.938257;
FILE *p;
if((p=fopen("d:\\zdp.txt","w"))=NULL)
{
printf("can't open the file!");
exit(0);
}
b=l*a;
c=m*a;
d=n*a;
printf("a=%f\nb=%f\nc=%f\nd=%f\n",a,b,c,d);
fprintf(p,"a=%f\nb=%f\nc=%f\nd=%f\n",a,b,c,d);
fclose(p);
}
運(yùn)行結(jié)果為:
a=50.000000
b=96.912849
c=30.062099
d=65.201996
3.8 連架桿在各位置的再現(xiàn)函數(shù)和期望函數(shù)最小差值的確定
如下面的程序:
#include
#include
#include
#define PI 3.1415926
#define t PI/180
void main()
{
float a0=86,b0=24,m=0.601242,n=1.304040,l=1.938257;
float A,B,C,s,j,k1,k2,k;
float x0=1.0,y0=0.0,u1=1.0/60,u2=0.693/85 ;
float x[130],y1[130],y2[130],a1[130],f1[130],f2[130],r[130];
int i;
FILE *p;
if((p=fopen("d:\\zdp.txt","w"))==NULL)
{
printf("can't open the file! ");
exit(0);
}
printf(" i a1[i] f1[i] r[i] k x[i] y1[i] y2[i]\n\n");
fprintf(p," i a1[i] f1[i] r[i] k x[i] y1[i] y2[i]\n\n");
for(i=0; a1[i]<=60;i++)
{
a1[0]=0;
A=sin((a1[i]+a0)*t);
B=cos((a1[i]+a0)*t)-n;
C=(1+m*m+n*n-l*l)/(2*m)-n*cos((a1[i]+a0)*t)/m;
j=x0+u1*a1[i];
s=sqrt(A*A+B*B-C*C);
f1[i]=2*(atan((A+s)/(B+C)))/(t)-b0;
f2[i]=2*(atan((A-s)/(B+C)))/(t)-b0;
r[i]=(log(j)-y0)/u2;
k1=f1[i]-r[i];
k2=f2[i]-r[i];
x[i]=a1[i]*u1+x0;
y2[i]=log(x[i]);
if(abs(k1)
收藏