1、哈工大机械原理大作业连杆机构运动分析报告29机械原理大作业一课程名称: 机械原理 设计题目: 连杆机构运动分析 -29 院 系: 机电工程学院 班 级: 设 计 者: 学 号:指导教师: 设计时间:哈尔滨工业大学设计题目 (29)二、 VB编程得到动画、轨迹、位移、速度、加速度线图1.用 VB编写程序得到的机构动画2.构件 2 上的 E点轨迹3. 构件 7 的位移线图4. 构件 7 的速度线图5. 构件 7 的加速度线图三、 计算说明书( 一) 建立机构运动分析数学模型对机构进行结构分析,找出基本杆组1. 基本杆组划分a) 杆件 1 为原动件b) 构件 2、 3 为 RRR型 II 级杆组c)
2、 构件 4、 5 为 RRR型 II 级杆组d) 构件 6、 7 为 RRP型 II 级杆组2. 结构分析与自由度计算机构为平面连杆机构,活动构件数 n=7, PL =10,转动副为 9 个,移动副为 1个,高副为 0 个,则机构自由度为 F=3n-2PL-P H=3x7-2x10=1 。各基本杆组的运动分析数学模型1. 原动件( I 级构件)1)位置分析xB xA li cos iB点位置方程 B A i i (1-1 )yB yA li sin i2)速度分析3)加速度分析把( 2-2 )对时间他求导得 B加速度方程2. RRR 杆组的运动分析3.RRP杆组的运动分析图21) 位置分析 内
3、运动副 C的位置方程li 的转角式中A0 (xB滑块滑块2)xC xB li cos iyC yB li sin iarcsin(A0lilj)jxK scos j l j sin jyK ssin j l j cos jxk)sin j (yB yK )cos j 满足装配条件 A0 lj liD 相对参考点 K的位移为xC xk lj sin j syC yK l j cos jD的位置方程速度分析cos jsin j杆 li 的角速度 i ixD xK scos i yD yK ssin iQ1sin j Q2 cos j滑块 D 沿导路的移动速度Q1li cos i Q2li sin
4、i sQ32-1)2-2)2-3)2-4)2-5)2-6)式中 Q1 xK xB j(ssin j l j cos j)Q2 yK yB j (scos j lj sin j)Q3 li sin i sin j li cos i cos j内运动副 C的速度为xC xB ili sin i yC yB i li cos i外移动副 D的速度为xD xK scos i s j sin j yD yK ssin i s j cos j (3) 加速度分析杆 li 的角加速度Q4 sin j Q5cos j i2-7)2-8)2-9)2-10 )滑块 D沿导路移动的加速度为 s Q4li cos i
5、 Q5li sin iQ3式中22Q4 xK xB i li cos i j (ssin j lj cos j) j (scos j lj sin j) 2s j sin j22Q5 yK yB i li sin i j(scos j lj sin j) j (ssin j lj cos j ) 2s j cos j2xC xB i li cos i j l i sin j内运动副 C的加速度 C B i i i j i j (2-11 )2yC yB i li sin i j l i cos j2xD xK scos j s j sin j s j cos j 2s j sin j滑块 D的
6、加速度 D K j j j j j j j (2-12 )2yD yK ssin j s j cos j s j sin j 2 s j cos j以上为基本杆组的通用分析,根据已知条件进行赋值均在程序中体现( 二) 计算流程框图(见下页)( 三) VB编写程序清单点的坐标、速度、加速度定义变量Dim xA As Double A Dim yA As Double Dim vxA As Double Dim vyA As Double Dim axA As Double Dim ayA As Double Dim xB As Double B Dim yB As Double Dim vxB
7、As Double Dim vyB As Double Dim axB As Double Dim ayB As Double Dim xD As Double D Dim yD As Double Dim vxD As Double Dim vyD As Double Dim axD As Double Dim ayD As Double Dim xE As Double E Dim yE As Double Dim vxE As Double Dim vyE As Double Dim axE As Double Dim ayE As Double Dim xG As Double G D
8、im yG As Double Dim vxG As Double Dim vyG As Double Dim axG As Double Dim ayG As Double Dim xH As Double H Dim yH As Double Dim vxH As Double Dim vyH As Double Dim axH As Double Dim ayH As Double Dim xM As Double M Dim yM As Double Dim vxM As Double Dim vyM As Double Dim axM As DoubleDim ayM As Doub
9、leDim xN As Double 参考点 NDim yN As DoubleDim vxN As DoubleDim vyN As DoubleDim axN As DoubleDim ayN As DoubleDim xK As Double K 点Dim yK As DoubleDim vxK As DoubleDim vyK As DoubleDim axK As DoubleDim ayK As DoubleDim delt1 As Double AB 杆初始转角Dim L1 As Double AB 杆长Dim f1 As Double AB 杆转角Dim w1 As Doubl
10、e AB 杆角速度Dim e1 As Double AB 杆角加速度Dim L2 As Double BC 杆Dim f2 As DoubleDim w2 As DoubleDim e2 As DoubleDim L3 As Double CD 杆Dim f3 As DoubleDim w3 As DoubleDim e3 As DoubleDim LBE As Double BE 杆Dim delt2 As DoubleDim L4 As Double EF 杆Dim f4 As DoubleDim w4 As DoubleDim e4 As DoubleDim LFG As Double
11、FG 杆Dim f5 As DoubleDim w5 As DoubleDim e5 As DoubleDim deltGH As Double GH 杆Dim LGH As DoubleDim L6 As Double HM ( HK)杆Dim f6 As DoubleDim w6 As DoubleDim e6 As DoubleDim Lj As Double MK 杆Dim fj As DoubleDim wj As DoubleDim ej As DoubleDim pi As DoubleDim pa As DoubleDim i As DoubleDim fj1 As Doubl
12、ePrivate Sub Command1_Click() 点 E 的轨迹Picture1.Scale (-50, 250)-(600, -100)Picture1.Line (-50, 0)-(600, 0) XPicture1.Line (0, 250)-(0, -100) YFor i = -50 To 600 Step 50 X 轴坐标Picture1.DrawStyle = 2Picture1.Line (i, 250)-(i, -100)Picture1.CurrentX = i - 0: Picture1.CurrentY = 0Picture1.Print iNext iFor
13、 i = -100 To 250 Step 50 Y 轴坐标Picture1.DrawStyle = 2Picture1.Line (-50, i)-(600, i)Picture1.CurrentX = -20: Picture1.CurrentY = i + 7Picture1.Print iNext iFor fj1 = 0 To 360 Step 0.01f1 = fj1 * paCall RR1Call RRR1Call RR2Picture1.PSet (xE, yE)Next fj1End SubPrivate Sub Command2_Click() 求点 G 的位移Pictu
14、re2.Scale (-20, 300)-(380, 200)Picture2.Line (-20, 0)-(380, 0) XPicture2.Line (0, 300)-(0, 200) YFor i = 0 To 360 Step 30 X 轴坐标Picture2.DrawStyle = 2Picture2.Line (i, 300)-(i, 0)Picture2.CurrentX = i - 10: Picture2.CurrentY = 0Picture2.Print iNext iFor i = 200 To 300 Step 10 Y 轴坐标Picture2.Line (0, i
15、)-(380, i)Picture2.CurrentX = -25: Picture2.CurrentY = iPicture2.Print iNext iFor fj1 = 0 To 360 Step 0.01f1 = fj1 * paCall RR1Call RRR1Call RR2Call RRR2Call RR3Call RRP1Picture2.PSet (fj1, ss)Next fj1End SubPrivate Sub Command3_Click() 求点 G 的速度Picture3.Scale (-30, 600)-(380, -600)Picture3.Line (-30
16、, 0)-(380, 0) XPicture3.Line (0, 600)-(0, -600) YFor i = 0 To 360 Step 30 X 轴坐标Picture3.DrawStyle = 2Picture3.Line (i, 600)-(i, -600)Picture3.CurrentX = i - 10: Picture3.CurrentY = 0Picture3.Print iNext iFor i = -600 To 600 Step 50 Y 轴坐标Picture3.Line (0, i)-(380, i)Picture3.CurrentX = -28: Picture3.
17、CurrentY = iPicture3.Print iNext iFor fj1 = 0 To 360 Step 0.01f1 = fj1 * paCall RR1Call RRR1Call RR2Call RRR2Call RR3Call RRP1Picture3.PSet (fj1, vss)Next fj1End SubPrivate Sub Command4_Click() 求点 G 的加速度Picture4.Scale (-20, 20000)-(380, -10000) Picture4.Line (-20, 0)-(380, 0) XPicture4.Line (0, 2000
18、0)-(0, -10000) Y For i = 0 To 360 Step 30 X 轴坐标Picture4.DrawStyle = 2Picture4.Line (i, 20000)-(i, -10000) Picture4.CurrentX = i - 10: Picture4.CurrentY = 0 Picture4.Print iNext iFor i = -10000 To 20000 Step 1000 Y 轴坐标Picture4.Line (0, i)-(380, i)Picture4.CurrentX = -25: Picture4.CurrentY = i + 5 Pic
19、ture4.Print iNext iFor fj1 = 0 To 360 Step 0.01 f1 = fj1 * pa Call RR1 Call RRR1 Call RR2 Call RRR2 Call RR3 Call RRP1Picture4.PSet (fj1, ass)Next fj1 End Sub Private Sub Form_Load() 赋初值xA = 0 yA = 0 vxA = 0 vyA = 0 axA = 0 ayA = 0 xD = 730 yD = -138 vxD = 0 vyD = 0 axD = 0 ayD = 0 xG = 465 yG = -24
20、8 vxG = 0 vyG = 0 axG = 0ayG = 0 xN = 545 yN = 0 vxN = 0 vyN = 0 axN = 0 ayN = 0 delt1 = 0L1 = 200 w1 = 10e1 = 0L2 = 670L3 = 350 delt2 = 0LBE = 335L4 = 380LFG = 130 deltGH = 56 * pa LGH = 100L6 = 486Lj = 0fj = pi / 2 wj = 0 ej = 0 pi = 3.14 pa = pi / 180End SubPublic Sub RR1() 杆 AB xB = xA + L1 * Co
21、s(f1 + delt1)yB = yA + L1 * Sin(f1 + delt1)vxB = vxA - w1 * L1 * Sin(f1 + delt1)vyB = vyA + w1 * L1 * Cos(f1 + delt1)axB = axA - w1 2 * L1 * Cos(f1 + delt1) - e1 * L1 * Sin(f1 + delt1) ayB = ayA - w1 2 * L1 * Sin(f1 + delt1) + e1 * L1 * Cos(f1 + delt1) End SubPublic Sub RRR1() 杆 BCDDim xC As DoubleD
22、im yC As DoubleDim vxC As DoubleDim vyC As DoubleDim axC As DoubleDim ayC As DoubleDim LBD As DoubleDim JCBD As DoubleDim val1 As DoubleDim fDB As DoubleDim C2 As DoubleDim C3 As DoubleDim S2 As DoubleDim S3 As DoubleDim G11 As DoubleDim G12 As DoubleDim G13 As DoubleLBD = Sqr(xD - xB) 2 + (yD - yB)
23、 2)If LBD L2 + L3 And LBD Abs(L2 - L3) ThenIf MsgBox(RRR 杆组杆长不符合要求 , vbOKOnly, 提示 ) = 1 Then EndElseEnd IfElseEnd IfIf LBD Abs(L2 - L3) Thenval1 = (L2 2 + LBD 2 - L3 2) / (2 * L2 * LBD)JCBD = Atn(-val1 / Sqr(-val1 * val1 + 1) + 2 * Atn(1)ElseEnd IfIf LBD = L2 + L3 ThenJCBD = 0ElseEnd IfIf LBD = Abs(
24、L2 - L3) ThenIf L2 L3 ThenJCBD = 0ElseEnd IfIf L2 xB And yD = yB Then 第一象限fDB = Atn(yD - yB) / (xD - xB)ElseEnd IfIf xD = xB And yD yB ThenfDB = pi * 2ElseEnd IfIf xD = yB Then fDB = pi + Atn(yD - yB) / (xD - xB) ElseEnd IfIf xD xB And yD yB Then fDB = pi + Atn(yD - yB) / (xD - xB)ElseEnd IfIf xB =
25、xD And yD xB And yD xD And yC = yD Then 第f3 = Atn(yC - yD) / (xC - xD) ElseEnd IfIf xC = xD And yC yD Thenf3 = pi / 2ElseEnd IfIf xC = xD Then f3 = pi + Atn(yC - yD) / (xC - xD) Else End IfIf xC xD And xC xD Then f3 = pi + Atn(yC - yD) / (xC - xD)ElseEnd IfIf xC = xD And xC xD And xC = xD Then f2 =
26、2 * pi + Atn(yC - yD) / (xC - xD) ElseEnd IfC2 = L2 * Cos(f2)S2 = L2 * Sin(f2)C3 = L3 * Cos(f3)S3 = L3 * Sin(f3)G11 = C2 * S3 - C3 * S2 w2 = (C3 * (vxD - vxB) + S3 * (vyD - vyB) / G11 w3 = (C2 * (vxD - vxB) + S2 * (vyD - vyB) / G11 vxC = vxB - w2 * L2 * Sin(f2) vyC = vyB + w2 * L2 * Cos(f2)G12 = axD
27、 - axB + w2 2 * C2 - w3 2 * C3 G13 = ayD - ayB + w2 2 * S2 - w3 2 * S3 e2 = (G12 * C3 + G13 * S3) / G11 e3 = (G12 * C2 + G13 * S2) / G11 axC = axB - e2 * L2 * Sin(f2) - w2 2 * L2 * Cos(f2) ayC = ayB - e2 * L2 * Cos(f2) - w2 2 * L2 * Sin(f2) End SubPublic Sub RR2() 杆 BE xE = xB + LBE * Cos(f2 + delt2
28、) yE = yB + LBE * Sin(f2 + delt2) vxE = vxB - w2 * LBE * Sin(f2 + delt2) vyE = vyB + w2 * LBE * Cos(f2 + delt2) axE = axB - w2 2 * LBE * Cos(f2 + delt2) - e2 * LBE * Sin(f2 + delt2) ayE = ayB - w2 2 * LBE * Sin(f2 + delt2) + e2 * LBE * Cos(f2 + delt2) End SubPublic Sub RRR2() 杆 EFGDim xF As Double D
29、im yF As Double Dim vxF As Double Dim vyF As Double Dim axF As Double Dim ayF As Double Dim LEG As Double Dim JFEG As Double Dim val2 As Double Dim fGE As DoubleDim C4 As DoubleDim C5 As DoubleDim S4 As DoubleDim S5 As DoubleDim G21 As DoubleDim G22 As DoubleDim G23 As DoubleLEG = Sqr(xG - xE) 2 + (yG - yE)
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1