机械原理大作业VB四杆机构的设计.docx

上传人:b****6 文档编号:6384225 上传时间:2023-01-05 格式:DOCX 页数:14 大小:127.09KB
下载 相关 举报
机械原理大作业VB四杆机构的设计.docx_第1页
第1页 / 共14页
机械原理大作业VB四杆机构的设计.docx_第2页
第2页 / 共14页
机械原理大作业VB四杆机构的设计.docx_第3页
第3页 / 共14页
机械原理大作业VB四杆机构的设计.docx_第4页
第4页 / 共14页
机械原理大作业VB四杆机构的设计.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

机械原理大作业VB四杆机构的设计.docx

《机械原理大作业VB四杆机构的设计.docx》由会员分享,可在线阅读,更多相关《机械原理大作业VB四杆机构的设计.docx(14页珍藏版)》请在冰豆网上搜索。

机械原理大作业VB四杆机构的设计.docx

机械原理大作业VB四杆机构的设计

沈阳航空航天大学

铰链四杆机构设计报告

 

学院:

机电工程学院

<

班级:

姓名:

学号:

 

~

 

Dima,b,c,d,e,f,l1,l2,l3,l4,w1,w2,w3,a2,a3#,p,m,dc,bjj,n%

PrivateSubCommand1_Click()杆长赋值

l1=Val(Text1(0).Text)

l2=Val(Text1

(1).Text)

l3=Val(Text1

(2).Text)

l4=Val(Text1(3).Text)

a=Val*/180初始角度转弧度

/

Callbj(bjj)

Ifbjj=1ThenExitSub

w1=0

Calljsg

w1=Val公式计算角速度,角加速度

w2=-w1*l1*Sin(a-c)/(l3*Sin(b-c))

w3=w1*l1*Sin(a-b)/(l2*Sin(c-b))

=w2

=w3

a2=(l3*w3*w3-l1*w1*w1*Cos(a-c)-l2*w2*w2*Cos(b-c))/(l2*Sin(b-c))

a3=(l2*w2*w2+l1*w1*w1*Cos(a-b)-l3*w3*w3*Cos(c-b))/(l3*Sin(c-b))

=a2

=a3

EndSub

Functionjsg()

Ifp=0Thenp=-1

OnErrorGoToel

a=a+*w1角度随时间增加

d=l4-l1*Cos(a)

e=-l1*Sin(a)

f=(d^2+e^2+l3^2-l2^2)/(2*l3)

c=2*Atn((e+Sqr(d^2+e^2-f^2)*p)/(d-f))

b=Atn((e+l3*Sin(c))/(d+l3*Cos(c)))

w1=-w1

el:

w1=-w1

Line1(0).Y1=/2定义各个线段端点的坐标

Line1(0).X1=/2

Line1(0).X2=l1*Cos(a)+Line1(0).X1

Line1(0).Y2=Line1(0).Y1-l1*Sin(a)

Line1(3).X2=Line1(0).X1+l4

Line1(3).Y2=Line1(0).Y1

Line1(3).X1=Line1(0).X1

Line1(3).Y1=Line1(0).Y1

Line1

(2).X1=Line1(3).X2+l3*Cos(c)

Line1

(2).Y1=Line1(3).Y2-l3*Sin(c)

Line1

(2).X2=Line1(3).X2

Line1

(2).Y2=Line1(3).Y2

Line1

(1).X1=Line1(0).X2

Line1

(1).Y1=Line1(0).Y2

|

Line1

(1).X2=Line1

(2).X1

Line1

(1).Y2=Line1

(2).Y1

Shape1(i).Left=Line1(i).X1-50连接两杆转动副的中心坐标

Shape1(i).Top=Line1(i).Y1-50

Nexti

(Line1

(1).X1,Line1

(1).Y1),vbRed画出主动件和连架杆的轨迹

(Line1

(2).X1,Line1

(2).Y1),vbGreen

EndFunction

}

Functionbj(x)杆长条件的判断

x=0

xld=Val(Text1(0).Text)

xlx=Val(Text1(0).Text)

