哈工大机械原理大作业连杆机构9.docx
《哈工大机械原理大作业连杆机构9.docx》由会员分享,可在线阅读,更多相关《哈工大机械原理大作业连杆机构9.docx(22页珍藏版)》请在冰豆网上搜索。
哈工大机械原理大作业连杆机构9
机械原理大作业
大作业一:
连杆机构运动分析
学生姓名:
学号:
指导教师:
丁刚
完成时间:
机电工程学院机械设计系制
二〇一八年四月
连杆机构运动分析
1题目(9)
图1设计题目
在图1所示的机构中,已知lAB=60mm,lBC=180mm,lDE=200mm,lCD=120mm,lEF=300mm,h=80mm,h1=85mm,h2=225mm,构件1以等角速度ω1=100rad/s转动。
求在一个运动循环中,滑块5的位移、速度和加速度曲线。
2分析结构
1、杆1为RR主动件,绕A以ω1转动,自由度1.
2、4杆和滑块5为RRPII级杆组.,自由度0.
3、2,3杆组成II级杆组RRR,自由度0.
总共自由度为F=5*3-2*7=1.
由上述的杆组类型,确认出所需运动分析数学模型:
同一构件上的点、RRP、RRR。
3.杆组法对平面连杆机构进行运动分析
3.1对主动件杆1RRI级构件的分析
主动杆1转角:
φ=[0°,360°)δ=0°,则φ’=ω1=100rad/s
角加速度φ’’=0.
已知h2=225mm,h=80mm,lAB=60mm所以A(225mm,80mm)
A点速度(0,0),加速度(0,0)
B点位置(xA+lAB*cos(φ),YA+lAB*sin(φ))
B点速度(-lAB*sin(φ),lAB*cos(φ)),加速度(-lAB*cos(φ),-lAB*sin(φ))
3.2RRRII级杆组分析(模型参考教材P37-38)
图3
如图所示两个构件组成II级杆组。
已知了B的位置(xB,yB)=(xA+lAB*cos(φ),YA+lAB*sin(φ)),
速度(x’B,y’B)
和加速度(x’’B,y’’B),
已知运动副D(0,0),
还可知,x’D=y’D=0,
x’’D=y’’D=0.
lBC=180mm,
lCD=120mm
所以,xc=xD+lCD*cos(φi)=xB+lBC*cos(φj)
yc=xD+lCD*sin(φi)=xB+lBC*sin(φi)
对于φ的求解:
A0=2*lCD(xB-xD)
B0=2*lBC(yB-yD)
C0=lCD2+lBD2-lBC2
为了保证机构的装配正常:
lBD≤lCD+lBCANDlBD≥Abs(lCD-lBC)
可求3杆的转角φi=2*arctan((B0±sqrt(A02+B02-C02))/(A02+C02)),角速度w3=φi’和角加速度α3=φi’’
3.3同一构件上的点(模型参考书P35-36)
已知D(0,0),速度(0,0),加速度(0,0),3杆转角φi角速度φi’角加速度φi’’,Φi和它的导数在3.2都有体现
LDE=200mm
可求出E的坐标,速度,加速度.
xE=xc+lCE*cos(φi)
yE=xC+lCE*sin(φi)
同样地,速度、加速度通过求导即可得出算式,可以编出程序。
3.4RRPII级杆组运动分析(模型参考书P39-40)
已知E坐标(),速度(),加速度().
设滑块5导路参考点K的位置(0,h+h1=165mm),速度(0,0),加速度(0,0),
已知lEF=300mm.还有E的坐标,速度,加速度.
可以求出滑块的位移,速度,加速度曲线
位移
xF=xE+Li*Cos(fi)
yF=yE+Li*Sin(fi)
ss=(xC-xK)*Cos(fj)+(yC-yK)*Sin(fj)
速度
Q1=vxK-vxB-wj*(ss*Sin(fj)+Lj*Cos(fj))
Q2=vyK-vyB+wj*(ss*Cos(fj)-Lj*Sin(fj))
Q3=Li*Sin(fi)*Sin(fj)+Li*Cos(fi)*Cos(fj)
wi=(-Q1*Sin(fj)+Q2*Cos(fj))/Q3
vss=-(Q1*Li*Cos(fi)+Q2*Li*Sin(fi))/Q3
vxF=vxB-wi*Li*Sin(fi)
vyE=vyB+wi*Li*Cos(fi)
vxF=vxK+vss*Cos(fj)-ss*wj*Sin(fj)
vyE=vyK+vss*Sin(fj)+ss*wj*Cos(fj)
加速度
Q4=axK-axB+wi^2*Li*Cos(fi)-ej*(ss*Sin(fj)+Lj*Cos(fj))-wj^2*(ss*Cos(fj)-Lj*Sin(fj))-2*vss*wj*Sin(fj)
Q5=ayK-ayB+wi^2*Li*Sin(fi)+ej*(ss*Cos(fj)-Lj*Sin(fj))-wj^2*(ss*Sin(fj)+Lj*Cos(fj))+2*vss*wj*Cos(fj)
ei=(-Q4*Sin(fj)+Q5*Cos(fj))/Q3
ass=(-Q4*Li*Cos(fi)-Q5*Li*Sin(fi))/Q3
axF=axB-ei*Li*Sin(fi)-wi^2*Li*Cos(fi)
ayE=ayB+ei*Li*Cos(fi)-wi^2*Li*Sin(fi)
axF=axK+ass*Cos(fj)-ss*ej*Sin(fj)-ss*wj^2*Cos(fj)-2*vss*wj*Sin(fj)
ayE=ayK+ass*Sin(fj)+ss*ej*Cos(fj)-ss*wj^2*Sin(fj)+2*vss*wj*Cos(fj)
4.思路与程序设计
4.1思路:
以D点为直角坐标原点,建立坐标系。
其中:
D、A坐标以及杆长已知,通过RR数学模型求出B。
然后由RRR从B,D推出构件3.
然后推出E.
然后,由E和杆长等信息,通过RRP数学模型求得运动副F的运动参数,得到5的参数,然后画图。
采用VB编程,程序及图如下。
lAB=60mm,lBC=180mm,lDE=200mm,lCD=120mm,lEF=300mm,h=80mm,h1=85mm,h2=225mm,ω1=100rad/s,求滑块5的位移、速度和加速度曲线。
4.2主程序框图:
结束
4.3结果图:
5的位移线图
5的速度线图
5的加速度线图
4.4程序
画图部分:
Picture1.Scale(-30,700)-(360,580)
Picture1.Line(0,0)-(360,0)'X
Picture1.Line(0,580)-(0,700)'Y
Fori=0To360Step10'X轴坐标
Picture1.DrawStyle=2
Picture1.Line(i,700)-(i,580)
Picture1.CurrentX=i-10:
Picture1.CurrentY=0
Picture1.Printi
Nexti
Fori=580To700Step10'Y轴坐标
Picture1.DrawStyle=2
Picture1.Line(0,i)-(360,i)
Picture1.CurrentX=-10:
Picture1.CurrentY=i
Picture1.Printi
Nexti
Fori=0To3600Step1
Picture1.PSet(i/10,s5(i))
Nexti
RR分析部分:
PublicLAsDouble
PublicfAsDouble
PublicdeltAsDouble
PublicwAsDouble
PubliceAsDouble
PublicxAAsDouble
PublicyAAsDouble
PublicvxAAsDouble
PublicvyAAsDouble
PublicaxAAsDouble
PublicayAAsDouble
PublicxBAsDouble
PublicyBAsDouble
PublicvxBAsDouble
PublicvyBAsDouble
PublicaxBAsDouble
PublicayBAsDouble
PublicSubcal()
xB=xA+L*Cos(f+delt)
yB=yA+L*Sin(f+delt)
vxB=vxA-w*L*Sin(f+delt)
vyB=vyA+w*L*Cos(f+delt)
axB=axA-w^2*L*Cos(f+delt)-e*L*Sin(f+delt)
ayB=ayA-w^2*L*Sin(f+delt)+e*L*Cos(f+delt)
EndSub
RRR分析部分:
RRR:
PublicLiAsDouble
PublicLjAsDouble
PublicfiAsDouble
PublicfjAsDouble
PublicwiAsDouble
PublicwjAsDouble
PubliceiAsDouble
PublicejAsDouble
PublicxBAsDouble
PublicyBAsDouble
PublicvxBAsDouble
PublicvyBAsDouble
PublicaxBAsDouble
PublicayBAsDouble
PublicxCAsDouble
PublicyCAsDouble
PublicvxCAsDouble
PublicvyCAsDouble
PublicaxCAsDouble
PublicayCAsDouble
PublicxDAsDouble
PublicyDAsDouble
PublicvxDAsDouble
PublicvyDAsDouble
PublicaxDAsDouble
PublicayDAsDouble
PublicMAsDouble
PublicSubcalRRR()
DimfDBAsDouble
DimCiAsDouble
DimCjAsDouble
DimSiAsDouble
DimSjAsDouble
DimG1AsDouble
DimG2AsDouble
DimG3AsDouble
DimLBDAsDouble
DimJCBDAsDouble
DimvalAsDouble
pi=3.1415926
LBD=Sqr((xB-xD)^2+(yD-yB)^2)
IfLBD
Abs(Li-Lj)Thenval=(Li^2+LBD^2-Lj^2)/(2*Li*LBD)
JCBD=Atn(-val/Sqr(-val*val+1))+2*Atn
(1)
EndIf
RRP分析部分:
RRP:
PublicLiAsDouble
PublicLjAsDouble
PublicfiAsDouble
PublicfjAsDouble
PublicwiAsDouble
PublicwjAsDouble
PubliceiAsDouble
PublicejAsDouble
PublicxBAsDouble
PublicyBAsDouble
PublicvxBAsDouble
PublicvyBAsDouble
PublicaxBAsDouble
PublicayBAsDouble
PublicxKAsDouble
PublicyKAsDouble
PublicvxKAsDouble
PublicvyKAsDouble
PublicaxKAsDouble
PublicayKAsDouble
PublicxCAsDouble
PublicyCAsDouble
PublicvxCAsDouble
PublicvyCAsDouble
PublicaxCAsDouble
PublicayCAsDouble
PublicxDAsDouble
PublicyDAsDouble
PublicvxDAsDouble
PublicvyDAsDouble
PublicaxDAsDouble
PublicayDAsDouble
PublicMAsSingle
PublicssAsDouble
PublicvssAsDouble
PublicassAsDouble
PublicSubcalRRP()
DimA0AsDouble
DimQ1AsDouble
DimQ2AsDouble
DimQ3AsDouble
DimQ4AsDouble
DimQ5AsDouble
DimvalAsDouble
DimpiAsDouble
pi=3.14159216
A0=Lj+((yK-yB)*Cos(fj)-(xK-xB)*Sin(fj))
val=A0/Li
fi=M*Atn(val/Sqr(-val*val+1))+fj
xC=xB+Li*Cos(fi)
yC=yB+Li*Sin(fi)
ss=(xC-xK)*Cos(fj)+(yC-yK)*Sin(fj)
xD=xK+ss*Cos(fj)
yD=yK+ss*Sin(fj)
Q1=vxK-vxB-wj*(ss*Sin(fj)+Lj*Cos(fj))
Q2=vyK-vyB+wj*(ss*Cos(fj)-Lj*Sin(fj))
Q3=Li*Sin(fi)*Sin(fj)+Li*Cos(fi)*Cos(fj)
wi=(-Q1*Sin(fj)+Q2*Cos(fj))/Q3
vss=-(Q1*Li*Cos(fi)+Q2*Li*Sin(fi))/Q3
vxC=vxB-wi*Li*Sin(fi)
vyC=vyB+wi*Li*Cos(fi)
vxD=vxK+vss*Cos(fj)-ss*wj*Sin(fj)
vyD=vyK+vss*Sin(fj)+ss*wj*Cos(fj)
Q4=axK-axB+wi^2*Li*Cos(fi)-ej*(ss*Sin(fj)+Lj*Cos(fj))-wj^2*(ss*Cos(fj)-Lj*Sin(fj))-2*vss*wj*Sin(fj)
Q5=ayK-ayB+wi^2*Li*Sin(fi)+ej*(ss*Cos(fj)-Lj*Sin(fj))-wj^2*(ss*Sin(fj)+Lj*Cos(fj))+2*vss*wj*Cos(fj)
ei=(-Q4*Sin(fj)+Q5*Cos(fj))/Q3
ass=(-Q4*Li*Cos(fi)-Q5*Li*Sin(fi))/Q3
axC=axB-ei*Li*Sin(fi)-wi^2*Li*Cos(fi)
ayC=ayB+ei*Li*Cos(fi)-wi^2*Li*Sin(fi)
axD=axK+ass*Cos(fj)-ss*ej*Sin(fj)-ss*wj^2*Cos(fj)-2*vss*wj*Sin(fj)
ayD=ayK+ass*Sin(fj)+ss*ej*Cos(fj)-ss*wj^2*Sin(fj)+2*vss*wj*Cos(fj)
EndSub
主程序:
PrivateSubCommand1_Click()
Dims5(3600)AsDouble
Dimv5(3600)AsDouble
Dima5(3600)AsDouble
DimpiAsDouble
DimpaAsDouble
pi=3.1415926
pa=pi/180
DimiAsLong
Dimf1(3600)AsDouble
DimRR1AsRR
DimRR2AsRR
DimRRR1AsRRR
DimRRP1AsRRP
SetRR1=NewRR
SetRR2=NewRR
SetRRR1=NewRRR
SetRRP1=NewRRP
Fori=0To3600Step1
f1(i)=i*pa/10
RR1.delt=0
RR1.f=f1(i)
RR1.w=100
RR1.e=0
RR1.L=60
RR1.xA=225
RR1.yA=80
RR1.vxA=0
RR1.vyA=0
RR1.axA=0
RR1.ayA=0
RR1.cal
RRR1.Li=120
RRR1.Lj=180
RRR1.xB=0
RRR1.yB=0
RRR1.vxB=0
RRR1.vyB=0
RRR1.axB=0
RRR1.ayB=0
RRR1.xD=RR1.xB
RRR1.yD=RR1.yB
RRR1.vxD=RR1.vxB
RRR1.vyD=RR1.vyB
RRR1.axD=RR1.axB
RRR1.ayD=RR1.ayB
RRR1.M=1
RRR1.cal
RR2.delt=0
RR2.f=RRR1.fi
RR2.w=RRR1.wi
RR2.e=RRR1.ei
RR2.L=200
RR2.xA=0
RR2.yA=0
RR2.vxA=0
RR2.vyA=0
RR2.axA=0
RR2.ayA=0
RR2.cal
RRP1.Li=300
RRP1.Lj=0
RRP1.fj=pi
RRP1.wj=0
RRP1.ej=0
RRP1.xB=RR2.xB
RRP1.yB=RR2.yB
RRP1.vxB=RR2.vxB
RRP1.vyB=RR2.vyB
RRP1.axB=RR2.axB
RRP1.ayB=RR2.ayB
RRP1.xK=0
RRP1.yK=165
RRP1.vxK=0
RRP1.vyK=0
RRP1.axK=0
RRP1.ayK=0
RRP1.M=1
RRP1.calRRP
s5(i)=RRP1.ss
v5(i)=RRP1.vss/1000
a5(i)=RRP1.ass/10000
Nexti
画图部分.Show
EndSub