




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、壓床連桿機(jī)構(gòu)的運(yùn)動(dòng)及分析(3)1設(shè)計(jì)題目及參數(shù)2數(shù)學(xué)模型3程序框圖4程序清單及運(yùn)行結(jié)果5設(shè)計(jì)總結(jié)6參考文獻(xiàn)設(shè)計(jì)題目及參數(shù)已知:中心距X1=70mm,X2=200mm,Y=310mm。構(gòu)件3的上、下極限=60、=120,滑塊的沖程H=210mm,比值CE/CD(取1/2),EF/DE(取1/4),各構(gòu)件S重心的位置,曲柄每分鐘轉(zhuǎn)速N1=90r/min。要求:1) 設(shè)計(jì)連桿機(jī)構(gòu),作機(jī)構(gòu)運(yùn)動(dòng)簡(jiǎn)圖(選擇適當(dāng)?shù)谋壤撸?。機(jī)構(gòu)兩個(gè)位置的速度多邊形和加速度多邊形,滑塊的運(yùn)動(dòng)線簡(jiǎn)圖(位移,速度和加速度曲線)。2) 用C語(yǔ)言編寫(xiě)程序?qū)C(jī)構(gòu)進(jìn)行運(yùn)動(dòng)分析,并打印程序及計(jì)算結(jié)果。3)編寫(xiě)出設(shè)計(jì)計(jì)算說(shuō)明書(shū)。數(shù)學(xué)模型壓床
2、連桿機(jī)構(gòu)數(shù)學(xué)模型具體推導(dǎo)過(guò)程:將此六桿機(jī)構(gòu)等效為四桿機(jī)構(gòu)與曲柄滑塊機(jī)構(gòu)的組合.如圖,四個(gè)向量組成的封閉四邊行,于是有即按復(fù)數(shù)式可以寫(xiě)成實(shí)部相等 (1)虛部相等 (2)(1) (2)式聯(lián)立消去得令得再對(duì)曲柄滑塊機(jī)構(gòu)進(jìn)行分析實(shí)部虛部分別相等聯(lián)立得方程令可得組合四桿機(jī)構(gòu)的分析便得到參數(shù)的定義theta-轉(zhuǎn)角 omga-角速度 epsl-角加速度 程序框圖 輸入X1,X2,Y, H n1作循環(huán),F(xiàn)or(i=0;i<N;i+)依次計(jì)算 計(jì)算的 結(jié)果分別存入數(shù)組或文件中按格式輸出所有計(jì)算結(jié)果 初始化圖形系統(tǒng) 繪制直角坐標(biāo)系 直角坐標(biāo)系下分別繪出角位移、角速度、角加速度圖象繪制出機(jī)構(gòu)動(dòng)畫(huà) 序設(shè)計(jì)源程#
3、include <stdio.h>#include <graphics.h>#include <math.h>#define X1 (70.0*0.001)#define X2 (200.0*0.001)#define Y (310.0*0.001)#define PHI3_1 60#define PHI3_2 120#define H (210.0*0.001)#define Lce_Lcd 0.5#define Lef_Lde 0.25#define N1 90.0#define Pi 3.1415926#define Vs 900#define Del
4、ayTime 1000#define FaiAngleScale 30#define PosScale 100#define SpeedScale 10#define AccelateScale 0.02#define VPX_A 125#define VPY_A 400#define VX1 15#define VY1 100#define VX2 250#define VY2 460#define PosCoorX 300#define PosCoorY 180#define SpeedCoorX 300#define SpeedCoorY 280#define AccelateCoorX
5、 300#define AccelateCoorY 380float Lab;float Lbc;float Lde;float Lef;float Lcd;float Lce;float Lad;float Pax,Pbx,Pcx,Pdx,Pex,Pfx,Pay,Pby,Pcy,Pdy,Pey,Pfy;float Vax,Vbx,Vcx,Vdx,Vex,Vfx,Vay,Vby,Vcy,Vdy,Vey,Vfy;float Aax,Abx,Acx,Adx,Aex,Afx,Aay,Aby,Acy,Ady,Aey,Afy;float k1,k2,k3,k11,k21,k31,k12,k22,k32;
6、float Omig;float FaiAngle_Degree;float FaiAngle_Rad;int VPX_B,VPY_B,VPX_C,VPY_C,VPX_D,VPY_D,VPX_E,VPY_E,VPX_F,VPY_F;void Init();void InitView();void DrawCoor();void DrawPic();void DrawMoveCoor();void GetLength();void GetpointPos(float FaiAngle);void GetPointSpeed(float FaiAngle);void GetPointAccelat
7、e(float FaiAngle);void main() int i,t; Omig=N1*2*Pi/60; Init(); InitView(); GetLength(); for(FaiAngle_Degree=0;!kbhit();FaiAngle_Degree+) FaiAngle_Degree=(int)FaiAngle_Degree)%360; FaiAngle_Rad=FaiAngle_Degree*Pi/180.0; Pax=0; Pay=0; Pdx=X1; Pdy=Y; Pbx=Lab*cos(FaiAngle_Rad); Pby=Lab*sin(FaiAngle_Rad
8、); Vbx=-Lab*Omig*sin(FaiAngle_Rad); Vby=Lab*Omig*cos(FaiAngle_Rad); Abx=-Lab*pow(Omig,2)*cos(FaiAngle_Rad); Aby=-Lab*pow(Omig,2)*sin(FaiAngle_Rad); k1=sqrt(pow(Pdx-Pbx,2)+pow(Pdy-Pby,2); k2=(pow(k1,2)+pow(Lbc,2)-pow(Lcd,2)/2.0/pow(k1,2); k3=sqrt(pow(Lbc*1.0/k1),2)-pow(k2,2); Pcx=Pbx+k2*(Pdx-Pbx)-k3*
9、(Pdy-Pby); Pcy=Pby+k2*(Pdy-Pby)-k3*(Pdx-Pbx); Vcx=(Pdx-Pbx)*k21+Vbx-k2*Vbx-k31*(Pdy-Pby)+k3*Vby; Vcy=(Pdy-Pby)*k21+Vby-k2*Vby-k31*(Pdx-Pbx)+k3*Vbx; k11=(Vbx*(Pbx-Pdx)+Vby*(Pby-Pdy)/k1; k21=(pow(Lcd,2)-pow(Lbc,2)*k11/pow(k1,3); k31=-(Lbc*k11/pow(k1,3)+k2*k21)/k3; k12=(k1*pow(Vbx,2)+Abx*(Pbx-Pdx)+pow(
10、Vby,2)+Aby*(Pby-Pdy)-k11*(Pbx-Pdx)*Vbx+Vby+(Pby-Pdy)/pow(k1,2); k22=(pow(Lcd,2)-pow(Lbc,2)*(k12/pow(k1,2)-3*pow(k11,2)/pow(k1,3); k32=(k31*(Lbc*k11+k2*pow(k1,4)-k3*(Lbc*(k12*k1-3*pow(k11,2)+pow(k21,2)*pow(k1,3)+k2*k21*pow(k1,3)/pow(k3,2)/pow(k1,3); Acx=(Pdx-Pbx)*k22-k21*Vbx+Abx-k2*Abx-k21*Vbx-k32*(P
11、dy-Pby)+2*k31*Vby+k3*Aby; Acy=(Pdy-Pby)*k22-k21*Vby+Aby-k2*Aby-k21*Vby+k32*(Pdx-Pbx)-2*k31*Vbx-k3*Abx; Pex=Lce_Lcd*(Pcx-Pdx)+Pcx; Pey=Lce_Lcd*(Pcy-Pdy)+Pcy; Vex=Vcx*Lde/Lcd; Vey=Vcy*Lde/Lcd; Aex=Acx*Lde/Lcd; Aey=Acy*Lde/Lcd; Pfx=X1-X2; Pfy=Pey-sqrt(pow(Lef,2)-pow(Pfx-Pex,2); Vfx=0; Vfy=Vey+(Pex-Pfx)
12、*Vex)/(Pey-Pfy); Afx=0; Afy=Aey+(Pey-Pfy)*(Pex-Pfx)*Aex+pow(Vex,2)-(Pex-Pfx)*Vex*(Vey-Vfy)/pow(Pey-Pfy,2); DrawPic(); DrawMoveCoor(); delay(DelayTime); closegraph() ; void GetLength() float temp1,temp2; Lad=sqrt(X1*X1+Y*Y); Lde=H/(cos(PHI3_1*Pi/180)-cos(PHI3_2*Pi/180); Lce=Lde/(1.0+1.0/Lce_Lcd); Lcd
13、=Lde-Lce; temp1=sqrt(pow(Lad,2)+pow(Lcd,2) -2*Lad*Lcd*cos(PHI3_1*Pi/180-atan(X1/Y); temp2=sqrt(pow(Lad,2)+pow(Lcd,2) -2*Lad*Lcd*cos(PHI3_2*Pi/180-atan(X1/Y); Lbc=(temp2+temp1)/2.0; Lab=(temp2-temp1)/2.0; Lef=Lde*Lef_Lde; void Init() int gd=VGA,gm=VGAHI,errorcode; initgraph(&gd,&gm,"c:tu
14、rboc2"); void InitView() VPX_D=VPX_A+X1*Vs; VPY_D=VPY_A-Y*Vs; VPX_F=VPX_A+(X1-X2)*Vs; cleardevice(); setfillstyle(SOLID_FILL,BLUE); bar(0,0,639,479); setcolor(GREEN); settextstyle(1,HORIZ_DIR,4); outtextxy(65,25,"LIANGAN JIGOU") ; setfillstyle(SOLID_FILL,RED); bar(0,82,700,84); bar(0,
15、88,700,90); setfillstyle(SOLID_FILL,GREEN); bar(VX1,VY1,VX2,VY2); DrawCoor(); setcolor(YELLOW); outtextxy(290,430,"Y"); outtextxy(550,430,"X"); void DrawCoor() int i; setcolor(YELLOW); line(300,180,550,180); line(300,280,550,280); line(300,380,550,380); line(300,140,300,220); lin
16、e(300,240,300,320); line(300,340,300,420); line(300,140,300-3,140+5); line(300,240,300-3,240+5); line(300,340,300-3,340+5); line(300,140,300+3,140+5); line(300,240,300+3,240+5); line(300,340,300+3,340+5); line(550,180,550-5,180+3); line(550,280,550-5,280+3); line(550,380,550-5,380+3); line(550,180,5
17、50-5,180-3); line(550,280,550-5,280-3); line(550,380,550-5,380-3); setcolor(YELLOW); settextstyle(0,HORIZ_DIR,1); outtextxy(280,140,"Pf"); outtextxy(280,240,"Vf"); outtextxy(280,340,"Af"); void DrawPic() int i; VPX_B=VPX_A+Vs*(Pbx-Pax); VPY_B=VPY_A-Vs*(Pby-Pay); VPX_C=V
18、PX_A+Vs*(Pcx-Pax); VPY_C=VPY_A-Vs*(Pcy-Pay); VPX_E=VPX_A+Vs*(Pex-Pax); VPY_E=VPY_A-Vs*(Pey-Pay); VPX_F=VPX_A+Vs*(Pfx-Pax); VPY_F=VPY_A-Vs*(Pfy-Pay); setbkcolor(BLACK); setfillstyle(SOLID_FILL,BLUE); bar(VX1,VY1,VX2,VY2); setfillstyle(SOLID_FILL,BLACK); setlinestyle(SOLID_LINE,0,NORM_WIDTH); pieslice
19、(VPX_A,VPY_A,0,360,3); line(VPX_A,VPY_A,VPX_A-10,VPY_A+10); line(VPX_A,VPY_A,VPX_A+10,VPY_A+10); line(VPX_A-15,VPY_A+10,VPX_A+15,VPY_A+10); for (i=0;i<30;i+=4) line(VPX_A-15+i, VPY_A+10, VPX_A-10+i, VPY_A+15); pieslice(VPX_D, VPY_D, 0,360,3); line(VPX_D,VPY_D,VPX_D-10,VPY_D+10); line(VPX_D,VPY_D,
20、VPX_D+10,VPY_D+10); line(VPX_D-15,VPY_D+10,VPX_D+15,VPY_D+10); outtextxy(VPX_D,VPY_D-15,"D"); outtextxy(VPX_A,VPY_A-15,"A"); outtextxy(VPX_F+10,VPY_F,"F"); for (i=0;i<30;i+=4) line(VPX_D-15+i,VPY_D+10, VPX_D-10+i ,VPY_D+15); line(VPX_F,130, VPX_F,420); for (i=130;i&l
21、t;150;i+=6) line(VPX_F,i, VPX_F-10,i+4); rectangle(VPX_F-5,VPY_F-10, VPX_F+5, VPY_F+10); pieslice(VPX_B, VPY_B,0,360,2); pieslice(VPX_C, VPY_C,0,360,2); pieslice(VPX_E, VPY_E,0,360,2); pieslice(VPX_F, VPY_F,0,360,2); circle(VPX_A,VPY_A,Lab*Vs); setlinestyle(SOLID_LINE,0,THICK_WIDTH); line (VPX_A,VPY
22、_A,VPX_B,VPY_B); line (VPX_B,VPY_B,VPX_C,VPY_C); line (VPX_D,VPY_D,VPX_E,VPY_E); line (VPX_E,VPY_E,VPX_F,VPY_F); void DrawMoveCoor() float f,x,y; f=FaiAngle_Rad*FaiAngleScale; x=Pfx*PosScale;y=Pfy*PosScale;putpixel(PosCoorX+f,PosCoorY-x,BROWN);putpixel(PosCoorX+f,PosCoorY-y,RED); x=Vfx*SpeedScale;y=
23、Vfy*SpeedScale;putpixel(SpeedCoorX+f,SpeedCoorY-x,BROWN);putpixel(SpeedCoorX+f,SpeedCoorY-y,RED);x=Afx*AccelateScale;y=Afy*AccelateScale;putpixel(AccelateCoorX+f,AccelateCoorY-x,BROWN);putpixel(AccelateCoorX+f,AccelateCoorY-y,RED);設(shè)計(jì)結(jié)果i=1. .i=47,sita1i=29.530972 ,sita2i=0.244314 ,sita3i=1.756857 ,omigar2i=0.983844 ,omigar3i=-3.810642 ,epsl2i=-23.53977 epsl3i=-19.458128i=48sita1i=30.159290 ,sita2i=0.249768 ,sita3i=1.464203 ,omigar2i=-0.892504 ,omigar3i=-4.776515 ,epsl2i=-29.605782 epsl3i=13.256150i=49sita1i=30.787609 ,sita2i=0.311739 ,sita3i=1.258883 ,omigar2i=-2.397500 ,omigar
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 代賣(mài)公司合同范本
- 產(chǎn)品抵押工資合同范本
- 內(nèi)部購(gòu)買(mǎi)服務(wù)合同范本
- 999玫瑰買(mǎi)賣(mài)合同范本
- 云南土地流轉(zhuǎn)合同范本
- 04購(gòu)房合同范例
- 無(wú)錫錦鯉池過(guò)濾器施工方案
- 主體蓋房合同范本
- app監(jiān)控合同范本
- 公司安全協(xié)議合同范本
- 《人力資源管理》全套教學(xué)課件
- 部編人教版語(yǔ)文小學(xué)六年級(jí)下冊(cè)第四單元主講教材解讀(集體備課)
- (2024年)師德師風(fēng)學(xué)習(xí)內(nèi)容教師師德師風(fēng)培訓(xùn)內(nèi)容通用多篇
- GB/T 3452.3-2005液壓氣動(dòng)用O形橡膠密封圈溝槽尺寸
- 標(biāo)準(zhǔn)擊實(shí)試驗(yàn)自動(dòng)計(jì)算記錄表
- 一個(gè)近乎完美的微信引流招生方案
- 門(mén)診特殊病種審批表
- T_CEC 102.1-2016 電動(dòng)汽車(chē)充換電服務(wù)信息交換 第1部分_總則_(高清-最新版)
- 國(guó)際形式發(fā)票模板
- 山西省會(huì)計(jì)師事務(wù)所服務(wù)收費(fèi)標(biāo)準(zhǔn)(匯編)
- 陜西延長(zhǎng)石油(集團(tuán))有限責(zé)任公司企業(yè)年金方案
評(píng)論
0/150
提交評(píng)論