Fori=1To3

Ifxld

^

Ifxlx>Val(Text1(i).Text)Thenxlx=Val(Text1(i).Text)

Nexti

Fori=0To3

zh=Val(Text1(i).Text)+zh

Nexti

If(xlx+xld)>(zh-(xlx+xld))Then

MsgBox("不满足杆长要求")

x=1

`

EndIf

EndFunction

(-8,4)-(8,-4)画出角速度w2函数图像

0)-,0)

`

(0,-(0,

=:

=:

"x"

=:

=4:

"y"

Fori=-7To7

(i,0)-(i,

=i-:

=:

i

Nexti

Fori=ToStep

>

Ifi>Andi

=:

=i+:

i

i)-(0,i)

Nexti

Dima1,b1,c1,d1,e1,f1,w11#

w11=

Forx=ToStep

Ifp=0Thenp=-1

OnErrorGoToel

a1=a1+w11

d1=l4-l1*Cos(a1)

e1=-l1*Sin(a1)

f1=(d1^2+e1^2+l3^2-l2^2)/(2*l3)

c1=2*Atn((e1+Sqr(d1^2+e1^2-f1^2)*p)/(d1-f1))

b1=Atn((e1+l3*Sin(c1))/(d1+l3*Cos(c1)))

?

w11=-w11

el:

w11=-w11

w111=Val

w21=-w111*l1*Sin(a1-c1)/(l3*Sin(b1-c1))

w31=w1*l1*Sin(a1-b1)/(l2*Sin(c1-b1))

a21=(l3*w31*w31-l1*w111*w111*Cos(a1-c1)-l2*w21*w21*Cos(b1-c1))/(l2*Sin(b1-c1))

a31=(l2*w21*w21+l1*w111*w111*Cos(a1-b1)-l3*w31*w31*Cos(c1-b1))/(l3*Sin(c1-b1))

(x,w21)

Nextx

EndIf

EndSub

(-8,-(8,画出角速度w3函数图像

0)-,0)

(0,-(0,

~

=:

=:

"x"

=:

=:

"y"

Fori=-7To7

(i,0)-(i,

=i-:

=:

i

Nexti

Fori=ToStep

Ifi>Andi

"

=:

=i+:

i

i)-(0,i)

Nexti

Dima1,b1,c1,d1,e1,f1,w11#

w11=

Forx=ToStep

Ifp=0Thenp=-1

@

OnErrorGoToel

a1=a1+w11

d1=l4-l1*Cos(a1)

e1=-l1*Sin(a1)

f1=(d1^2+e1^2+l3^2-l2^2)/(2*l3)

c1=2*Atn((e1+Sqr(d1^2+e1^2-f1^2)*p)/(d1-f1))

b1=Atn((e1+l3*Sin(c1))/(d1+l3*Cos(c1)))

w11=-w11

-

el:

w11=-w11

w111=Val

w21=-w111*l1*Sin(a1-c1)/(l3*Sin(b1-c1))

w31=w1*l1*Sin(a1-b1)/(l2*Sin(c1-b1))

a21=(l3*w31*w31-l1*w111*w111*Cos(a1-c1)-l2*w21*w21*Cos(b1-c1))/(l2*Sin(b1-c1))

a31=(l2*w21*w21+l1*w111*w111*Cos(a1-b1)-l3*w31*w31*Cos(c1-b1))/(l3*Sin(c1-b1))

(x,w31)

Nextx

EndIf

EndSub

PrivateSubPicture4_DblClick()画出角加速度a2

d

(-8,8)-(8,-8)

0)-,0)

(0,-(0,

=:

=:

"x"

=:

=8:

"y"

Fori=-7To7

(i,0)-(i,

=i-:

=:

i

Nexti

Fori=7To-7Step

Ifi>Andi

=:

=i+:

i

i)-(0,i)

Nexti

Dima1,b1,c1,d1,e1,f1,w11#

w11=

{

Forx=ToStep

Ifp=0Thenp=-1

OnErrorGoToel

ell:

a1=a1+w11

d1=l4-l1*Cos(a1)

IfIsEmpty(d1)ThenGoToell

e1=-l1*Sin(a1)

$

IfIsEmpty(e1)ThenGoToell

f1=(d1^2+e1^2+l3^2-l2^2)/(2*l3)

IfIsEmpty(f1)ThenGoToell

c1=2*Atn((e1+Sqr(d1^2+e1^2-f1^2)*p)/(d1-f1))

IfIsEmpty(c1)Then

GoToell

EndIf

b1=Atn((e1+l3*Sin(c1))/(d1+l3*Cos(c1)))

.

IfIsEmpty(b1)ThenGoToell

w11=-w11

el:

w11=-w11

w111=Val

Ifb1=NullThenGoToell

w21=-w111*l1*Sin(a1-c1)/(l3*Sin(b1-c1))

w31=w1*l1*Sin(a1-b1)/(l2*Sin(c1-b1))

}

a21=(l3*w31*w31-l1*w111*w111*Cos(a1-c1)-l2*w21*w21*Cos(b1-c1))/(l2*Sin(b1-c1))

a31=(l2*w21*w21+l1*w111*w111*Cos(a1-b1)-l3*w31*w31*Cos(c1-b1))/(l3*Sin(c1-b1))

(x,a21)

(-8,8)-(8,-8)画出角加速度a3

0)-,0)

(0,-(0,

=:

=:

"x"

;

=:

=8:

"y"

Fori=-7To7

(i,0)-(i,

=i-:

=:

i

Nexti

Fori=-7To7Step

Ifi>Andi

=:

=i+:

i

$

i)-(0,i)

Nexti

Dima1,b1,c1,d1,e1,f1,w11#

w11=

Forx=ToStep

Ifp=0Thenp=-1

OnErrorGoToel

a1=a1+w11

;

d1=l4-l1*Cos(a1)

e1=-l1*Sin(a1)

f1=(d1^2+e1^2+l3^2-l2^2)/(2*l3)

c1=2*Atn((e1+Sqr(d1^2+e1^2-f1^2)*p)/(d1-f1))

b1=Atn((e1+l3*Sin(c1))/(d1+l3*Cos(c1)))

w11=-w11

el:

w11=-w11

%

w111=Val

w21=-w111*l1*Sin(a1-c1)/(l3*Sin(b1-c1))

w31=w1*l1*Sin(a1-b1)/(l2*Sin(c1-b1))

a21=(l3*w31*w31-l1*w111*w111*Cos(a1-c1)-l2*w21*w21*Cos(b1-c1))/(l2*Sin(b1-c1))

a31=(l2*w21*w21+l1*w111*w111*Cos(a1-b1)-l3*w31*w31*Cos(c1-b1))/(l3*Sin(c1-b1))

(x,a31)

;

(-8,-(8,角位移s2,s3函数的输出

0)-,0)

(0,-(0,

=:

=:

"x"

=:

=:

"y"

Fori=-7To7Step

(i,0)-(i,

=i-:

=:

i

Nexti

Fori=-3ToStep

Ifi>Andi

=:

=i+:

i

i)-(0,i)

Nexti

Dima1,b1,c1,d1,e1,f1,w11#

w11=

Forx=ToStep

Ifp=0Thenp=-1

OnErrorGoToel

a1=a1+w11

d1=l4-l1*Cos(a1)

e1=-l1*Sin(a1)

f1=(d1^2+e1^2+l3^2-l2^2)/(2*l3)

c1=2*Atn((e1+Sqr(d1^2+e1^2-f1^2)*p)/(d1-f1))

b1=Atn((e1+l3*Sin(c1))/(d1+l3*Cos(c1)))

w11=-w11

el:

w11=-w11

Ifx=Thenczd=c1:

czx=c1

Ifczd

Ifczx>c1Thenczx=c1

=czd-czx

Ifx=Thenczd1=b1:

czx1=b1

Ifczd1

Ifczx1>b1Thenczx1=b1

=czd1-czx1

(x,c1)

(x,b1),vbRed

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1